-- *************************************************************************
-- AMERICAN POWER CONVERSION PowerNet-MIB
-- *************************************************************************
-- Copyright (c) 2019 American Power Conversion, Inc.
-- PowerNet is a Trademark of American Power Conversion Corp.
--
-- Title: APC TOP LEVEL PowerNet MIB
--
-- Version : 4.3.2
--
-- Generated by script: tomib.awk
--
-- Input File: powernetPS.mib
--
-- Created: Thursday, December, 05, 2019
--
-- Revision History:
-- *************************************************************************

--          - v3.2.0 Added functionality for MasterSwitch Plus
--          - v3.3.0 Added functionality for MX28B (dcDM3) and 3-phase UPS
--          - v3.3.2 New traps for Symmetra PX UPS
-- 07/15/01 - v3.4.0 Added transfer switch
--          - v3.4.3 Added functionality for External and Integrated Environmental Monitor
-- 06/14/02 - v3.4.4 Added dcmim2(Siemens) branch, Battery Manager(Reading) traps, and
--                         Psx Traps for PDU and RM-PDU and Netlock branch/traps
-- 12/13/02 - v3.5.0 netlock - Initial support for netlock (nl). Traps 261-265 added.
--                   rPDU - Initial support for rPDU. Traps 266-283 added.
--                   rARU - Initial support for rARU.
--                   gateway - Initial support for gateway (gw). Traps 230-260, 284-297 added.
--                   ups - upsSyncCtrlGroup and upsState sections added.
-- 02/19/03 - v3.6.0 ups - UpsOutletGroups section added.  Traps 298-299 added.
--                   smw - Traps 300-305 added.
--                   rPDU - General OID description cleanups.
--                   gw - Updated SNMP support for gw.
-- 05/21/03 - v3.6.1 ups - Updated SNMP support for ups.
--                   ems - Environmental Management System OIDs renamed from gateway (gw).
--                   raru - Updated SNMP support for raru.
-- 06/13/03 - v3.6.3 airFM - Initial support for airFM.  Traps 306-311 added.
--                   nl - Traps 261-265 removed.
-- 11/26/03 - v3.6.4 xPDU - Initial support for xPDU. Traps 312-344 added.
--                   airPA - Initial support for airPA.  Traps 306-311 modified for airPA use.
--                   airFM - AirFMStatus OIDs cleaned up.
-- 03/19/04 - v3.6.5 rPDU - Updated SNMP support for rPDU.
--                   airFM - AirFMGroup section added.
-- 05/13/04 - v3.6.6 ups - Added several upsAdvBattery OIDs.
--                   ems - Added emsStatusHardwareStatus and emsHardwareState traps 345-346.
--                   aru - Trap 228 redefined to aruDeviceConfigChange.
-- 08/04/04 - v3.6.7 ups - Added upsAdvConfigNumExternalBatteries and
--                         upsAdvConfigSimpleSignalShutdowns.
--                   ce - Custom Event traps 347-352 added.
-- 11/22/04 - v3.6.8 ems - Many emsProbeConfig and emsProbeStatus OIDs added.
--                   ups - Traps 353-358 added.
--                   env - Traps 359-374 added.
-- 01/26/05 - v3.6.9 battman - Initial support for battman, traps 375-380 added.
--                   xATS - Initial support for xATS, traps 381-478 added.
--                   generator - Initial support for generator.
--                   rPDU - Trap edits.
--                   xPDU - Trap edits.
-- 05/26/05 - v3.7.0 consolePortServer - Initial support for consolePortServer (cpsAP930x).
--                   xPDU - Cleaned up many descriptions.
--                   xATS - Cleaned up many descriptions.
--                   ups - Added several upsAdvConfig OIDs.
-- 09/28/05 - v3.8.0 modEnvMgr - Initial support for modEnvMgr (mem).
--                   rARU - Added functionality for Gen 2 ARU.
--                   ups/aru/mem - Traps 500-569 added.
--                   all - General cleanup on typos and spelling errors.
-- 01/04/06 - v3.8.1 rARU - Added functionality for Gen 2 ARU
-- 02/22/06 - v3.8.2 accessControl - Initial support for accessControl.
--                                   Traps 570-592 added.
--                   accessPX - Initial support for accessPX.
--                   airIR - Initial support for airIR and airIRAlarms.
--                   airIRRC - Initial support for airIRRC.
-- 05/24/06 - v3.8.4 apcLocalDisplay - Initial support for apcLocalDisplay.
--                   ups - UpsAdvOutputRedundancy, upsAdvOutputKVACapacity,
--                         upsAdvConfigBasicSignalLowBatteryDuration, and
--                         upsAdvConfigBypassPhaseLockRequired OIDs added.
--                         UpsAdvConfigMinReturnRuntime SYNTAX changed.
--                         UPS trap numbers 600-623 added.
--                   em - New emConfigProbe, emConfigContact, emStatusProbe OIDs added.
--                   iem - New iemConfigProbe, iemConfigContact, iemStatusProbe OIDs added.
-- 08/31/06 - v3.8.5 airIRSC - Initial support for airIRSC.
--                   XPDU - XPDUBranchBreaker OIDs and xPDUBranchCurrent traps added.
-- 11/03/06 - v3.8.6 rPDU - Updated SNMP support for rPDU.
--                   accessPX - accessPXConfigCardFormat OID added.
--                   airIRSC - airIRSCUnitStatusCompressor added.
-- 01/03/07 - v3.8.7 airIRRP - Initial support for airIRRP100 and airIRRP500.
-- 04/06/07 - v3.8.8 battMan - Updated SNMP support for Battery Manager,
--                             battManConfigApplication OID deprecated.
--                   airIRRP - Added HeatAssistEnable to airIRRP100 and airIRRP500.
--                   ups - Added several upsDiagSubSys OIDs.
--                   iem - Added iemStatusProbeLocation OID.
--                   all - Cleaned up version history section.
-- 12/19/07 - v3.9.1 airFM - Added full SNMP support, deprecating some existing OIDs in
--                           favor of new structure.
-- 12/19/07 - v3.9.2 Added new OIDs for isxModularDistribution, isxModularPdu, airInRoomPerimeter
--                   airIRGen2, symmetraPX IDs, isxServers IDs, upsAdvConfig, upsDiagSubSysNetworkComCard,
--                   memInputsCommStatus, airIRRP100GroupSetpoints.  Added new SNMP Traps for
--                   ISX Modular Distribution, and xATS.
-- 08/13/08 - v3.9.3 Added new OIDs for UPS HighPrec OIDs:
--                       upsHighPrecBattery, upsHighPrecInput, and upsHighPrecOutput.
--                   Added new OIDs for the 10kW the AIR IR Gen2:
--                       airIRG2RDT2ConfigUnitRoleOverride, airIRG2RDT2RunHoursUnit,
--                       airIRG2GroupConfigNumberofBackupUnits, airIRG2GroupConfigRuntimeBalancingEnable,
--                       and airIRG2GroupConfigLoadAssistEnable for use by 10kW application.
--                   Added new traps apcInternalCommunicationFault and apcInternalCommunicationFaultCleared
--                       for use by the SUMX application.
--                   Updated descriptions in existing OIDs.
-- 09/25/08 - v3.9.4 Added new OIDs for Symmetra PX:
--                       upsParallelSystem, upsPhysicalLayout, upsAdvConfigMainsSetting, upsAdvConfigACWiringSetting,
--                       upsAdvConfigUpperOutputVoltTolerance, upsAdvConfigLowerOutputVoltTolerance, upsAdvConfigUpperBypassVoltTolerance
--                       upsAdvConfigLowerBypassVoltTolerance, upsAdvConfigOutofSyncBypassTransferDelay, upsAdvTestDiagnosticTime
--                       upsAdvTestDiagnosticDay, upsDiagSwitchGearBypassInputSwitchStatus, upsDiagSubFeedBreakerTable,
--                       upsDiagSubFeedBreakerTable, upsSideCarFrameLayoutTable, upsPowerFrameLayoutTable
--                   Added new OIDs for UPSs:
--                       upsBasicSystemStatus, upsAdvControlFlashAndBeep (appended new list options)
--                   Added new OIDs for the AC RP10kW:
--                       airIRG2RDT2ConfigUnitIdleOnCoolFail
--                   Added new OID for isxModularPDU device:
--                       isxModularPduDeviceTransformerPresent (appended new list option)
-- 02/24/09 - v3.9.5 Added new OIDs for the UPS Integrated ATS product, Air IRSC product, added new Traps for UPS support
--                       and fixed MIB compilier warnings.
-- 02/24/09 - v3.9.6 Added new Traps and mtrapargs for the ISXC Trap Notification support.
-- 09/18/09 - v3.9.8 Added new OIDs for the InRoom C7000 Air product.
-- 04/14/10 - v3.9.9 Added new rPDU2 device and modified some rPDU OIDs.
-- 06/22/10 - v4.0.0 Added traps 638 through 651 to support ATS.
--                   Updated control OIDs for rPDU2g
--                   Updates to support PX100kW UPS.
--                   Added traps 756 and 757 to support PX100kW UPS.
--                   Added upsAdvBattery, upsHighPrecBattery, and upsDiagBattery OIDs to support PX250kW/PX500kW UPS.
-- 06/30/10 - v4.0.1 Added new OID's upsAdvBatteryFullCapacity, upsAdvInputNominalFrequency, upsAdvInputNominalVoltage,
--                   upsAdvInputBypassNominalFrequency, upsAdvInputBypassNominalVoltage, upsBasicSystemInternalTemperature,
--                   upsAdvOutputNominalFrequency, upsAdvOutputActivePower and upsAdvOutputApparentPower.
--                   Added traps 734 to 739 to support Galaxy 300 and Galaxy 7000 UPS.
--                   Added SyOid's galaxy300UPS10kVA33, galaxy300UPS15kVA33, galaxy300UPS20kVA33,
--                   galaxy300UPS30kVA33, galaxy300UPS40kVA33, galaxy300UPS10kVA31, galaxy300UPS15kVA31,
--                   galaxy300UPS20kVA31 and galaxy300UPS30kVA31,galaxy7000UPS200kVA,galaxy7000UPS250kVA,
--                   galaxy7000UPS300kVA,galaxy7000UPS400kVA,galaxy7000UPS500kVA,galaxy7000SSC800kVA,
--                   galaxy7000SSC1200kVA and galaxy7000SSC2000kVA.
-- 10/27/10 - v4.0.2 Added Idle on Cool Fail and Fan Speed Control OIDs for the InRow ACRC.
--                   Added new OID's for Odin UPS upsAdvInputStatisticsTable, upsAdvInputApparentPower,
--                   upsAdvInputVoltageTHD, upsAdvInputBypassVoltageTHD, upsAdvInputPeakCurrent, upsAdvInputBypassPeakCurrent,
--                   upsAdvOutputStatisticsTable, upsAdvOutputPeakCurrent, upsAdvOutputCurrentTHD, upsAdvOutputCrestFactor,
--                   upsAdvStateTotaltimeonbattery, upsAdvStateTotaltimeonbypass, upsAdvStateTotaltimeonNormal,
--                   upsAdvStateNumberoftimesonbattery, upsAdvStateNumberoftimesbypass, upsAdvStateNumberoftimesNormal,
--                   subfeedBreakerUpperAcceptPowerCritical, upsParallelInputMaximumCurrent, upsParallelTotalOutputPower,
--                   upsParallelTotalOutputApparentPower, upsParallelInputCurrent, upsParallelInputActivePower,
--                   upsParallelInputApparentPower, upsParallelInputVoltage, upsParallelInputMaxVoltage,
--                   upsParallelInputMaxCurrent, upsParallelInputTotalActivePower, upsParallelInputTotalApparentPower,
--                   upsParallelOutputCurrent, upsParallelOutputLoad, upsParallelOutputPercentLoad, upsParallelOutputPower,
--                   upsParallelOutputApparentPower, upsParallelDiagSubSysBreakerStatus, upsParallelDiagSubSysBreakerName
--                   and upsParallelOutputTotalPercentLoad.
--                   Modified the OID upsAdvConfigOutputFreqRange and upsParallelSysRedundancy.
-- 01/13/11 - v4.0.3 Added new oids, upsHighPrecOutputEfficiency and upsHighPrecOutputEnergyUsage.
--                   Added green mode for bit 51 of upsBasicStateOutputState.
--                   Added traps 758 to 763 to support UPS firmware update.
--                   Deprecated all OIDs off branch mfiletransfer
--                   Added rPDU2 Metered Outlet Data
-- 08/17/11 - v4.0.4 Updated several rPDU2 and rPDU OIDs.
-- 12/07/11 - v4.0.5 Added new OID's for SYPX upsPhaseOutputPowerFactor and symmetraPxDisplay.
--                     Added SYS OID's for different Caphorn models galaxy5000UPS20KVA, galaxy5000UPS30KVA, galaxy5000UPS40KVA
--                     galaxy5000UPS50KVA, galaxy5000UPS60KVA , galaxy5000UPS80KVA, galaxy5000UPS100KVA, galaxy5000UPS120KVA
--                     galaxy5000UPS130KVA, galaxy5500UPS20KVA, galaxy5500UPS30KVA, galaxy5500UPS40KVA, galaxy5500UPS50KVA
--                     galaxy5500UPS60KVA, galaxy5500UPS80KVA, galaxy5500UPS100KVA, galaxy5500UPS120KVA, galaxy5500UPS130KVA
--                     and new OID upsAdvStateEcomode
-- 06/05/12 - v4.0.6 Added new OID rPDUIdentDeviceLineToNeutralVoltage for AP7823 Rack PDU.
-- 06/20/12 - v4.0.6 Added new rPDU2Group OID table for AP84xx, AP86xx, AP88xx, AP89xx Rack PDUs.
-- 08/10/12 - v4.0.6 Added new OIDs for SYPX 250/500 upsAdvConfigWarningAlarmDelay, upsAdvConfigInformationalAlarmDelay, upsDiagSwitchGearInstallationLoadPct,
--                   upsParallelOutputActivePowerTable,upsParallelSysSwitchGearInstallationLoadPct, upsParallelSysRedundancyStatus and upsParallelSysName.
--                     Modified the  description for upsBasicBatteryLastReplaceDate and bit 51 of upsBasicStateOutputState.
--                     Updated upsBasicOutputStatus and upsBasicSystemStatus.
-- 08/10/12 - v4.0.6 Added SYS OIDs for different Caphorn models galaxy9000UPS, galaxy9000SSC, galaxy9000UPSWithSSC, galaxy9000FreqConverter, eps6000UPS,
--                   eps6000SSC, eps6000UPSWithSSC, eps6000FreqConverter, eps7000UPS, eps7000SSC, eps7000UPSWithSSC,
--                   eps7000FreqConverter, eps8000UPS, eps8000SSC, eps8000UPSWithSSC, eps8000FreqConverter.
--                   Modified the description for bits 53 to 56 of upsBasicStateOutputState.
-- 02/22/13 -v4.0.8  Added OIDs upsAdvBatteryInternalSKU, upsAdvBatteryExternalSKU, upsAdvBatteryRecommendedReplaceDate,
--                    upsAdvConfigGreenMode, upsAdvConfigLCDLocalLanguage, upsAdvConfigLCDLockOut,
--                    upsAdvConfigChargerRate, and upsAdvConfigBatterySelection  for the SUMX application.
-- 04/10/13 -v4.0.9  Added new SYS OID for sPDU masterSwitchsPDU
-- 10/18/13 -v4.1.0  Added new cooling section of OIDs for second generation cooling products.
-- 02/17/14 -v4.1.1  Added the OIDs for Valhal(Galaxy VM)UPS.
-- 08/11/14 -v4.1.2  Added upsHighPrecBatteryPacks category.
--                   Added upsHighPrecInputBypassVoltage and upsHighPrecInputBypassFrequency OIDs.
--                   Added traps upsLocalDisplayButtonFault, upsLocalDisplayButtonFaultCleared, upsNeedsFactorySetupFault,
--                   upsNeedsFactorySetupFaultCleared, upsEPOActive, upsEPOActiveCleared, upsFirmwareMismatch, upsFirmwareMismatchCleared,
--                   upsOscillatorFailed, and upsOscillatorFailedCleared
--                   Updated the description for upsHighPrecOutputEfficiency to display all currently defined error conditions.
-- 11/25/14 -v4.1.4  Changes for IRRP100 and IRRP500:
--                     1.New OIDs added to support Active Flow Controller:
--                       airIRRP100GroupStatusActiveFlowControlStatus, airIRRP100GroupSetpointsActiveFlowControlBias, airIRRP100GroupConfigNumberOfActiveFlowControllers,
--                       airIRRP100GroupConfigActiveFlowControllerLampTest, airIRRP100GroupConfigAltitudeUS, airIRRP100GroupConfigAltitudeMetric,
--                       airIRRP500GroupStatusActiveFlowControlStatus, airIRRP500GroupSetpointsActiveFlowControlBias, airIRRP500GroupConfigNumberOfActiveFlowControllers,
--                       airIRRP500GroupConfigActiveFlowControllerLampTest, airIRRP500GroupConfigAltitudeUS, airIRRP500GroupConfigAltitudeMetric.
--                     2.Updated OIDs airIRRP100GroupConfigConfigurationType and airIRRP500GroupConfigConfigurationType to support CACS strategy.
--                     3.Added OIDs airIRRP100UnitConfigSecondaryPowerFeedCapability and airIRRP500UnitConfigSecondaryPowerFeedCapability
--                       to support secondary power feed capability.
--                     4.Added OIDs airIRRP100UnitConfigIdleOnCoolFail and airIRRP500UnitConfigIdleOnCoolFail to support Idle on Cool Fail setting.
--                     5.Added OIDs airIRRP100GroupStatusDewPointTempUS, airIRRP100GroupStatusDewPointTempMetric, airIRRP500GroupStatusDewPointTempUS
--                       and airIRRP500GroupStatusDewPointTempMetric to support the group dew point temperature.
--                     6.Added OIDs airIRRP100UnitStatusLeakSensor and airIRRP500UnitStatusLeakSensor to support leak sensor status.
-- 05/06/15 -v4.1.5    Added configurable contact OID rPDU2DeviceConfigContact.
--                     Added enums for the chargerSpotmode, inverterSpotmode state in upsBasicOutputStatus OID and StaticBypassStandby state in the upsBasicSystemStatus OID.
--                       Added new OIDs to support Active Flow Controller for airIRSC:
--                               airIRSCGroupConfigNumberOfActiveFlowControllers, airIRSCGroupConfigActiveFlowControllerLampTest,
--                               airIRSCGroupStatusActiveFlowControlStatus, airIRSCGroupSetpointsActiveFlowControlBias, airIRSCUnitStatusLeakSensor
-- 07/13/15 -v4.1.6    Changes for airIR Gen2 RD:
--                       1. Updated airIRG2GroupConfigConfigurationType to support CACS strategy.
--                       2. Added airIRG2RDT2StatusLeakSensor to support leak sensor status.
--                       3. Added OIDs to support Active Flow Controller:
--                          airIRG2GroupStatusActiveFlowControlStatus,airIRG2GroupSetpointsActiveFlowControlBias,airIRG2GroupConfigNumberOfActiveFlowControllers,
--                          airIRG2GroupConfigActiveFlowControllerLampTest,airIRG2GroupConfigAltitudeUS,airIRG2GroupConfigAltitudeMetric.
-- 08/05/15 -v4.1.7    Changes for SUMX and SY:
--                       1. Added upsAdvConfigBatteryHealthAlarmWarningTime and upsAdvConfigBatteryHealthAlarmSleepTime OIDs.
--                       2. Added upsDCOutput OIDs to support UPSes with DC outputs
--                       3. Added upsOnBatteryDueToFault and upsOnBatteryDueToFaultCleared for Symmetra UPSes.
-- 04/27/16 -v4.1.8    Changes for Galaxy VX:
--                       1. Added SYSOIDs for various models of Galaxy VX galaxyVXUPS500kVA, galaxyVXUPS625kVA, galaxyVXUPS750kVA, galaxyVXUPS1000kVA,
--                          galaxyVXUPS1250kVA and galaxyVXUPS1500kVA
--                       2. Added New OIDs upsAdvInputEnergyUsage, upsAdvOutputEnergyUsage, upsDiagnosticPowerCabinet and upsDiagSwitchgearAmbientTemperature.
--                       3. Replaced the options "batteryBreaker1" and "batteryBreaker2" from "switchgearBreakerType" in OID upsDiagSwitchGearBreakerTable with
--                          "batteryBreaker" and "bypassBackFeedBreaker".
-- 05/11/16 -v4.1.8    Added SYSOID for Air Economizer.
-- 07/01/16 -v4.1.9    Added support for PowerChute Network Shutdown.
-- 08/18/16 -v4.2.0    Added description "Minor or Environment Alarm" for bit 60 of OID upsBasicStateOutputState.
-- 09/08/16 -v4.2.0    Added support for AP7xxxB series Rack PDUs
-- 09/08/16 -v4.2.0    Added the following tables for NB250:
--                       1.emsInputStateSensorConfig, emsInputStateSensorStatus, memInputStateSensors
--                       2.Added wireless entry under environmentalMonitor.
-- 09/30/16 -v4.2.1    Changes for SUMX:
--                     Added upsAdvConfigSignalFlashVoltage and upsAdvConfigBatteryTemperatureCompensation.
--                     Added upsIntegratedUIO and subtree upsOutputRelays.
--                     Added configuration oids for universal input / output ports and associated sensors.
--                     Added upsHighPrecBatteryHealth.
--                     Added upsOutletGroupStatusGroupFullState in upsOutletGroupStatusTable.
--                     Added trap for temporary bypass.
--                     Updated fault list for upsDCOutputStatusAbnormalConditions.
-- 01/24/17 -v4.2.2    Changes for G300: Added Oids upsAdvConfigBatteryChargerType, upsAdvConfigAutomaticRestart, upsAdvConfigDeepDischargeProtection,
--					   upsAdvConfigFreqBypassTransferRange, upsAdvConfigUpsPowerconverterType, upsAdvConfigFrequencyConverterMode,upsEcoModeSetting,
--					   upsEcoModeFreqTransferRange, upsEcoModeHighVoltThreshold, upsEcoModeLowVoltThreshold,upsParallelNumOfUpsPoweringLoad,
--					   upsParallelMinNumOfRequiredUps.
-- 08/03/2017         Changed the range value for xPDUSystemOutputOverCurrentThreshold and xPDUSystemOutputOverCurrentNeutralThreshold
--                    from 100 to 110 to maintain consistency across all interfaces.
-- 03/24/17           Changes for Galaxy VX and Galaxy VM
--                    Added the options NiCd and Li-Ion to upsAdvConfigBatterySelection.
-- 03/31/2017 -v4.2.3 Changes for NB250:
--                    Added new card option to accessPXConfigCardFormat.
-- 08/02/2017 -v4.2.4 Changes for G7000: Added new oid's to support EBM and ECO modes and upsAdvBatteryNominalBackupTime.
-- 11/13/2017         Changes for NB250: Added oid's memSensorsTemperatureHighPrec, memOutputStatusAlarmState, memOutletStatusAlarmState, memBeaconStatusAlarmState,
--                    wirelessSensorStatusLocation, wirelessSensorStatusAlarmStatus, wirelessSensorPodStatusLocation, wirelessSensorPodStatusAlarmStatus,
--                    wirelessSensorConfigLocation, wirelessSensorPodConfigLocation.
-- 3/2/2018   -v4.2.7 Corrected OBJECT-TYPE and DESCRIPTION for airIRRP500UnitThresholdsSupplyHumidityHigh and airIRRP500UnitThresholdsSupplyHumidityLow to
--                    airIRRP500UnitThresholdsReturnHumidityHigh and airIRRP500UnitThresholdsReturnHumidityLow.
-- 9/11/2018  -v4.2.8 Added oid's upsHighPrecBatteryPackOnlyTableSize, upsHighPrecBatteryPackOnlyIndex, upsHighPrecBatteryPackOnlyFirmwareRevision,
--                    upsHighPrecBatteryPackOnlySerialNumber, upsHighPrecBatteryPackOnlyTemperature, upsHighPrecBatteryPackOnlyStatus, upsHighPrecBatteryPackOnlyHealth,
--                    upsHighPrecBatteryPackOnlyReplaceDate, upsHighPrecBatteryPackOnlyInstallDate.
-- 01/31/2019 -v4.2.9 Added a new SYSOID for galaxyVXUPS1100kVA for Galaxy VX.
-- 02/15/2019 -v4.3.0 Added oid's rPDU2IdentBootMonitorRev,rPDU2IdentLongDescription,rPDU2IdentNMCSerialNumber,rPDU2DevicePropertiesDevicePowerRating
--					  rPDU2OutletSwitchedConfigExternalLink,rPDU2OutletSwitchedStatusExternalLink,rPDU2OutletMeteredConfigExternalLink,rPDU2OutletMeteredStatusReceptacleType,
--					  rPDU2OutletMeteredStatusExternalLink.
-- 03/11/2019         Added oid upsAdvConfigACQualificationTime.
-- 10/29/2019         Added oid upsHighPrecExtdBatteryTemperature.
--                    Added traps upsInputContactOutputRelayFault, upsInputContactOutputRelayFaultCleared, upsAirFilterWarning, upsAirFilterWarningCleared
--                    upsBatteryPackIncompatible, upsBatteryPackIncompatibleCleared, upsInputContactAbnormal, upsInputContactAbnormalCleared, 
--                    upsOutputRelayAbnormal, upsOutputRelayAbnormalCleared.


-- ********************************************************************************************
-- ********************************************************************************************
-- PowerNet-MIB { iso org(3) dod(6) internet(1) private(4)
--    enterprises(1) apc(318) }

PowerNet-MIB DEFINITIONS ::= BEGIN

IMPORTS
   enterprises, IpAddress, Gauge, TimeTicks             FROM RFC1155-SMI
   DisplayString                                        FROM RFC1213-MIB
   OBJECT-TYPE                                          FROM RFC-1212
   TRAP-TYPE                                            FROM RFC-1215;
-- IMPORTS End

apc                            OBJECT IDENTIFIER ::=  { enterprises 318 }

products                       OBJECT IDENTIFIER ::=  { apc 1 }
apcmgmt                        OBJECT IDENTIFIER ::=  { apc 2 }

hardware                       OBJECT IDENTIFIER ::=  { products 1 }
software                       OBJECT IDENTIFIER ::=  { products 2 }
system                         OBJECT IDENTIFIER ::=  { products 3 }
experimental                   OBJECT IDENTIFIER ::=  { products 4 }

mconfig                        OBJECT IDENTIFIER ::=  { apcmgmt 1 }
mcontrol                       OBJECT IDENTIFIER ::=  { apcmgmt 2 }
mtrapargs                      OBJECT IDENTIFIER ::=  { apcmgmt 3 }
mfiletransfer                  OBJECT IDENTIFIER ::=  { apcmgmt 4 }

mconfigClock                   OBJECT IDENTIFIER ::=  { mconfig 6 }

mfiletransferStatus            OBJECT IDENTIFIER ::=  { mfiletransfer 1 }
mfiletransferConfig            OBJECT IDENTIFIER ::=  { mfiletransfer 2 }
mfiletransferControl           OBJECT IDENTIFIER ::=  { mfiletransfer 3 }

mfiletransferConfigSettings    OBJECT IDENTIFIER ::=  { mfiletransferConfig 1 }
mfiletransferConfigTFTP        OBJECT IDENTIFIER ::=  { mfiletransferConfig 2 }
mfiletransferConfigFTP         OBJECT IDENTIFIER ::=  { mfiletransferConfig 3 }

ups                            OBJECT IDENTIFIER ::=  { hardware 1 }
measureUps                     OBJECT IDENTIFIER ::=  { hardware 2 }
miniSNMPadapter                OBJECT IDENTIFIER ::=  { hardware 3 }
masterswitch                   OBJECT IDENTIFIER ::=  { hardware 4 }
masterswitchVM                 OBJECT IDENTIFIER ::=  { hardware 5 }
masterswitchMSP                OBJECT IDENTIFIER ::=  { hardware 6 }
dcDM3                          OBJECT IDENTIFIER ::=  { hardware 7 }
automaticTransferSwitch        OBJECT IDENTIFIER ::=  { hardware 8 }
dc2                            OBJECT IDENTIFIER ::=  { hardware 9 }
environmentalMonitor           OBJECT IDENTIFIER ::=  { hardware 10 }
netlock                        OBJECT IDENTIFIER ::=  { hardware 11 }
rPDU                           OBJECT IDENTIFIER ::=  { hardware 12 }
airConditioners                OBJECT IDENTIFIER ::=  { hardware 13 }
rARU                           OBJECT IDENTIFIER ::=  { hardware 14 }
xPDU                           OBJECT IDENTIFIER ::=  { hardware 15 }
battMan                        OBJECT IDENTIFIER ::=  { hardware 16 }
xATS                           OBJECT IDENTIFIER ::=  { hardware 17 }
generator                      OBJECT IDENTIFIER ::=  { hardware 18 }
consolePortServer              OBJECT IDENTIFIER ::=  { hardware 19 }
accessControl                  OBJECT IDENTIFIER ::=  { hardware 20 }
apcLocalDisplay                OBJECT IDENTIFIER ::=  { hardware 21 }
isxModularDistribution         OBJECT IDENTIFIER ::=  { hardware 22 }
isxModularPdu                  OBJECT IDENTIFIER ::=  { hardware 23 }


universalInputOutput           OBJECT IDENTIFIER ::=  { hardware 25 }

rPDU2                          OBJECT IDENTIFIER ::=  { hardware 26 }


cooling                        OBJECT IDENTIFIER ::=  { hardware 27 }

powerManagementModule          OBJECT IDENTIFIER ::=  { hardware 28 }

charger                        OBJECT IDENTIFIER ::=  { hardware 29 }

powerNetSubAgent               OBJECT IDENTIFIER ::=  { software 1 }

struxureWareOperations         OBJECT IDENTIFIER ::=  { software 2 }

powerChuteNetworkShutdown      OBJECT IDENTIFIER ::=  { software 3 }

powerChuteBusinessEdition      OBJECT IDENTIFIER ::=  { software 4 }


struxureWareOperationsStatus   OBJECT IDENTIFIER ::=  { struxureWareOperations 1 }

powerNetSoftwareSystem         OBJECT IDENTIFIER ::=  { powerNetSubAgent 1 }
powerNetSoftwareConfig         OBJECT IDENTIFIER ::=  { powerNetSubAgent 2 }

backUPS                        OBJECT IDENTIFIER ::=  { system  1 }
smartUPS                       OBJECT IDENTIFIER ::=  { system  2 }
matrixUPS                      OBJECT IDENTIFIER ::=  { system  3 }
masterSwitch                   OBJECT IDENTIFIER ::=  { system  4 }
symmetraUPS                    OBJECT IDENTIFIER ::=  { system  5 }
dp100E                         OBJECT IDENTIFIER ::=  { system  6 }
dp300E                         OBJECT IDENTIFIER ::=  { system  7 }
monitors                       OBJECT IDENTIFIER ::=  { system  8 }
redundantSwitch                OBJECT IDENTIFIER ::=  { system  9 }
dcPower                        OBJECT IDENTIFIER ::=  { system  10 }
automaticXferSwitch            OBJECT IDENTIFIER ::=  { system  11 }
netLock                        OBJECT IDENTIFIER ::=  { system  12 }
symmetra3PhaseUPS              OBJECT IDENTIFIER ::=  { system  13 }
networkAir                     OBJECT IDENTIFIER ::=  { system  14 }
infraStruXurePDU               OBJECT IDENTIFIER ::=  { system  15 }
ais5000UPS                     OBJECT IDENTIFIER ::=  { system  16 }
smartUPS3Phase                 OBJECT IDENTIFIER ::=  { system  17 }
battManager                    OBJECT IDENTIFIER ::=  { system  18 }
infraStruXureATS               OBJECT IDENTIFIER ::=  { system  19 }
conPortServ                    OBJECT IDENTIFIER ::=  { system  20 }
gutor                          OBJECT IDENTIFIER ::=  { system  21 }
accControl                     OBJECT IDENTIFIER ::=  { system  22 }
symmetraPX                     OBJECT IDENTIFIER ::=  { system  23 }
isxModDistribution             OBJECT IDENTIFIER ::=  { system  24 }
isxServers                     OBJECT IDENTIFIER ::=  { system  25 }
smartUPS2                      OBJECT IDENTIFIER ::=  { system  27 }
galaxy                         OBJECT IDENTIFIER ::=  { system  28 }

eps                            OBJECT IDENTIFIER ::=  { system  30 }

pcns                           OBJECT IDENTIFIER ::=  { system  31 }



pcbe                           OBJECT IDENTIFIER ::=  { system  33 }

pmm                            OBJECT IDENTIFIER ::=  { system  34 }

battManIdent                   OBJECT IDENTIFIER ::=  { battMan 1 }
battManSystemCalib             OBJECT IDENTIFIER ::=  { battMan 2 }
battManUnitCalib               OBJECT IDENTIFIER ::=  { battMan 3 }
battManStringCalib             OBJECT IDENTIFIER ::=  { battMan 4 }
battManBatteryCalib            OBJECT IDENTIFIER ::=  { battMan 5 }
battManConfig                  OBJECT IDENTIFIER ::=  { battMan 6 }
battManAlarm                   OBJECT IDENTIFIER ::=  { battMan 7 }
battManSystemStatus            OBJECT IDENTIFIER ::=  { battMan 8 }
battManStringStatus            OBJECT IDENTIFIER ::=  { battMan 9 }
battManBatteryStatus           OBJECT IDENTIFIER ::=  { battMan 10 }
battManInputContactStatus      OBJECT IDENTIFIER ::=  { battMan 11 }
battManControl                 OBJECT IDENTIFIER ::=  { battMan 12 }
battManTestResults             OBJECT IDENTIFIER ::=  { battMan 13 }
battManUnitStatus              OBJECT IDENTIFIER ::=  { battMan 14 }

xPDUIdent                      OBJECT IDENTIFIER ::=  { xPDU 1 }
xPDUDevice                     OBJECT IDENTIFIER ::=  { xPDU 2 }
xPDUACMonitoringPoint          OBJECT IDENTIFIER ::=  { xPDU 3 }
xPDUCircuitBreakers            OBJECT IDENTIFIER ::=  { xPDU 4 }
xPDUInputContacts              OBJECT IDENTIFIER ::=  { xPDU 5 }
xPDUOutputRelays               OBJECT IDENTIFIER ::=  { xPDU 6 }
xPDUMiscGroup                  OBJECT IDENTIFIER ::=  { xPDU 7 }

xPDUMainInput                  OBJECT IDENTIFIER ::=  { xPDUACMonitoringPoint 1 }
xPDUBypassInput                OBJECT IDENTIFIER ::=  { xPDUACMonitoringPoint 2 }
xPDUUPSInput                   OBJECT IDENTIFIER ::=  { xPDUACMonitoringPoint 3 }
xPDUSystemOutput               OBJECT IDENTIFIER ::=  { xPDUACMonitoringPoint 4 }
xPDUGroundMonitorPoint         OBJECT IDENTIFIER ::=  { xPDUACMonitoringPoint 5 }

xPDUSystemBreakers             OBJECT IDENTIFIER ::=  { xPDUCircuitBreakers 1 }
xPDUBranchBreakers             OBJECT IDENTIFIER ::=  { xPDUCircuitBreakers 2 }

pmmIdent                       OBJECT IDENTIFIER ::=  { powerManagementModule 1 }
pmmDevice                      OBJECT IDENTIFIER ::=  { powerManagementModule 2 }
pmmMonitoring                  OBJECT IDENTIFIER ::=  { powerManagementModule 3 }
pmmInput                       OBJECT IDENTIFIER ::=  { pmmMonitoring 1 }
pmmOutput                      OBJECT IDENTIFIER ::=  { pmmMonitoring 2 }
pmmBranch                      OBJECT IDENTIFIER ::=  { pmmMonitoring 3 }

chargerIdent                   OBJECT IDENTIFIER ::=  { charger 1 }
chargerInput                   OBJECT IDENTIFIER ::=  { charger 2 }
chargerOutput                  OBJECT IDENTIFIER ::=  { charger 3 }


xATSIdent                      OBJECT IDENTIFIER ::=  { xATS 1 }
xATSDevice                     OBJECT IDENTIFIER ::=  { xATS 2 }
xATSSwitch                     OBJECT IDENTIFIER ::=  { xATS 3 }
xATSACMonitoringPoint          OBJECT IDENTIFIER ::=  { xATS 4 }
xATSTesting                    OBJECT IDENTIFIER ::=  { xATS 5 }
xATSInputContacts              OBJECT IDENTIFIER ::=  { xATS 6 }
xATSOutputRelays               OBJECT IDENTIFIER ::=  { xATS 7 }
xATSMisc                       OBJECT IDENTIFIER ::=  { xATS 8 }

xATSSwitchStatus               OBJECT IDENTIFIER ::=  { xATSSwitch 1 }
xATSSwitchSettings             OBJECT IDENTIFIER ::=  { xATSSwitch 2 }
xATSSwitchTimers               OBJECT IDENTIFIER ::=  { xATSSwitch 3 }
xATSSwitchBlockMap             OBJECT IDENTIFIER ::=  { xATSSwitch 4 }
xATSSwitchStatistics           OBJECT IDENTIFIER ::=  { xATSSwitch 5 }

xATSSource1                    OBJECT IDENTIFIER ::=  { xATSACMonitoringPoint 1 }
xATSSource2                    OBJECT IDENTIFIER ::=  { xATSACMonitoringPoint 2 }
xATSSystemOutput               OBJECT IDENTIFIER ::=  { xATSACMonitoringPoint 3 }

xATSTestingStatus              OBJECT IDENTIFIER ::=  { xATSTesting 1 }
xATSTestingResults             OBJECT IDENTIFIER ::=  { xATSTesting 2 }
xATSTestingSchedule            OBJECT IDENTIFIER ::=  { xATSTesting 3 }
xATSTestingSimulatePowerFail   OBJECT IDENTIFIER ::=  { xATSTesting 4 }

xATSGenerator                  OBJECT IDENTIFIER ::=  { generator 1 }

xATSGeneratorIdent             OBJECT IDENTIFIER ::=  { xATSGenerator 1 }
xATSGeneratorStatus            OBJECT IDENTIFIER ::=  { xATSGenerator 2 }
xATSGeneratorAdvStatus         OBJECT IDENTIFIER ::=  { xATSGenerator 3 }
xATSGeneratorOutput            OBJECT IDENTIFIER ::=  { xATSGenerator 4 }
xATSGeneratorSettings          OBJECT IDENTIFIER ::=  { xATSGenerator 5 }
xATSGeneratorService           OBJECT IDENTIFIER ::=  { xATSGenerator 6 }
xATSGeneratorFuelSystem        OBJECT IDENTIFIER ::=  { xATSGenerator 7 }

cpsAP930x                      OBJECT IDENTIFIER ::=  { consolePortServer 1 }

cpsAP930xSys                   OBJECT IDENTIFIER ::=  { cpsAP930x 1 }
cpsAP930xConf                  OBJECT IDENTIFIER ::=  { cpsAP930x 2 }
cpsAP930xInfo                  OBJECT IDENTIFIER ::=  { cpsAP930x 3 }
cpsAP930xAdm                   OBJECT IDENTIFIER ::=  { cpsAP930x 4 }



smartUPS250                    OBJECT IDENTIFIER ::=  { smartUPS  1 }
smartUPS400                    OBJECT IDENTIFIER ::=  { smartUPS  2 }
smartUPS600                    OBJECT IDENTIFIER ::=  { smartUPS  3 }
smartUPS900                    OBJECT IDENTIFIER ::=  { smartUPS  4 }
smartUPS1250                   OBJECT IDENTIFIER ::=  { smartUPS  5 }
smartUPS2000                   OBJECT IDENTIFIER ::=  { smartUPS  6 }

smartUPS450                    OBJECT IDENTIFIER ::=  { smartUPS  7 }
smartUPS700                    OBJECT IDENTIFIER ::=  { smartUPS  8 }
smartUPS1000                   OBJECT IDENTIFIER ::=  { smartUPS  9 }
smartUPS1400                   OBJECT IDENTIFIER ::=  { smartUPS  10 }
smartUPS2200                   OBJECT IDENTIFIER ::=  { smartUPS  11 }
smartUPS3000                   OBJECT IDENTIFIER ::=  { smartUPS  12 }
smartUPS5000                   OBJECT IDENTIFIER ::=  { smartUPS  13 }
smartUPS7500                   OBJECT IDENTIFIER ::=  { smartUPS  14 }
smartUPS10000                  OBJECT IDENTIFIER ::=  { smartUPS  15 }
smartUPS1500                   OBJECT IDENTIFIER ::=  { smartUPS  16 }
smartUPS3000DSP                OBJECT IDENTIFIER ::=  { smartUPS  17 }
smartUPS5000DSP                OBJECT IDENTIFIER ::=  { smartUPS  18 }
smartUPS8000                   OBJECT IDENTIFIER ::=  { smartUPS  19 }

matrixUPS3000                  OBJECT IDENTIFIER ::=  { matrixUPS 1 }
matrixUPS5000                  OBJECT IDENTIFIER ::=  { matrixUPS 2 }

masterSwitchV1                 OBJECT IDENTIFIER ::=  { masterSwitch 1}
masterSwitchV2                 OBJECT IDENTIFIER ::=  { masterSwitch 2}
masterSwitchVM                 OBJECT IDENTIFIER ::=  { masterSwitch 3}
masterSwitchMSP                OBJECT IDENTIFIER ::=  { masterSwitch 4}
masterSwitchrPDU               OBJECT IDENTIFIER ::=  { masterSwitch 5}
masterSwitchrPDU2              OBJECT IDENTIFIER ::=  { masterSwitch 6}
masterSwitchsPDU               OBJECT IDENTIFIER ::=  { masterSwitch 7}
masterSwitchrPDUB              OBJECT IDENTIFIER ::=  { masterSwitch 8}

symmetraUPS4kVA                OBJECT IDENTIFIER ::=  { symmetraUPS 1 }
symmetraUPS8kVA                OBJECT IDENTIFIER ::=  { symmetraUPS 2 }
symmetraUPS12kVA               OBJECT IDENTIFIER ::=  { symmetraUPS 3 }
symmetraUPS16kVA               OBJECT IDENTIFIER ::=  { symmetraUPS 4 }

environmental                  OBJECT IDENTIFIER ::=  { monitors  1 }
environmentalMgtSystem         OBJECT IDENTIFIER ::=  { monitors  2 }
emu2                           OBJECT IDENTIFIER ::=  { monitors  3 }
mem                            OBJECT IDENTIFIER ::=  { monitors  4 }

dm3                            OBJECT IDENTIFIER ::=  { dcPower  1 }
dcmim2                         OBJECT IDENTIFIER ::=  { dcPower  2 }

symmetra3PhaseUPS40kVA         OBJECT IDENTIFIER ::=  { symmetra3PhaseUPS 1 }
symmetra3PhaseUPS60kVA         OBJECT IDENTIFIER ::=  { symmetra3PhaseUPS 2 }
symmetra3PhaseUPS80kVA         OBJECT IDENTIFIER ::=  { symmetra3PhaseUPS 3 }
symmetra3PhaseUPS20kVA         OBJECT IDENTIFIER ::=  { symmetra3PhaseUPS 4 }

airFMSeries                    OBJECT IDENTIFIER ::=  { networkAir 1 }
rackAirRemovalUnit             OBJECT IDENTIFIER ::=  { networkAir 2 }
airPASeries                    OBJECT IDENTIFIER ::=  { networkAir 3 }
airIRSC100Series               OBJECT IDENTIFIER ::=  { networkAir 4 }
airIRRC100Series               OBJECT IDENTIFIER ::=  { networkAir 5 }
airIRRP100Series               OBJECT IDENTIFIER ::=  { networkAir 6 }
airIRRP500Series               OBJECT IDENTIFIER ::=  { networkAir 7 }
airIRRD100Series               OBJECT IDENTIFIER ::=  { networkAir 8 }
airInRoomPerimeter             OBJECT IDENTIFIER ::=  { networkAir 9 }
airACRC300Series               OBJECT IDENTIFIER ::=  { networkAir 10 }
airLESeries                    OBJECT IDENTIFIER ::=  { networkAir 11 }
airIRRDU                       OBJECT IDENTIFIER ::=  { networkAir 12 }
airEcoBreeze                   OBJECT IDENTIFIER ::=  { networkAir 13 }
airLELSeries                   OBJECT IDENTIFIER ::=  { networkAir 14 }
airACRC600Series               OBJECT IDENTIFIER ::=  { networkAir 15 }
airACRD600Series               OBJECT IDENTIFIER ::=  { networkAir 16 }
airEconomizer                  OBJECT IDENTIFIER ::=  { networkAir 17 }
airTSAChillers                 OBJECT IDENTIFIER ::=  { networkAir 18 }
airLEG2Series                  OBJECT IDENTIFIER ::=  { networkAir 19 }
airAmico                       OBJECT IDENTIFIER ::=  { networkAir 20 }
airUniflarSP                   OBJECT IDENTIFIER ::=  { networkAir 21 }
airTrimChiller                 OBJECT IDENTIFIER ::=  { networkAir 22 }
airACRD300Series               OBJECT IDENTIFIER ::=  { networkAir 23 }

ais5000UPS10kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  1 }
ais5000UPS20kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  2 }
ais5000UPS30kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  3 }
ais5000UPS40kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  4 }
ais5000UPS60kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  5 }
ais5000UPS80kVA                OBJECT IDENTIFIER ::=  { ais5000UPS  6 }
ais5000UPS100kVA               OBJECT IDENTIFIER ::=  { ais5000UPS  7 }

smartUPS3Phase10kVA            OBJECT IDENTIFIER ::=  { smartUPS3Phase  1 }
smartUPS3Phase15kVA            OBJECT IDENTIFIER ::=  { smartUPS3Phase  2 }
smartUPS3Phase20kVA            OBJECT IDENTIFIER ::=  { smartUPS3Phase  3 }
smartUPS3Phase30kVA            OBJECT IDENTIFIER ::=  { smartUPS3Phase  4 }
smartUPS3Phase40kVA            OBJECT IDENTIFIER ::=  { smartUPS3Phase  5 }

galaxy7000UPS200kVA            OBJECT IDENTIFIER ::=  { galaxy 1 }
galaxy7000UPS250kVA            OBJECT IDENTIFIER ::=  { galaxy 2 }
galaxy7000UPS300kVA            OBJECT IDENTIFIER ::=  { galaxy 3 }
galaxy7000UPS400kVA            OBJECT IDENTIFIER ::=  { galaxy 4 }
galaxy7000UPS500kVA            OBJECT IDENTIFIER ::=  { galaxy 5 }
galaxy7000SSC800kVA            OBJECT IDENTIFIER ::=  { galaxy 6 }
galaxy7000SSC1200kVA           OBJECT IDENTIFIER ::=  { galaxy 7 }
galaxy7000SSC2000kVA           OBJECT IDENTIFIER ::=  { galaxy 8 }
galaxy300UPS10kVA33            OBJECT IDENTIFIER ::=  { galaxy 9 }
galaxy300UPS15kVA33            OBJECT IDENTIFIER ::=  { galaxy 10 }
galaxy300UPS20kVA33            OBJECT IDENTIFIER ::=  { galaxy 11 }
galaxy300UPS30kVA33            OBJECT IDENTIFIER ::=  { galaxy 12 }
galaxy300UPS40kVA33            OBJECT IDENTIFIER ::=  { galaxy 13 }
galaxy300UPS10kVA31            OBJECT IDENTIFIER ::=  { galaxy 14 }
galaxy300UPS15kVA31            OBJECT IDENTIFIER ::=  { galaxy 15 }
galaxy300UPS20kVA31            OBJECT IDENTIFIER ::=  { galaxy 16 }
galaxy300UPS30kVA31            OBJECT IDENTIFIER ::=  { galaxy 17 }

galaxy5000UPS20KVA             OBJECT IDENTIFIER ::=  { galaxy 18 }
galaxy5000UPS30KVA             OBJECT IDENTIFIER ::=  { galaxy 19 }
galaxy5000UPS40KVA             OBJECT IDENTIFIER ::=  { galaxy 20 }
galaxy5000UPS50KVA             OBJECT IDENTIFIER ::=  { galaxy 21 }
galaxy5000UPS60KVA             OBJECT IDENTIFIER ::=  { galaxy 22 }
galaxy5000UPS80KVA             OBJECT IDENTIFIER ::=  { galaxy 23 }
galaxy5000UPS100KVA            OBJECT IDENTIFIER ::=  { galaxy 24 }
galaxy5000UPS120KVA            OBJECT IDENTIFIER ::=  { galaxy 25 }
galaxy5000UPS130KVA            OBJECT IDENTIFIER ::=  { galaxy 26 }
galaxy5500UPS20KVA             OBJECT IDENTIFIER ::=  { galaxy 27 }
galaxy5500UPS30KVA             OBJECT IDENTIFIER ::=  { galaxy 28 }
galaxy5500UPS40KVA             OBJECT IDENTIFIER ::=  { galaxy 29 }
galaxy5500UPS50KVA             OBJECT IDENTIFIER ::=  { galaxy 30 }
galaxy5500UPS60KVA             OBJECT IDENTIFIER ::=  { galaxy 31 }
galaxy5500UPS80KVA             OBJECT IDENTIFIER ::=  { galaxy 32 }
galaxy5500UPS100KVA            OBJECT IDENTIFIER ::=  { galaxy 33 }
galaxy5500UPS120KVA            OBJECT IDENTIFIER ::=  { galaxy 34 }
galaxy5500UPS130KVA            OBJECT IDENTIFIER ::=  { galaxy 35 }



galaxyVMUPS50kVA               OBJECT IDENTIFIER ::=  { galaxy 36 }
galaxyVMUPS60kVA               OBJECT IDENTIFIER ::=  { galaxy 37 }
galaxyVMUPS80kVA               OBJECT IDENTIFIER ::=  { galaxy 38 }
galaxyVMUPS90kVA               OBJECT IDENTIFIER ::=  { galaxy 39 }
galaxyVMUPS100kVA              OBJECT IDENTIFIER ::=  { galaxy 40 }
galaxyVMUPS110kVA              OBJECT IDENTIFIER ::=  { galaxy 41 }
galaxyVMUPS120kVA              OBJECT IDENTIFIER ::=  { galaxy 42 }
galaxyVMUPS130kVA              OBJECT IDENTIFIER ::=  { galaxy 43 }
galaxyVMUPS160kVA              OBJECT IDENTIFIER ::=  { galaxy 44 }
galaxyVMUPS180kVA              OBJECT IDENTIFIER ::=  { galaxy 45 }
galaxyVMUPS200kVA              OBJECT IDENTIFIER ::=  { galaxy 46 }
galaxyVMUPS225kVA              OBJECT IDENTIFIER ::=  { galaxy 47 }


galaxy9000UPS                  OBJECT IDENTIFIER ::=  { galaxy 48 }
galaxy9000SSC                  OBJECT IDENTIFIER ::=  { galaxy 49 }
galaxy9000UPSWithSSC           OBJECT IDENTIFIER ::=  { galaxy 50 }
galaxy9000FreqConverter        OBJECT IDENTIFIER ::=  { galaxy 51 }


galaxyVXUPS625kVA              OBJECT IDENTIFIER ::=  { galaxy 56 }
galaxyVXUPS750kVA              OBJECT IDENTIFIER ::=  { galaxy 57 }
galaxyVXUPS1000kVA             OBJECT IDENTIFIER ::=  { galaxy 58 }
galaxyVXUPS1250kVA             OBJECT IDENTIFIER ::=  { galaxy 59 }
galaxyVXUPS1500kVA             OBJECT IDENTIFIER ::=  { galaxy 60 }

galaxy300UPS60kVA33            OBJECT IDENTIFIER ::=  { galaxy 61 }
galaxy300UPS80kVA33            OBJECT IDENTIFIER ::=  { galaxy 62 }

galaxyVXUPS500kVA              OBJECT IDENTIFIER ::=  { galaxy 63 }
galaxyVXUPS250kVA              OBJECT IDENTIFIER ::=  { galaxy 64 }
galaxyVXUPS400kVA              OBJECT IDENTIFIER ::=  { galaxy 65 }

galaxyVSUPS100kW               OBJECT IDENTIFIER ::=  { galaxy 66 }

galaxy7000UPS160kVA            OBJECT IDENTIFIER ::=  { galaxy 67 }
galaxyVXUPS300kVA              OBJECT IDENTIFIER ::=  { galaxy 68 }
galaxyVXUPS1100kVA             OBJECT IDENTIFIER ::=  { galaxy 69 }


galaxyVSUPS10kW                OBJECT IDENTIFIER ::=  { galaxy 70 }
galaxyVSUPS15kW                OBJECT IDENTIFIER ::=  { galaxy 71 }
galaxyVSUPS20kW                OBJECT IDENTIFIER ::=  { galaxy 72 }
galaxyVSUPS25kW                OBJECT IDENTIFIER ::=  { galaxy 73 }
galaxyVSUPS30kW                OBJECT IDENTIFIER ::=  { galaxy 74 }
galaxyVSUPS40kW                OBJECT IDENTIFIER ::=  { galaxy 75 }
galaxyVSUPS50kW                OBJECT IDENTIFIER ::=  { galaxy 76 }
galaxyVSUPS60kW                OBJECT IDENTIFIER ::=  { galaxy 77 }
galaxyVSUPS75kW                OBJECT IDENTIFIER ::=  { galaxy 78 }
galaxyVSUPS80kW                OBJECT IDENTIFIER ::=  { galaxy 79 }
galaxyVSUPS120kW               OBJECT IDENTIFIER ::=  { galaxy 80 }
galaxyVSUPS150kW               OBJECT IDENTIFIER ::=  { galaxy 81 }


eps6000UPS                     OBJECT IDENTIFIER ::=  { eps 1 }
eps6000SSC                     OBJECT IDENTIFIER ::=  { eps 2 }
eps6000UPSWithSSC              OBJECT IDENTIFIER ::=  { eps 3 }
eps6000FreqConverter           OBJECT IDENTIFIER ::=  { eps 4 }
eps7000UPS                     OBJECT IDENTIFIER ::=  { eps 5 }
eps7000SSC                     OBJECT IDENTIFIER ::=  { eps 6 }
eps7000UPSWithSSC              OBJECT IDENTIFIER ::=  { eps 7 }
eps7000FreqConverter           OBJECT IDENTIFIER ::=  { eps 8 }
eps8000UPS                     OBJECT IDENTIFIER ::=  { eps 9 }
eps8000SSC                     OBJECT IDENTIFIER ::=  { eps 10 }
eps8000UPSWithSSC              OBJECT IDENTIFIER ::=  { eps 11 }
eps8000FreqConverter           OBJECT IDENTIFIER ::=  { eps 12 }



pcns4                   OBJECT IDENTIFIER ::=  { pcns 1 }

pcnsIdent               OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 1 }
pcnsNetworking          OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 2 }
pcnsNMC                 OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 3 }
pcnsEvents              OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 4 }
pcnsShutdown            OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 5 }
pcnsAlarms              OBJECT IDENTIFIER ::=  { powerChuteNetworkShutdown 6 }

pcnsLoggingLevel OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..6))
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Override the Root Logging level for PCNS.  Possible Values: CLEAR, DEBUG"
   ::= { powerChuteNetworkShutdown 7 }


pcbe9                   OBJECT IDENTIFIER ::=  { pcbe 1 }

pmm400kVA               OBJECT IDENTIFIER ::=  { pmm 1 }
pmm500kVA               OBJECT IDENTIFIER ::=  { pmm 2 }


pcbeIdent               OBJECT IDENTIFIER ::=  { powerChuteBusinessEdition 1 }
--   Deliberately  leaving gap in the numbers so they are consistant with PCNS
pcbeAlarms              OBJECT IDENTIFIER ::=  { powerChuteBusinessEdition 6 }



conPortServAP930x              OBJECT IDENTIFIER ::=  { conPortServ 1 }

gutorPEW                       OBJECT IDENTIFIER ::=  { gutor 1 }
gutorPDW                       OBJECT IDENTIFIER ::=  { gutor 2 }
gutorWEW                       OBJECT IDENTIFIER ::=  { gutor 3 }
gutorWDW                       OBJECT IDENTIFIER ::=  { gutor 4 }
gutorSDC                       OBJECT IDENTIFIER ::=  { gutor 5 }
gutorPXP                       OBJECT IDENTIFIER ::=  { gutor 6 }
gutorPXC                       OBJECT IDENTIFIER ::=  { gutor 7 }

upsIdent                       OBJECT IDENTIFIER ::=  { ups 1 }
upsBattery                     OBJECT IDENTIFIER ::=  { ups 2 }
upsInput                       OBJECT IDENTIFIER ::=  { ups 3 }
upsOutput                      OBJECT IDENTIFIER ::=  { ups 4 }
upsConfig                      OBJECT IDENTIFIER ::=  { ups 5 }
upsControl                     OBJECT IDENTIFIER ::=  { ups 6 }
upsTest                        OBJECT IDENTIFIER ::=  { ups 7 }
upsComm                        OBJECT IDENTIFIER ::=  { ups 8 }
upsPhase                       OBJECT IDENTIFIER ::=  { ups 9 }
upsSyncCtrlGroup               OBJECT IDENTIFIER ::=  { ups 10 }
upsState                       OBJECT IDENTIFIER ::=  { ups 11 }
upsOutletGroups                OBJECT IDENTIFIER ::=  { ups 12 }
upsDiagnostics                 OBJECT IDENTIFIER ::=  { ups 13 }
upsParallelSystem              OBJECT IDENTIFIER ::=  { ups 14 }
upsPhysicalLayout              OBJECT IDENTIFIER ::=  { ups 15 }
upsIntegratedATS               OBJECT IDENTIFIER ::=  { ups 16 }
upsDCOutput                    OBJECT IDENTIFIER ::=  { ups 17 }
upsIntegratedUIO               OBJECT IDENTIFIER ::=  { ups 18 }
upsEnergyEfficiency            OBJECT IDENTIFIER ::=  { ups 20 }


upsStatistics                  OBJECT IDENTIFIER ::=  { ups 22 }

upsBasicIdent                  OBJECT IDENTIFIER ::=  { upsIdent 1 }
upsAdvIdent                    OBJECT IDENTIFIER ::=  { upsIdent 2 }

upsBasicBattery                OBJECT IDENTIFIER ::=  { upsBattery 1 }
upsAdvBattery                  OBJECT IDENTIFIER ::=  { upsBattery 2 }
upsHighPrecBattery             OBJECT IDENTIFIER ::=  { upsBattery 3 }

upsBasicInput                  OBJECT IDENTIFIER ::=  { upsInput 1 }
upsAdvInput                    OBJECT IDENTIFIER ::=  { upsInput 2 }
upsHighPrecInput               OBJECT IDENTIFIER ::=  { upsInput 3 }

upsBasicOutput                 OBJECT IDENTIFIER ::=  { upsOutput 1 }
upsAdvOutput                   OBJECT IDENTIFIER ::=  { upsOutput 2 }
upsHighPrecOutput              OBJECT IDENTIFIER ::=  { upsOutput 3 }

upsBasicConfig                 OBJECT IDENTIFIER ::=  { upsConfig 1 }
upsAdvConfig                   OBJECT IDENTIFIER ::=  { upsConfig 2 }


upsBasicControl                OBJECT IDENTIFIER ::=  { upsControl 1 }
upsAdvControl                  OBJECT IDENTIFIER ::=  { upsControl 2 }

upsBasicTest                   OBJECT IDENTIFIER ::=  { upsTest 1 }
upsAdvTest                     OBJECT IDENTIFIER ::=  { upsTest 2 }

upsPhaseResetValues            OBJECT IDENTIFIER ::=  { upsPhase 1 }
upsPhaseInput                  OBJECT IDENTIFIER ::=  { upsPhase 2 }
upsPhaseOutput                 OBJECT IDENTIFIER ::=  { upsPhase 3 }

upsSyncCtrlGroupConfig         OBJECT IDENTIFIER ::=  { upsSyncCtrlGroup 1 }
upsSyncCtrlGroupStatus         OBJECT IDENTIFIER ::=  { upsSyncCtrlGroup 2 }

upsBasicState                  OBJECT IDENTIFIER ::=  { upsState 1 }
upsAdvState                    OBJECT IDENTIFIER ::=  { upsState 2 }

upsOutletGroupStatus           OBJECT IDENTIFIER ::=  { upsOutletGroups 1 }
upsOutletGroupConfig           OBJECT IDENTIFIER ::=  { upsOutletGroups 2 }
upsOutletGroupControl          OBJECT IDENTIFIER ::=  { upsOutletGroups 3 }

upsDiagnosticIM                OBJECT IDENTIFIER ::=  { upsDiagnostics 1 }
upsDiagnosticPowerModules      OBJECT IDENTIFIER ::=  { upsDiagnostics 2 }
upsDiagnosticBatteries         OBJECT IDENTIFIER ::=  { upsDiagnostics 3 }
upsDiagnosticSubsystem         OBJECT IDENTIFIER ::=  { upsDiagnostics 4 }
upsDiagnosticExternalDevices   OBJECT IDENTIFIER ::=  { upsDiagnostics 5 }
upsDiagnosticComBus            OBJECT IDENTIFIER ::=  { upsDiagnostics 6 }
upsDiagnosticPowerCabinet      OBJECT IDENTIFIER ::=  { upsDiagnostics 7 }
upsDiagnosticDisplay           OBJECT IDENTIFIER ::=  { upsDiagnostics 8 }
upsDiagnosticUnitController    OBJECT IDENTIFIER ::=  { upsDiagnostics 9 }
upsDiagnosticSLC               OBJECT IDENTIFIER ::=  { upsDiagnostics 10 }
upsDiagnosticTemperature       OBJECT IDENTIFIER ::=  { upsDiagnostics 11 }

upsDiagSwitchGear              OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 1 }
upsDiagMCCBBox                 OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 2 }
upsDiagTransformer             OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 3 }

upsDiagFlyWheel                OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 4 }

upsOutputRelays                OBJECT IDENTIFIER ::=  { upsIntegratedUIO 1 }
upsInputContacts               OBJECT IDENTIFIER ::=  { upsIntegratedUIO 2 }


upsECOmode                     OBJECT IDENTIFIER ::=  { upsEnergyEfficiency 1 }
upsEBMmode                     OBJECT IDENTIFIER ::=  { upsEnergyEfficiency 2 }


upsBatteryStats                OBJECT IDENTIFIER ::=  { upsStatistics 1 }
upsOperationalStats            OBJECT IDENTIFIER ::=  { upsStatistics 2 }
upsEnergyEfficiencyStats       OBJECT IDENTIFIER ::=  { upsStatistics 3 }

mUpsEnviron                    OBJECT IDENTIFIER ::=  { measureUps 1 }
mUpsContact                    OBJECT IDENTIFIER ::=  { measureUps 2 }

serialPort                     OBJECT IDENTIFIER ::=  { miniSNMPadapter 1}

serialPort1                    OBJECT IDENTIFIER ::=  { serialPort 1}
serialPort2                    OBJECT IDENTIFIER ::=  { serialPort 2}

serialPort2Config              OBJECT IDENTIFIER ::=  { serialPort2 1}
serialPort2Control             OBJECT IDENTIFIER ::=  { serialPort2 2}

sPDUIdent                      OBJECT IDENTIFIER ::=  { masterswitch 1 }
sPDUMasterControl              OBJECT IDENTIFIER ::=  { masterswitch 2 }
sPDUMasterConfig               OBJECT IDENTIFIER ::=  { masterswitch 3 }
sPDUOutletControl              OBJECT IDENTIFIER ::=  { masterswitch 4 }
sPDUOutletConfig               OBJECT IDENTIFIER ::=  { masterswitch 5 }

sPDUIdentVM                    OBJECT IDENTIFIER ::=  { masterswitchVM 1 }
sPDUMasterControlVM            OBJECT IDENTIFIER ::=  { masterswitchVM 2 }
sPDUMasterConfigVM             OBJECT IDENTIFIER ::=  { masterswitchVM 3 }
sPDUMasterStatusVM             OBJECT IDENTIFIER ::=  { masterswitchVM 4 }
sPDUOutletControlVM            OBJECT IDENTIFIER ::=  { masterswitchVM 5 }
sPDUOutletConfigVM             OBJECT IDENTIFIER ::=  { masterswitchVM 6 }
sPDUOutletStatusVM             OBJECT IDENTIFIER ::=  { masterswitchVM 7 }

sPDUIdentMSP                   OBJECT IDENTIFIER ::=  { masterswitchMSP 1 }
sPDUMasterControlMSP           OBJECT IDENTIFIER ::=  { masterswitchMSP 2 }
sPDUMasterConfigMSP            OBJECT IDENTIFIER ::=  { masterswitchMSP 3 }
sPDUMasterStatusMSP            OBJECT IDENTIFIER ::=  { masterswitchMSP 4 }
sPDUOutletControlMSP           OBJECT IDENTIFIER ::=  { masterswitchMSP 5 }
sPDUOutletConfigMSP            OBJECT IDENTIFIER ::=  { masterswitchMSP 6 }
sPDUOutletStatusMSP            OBJECT IDENTIFIER ::=  { masterswitchMSP 7 }

sPDUOutletConfigMSPall         OBJECT IDENTIFIER ::=  { sPDUOutletConfigMSP 1 }
sPDUOutletConfigMSPgs          OBJECT IDENTIFIER ::=  { sPDUOutletConfigMSP 2 }
sPDUOutletConfigMSPannun       OBJECT IDENTIFIER ::=  { sPDUOutletConfigMSP 3 }
sPDUOutletConfigMSPmups        OBJECT IDENTIFIER ::=  { sPDUOutletConfigMSP 4 }

rPDUIdent                      OBJECT IDENTIFIER ::=  { rPDU 1 }
rPDULoad                       OBJECT IDENTIFIER ::=  { rPDU 2 }
rPDUOutlet                     OBJECT IDENTIFIER ::=  { rPDU 3 }
rPDUPowerSupply                OBJECT IDENTIFIER ::=  { rPDU 4 }
rPDUStatus                     OBJECT IDENTIFIER ::=  { rPDU 5 }

rPDULoadDevice                 OBJECT IDENTIFIER ::=  { rPDULoad 1 }
rPDULoadPhaseConfig            OBJECT IDENTIFIER ::=  { rPDULoad 2 }
rPDULoadStatus                 OBJECT IDENTIFIER ::=  { rPDULoad 3 }
rPDULoadBankConfig             OBJECT IDENTIFIER ::=  { rPDULoad 4 }

rPDUOutletDevice               OBJECT IDENTIFIER ::=  { rPDUOutlet 1 }
rPDUOutletPhase                OBJECT IDENTIFIER ::=  { rPDUOutlet 2 }
rPDUOutletControl              OBJECT IDENTIFIER ::=  { rPDUOutlet 3 }
rPDUOutletConfig               OBJECT IDENTIFIER ::=  { rPDUOutlet 4 }
rPDUOutletStatus               OBJECT IDENTIFIER ::=  { rPDUOutlet 5 }
rPDUOutletBank                 OBJECT IDENTIFIER ::=  { rPDUOutlet 6 }

rPDUPowerSupplyDevice          OBJECT IDENTIFIER ::=  { rPDUPowerSupply 1 }

dm3Ident                       OBJECT IDENTIFIER ::=  { dcDM3 1 }
dm3Config                      OBJECT IDENTIFIER ::=  { dcDM3 2 }
dm3Status                      OBJECT IDENTIFIER ::=  { dcDM3 3 }

dm3IdentSystem                 OBJECT IDENTIFIER ::=  { dm3Ident 1}

dm3ConfigSystem                OBJECT IDENTIFIER ::=  { dm3Config 1 }
dm3ConfigLVD                   OBJECT IDENTIFIER ::=  { dm3Config 2 }
dm3ConfigBattery               OBJECT IDENTIFIER ::=  { dm3Config 3 }
dm3ConfigPowerModules          OBJECT IDENTIFIER ::=  { dm3Config 4 }
dm3ConfigRelays                OBJECT IDENTIFIER ::=  { dm3Config 5 }
dm3ConfigDistribution          OBJECT IDENTIFIER ::=  { dm3Config 6 }

dm3ConfigRectifier             OBJECT IDENTIFIER ::=  { dm3ConfigPowerModules 1 }
dm3ConfigConverter             OBJECT IDENTIFIER ::=  { dm3ConfigPowerModules 2 }

dm3ConfigRectThresh            OBJECT IDENTIFIER ::=  { dm3ConfigRectifier 1 }
dm3ConfigRectAlarms            OBJECT IDENTIFIER ::=  { dm3ConfigRectifier 2 }

dm3ConfigConvThresh            OBJECT IDENTIFIER ::=  { dm3ConfigConverter 1 }
dm3ConfigConvAlarms            OBJECT IDENTIFIER ::=  { dm3ConfigConverter 2 }

dm3ConfigOutputRelays          OBJECT IDENTIFIER ::=  { dm3ConfigRelays 1 }
dm3ConfigInputRelays           OBJECT IDENTIFIER ::=  { dm3ConfigRelays 2 }

dm3ConfigBreakers              OBJECT IDENTIFIER ::=  { dm3ConfigDistribution 1 }
dm3ConfigFuses                 OBJECT IDENTIFIER ::=  { dm3ConfigDistribution 2 }

dm3StatusSystem                OBJECT IDENTIFIER ::=  { dm3Status 1 }
dm3StatusAlarms                OBJECT IDENTIFIER ::=  { dm3Status 2 }
dm3StatusBattery               OBJECT IDENTIFIER ::=  { dm3Status 3 }
dm3StatusOEM                   OBJECT IDENTIFIER ::=  { dm3Status 4 }
dm3StatusLVD                   OBJECT IDENTIFIER ::=  { dm3Status 5 }
dm3StatusPowerModules          OBJECT IDENTIFIER ::=  { dm3Status 6 }
dm3StatusRelays                OBJECT IDENTIFIER ::=  { dm3Status 7 }
dm3StatusDistribution          OBJECT IDENTIFIER ::=  { dm3Status 8 }

dm3StatusRectifier             OBJECT IDENTIFIER ::=  { dm3StatusPowerModules 1 }
dm3StatusConverter             OBJECT IDENTIFIER ::=  { dm3StatusPowerModules 2 }

dm3StatusOutputRelays          OBJECT IDENTIFIER ::=  { dm3StatusRelays 1 }
dm3StatusInputRelays           OBJECT IDENTIFIER ::=  { dm3StatusRelays 2 }

dm3StatusBreakers              OBJECT IDENTIFIER ::=  { dm3StatusDistribution 1 }
dm3StatusFuses                 OBJECT IDENTIFIER ::=  { dm3StatusDistribution 2 }

atsIdent                       OBJECT IDENTIFIER ::=  { automaticTransferSwitch 1 }
atsCalibration                 OBJECT IDENTIFIER ::=  { automaticTransferSwitch 2 }
atsControl                     OBJECT IDENTIFIER ::=  { automaticTransferSwitch 3 }
atsConfig                      OBJECT IDENTIFIER ::=  { automaticTransferSwitch 4 }
atsStatus                      OBJECT IDENTIFIER ::=  { automaticTransferSwitch 5 }

atsCalibrationInput            OBJECT IDENTIFIER ::=  { atsCalibration 1 }
atsCalibrationPowerSupply      OBJECT IDENTIFIER ::=  { atsCalibration 2 }
atsCalibrationOutput           OBJECT IDENTIFIER ::=  { atsCalibration 3 }

atsStatusDeviceStatus          OBJECT IDENTIFIER ::=  { atsStatus 1 }
atsStatusResetValues           OBJECT IDENTIFIER ::=  { atsStatus 2 }
atsStatusInput                 OBJECT IDENTIFIER ::=  { atsStatus 3 }
atsStatusOutput                OBJECT IDENTIFIER ::=  { atsStatus 4 }

dcmim2Ident                    OBJECT IDENTIFIER ::=  { dc2 1 }
dcmim2Control                  OBJECT IDENTIFIER ::=  { dc2 2 }
dcmim2Config                   OBJECT IDENTIFIER ::=  { dc2 3 }
dcmim2Status                   OBJECT IDENTIFIER ::=  { dc2 4 }

dcmim2IdentSystem              OBJECT IDENTIFIER ::=  { dcmim2Ident 1 }

dcmim2ControlSystem            OBJECT IDENTIFIER ::=  { dcmim2Control 1 }

dcmim2ConfigSystem             OBJECT IDENTIFIER ::=  { dcmim2Config 1 }
dcmim2ConfigBattery            OBJECT IDENTIFIER ::=  { dcmim2Config 2 }
dcmim2ConfigLVD                OBJECT IDENTIFIER ::=  { dcmim2Config 3 }

dcmim2StatusSystem             OBJECT IDENTIFIER ::=  { dcmim2Status 1 }
dcmim2StatusRectifier          OBJECT IDENTIFIER ::=  { dcmim2Status 2 }
dcmim2StatusBattery            OBJECT IDENTIFIER ::=  { dcmim2Status 3 }
dcmim2StatusLVD                OBJECT IDENTIFIER ::=  { dcmim2Status 4 }
dcmim2StatusAlarms             OBJECT IDENTIFIER ::=  { dcmim2Status 5 }

external                       OBJECT IDENTIFIER ::=  { environmentalMonitor 1 }
integrated                     OBJECT IDENTIFIER ::=  { environmentalMonitor 2 }
envMgtSystem                   OBJECT IDENTIFIER ::=  { environmentalMonitor 3 }
modEnvMgr                      OBJECT IDENTIFIER ::=  { environmentalMonitor 4 }
envWireless                    OBJECT IDENTIFIER ::=  { environmentalMonitor 5 }

emIdent                        OBJECT IDENTIFIER ::=  { external 1 }
emConfig                       OBJECT IDENTIFIER ::=  { external 2 }
emStatus                       OBJECT IDENTIFIER ::=  { external 3 }

iemIdent                       OBJECT IDENTIFIER ::=  { integrated 1 }
iemConfig                      OBJECT IDENTIFIER ::=  { integrated 2 }
iemStatus                      OBJECT IDENTIFIER ::=  { integrated 3 }

emsIdent                        OBJECT IDENTIFIER ::=  { envMgtSystem 1 }

emsOutputRelayControl           OBJECT IDENTIFIER ::=  { envMgtSystem 2 }
emsOutletControl                OBJECT IDENTIFIER ::=  { envMgtSystem 3 }
emsSensorControl                OBJECT IDENTIFIER ::=  { envMgtSystem 4 }
emsAlarmDeviceControl           OBJECT IDENTIFIER ::=  { envMgtSystem 5 }

emsConfig                       OBJECT IDENTIFIER ::=  { envMgtSystem 6 }
emsProbeConfig                  OBJECT IDENTIFIER ::=  { envMgtSystem 7 }
emsInputContactConfig           OBJECT IDENTIFIER ::=  { envMgtSystem 8 }
emsOutputRelayConfig            OBJECT IDENTIFIER ::=  { envMgtSystem 9 }
emsOutletConfig                 OBJECT IDENTIFIER ::=  { envMgtSystem 10 }
emsSensorConfig                 OBJECT IDENTIFIER ::=  { envMgtSystem 11 }

emsStatus                       OBJECT IDENTIFIER ::=  { envMgtSystem 12 }
emsProbeStatus                  OBJECT IDENTIFIER ::=  { envMgtSystem 13 }
emsInputContactStatus           OBJECT IDENTIFIER ::=  { envMgtSystem 14 }
emsOutputRelayStatus            OBJECT IDENTIFIER ::=  { envMgtSystem 15 }
emsOutletStatus                 OBJECT IDENTIFIER ::=  { envMgtSystem 16 }
emsAlarmDeviceStatus            OBJECT IDENTIFIER ::=  { envMgtSystem 17 }
emsSensorStatus                 OBJECT IDENTIFIER ::=  { envMgtSystem 18 }
emsInputStateSensorConfig         OBJECT IDENTIFIER ::=  { envMgtSystem 19 }
emsInputStateSensorStatus         OBJECT IDENTIFIER ::=  { envMgtSystem 20 }

memModules                      OBJECT IDENTIFIER ::=  { modEnvMgr 1 }
memSensors                      OBJECT IDENTIFIER ::=  { modEnvMgr 2 }
memInputs                       OBJECT IDENTIFIER ::=  { modEnvMgr 3 }
memOutputs                      OBJECT IDENTIFIER ::=  { modEnvMgr 4 }
memOutlets                      OBJECT IDENTIFIER ::=  { modEnvMgr 5 }
memBeacons                      OBJECT IDENTIFIER ::=  { modEnvMgr 6 }
memInputStateSensors              OBJECT IDENTIFIER ::=  { modEnvMgr 7 }

wirelessSensorStatus            OBJECT IDENTIFIER ::=  { envWireless 1 }
wirelessSensorPodStatus         OBJECT IDENTIFIER ::=  { envWireless 2 }
wirelessSensorConfig            OBJECT IDENTIFIER ::=  { envWireless 3 }
wirelessSensorPodConfig         OBJECT IDENTIFIER ::=  { envWireless 4 }

nlIdent                         OBJECT IDENTIFIER ::=  { netlock 1 }
nlStatus                        OBJECT IDENTIFIER ::=  { netlock 2 }

airFM                           OBJECT IDENTIFIER ::=  { airConditioners 1 }
airFMIdent                      OBJECT IDENTIFIER ::=  { airFM 1 }
airFMStatus                     OBJECT IDENTIFIER ::=  { airFM 2 }
airFMGroup                      OBJECT IDENTIFIER ::=  { airFM 3 }
airFMSystem                     OBJECT IDENTIFIER ::=  { airFM 4 }
airFMModule                     OBJECT IDENTIFIER ::=  { airFM 5 }
airFMAlarms                     OBJECT IDENTIFIER ::=  { airFM 6 }

airFMGroupSysRoles              OBJECT IDENTIFIER ::=  { airFMGroup 4 }
airFMGroupCfg                   OBJECT IDENTIFIER ::=  { airFMGroup 5 }
airFMGroupLoadShare             OBJECT IDENTIFIER ::=  { airFMGroup 6 }
airFMGroupFailover              OBJECT IDENTIFIER ::=  { airFMGroup 7 }

airFMGroupFailoverSys           OBJECT IDENTIFIER ::=  { airFMGroupFailover 1 }
airFMGroupFailoverMod           OBJECT IDENTIFIER ::=  { airFMGroupFailover 2 }

airFMSysStatus                  OBJECT IDENTIFIER ::=  { airFMSystem 1 }
airFMSysDemands                 OBJECT IDENTIFIER ::=  { airFMSystem 2 }
airFMSysSetup                   OBJECT IDENTIFIER ::=  { airFMSystem 3 }
airFMSysConfig                  OBJECT IDENTIFIER ::=  { airFMSystem 4 }
airFMSysCooling                 OBJECT IDENTIFIER ::=  { airFMSystem 5 }
airFMSysHumidify                OBJECT IDENTIFIER ::=  { airFMSystem 6 }
airFMSysDehumidify              OBJECT IDENTIFIER ::=  { airFMSystem 7 }
airFMSysReheat                  OBJECT IDENTIFIER ::=  { airFMSystem 8 }
airFMSysThresholds              OBJECT IDENTIFIER ::=  { airFMSystem 9 }
airFMSysInputs                  OBJECT IDENTIFIER ::=  { airFMSystem 10 }
airFMSysOutputs                 OBJECT IDENTIFIER ::=  { airFMSystem 11 }
airFMSysAlarmMap                OBJECT IDENTIFIER ::=  { airFMSystem 12 }

airFMSysAlarmMapSys             OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 1 }
airFMSysAlarmMapMainMod         OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 2 }
airFMSysAlarmMapExpMod1         OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 3 }
airFMSysAlarmMapExpMod2         OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 4 }
airFMSysAlarmMapInput           OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 5 }
airFMSysAlarmMapOutput          OBJECT IDENTIFIER ::=  { airFMSysAlarmMap 6 }

airFMModIdent                   OBJECT IDENTIFIER ::=  { airFMModule 1 }
airFMModStatus                  OBJECT IDENTIFIER ::=  { airFMModule 2 }
airFMModProperties              OBJECT IDENTIFIER ::=  { airFMModule 3 }
airFMModCooling                 OBJECT IDENTIFIER ::=  { airFMModule 4 }
airFMModHumidity                OBJECT IDENTIFIER ::=  { airFMModule 5 }
airFMModBlower1                 OBJECT IDENTIFIER ::=  { airFMModule 6 }
airFMModBlower2                 OBJECT IDENTIFIER ::=  { airFMModule 7 }
airFMModRunHours                OBJECT IDENTIFIER ::=  { airFMModule 8 }
airFMModServIntervals           OBJECT IDENTIFIER ::=  { airFMModule 9 }
airFMModServIntResets           OBJECT IDENTIFIER ::=  { airFMModule 10 }


airPA                           OBJECT IDENTIFIER ::=  { airConditioners 2 }
airPAIdent                      OBJECT IDENTIFIER ::=  { airPA 1 }
airPAStatus                     OBJECT IDENTIFIER ::=  { airPA 2 }

airIR                           OBJECT IDENTIFIER ::=  { airConditioners 3 }
airIRAlarms                     OBJECT IDENTIFIER ::=  { airIR 1 }
airIRRC                         OBJECT IDENTIFIER ::=  { airIR 2 }
airIRRP                         OBJECT IDENTIFIER ::=  { airIR 3 }
airIRSC                         OBJECT IDENTIFIER ::=  { airIR 4 }

airIRRCGroup                    OBJECT IDENTIFIER ::=  { airIRRC 1 }
airIRRCUnit                     OBJECT IDENTIFIER ::=  { airIRRC 2 }

airIRRCGroupStatus              OBJECT IDENTIFIER ::=  { airIRRCGroup 1 }
airIRRCGroupSetpoints           OBJECT IDENTIFIER ::=  { airIRRCGroup 2 }
airIRRCGroupConfig              OBJECT IDENTIFIER ::=  { airIRRCGroup 3 }

airIRRCUnitIdent                OBJECT IDENTIFIER ::=  { airIRRCUnit 1 }
airIRRCUnitStatus               OBJECT IDENTIFIER ::=  { airIRRCUnit 2 }
airIRRCUnitRunHours             OBJECT IDENTIFIER ::=  { airIRRCUnit 3 }
airIRRCUnitServiceIntervals     OBJECT IDENTIFIER ::=  { airIRRCUnit 4 }
airIRRCUnitThresholds           OBJECT IDENTIFIER ::=  { airIRRCUnit 5 }
airIRRCUnitConfig               OBJECT IDENTIFIER ::=  { airIRRCUnit 6 }

-- Series 100 DX Air Conditioners
airIRRP100                      OBJECT IDENTIFIER ::=  { airIRRP 1 }
-- Series 500 CW Air Conditioners
airIRRP500                      OBJECT IDENTIFIER ::=  { airIRRP 2 }

airIRRP100Group                 OBJECT IDENTIFIER ::=  { airIRRP100 1 }
airIRRP100Unit                  OBJECT IDENTIFIER ::=  { airIRRP100 2 }

airIRRP100GroupStatus           OBJECT IDENTIFIER ::=  { airIRRP100Group 1 }
airIRRP100GroupSetpoints        OBJECT IDENTIFIER ::=  { airIRRP100Group 2 }
airIRRP100GroupConfig           OBJECT IDENTIFIER ::=  { airIRRP100Group 3 }

airIRRP100UnitIdent             OBJECT IDENTIFIER ::=  { airIRRP100Unit 1 }
airIRRP100UnitStatus            OBJECT IDENTIFIER ::=  { airIRRP100Unit 2 }
airIRRP100UnitRunHours          OBJECT IDENTIFIER ::=  { airIRRP100Unit 3 }
airIRRP100UnitServiceIntervals  OBJECT IDENTIFIER ::=  { airIRRP100Unit 4 }
airIRRP100UnitThresholds        OBJECT IDENTIFIER ::=  { airIRRP100Unit 5 }
airIRRP100UnitConfig            OBJECT IDENTIFIER ::=  { airIRRP100Unit 6 }

airIRRP500Group                 OBJECT IDENTIFIER ::=  { airIRRP500 1 }
airIRRP500Unit                  OBJECT IDENTIFIER ::=  { airIRRP500 2 }

airIRRP500GroupStatus           OBJECT IDENTIFIER ::=  { airIRRP500Group 1 }
airIRRP500GroupSetpoints        OBJECT IDENTIFIER ::=  { airIRRP500Group 2 }
airIRRP500GroupConfig           OBJECT IDENTIFIER ::=  { airIRRP500Group 3 }

airIRRP500UnitIdent             OBJECT IDENTIFIER ::=  { airIRRP500Unit 1 }
airIRRP500UnitStatus            OBJECT IDENTIFIER ::=  { airIRRP500Unit 2 }
airIRRP500UnitRunHours          OBJECT IDENTIFIER ::=  { airIRRP500Unit 3 }
airIRRP500UnitServiceIntervals  OBJECT IDENTIFIER ::=  { airIRRP500Unit 4 }
airIRRP500UnitThresholds        OBJECT IDENTIFIER ::=  { airIRRP500Unit 5 }
airIRRP500UnitConfig            OBJECT IDENTIFIER ::=  { airIRRP500Unit 6 }


airIRSCUnit                     OBJECT IDENTIFIER ::=  { airIRSC 1 }

airIRSCUnitIdent                OBJECT IDENTIFIER ::=  { airIRSCUnit 1 }
airIRSCUnitStatus               OBJECT IDENTIFIER ::=  { airIRSCUnit 2 }
airIRSCUnitRunHours             OBJECT IDENTIFIER ::=  { airIRSCUnit 3 }
airIRSCUnitServiceIntervals     OBJECT IDENTIFIER ::=  { airIRSCUnit 4 }
airIRSCUnitThresholds           OBJECT IDENTIFIER ::=  { airIRSCUnit 5 }
airIRSCUnitSetpoints            OBJECT IDENTIFIER ::=  { airIRSCUnit 6 }
airIRSCUnitConfig               OBJECT IDENTIFIER ::=  { airIRSCUnit 7 }

airIRSCGroup                    OBJECT IDENTIFIER ::=  { airIRSC 2 }

airIRSCGroupStatus              OBJECT IDENTIFIER ::=  { airIRSCGroup 1 }
airIRSCGroupSetpoints           OBJECT IDENTIFIER ::=  { airIRSCGroup 2 }
airIRSCGroupConfig              OBJECT IDENTIFIER ::=  { airIRSCGroup 3 }


airIRGen2                       OBJECT IDENTIFIER ::=  { airConditioners 4 }

airIRG2Ident                    OBJECT IDENTIFIER ::=  { airIRGen2 1 }
airIRG2Group                    OBJECT IDENTIFIER ::=  { airIRGen2 2 }
airIRG2Alarms                   OBJECT IDENTIFIER ::=  { airIRGen2 3 }
airIRG2RC                       OBJECT IDENTIFIER ::=  { airIRGen2 4 }
airIRG2RD                       OBJECT IDENTIFIER ::=  { airIRGen2 5 }
airIRG2SC                       OBJECT IDENTIFIER ::=  { airIRGen2 6 }
airIRG2RA                       OBJECT IDENTIFIER ::=  { airIRGen2 7 }

-- airIR Gen2 Group data
airIRG2GroupStatus              OBJECT IDENTIFIER ::=  { airIRG2Group 1 }
airIRG2GroupSetpoints           OBJECT IDENTIFIER ::=  { airIRG2Group 2 }
airIRG2GroupConfig              OBJECT IDENTIFIER ::=  { airIRG2Group 3 }

-- airIR Gen2 RD Unit data
airIRG2RDType1                  OBJECT IDENTIFIER ::=  { airIRG2RD 1 }
airIRG2RDType2                  OBJECT IDENTIFIER ::=  { airIRG2RD 2 }
airIRG2RDT2Status               OBJECT IDENTIFIER ::=  { airIRG2RDType2 1 }
airIRG2RDT2RunHours             OBJECT IDENTIFIER ::=  { airIRG2RDType2 2 }
airIRG2RDT2ServiceIntervals     OBJECT IDENTIFIER ::=  { airIRG2RDType2 3 }
airIRG2RDT2Thresholds           OBJECT IDENTIFIER ::=  { airIRG2RDType2 4 }
airIRG2RDT2Setpoints            OBJECT IDENTIFIER ::=  { airIRG2RDType2 5 }
airIRG2RDT2Config               OBJECT IDENTIFIER ::=  { airIRG2RDType2 6 }

airInRoom                       OBJECT IDENTIFIER ::=  { airConditioners   5 }

airIRmIdent                     OBJECT IDENTIFIER ::=  { airInRoom         1 }
airIRmAlarms                    OBJECT IDENTIFIER ::=  { airInRoom         2 }
airIRmPerimeter                 OBJECT IDENTIFIER ::=  { airInRoom         3 }

airIRmPmCommon1                  OBJECT IDENTIFIER ::=  { airIRmPerimeter  2 }
airIRmPmCommon2                  OBJECT IDENTIFIER ::=  { airIRmPerimeter  3 }
airIRmPmCommon3                  OBJECT IDENTIFIER ::=  { airIRmPerimeter  4 }
airIRmPmCommon4                  OBJECT IDENTIFIER ::=  { airIRmPerimeter  5 }
airIRmPmCommon5                  OBJECT IDENTIFIER ::=  { airIRmPerimeter  6 }
airIRmPmCompressor1              OBJECT IDENTIFIER ::=  { airIRmPerimeter  7 }
airIRmPmCompressor2              OBJECT IDENTIFIER ::=  { airIRmPerimeter  8 }
airIRmPmSuctionValve1            OBJECT IDENTIFIER ::=  { airIRmPerimeter  9 }
airIRmPmSuctionValve2            OBJECT IDENTIFIER ::=  { airIRmPerimeter 10 }
airIRmPmEheating1                OBJECT IDENTIFIER ::=  { airIRmPerimeter 11 }
airIRmPmEheating2                OBJECT IDENTIFIER ::=  { airIRmPerimeter 12 }
airIRmPmEheating3                OBJECT IDENTIFIER ::=  { airIRmPerimeter 13 }
airIRmPmEheating4                OBJECT IDENTIFIER ::=  { airIRmPerimeter 14 }
airIRmPmGECWvalve                OBJECT IDENTIFIER ::=  { airIRmPerimeter 15 }
airIRmPmGvalve                   OBJECT IDENTIFIER ::=  { airIRmPerimeter 16 }
airIRmPmDrycooler1               OBJECT IDENTIFIER ::=  { airIRmPerimeter 17 }
airIRmPmDrycooler2               OBJECT IDENTIFIER ::=  { airIRmPerimeter 18 }
airIRmPmDrycooler3               OBJECT IDENTIFIER ::=  { airIRmPerimeter 19 }
airIRmPmDrycooler4               OBJECT IDENTIFIER ::=  { airIRmPerimeter 20 }
airIRmPmPump1                    OBJECT IDENTIFIER ::=  { airIRmPerimeter 21 }
airIRmPmPump2                    OBJECT IDENTIFIER ::=  { airIRmPerimeter 22 }
airIRmPmPump3                    OBJECT IDENTIFIER ::=  { airIRmPerimeter 23 }
airIRmPmPump4                    OBJECT IDENTIFIER ::=  { airIRmPerimeter 24 }
airIRmPmHotgasHeating            OBJECT IDENTIFIER ::=  { airIRmPerimeter 25 }
airIRmPmPWWHeating               OBJECT IDENTIFIER ::=  { airIRmPerimeter 26 }
airIRmPmHumidifier1              OBJECT IDENTIFIER ::=  { airIRmPerimeter 27 }
airIRmPmHumidifier2              OBJECT IDENTIFIER ::=  { airIRmPerimeter 28 }
-- Skipping 29 and 30.
airIRmPmDehumidification         OBJECT IDENTIFIER ::=  { airIRmPerimeter 31 }
airIRmPmFan1                     OBJECT IDENTIFIER ::=  { airIRmPerimeter 32 }
airIRmPmFan2                     OBJECT IDENTIFIER ::=  { airIRmPerimeter 33 }
airIRmPmFan3                     OBJECT IDENTIFIER ::=  { airIRmPerimeter 34 }
airIRmPmLouver1                  OBJECT IDENTIFIER ::=  { airIRmPerimeter 35 }
airIRmPmLouver2                  OBJECT IDENTIFIER ::=  { airIRmPerimeter 36 }
airIRmPmLouver3                  OBJECT IDENTIFIER ::=  { airIRmPerimeter 37 }
airIRmPmAuxAlarm1                OBJECT IDENTIFIER ::=  { airIRmPerimeter 38 }
airIRmPmAuxAlarm2                OBJECT IDENTIFIER ::=  { airIRmPerimeter 39 }
airIRmPmAuxAlarm3                OBJECT IDENTIFIER ::=  { airIRmPerimeter 40 }
airIRmPmAuxAlarm4                OBJECT IDENTIFIER ::=  { airIRmPerimeter 41 }
airIRmPmAuxAlarm5                OBJECT IDENTIFIER ::=  { airIRmPerimeter 42 }
airIRmPmAlarmBits                OBJECT IDENTIFIER ::=  { airIRmPerimeter 43 }
airIRmPmMyZone                   OBJECT IDENTIFIER ::=  { airIRmPerimeter 44 }
airIRmPmGlobalZoneData           OBJECT IDENTIFIER ::=  { airIRmPerimeter 45 }

airIRGen3                        OBJECT IDENTIFIER ::=  { airConditioners 6 }

airIRG3Ident                     OBJECT IDENTIFIER ::=  { airIRGen3 1 }
airIRG3Group                     OBJECT IDENTIFIER ::=  { airIRGen3 2 }
airIRG3Alarms                    OBJECT IDENTIFIER ::=  { airIRGen3 3 }
airIRG3RDU                         OBJECT IDENTIFIER ::=  { airIRGen3 4 }
airIRG3CM                           OBJECT IDENTIFIER ::=  { airIRGen3 5 }


rARUIdent                       OBJECT IDENTIFIER ::=  { rARU 1 }
rARUConfig                      OBJECT IDENTIFIER ::=  { rARU 2 }
rARUStatus                      OBJECT IDENTIFIER ::=  { rARU 3 }
rARUFanStatus                   OBJECT IDENTIFIER ::=  { rARU 4 }
rARUPower                       OBJECT IDENTIFIER ::=  { rARU 5 }
rARUSensors                     OBJECT IDENTIFIER ::=  { rARU 6 }


accessPX                        OBJECT IDENTIFIER ::=  { accessControl 1 }

accessPXIdent                   OBJECT IDENTIFIER ::=  { accessPX 1 }
accessPXConfig                  OBJECT IDENTIFIER ::=  { accessPX 2 }
accessPXConfigFront             OBJECT IDENTIFIER ::=  { accessPX 3 }
accessPXStatusFront             OBJECT IDENTIFIER ::=  { accessPX 4 }
accessPXConfigRear              OBJECT IDENTIFIER ::=  { accessPX 5 }
accessPXStatusRear              OBJECT IDENTIFIER ::=  { accessPX 6 }
accessPXConfigBeacon            OBJECT IDENTIFIER ::=  { accessPX 7 }
accessPXStatusBeacon            OBJECT IDENTIFIER ::=  { accessPX 8 }

apcLocalDisplayIdent            OBJECT IDENTIFIER ::=  { apcLocalDisplay 1 }
apcLocalDisplayConfig           OBJECT IDENTIFIER ::=  { apcLocalDisplay 2 }

accPX                           OBJECT IDENTIFIER ::=  { accControl 1 }

isxModularPduIdent              OBJECT IDENTIFIER ::=  { isxModularPdu 1 }
isxModularPduDevice             OBJECT IDENTIFIER ::=  { isxModularPdu 2 }
isxModularPduStatus             OBJECT IDENTIFIER ::=  { isxModularPdu 3 }

symmetraPx48kVA                 OBJECT IDENTIFIER ::=  { symmetraPX 1 }
symmetraPx160kVA                OBJECT IDENTIFIER ::=  { symmetraPX 2 }
symmetraPx250kVA                OBJECT IDENTIFIER ::=  { symmetraPX 3 }
symmetraPx500kVA                OBJECT IDENTIFIER ::=  { symmetraPX 4 }
symmetraPx100kVA                OBJECT IDENTIFIER ::=  { symmetraPX 5 }
symmetraPxDisplay               OBJECT IDENTIFIER ::=  { symmetraPX 6 }

isx24ModuleHalfRackPdu          OBJECT IDENTIFIER ::=  { isxModDistribution  1 }
isx6ModuleRackPdu               OBJECT IDENTIFIER ::=  { isxModDistribution  2 }

isxModularDistInfo              OBJECT IDENTIFIER ::=  { isxModularDistribution 1 }
isxModularDistModules           OBJECT IDENTIFIER ::=  { isxModularDistribution 2 }
isxModularDistSubFeeds          OBJECT IDENTIFIER ::=  { isxModularDistribution 3 }
isxModularDistTotals            OBJECT IDENTIFIER ::=  { isxModularDistribution 4 }

isxModularDistSysVoltage        OBJECT IDENTIFIER ::=  { isxModularDistTotals 1 }
isxModularDistSysCurrent        OBJECT IDENTIFIER ::=  { isxModularDistTotals 2 }
isxModularDistSysPower          OBJECT IDENTIFIER ::=  { isxModularDistTotals 3 }

isxcBasic                       OBJECT IDENTIFIER ::=  { isxServers 1 }
isxcStandard                    OBJECT IDENTIFIER ::=  { isxServers 2 }
isxcEnterprise                  OBJECT IDENTIFIER ::=  { isxServers 3 }
isxcVirtual                     OBJECT IDENTIFIER ::=  { isxServers 4 }

uioSensor                      OBJECT IDENTIFIER ::=  { universalInputOutput 1 }
uioInputContact                OBJECT IDENTIFIER ::=  { universalInputOutput 2 }
uioOutputRelay                 OBJECT IDENTIFIER ::=  { universalInputOutput 3 }


-- object types

-- the products group
-- the experimental group



-- the apcmgmt group
-- the mconfig group

mconfigNumTrapReceivers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of managers to send traps to."
   ::= { mconfig 1 }

mconfigTrapReceiverTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MconfigTrapReceiverEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of managers to send traps to.  The number of
       entries is given by the value of mconfigNumTrapReceivers."
   ::= { mconfig 2 }

mconfigTrapReceiverEntry OBJECT-TYPE
   SYNTAX MconfigTrapReceiverEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The managers to send traps to."
   INDEX  { trapIndex}
   ::= { mconfigTrapReceiverTable 1 }

MconfigTrapReceiverEntry ::=
   SEQUENCE {
      trapIndex
         INTEGER,
      receiverAddr
         IpAddress,
      communityString
          DisplayString,
      severity
         INTEGER,
      acceptThisReceiver
         INTEGER,
      receiveTrapType
         INTEGER
   }

trapIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to a trap receiver entry."
   ::= { mconfigTrapReceiverEntry 1 }

receiverAddr OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The IP address of the manager to send a trap to."
   ::= { mconfigTrapReceiverEntry 2 }

communityString OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The community name to use in the trap when
       sent to the manager."
   ::= { mconfigTrapReceiverEntry 3 }

severity OBJECT-TYPE
   SYNTAX INTEGER {
      information(1),
      warning(2),
      severe(3)
   }
   ACCESS read-only
   STATUS obsolete
   DESCRIPTION
      "The severity threshold of traps to send to the manager.
       traps are labeled in severity as informational(1), warning(2),
       severe(3).  Only traps of equal or greater severity than
       this value are sent to the manager."
   ::= { mconfigTrapReceiverEntry 4 }

acceptThisReceiver OBJECT-TYPE
   SYNTAX INTEGER   {
      yes (1),
      no  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The value of yes(1) indicates that trap generation for this manager is enabled.
       The value of no(2) indicates that trap generation for this manager is disabled"
   ::= { mconfigTrapReceiverEntry 5 }


receiveTrapType OBJECT-TYPE
   SYNTAX INTEGER   {
      powernet (1),
      ietf     (2),
      both     (3)
   }
   ACCESS read-only
   STATUS obsolete
   DESCRIPTION
      "Type of trap."
   ::= { mconfigTrapReceiverEntry 6 }

mconfigBOOTPEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The value of yes(1) indicates the PowerNet Adapter is configured to
       obtain its IP configuration parameters from a BOOTP server.

       The value of no(2) indicates adapter will assume IP configuration parameters
       values saved in adapter's eeprom, which was originally configured at local
       console."
   ::= { mconfig 3 }

mconfigTFTPServerIP OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The IP address of TFTP server. If mconfigBOOTPEnabled is yes(1), then this IP address
       is provided by BOOTP server and not allowed to be modified; otherwise, this IP address
       can be modified.

       Before using TFTP to load new code image, the image file should be placed in proper
       directory of the specified TFTP server. This OID is only supported by APC Network
       Management Cards."
   ::= { mconfig 4 }

newCodeAuthentViaTFTP OBJECT-TYPE
   SYNTAX INTEGER {
      unknown                (1),
      validNewAgentCodeImage (2),
      sameAgentCodeImage     (3),
      invalidAgentCodeImage  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Once mcontrolRestartAgent is set to loadAndExecuteNewAgent (3), PowerNet adapter will
       start to load the remote image file, for authentication only, instead of saving the code
       into flash memory. Only if a validNewAgentCodeImage (1) is found will the agent reboot
       the PowerNet adapter and invoke the loader to load and save new code into the flash memory.
       Otherwise, the current agent code will continue to run.

       This OID shows the result of the above authentication process.
                validNewAgentCodeImage (1) means the code image on TFTP server
                is a valid APC agent code and is different version from the current agent.
                Once agent identifies this, loader will start to update flash memory with
                the new agent code.

                sameAgentCodeImage  (2)  means the code image on TFTP server is exactly the
                same as the currently running agent. Currently running agent will not invoke
                loader to load the same again.

                invalidAgentCodeImage  (3) means the code image on TFTP server is NOT a valid
                APC agent code. Thus, current agent will not load it into the flash memory.

       The value of this OID will be associated with TRAP codeImageAuthentDone.
       This OID is only supported by APC Network Management Cards."

   ::= { mconfig 5 }

mconfigClockDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The current date in the mm/dd/yyyy format. Example: 01/01/2000."
   ::= { mconfigClock 1 }

mconfigClockTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The current time in the hh:mm:ss am/pm format. Example: 12:00:00 am."
   ::= { mconfigClock 2 }

mcontrolRestartAgent OBJECT-TYPE
   SYNTAX INTEGER   {
      restartCurrentAgent    (1),
      continueCurrentAgent   (2),
      loadAndExecuteNewAgent (3),
      restartWithoutAgent    (4),
      resetNetworkAndRestart (5),
      resetNetworkLeaveModeAndRestart (6)
  }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to restartCurrentAgent (1) will restart the same SNMP
       agent code currently saved in flash memory. Setting this OID to
       loadAndExecuteNewAgent (3) will enable adapter to load a new agent code
       into the flash memory and start to execute this new agent code.
       Bootp/tftp is the default protocol. loadAndExecuteNewAgent is only
       supported by APC Network Management Cards. Setting
       this OID to restartWithoutAgent (4) will restart the system and not
       start the agent. The subsequent time the system restarts the agent will
       also automatically restart. Setting this OID to
       resetNetworkAndRestart (5) will set the Boot Mode, IP Address, Subnet
       Mask, and Default Gateway to defaults, expire any existing DHCP lease
       and then restart the system. Setting this OID to
       resetNetworkLeaveModeAndRestart (6) will leave the Boot Mode at the
       current setting, set the IP Address, Subnet Mask, and Default Gateway to
       defaults, expire any existing DHCP lease and then restart the system."

   ::= { mcontrol 1 }

-- The mtrapargs group
-- These OIDs allows APC traps to be sent with additional arguments
-- which may not be defined in the APC MIB.

mtrapargsInteger OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an integer argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 1 }

mtrapargsIpAddress OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an IP address argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0.0.0.0."
   ::= { mtrapargs 2 }

mtrapargsString OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 3 }

mtrapargsGauge OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a Gauge argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 4 }

mtrapargsTimeTicks OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a TimeTicks argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 5 }

mtrapargsInteger02 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an integer argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 6 }

mtrapargsInteger03 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an integer argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 7 }

mtrapargsIpAddress02 OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an IP address argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0.0.0.0."
   ::= { mtrapargs 8 }

mtrapargsIpAddress03 OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an IP address argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0.0.0.0."
   ::= { mtrapargs 9 }

mtrapargsString02 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 10 }

mtrapargsString03 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 11 }

mtrapargsGauge02 OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a Gauge argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 12 }

mtrapargsGauge03 OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a Gauge argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 13 }

mtrapargsTimeTicks02 OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a TimeTicks argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 14 }

mtrapargsTimeTicks03 OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with a TimeTicks argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 15 }

mtrapargsString04 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 16 }

mtrapargsString05 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 17 }

mtrapargsInteger04 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an integer argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 18 }

mtrapargsInteger05 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an integer argument
       that my not be defined in the APC MIB.

       A get of this OID will return 0."
   ::= { mtrapargs 19 }

mtrapargsString06 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 20 }

mtrapargsString07 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 21 }

mtrapargsString08 OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 22 }

mtrapargsOctetString OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 23 }

mtrapargsOctetString02 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 24 }

mtrapargsOctetString03 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 25 }

mtrapargsOctetString04 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 26 }

mtrapargsOctetString05 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 27 }

mtrapargsOctetString06 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 28 }

mtrapargsOctetString07 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 29 }

mtrapargsOctetString08 OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID allows APC traps to be sent with an octet string argument
       that my not be defined in the APC MIB.

       A get of this OID will return a NULL string."
   ::= { mtrapargs 30 }

-- the mfiletransfer group
-- the mfiletransferStatus group
mfiletransferStatusLastTransferResult OBJECT-TYPE
   SYNTAX INTEGER {
      lastFileTransferResultSuccessful                 (1),
      lastFileTransferResultNotAvailable               (2),
      lastFileTransferResultFailureUnknown             (3),
      lastFileTransferResultFailureServerInaccessible  (4),
      lastFileTransferResultFailureServerAccessDenied  (5),
      lastFileTransferResultFailureFileNotFound        (6),
      lastFileTransferResultFailureFileTypeUnknown     (7),
      lastFileTransferResultFailureFileCorrupted       (8)
   }
   ACCESS read-only
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      Once mfiletransferControlInitiateFileTransfer is set to a value other than doNotInitiateFileTransfer
      a file transfer of mfiletransferConfigSettingsFilename will be attempted from either a TFTP or FTP
      server.

      This OID shows the last attempted file transfer result.
        lastFileTransferResultSuccessful (1) means the file transfer was successful.
        lastFileTransferResultNotAvailable (2) means that there have been no previous file transfers.
        lastFileTransferResultFailureUnknown (3) means that the last file transfer failed for an unknown reason.
        lastFileTransferResultFailureServerInaccessible (4) means that the TFTP or FTP server could not be found on the network.
        lastFileTransferResultFailureServerAccessDenied (5) means that the TFTP or FTP server denied access.
        lastFileTransferResultFailureFileNotFound (6) means that the file could not be located.
        lastFileTransferResultFailureFileTypeUnknown (7) means the file was examined, but the contents were unknown.
        lastFileTransferResultFailureFileCorrupt (8) means the transferred file was corrupt."

   ::= { mfiletransferStatus 1 }

-- the mfiletransferConfig group
-- the mfiletransferConfigSettings group

mfiletransferConfigSettingsFilename  OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      The path and name of the file to transfer using the mfiletransferControlInitiateFileTransfer OID.
      If the file to transfer exists in the default server directory then the path may be omitted."

   ::= { mfiletransferConfigSettings 1 }

-- the mfiletransferConfigTFTP group

mfiletransferConfigTFTPServerAddress     OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      The IP Address in dotted decimal notation of the TFTP server involved in the file transfer."

   ::= { mfiletransferConfigTFTP 1 }

-- the mfiletransferConfigFTP group

mfiletransferConfigFTPServerAddress  OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      The IP Address in dotted decimal notation of the FTP server involved in the file transfer."

   ::= { mfiletransferConfigFTP 1 }

mfiletransferConfigFTPServerUser     OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      The user identification for logging into the FTP server specified with mfiletransferConfigFTPServerAddress."

   ::= { mfiletransferConfigFTP 2 }

mfiletransferConfigFTPServerPassword     OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      The password for logging into the FTP server specified with mfiletransferConfigFTPServerAddress."

   ::= { mfiletransferConfigFTP 3 }

-- the mfiletransferControl group

mfiletransferControlInitiateFileTransfer OBJECT-TYPE
   SYNTAX INTEGER   {
      doNotInitiateFileTransfer             (1),
      initiateFileTransferDownloadViaTFTP   (2),
      initiateFileTransferDownloadViaFTP    (3)
   }
   ACCESS read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated.

      Setting this OID to doNotInitiateFileTransfer (1) will do nothing.

      Setting this OID to initiateFileTransferDownloadViaTFTP (2) will attempt to transfer the file named in
      mfiletransferConfigSettingsFilename from the TFTP Server identified in mfiletransferConfigTFTPAddress.

      Setting this OID to initiateFileTransferDownloadViaFTP (3) will attempt to transfer the file named in
      mfiletransferConfigSettingsFilename from the FTP Server identified in mfiletransferConfigFTPAddress
      using mfiletransferConfigFTPUser and mfiletransferConfigFTPPassword for the FTP Server login process."

   ::= { mfiletransferControl 1 }
-- the battManIdent group

battManIdentProductName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the battery manager."
   ::= { battManIdent 1 }

battManIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager network interface hardware revision.
       This value is set at the factory."
   ::= { battManIdent 2 }

battManIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager network interface firmware revision.
       This value is set at the factory and can change with firmware update."
   ::= {  battManIdent 3 }

battManIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date the battery manager was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { battManIdent 4 }

battManIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager model number character string.
       This value is set at the factory."
   ::= { battManIdent 5 }

battManIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager serial number character string.
       This value is set at the factory."
   ::= { battManIdent 6 }

-- the battManCalib group
-- system calibration

battManOhmicValueCorrectionFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The system ohmic value correction factor in percent."
   ::= { battManSystemCalib 1 }

-- unit calibration

battManUnitCalibTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManUnitCalibTable."
   ::= { battManUnitCalib 1 }

battManUnitCalibTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManUnitCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting calibration information from each unit in the system."
   ::= { battManUnitCalib 2 }

battManUnitCalibEntry OBJECT-TYPE
   SYNTAX BattManUnitCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The unit to get data from."
   INDEX { battManUnitCalibIndex }
   ::= { battManUnitCalibTable 1 }

BattManUnitCalibEntry ::=
   SEQUENCE {
       battManUnitCalibIndex           INTEGER,
       battManUnitSerialNumber         DisplayString,
       battManBatteryVoltageZeroCalib  INTEGER,
       battManBatteryVoltageSpanCalib  INTEGER
   }

battManUnitCalibIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of unit calibration entries in the table."
   ::= { battManUnitCalibEntry 1 }

battManUnitSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The serial number of the unit."
   ::= { battManUnitCalibEntry 2 }

battManBatteryVoltageZeroCalib OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The unit battery voltage zero calibration in millivolts."
   ::= { battManUnitCalibEntry 3 }

battManBatteryVoltageSpanCalib OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The unit battery voltage span calibration in hundredths of percent."
   ::= { battManUnitCalibEntry 4 }

-- string calibration table

battManStringCalibTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManStringCalibTable."
   ::= { battManStringCalib 1 }

battManStringCalibTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManStringCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting calibration information from each string in the system."
   ::= { battManStringCalib 2 }

battManStringCalibEntry OBJECT-TYPE
   SYNTAX BattManStringCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManStringCalibIndex }
   ::= { battManStringCalibTable 1 }

BattManStringCalibEntry ::=
   SEQUENCE {
       battManStringCalibIndex             INTEGER,
       battManDCCurrentZeroCalib           INTEGER,
       battManACCurrentZeroCalib           INTEGER,
       battManProbeRange                   INTEGER
   }

battManStringCalibIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of string calibration entries in the table."
   ::= { battManStringCalibEntry 1 }

battManDCCurrentZeroCalib OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The string DC current zero calibration in tenths of amps."
   ::= { battManStringCalibEntry 2 }

battManACCurrentZeroCalib OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The string AC current zero calibration in tenths of amps."
   ::= { battManStringCalibEntry 3 }

battManProbeRange OBJECT-TYPE
   SYNTAX INTEGER {
       amps1000    (1),
       amps500     (2),
       amps100     (3),
       amps200     (4),
       amps2000    (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The string probe range in amps."
   ::= { battManStringCalibEntry 4 }

--string 1 battery calibration table

battManString1BatteryCalibTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString1BatteryCalibTable."
   ::= { battManBatteryCalib 1 }

battManString1BatteryCalibTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1BatteryCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting calibration information from each battery in String 1."
   ::= { battManBatteryCalib 2 }

battManString1BatteryCalibEntry OBJECT-TYPE
   SYNTAX BattManString1BatteryCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString1BatteryCalibIndex }
   ::= { battManString1BatteryCalibTable 1 }

BattManString1BatteryCalibEntry ::=
   SEQUENCE {
       battManString1BatteryCalibIndex             INTEGER,
       battManString1BatteryInterTierOhmicValue    INTEGER
   }

battManString1BatteryCalibIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of battery calibration entries in the table."
   ::= { battManString1BatteryCalibEntry 1 }

battManString1BatteryInterTierOhmicValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The battery inter-tier ohmic value in ohms.  This corresponds to the ohmic
       value for the positive terminal of the battery."
   ::= { battManString1BatteryCalibEntry 2 }

--string 2 battery calibration table

battManString2BatteryCalibTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString2BatteryCalibTable."
   ::= { battManBatteryCalib 3 }

battManString2BatteryCalibTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2BatteryCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting calibration information from each battery in String 2."
   ::= { battManBatteryCalib 4 }

battManString2BatteryCalibEntry OBJECT-TYPE
   SYNTAX BattManString2BatteryCalibEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString2BatteryCalibIndex }
   ::= { battManString2BatteryCalibTable 1 }

BattManString2BatteryCalibEntry ::=
   SEQUENCE {
       battManString2BatteryCalibIndex             INTEGER,
       battManString2BatteryInterTierOhmicValue    INTEGER
   }

battManString2BatteryCalibIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of battery calibration entries in the table."
   ::= { battManString2BatteryCalibEntry 1 }

battManString2BatteryInterTierOhmicValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The battery inter-tier ohmic value in ohms."
   ::= { battManString2BatteryCalibEntry 2 }

-- the battManConfig group

battManConfigApplication OBJECT-TYPE
   SYNTAX INTEGER {
     silcon          (1),
     other           (2)
   }
   ACCESS read-write
   STATUS deprecated
   DESCRIPTION
      "This OID has been deprecated."
   ::= { battManConfig 1 }

battManConfigBatteryChemistry OBJECT-TYPE
   SYNTAX INTEGER {
     leadAcid        (1),
     nickel-Cadmium  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The battery chemistry of the monitored batteries:
       LeadAcid(1) Lead Acid or
       Nickel-Cadmium(2) Nickel-Cadmium."
   ::= { battManConfig 2 }

battManConfigBatteryAHCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amp hour capacity of the monitored batteries 5-4000 AH."
   ::= { battManConfig 3 }

battManConfigNumberofStrings OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of strings in the battery manager system."
   ::= { battManConfig 4 }

battManConfigBatteriesperString OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of batteries per string."
   ::= { battManConfig 5 }


battManConfigCellsperBattery OBJECT-TYPE
   SYNTAX INTEGER {
     oneCell         (1),
     twoCells        (2),
     fourCells       (4),
     sixCells        (6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cells per battery (1, 2, 4 or 6 for lead-acid, 1 or 2 for NiCd."
   ::= { battManConfig 6 }


battManConfigMinCellVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum battery cell voltage alarm limit in millivolts DC."
   ::= { battManConfig 7 }

battManConfigMaxCellVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum battery cell voltage alarm limit in millivolts DC."
   ::= { battManConfig 8 }

battManConfigMaxPilotTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum pilot battery temperature alarm limit in tenths of degrees Fahrenheit."
   ::= { battManConfig 9 }

battManConfigMaxPilotTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum pilot battery temperature alarm limit in tenths of degrees Celsius."
   ::= { battManConfig 10 }

battManConfigMaxAmbientTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum ambient temperature alarm limit in tenths of degrees Fahrenheit."
   ::= { battManConfig 11 }

battManConfigMaxAmbientTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum ambient temperature alarm limit in tenths of degrees Celsius."
   ::= { battManConfig 12 }

battManConfigMinAmbientTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The Minimum Ambient Temperature alarm limit in tenths of degrees Fahrenheit."
   ::= { battManConfig 13 }

battManConfigMinAmbientTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The Minimum Ambient Temperature alarm limit in tenths of degrees Celsius."
   ::= { battManConfig 14 }

battManConfigMaxRippleCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum ripple current alarm limit for the monitored battery
       strings in percent of AH capacity."
   ::= { battManConfig 15 }

battManConfigMaxCurrentAcceptanceDeviation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum current acceptance deviation alarm limit in percent."
   ::= { battManConfig 16 }

battManConfigMonitorWireLength OBJECT-TYPE
   SYNTAX INTEGER {
     fiftyFeetOrLess   (1),
     moreThanFiftyFeet (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The monitor wire length:
       fiftyFeetOrLess (1) indicates that the wire length is less than or equal to 50 feet.
       moreThanFiftyFeet (2) indicates that the wire length is greater than 50 feet."
   ::= { battManConfig 17 }

battManConfigDischargeVoltageAlarmLevel OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The discharge voltage alarm level in percent."
   ::= { battManConfig 18 }

battManConfigAutoAnnunciatorReset OBJECT-TYPE
   SYNTAX INTEGER {
     disabled  (1),
     enabled   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The annunciator output signal reset method:
       disabled(1) means the annunciator signal output will be reset when the reset button is pressed.
       enabled(2) means the annunciator will stop signaling when all alarm conditions clear."
   ::= { battManConfig 19 }

battManConfigSuspendCellVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This is used along with the number of cells per battery
       and the number of batteries per string to determine if
       a battery string has violated the low voltage limit. If
       so, the Battery Management System will enter suspend mode.
       Measured in millivolts DC"
   ::= { battManConfig 20 }

battManConfigOhmicTestWaitTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time in seconds after a discharge event before
       data will be collected for the ohmic value calculation."
   ::= { battManConfig 21 }

battManConfigNumberOfBoosts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of consecutive times the Battery Management
       System applies a charge to each battery during a boost
       cycle.  Batteries with a Rated Battery AH Capacity
       less than or equal to 120 AH will always have a value
       of one for Number of Boosts."
   ::= { battManConfig 22 }

-- the battManAlarm group

battManAlarmManagementController OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Management Controller Alarm is :
       normal(1) no alarm conditions identified
       alarm(2) an alarm condition exists."
   ::= { battManAlarm 1 }

battManAlarmBatteries  OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Batteries Alarm is :
       normal(1) no alarm conditions identified
       alarm(2) an alarm condition exists."
   ::= { battManAlarm 2 }

battManAlarmCharger OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Charger Alarm is :
       normal(1) no alarm conditions identified
       alarm(2) an alarm condition exists."
   ::= { battManAlarm 3 }

battManAlarmEnvironment OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Environment Alarm is :
       normal(1) no alarm conditions identified
       alarm(2) an alarm condition exists."
   ::= { battManAlarm 4 }

-- the battManSystemStatus group

-- These are system wide parameters

battManSystemAmbientTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system ambient temperature in tenths of degrees Celsius."
   ::= { battManSystemStatus 1 }

battManSystemAmbientTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system ambient temperature in tenths of degrees Fahrenheit."
   ::= { battManSystemStatus 2 }

battManSystemPilotTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system pilot temperature in tenths of degrees Celsius."
   ::= { battManSystemStatus 3 }

battManSystemPilotTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system pilot temperature in tenths of degrees Fahrenheit."
   ::= { battManSystemStatus 4 }

battManSystemAmbientHighTempAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system has a high temperature alarm."
   ::= { battManSystemStatus 5 }

battManSystemAmbientLowTempAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system has a low temperature alarm."
   ::= { battManSystemStatus 6 }

battManSystemPilotBatteryHighTempAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system has a pilot battery high temperature alarm."
   ::= { battManSystemStatus 7 }

battManSystemPilotProbeDisconnected OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system pilot probe is disconnected."
   ::= { battManSystemStatus 8 }

battManSystemAmbientProbeDisconnected OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system ambient probe is disconnected."
   ::= { battManSystemStatus 9 }

battManSystemConfigurationInvalid OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system is not configured correctly."
   ::= { battManSystemStatus 10 }

battManSystemSuspendVoltage OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the system has suspended voltage scans."
   ::= { battManSystemStatus 11 }

-- This is a table of input contact parameters

battManInputContactTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the battManInputContactTable."
   ::= { battManInputContactStatus 1 }

battManInputContactTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManInputContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each contact
       in the system. "
   ::= { battManInputContactStatus 2 }

battManInputContactEntry OBJECT-TYPE
   SYNTAX BattManInputContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The contact to get data from."
   INDEX  { battManInputContactIndex }
   ::= { battManInputContactTable 1 }

BattManInputContactEntry ::=
   SEQUENCE {
      battManInputContactIndex                 INTEGER,
      battManInputContactName                  DisplayString,
      battManInputContactAlarmState            INTEGER,
      battManInputContactState                 INTEGER,
      battManInputContactNormalState           INTEGER,
      battManInputContactAlarmDelay            INTEGER
   }

battManInputContactIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of contact entries in the table."
   ::= { battManInputContactEntry 1 }

battManInputContactName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the input contact."
   ::= { battManInputContactEntry 2 }

battManInputContactAlarmState OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the alarm condition is active for this contact."
   ::= { battManInputContactEntry 3 }

battManInputContactState OBJECT-TYPE
   SYNTAX INTEGER {
     open      (1),
     closed    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to open(1), the input contact is in the open state.
       When set to closed(2), the input contact is in the closed state."
   ::= { battManInputContactEntry 4 }

battManInputContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
     open      (1),
     closed    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When set to open(1), the input contact is normally open.
       When set to closed(2), the input contact is normally closed."
   ::= { battManInputContactEntry 5 }

battManInputContactAlarmDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The input contact alarm delay time in seconds."
   ::= { battManInputContactEntry 6 }

-- This is a table of battery string parameters

battManStringTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the battManStringTable."
   ::= { battManStringStatus 1 }

battManStringTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManStringEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each string
       in the system. "
   ::= { battManStringStatus 2 }

battManStringEntry OBJECT-TYPE
   SYNTAX BattManStringEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The string to get data from."
   INDEX  { battManStringIndex }
   ::= { battManStringTable 1 }

BattManStringEntry ::=
   SEQUENCE {
      battManStringIndex                       INTEGER,
      battManStringCurrent                     INTEGER,
      battManStringRippleCurrent               INTEGER,
      battManStringChargerHighVoltageAlarm     INTEGER,
      battManStringChargerLowVoltageAlarm      INTEGER,
      battManStringCurrentProbeDisconnected    INTEGER,
      battManStringOnBattery                   INTEGER,
      battManStringHighRippleCurrent           INTEGER,
      battManStringVoltage                     INTEGER,
      battManStringDischargeLess5Seconds       INTEGER,
      battManStringDischarge5to10Seconds       INTEGER,
      battManStringDischarge10to60Seconds      INTEGER,
      battManStringDischargeMore60Seconds      INTEGER
   }

battManStringIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of string entries in the table."
   ::= { battManStringEntry 1 }

battManStringCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The string current in tenths of amps."
   ::= { battManStringEntry 2 }

battManStringRippleCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The string ripple current in tenths of amps."
   ::= { battManStringEntry 3 }

battManStringChargerHighVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the string charger has a high voltage alarm."
   ::= { battManStringEntry 4 }

battManStringChargerLowVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the string charger has a low voltage alarm."
   ::= { battManStringEntry 5 }

battManStringCurrentProbeDisconnected OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the string charger probe is disconnected."
   ::= { battManStringEntry 6 }

battManStringOnBattery OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the string is in the on-battery state."
   ::= { battManStringEntry 7 }

battManStringHighRippleCurrent OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that the string has a high ripple current."
   ::= { battManStringEntry 8 }

battManStringVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The sum of the voltages for all of the batteries on a
       string in millivolts DC."
   ::= { battManStringEntry 9 }

battManStringDischargeLess5Seconds OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of recorded discharges lasting less than
       5 seconds."
   ::= { battManStringEntry 10 }

battManStringDischarge5to10Seconds OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of recorded discharges lasting between 5
       and 10 seconds."
   ::= { battManStringEntry 11 }

battManStringDischarge10to60Seconds OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of recorded discharges lasting between 10
       and 60 seconds."
   ::= { battManStringEntry 12 }

battManStringDischargeMore60Seconds OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of recorded discharges lasting more than
       60 seconds (1 minute)."
   ::= { battManStringEntry 13 }

-- the battManString1BatteryStatus group

battManString1BatteryTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the battManString1BatteryTable."
   ::= { battManBatteryStatus 1 }

battManString1BatteryTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1BatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each string
       in the system. "
   ::= { battManBatteryStatus 2 }

battManString1BatteryEntry OBJECT-TYPE
   SYNTAX BattManString1BatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The string to get data from."
   INDEX  { battManString1BatteryIndex }
   ::= { battManString1BatteryTable 1 }

BattManString1BatteryEntry ::=
   SEQUENCE {
      battManString1BatteryIndex                       INTEGER,
      battManString1BatteryVoltage                     INTEGER,
      battManString1BatteryLowestVoltage               INTEGER,
      battManString1BatteryCellShorted                 INTEGER,
      battManString1BatteryOpenFuseOrConnection        INTEGER,
      battManString1BatteryLowCapacity                 INTEGER,
      battManString1BatteryHighOhmicValue              INTEGER,
      battManString1BatteryThermalRunaway              INTEGER,
      battManString1BatteryDryout                      INTEGER,
      battManString1BatteryUserHighVoltageAlarm        INTEGER,
      battManString1BatteryUserLowVoltageAlarm         INTEGER,
      battManString1BatteryChemHighVoltageAlarm        INTEGER,
      battManString1BatteryChemLowVoltageAlarm         INTEGER,
      battManString1BatteryOpenCell                    INTEGER
   }

battManString1BatteryIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of string entries in the table."
   ::= { battManString1BatteryEntry 1 }

battManString1BatteryVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery voltage in millivolts DC."
   ::= { battManString1BatteryEntry 2 }

battManString1BatteryLowestVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The lowest battery discharge voltage during the last power event in millivolts DC."
   ::= { battManString1BatteryEntry 3 }

battManString1BatteryCellShorted OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that a battery cell is shorted."
   ::= { battManString1BatteryEntry 4 }

battManString1BatteryOpenFuseOrConnection OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that a fuse or connection is open."
   ::= { battManString1BatteryEntry 5 }

battManString1BatteryLowCapacity OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has low capacity."
   ::= { battManString1BatteryEntry 6 }

battManString1BatteryHighOhmicValue OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a high ohmic value."
   ::= { battManString1BatteryEntry 7 }

battManString1BatteryThermalRunaway OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a thermal runaway condition."
   ::= { battManString1BatteryEntry 8 }

battManString1BatteryDryout OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a dryout condition."
   ::= { battManString1BatteryEntry 9 }

battManString1BatteryUserHighVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the user level high voltage limit."
   ::= { battManString1BatteryEntry 10 }

battManString1BatteryUserLowVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the user level low voltage limit."
   ::= { battManString1BatteryEntry 11 }

battManString1BatteryChemHighVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the chemistry level high voltage limit."
   ::= { battManString1BatteryEntry 12 }

battManString1BatteryChemLowVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the chemistry level low voltage limit."
   ::= { battManString1BatteryEntry 13 }

battManString1BatteryOpenCell OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates the battery has an open
       cell or an inter-connection is abnormal."
   ::= { battManString1BatteryEntry 14 }


-- the battManString2BatteryStatus group

battManString2BatteryTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the battManString2BatteryTable."
   ::= { battManBatteryStatus 3 }

battManString2BatteryTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2BatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each string
       in the system. "
   ::= { battManBatteryStatus 4 }

battManString2BatteryEntry OBJECT-TYPE
   SYNTAX BattManString2BatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The string to get data from."
   INDEX  { battManString2BatteryIndex }
   ::= { battManString2BatteryTable 1 }

BattManString2BatteryEntry ::=
   SEQUENCE {
      battManString2BatteryIndex                       INTEGER,
      battManString2BatteryVoltage                     INTEGER,
      battManString2BatteryLowestVoltage               INTEGER,
      battManString2BatteryCellShorted                 INTEGER,
      battManString2BatteryOpenFuseOrConnection        INTEGER,
      battManString2BatteryLowCapacity                 INTEGER,
      battManString2BatteryHighOhmicValue              INTEGER,
      battManString2BatteryThermalRunaway              INTEGER,
      battManString2BatteryDryout                      INTEGER,
      battManString2BatteryUserHighVoltageAlarm        INTEGER,
      battManString2BatteryUserLowVoltageAlarm         INTEGER,
      battManString2BatteryChemHighVoltageAlarm        INTEGER,
      battManString2BatteryChemLowVoltageAlarm         INTEGER,
      battManString2BatteryOpenCell                    INTEGER
   }

battManString2BatteryIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of string entries in the table."
   ::= { battManString2BatteryEntry 1 }

battManString2BatteryVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery voltage in millivolts DC."
   ::= { battManString2BatteryEntry 2 }

battManString2BatteryLowestVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The lowest battery discharge voltage during the last power event in millivolts DC."
   ::= { battManString2BatteryEntry 3 }

battManString2BatteryCellShorted OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that a battery cell is shorted."
   ::= { battManString2BatteryEntry 4 }

battManString2BatteryOpenFuseOrConnection OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates that a fuse or connection is open."
   ::= { battManString2BatteryEntry 5 }

battManString2BatteryLowCapacity OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has low capacity."
   ::= { battManString2BatteryEntry 6 }

battManString2BatteryHighOhmicValue OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a high ohmic value."
   ::= { battManString2BatteryEntry 7 }

battManString2BatteryThermalRunaway OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a thermal runaway condition."
   ::= { battManString2BatteryEntry 8 }

battManString2BatteryDryout OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has a dryout condition."
   ::= { battManString2BatteryEntry 9 }

battManString2BatteryUserHighVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the user level high voltage limit."
   ::= { battManString2BatteryEntry 10 }

battManString2BatteryUserLowVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the user level low voltage limit."
   ::= { battManString2BatteryEntry 11 }

battManString2BatteryChemHighVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the chemistry level high voltage limit."
   ::= { battManString2BatteryEntry 12 }

battManString2BatteryChemLowVoltageAlarm OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates a battery has violated
       the chemistry level low voltage limit."
   ::= { battManString2BatteryEntry 13 }

battManString2BatteryOpenCell OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates the battery has an open
       cell or an inter-connection is abnormal."
   ::= { battManString2BatteryEntry 14 }

-- battery manager control group
battManRemoteAnnunciatorReset OBJECT-TYPE
   SYNTAX INTEGER {
       noOperation (1),
       reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset the user interface annunciator.
       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { battManControl 1 }

battManResetChargeCurrentDeviationBenchmark OBJECT-TYPE
   SYNTAX INTEGER {
       noOperation (1),
       reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset the charge current deviation benchmark.
       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { battManControl 2 }

battManResetLowestDischargeVoltages OBJECT-TYPE
   SYNTAX INTEGER {
       noOperation (1),
       reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset the lowest discharge voltages.
       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { battManControl 3 }

battManResetDischargeCounters OBJECT-TYPE
   SYNTAX INTEGER {
       noOperation (1),
       reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset all discharge event counters.
       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { battManControl 4 }

-- the battManTestResults group

--string 1 test results table

battManString1OhmicValueLastDischargeInfo OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Informational text showing the date/time, load, and pilot temperature for the string
       during the last discharge when ohmic values were recorded."
   ::= { battManTestResults 1 }

battManString1OhmicValueTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString1OhmicValueTable."
   ::= { battManTestResults 2 }

battManString1OhmicValueTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1OhmicValueEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting ohmic value information from each battery in String 1."
   ::= { battManTestResults 3 }

battManString1OhmicValueEntry OBJECT-TYPE
   SYNTAX BattManString1OhmicValueEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString1OhmicValueIndex }
   ::= { battManString1OhmicValueTable 1 }

BattManString1OhmicValueEntry ::=
   SEQUENCE {
       battManString1OhmicValueIndex   INTEGER,
       battManString1OhmicValueData    INTEGER
   }

battManString1OhmicValueIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery number."
   ::= { battManString1OhmicValueEntry 1 }

battManString1OhmicValueData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery inter-tier ohmic value in ohms.
        Note: Zero or negative values are invalid and may indicate
        faulty calibration of ohmic value correction factors."
   ::= { battManString1OhmicValueEntry 2 }

battManString1ResponseTestChangeTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString1ResponseTestChangeTable."
   ::= { battManTestResults 4 }

battManString1ResponseTestChangeTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1ResponseTestChangeEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test change information from each battery in String 1."
   ::= { battManTestResults 5 }

battManString1ResponseTestChangeEntry OBJECT-TYPE
   SYNTAX BattManString1ResponseTestChangeEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString1ResponseTestChangeIndex }
   ::= { battManString1ResponseTestChangeTable 1 }

BattManString1ResponseTestChangeEntry ::=
   SEQUENCE {
       battManString1ResponseTestChangeIndex   INTEGER,
       battManString1ResponseTestChangeData    INTEGER
   }

battManString1ResponseTestChangeIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString1ResponseTestChangeEntry 1 }

battManString1ResponseTestChangeData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test change in percent."
   ::= { battManString1ResponseTestChangeEntry 2 }

battManString2OhmicValueLastDischargeInfo OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Informational text showing the date/time, load, and pilot temperature for the string
       during the last discharge when ohmic values were recorded."
   ::= { battManTestResults 6 }

battManString2OhmicValueTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString2OhmicValueTable."
   ::= { battManTestResults 7 }

battManString2OhmicValueTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2OhmicValueEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting ohmic value information from each battery in String 2."
   ::= { battManTestResults 8 }

battManString2OhmicValueEntry OBJECT-TYPE
   SYNTAX BattManString2OhmicValueEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString2OhmicValueIndex }
   ::= { battManString2OhmicValueTable 1 }

BattManString2OhmicValueEntry ::=
   SEQUENCE {
       battManString2OhmicValueIndex   INTEGER,
       battManString2OhmicValueData    INTEGER
   }

battManString2OhmicValueIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of battery calibration entries in the table."
   ::= { battManString2OhmicValueEntry 1 }

battManString2OhmicValueData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery inter-tier ohmic value in ohms.
        Note: Zero or negative values are invalid and may indicate
        faulty calibration of ohmic value correction factors."
   ::= { battManString2OhmicValueEntry 2 }

battManString2ResponseTestChangeTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString2ResponseTestChangeTable."
   ::= { battManTestResults 9 }

battManString2ResponseTestChangeTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2ResponseTestChangeEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test change information from each battery in String 2."
   ::= { battManTestResults 10 }

battManString2ResponseTestChangeEntry OBJECT-TYPE
   SYNTAX BattManString2ResponseTestChangeEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString2ResponseTestChangeIndex }
   ::= { battManString2ResponseTestChangeTable 1 }

BattManString2ResponseTestChangeEntry ::=
   SEQUENCE {
       battManString2ResponseTestChangeIndex   INTEGER,
       battManString2ResponseTestChangeData    INTEGER
   }

battManString2ResponseTestChangeIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString2ResponseTestChangeEntry 1 }

battManString2ResponseTestChangeData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test change in percent."
   ::= { battManString2ResponseTestChangeEntry 2 }

battManString1ResponseTestCurrentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString1ResponseTestCurrentTable."
   ::= { battManTestResults 11 }

battManString1ResponseTestCurrentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1ResponseTestCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test current information from each battery
        in String 1."
   ::= { battManTestResults 12 }

battManString1ResponseTestCurrentEntry OBJECT-TYPE
   SYNTAX BattManString1ResponseTestCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString1ResponseTestCurrentIndex }
   ::= { battManString1ResponseTestCurrentTable 1 }

BattManString1ResponseTestCurrentEntry ::=
   SEQUENCE {
       battManString1ResponseTestCurrentIndex   INTEGER,
       battManString1ResponseTestCurrentData    INTEGER
   }

battManString1ResponseTestCurrentIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString1ResponseTestCurrentEntry 1 }

battManString1ResponseTestCurrentData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test current in milliamps."
   ::= { battManString1ResponseTestCurrentEntry 2 }

battManString2ResponseTestCurrentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString2ResponseTestCurrentTable."
   ::= { battManTestResults 13 }

battManString2ResponseTestCurrentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2ResponseTestCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test current information from each battery
        in String 2."
   ::= { battManTestResults 14 }

battManString2ResponseTestCurrentEntry OBJECT-TYPE
   SYNTAX BattManString2ResponseTestCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString2ResponseTestCurrentIndex }
   ::= { battManString2ResponseTestCurrentTable 1 }

BattManString2ResponseTestCurrentEntry ::=
   SEQUENCE {
       battManString2ResponseTestCurrentIndex   INTEGER,
       battManString2ResponseTestCurrentData    INTEGER
   }

battManString2ResponseTestCurrentIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString2ResponseTestCurrentEntry 1 }

battManString2ResponseTestCurrentData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test current in milliamps."
   ::= { battManString2ResponseTestCurrentEntry 2 }

battManString1ResponseTestCurrentBenchmarkTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString1ResponseTestCurrentBenchmarkTable."
   ::= { battManTestResults 15 }

battManString1ResponseTestCurrentBenchmarkTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString1ResponseTestCurrentBenchmarkEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test current benchmark information from
        each battery in String 1."
   ::= { battManTestResults 16 }

battManString1ResponseTestCurrentBenchmarkEntry OBJECT-TYPE
   SYNTAX BattManString1ResponseTestCurrentBenchmarkEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString1ResponseTestCurrentBenchmarkIndex }
   ::= { battManString1ResponseTestCurrentBenchmarkTable 1 }

BattManString1ResponseTestCurrentBenchmarkEntry ::=
   SEQUENCE {
       battManString1ResponseTestCurrentBenchmarkIndex   INTEGER,
       battManString1ResponseTestCurrentBenchmarkData    INTEGER
   }

battManString1ResponseTestCurrentBenchmarkIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString1ResponseTestCurrentBenchmarkEntry 1 }

battManString1ResponseTestCurrentBenchmarkData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test current benchmark in milliamps."
   ::= { battManString1ResponseTestCurrentBenchmarkEntry 2 }

battManString2ResponseTestCurrentBenchmarkTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManString2ResponseTestCurrentBenchmarkTable."
   ::= { battManTestResults 17 }

battManString2ResponseTestCurrentBenchmarkTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManString2ResponseTestCurrentBenchmarkEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting response test current benchmark information from
        each battery in String 2."
   ::= { battManTestResults 18 }

battManString2ResponseTestCurrentBenchmarkEntry OBJECT-TYPE
   SYNTAX BattManString2ResponseTestCurrentBenchmarkEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The string to get data from."
   INDEX { battManString2ResponseTestCurrentBenchmarkIndex }
   ::= { battManString2ResponseTestCurrentBenchmarkTable 1 }

BattManString2ResponseTestCurrentBenchmarkEntry ::=
   SEQUENCE {
       battManString2ResponseTestCurrentBenchmarkIndex   INTEGER,
       battManString2ResponseTestCurrentBenchmarkData    INTEGER
   }

battManString2ResponseTestCurrentBenchmarkIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of the entries in the table."
   ::= { battManString2ResponseTestCurrentBenchmarkEntry 1 }

battManString2ResponseTestCurrentBenchmarkData OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The battery response test current benchmark in milliamps."
   ::= { battManString2ResponseTestCurrentBenchmarkEntry 2 }

-- battManUnitStatus

battManUnitStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the battManUnitStatusTable."
   ::= { battManUnitStatus 1 }

battManUnitStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF BattManUnitStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting status information from each unit in the system."
   ::= { battManUnitStatus 2 }

battManUnitStatusEntry OBJECT-TYPE
   SYNTAX BattManUnitStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "The unit to get data from."
   INDEX { battManUnitStatusIndex }
   ::= { battManUnitStatusTable 1 }

BattManUnitStatusEntry ::=
   SEQUENCE {
       battManUnitStatusIndex           INTEGER,
       battManUnitStatusSerialNumber    DisplayString,
       battManUnitHardwareRev           INTEGER,
       battManUnitFirmwareRev           INTEGER,
       battManUnitCommLoss              INTEGER,
       battManUnitRelayStuck            INTEGER
   }

battManUnitStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Index of unit status entries in the table."
   ::= { battManUnitStatusEntry 1 }

battManUnitStatusSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager unit serial number character string.
       This value is set at the factory."
   ::= { battManUnitStatusEntry 2 }

battManUnitHardwareRev OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager unit hardware revision.
       This value is set at the factory."
   ::= { battManUnitStatusEntry 3 }

battManUnitFirmwareRev OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery manager unit firmware revision.
       This value is set at the factory and can change with firmware update."
   ::= {  battManUnitStatusEntry 4 }

battManUnitCommLoss OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates the system has lost
       communication with the unit."
   ::= { battManUnitStatusEntry 5 }

battManUnitRelayStuck OBJECT-TYPE
   SYNTAX INTEGER {
     normal          (1),
     alarm           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When set to alarm(2), indicates the unit monitor relay
       is stuck."
   ::= { battManUnitStatusEntry 6 }


-- the xPDUIdent group

xPDUIdentProductName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the PDU."
   ::= { xPDUIdent 1 }

xPDUIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the PDU.
       This value is set at the factory."
   ::= { xPDUIdent 2 }

xPDUIdentFirmwareAppRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application firmware revision of the  PDU."
   ::= {  xPDUIdent 3 }

xPDUIdentFirmwareAppOSRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application operating system firmware revision of the PDU."
   ::= {  xPDUIdent 4 }

xPDUIdentFirmwareControllerRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the PDU controller firmware revision."
   ::= {  xPDUIdent 5 }

xPDUIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the PDU was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { xPDUIdent 6 }

xPDUIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of
       the PDU. This value is set at the factory."
   ::= { xPDUIdent 7 }

xPDUIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of
       the PDU. This value is set at the factory."
   ::= { xPDUIdent 8 }

--  the xPDUDevice group

xPDUDeviceNominalMainInputVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal main input voltage to the PDU. Measured in Volts,
       line-to-line for a 3-wire (delta) service or line-to-neutral for a
       4-wire (wye) service."
   ::= { xPDUDevice 1 }

xPDUDeviceServiceType OBJECT-TYPE
    SYNTAX INTEGER  {
        threeWire (1),
        fourWire  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of utility input to the PDU. Either 3 wires (delta), or 4 wires (wye)."
   ::= { xPDUDevice 2 }

xPDUDeviceNominalOutputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
      "The nominal line-to-neutral output voltage to the load measured in Volts."
   ::= { xPDUDevice 3 }

xPDUDeviceMainInputBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The rating of the main input breaker measured in Amps."
   ::= { xPDUDevice 4 }

xPDUDevicePanelBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The rating of the panel breaker measured in Amps."
   ::= { xPDUDevice 5 }

xPDUDeviceTransformerPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not a transformer is installed in the PDU."
   ::= { xPDUDevice 6 }

xPDUDeviceLoadTieBreakerPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent (1),
        present    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not a load tie breaker is installed in the PDU."
   ::= { xPDUDevice 7 }

xPDUDeviceLoadTestPortPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not a load test port is installed in the PDU."
   ::= { xPDUDevice 8 }

xPDUDeviceFusesPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the UPS feed from the PDU includes fuses."
   ::= { xPDUDevice 9 }

xPDUDeviceFansPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not cooling fans are installed in the PDU."
   ::= { xPDUDevice 10 }

xPDUDeviceBypassInputPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the PDU is equipped with a second feed for
       the UPS's bypass input."
   ::= { xPDUDevice 11 }

xPDUDeviceCrossTieOutputPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the PDU is equipped with a cross-tie output."
   ::= { xPDUDevice 12 }

xPDUDeviceEarthGroundMonitorPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the PDU can provide ground current measurements."
   ::= { xPDUDevice 13 }

xPDUDeviceInfraStruXureType OBJECT-TYPE
    SYNTAX INTEGER  {
        typeB     (1),
        typeC     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the configuration of this PDU system.
       Type-B PDU is in a distributed UPS system and has bypass capabilities.
       Type-C PDU receives power from a larger central UPS."
   ::= { xPDUDevice 14 }

-- Main Input

xPDUMainInputOverVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an input over voltage condition will be generated.
       Specified as percent deviation from nominal."
   ::= { xPDUMainInput 1 }

xPDUMainInputUnderVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an input under voltage condition will be generated.
       Specified as percent deviation from nominal.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUMainInput 2 }

-- Main Input Voltage Table

xPDUMainInputVoltageTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Main input voltage entries."
   ::= { xPDUMainInput 3 }

xPDUMainInputVoltagePhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XPDUMainInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of input voltage table entries. The number of
           entries are the phase entries.
           The number of entries is contained in the
           xPDUMainInputVoltageTableSize OID."
       ::= { xPDUMainInput 4 }

   xPDUMainInputVoltagePhaseEntry OBJECT-TYPE
       SYNTAX     XPDUMainInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular main input voltage phase."
       INDEX { xPDUMainInputVoltagePhaseIndex }
       ::= { xPDUMainInputVoltagePhaseTable 1 }

   XPDUMainInputVoltagePhaseEntry ::= SEQUENCE {
       xPDUMainInputVoltagePhaseIndex      INTEGER,
       xPDUMainInputVoltageLtoL            INTEGER,
       xPDUMainInputVoltageLtoN            INTEGER
      }

   xPDUMainInputVoltagePhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each input phase entry in the table."
       ::= { xPDUMainInputVoltagePhaseEntry 1 }

   xPDUMainInputVoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-line PDU input voltage when an isolation transformer is present,
           or -1 if no transformer present in this PDU. Measured in tenths of Volts."
       ::= { xPDUMainInputVoltagePhaseEntry 2 }

   xPDUMainInputVoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-neutral PDU input voltage when an isolation transformer is not present,
           or -1 if a transformer is present in this PDU. Measured in tenths of Volts."
   ::= { xPDUMainInputVoltagePhaseEntry 3 }


xPDUBypassInputOverVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which a bypass input over voltage condition will be generated.
       Specified as percent deviation from nominal."
   ::= { xPDUBypassInput 1 }

xPDUBypassInputUnderVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an bypass input under voltage condition will be generated.
       Specified as percent deviation from nominal.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUBypassInput 2 }

-- Bypass Input  Voltage Table

xPDUBypassInputVoltagePhaseTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of bypass input voltage entries."
   ::= { xPDUBypassInput 3 }

xPDUBypassInputVoltagePhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XPDUBypassInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of output table entries.  The number of
           entries are the phase entries.
           The number of entries is contained in the
           xPDUBypassInputVoltagePhaseTableSize OID."
       ::= { xPDUBypassInput 4 }

   xPDUBypassInputVoltagePhaseEntry OBJECT-TYPE
       SYNTAX     XPDUBypassInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular bypass input voltage phase."
       INDEX { xPDUBypassInputVoltagePhaseIndex }
       ::= { xPDUBypassInputVoltagePhaseTable 1 }

   XPDUBypassInputVoltagePhaseEntry ::= SEQUENCE {
       xPDUBypassInputVoltagePhaseIndex       INTEGER,
       xPDUBypassInputVoltageLtoL             INTEGER,
       xPDUBypassInputVoltageLtoN             INTEGER
      }

   xPDUBypassInputVoltagePhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Index of each bypass input phase entry in the table."
       ::= { xPDUBypassInputVoltagePhaseEntry 1 }

   xPDUBypassInputVoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-line bypass input voltage, or -1 if no bypass
           feed is present in this PDU. Measured in tenths of Volts."
       ::= { xPDUBypassInputVoltagePhaseEntry 2 }

   xPDUBypassInputVoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-neutral bypass input voltage, or -1 if no bypass
           feed is present in this PDU. Measured in tenths of Volts."
       ::= { xPDUBypassInputVoltagePhaseEntry 3 }

-- UPS Input Table

xPDUUPSInputVoltagePhaseTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of UPS input voltage entries."
   ::= { xPDUUPSInput 1 }

xPDUUPSInputVoltagePhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XPDUUPSInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of UPS input table entries.  The number of
           entries are the phase entries.
           The number of entries is contained in the
           xPDUUPSInputVoltagePhaseTableSize OID."
       ::= { xPDUUPSInput 2 }

   xPDUUPSInputVoltagePhaseEntry OBJECT-TYPE
       SYNTAX     XPDUUPSInputVoltagePhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular UPS input voltage phase."
       INDEX { xPDUUPSInputVoltagePhaseIndex }
       ::= { xPDUUPSInputVoltagePhaseTable 1 }

   XPDUUPSInputVoltagePhaseEntry ::= SEQUENCE {
       xPDUUPSInputVoltagePhaseIndex      INTEGER,
       xPDUUPSInputVoltageLtoNPresent     INTEGER
      }

   xPDUUPSInputVoltagePhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each UPS input phase entry in the table."
       ::= { xPDUUPSInputVoltagePhaseEntry 1 }

  xPDUUPSInputVoltageLtoNPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2),
        unknown     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not voltage is present at the UPS feed."
       ::= { xPDUUPSInputVoltagePhaseEntry 2 }

-- System Output

xPDUSystemOutputFrequency OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The system output frequency in tenths of Hertz."
   ::= { xPDUSystemOutput 1 }

xPDUSystemOutputNeutralCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the neutral current measured at the system output in tenths of Amps."
   ::= { xPDUSystemOutput 2 }

xPDUSystemOutputTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the total system output power in tenths of kW."
   ::= { xPDUSystemOutput 3 }

xPDUSystemOutputTotalApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the total system output power in tenths of kVA."
   ::= { xPDUSystemOutput 4 }

xPDUSystemOutputTotalPowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the total power factor of the system output.
       A value of 100 representing a unity power factor (1.00).
       Measured in hundredths."
   ::= { xPDUSystemOutput 5 }

xPDUSystemOutputFrequencyTolerance OBJECT-TYPE
   SYNTAX     INTEGER{
      freqToleranceOff              (1),
      freqTolerancePointTwo         (2),
      freqTolerancePointFive        (3),
      freqToleranceOne              (4),
      freqToleranceOnePointFive     (5),
      freqToleranceTwo              (6),
      freqToleranceThree            (7),
      freqToleranceFour             (8),
      freqToleranceFive             (9),
      freqToleranceNine             (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Shows the circuit panel output frequency tolerance in Hertz."
   ::= { xPDUSystemOutput 6 }

xPDUSystemOutputMaxKWPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Defines 100% load in kW.
       Purpose is to set to match UPS capabilities."
   ::= { xPDUSystemOutput 7 }

xPDUSystemOutputOverVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an output over voltage condition will be generated.
       Specified as percent deviation from nominal."
   ::= { xPDUSystemOutput 8 }

xPDUSystemOutputUnderVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..30)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an output under voltage condition will be generated.
       Specified as percent deviation from nominal.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUSystemOutput 9 }


xPDUSystemOutputOverCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..110)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an over current condition will be generated.
       Specified as a percent of the panel breaker rating.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUSystemOutput 10 }

xPDUSystemOutputOverCurrentNeutralThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..110)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an Over current neutral condition will be generated.
       Specified as a percent of the panel breaker rating.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUSystemOutput 11 }

xPDUSystemOutputUnderCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an under current condition will be generated.
       Specified as a percent of the panel breaker rating.
       A value of zero indicates that the threshold is disabled."
   ::= { xPDUSystemOutput 12 }

xPDUSystemOutputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of System Output phase entries."
   ::= { xPDUSystemOutput 13 }

xPDUSystemOutputPhaseTable OBJECT-TYPE
   SYNTAX     SEQUENCE OF XPDUSystemOutputPhaseEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
      "A list of system output table entries.
       The number of entries is contained in the
       xPDUSystemOutputTableSize OID."
   ::= { xPDUSystemOutput 14 }

   xPDUSystemOutputPhaseEntry OBJECT-TYPE
       SYNTAX     XPDUSystemOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular system output phase."
       INDEX { xPDUSystemOutputPhaseIndex }
       ::= { xPDUSystemOutputPhaseTable 1 }

   XPDUSystemOutputPhaseEntry ::= SEQUENCE {
       xPDUSystemOutputPhaseIndex      INTEGER,
       xPDUSystemOutputVoltageLtoL     INTEGER,
       xPDUSystemOutputVoltageLtoN     INTEGER,
       xPDUSystemOutputPhaseCurrent    INTEGER,
       xPDUSystemOutputPower           INTEGER,
       xPDUSystemOutputApparentPower   INTEGER,
       xPDUSystemOutputPowerFactor     INTEGER
      }

   xPDUSystemOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each output phase entry in the table."
       ::= { xPDUSystemOutputPhaseEntry 1 }

   xPDUSystemOutputVoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-line system output voltage available at the circuit panel.
           Measured in tenths of Volts."
       ::= { xPDUSystemOutputPhaseEntry 2 }

   xPDUSystemOutputVoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-neutral system output voltage available at the circuit panel.
           Measured in tenths of Volts."
       ::= { xPDUSystemOutputPhaseEntry 3 }


   xPDUSystemOutputPhaseCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "System load current per phase. Measured in tenths of Amps."
       ::= { xPDUSystemOutputPhaseEntry 4 }

   xPDUSystemOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "System output power per phase. Measured in tenths of kW."
       ::= { xPDUSystemOutputPhaseEntry 5 }

   xPDUSystemOutputApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "System output power per phase. Measured in tenths of kVA."
       ::= { xPDUSystemOutputPhaseEntry 6 }

   xPDUSystemOutputPowerFactor OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Indicates the Power Factor of the system output per phase.
           A value of 100 representing a unity Power Factor (1.00).
           Measured in hundredths."
       ::= { xPDUSystemOutputPhaseEntry 7 }

xPDUGroundCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the current measured in the earth ground conductor.
       Measured in tenths of Amps, or -1 if not available."
   ::= { xPDUGroundMonitorPoint 1 }

xPDUGroundCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..50)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which a ground current over current
       condition will be generated. Specified in tenths of Amps."
   ::= { xPDUGroundMonitorPoint 2 }

-- System Breakers

xPDUSystemBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of system breaker entries."
   ::= { xPDUSystemBreakers 1 }

xPDUSystemBreakerTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XPDUSystemBreakerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of system breaker entries.
          The number of entries is contained in the
          xPDUSystemBreakerTableSize OID."
       ::= { xPDUSystemBreakers 2 }

   xPDUSystemBreakerEntry OBJECT-TYPE
       SYNTAX     XPDUSystemBreakerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular system breaker."
       INDEX { xPDUSystemBreakerTableIndex }
       ::= { xPDUSystemBreakerTable 1 }

   XPDUSystemBreakerEntry ::= SEQUENCE {
       xPDUSystemBreakerTableIndex    INTEGER,
       xPDUSystemBreakerDescription   DisplayString,
       xPDUSystemBreakerPosition      INTEGER
      }

   xPDUSystemBreakerTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Index of system breaker entries in the table."
       ::= { xPDUSystemBreakerEntry 1 }

xPDUSystemBreakerDescription OBJECT-TYPE
   SYNTAX  DisplayString (SIZE (0..79))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "A brief description of the system breakers."
   ::= { xPDUSystemBreakerEntry 2 }

   xPDUSystemBreakerPosition OBJECT-TYPE
       SYNTAX INTEGER  {
          open    (1),
          closed  (2),
          unknown (3)
       }
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "Indicates whether this breaker is open(1) or closed(2)."
       ::= { xPDUSystemBreakerEntry 3 }

-- Branch Breakers (Breaker Panel)

xPDUNumOfBranchBreakers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of branch breakers (panel positions) in the Panel.
       returns 42 for a 1-panel or 84 for a 2-panel system."
   ::= { xPDUBranchBreakers 1 }

-- Branch Breakers Table

xPDUBranchBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of branch breaker entries determined by the xPDUNumOfBranchBreakers OID."
   ::= { xPDUBranchBreakers 2 }

xPDUBranchBreakerTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XPDUBranchBreakerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of branch breaker table entries. The
           number of entries is given by the value of xPDUBranchBreakerTableSize
           The number of entries is contained in the xPDUBranchBreakerTableSize OID."
       ::= { xPDUBranchBreakers 3 }

   xPDUBranchBreakerEntry OBJECT-TYPE
       SYNTAX     XPDUBranchBreakerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular branch breaker (panel position)."
       INDEX { xPDUBranchBreakerTableIndex }
       ::= { xPDUBranchBreakerTable 1 }

   XPDUBranchBreakerEntry ::= SEQUENCE {
       xPDUBranchBreakerTableIndex             INTEGER,
       xPDUBranchBreakerRating                 INTEGER,
       xPDUBranchBreakerRDPFeed                INTEGER,
       xPDUBranchBreakerTieIndicator           INTEGER,
       xPDUBranchBreakerCurrent                INTEGER,
       xPDUBranchBreakerOverCurrentThreshold   INTEGER,
       xPDUBranchBreakerUnderCurrentThreshold  INTEGER,
       xPDUBranchBreakerMaxCurrentThreshold    INTEGER,
       xPDUBranchBreakerMinCurrentThreshold    INTEGER,
       xPDUBranchBreakerName                   DisplayString,
       xPDUBranchBreakerLocation               DisplayString

    }

   xPDUBranchBreakerTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Index of branch breaker entries in the table."
       ::= { xPDUBranchBreakerEntry 1 }

   xPDUBranchBreakerRating OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Indicates current rating of this breaker.
           0=Breaker is not present.
           1=Earth leakage connection.
           2=Neutral connection.
           A value greater than 2 indicates breaker current rating in Amps.
           A value above 60 Amp will signify a remote feed.
           The xPDUBranchBreakerRDPFeed OID will indicate which breakers are
           configured as a remote drop.
           Note: When setting branch circuit thresholds/ratings for an entry,
           all positions tied (see the xPDUBranchBreakerTieIndicator OID)
           to this entry will inherit the new threshold/rating."  
       ::= { xPDUBranchBreakerEntry 2 }           
         
   xPDUBranchBreakerRDPFeed OBJECT-TYPE
       SYNTAX INTEGER  {
          remoteDistribution   (1),
          noRemoteDistribution (2)
       }
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "Indicates that a breaker position is feeding a remote
           distribution panel."
       ::= { xPDUBranchBreakerEntry 3 }

   xPDUBranchBreakerTieIndicator OBJECT-TYPE
       SYNTAX INTEGER  {
          breakerUnTied   (1),
          breakerTied     (2)
       }
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Indicates whether or not the breaker in this position
           is logically associated with the breaker immediately below it.
           This setting is used grouping the breakers feeding
           a multi-pole branch circuit.
           Note: When setting an entry's branch breaker tie indicator to breakerTied,
           all the positions that are tied to this breaker will take on the rating
           and thresholds for this entry of the table."
       ::= { xPDUBranchBreakerEntry 4 }

    xPDUBranchBreakerCurrent OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "Indicates the branch current in tenths of  Amps or -1 when not available."
       ::= { xPDUBranchBreakerEntry 5 }

    xPDUBranchBreakerOverCurrentThreshold OBJECT-TYPE
       SYNTAX INTEGER (0..100)
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Threshold above which a branch circuit high current
           condition will be generated.
           Specified as a percent of the branch breaker rating.
           A value of zero indicates that the threshold is disabled.
           Note: When setting branch circuit thresholds/ratings for an entry,
           all positions tied (see the xPDUBranchBreakerTieIndicator OID)
           to this entry will inherit the new threshold/rating."
       ::= { xPDUBranchBreakerEntry 6 }

    xPDUBranchBreakerUnderCurrentThreshold OBJECT-TYPE
       SYNTAX INTEGER (0..100)
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Threshold below which a branch circuit low current
           condition will be generated.
           Specified as a percent of the branch breaker rating.
           A value of zero indicates that the threshold is disabled.
           Note: When setting branch circuit thresholds/ratings for an entry,
           all positions tied (see the xPDUBranchBreakerTieIndicator OID)
           to this entry will inherit the new threshold/rating."
       ::= { xPDUBranchBreakerEntry 7 }

    xPDUBranchBreakerMaxCurrentThreshold OBJECT-TYPE
       SYNTAX INTEGER (0..100)
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Threshold above which a branch circuit maximum current
           condition will be generated.
           Specified as a percent of the branch breaker rating.
           A value of zero indicates that the threshold is disabled.
           Note: When setting branch circuit thresholds/ratings for an entry,
           all positions tied (see the xPDUBranchBreakerTieIndicator OID)
           to this entry will inherit the new threshold/rating."
       ::= { xPDUBranchBreakerEntry 8 }

    xPDUBranchBreakerMinCurrentThreshold OBJECT-TYPE
       SYNTAX INTEGER (0..100)
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "Threshold below which a branch circuit minimum current
           condition will be generated.
           Specified as a percent of the branch breaker rating.
           A value of zero indicates that the threshold is disabled.
           Note: When setting branch circuit thresholds/ratings for an entry,
           all positions tied (see the xPDUBranchBreakerTieIndicator OID)
           to this entry will inherit the new threshold/rating."
       ::= { xPDUBranchBreakerEntry 9 }

    xPDUBranchBreakerName OBJECT-TYPE
       SYNTAX DisplayString
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
           "The description of the purpose/use of the breaker."
       ::= { xPDUBranchBreakerEntry 10 }

    xPDUBranchBreakerLocation OBJECT-TYPE
       SYNTAX DisplayString
       ACCESS read-write
       STATUS mandatory
       DESCRIPTION
          "The description of the location of the breaker."
       ::= { xPDUBranchBreakerEntry 11 }


-- the xPDUInputContacts group

xPDUInputContactNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported by the PDU."
   ::= { xPDUInputContacts 1 }

xPDUInputContactTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of input contact entries."
   ::= { xPDUInputContacts 2 }

xPDUInputContactTable OBJECT-TYPE
   SYNTAX SEQUENCE OF XPDUInputContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the PDU.
       The number of entries is contained in the
       xPDUInputContactTableSize OID."
   ::= { xPDUInputContacts 3 }

xPDUInputContactEntry OBJECT-TYPE
   SYNTAX XPDUInputContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A contact entry containing information for a given contact."
   INDEX  { xPDUInputContactNumber }
   ::= { xPDUInputContactTable 1 }

XPDUInputContactEntry ::=
   SEQUENCE {
      xPDUInputContactNumber       INTEGER,
      xPDUInputContactName         DisplayString,
      xPDUInputContactNormalState  INTEGER,
      xPDUInputContactCurrentState INTEGER
   }

xPDUInputContactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An index identifying the contact on the PDU."
   ::= { xPDUInputContactEntry 1 }

xPDUInputContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The description of the purpose/use of the contact."
   ::= { xPDUInputContactEntry 2 }

xPDUInputContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open    (1),
      closed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal operating position of the contact."
   ::= { xPDUInputContactEntry 3 }

xPDUInputContactCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      open    (1),
      closed  (2),
      unknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This value indicates the current state of the contact."
   ::= { xPDUInputContactEntry 4 }

-- the xPDUOutputRelays group

xPDUOutputRelaysNumRelays OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of output relays supported by the PDU."
   ::= { xPDUOutputRelays 1 }

xPDUOutputRelaysTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of output relay entries."
   ::= { xPDUOutputRelays 2 }

xPDUOutputRelayTable OBJECT-TYPE
   SYNTAX SEQUENCE OF XPDUOutputRelayEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of output relays supported by the PDU.
       The number of entries is contained in the
       xPDUOutputRelayTableSize OID."
   ::= { xPDUOutputRelays 3 }

xPDUOutputRelayEntry OBJECT-TYPE
   SYNTAX XPDUOutputRelayEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A output relay entry containing information for a given contact."
   INDEX  { xPDUOutputRelayNumber }
   ::= { xPDUOutputRelayTable 1 }

XPDUOutputRelayEntry ::=
   SEQUENCE {
      xPDUOutputRelayNumber        INTEGER,
      xPDUOutputRelayName          DisplayString,
      xPDUOutputRelayNormalState   INTEGER,
      xPDUOutputRelayCurrentState  INTEGER
   }

xPDUOutputRelayNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An index identifying the output relay on the PDU."
   ::= { xPDUOutputRelayEntry 1 }

xPDUOutputRelayName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The description of the purpose/use of the output relay."
   ::= { xPDUOutputRelayEntry 2 }

xPDUOutputRelayNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open     (1),
      closed   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal operating position of the output relay."
   ::= { xPDUOutputRelayEntry 3 }

xPDUOutputRelayCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      open      (1),
      closed    (2),
      unknown   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This value indicates the current state of the output relay."
   ::= { xPDUOutputRelayEntry 4 }

-- the xPDUMiscGroup

xPDUEPOMode OBJECT-TYPE
    SYNTAX INTEGER  {
        armed    (1),
        disarmed (2),
        unknown  (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether the EPO System is armed(1) or disarmed(2)."
       ::= { xPDUMiscGroup 1 }

xPDUTransformTempStatus OBJECT-TYPE
    SYNTAX INTEGER  {
        normal               (1),
        overtemp             (2),
        noTransformerPresent (3),
        unknown              (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates if the PDU's isolation transformer is over temperature."
   ::= { xPDUMiscGroup 2 }

xPDUCoolingFanStatus OBJECT-TYPE
    SYNTAX INTEGER  {
        normal                (1),
        failed                (2),
        noCoolingFansPresent  (3),
        unknown               (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates if one or more of the PDU's cooling fans have failed."
   ::= { xPDUMiscGroup 3 }

-- The pmmIdent group

pmmIdentModelNumber OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A character string identifying the model number of the PMM.
         This value is set at the factory."
    ::= { pmmIdent 1 }

pmmIdentSerialNumber OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A character string identifying the serial number of the PMM.
         This value is set at the factory."
    ::= { pmmIdent 2 }

pmmIdentDateOfManufacture OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The date when the PMM was manufactured in mm/dd/yyyy format.
         This value is set at the factory."
    ::= { pmmIdent 3 }

pmmIdentHMISerialNumber OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A character string identifying the serial number of the HMI.
         This value is set at the factory."
    ::= { pmmIdent 4 }

pmmIdentHMIHardwareRev OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The hardware revision of the HMI.
         This value is set at the factory."
    ::= { pmmIdent 5 }

pmmIdentHMIFirmwareAppRev OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An ID string identifying the application firmware revision of the
         HMI."
    ::= {  pmmIdent 6 }

pmmIdentHMIFirmwareAppOSRev OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An ID string identifying the application operating system firmware revision of the
         HMI."
    ::= {  pmmIdent 7 }

-- The pmmDevice group

pmmDeviceNominalInputVoltage OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The nominal input voltage to the PMM. Measured in Volts,
         line-to-line for a 3-wire (delta) service or line-to-neutral for a
         4-wire (wye) service."
    ::= { pmmDevice 1 }

pmmDeviceServiceType OBJECT-TYPE
    SYNTAX INTEGER{
    threeWire (1),
    fourWire  (2)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The type of utility input to the PMM. Either 3 wires (delta), or 4 wires (wye)."
    ::= { pmmDevice 2 }

pmmDeviceNominalOutputVoltage OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
    "The nominal line-to-neutral output voltage to the load measured in Volts."
    ::= { pmmDevice 3 }
-- The pmmInput group
pmmInputMeterTableSize OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of input meters attached to the system."
    ::= { pmmInput 1 }

pmmInputTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PMMInputEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A list of input meter entries."
    ::= { pmmInput 2}

pmmInputEntry OBJECT-TYPE
    SYNTAX PMMInputEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing information applicable to a
         particular input meter."
    INDEX { pmmInputMeterIndex }
    ::= { pmmInputTable 1 }

    PMMInputEntry ::= SEQUENCE {
        pmmInputMeterIndex                      INTEGER,
        pmmInputFrequency                       INTEGER,
        pmmInputTotalActivePower                INTEGER,
        pmmInputTotalApparentPower              INTEGER,
        pmmInputTotalPowerFactor                INTEGER,
        pmmInputActiveEnergyDelivered           Integer32,
        pmmInputActiveEnergyReceived            Integer32,
        pmmInputApparentEnergyDelivered         Integer32,
        pmmInputApparentEnergyReceived          Integer32,
        pmmInputFrequencyDeviation              INTEGER,
        pmmInputPowerFactorDeviation            INTEGER,
        pmmInputMinVoltThreshold                INTEGER,
        pmmInputLowVoltThreshold                INTEGER,
        pmmInputHighVoltThreshold               INTEGER,
        pmmInputMaxVoltThreshold                INTEGER,
        pmmInputMinCurrentThreshold             INTEGER,
        pmmInputLowCurrentThreshold             INTEGER,
        pmmInputHighCurrentThreshold            INTEGER,
        pmmInputMaxCurrentThreshold             INTEGER,
        pmmInputMinApparentPowerThreshold       INTEGER,
        pmmInputMaxApparentPowerThreshold       INTEGER,
        pmmInputOverActivePowerThreshold        INTEGER,
        pmmInputBreakerState                    INTEGER,
        pmmInputBreakerOpenAlarm                INTEGER
    }

pmmInputMeterIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The input meter identifier."
    ::= { pmmInputEntry 1 }

pmmInputFrequency OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The input frequency in tenths of Hertz."
    ::= { pmmInputEntry 2 }

pmmInputTotalActivePower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the total input active power in tenths of kW."
    ::= { pmmInputEntry 3 }

pmmInputTotalApparentPower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the total input apparent power in tenths of kVA."
    ::= { pmmInputEntry 4 }

pmmInputTotalPowerFactor OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the total power factor. A value of 100 representing
         a unity power factor (1.00). Specified in hundredths."
    ::= { pmmInputEntry 5 }

pmmInputActiveEnergyDelivered OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
    "Shows the input active energy delivered in tenths of kWh."
    ::= { pmmInputEntry 6 }

pmmInputActiveEnergyReceived OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the input active energy received in tenths of kWh."
    ::= { pmmInputEntry 7 }

pmmInputApparentEnergyDelivered OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the input apparent energy delivered in tenths of kVAh."
    ::= { pmmInputEntry 8 }

pmmInputApparentEnergyReceived OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the input apparent energy received in tenths of kVAh."
    ::= { pmmInputEntry 9 }

pmmInputFrequencyDeviation OBJECT-TYPE
    SYNTAX INTEGER{
        freqDeviationOff              (1),
        freqDeviationPointTwo         (2),
        freqDeviationPointFive        (3),
        freqDeviationOne              (4),
        freqDeviationOnePointFive     (5),
        freqDeviationTwo              (6),
        freqDeviationThree            (7),
        freqDeviationFour             (8),
        freqDeviationFive             (9),
        freqDeviationNine             (10)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Shows the input frequency deviation in Hertz."
    ::= { pmmInputEntry 10 }

pmmInputPowerFactorDeviation OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Shows the input power factor deviation. Specified in tenths.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 11 }

pmmInputMinVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an input minimum voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalInputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 12 }

pmmInputLowVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an input low voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalInputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 13 }

pmmInputHighVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..120)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input high voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalInputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 14 }

pmmInputMaxVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..120)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input maximum voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalInputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 15 }

pmmInputMinCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an input minimum current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 16 }

pmmInputLowCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an input low current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 17 }

pmmInputHighCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..110)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input high current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 18 }

pmmInputMaxCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input maximum current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 19 }

pmmInputMinApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an input minimum apparent power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 20 }

pmmInputMaxApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..110)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input maximum apparent power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 21 }

pmmInputOverActivePowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an input over active power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmInputEntry 22 }

pmmInputBreakerState OBJECT-TYPE
    SYNTAX INTEGER {
        open   (1),
        closed (2),
        unknown(3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This value indicates the current state of input breaker.
         1 will indicate open,
         2 will indicate closed,
         3 will indicate unknown."
    ::= { pmmInputEntry 23 }

pmmInputBreakerOpenAlarm OBJECT-TYPE
    SYNTAX INTEGER {
        enabled    (1),
        disabled   (2),
        unknown    (3)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Breaker open alarm status.
         1 will indicate enabled,
         2 will indicate disabled,
         3 will indicate unknown."
    ::= { pmmInputEntry 24 }
pmmInputPhaseTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PMMInputPhaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A list of input table entries.
         The number of entries is given by the value of
         pmmInputMeterTableSize OID."
    ::= { pmmInput 3 }

pmmInputPhaseEntry OBJECT-TYPE
    SYNTAX PMMInputPhaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing information applicable to a
         particular input phase."
    INDEX { pmmInputMeterNum, pmmInputPhase }
    ::= { pmmInputPhaseTable 1 }

    PMMInputPhaseEntry ::= SEQUENCE {
        pmmInputMeterNum                 INTEGER,
        pmmInputPhase                    INTEGER,
        pmmInputVoltageLtoL              INTEGER,
        pmmInputVoltageLtoN              INTEGER,
        pmmInputPhaseCurrent             INTEGER,
        pmmInputActivePower              INTEGER,
        pmmInputApparentPower            INTEGER,
       pmmInputPowerFactor              INTEGER
    }

pmmInputMeterNum OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The input meter identifier."
    ::= { pmmInputPhaseEntry 1 }

pmmInputPhase OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Input phase index."
    ::= { pmmInputPhaseEntry 2 }

pmmInputVoltageLtoL OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Line-to-line input voltage available.
         Measured in tenths of Volts."
    ::= { pmmInputPhaseEntry 3 }

pmmInputVoltageLtoN OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Line-to-neutral input voltage available.
         Measured in tenths of Volts."
    ::= { pmmInputPhaseEntry 4 }

pmmInputPhaseCurrent OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Input current per phase. Measured in tenths of Amps."
    ::= { pmmInputPhaseEntry 5 }

pmmInputActivePower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Input power per phase. Measured in tenths of kW."
    ::= { pmmInputPhaseEntry 6 }

pmmInputApparentPower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Input power per phase. Measured in tenths of kVA."
    ::= { pmmInputPhaseEntry 7 }

pmmInputPowerFactor OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the power factor of the input per phase.
         A value of 100 representing a unity power factor (1.00).
         Specified in hundredths."
    ::= { pmmInputPhaseEntry 8 }

-- The pmmOutput group
pmmOutputMeterTableSize OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of output meters attached to the system."
    ::= { pmmOutput 1 }

pmmOutputTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PMMOutputEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A list of output meter entries."
    ::= { pmmOutput 2}

pmmOutputEntry OBJECT-TYPE
    SYNTAX PMMOutputEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing information applicable to a
         particular output meter."
    INDEX { pmmOutputMeterIndex }
    ::= { pmmOutputTable 1 }

    PMMOutputEntry ::= SEQUENCE {
        pmmOutputMeterIndex                      INTEGER,
        pmmOutputFrequency                       INTEGER,
        pmmOutputTotalActivePower                INTEGER,
        pmmOutputTotalApparentPower              INTEGER,
        pmmOutputTotalPowerFactor                INTEGER,
        pmmOutputActiveEnergyDelivered           Integer32,
        pmmOutputActiveEnergyReceived            Integer32,
        pmmOutputApparentEnergyDelivered         Integer32,
        pmmOutputApparentEnergyReceived          Integer32,
        pmmOutputFrequencyDeviation              INTEGER,
        pmmOutputPowerFactorDeviation            INTEGER,
        pmmOutputMinVoltThreshold                INTEGER,
        pmmOutputLowVoltThreshold                INTEGER,
        pmmOutputHighVoltThreshold               INTEGER,
        pmmOutputMaxVoltThreshold                INTEGER,
        pmmOutputMinCurrentThreshold             INTEGER,
        pmmOutputLowCurrentThreshold             INTEGER,
        pmmOutputHighCurrentThreshold            INTEGER,
        pmmOutputMaxCurrentThreshold             INTEGER,
        pmmOutputMinApparentPowerThreshold       INTEGER,
        pmmOutputMaxApparentPowerThreshold       INTEGER,
        pmmOutputOverActivePowerThreshold        INTEGER,
        pmmOutputPhaseLossThreshold              INTEGER,
        pmmOutputBreakerState                    INTEGER,
        pmmOutputBreakerOpenAlarm                INTEGER
    }

pmmOutputMeterIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The output meter identifier."
    ::= { pmmOutputEntry 1 }

pmmOutputFrequency OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The output frequency in tenths of Hertz."
    ::= { pmmOutputEntry 2 }

pmmOutputTotalActivePower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the total output active power in tenths of kW."
    ::= { pmmOutputEntry 3 }

pmmOutputTotalApparentPower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the total output apparent power in tenths of kVA."
    ::= { pmmOutputEntry 4 }

pmmOutputTotalPowerFactor OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the total power factor. A value of 100 representing
         a unity power factor (1.00). Specified in hundredths."
    ::= { pmmOutputEntry 5 }

pmmOutputActiveEnergyDelivered OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
    "Shows the output active energy delivered in tenths of kWh."
    ::= { pmmOutputEntry 6 }

pmmOutputActiveEnergyReceived OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the output active energy received in tenths of kWh."
    ::= { pmmOutputEntry 7 }

pmmOutputApparentEnergyDelivered OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the output apparent energy delivered in tenths of kVAh."
    ::= { pmmOutputEntry 8 }

pmmOutputApparentEnergyReceived OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Shows the output apparent energy received in tenths of kVAh."
    ::= { pmmOutputEntry 9 }

pmmOutputFrequencyDeviation OBJECT-TYPE
    SYNTAX INTEGER{
        freqDeviationOff              (1),
        freqDeviationPointTwo         (2),
        freqDeviationPointFive        (3),
        freqDeviationOne              (4),
        freqDeviationOnePointFive     (5),
        freqDeviationTwo              (6),
        freqDeviationThree            (7),
        freqDeviationFour             (8),
        freqDeviationFive             (9),
        freqDeviationNine             (10)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Shows the output frequency deviation in Hertz."
    ::= { pmmOutputEntry 10 }

pmmOutputPowerFactorDeviation OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Shows the output power factor deviation. Specified in tenths.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 11 }

pmmOutputMinVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output minimum voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalOutputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 12 }

pmmOutputLowVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output low voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalOutputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 13 }

pmmOutputHighVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..120)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output high voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalOutputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 14 }

pmmOutputMaxVoltThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..120)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output maximum voltage condition
         will be generated. Specified as percent deviation from
         nominal voltage represented in the OID pmmDeviceNominalOutputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 15 }

pmmOutputMinCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output minimum current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 16 }

pmmOutputLowCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output low current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 17 }

pmmOutputHighCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..110)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output high current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 18 }

pmmOutputMaxCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output maximum current condition will be generated.
         Specified as a percent of the panel breaker rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 19 }

pmmOutputMinApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output minimum apparent power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 20 }

pmmOutputMaxApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..110)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output maximum apparent power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 21 }

pmmOutputOverActivePowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold above which an output over active power condition will be generated.
         Specified as a percent deviation from nominal power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 22 }

pmmOutputPhaseLossThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which an output phase loss condition will be generated.
         Specified as a percent deviation from nominal voltage represented
         in the OID pmmDeviceNominalOutputVoltage.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmOutputEntry 23 }

pmmOutputBreakerState OBJECT-TYPE
    SYNTAX INTEGER {
        open   (1),
        closed (2),
        unknown(3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This value indicates the current state of output breaker.
         1 will indicate open,
         2 will indicate closed,
         3 will indicate unknown."
    ::= { pmmOutputEntry 24 }

pmmOutputBreakerOpenAlarm OBJECT-TYPE
    SYNTAX INTEGER {
        enabled    (1),
        disabled   (2),
        unknown    (3)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Breaker open alarm status.
         1 will indicate enabled,
         2 will indicate disabled,
         3 will indicate unknown."
    ::= { pmmOutputEntry 25 }

pmmOutputPhaseTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PMMOutputPhaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A list of output table entries.
         The number of entries is given by the value of
         pmmOutputMeterTableSize OID."
    ::= { pmmOutput 3 }

pmmOutputPhaseEntry OBJECT-TYPE
    SYNTAX PMMOutputPhaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing information applicable to a
         particular output phase."
    INDEX { pmmOutputMeterNum, pmmOutputPhase }
    ::= { pmmOutputPhaseTable 1 }

    PMMOutputPhaseEntry ::= SEQUENCE {
        pmmOutputMeterNum                 INTEGER,
        pmmOutputPhase                    INTEGER,
        pmmOutputVoltageLtoL              INTEGER,
        pmmOutputVoltageLtoN              INTEGER,
        pmmOutputPhaseCurrent             INTEGER,
        pmmOutputActivePower              INTEGER,
        pmmOutputApparentPower            INTEGER,
        pmmOutputPowerFactor              INTEGER
    }

pmmOutputMeterNum OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The output meter identifier."
    ::= { pmmOutputPhaseEntry 1 }

pmmOutputPhase OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Output phase index."
    ::= { pmmOutputPhaseEntry 2 }

pmmOutputVoltageLtoL OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Line-to-line output voltage available.
         Measured in tenths of Volts."
    ::= { pmmOutputPhaseEntry 3 }

pmmOutputVoltageLtoN OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Line-to-neutral output voltage available.
         Measured in tenths of Volts."
    ::= { pmmOutputPhaseEntry 4 }

pmmOutputPhaseCurrent OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Load current per phase. Measured in tenths of Amps."
    ::= { pmmOutputPhaseEntry 5 }

pmmOutputActivePower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Output power per phase. Measured in tenths of kW."
    ::= { pmmOutputPhaseEntry 6 }

pmmOutputApparentPower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Output power per phase. Measured in tenths of kVA."
    ::= { pmmOutputPhaseEntry 7 }

pmmOutputPowerFactor OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the power factor of the output per phase.
         A value of 100 representing a unity power factor (1.00).
         Specified in hundredths."
    ::= { pmmOutputPhaseEntry 8 }

-- The pmmBranch group

pmmnumofBranchMeters OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of branch meters attached to the system."
    ::= { pmmBranch 1 }

pmmBranchBreakerTableSize OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
    "The number of branch breaker entries."
    ::= { pmmBranch 2 }

pmmBranchBreakerTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PMMBranchBreakerEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
    "A list of branch breaker table entries.
     The number of entries is contained in the pmmBranchBreakerTableSize OID."
    ::= { pmmBranch 3 }

pmmBranchBreakerEntry OBJECT-TYPE
    SYNTAX PMMBranchBreakerEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing information applicable to a
         particular branch breaker (panel/circuit position)."
    INDEX {pmmBranchCircuitMeterIndex, pmmBranchCircuitIndex }
    ::= { pmmBranchBreakerTable 1 }

    PMMBranchBreakerEntry ::= SEQUENCE {
        pmmBranchCircuitMeterIndex                               INTEGER,
        pmmBranchCircuitIndex                                    INTEGER,
        pmmBranchCircuitNumberOfPoles                            INTEGER,
        pmmBranchCircuitPhase                                    DisplayString,
        pmmBranchCircuitBreakerIdentifier                        DisplayString,
        pmmBranchCircuitLoadIdentifier                           DisplayString,
        pmmBranchCircuitCurrent                                  INTEGER,
        pmmBranchCircuitBreakerRating                            INTEGER,
        pmmBranchCircuitTotalActivePower                         INTEGER,
        pmmBranchCircuitTotalApparentPower                       INTEGER,
        pmmBranchCircuitEnergyUsage                              Gauge,
        pmmBranchCircuitEnergyUsageResetDate                     DisplayString,
        pmmBranchCircuitTotalPowerFactor                         INTEGER,
        pmmBranchCircuitBreakerState                             INTEGER,
        pmmBranchCircuitMinCurrentThreshold                      INTEGER,
        pmmBranchCircuitLowCurrentThreshold                      INTEGER,
        pmmBranchCircuitHighCurrentThreshold                     INTEGER,
        pmmBranchCircuitMaxCurrentThreshold                      INTEGER,
        pmmBranchCircuitMinApparentPowerThreshold                INTEGER,
        pmmBranchCircuitMaxApparentPowerThreshold                INTEGER,
        pmmBranchCircuitAlaramGeneration                         INTEGER,
       pmmBranchCircuitBreakerOpenAlarm                          INTEGER
    }

pmmBranchCircuitMeterIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
    "Index of branch circuit meter in the table."
    ::= { pmmBranchBreakerEntry 1 }

pmmBranchCircuitIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The branch circuit index."
    ::= { pmmBranchBreakerEntry 2 }

pmmBranchCircuitNumberOfPoles OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of poles."
    ::= { pmmBranchBreakerEntry 3 }

pmmBranchCircuitPhase OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The phase associated with branch circuit."
    ::= { pmmBranchBreakerEntry 4 }

pmmBranchCircuitBreakerIdentifier OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The branch circuit identifier."
    ::= { pmmBranchBreakerEntry 5 }

pmmBranchCircuitLoadIdentifier OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Identifies the name or location of the branch circuit load."
    ::= { pmmBranchBreakerEntry 6 }

pmmBranchCircuitCurrent OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The branch circuit current Measured in tenths of Amps."
    ::= { pmmBranchBreakerEntry 7 }

pmmBranchCircuitBreakerRating OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The rating of the branch circuit breaker in Amps."
    ::= { pmmBranchBreakerEntry 8 }

pmmBranchCircuitTotalActivePower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Branch circuit total power. Measured in tenths
         of kW."
    ::= { pmmBranchBreakerEntry 9 }

pmmBranchCircuitTotalApparentPower OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Branch circuit total apparent power. Measured in
         tenths of kVA."
    ::= { pmmBranchBreakerEntry 10 }

pmmBranchCircuitEnergyUsage OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the energy usage in tenths of kWh or -1 when not
         available."
    ::= { pmmBranchBreakerEntry 11 }

pmmBranchCircuitEnergyUsageResetDate OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The date that the kWh usage was reset, in the format mm/dd/yyyy."
    ::= { pmmBranchBreakerEntry 12 }

pmmBranchCircuitTotalPowerFactor OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates the total power factor of the branch circuit output.
         A value of 100 representing a unity power factor (1.00)
         Specified in hundredths."
    ::= { pmmBranchBreakerEntry 13 }

pmmBranchCircuitBreakerState OBJECT-TYPE
    SYNTAX INTEGER {
        open    (1),
        closed  (2),
        unknown (3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This value indicates the current state of branch
         circuit breaker.
         1 will indicate open,
         2 will indicate closed,
         3 will indicate unknown."
    ::= { pmmBranchBreakerEntry 14 }

pmmBranchCircuitMinCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit minimum current
         condition will be generated.
         Specified as a percent of the branch breaker rating
         represented in the OID pmmBranchCircuitBreakerRating
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 15 }

pmmBranchCircuitLowCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit low current
         condition will be generated.
         Specified as a percent of the branch breaker rating
         represented in the OID pmmBranchCircuitBreakerRating
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 16 }

pmmBranchCircuitHighCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit high current
         condition will be generated.
         Specified as a percent of the branch breaker rating
         represented in the OID pmmBranchCircuitBreakerRating
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 17 }

pmmBranchCircuitMaxCurrentThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit maximum current
         condition will be generated.
         Specified as a percent of the branch breaker rating
         represented in the OID pmmBranchCircuitBreakerRating
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 18 }

pmmBranchCircuitMinApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit minimum apparent
         power condition will be generated.
         Specified as a percent of the branch breaker apparent power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 19 }

pmmBranchCircuitMaxApparentPowerThreshold OBJECT-TYPE
    SYNTAX INTEGER (0..100)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Threshold below which a branch circuit maximum apparent
         power condition will be generated.
         Specified as a percent of the branch breaker apparent power rating.
         A value of zero indicates that the threshold is disabled."
    ::= { pmmBranchBreakerEntry 20 }

pmmBranchCircuitAlaramGeneration OBJECT-TYPE
    SYNTAX INTEGER   {
    enabled    (1),
    disabled   (2),
    unknown    (3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Alarm generation status.
         1 will indicate enabled,
         2 will indicate disabled,
         3 will indicate unknown."
    ::= { pmmBranchBreakerEntry 21 }

pmmBranchCircuitBreakerOpenAlarm OBJECT-TYPE
    SYNTAX INTEGER  {
        enabled    (1),
        disabled   (2),
        unknown    (3)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Breaker open alarm status.
         1 will indicate enabled,
         2 will indicate disabled,
         3 will indicate unknown."
    ::= { pmmBranchBreakerEntry 22 }

-- charger group 

chargerIdentModel OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A character string identifying the model name of the Charger.
         This value is set at the factory."
    ::= { chargerIdent 1 }

chargerBasicIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An 8 byte ID string identifying the Charger. This object
       can be set by the administrator."
   ::= { chargerIdent 2 }

chargerIdentSerialNumber OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A character string identifying the serial number of the Charger.
         This value is set at the factory."
    ::= { chargerIdent 3 }

chargerIdentModelType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The detailed model information of the Charger."
   ::= { chargerIdent 4 }
   
-- Input Phase Table

chargerInputPhaseTable OBJECT-TYPE
   SYNTAX     SEQUENCE OF ChargerInputPhaseEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
           "A list of input table entries.  The number of entries
           is given by the sum of the Charger input phases."
   ::= { chargerInput 1 }

chargerInputPhaseEntry OBJECT-TYPE
   SYNTAX     ChargerInputPhaseEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
           "An entry containing information applicable to a
           particular input phase."
   INDEX { chargerInputPhaseTableIndex}
   ::= { chargerInputPhaseTable 1 }

ChargerInputPhaseEntry ::= SEQUENCE {
   chargerInputPhaseTableIndex      INTEGER,
   chargerInputPhaseVoltage         INTEGER,
   chargerInputPhaseMinVoltage      INTEGER,
   chargerInputPhaseMaxVoltage      INTEGER,
   chargerInputPhaseCurrent         INTEGER
}

chargerInputPhaseTableIndex OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The input identifier."
   ::= { chargerInputPhaseEntry 1 }

chargerInputPhaseVoltage OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The input voltage in VAC, or -1 if it's unsupported
           by this Charger."
   ::= { chargerInputPhaseEntry 2 }

chargerInputPhaseMinVoltage OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The lowest input voltage to the Charger during the previous minute of operation, or -1 if it's unsupported
            by this Charger."
   ::= { chargerInputPhaseEntry 3 }

chargerInputPhaseMaxVoltage OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
            "The highest input voltage to the Charger during the previous minute of operation, or -1 if it's unsupported
            by this Charger."
   ::= { chargerInputPhaseEntry 4 }

chargerInputPhaseCurrent OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The input current in 0.1 amperes, or -1 if it's
           unsupported by this Charger."
   ::= { chargerInputPhaseEntry 5 }

 -- end of Input table
 
 -- the charger output group
chargerOutputStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      initialising(2),
      standby(3),
      onBattery(4),
      floatCharging(5),
      boostCharging(6),
      initialCharging(7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current state of the Charger. If the Charger is unable to
       determine the state of the Charger this variable is set
       to unknown(1)."
   ::= { chargerOutput 1 }
   
chargerOutputVauxVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Load output voltage, measured in VDC."
   ::= { chargerOutput 2 }
   
chargerOutputTotalCurrent OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current in amperes drawn by the load on the Charger."
   ::= { chargerOutput 3 }
 
chargerOutputLoad OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current Charger load expressed in percent
       of the total rated current of the charger."
   ::= { chargerOutput 4 }
-- charger end
-- The xATSIdent group

xATSIdentProductName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the transfer switch unit."
   ::= { xATSIdent 1 }

xATSIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the transfer switch.
       This value is set at the factory."
   ::= { xATSIdent 2 }

xATSIdentFirmwareAppRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application firmware revision of the  transfer switch."
   ::= {  xATSIdent 3 }

xATSIdentFirmwareAppOSRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application operating system firmware revision of the transfer switch."
   ::= {  xATSIdent 4 }

xATSIdentFirmwareControllerRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the transfer switch controller firmware revision."
   ::= {  xATSIdent 5 }

xATSIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the transfer switch was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { xATSIdent 6 }

xATSIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of the transfer switch.
       This value is set at the factory."
   ::= { xATSIdent 7 }

xATSIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of the transfer switch.
        This value is set at the factory."
   ::= { xATSIdent 8 }

--  The xATSDevice group

xATSDeviceServiceType OBJECT-TYPE
    SYNTAX INTEGER  {
        threeWire  (1),
        fourWire   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of utility input to the transfer switch.
       Either 3 wires (delta), or 4 wires (wye)."
   ::= { xATSDevice 1 }

xATSDeviceNominalVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
      "The nominal line-to-neutral system voltage.
       Measured in Volts,  line-to-line for a 3-wire service or
       line-to-neutral for a 4-wire service. -1 if not available."
   ::= { xATSDevice 2 }

xATSDeviceNominalFrequency OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The nominal system frequency. Measured in tenths of Hertz.
       -1 if not available."
   ::= { xATSDevice 3 }

xATSDeviceTransferSwitchRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The rating of the transfer switch.
       Measured in Amps."
   ::= { xATSDevice 4 }

xATSDeviceDCBackUpPresent OBJECT-TYPE
   SYNTAX     INTEGER{
      yes     (1),
      no      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates if a DC backup is present or not."
   ::= { xATSDevice 5 }

-- The xATS Switch Status group

xATSSwitchStatusSelectedSource OBJECT-TYPE
   SYNTAX     INTEGER{
      none         (1),
      source1      (2),
      source2      (3),
      fault        (4),
      unknown      (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The source which is currently selected, i.e. supplying power to the load."
   ::= { xATSSwitchStatus 1 }

xATSSwitchStatusOperationalMode OBJECT-TYPE
   SYNTAX     INTEGER{
      automatic                 (1),
      notInAutoAbnormal         (2),
      notInAuto                 (3),
      unknown                   (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current operating mode of the transfer switch. When the ATS is in
       automatic mode, generator starting and ATS transferring is all done automatically
       as needed based on the state of source 1.  Automatic operation is halted when the
       ATS is in either of the notInAuto modes.
       A mode of notInAuto indicates that the automatic operation switch is in the
       disabled position, as indicated by the xATSSwitchStatusAutomaticOperationSwitch OID.
       The notInAutoAbnormal condition indicates that an abnormal
       condition has caused the transfer switch to halt automatic operation.
       In this case, traps can indicate the exact problem. In the case of
       notInAutoAbnormal, refer to the operation manual for details
       on how debug the condition and restore automatic operation."
   ::= { xATSSwitchStatus 2 }

xATSSwitchStatusAutomaticOperationSwitch OBJECT-TYPE
   SYNTAX     INTEGER{
      disabled   (1),
      enabled    (2),
      unknown    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the automatic operation switch on the front of the transfer switch."
   ::= { xATSSwitchStatus 3 }

xATSSwitchStatusEngineStartSignal OBJECT-TYPE
   SYNTAX     INTEGER{
      run     (1),
      stop    (2),
      unknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the Start/Stop contact which signals the generator
       engine to start/run. When the ATS is in automatic mode,
       generator starting/stopping is under ATS control."
   ::= { xATSSwitchStatus 4 }

-- The xATS Switch Setting group

xATSSwitchSettingsLowVoltageTransferPoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The lowest acceptable voltage condition at source 1.
       When any phase of source 1 is lower than this voltage,
       source quality is considered bad and the generator run signal
       is asserted to begin generator operation.
       Specified in volts,  line-to-line for a 3-wire service or
       line-to-neutral for a 4-wire service.
       -1 if not available."
   ::= { xATSSwitchSettings 1 }

xATSSwitchSettingsHighVoltageTransferPoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The highest acceptable voltage condition at source 1.
       When any phase of source 1 is greater than this voltage,
       source quality is considered bad and the generator run signal
       is asserted to begin generator operation.
       Specified in volts,  line-to-line for a 3-wire service or
       line-to-neutral for a 4-wire service.
       -1 if not available."
   ::= { xATSSwitchSettings 2 }

xATSSwitchSettingsMaxFrequencyDeviation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum acceptable frequency deviation condition from nominal at source 1.
       When source 1 frequency is outside the specified range,
       source quality is considered bad and the generator run signal
       is asserted to begin generator operation.
       Specified in  tenths of Hertz above or below nominal.
       A value of zero indicates that frequency is ignored when
       determining source quality.
       -1 if not available."
   ::= { xATSSwitchSettings 3 }

xATSSwitchSettingsMinPhaseBalance OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum required phase balance at source 1.
       When the percentage difference between the minimum and maximum
       phase voltage measurements at source 1 is greater than this value,
       source quality is considered bad and the generator run signal
       is asserted to begin generator operation.
       Specified as a percentage. A value of zero indicates that phase balance
       is ignored when determining source quality. -1 if not available."
   ::= { xATSSwitchSettings 4 }

xATSSwitchSettingsNominalRotation OBJECT-TYPE
   SYNTAX     INTEGER{
      abc     (1),
      cba     (2),
      any     (3),
      unknown (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The nominal phase rotation (or phase sequence) required by the load.
       For certain types of equipment, such as rotating machinery, phase rotation
       is critical for proper operation as it determines the direction which motors
       will rotate (clockwise or counterclockwise).
       Source quality will be seen as bad if the rotation measured at that
       ATS input does not match this setting.
       If this setting is set to any, phase rotation is ignored."
   ::= { xATSSwitchSettings 5 }

xATSSwitchSettingsAllowClosedTransfer OBJECT-TYPE
   SYNTAX INTEGER{
      yes     (1),
      no      (2),
      unknown (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting enables seamless (closed) transfers between sources.
       When possible, both source 1 and source 2 are closed to the output
       for a brief time. If closed transfer is not possible within the amount
       of time specified by the xATSSwitchSettingsMaxSyncTime OID,
       an open transfer will be executed."
   ::= { xATSSwitchSettings 6 }

xATSSwitchSettingsMaxSyncTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When attempting/seeking to perform a closed transfer, this setting defines
       the maximum time allowed before the transfer switch will give up and perform
       an open transfer. Specified in seconds.
       -1 if not available."
   ::= { xATSSwitchSettings 7 }

xATSSwitchSettingsNeutralTransferTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting defines how long both source 1 and source 2 will be
       disconnected from the output, during an open transfer.
       Specified in seconds.
       -1 if not available."
   ::= { xATSSwitchSettings 8 }

xATSSwitchSettingsClearLatchedAlarms OBJECT-TYPE
   SYNTAX INTEGER{
      yes        (1),
      no         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Clears any latched alarm conditions."
   ::= { xATSSwitchSettings 9 }

xATSSwitchSettingsSetToFactoryDefaults OBJECT-TYPE
   SYNTAX INTEGER{
      yes        (1),
      no         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sets all transfer switch settings to factory default values."
   ::= { xATSSwitchSettings 10 }


-- The xATSSwitchTimers group

   xATSSwitchTimersTableSize OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The number of transfer switch timer entries."
     ::= { xATSSwitchTimers 1 }

   xATSSwitchTimersTable OBJECT-TYPE
     SYNTAX SEQUENCE OF XATSSwitchTimersEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "A list of timers supported by ATS.
         The number of entries is contained in the xATSSwitchTimersTableSize OID."
     ::= { xATSSwitchTimers 2 }

   xATSSwitchTimersEntry OBJECT-TYPE
     SYNTAX XATSSwitchTimersEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "An entry containing information about an individual ATS timer."
     INDEX  { xATSSwitchTimersIndex }
     ::= { xATSSwitchTimersTable 1 }

   XATSSwitchTimersEntry ::=
     SEQUENCE {
        xATSSwitchTimersIndex                INTEGER,
        xATSSwitchTimersName                 DisplayString,
        xATSSwitchTimersAbort                INTEGER,
        xATSSwitchTimersStatus               INTEGER,
        xATSSwitchTimersRemainingTime        INTEGER,
        xATSSwitchTimersDelaySetting         INTEGER
     }

xATSSwitchTimersIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of timer entries in the table."
   ::= { xATSSwitchTimersEntry 1 }

xATSSwitchTimersName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Name of the individual timer.Refer to ATS operation manual,
       or on-line help, for detailed descriptions of ATS timers."
   ::= { xATSSwitchTimersEntry 2 }

xATSSwitchTimersAbort OBJECT-TYPE
   SYNTAX INTEGER{
      yes  (1),
      no   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This aborts the individual timer."
   ::= { xATSSwitchTimersEntry 3 }

xATSSwitchTimersStatus OBJECT-TYPE
   SYNTAX INTEGER{
      inactive  (1),
      active    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the individual timer. Designates whether this timer
       entry is currently running or inactive."
   ::= { xATSSwitchTimersEntry 4 }

xATSSwitchTimersRemainingTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time remaining for this timer entry.
       Specified in seconds."
   ::= { xATSSwitchTimersEntry 5 }

xATSSwitchTimersDelaySetting OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The delay settings associated with this timer entry.
       When this timer entry is active, the timer value must exceed this setting
       before the ATS behavior associated with this timer is executed.
       Refer to ATS operation manual, or on-line help, for detailed
       descriptions of ATS timers."
   ::= { xATSSwitchTimersEntry 6 }

-- The xATSSwitchBlockMap group

   xATSSwitchBlockMapTableSize OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The number of blocking map entries, or how many ATS actions can be blocked."
     ::= { xATSSwitchBlockMap 1 }

   xATSSwitchBlockMapTable OBJECT-TYPE
     SYNTAX SEQUENCE OF XATSSwitchBlockMapEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "A list of blocking maps supported by the ATS.
         The number of entries is contained in the xATSSwitchBlockMapTableSize OID."
     ::= { xATSSwitchBlockMap 2 }

   xATSSwitchBlockMapEntry OBJECT-TYPE
     SYNTAX XATSSwitchBlockMapEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "An entry containing information about a specific ATS blocking map."
     INDEX  { xATSSwitchBlockMapIndex }
     ::= { xATSSwitchBlockMapTable 1 }

   XATSSwitchBlockMapEntry ::=
     SEQUENCE {
        xATSSwitchBlockMapIndex            INTEGER,
        xATSSwitchBlockMapName             DisplayString,
        xATSSwitchBlockMapStatus           INTEGER,
        xATSSwitchBlockMapSetting          INTEGER
    }

   xATSSwitchBlockMapIndex OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "Index of blocking map entries in the table."
     ::= { xATSSwitchBlockMapEntry 1 }

   xATSSwitchBlockMapName OBJECT-TYPE
     SYNTAX DisplayString
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "A string describing the ATS action to be blocked."
     ::= { xATSSwitchBlockMapEntry 2 }

   xATSSwitchBlockMapStatus OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
       "Represents the status of this blocking map entry, in bit-mapped format.
        A non-zero value indicates that this entry's ATS action is currently being blocked.
        The bit(s) set indicate which input(s) are causing the blocking (bit0, bit1, etc).

        bit 0 - Contact 1
        bit 1 - Contact 2
        bit 2 - Contact 3
        bit 3 - Contact 4."
     ::= { xATSSwitchBlockMapEntry 3 }

   xATSSwitchBlockMapSetting OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
       "This setting designates the inputs that block the ATS action
        The mapping is specified as a bit-field, where each bit set indicates
        the input that blocks the ATS action associated with the entry.

        bit 0 - Contact 1
        bit 1 - Contact 2
        bit 2 - Contact 3
        bit 3 - Contact 4."
     ::= { xATSSwitchBlockMapEntry 4 }

-- The xATSSwitchStatistics group

   xATSSwitchStatisticsTableSize OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The number of transfer switch statistics entries."
     ::= { xATSSwitchStatistics 1 }

   xATSSwitchStatisticsTable OBJECT-TYPE
     SYNTAX SEQUENCE OF XATSSwitchStatisticsEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "A list of statistics supported by ATS.
         The number of entries is contained in the xATSSwitchStatisticsTableSize OID."
     ::= { xATSSwitchStatistics 2 }

   xATSSwitchStatisticsEntry OBJECT-TYPE
     SYNTAX XATSSwitchStatisticsEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "An entry containing information about an individual ATS statistic."
     INDEX  { xATSSwitchStatisticsIndex }
     ::= { xATSSwitchStatisticsTable 1 }

   XATSSwitchStatisticsEntry ::=
     SEQUENCE {
        xATSSwitchStatisticsIndex             INTEGER,
        xATSSwitchStatisticsName              DisplayString,
        xATSSwitchStatisticsValue             DisplayString,
        xATSSwitchStatisticsReset             INTEGER
     }

   xATSSwitchStatisticsIndex OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "Index of ATS statistics entries in the table."
     ::= { xATSSwitchStatisticsEntry 1 }

   xATSSwitchStatisticsName OBJECT-TYPE
     SYNTAX     DisplayString
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
       "This is the name of the ATS statistic associated with this entry."
     ::= { xATSSwitchStatisticsEntry 2 }

   xATSSwitchStatisticsValue OBJECT-TYPE
     SYNTAX     DisplayString
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
       "This is the value of the ATS statistic associated with this entry."
     ::= { xATSSwitchStatisticsEntry 3 }

   xATSSwitchStatisticsReset OBJECT-TYPE
     SYNTAX INTEGER{
       yes   (1),
       no    (2)
     }
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
       "This will reset the individual ATS statistic associated with this entry."
     ::= { xATSSwitchStatisticsEntry 4 }

-- The xATS Source 1 group

xATSSource1Name OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "String used to identify source 1."
   ::= { xATSSource1 1 }

xATSSource1Position OBJECT-TYPE
   SYNTAX INTEGER{
      open     (1),
      closed   (2),
      tripped  (3),
      unknown  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current position of the switch at source 1."
   ::= { xATSSource1 2 }

xATSSource1Frequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency at source 1 in tenths of Hertz.
       -1 if unavailable."
   ::= { xATSSource1 3 }

xATSSource1Quality OBJECT-TYPE
   SYNTAX INTEGER{
      sourceGood        (1),
      lowVoltage        (2),
      highVoltage       (3),
      phaseImbalance    (4),
      freqOutOfRange    (5),
      badRotation       (6),
      unknown           (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current line quality of source 1."
   ::= { xATSSource1 4 }

xATSSource1Rotation OBJECT-TYPE
   SYNTAX INTEGER{
      abc     (1),
      cba     (2),
      unknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The phase rotation measured at the source 1 input of the ATS.
       The sequence is a reference to the order in which the three phases
       pass the zero-crossing boundary in time."
   ::= { xATSSource1 5 }

xATSSource1TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of input voltage entries at the source 1 input of the ATS."
   ::= { xATSSource1 6 }

   xATSSource1PhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XATSSource1PhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of voltage table entries for source 1. The number of
           entries are the phase entries. The number of entries is contained in the
           xATSSource1TableSize OID."
       ::= { xATSSource1 7 }

   xATSSource1PhaseEntry OBJECT-TYPE
       SYNTAX     XATSSource1PhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular input voltage phase at the source 1 input of the ATS."
       INDEX { xATSSource1Index }
       ::= { xATSSource1PhaseTable 1 }

   XATSSource1PhaseEntry ::= SEQUENCE {
       xATSSource1Index        INTEGER,
       xATSSource1VoltageLtoL  INTEGER,
       xATSSource1VoltageLtoN  INTEGER
      }

   xATSSource1Index OBJECT-TYPE
       SYNTAX INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each phase utilized at source 1."
       ::= { xATSSource1PhaseEntry 1 }

   xATSSource1VoltageLtoL OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Source 1 line-to-line input voltage.
           Measured in tenths of Volts."
       ::= { xATSSource1PhaseEntry 2 }

   xATSSource1VoltageLtoN OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Source 1 line-to-neutral input voltage.
           Measured in tenths of Volts. -1 for a 3-wire service type."
   ::= { xATSSource1PhaseEntry 3 }

-- The xATS Source 2 group

xATSSource2Name OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "String used to identify source 2."
   ::= { xATSSource2 1 }

xATSSource2Position OBJECT-TYPE
   SYNTAX INTEGER{
      open     (1),
      closed   (2),
      tripped  (3),
      unknown  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current position of the switch at source 2."
   ::= { xATSSource2 2 }

xATSSource2Frequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency at source 2 in tenths of Hertz.
       -1 if not available."
   ::= { xATSSource2 3 }

xATSSource2Quality OBJECT-TYPE
   SYNTAX INTEGER{
      sourceGood        (1),
      lowVoltage        (2),
      highVoltage       (3),
      phaseImbalance    (4),
      freqOutOfRange    (5),
      badRotation       (6),
      unknown           (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current line quality of source 2."
   ::= { xATSSource2 4 }

xATSSource2Rotation OBJECT-TYPE
   SYNTAX INTEGER{
      abc     (1),
      cba     (2),
      unknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The phase rotation measured at the source 2 input of the ATS.
       -1 if not available."
   ::= { xATSSource2 5 }

xATSSource2TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of input voltage entries at the source 2 input of the ATS."
   ::= { xATSSource2 6 }

   xATSSource2PhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XATSSource2PhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "A list of voltage table entries for the source 2. The number of
           entries are the phase entries. The number of entries is contained in the
           xATSSource2TableSize OID."
       ::= { xATSSource2 7 }

   xATSSource2PhaseEntry OBJECT-TYPE
       SYNTAX     XATSSource2PhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular input voltage phase at the source 2 input of the ATS."
       INDEX { xATSSource2Index }
       ::= { xATSSource2PhaseTable 1 }

   XATSSource2PhaseEntry ::= SEQUENCE {
       xATSSource2Index        INTEGER,
       xATSSource2VoltageLtoL  INTEGER,
       xATSSource2VoltageLtoN  INTEGER
      }

   xATSSource2Index OBJECT-TYPE
       SYNTAX INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each phase utilized at the source 2."
       ::= { xATSSource2PhaseEntry 1 }

   xATSSource2VoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Source 2 line-to-line input voltage.
           Measured in tenths of Volts."
       ::= { xATSSource2PhaseEntry 2 }

   xATSSource2VoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Source 2 line-to-neutral input voltage.
           Measured in tenths of Volts. -1 for a 3-wire service type."
   ::= { xATSSource2PhaseEntry 3 }

-- The xATSSystemOutput

xATSSystemOutputFrequency OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The system output frequency in tenths of Hertz."
   ::= { xATSSystemOutput 1 }

xATSSystemOutputTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the total system output power in tenths of kW."
   ::= { xATSSystemOutput 2 }

xATSSystemOutputTotalApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Shows the total system output power in tenths of kVA."
   ::= { xATSSystemOutput 3 }

xATSSystemOutputTotalPowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the total power factor of the system output.
       A value of 100 representing a unity power factor (1.00)
       Specified in hundredths."
   ::= { xATSSystemOutput 4 }

xATSSystemOutputFrequencyTolerance OBJECT-TYPE
   SYNTAX     INTEGER{
      freqToleranceOff              (1),
      freqTolerancePointTwo         (2),
      freqTolerancePointFive        (3),
      freqToleranceOne              (4),
      freqToleranceOnePointFive     (5),
      freqToleranceTwo              (6),
      freqToleranceThree            (7),
      freqToleranceFour             (8),
      freqToleranceFive             (9),
      freqToleranceNine             (10)

   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Shows the panel output frequency tolerance in +/- Hertz."
   ::= { xATSSystemOutput 5 }

xATSSystemOutputOverVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an output over voltage condition will be generated.
       Specified as tenths of percent deviation from nominal.
       A value of zero indicates that the threshold is disabled."
   ::= { xATSSystemOutput 6 }

xATSSystemOutputUnderVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an output under voltage condition will be generated.
       Specified as tenths of percent deviation from nominal.
       A value of zero indicates that the threshold is disabled."
   ::= { xATSSystemOutput 7 }

xATSSystemOutputOverCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which an over current condition will be generated.
       Specified as a percent of the transfer switch rating (xATSDeviceTransferSwitchRating OID).
       A value of zero indicates that the threshold is disabled."
   ::= { xATSSystemOutput 8 }

xATSSystemOutputUnderCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which an under current condition will be generated.
       Specified as a percent of the transfer switch rating (xATSDeviceTransferSwitchRating OID).
       A value of zero indicates that the threshold is disabled."
   ::= { xATSSystemOutput 9 }

xATSSystemOutputAlarmDelayThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Delay the generation of an output alarm.
       Specified in seconds."
   ::= { xATSSystemOutput 10 }

xATSSystemOutputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of system output phase entries."
   ::= { xATSSystemOutput 11 }

xATSSystemOutputPhaseTable OBJECT-TYPE
   SYNTAX     SEQUENCE OF XATSSystemOutputPhaseEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
      "A list of system output table entries.
       The number of entries is contained in the xATSSystemOutputTableSize OID."
   ::= { xATSSystemOutput 12 }

   xATSSystemOutputPhaseEntry OBJECT-TYPE
       SYNTAX     XATSSystemOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular system output phase."
       INDEX { xATSSystemOutputPhaseIndex }
       ::= { xATSSystemOutputPhaseTable 1 }

   XATSSystemOutputPhaseEntry ::= SEQUENCE {
       xATSSystemOutputPhaseIndex      INTEGER,
       xATSSystemOutputVoltageLtoL     INTEGER,
       xATSSystemOutputVoltageLtoN     INTEGER,
       xATSSystemOutputPhaseCurrent    INTEGER,
       xATSSystemOutputPower           INTEGER,
       xATSSystemOutputApparentPower   INTEGER,
       xATSSystemOutputPowerFactor     INTEGER
      }

   xATSSystemOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each system output phase utilized in this device."
       ::= { xATSSystemOutputPhaseEntry 1 }

   xATSSystemOutputVoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-line system output voltage available at the circuit panel.
           Measured in tenths of Volts. -1 if not available."
       ::= { xATSSystemOutputPhaseEntry 2 }

   xATSSystemOutputVoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-neutral system output voltage available at the circuit panel.
           Measured in tenths of Volts. -1 for a 3-wire service type or if not available."
       ::= { xATSSystemOutputPhaseEntry 3 }

   xATSSystemOutputPhaseCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "System load current per phase. Measured in Amps.
           -1 if not available."
       ::= { xATSSystemOutputPhaseEntry 4 }

   xATSSystemOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "System output power per phase. Measured in tenths of kW."
       ::= { xATSSystemOutputPhaseEntry 5 }

   xATSSystemOutputApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "system output power per phase. Measured in tenths of kVA."
       ::= { xATSSystemOutputPhaseEntry 6 }

   xATSSystemOutputPowerFactor OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "indicates the power factor of the system output per phase.
           A value of 100 representing a unity power factor (1.00).
           Measured in hundredths."
       ::= { xATSSystemOutputPhaseEntry 7 }

-- xATS TestingStatus group

xATSTestingStatusSelectTestProcess OBJECT-TYPE
   SYNTAX INTEGER {
      engineStartTest      (1),
      systemLoadTest       (2),
      generatorHoldTest    (3),
      cancelTest           (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Type of tests that can be selected when no test has been scheduled.
       engineStartTest and systemLoadTest may be selected when no tests
       are running.  Tests that are selected may be canceled manually."
   ::= { xATSTestingStatus 1 }

xATSTestingStatusTestStatus OBJECT-TYPE
     SYNTAX INTEGER {
        noTestInProcess           (1),
        testPending               (2),
        startingEngine            (3),
        engineWarmingUp           (4),
        awaitingTransferToS2      (5),
        testingWithLoad           (6),
        awaitingRetransferToS1    (7),
        testingWithoutLoad        (8),
        stoppingEngine            (9),
        holdingOnGenerator        (10)
     }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The present system test status/state."
   ::= { xATSTestingStatus 2 }

xATSTestingStatusProfileWarmupTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time that the generator will warm up during a test.
       This is portion of the test when the xATSTestingStatusTestStatus
       OID returns the value engineWarmingUp.
       Specified in seconds."
   ::= { xATSTestingStatus 3 }

xATSTestingStatusProfileLoadedTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time that ATS will apply the system load to the generator
       during a system load test.
       This is portion of the test when the xATSTestingStatusTestStatus
       OID returns the value testingWithLoad.
       Specified in minutes."
   ::= { xATSTestingStatus 4 }

xATSTestingStatusProfileUnloadedTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time that the generator will run following the warm up
       portion of a start test, or the loaded portion of a load test.
       This is portion of the test when the xATSTestingStatusTestStatus
       OID returns the value testingWithoutLoad.
       Specified in seconds."
   ::= { xATSTestingStatus 5 }

-- xATS TestingResults group

xATSTestingResultsLastDateOfTest OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Date of the last test that was performed, either scheduled or manual.
       Test results are available in the xATSTestingResultsLastResult OID.
       Specified in the dd/mm/yyyy format, or 'none' if not available."
   ::= { xATSTestingResults 1 }

xATSTestingResultsLastResult OBJECT-TYPE
   SYNTAX INTEGER {
      noResultsAvailable        (1),
      startTestPassed           (2),
      loadTestPassed            (3),
      startSignalFailure        (4),
      failedGenNotInAuto        (5),
      failedGenEmerStop         (6),
      failedGenShutdown         (7),
      failedGenDidNotStart      (8),
      failedS2NeverGood         (9),
      genFailedDuringWarmup     (10),
      failureOnXferToS1         (11),
      genFailedLoaded           (12),
      failureOnRexferToS2       (13),
      failedOnCooldown          (14),
      genFailedToStop           (15),
      failedAtsInternalFault    (16),
      failedAtsNotInAuto        (17),
      canceledManualTest        (18),
      canceledScheduledTest     (19)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The result of the last ATS/generator system test."
   ::= { xATSTestingResults 2 }

xATSTestingResultsTestLastTestTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time of day at which the last test was performed, either scheduled or manual.
       Test results are available in the xATSTestingResultsLastResult OID.
       Specified in the hh:mm:ss format, or 'none' if not available."
   ::= { xATSTestingResults 3 }

xATSTestingResultsLastCrankDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time spent cranking the generator before it started during the last test.
       Specified in seconds, or -1 if not available."
   ::= { xATSTestingResults 4 }

xATSTestingResultsLastWarmupDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time spent in the engineWarmingUp state during the last system test.
       Specified in seconds, or -1 if not available."
   ::= { xATSTestingResults 5 }

xATSTestingResultsLastLoadedDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time spent in the testingWithLoad state during the last system test.
       Specified in seconds, or -1 if not available."
   ::= { xATSTestingResults 6 }

xATSTestingResultsLastUnloadedDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time spent in the testingWithoutLoad state during the last system test.
       Specified in seconds, or -1 if not available."
   ::= { xATSTestingResults 7 }

-- xATS TestingSchedule group

xATSTestingScheduleFrequency OBJECT-TYPE
    SYNTAX INTEGER  {
        never   (1),
        daily   (2),
        weekly  (3),
        monthly (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The frequency of running scheduled tests."
   ::= { xATSTestingSchedule 1 }

xATSTestingScheduleTestDay OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The desired day for the scheduled test. This object applies only
       when the xATSTestingScheduleFrequency OID is set to weekly or monthly.
       For weekly test frequency, the string is the day the test will be run.
       For monthly test frequency, the string indicates the day,
       and the instance within the month.
       For example, for monthly frequency: 2nd Sunday, 3rd Monday, 4th Tuesday,
                    for weekly frequency: Sunday, Monday, Tuesday."
   ::= { xATSTestingSchedule 2 }

xATSTestingScheduleTestTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The time of day that the scheduled test will occur.
       Specified in the format hh:mm."
   ::= { xATSTestingSchedule 3 }

xATSTestingScheduleTestWithLoadInterval OBJECT-TYPE
   SYNTAX INTEGER {
      applyLoadEveryTest          (1),
      neverApplyLoad              (2),
      applyLoadMonthly            (3),
      applyLoadMonthlyDetailed    (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting specifies which system tests should include applying the
       load to the generator. The applyLoadMonthlyDetailed entry
       in the list will apply load once, for each month represented in the
       xATSTestingScheduleTestWithLoadSelectMonth OID."
   ::= { xATSTestingSchedule 4 }

xATSTestingScheduleTestWithLoadSelectMonth OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The detailed selection for testing with load on a month-by-month basis.
       This object is applicable when the xATSTestingScheduleTestWithLoadInterval
       is set to applyLoadMonthlyDetailed. Otherwise this selection will be ignored.
       Format for this string is a comma-separated entry of months.
       For example: Jan,Mar,Dec.
       The string will return 'No Months Scheduled' if no months have been selected."
   ::= { xATSTestingSchedule 5 }

xATSTestingScheduleNextTestDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the next scheduled test, in the format dd-mmm-yyyy."
   ::= { xATSTestingSchedule 6 }

-- xATSTestingSimulatePowerFail group

xATSTestingSimulatePowerFailTest OBJECT-TYPE
   SYNTAX     INTEGER{
      cancelSimulation         (1),
      fiveSecondsSimulation    (2),
      tenSecondsSimulation     (3),
      thirtySecondsSimulation  (4),
      oneMinuteSimulation      (5),
      threeMinutesSimulation   (6),
      fiveMinutesSimulation    (7),
      tenMinutesSimulation     (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This object executes a simulated power failure for the duration indicated.
       Simulation can be aborted by selecting cancelSimulation."
   ::= { xATSTestingSimulatePowerFail 1 }

xATSTestingSimulatePowerFailTimeRemaining OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Indicates the time remaining in seconds, for a simulated power failure.
       a value of zero indicates that simulated power failure is not active."
   ::= { xATSTestingSimulatePowerFail 2 }

-- The xATS Input Contact group

xATSInputContactNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported by the ATS."
   ::= { xATSInputContacts 1 }

xATSInputContactTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of input contact entries."
   ::= { xATSInputContacts 2 }

xATSInputContactTable OBJECT-TYPE
   SYNTAX SEQUENCE OF XATSInputContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the ATS.
       The number of entries is contained in the
       xATSInputContactTableSize OID."
   ::= { xATSInputContacts 3 }

   xATSInputContactEntry OBJECT-TYPE
      SYNTAX XATSInputContactEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A contact entry containing information for a given contact."
      INDEX  { xATSInputContactNumber }
      ::= { xATSInputContactTable 1 }

   XATSInputContactEntry ::=
      SEQUENCE {
         xATSInputContactNumber    INTEGER,
         xATSInputContactName      DisplayString,
         xATSInputContactNormalState           INTEGER,
         xATSInputContactCurrentState          INTEGER
      }

   xATSInputContactNumber OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "An index identifying the contact on the ATS."
      ::= { xATSInputContactEntry 1 }

   xATSInputContactName OBJECT-TYPE
     SYNTAX DisplayString
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
        "The description of the purpose/use of the contact."
     ::= { xATSInputContactEntry 2 }

   xATSInputContactNormalState OBJECT-TYPE
     SYNTAX INTEGER {
        open   (1),
        closed (2)
     }
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
        "The normal operating position of the contact."
     ::= { xATSInputContactEntry 3 }

   xATSInputContactCurrentState OBJECT-TYPE
     SYNTAX INTEGER {
        open   (1),
        closed (2)
     }
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "This value indicates the current state of the contact."
     ::= { xATSInputContactEntry 4 }

-- the xATS OutputRelays group

   xATSOutputRelayNumRelays OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The number of output relays supported by the ATS."
     ::= { xATSOutputRelays 1 }

   xATSOutputRelayTableSize OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The number of output relay entries."
     ::= { xATSOutputRelays 2 }

   xATSOutputRelayTable OBJECT-TYPE
     SYNTAX SEQUENCE OF XATSOutputRelayEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "A list of output relays supported by the ATS.
        The number of entries is contained in the
        xATSOutputRelayTableSize OID."
     ::= { xATSOutputRelays 3 }

   xATSOutputRelayEntry OBJECT-TYPE
     SYNTAX XATSOutputRelayEntry
     ACCESS not-accessible
     STATUS mandatory
     DESCRIPTION
        "A output relay entry containing information for a given contact."
     INDEX  { xATSOutputRelayNumber }
     ::= { xATSOutputRelayTable 1 }

   XATSOutputRelayEntry ::=
     SEQUENCE {
        xATSOutputRelayNumber           INTEGER,
        xATSOutputRelayName             DisplayString,
        xATSOutputRelayNormalState      INTEGER,
        xATSOutputRelayCurrentState     INTEGER
     }

   xATSOutputRelayNumber OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "An index identifying the output relay on the ATS."
     ::= { xATSOutputRelayEntry 1 }

   xATSOutputRelayName OBJECT-TYPE
     SYNTAX DisplayString
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
       "The description of the purpose/use of the output relay."
     ::= { xATSOutputRelayEntry 2 }

   xATSOutputRelayNormalState OBJECT-TYPE
     SYNTAX INTEGER {
        open   (1),
        closed (2)
     }
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
       "The normal operating position of the output relay."
     ::= { xATSOutputRelayEntry 3 }

   xATSOutputRelayCurrentState OBJECT-TYPE
     SYNTAX INTEGER {
        open   (1),
        closed (2)
     }
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
       "This value indicates the current state of the output relay."
     ::= { xATSOutputRelayEntry 4 }

-- The xATS Generator Ident group

xATSGeneratorIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of the generator.
       This value is set at the factory."
   ::= { xATSGeneratorIdent 1 }

xATSGeneratorIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of the generator.
       This value is set at the factory."
   ::= { xATSGeneratorIdent 2 }

xATSGeneratorIdentDateofManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying when the generator was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { xATSGeneratorIdent 3 }

xATSGeneratorIdentVoltageConfiguration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage for which the generator's alternator is designed.
       Specified in Volts line-to-line."
   ::= { xATSGeneratorIdent 4 }

xATSGeneratorIdentMaxPowerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The max power rating of the generator. Specified in kW."
   ::= { xATSGeneratorIdent 5 }

xATSGeneratorIdentAlternatorFrequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency for which the generator's alternator is designed.
       Specified in Hertz."
   ::= { xATSGeneratorIdent 6 }

-- The xATS Generator Status group

xATSGeneratorStatusGeneratorName OBJECT-TYPE
   SYNTAX     DisplayString
   ACCESS     read-write
   STATUS     mandatory
   DESCRIPTION
       "The name or label for the generator connected to the source 2 of the ATS."
   ::= { xATSGeneratorStatus 1 }

xATSGeneratorStatusOperational OBJECT-TYPE
   SYNTAX     INTEGER{
      nocomm         (1),
      off            (2),
      ready          (3),
      starting       (4),
      idle           (5),
      running        (6),
      normalStop     (7),
      emergencyStop  (8),
      notInAuto      (9),
      shutdown       (10),
      unknown        (11)
   }
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
       "The operational status of the generator. unavailable when unrecognized status is received."
   ::= { xATSGeneratorStatus 2 }

xATSGeneratorStatusModeSwitchPosition OBJECT-TYPE
   SYNTAX     INTEGER{
      off        (1),
      manual     (2),
      automatic  (3),
      unknown    (4)
   }
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
       "The position of the generator's auto-mode switch.
        In automatic mode, the generator is started and stopped via the
        remote start contact, which has state indicated in the
        xATSGeneratorStatusRemoteStart OID.
        In manual mode generator start/stop control is via local command only.
        Off prevents the generator from running."
   ::= { xATSGeneratorStatus 3 }

xATSGeneratorStatusRemoteStart OBJECT-TYPE
   SYNTAX INTEGER{
      stop     (1),
      run      (2),
      unknown  (3)
   }
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
       "The status of the generator's remote start contact, which is
        provided as an output from the transfer switch to start/stop the
        generator when in automatic mode."
   ::= { xATSGeneratorStatus 4 }

-- The xATS Generator Advanced Status group

xATSGeneratorAdvStatusBatteryVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage of the generator's starting battery.
       Measured in tenths of VDC, or -1 if not available."
   ::= { xATSGeneratorAdvStatus 1 }

xATSGeneratorAdvStatusOilPressure OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The generator's engine oil pressure.
       Measured in tenths of Psi or kPa, based on the
       value of the xATSGeneratorSettingsMetricUnit OID,
       or -1 if not available."
   ::= { xATSGeneratorAdvStatus 2 }

xATSGeneratorAdvStatusCoolantTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Current coolant temperature in the generator.
       Measured in degrees Celsius or Fahrenheit, based on the
       value of the xATSGeneratorSettingsMetricUnit OID,
       or -1 if not available."
   ::= { xATSGeneratorAdvStatus 3 }

xATSGeneratorAdvStatusEngineRPM OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Current engine speed of the generator.
       Measured in RPM, or -1 if not available."
   ::= { xATSGeneratorAdvStatus 4 }

xATSGeneratorAdvStatusOilLevel OBJECT-TYPE
   SYNTAX     INTEGER{
      ok        (1),
      low       (2),
      unknown   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates adequate oil level in the generator."
   ::= { xATSGeneratorAdvStatus 5 }

xATSGeneratorAdvStatusCoolantLevel OBJECT-TYPE
   SYNTAX     INTEGER{
      ok         (1),
      low        (2),
      unknown    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates adequate coolant level in the generator."
   ::= { xATSGeneratorAdvStatus 6 }

-- The xATS Generator Output group

xATSGeneratorOutputFrequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The output frequency of the generator.
       Measured in tenths of Hertz, or -1 if not available."
   ::= { xATSGeneratorOutput 1 }

xATSGeneratorOutputTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total output power of the generator.
       Measured in tenths of tenths of kW, or -1 if not available."
   ::= { xATSGeneratorOutput 2 }

xATSGeneratorOutputTotalApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total output power of the generator.
       Measured in tenths of kVA, or -1 if not available."
   ::= { xATSGeneratorOutput 3 }

xATSGeneratorOutputTotalPowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
          "Indicates the total load power factor of the generator.
           A value of 100 representing a unity power factor (1.00),
           or -1 when if not available."
   ::= { xATSGeneratorOutput 4 }

xATSGeneratorOutputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of generator output phase entries."
   ::= { xATSGeneratorOutput 5 }

   xATSGeneratorOutputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF XATSGeneratorOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
      "A list of generator output table entries.
       The number of entries is contained in the xATSGeneratorOutputTableSize OID."
       ::= { xATSGeneratorOutput 6 }

   xATSGeneratorOutputPhaseEntry OBJECT-TYPE
       SYNTAX     XATSGeneratorOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
          "An entry containing information applicable to a
           particular generator output phase."
       INDEX { xATSGeneratorOutputPhaseIndex }
       ::= { xATSGeneratorOutputPhaseTable 1 }

   XATSGeneratorOutputPhaseEntry ::= SEQUENCE {
       xATSGeneratorOutputPhaseIndex      INTEGER,
       xATSGeneratorOutputVoltageLtoL     INTEGER,
       xATSGeneratorOutputVoltageLtoN     INTEGER,
       xATSGeneratorOutputPhaseCurrent    INTEGER,
       xATSGeneratorOutputPower           INTEGER,
       xATSGeneratorOutputApparentPower   INTEGER,
       xATSGeneratorOutputPowerFactor     INTEGER
      }

   xATSGeneratorOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Description of each generator output phase utilized in this device."
       ::= { xATSGeneratorOutputPhaseEntry 1 }

   xATSGeneratorOutputVoltageLtoL OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-line generator output voltage.
           Measured in Volts, or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 2 }

   xATSGeneratorOutputVoltageLtoN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Line-to-neutral generator output voltage.
           Measured in volts, or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 3 }

   xATSGeneratorOutputPhaseCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Generator load current per phase.
           Measured in Amps, or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 4 }

   xATSGeneratorOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Generator output power per phase.
           Measured in tenths of kW, or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 5 }

   xATSGeneratorOutputApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Generator output power per phase.
           Measured in tenths of kVA, or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 6 }

   xATSGeneratorOutputPowerFactor OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          "Indicates the load power factor of the generator output per phase.
           A value of 100 representing a unity power factor (1.00),
           or -1 if not available."
       ::= { xATSGeneratorOutputPhaseEntry 7 }

-- xATS Generator Settings group

xATSGeneratorSettingsVoltageAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage adjust of the generator.
       Specified in volts line-to-line,
       or -1 if not available."
   ::= { xATSGeneratorSettings 1 }

xATSGeneratorSettingsFrequencyAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency adjust of the generator.
       Specified in tenths of Hertz."
   ::= { xATSGeneratorSettings 2 }

xATSGeneratorSettingsStartDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The delay, in seconds, after the remote run signal is activated
       before the generator's engine will be cranked to start,
       or -1 if not available."
   ::= { xATSGeneratorSettings 3 }

xATSGeneratorSettingsStopDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The delay, in seconds, before the generator will stop
       after the remote run signal is deactivated,
       or -1 if not available."
   ::= { xATSGeneratorSettings 4 }

xATSGeneratorSettingsCrankCycleEnable OBJECT-TYPE
   SYNTAX     INTEGER{
      disabled        (1),
      enabled         (2),
      unknown         (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "When Crank Cycle is enabled, the engine will be cranked up to the time
       specified by the xATSGeneratorSettingsCrankTime OID.
       If the generator's engine does not start, there will be a pause as
       specified by the xATSGeneratorSettingsCrankRestTime OID before the
       engine will be cranked again. This cycle is repeated as specified by
       the xATSGeneratorSettingsNumberCrank OID.
       When crank cycle is disabled, the generator's engine will be
       cranked continuously until it starts."
   ::= { xATSGeneratorSettings 5 }

xATSGeneratorSettingsCrankTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The duration of engine cranking, in seconds, when starting the generator.
       Applicable when the xATSGeneratorSettingsCrankCycleEnable OID is enabled.
       -1 if not available."
   ::= { xATSGeneratorSettings 6 }

xATSGeneratorSettingsCrankRestTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The pause duration, in seconds, following an unsuccessful attempt to start the generator.
       Applicable when the xATSGeneratorSettingsCrankCycleEnable OID is enabled.
       -1 if not available."
   ::= { xATSGeneratorSettings 7 }

xATSGeneratorSettingsNumberCrank OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of failed crank attempts before giving up on starting the generator.
       Applicable when the xATSGeneratorSettingsCrankCycleEnable OID is enabled.
       -1 if not available."
   ::= { xATSGeneratorSettings 8 }

xATSGeneratorSettingsMetricUnit OBJECT-TYPE
   SYNTAX INTEGER{
      disabled (1),
      enabled  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Specifies the use of metric units in generator related OIDs, as well
       as on all other interfaces including the generator's local interface."
   ::= { xATSGeneratorSettings 9 }

-- xATS generator service group

xATSGeneratorServiceTotalRunHoursLifetime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time that the generator engine has been run,
       over the life of the generator. Measured in hours.
       -1 if not available."
   ::= { xATSGeneratorService 1 }

xATSGeneratorServiceEngineStartsLifetime OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "Number of engine starts over the life of the generator.
      -1 if not available."
   ::= { xATSGeneratorService 2 }

xATSGeneratorServiceTotalkWhLifetime OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "Total kWh of operation over the life of the generator.
       -1 if not available."
   ::= { xATSGeneratorService 3 }

xATSGeneratorServiceTotalRunHoursSinceMaintenance OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "Total time that the generator engine has been run,
       since last service maintenance. Measured in tenths of hours.
       -1 if not available."
   ::= { xATSGeneratorService 4 }

xATSGeneratorServiceEngineStartsSinceMaintenance OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "Number of engine starts since last service maintenance.
       -1 if not available."
   ::= { xATSGeneratorService 5 }

xATSGeneratorServiceTotalkWhMaintenance OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "Total kWh of operation since last service maintenance.
       -1 if not available."
   ::= { xATSGeneratorService 6 }

xATSGeneratorServiceResetRecord OBJECT-TYPE
   SYNTAX INTEGER{
      yes        (1),
      no         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Resets the engine start counter, engine run-hours, and kWh values that have
       accumulated in the generator since last maintenance.
       Also, the last service date will be reset to the current system date, and
       any service alarms will be cleared."
   ::= { xATSGeneratorService 7 }

xATSGeneratorServiceRecordResetDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Date at which the generator's service record was reset, in dd-mmm-yyyy format."
   ::= { xATSGeneratorService 8 }

xATSGeneratorServiceNextServiceDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Date at which the next generator service is due in dd-mmm-yyyy format.
       Based on the xATSGeneratorServiceCalendarIntervalThreshold OID
       or '' if the calendar-based threshold is set to off."
   ::= { xATSGeneratorService 9 }

xATSGeneratorServiceRunHoursUntilServiceDate OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Run hours until the next generator service is due, in hours.
       Based on the xATSGeneratorServiceRunHoursThreshold OID
       or -1 if the run hour-based threshold is set to off."
   ::= { xATSGeneratorService 10 }

xATSGeneratorServiceRunHoursThreshold OBJECT-TYPE
   SYNTAX INTEGER{
      disabled                 (1),
      runThreshold100Hours     (2),
      runThreshold150Hours     (3),
      runThreshold200Hours     (4),
      runThreshold250Hours     (5),
      runThreshold300Hours     (6),
      runThreshold400Hours     (7),
      runThreshold500Hours     (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Run hour-based service interval. When the run-hours since
       service surpasses this threshold, generator service is due."
   ::= { xATSGeneratorService 11 }

xATSGeneratorServiceCalendarIntervalThreshold OBJECT-TYPE
   SYNTAX INTEGER{
      disabled            (1),
      interval1month      (2),
      interval2month      (3),
      interval3month      (4),
      interval6month      (5),
      intervalyearly      (6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Calendar-based service interval. When the next service date,
       as indicated by the xATSGeneratorServiceNextServiceDate OID
       is in the past, generator is due for service."
   ::= { xATSGeneratorService 12 }

-- The xATS Generator Fuel system group

xATSGeneratorFuelSystemType OBJECT-TYPE
   SYNTAX     INTEGER{
      diesel      (1),
      propane     (2),
      naturalGas  (3),
      unknown     (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of fuel used by the generator."
   ::= { xATSGeneratorFuelSystem 1 }

xATSGeneratorFuelSystemTankSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Size of the generator's fuel tank.
       Specified in gallons or liters, based on the value of the
       xATSGeneratorSettingsMetricUnit OID, or -1 if not available."
   ::= { xATSGeneratorFuelSystem 2 }

xATSGeneratorFuelSystemFuelLevel OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Fuel remaining in the generator tank.
       Measured in percent of tank fill, or -1 if not available."
   ::= { xATSGeneratorFuelSystem 3 }

xATSGeneratorFuelSystemRuntimePower OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power value used in the runtime remaining calculation.
       Measured in tenths of kW, or -1 if not available."
   ::= { xATSGeneratorFuelSystem 4 }

xATSGeneratorFuelSystemEstimatedRunTime OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An estimate of available runtime for the generator, based on
       available fuel as specified in the xATSGeneratorFuelSystemFuelLevel OID
       and kW load as specified in the xATSGeneratorFuelSystemRuntimePower OID.
       Measured in tenths of hours, or -1 if not available."
   ::= { xATSGeneratorFuelSystem 5 }

xATSGeneratorFuelSystemLowRunTimeThreshold OBJECT-TYPE
   SYNTAX INTEGER{
      disabled        (1),
      oneHour         (2),
      twoHours        (3),
      threeHours      (4),
      fourHours       (5),
      fiveHours       (6),
      sixHours        (7),
      twelveHours     (8),
      oneDay          (9),
      twoDays         (10),
      threeDays       (11),
      fourDays        (12),
      fiveDays        (13),
      sixDays         (14),
      sevenDays       (15)

   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which a low runtime alarm will exist."
   ::= { xATSGeneratorFuelSystem 6 }

xATSGeneratorFuelSystemVeryLowRunTimeThreshold OBJECT-TYPE
   SYNTAX INTEGER{
      disabled        (1),
      oneHour         (2),
      twoHours        (3),
      threeHours      (4),
      fourHours       (5),
      fiveHours       (6),
      sixHours        (7),
      twelveHours     (8),
      oneDay          (9),
      twoDays         (10),
      threeDays       (11),
      fourDays        (12),
      fiveDays        (13),
      sixDays         (14),
      sevenDays       (15)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which a very low runtime alarm will exist."
   ::= { xATSGeneratorFuelSystem 7 }

xATSGeneratorFuelSystemLowFuelLevelThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which a low fuel alarm will exist, with a value of 0 indicating disabled.
       Specified as percent of tank fill."
   ::= { xATSGeneratorFuelSystem 8 }

xATSGeneratorFuelSystemVeryLowFuelLevelThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold below which a very low fuel alarm will exist, with a value of 0 indicating disabled.
       Specified as percent of tank fill."
   ::= { xATSGeneratorFuelSystem 9 }

-- The console Port Server AP930x system group

apCPSpname OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "The product's name."
::= { cpsAP930xSys 1 }

apCPSversion OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "The firmware's version."
::= {cpsAP930xSys 2}

apCPSPower OBJECT IDENTIFIER ::= { cpsAP930xSys 3 }

apCPSPwNum OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "The number of the power supplies."
::= { apCPSPower 1 }

apCPSPw1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "State of the first power supply.
                 0 will indicate not installed,
                 1 will indicate power ON,
                 2 will indicate power OFF."
::= { apCPSPower 2 }

apCPSPw2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "State of the second power supply.
                 0 will indicate not installed,
                 1 will indicate power ON,
                 2 will indicate power OFF."
::= { apCPSPower 3 }

apCPSPcmcia OBJECT IDENTIFIER ::= {cpsAP930xSys 4}

apCPSNPcmcia OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Number of PCMCIA cards available."
::= { apCPSPcmcia 1 }

cpsCardIdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF CpsCardIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "A table of PCMCIA card identifications."
::= { apCPSPcmcia 2 }

cpsCardIdentEntry OBJECT-TYPE
   SYNTAX CpsCardIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "Identification information for a PCMCIA card."
   INDEX { cpsCardIdentIndex }
::= { cpsCardIdentTable 1 }

CpsCardIdentEntry ::= SEQUENCE {
   cpsCardIdentIndex Integer32,
   cpsCardIdentProd  DisplayString,
   cpsCardIdentMan   DisplayString ,
   cpsCardIdentFunc  DisplayString,
   cpsCardIdentPCI   DisplayString
}

cpsCardIdentIndex OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Number to identify the socket Card."
::= { cpsCardIdentEntry 1 }

cpsCardIdentProd OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Product identification string."
::= { cpsCardIdentEntry 2 }

cpsCardIdentMan OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Manufacturer ID code."
::= { cpsCardIdentEntry 3 }

cpsCardIdentFunc OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Function ID code."
::= { cpsCardIdentEntry 4 }

cpsCardIdentPCI OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "PCI ID"
::= { cpsCardIdentEntry 5 }

cpsCardConfTable OBJECT-TYPE
   SYNTAX SEQUENCE OF CpsCardConfEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "A table of socket configuration information."
::= { apCPSPcmcia 3 }

cpsCardConfEntry OBJECT-TYPE
   SYNTAX CpsCardConfEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "Configuration information for a socket."
   INDEX { cpsCardConfIndex }
::= { cpsCardConfTable 1 }

CpsCardConfEntry ::= SEQUENCE {
   cpsCardConfIndex Integer32,
   cpsCardConfPower DisplayString,
   cpsCardConfType  DisplayString,
   cpsCardConfInter DisplayString,
   cpsCardConfFunc  DisplayString,
   cpsCardConfCardv DisplayString,
   cpsCardConfPort1 DisplayString,
   cpsCardConfPort2 DisplayString
}

cpsCardConfIndex OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Number to identify the socket PCMCIA."
::= { cpsCardConfEntry 1 }

cpsCardConfPower OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Power Settings."
::= { cpsCardConfEntry 2 }

cpsCardConfType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Interface Type."
::= { cpsCardConfEntry 3 }

cpsCardConfInter OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Interrupt number."
::= { cpsCardConfEntry 4 }

cpsCardConfFunc OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Function."
::= { cpsCardConfEntry 5 }

cpsCardConfCardv OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Card values."
::= { cpsCardConfEntry 6 }

cpsCardConfPort1 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "I/O Port 1."
::= { cpsCardConfEntry 7 }

cpsCardConfPort2 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "I/O Port 2."
::= { cpsCardConfEntry 8 }

cpsCardStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF CpsCardStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "A table of current socket status information."
::= { apCPSPcmcia 4 }

cpsCardStatusEntry OBJECT-TYPE
   SYNTAX CpsCardStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "Current status information for a socket."
   INDEX { cpsCardStatusIndex }
::= { cpsCardStatusTable 1 }

CpsCardStatusEntry ::= SEQUENCE {
   cpsCardStatusIndex Integer32,
   cpsCardStatusCard  DisplayString,
   cpsCardStatusFunc  DisplayString
}

cpsCardStatusIndex OBJECT-TYPE
   SYNTAX Integer32(0..2)
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Number to identify the socket PCMCIA."
::= { cpsCardStatusEntry 1 }

cpsCardStatusCard OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Current Card State."
::= { cpsCardStatusEntry 2 }

cpsCardStatusFunc OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Current Function."
::= { cpsCardStatusEntry 3 }

apCPSFlashSize OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Total amount of flash memory in Mbytes."
::= {cpsAP930xSys 5}

apCPSRAMSize OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Total amount of RAM in Mbytes."
::= {cpsAP930xSys 6}

apCPSCPUfreq OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "CPU clock in MHz."
::= {cpsAP930xSys 7}

apCPSDevId OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "The product's identifier."
::= { cpsAP930xSys 8 }


-- The console Port Server AP930x configuration group

cpsHostName   OBJECT-TYPE
   SYNTAX       DisplayString (SIZE (0..40))
   ACCESS       read-write
   STATUS       mandatory
   DESCRIPTION   "The Host Name."
::= { cpsAP930xConf 1 }

cpsConsoleBanner   OBJECT-TYPE
   SYNTAX       DisplayString (SIZE (0..255))
   ACCESS       read-write
   STATUS       mandatory
   DESCRIPTION   "The console banner."
::= { cpsAP930xConf 2 }

cpsMotd   OBJECT-TYPE
   SYNTAX       DisplayString (SIZE (0..255))
   ACCESS       read-write
   STATUS       mandatory
   DESCRIPTION   "The motd message."
::= { cpsAP930xConf 3 }

cpsEthItf  OBJECT IDENTIFIER ::= { cpsAP930xConf 4 }

cpsEthDhcpc   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "0 will indicate DHCP inactive,
                  1 will indicate DHCP active,
                  2 will indicate DHCP active and the last parameter is saved."
::= { cpsEthItf 1 }

cpsEthIPaddr   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This is the IP address of the Ethernet Interface."
::= { cpsEthItf 2 }

cpsEthIPmask   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The mask for the Ethernet network."
::= { cpsEthItf 3 }

cpsEthMTU      OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The Maximum Transmission Unit size, which determines
          whether packets should be broken up."
::= { cpsEthItf 4 }

cpsEthIPaddr2  OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The Ethernet secondary IP address."
::= { cpsEthItf 5 }

cpsEthIPmask2   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The Ethernet secondary IP mask."
::= { cpsEthItf 6 }

cpsNameService  OBJECT IDENTIFIER ::= { cpsAP930xConf 5 }

cpsResolverOrder   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..15))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Specifies how host lookups are to be performed.
          Valid values : empty, 'hosts', 'bind', 'hosts, bind',
          'bind, hosts' "
::= { cpsNameService 1 }

cpsMultipleIP   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..3))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Valid values are ON or OFF. If set to ON, the resolve
          library will return all valid addresses for a host
          that appears in the /etc/hosts file, instead of only
          the first.  "
::= { cpsNameService 2 }

cpsDNSserv     OBJECT IDENTIFIER ::= { cpsNameService 3 }

cpsDNSpriserv   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Internet Address (in dot notation) of primary name
          server that the resolver should query."
::= { cpsDNSserv 1 }

cpsDNSsecserv   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Internet Address (in dot notation) of secondary name
          server that the resolver should query."
::= { cpsDNSserv 2 }

cpsDNSdomain      OBJECT-TYPE
   SYNTAX         DisplayString (SIZE (0..40))
   ACCESS         read-write
   STATUS         mandatory
   DESCRIPTION   "Local domain name."
::= { cpsDNSserv 3 }

cpsSerialPortConf  OBJECT IDENTIFIER ::= { cpsAP930xConf 6 }

cpsSerialGlobal   OBJECT IDENTIFIER ::= { cpsSerialPortConf 1 }

cpsSerialInclude   OBJECT-TYPE
   SYNTAX         DisplayString (SIZE (0..40))
   ACCESS         read-write
   STATUS         mandatory
   DESCRIPTION   "File used in centralized management."
::= { cpsSerialGlobal 1 }

cpsSerialNFS      OBJECT-TYPE
   SYNTAX         DisplayString (SIZE (0..50))
   ACCESS         read-write
   STATUS         mandatory
   DESCRIPTION   "Remote Network File System where data buffering will be
          written instead of the default directory '/var/run/DB'."
::= { cpsSerialGlobal 2 }

cpsSerialLockDir      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..50))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The lock directory."
::= { cpsSerialGlobal 3 }

cpsSerialRlogin      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..50))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Location of the rlogin binary that accepts the -i flag."
::= { cpsSerialGlobal 4 }

cpsSerialPppd   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..50))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Location of the pppd binary."
::= { cpsSerialGlobal 5 }

cpsSerialTelnet   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..50))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION "Location of the telnet application."
::= { cpsSerialGlobal 6 }

cpsSerialSsh      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..50))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Location of the ssh application."
::= { cpsSerialGlobal 7 }

cpsSerialLocalLogins   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION    "This parameter is only necessary when authentication is
                    being performed for a port.
                    This is useful if the Radius authentication server is down.
                    0 indicates OFF,
                    1 indicates ON."
::= { cpsSerialGlobal 8 }

cpsSerialFacility   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This value (0-7) is the Local facility sent to the syslog daemon."
::= { cpsSerialGlobal 9 }

cpsSerialDBFacility   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This value (0-7) is the Local facility sent to the syslog daemon."
::= { cpsSerialGlobal 10 }

cpsSerialGroupTable   OBJECT-TYPE
   SYNTAX      SEQUENCE OF CpsSerialGroupEntry
   ACCESS      not-accessible
   STATUS      mandatory
   DESCRIPTION   ""
::= { cpsSerialGlobal 11 }

cpsSerialGroupEntry   OBJECT-TYPE
   SYNTAX      CpsSerialGroupEntry
   ACCESS      not-accessible
   STATUS      mandatory
   DESCRIPTION   ""
   INDEX      { cpsSerialGroupIndex }
::= { cpsSerialGroupTable 1 }

CpsSerialGroupEntry ::= SEQUENCE  {
   cpsSerialGroupIndex   INTEGER,
   cpsSerialGroupName    DisplayString,
   cpsSerialGroupUsers   DisplayString
}

cpsSerialGroupIndex   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "Number to identify the group."
::= { cpsSerialGroupEntry  1 }

cpsSerialGroupName   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..20))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The group name."
::= { cpsSerialGroupEntry  2 }

cpsSerialGroupUsers   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..80))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The user's names."
::= { cpsSerialGroupEntry  3 }

cpsSerialSpec  OBJECT IDENTIFIER ::= { cpsSerialPortConf 2 }

cpsSerialPortTable   OBJECT-TYPE
   SYNTAX      SEQUENCE OF CpsSerialPortEntry
   ACCESS      not-accessible
   STATUS      mandatory
   DESCRIPTION    "This is the specific configuration per serial port."
::= { cpsSerialSpec 1 }

cpsSerialPortEntry   OBJECT-TYPE
   SYNTAX      CpsSerialPortEntry
   ACCESS   not-accessible
   STATUS      mandatory
   DESCRIPTION   "One particular serial port configuration."
   INDEX      { cpsSerialPortNumber }
::= { cpsSerialPortTable 1 }

CpsSerialPortEntry ::= SEQUENCE  {
   cpsSerialPortNumber        INTEGER,        -- 0 == all.  X == ttyX sX.
   cpsSerialPortTty           DisplayString,  -- associate device
   cpsSerialPortName          DisplayString,  -- alias name
   cpsSerialPortSpeed         Integer32,      -- physical port configuration
   cpsSerialPortDataSize      Integer32,
   cpsSerialPortStopBits      Integer32,
   cpsSerialPortParity        DisplayString,
   cpsSerialPortFlowCtrl      DisplayString,
   cpsSerialPortDTRdelay      Integer32,
   cpsSerialPortDCDCtrl       INTEGER,
   cpsSerialPortLogUtmp       INTEGER,        -- log into UTMP
   cpsSerialPortLogWtmp       INTEGER,        -- log into WTMP
   cpsSerialPortLogform       DisplayString,
   cpsSerialPortAuthtype      DisplayString,  -- authentication type
   cpsSerialPortAuthSrv1      IpAddress,      -- IP address of the primary authentication server
   cpsSerialPortAccSrv1       IpAddress,      -- IP address of the primary accounting server
   cpsSerialPortAuthTmo       Integer32,      -- time out per authentication query
   cpsSerialPortAuthRetr      Integer32,      -- authentication number of retries
   cpsSerialPortAuthSrv2      IpAddress,      -- IP address of the secondary authentication server
   cpsSerialPortAccSrv2       IpAddress,      -- IP address of the secondary accounting server
   cpsSerialPortAuthSecret    DisplayString,  -- secret used in authentication
   cpsSerialPortAuthRadP      INTEGER,        -- accept RADIUS' user without password
   cpsSerialPortAuthAcc       DisplayString,  -- access restriction on Users
   cpsSerialPortProtocol      DisplayString,  -- Profile
   cpsSerialPortRemoteIP      DisplayString,  -- remote IP address
   cpsSerialPortSocketPort    DisplayString,  -- number of socket port
   cpsSerialPortRemHost       IpAddress,      -- IP address of the remote Host
   cpsSerialPortBanner        DisplayString,  -- Banner
   cpsSerialPortPrompt        DisplayString,  -- Login prompt
   cpsSerialPortTermType      DisplayString,  -- terminal type
   cpsSerialPortAutomUsr      DisplayString,  -- automatic user
   cpsSerialPortNetMask       IpAddress,      -- net mask
   cpsSerialPortPppMtu        Integer32,
   cpsSerialPortPppMru        Integer32,
   cpsSerialPortPppOptions    DisplayString,
   cpsSerialPortPppFoption    DisplayString,
   cpsSerialPortModemChat     DisplayString,  -- initchat send to modem
   cpsSerialPortSttyCmd       DisplayString,
   cpsSerialPortSockTx        Integer32,      -- socket transmission interval
   cpsSerialPortSockPoll      Integer32,      -- socket polling interval
   cpsSerialPortSockIdle      Integer32,      -- socket idle timeout
   cpsSerialPortDBsize        Integer32,      -- maximum size of the data buffering file
   cpsSerialPortDBtime        INTEGER,        -- data buffering with/without timestamp
   cpsSerialPortDBmode        DisplayString,  -- data bufferinf mode circ or line
   cpsSerialPortDBsyslog      Integer32,      -- size of the data send to syslog
   cpsSerialPortDBmenu        INTEGER,        -- menu of the data buffering
   cpsSerialPortDBalarm       INTEGER,        -- use alarm generating feature
   cpsSerialPortSSHbreak      DisplayString,  -- break sequence (SSH)
   cpsSerialPortSniffSess     DisplayString,  -- sniff session type
   cpsSerialPortSniffAdm      DisplayString,  -- admin users to sniff
   cpsSerialPortSniffEsc      DisplayString,  -- escape char to sniff session
   cpsSerialPortSniffMsess    DisplayString,  -- multiple session
   cpsSerialPortTelnetMode    INTEGER,        -- telnet client mode
   cpsSerialPortSysBufSess    INTEGER,        -- syslog buffering at all times
   cpsSerialPortLFSuppress    INTEGER,        -- LF suppression in socket_server session
   cpsSerialPortAutoInput     DisplayString,  -- Input string to auto answer
   cpsSerialPortAutoOutput    DisplayString,  -- Output string to auto answer
   cpsSerialPortBreakInterval Integer32       -- Break interval (in ms)
}

cpsSerialPortNumber   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "Number to identify the serial port. Value 0 is ALL."
::= { cpsSerialPortEntry 1 }

cpsSerialPortTty      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..25))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The device name for the serial port."
::= { cpsSerialPortEntry 2 }

cpsSerialPortName      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Alias name given to the server connected to the serial port."
::= { cpsSerialPortEntry 3 }

cpsSerialPortSpeed   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The speed of the serial port.
                  Supported values are:
                   50, 75, 110, 134, 150, 200, 300, 600,
                   1200, 1800, 2400, 4800, 9600, 14400, 19200,
                   28800, 38400, 57600, 115200, 230400,  and 460800"
::= { cpsSerialPortEntry 4 }

cpsSerialPortDataSize   OBJECT-TYPE
   SYNTAX      Integer32 (4..8)
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The data size for the serial port."
::= { cpsSerialPortEntry 5 }

cpsSerialPortStopBits   OBJECT-TYPE
   SYNTAX      Integer32 (0..2)
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The number of stop bits for the serial port."
::= { cpsSerialPortEntry 6 }

cpsSerialPortParity   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..5))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The parity for the serial port."
::= { cpsSerialPortEntry 7 }

cpsSerialPortFlowCtrl   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..5))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The flow control for the serial port."
::= { cpsSerialPortEntry 8 }

cpsSerialPortDTRdelay   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This specifies how long (in milliseconds) a DTR signal
             will be turned off before it is turned on again."
::= { cpsSerialPortEntry 9 }

cpsSerialPortDCDCtrl   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "DCD signal controls the connection request.
                 0 will indicate nocontrol,
                 1 will indicate control."
::= { cpsSerialPortEntry 10 }

cpsSerialPortLogUtmp   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Update the login records in /var/run/utmp file.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 11 }

cpsSerialPortLogWtmp   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Update the login records in /var/run/wtmp file.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 12 }

cpsSerialPortLogform   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This is the format to write the login record."
::= { cpsSerialPortEntry 13 }

cpsSerialPortAuthtype      OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..25))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Authentication type."
::= { cpsSerialPortEntry 14 }

cpsSerialPortAuthSrv1   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "IP address of the primary authentication server."
::= { cpsSerialPortEntry 15 }

cpsSerialPortAccSrv1   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "IP address of the primary accounting server."
::= { cpsSerialPortEntry 16 }

cpsSerialPortAuthTmo   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This is the timeout (in seconds) for the authentication
         query to be answered."
::= { cpsSerialPortEntry 17 }

cpsSerialPortAuthRetr   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines the number of times each server is tried
         before another is contacted."
::= { cpsSerialPortEntry 18 }

cpsSerialPortAuthSrv2   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "IP address of the secondary authentication server."
::= { cpsSerialPortEntry 19 }

cpsSerialPortAccSrv2   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "IP address of the secondary accounting server."
::= { cpsSerialPortEntry 20 }

cpsSerialPortAuthSecret   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This is the shared secret with authentication servers."
::= { cpsSerialPortEntry 21 }

cpsSerialPortAuthRadP   OBJECT-TYPE
   SYNTAX      INTEGER
      ACCESS   read-write
   STATUS      mandatory
   DESCRIPTION   "Radius state.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 22 }

cpsSerialPortAuthAcc   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS   read-write
   STATUS      mandatory
   DESCRIPTION   "Access restriction."
::= { cpsSerialPortEntry 23 }

cpsSerialPortProtocol   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Defines the serial port's protocol."
::= { cpsSerialPortEntry 24 }

cpsSerialPortRemoteIP   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..20))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This is the default IP address of the serial port."
::= { cpsSerialPortEntry 25 }

cpsSerialPortSocketPort   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..10))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines an alternative labeling system for the serial port."
::= { cpsSerialPortEntry 26 }

cpsSerialPortRemHost   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The IP address of the host to which the serial port will connect."
::= { cpsSerialPortEntry 27 }

cpsSerialPortBanner   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..250))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines the banner."
::= { cpsSerialPortEntry 28 }

cpsSerialPortPrompt   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..250))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines the login prompt to the serial port."
::= { cpsSerialPortEntry 29 }

cpsSerialPortTermType   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..20))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines the terminal type."
::= { cpsSerialPortEntry 30 }

cpsSerialPortAutomUsr   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "This defines the automatic user."
::= { cpsSerialPortEntry 31 }

cpsSerialPortNetMask   OBJECT-TYPE
   SYNTAX      IpAddress
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The network mask used in dial in connection."
::= { cpsSerialPortEntry 32 }

cpsSerialPortPppMtu   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The PPP MTU - dial in connection."
::= { cpsSerialPortEntry 33 }

cpsSerialPortPppMru   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The PPP MRU - dial in connection."
::= { cpsSerialPortEntry 34 }

cpsSerialPortPppOptions   OBJECT-TYPE
   SYNTAX      DisplayString
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The PPP options when the PPP session is autodetected."
::= { cpsSerialPortEntry 35 }

cpsSerialPortPppFoption   OBJECT-TYPE
   SYNTAX      DisplayString
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The PPP forced options when the user has already been authenticated."
::= { cpsSerialPortEntry 36 }

cpsSerialPortModemChat   OBJECT-TYPE
   SYNTAX      DisplayString
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The initchat send to modem connected."
::= { cpsSerialPortEntry 37 }

cpsSerialPortSttyCmd   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..180))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The tty settings after socket connection is established."
::= { cpsSerialPortEntry 38 }

cpsSerialPortSockTx   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Defines the delay (in milliseconds) before transmission to
          the Ethernet of data received through a serial port."
::= { cpsSerialPortEntry 39 }

cpsSerialPortSockPoll   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Keep-alive timer (milliseconds) for the TCP connection."
::= { cpsSerialPortEntry 40 }

cpsSerialPortSockIdle   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The idle timeout in seconds."
::= { cpsSerialPortEntry 41 }

cpsSerialPortDBsize   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Maximum size of the data buffering file."
::= { cpsSerialPortEntry 42 }

cpsSerialPortDBtime   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS        read-write
   STATUS        mandatory
   DESCRIPTION   "Timestamp in data buffering.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 43 }

cpsSerialPortDBmode   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..5))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Data buffering mode : circ or line."
::= { cpsSerialPortEntry 44 }

cpsSerialPortDBsyslog   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Size of the data buffer sent to syslog."
::= { cpsSerialPortEntry 45 }

cpsSerialPortDBmenu   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Menu type for data buffering.
                 0 will indicate display Menu,
                 1 will indicate inactive,
                 2 will indicate DB,
                 3 will indicate Parc."
::= { cpsSerialPortEntry 46 }

cpsSerialPortDBalarm   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Alarm generation status.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 47 }

cpsSerialPortSSHbreak   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..16))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Break sequence - ssh session."
::= { cpsSerialPortEntry 48 }

cpsSerialPortSniffSess   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..5))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Sniff session type."
::= { cpsSerialPortEntry 49 }

cpsSerialPortSniffAdm   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "List of admin users allowed to sniff session."
::= { cpsSerialPortEntry 50 }

cpsSerialPortSniffEsc   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..6))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Escape sequence used in sniff session."
::= { cpsSerialPortEntry 51 }

cpsSerialPortSniffMsess   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..20))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   ""
::= { cpsSerialPortEntry 52 }

cpsSerialPortTelnetMode   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Mode negotiated by client telnet with the server.
                 0 will indicate text,
                 1 will indicate binary."
::= { cpsSerialPortEntry 53 }

cpsSerialPortSysBufSess   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Syslog Buffering at all times.
                 0 will indicate yes,
                 1 will indicate no."
::= { cpsSerialPortEntry 54 }

cpsSerialPortLFSuppress   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "LF suppression in socket_server session.
                 0 will indicate inactive,
                 1 will indicate active."
::= { cpsSerialPortEntry 55 }

cpsSerialPortAutoInput   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Input string used for auto answer."
::= { cpsSerialPortEntry 56 }

cpsSerialPortAutoOutput   OBJECT-TYPE
   SYNTAX      DisplayString (SIZE (0..40))
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Output string used for auto answer."
::= { cpsSerialPortEntry 57 }

cpsSerialPortBreakInterval   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "The break interval in milliseconds."
::= { cpsSerialPortEntry 58 }

-- The console Port Server AP930x information group

cpsInfoSerialPortTable   OBJECT-TYPE
   SYNTAX      SEQUENCE OF CpsInfoSerialPortEntry
   ACCESS      not-accessible
   STATUS      mandatory
   DESCRIPTION   "This is the information of the specific serial port."
::= { cpsAP930xInfo 1 }

cpsInfoSerialPortEntry   OBJECT-TYPE
   SYNTAX      CpsInfoSerialPortEntry
   ACCESS      not-accessible
   STATUS      mandatory
   DESCRIPTION   "One particular serial port."
   INDEX      { cpsInfoSerialPortNumber }
::= { cpsInfoSerialPortTable 1 }

CpsInfoSerialPortEntry ::= SEQUENCE  {
   cpsInfoSerialPortNumber      INTEGER,       --  X == ttyX sX.
   cpsInfoSerialPortTty         DisplayString, -- associate device
   cpsInfoSerialPortName        DisplayString, -- alias name
   cpsInfoSerialPortSpeed       Integer32,
   cpsInfoSerialPortTxBytes     Integer32,
   cpsInfoSerialPortRXBytes     Integer32,
   cpsInfoSerialPortErrFrame    Integer32,
   cpsInfoSerialPortErrParity   Integer32,
   cpsInfoSerialPortErrBreaks   Integer32,
   cpsInfoSerialPortErrOverrun  Integer32,
   cpsInfoSerialPortSigDTR      INTEGER,
   cpsInfoSerialPortSigCD       INTEGER,
   cpsInfoSerialPortSigDSR      INTEGER,
   cpsInfoSerialPortSigRTS      INTEGER,
   cpsInfoSerialPortSigCTS      INTEGER,
   cpsInfoSerialPortSigRI       INTEGER
 }

cpsInfoSerialPortNumber   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "Number to identify the serial port."
::= { cpsInfoSerialPortEntry 1 }

cpsInfoSerialPortTty      OBJECT-TYPE
   SYNTAX      DisplayString
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The device name for the serial port."
::= { cpsInfoSerialPortEntry 2 }

cpsInfoSerialPortName      OBJECT-TYPE
   SYNTAX      DisplayString
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "Alias name given to the server connected to the serial port."
::= { cpsInfoSerialPortEntry 3 }

cpsInfoSerialPortSpeed   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The speed for serial port."
::= { cpsInfoSerialPortEntry 4 }

cpsInfoSerialPortTxBytes   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of transmitted bytes by the serial port."
::= { cpsInfoSerialPortEntry 5 }

cpsInfoSerialPortRXBytes   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of received bytes by the serial port."
::= { cpsInfoSerialPortEntry 6 }

cpsInfoSerialPortErrFrame   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of frame errors."
::= { cpsInfoSerialPortEntry 7 }

cpsInfoSerialPortErrParity   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of parity errors."
::= { cpsInfoSerialPortEntry 8 }

cpsInfoSerialPortErrBreaks   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of breaks errors."
::= { cpsInfoSerialPortEntry 9 }

cpsInfoSerialPortErrOverrun   OBJECT-TYPE
   SYNTAX      Integer32
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The number of overrun errors."
::= { cpsInfoSerialPortEntry 10 }

cpsInfoSerialPortSigDTR   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the DTR signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 11 }

cpsInfoSerialPortSigCD   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the DCD signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 12 }

cpsInfoSerialPortSigDSR   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the DSR signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 13 }

cpsInfoSerialPortSigRTS   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the RTS signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 14 }

cpsInfoSerialPortSigCTS   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the CTS signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 15 }

cpsInfoSerialPortSigRI   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-only
   STATUS      mandatory
   DESCRIPTION   "The state of the RI signal.
                 0 will indicate down,
                 1 will indicate up."
::= { cpsInfoSerialPortEntry 16 }

-- The console Port Server AP930x administrative group

apCPSSave   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS      read-write
   STATUS      mandatory
   DESCRIPTION   "Exec saveconf command.
                 0 will indicate don't save,
                 1 will indicate save."
::= { cpsAP930xAdm 1 }

apCPSSerialHUP   OBJECT-TYPE
   SYNTAX      INTEGER
   ACCESS          read-write
   STATUS          mandatory
   DESCRIPTION     "Exec signal_ras hup command.
                 0 will indicate no restart,
                 1 will indicate restart."
::= { cpsAP930xAdm 2 }

-- the access PX group

accessPXIdentAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Access PX alarm status
        1 = Normal
        2 = Warning
        3 = Critical."
   ::= { accessPXIdent 1 }


accessPXIdentProductNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The product number of the Access PX."
   ::= { accessPXIdent 2 }

accessPXIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision number of the Access PX."
   ::= { accessPXIdent 3 }

accessPXIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of manufacture of the Access PX."
   ::= { accessPXIdent 4 }

accessPXIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Access PX."
   ::= { accessPXIdent 5 }

accessPXConfigCardReaderEnableDisableAction OBJECT-TYPE
   SYNTAX INTEGER {
      disabled   (1),
      enable     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Action to disable/enable the card reader."
   ::= { accessPXConfig 1 }

accessPXConfigAutoRelockTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Time (10 - 60) in seconds when the door will automatically relock
       after it has been unlocked and the handle has not been opened."
   ::= { accessPXConfig 2 }

accessPXConfigCardFormat OBJECT-TYPE
   SYNTAX INTEGER {
      hidStd26             (1),
      hid37Bit             (2),
      hid37BitWithFacility (3),
      hidCorp1000          (4),
      mifareclassic4b      (5),
      mifareclassic7b      (6),
      mifaredesfire        (7),
      mifareplus           (8),
      iCLASS8b             (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates and controls the various card format."
   ::= { accessPXConfig 3 }

accessPXConfigFrontDoorLockControl OBJECT-TYPE
   SYNTAX INTEGER {
      unlock                (1),
      lock                  (2),
      notInstalledReadOnly  (3),
      disconnectedReadOnly  (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Control action (unlock, lock) for the front door. Setting this OID
       will unlock or lock the front door.  Getting this OID will respond
       with the current state of the front door lock which could be
       1 = unlocked,
       2 = locked,
       3 = not installed,
       4 = disconnected."
   ::= { accessPXConfigFront 1 }

accessPXConfigFrontDoorMaxOpenTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Time in minutes, (1 - 120), that the front door can be
       allowed to remain open without generating an alarm condition."
   ::= { accessPXConfigFront 2 }

accessPXStatusFrontDoorLock OBJECT-TYPE
   SYNTAX INTEGER {
      unlocked      (1),
      locked        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the front door lock: unlocked, locked,
       not installed, or disconnected."
   ::= { accessPXStatusFront 1 }

accessPXStatusFrontDoor OBJECT-TYPE
   SYNTAX INTEGER {
      open          (1),
      closed        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the front door: open, closed,
       not installed, or disconnected."
   ::= { accessPXStatusFront 2 }

accessPXStatusFrontDoorHandle OBJECT-TYPE
   SYNTAX INTEGER {
      open          (1),
      closed        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the front door handle: open, closed,
       not installed, or disconnected."
   ::= { accessPXStatusFront 3 }

accessPXStatusFrontDoorMaxOpenTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time in minutes, (1 - 120), that the front door can be
       allowed to remain open without generating an alarm condition."
   ::= { accessPXStatusFront 4 }

accessPXStatusFrontDoorAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Front door alarm status
        1 = Normal
        2 = Warning
        3 = Critical
        4 = Front door not installed."
   ::= { accessPXStatusFront 5 }

accessPXConfigRearDoorLockControl OBJECT-TYPE
   SYNTAX INTEGER {
      unlock                (1),
      lock                  (2),
      notInstalledReadOnly  (3),
      disconnectedReadOnly  (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Control action (unlock, lock) for the rear door. Setting this OID
       will unlock or lock the rear door.  Getting this OID will respond
       with the current state of the rear door lock which could be
       1 = unlocked,
       2 = locked,
       3 = not installed,
       4 = disconnected."
   ::= { accessPXConfigRear 1 }

accessPXConfigRearDoorMaxOpenTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Time in minutes, (1 - 120), that the rear door can be
       allowed to remain open without generating an alarm condition."
   ::= { accessPXConfigRear 2 }

accessPXStatusRearDoorLock OBJECT-TYPE
   SYNTAX INTEGER {
      unlocked      (1),
      locked        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the rear door lock: unlocked, locked,
       not installed, or disconnected."
   ::= { accessPXStatusRear 1 }

accessPXStatusRearDoor OBJECT-TYPE
   SYNTAX INTEGER {
      open          (1),
      closed        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the rear door: open, closed,
       not installed, or disconnected."
   ::= { accessPXStatusRear 2 }

accessPXStatusRearDoorHandle OBJECT-TYPE
   SYNTAX INTEGER {
      open          (1),
      closed        (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Present state of the rear door handle: open, closed,
       not installed, or disconnected."
   ::= { accessPXStatusRear 3 }

accessPXStatusRearDoorMaxOpenTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time in minutes, (1 - 120), that the rear door can be
       allowed to remain open without generating an alarm condition."
   ::= { accessPXStatusRear 4 }

accessPXStatusRearDoorAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Rear door alarm status
        1 = Normal
        2 = Warning
        3 = Critical
        4 = Rear door not installed."
   ::= { accessPXStatusRear 5 }

accessPXConfigBeaconName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the Beacon."
   ::= { accessPXConfigBeacon 1 }

accessPXConfigBeaconLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the location of the Beacon."
   ::= { accessPXConfigBeacon 2 }

accessPXConfigBeaconAction OBJECT-TYPE
   SYNTAX INTEGER {
      turnOff               (1),
      turnOn                (2),
      notInstalledReadOnly  (3),
      disconnectedReadOnly  (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Control action (turnOff, turnOn) for the beacon. Setting this OID
       will turn the beacon off or on.  Getting this OID will respond
       with the current state which could be
       1 = off,
       2 = on,
       3 = not installed,
       4 = disconnected."
   ::= { accessPXConfigBeacon 3 }

accessPXStatusBeaconName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the beacon."
   ::= { accessPXStatusBeacon 1 }

accessPXStatusBeaconLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the location of the beacon."
   ::= { accessPXStatusBeacon 2 }

accessPXStatusBeaconCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      off           (1),
      on            (2),
      notInstalled  (3),
      disconnected  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current state of the beacon: off, on,
       not installed, or disconnected."
   ::= { accessPXStatusBeacon 3 }

-- the apcLocalDisplay group

apcLocalDisplayIdentDisplayType OBJECT-TYPE
   SYNTAX INTEGER {
      noDisplayFound (1),
      powerviewRM    (2),
      powerviewWW    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Numeric value used to identify the type of display in use."
   ::= { apcLocalDisplayIdent 1 }

apcLocalDisplayIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The model number of the local display."
   ::= { apcLocalDisplayIdent 2 }

apcLocalDisplayIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision number of the local display."
   ::= { apcLocalDisplayIdent 3 }

apcLocalDisplayIdentOptions OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A display-specific string identifying options in the local display."
   ::= { apcLocalDisplayIdent 4 }

apcLocalDisplayIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of manufacture of the local display, if available."
   ::= { apcLocalDisplayIdent 5 }

apcLocalDisplayIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the local display, if available."
   ::= { apcLocalDisplayIdent 6 }

apcLocalDisplayConfigAlarmBeeper OBJECT-TYPE
   SYNTAX INTEGER {
      beeperDisabled   (1),
      beeperEnabled    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The alarm beeper setting for the local display.
       When enabled, the alarm beeper will begin to sound whenever
       there a new alarm becomes active. The alarm beeper will continue to
       periodically sound until a key is pressed on the display."
   ::= { apcLocalDisplayConfig 1 }

apcLocalDisplayConfigBeeperVolume OBJECT-TYPE
   SYNTAX INTEGER {
      beeperDisabled  (1),
      beeperLow       (2),
      beeperMedium    (3),
      beeperHigh      (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The volume setting of the beeper on the local display."
   ::= { apcLocalDisplayConfig 2 }

apcLocalDisplayConfigCheckLogIndicator OBJECT-TYPE
   SYNTAX INTEGER {
      checklogNotPresent    (1),
      checklogDisabled      (2),
      checklogInformational (3),
      checklogWarning       (4),
      checklogCritical      (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum level event severity level required to illuminate
       the check log light on the local display.
       notPresent (1) indicates that the display does not have a check log light."
   ::= { apcLocalDisplayConfig 3 }

apcLocalDisplayConfigKeyClick OBJECT-TYPE
   SYNTAX INTEGER {
      keyclickDisabled   (1),
      keyclickEnabled    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The key click setting of the local display."
   ::= { apcLocalDisplayConfig 4 }

apcLocalDisplayConfigContrast OBJECT-TYPE
   SYNTAX INTEGER {
      contrast1 (1),
      contrast2 (2),
      contrast3 (3),
      contrast4 (4),
      contrast5 (5),
      contrast6 (6),
      contrast7 (7),
      contrast8 (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The contrast level of the local display."
   ::= { apcLocalDisplayConfig 5 }

-- the software group
-- the powerNetSubAgent group
-- the powerNetSoftwareSystem group

powerNetSoftwareSystemDescription OBJECT-TYPE
   SYNTAX  DisplayString (SIZE (0..79))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "A brief description of the PowerNet sub-agent."
   ::= { powerNetSoftwareSystem 1 }

powerNetSoftwareOid  OBJECT-TYPE
   SYNTAX  OBJECT IDENTIFIER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The object identifier of the PowerNet sub-agent."
   ::= { powerNetSoftwareSystem 2 }

-- powerNetSmuxPeer     OBJECT IDENTIFIER ::= { powerNetSoftwareOid 1 }
-- powerNetDPIPeer      OBJECT IDENTIFIER ::= { powerNetSoftwareOid 2 }

powerNetSoftwareSystemUpTime  OBJECT-TYPE
   SYNTAX  TimeTicks
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
         "The time that the sub-agent has been running."
   ::= { powerNetSoftwareSystem 3 }


-- powerNetSoftwareConfig group

powerNetSoftwareTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of software modules supporting the UPS."
   ::= { powerNetSoftwareConfig 1 }

powerNetSoftwareTable OBJECT-TYPE
   SYNTAX SEQUENCE OF PowerNetSoftwareEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of the software monitoring the UPS."
   ::= { powerNetSoftwareConfig 2 }

powerNetSoftwareEntry OBJECT-TYPE
   SYNTAX PowerNetSoftwareEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information on a software module."
   INDEX { moduleNumber }
   ::= { powerNetSoftwareTable 1 }

PowerNetSoftwareEntry ::=
   SEQUENCE {
      moduleNumber
         INTEGER,
      moduleName
         DisplayString,
      moduleVersion
         DisplayString,
      moduleDate
         DisplayString
   }

moduleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index into the Software Entry Table"
   ::= { powerNetSoftwareEntry 1 }

moduleName OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..79))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the software module."
   ::= { powerNetSoftwareEntry 2 }

moduleVersion OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..8))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of the software module."
   ::= { powerNetSoftwareEntry 3 }

moduleDate OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..9))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the software module represented as mm-dd-yy."
   ::= { powerNetSoftwareEntry 4 }

-- the StruxureWare Operations group

serverStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      stopped(2),
      running(3),
      running-missing(4),
      initializing(5),
      starting(6),
      disaster-recovery(7),
      postoffice-inconsistent(8),
      missing-jgroups(9)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the StruxureWare Operations server:
      1: The status of the application server is unknown. Check Webmin and if
      the problem persists, contact Technical Support.
      2: Restart the StruxureWare DC Operation server. If the server was part of
      a cluster, see the StruxureWare DC Operation User Assistance about
      rejoining the cluster. If the problem persists, contact Technical Support.
      3: No problem.
      4: High availability is lost. The StruxureWare DC Operation Application
      server is running but one or more nodes are not available. If the
      StruxureWare DC Operation server is part of a cluster, ensure all nodes
      are running and there is a network connection between the nodes. If the
      problem persists, contact Technical Support.
      5: Wait for the StruxureWare DC Operation Application server to initialize.
      If the problem persists, contact Technical Support.
      6: Wait for the StruxureWare DC Operation Application server to finish
      starting.
      If the problem persists, contact Technical Support.
      7: This node is running in Disaster Recovery mode.
      8: The JBoss postoffice is currently inconsistent. This may be a temporary
      issue. If the problem persists for more than 10 minutes,
      contact Technical Support.
      9: The JBoss is missing jgroups. This may be a temporary issue. If the
      problem persists for more than 10 minutes, contact Technical Support."
   ::= { struxureWareOperationsStatus 1 }

databaseStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      stopped(2),
      running(3),
      detached(4),
      catching-up(5),
      attaching(6),
      running-master(7),
      running-primary-slave(8),
      running-slave(9),
      running-alone(10)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the StruxureWare Operations database:
      1: The status of the database is unknown. Check Webmin and if the problem
      persists, contact Technical Support.
      2: Restart the StruxureWare DC Operation server. If the server was part of
      a cluster, see the StruxureWare DC Operation User Assistance about
      rejoining the cluster. If the problem persists, contact Technical Support.
      3: No problem.
      4: High availability is lost. The database is detached from the cluster
      and does not receive updates. See the StruxureWare DC Operation User
      Assistance about reattaching the database node to the StruxureWare DC
      Operation cluster.
      If the problem persists, contact Technical Support.
      5: The database is catching up with the cluster. Wait for the StruxureWare
      DC Operation database to retrieve all updates from the master node.
      If the problem persists, contact Technical Support.
      6: The database is attaching to the cluster. Wait for the StruxureWare
      Operation database to attach to the cluster. If the problem persists,
      contact Technical Support.
      7: The database is the master in a cluster.
      8: The database is the primary slave in the cluster. All changes on master
      are synchronously replicated to this node.
      9: The database is a secondary slave in the cluster. All changes on
      master are asynchronously replicated to this node.
      10: The database does not replicate its changes to other nodes."
   ::= { struxureWareOperationsStatus 2 }

loadBalancerStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      stopped(2),
      running(3),
      running-missing(4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the StruxureWare Operations load balancer:
      1: Load Balancer status is unknown. Check Webmin and if the problem
      persists, contact Technical Support.
      2: Load Balancer stopped. Restart the StruxureWare DC Operation server.
      If the problem persists, contact Technical Support.
      3: Normal status
      4: High availability is lost. The StruxureWare DC Operation Load Balancer
      is running but one or more nodes are not available. If the StruxureWare DC
      Operation server is part of a cluster, ensure all nodes are running and
      there is a network connection between the nodes. If the problem persists,
      contact Technical Support."
   ::= { struxureWareOperationsStatus 3 }

essentialServicesStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      stopped(2),
      running(3),
      time-sync-problems(4),
      backup-problems(5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the StruxureWare Operations essential services:
      1: Unknown status. Check Webmin and if the problem persists, contact
      Technical Support.
      2: Essential services are not running on the StruxureWare DC Operation
      server. Reboot the node and monitor the status page in Webmin. If the
      problem persists, contact Technical Support.
      3: Normal status
      4: The time difference between the StruxureWare DC Operation slave and the
      master node is too big. Correct the time on the slave to match the time on
      the master. Consider using an NTP server. If the problem persists,
      contact Technical Support.
      5: The last backup that was attempted on the StruxureWare DC Operation
      server has failed. Make certain that the system can write to the location
      specified as backup location. This is particularly relevant for network
      attached storage. If the problem persists, contact Technical Support."
   ::= { struxureWareOperationsStatus 4 }

etlStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      running(2),
      failed(3),
      paused(4),
      stopped(5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the StruxureWare Operations ETL services:
      1: Unknown status. Check the network configuration and the server
      network settings. If the problem persists, contact
      Technical Support (http://www.apc.com/go/direct/index.cfm?tag=support).
      2: Normal status,
      3: ETL Transformations have failed and are subsequently stopped.
      Investigate the cause of the failure. If the problem persists, contact
      Technical Support (http://www.apc.com/go/direct/index.cfm?tag=support).
      4: ETL Transformations are currently paused.
      5: ETL Transformations are currently stopped."
   ::= { struxureWareOperationsStatus 5 }


-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsIdent group

pcnshostname OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hostname of the PCNS instance."
   ::= { pcnsIdent 1 }

pcnsVersion OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..9))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of PCNS installed.  x.x.x"
   ::= { pcnsIdent 2 }

pcnsOS OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of OS PCNS is Installed on."
   ::= { pcnsIdent 3 }

pcnsJavaVersion OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of Java PCNS is running on."
   ::= { pcnsIdent 4 }

-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsNetworking group

pcnsUIProtocol OBJECT-TYPE
   SYNTAX INTEGER  {
      http(1),
      https(2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Web Protocol used to connect to the PCNS UI."
   ::= { pcnsNetworking 1 }

pcnsHttpPort OBJECT-TYPE
   SYNTAX INTEGER(0..65535)
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Port used for PCNS http UI."
   ::= { pcnsNetworking 2 }

pcnsHttpsPort OBJECT-TYPE
   SYNTAX INTEGER(0..65535)
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Port used for PCNS https UI."
   ::= { pcnsNetworking 3 }

pcnsNetworkConfig OBJECT-TYPE
   SYNTAX INTEGER  {
      ipV4(1),
      ipV6(2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Configuration of the TCP Network."
   ::= { pcnsNetworking 4 }

pcnsVirtualInstall OBJECT-TYPE
   SYNTAX INTEGER  {
      none(1),
      hyper-V(2),
      vmWare(3)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Virtualization technology in use by PCNS."
   ::= { pcnsNetworking 5 }

-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsNMC group

pcnsMode OBJECT-TYPE
   SYNTAX INTEGER  {
      single(1),
      redundant(2),
      parallel(3),
      advanced(4)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Configuration mode of the UPS(s) which PCNS is monitoring."
   ::= { pcnsNMC 1 }

pcnsNMCPort OBJECT-TYPE
   SYNTAX INTEGER(0..65535)
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Port used to connect to all of the Network Management Card(s)."
   ::= { pcnsNMC 2 }

pcnsNMCProtocol OBJECT-TYPE
   SYNTAX INTEGER  {
      http(1),
      https(2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Web Protocol used to connect to all of the Network Management Card(s)."
   ::= { pcnsNMC 3 }

pcnsNmcTable OBJECT-TYPE
   SYNTAX SEQUENCE OF PCNSNMCEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Network Management Cards in the UPS's which PCNS is monitoring to provide safe shutdown."
   ::= { pcnsNMC 4 }

pcnsNmcEntry OBJECT-TYPE
   SYNTAX PCNSNMCEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Details of the NMC."
   INDEX  { pcnsNmcIndex }
   ::= { pcnsNmcTable 1 }

PCNSNMCEntry ::=
   SEQUENCE {
      pcnsNmcIndex
         Gauge,
      pcnsNmcAddr
         IpAddress,
      pcnsNmcOutlet
         Gauge
   }

pcnsNmcIndex OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Index of the NMC within PCNS setup."
   ::= { pcnsNmcEntry 1 }

pcnsNmcAddr OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The IP address of the NMC."
   ::= { pcnsNmcEntry 2 }

pcnsNmcOutlet OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The Outlet Group which PCNS is enrolled with on the NMC."
   ::= { pcnsNmcEntry 3 }

-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsEvents group



pcnsPowerFailed   OBJECT IDENTIFIER ::=  { pcnsEvents 1 }

pcnsPowerFailedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsPowerFailed 1 }

pcnsPowerFailedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsPowerFailed 2 }

pcnsPowerFailedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsPowerFailed 3 }

pcnsPowerFailedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsPowerFailed 4 }

pcnsPowerFailedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsPowerFailed 5 }

pcnsPowerFailedEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsPowerFailed 6 }

pcnsPowerFailedShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsPowerFailed 7 }

pcnsPowerRestored   OBJECT IDENTIFIER ::=  { pcnsEvents 2 }

pcnsPowerRestoredDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsPowerRestored 1 }

pcnsPowerRestoredEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsPowerRestored 2 }

pcnsPowerRestoredEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsPowerRestored 3 }

pcnsPowerRestoredCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsPowerRestored 4 }

pcnsPowerRestoredCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsPowerRestored 5 }


pcnsOverload   OBJECT IDENTIFIER ::=  { pcnsEvents 3 }

pcnsOverloadDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsOverload 1 }

pcnsOverloadEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsOverload 2 }

pcnsOverloadEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsOverload 3 }

pcnsOverloadCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsOverload 4 }

pcnsOverloadCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsOverload 5 }

pcnsOverloadEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsOverload 6 }

pcnsOverloadShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsOverload 7 }

pcnsOverloadSolved   OBJECT IDENTIFIER ::=  { pcnsEvents 4 }

pcnsOverloadSolvedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsOverloadSolved 1 }

pcnsOverloadSolvedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsOverloadSolved 2 }

pcnsOverloadSolvedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsOverloadSolved 3 }

pcnsOverloadSolvedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsOverloadSolved 4 }

pcnsOverloadSolvedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsOverloadSolved 5 }


pcnsRunTimeExceeded   OBJECT IDENTIFIER ::=  { pcnsEvents 5 }

pcnsRunTimeExceededDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsRunTimeExceeded 1 }

pcnsRunTimeExceededEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsRunTimeExceeded 2 }

pcnsRunTimeExceededEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsRunTimeExceeded 3 }

pcnsRunTimeExceededCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsRunTimeExceeded 4 }

pcnsRunTimeExceededCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsRunTimeExceeded 5 }

pcnsRunTimeExceededEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsRunTimeExceeded 6 }

pcnsRunTimeExceededShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsRunTimeExceeded 7 }


pcnsRunTimeWithinRange   OBJECT IDENTIFIER ::=  { pcnsEvents 6 }

pcnsRunTimeWithinRangeDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsRunTimeWithinRange 1 }

pcnsRunTimeWithinRangeEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsRunTimeWithinRange 2 }

pcnsRunTimeWithinRangeEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsRunTimeWithinRange 3 }

pcnsRunTimeWithinRangeCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsRunTimeWithinRange 4 }

pcnsRunTimeWithinRangeCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsRunTimeWithinRange 5 }



pcnsRunTimeBelowThreshold   OBJECT IDENTIFIER ::=  { pcnsEvents 7 }

pcnsRunTimeBelowThresholdDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsRunTimeBelowThreshold 1 }

pcnspcnsRunTimeBelowThresholdEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsRunTimeBelowThreshold 2 }

pcnsRunTimeBelowThresholdEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsRunTimeBelowThreshold 3 }

pcnsRunTimeBelowThresholdCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsRunTimeBelowThreshold 4 }


pcnsRunTimeBelowThresholdEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsRunTimeBelowThreshold 6 }


pcnsRunTimeBelowThresholdCommandFileThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "If the Runtime Remaining falls below this (seconds), the command file will run."
   ::= { pcnsRunTimeBelowThreshold 8 }

pcnsRunTimeBelowThresholdShutdownThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "If the Runtime Remaining falls below this (seconds), the shutdown will begin."
   ::= { pcnsRunTimeBelowThreshold 9 }




pcnsRunTimeAboveThreshold   OBJECT IDENTIFIER ::=  { pcnsEvents 8 }

pcnsRunTimeAboveThresholdDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsRunTimeAboveThreshold 1 }

pcnsRunTimeAboveThresholdEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsRunTimeAboveThreshold 2 }

pcnsRunTimeAboveThresholdEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsRunTimeAboveThreshold 3 }

pcnsRunTimeAboveThresholdCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsRunTimeAboveThreshold 4 }

pcnsRunTimeAboveThresholdCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsRunTimeAboveThreshold 5 }




pcnsBatteryDischarged   OBJECT IDENTIFIER ::=  { pcnsEvents 10 }

pcnsBatteryDischargedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBatteryDischarged 1 }

pcnsBatteryDischargedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBatteryDischarged 2 }

pcnsBatteryDischargedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBatteryDischarged 3 }

pcnsBatteryDischargedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBatteryDischarged 4 }

pcnsBatteryDischargedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBatteryDischarged 5 }

pcnsBatteryDischargedEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsBatteryDischarged 6 }

pcnsBatteryDischargedShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsBatteryDischarged 7 }


pcnsBatteryChargeInRange   OBJECT IDENTIFIER ::=  { pcnsEvents 11 }

pcnsBatteryChargeInRangeDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBatteryChargeInRange 1 }

pcnsBatteryChargeInRangeEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBatteryChargeInRange 2 }

pcnsBatteryChargeInRangeEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBatteryChargeInRange 3 }

pcnsBatteryChargeInRangeCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBatteryChargeInRange 4 }

pcnsBatteryChargeInRangeCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBatteryChargeInRange 5 }



pcnsFaultBypassEnabled   OBJECT IDENTIFIER ::=  { pcnsEvents 12 }

pcnsFaultBypassEnabledDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsFaultBypassEnabled 1 }

pcnsFaultBypassEnabledEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsFaultBypassEnabled 2 }

pcnsFaultBypassEnabledEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsFaultBypassEnabled 3 }

pcnsFaultBypassEnabledCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsFaultBypassEnabled 4 }

pcnsFaultBypassEnabledCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsFaultBypassEnabled 5 }

pcnsFaultBypassEnabledEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsFaultBypassEnabled 6 }

pcnsFaultBypassEnabledShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsFaultBypassEnabled 7 }


pcnsBypassEnabled   OBJECT IDENTIFIER ::=  { pcnsEvents 13 }

pcnsBypassEnabledDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBypassEnabled 1 }

pcnsBypassEnabledEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBypassEnabled 2 }

pcnsBypassEnabledEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBypassEnabled 3 }

pcnsBypassEnabledCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBypassEnabled 4 }

pcnsBypassEnabledCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBypassEnabled 5 }

pcnsBypassEnabledEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsBypassEnabled 6 }

pcnsBypassEnabledShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsBypassEnabled 7 }


pcnsBypassManualEnabled   OBJECT IDENTIFIER ::=  { pcnsEvents 14 }

pcnsBypassManualEnabledDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBypassManualEnabled 1 }

pcnsBypassManualEnabledEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBypassManualEnabled 2 }

pcnsBypassManualEnabledEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBypassManualEnabled 3 }

pcnsBypassManualEnabledCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBypassManualEnabled 4 }

pcnsBypassManualEnabledCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBypassManualEnabled 5 }

pcnsBypassManualEnabledEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsBypassManualEnabled 6 }

pcnsBypassManualEnabledShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsBypassManualEnabled 7 }

pcnsBypassDisabled   OBJECT IDENTIFIER ::=  { pcnsEvents 15 }

pcnsBypassDisabledDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBypassDisabled 1 }

pcnsBypassDisabledEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBypassDisabled 2 }

pcnsBypassDisabledEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBypassDisabled 3 }

pcnsBypassDisabledCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBypassDisabled 4 }

pcnsBypassDisabledCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBypassDisabled 5 }


pcnsBypassContactorFailed   OBJECT IDENTIFIER ::=  { pcnsEvents 16 }

pcnsBypassContactorFailedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBypassContactorFailed 1 }

pcnsBypassContactorFailedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBypassContactorFailed 2 }

pcnsBypassContactorFailedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBypassContactorFailed 3 }

pcnsBypassContactorFailedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBypassContactorFailed 4 }

pcnsBypassContactorFailedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBypassContactorFailed 5 }

pcnsBypassContactorFailedEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsBypassContactorFailed 6 }

pcnsBypassContactorFailedShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsBypassContactorFailed 7 }

pcnsBypassContactorOk   OBJECT IDENTIFIER ::=  { pcnsEvents 17 }

pcnsBypassContactorOkDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsBypassContactorOk 1 }

pcnsBypassContactorOkEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsBypassContactorOk 2 }

pcnsBypassContactorOkEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsBypassContactorOk 3 }

pcnsBypassContactorOkCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsBypassContactorOk 4 }

pcnsBypassContactorOkCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsBypassContactorOk 5 }


pcnsCommunicationLostOnBattery   OBJECT IDENTIFIER ::=  { pcnsEvents 18 }

pcnsCommunicationLostOnBatteryDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsCommunicationLostOnBattery 1 }

pcnsCommunicationLostOnBatteryEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsCommunicationLostOnBattery 2 }

pcnsCommunicationLostOnBatteryEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsCommunicationLostOnBattery 3 }

pcnsCommunicationLostOnBatteryCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsCommunicationLostOnBattery 4 }

pcnsCommunicationLostOnBatteryCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsCommunicationLostOnBattery 5 }

pcnsCommunicationLostOnBatteryEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsCommunicationLostOnBattery 6 }

pcnsCommunicationLostOnBatteryShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsCommunicationLostOnBattery 7 }

pcnsCommunicationLost   OBJECT IDENTIFIER ::=  { pcnsEvents 19 }

pcnsCommunicationLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsCommunicationLost 1 }

pcnsCommunicationLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsCommunicationLost 2 }

pcnsCommunicationLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsCommunicationLost 3 }

pcnsCommunicationLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsCommunicationLost 4 }

pcnsCommunicationLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsCommunicationLost 5 }

pcnsCommunicationLostEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsCommunicationLost 6 }

pcnsCommunicationLostShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsCommunicationLost 7 }

pcnsNetCommunicationLost   OBJECT IDENTIFIER ::=  { pcnsEvents 20 }

pcnsNetCommunicationLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsNetCommunicationLost 1 }

pcnsNetCommunicationLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsNetCommunicationLost 2 }

pcnsNetCommunicationLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsNetCommunicationLost 3 }

pcnsNetCommunicationLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsNetCommunicationLost 4 }

pcnsNetCommunicationLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsNetCommunicationLost 5 }

pcnsNetCommunicationLostEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsNetCommunicationLost 6 }

pcnsNetCommunicationLostShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsNetCommunicationLost 7 }

pcnsCommunicationEstablished   OBJECT IDENTIFIER ::=  { pcnsEvents 21 }

pcnsCommunicationEstablishedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsCommunicationEstablished 1 }

pcnsCommunicationEstablishedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsCommunicationEstablished 2 }

pcnsCommunicationEstablishedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsCommunicationEstablished 3 }

pcnsCommunicationEstablishedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsCommunicationEstablished 4 }

pcnsCommunicationEstablishedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsCommunicationEstablished 5 }


pcnsMinRedundancyLost   OBJECT IDENTIFIER ::=  { pcnsEvents 22 }

pcnsMinRedundancyLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMinRedundancyLost 1 }

pcnsMinRedundancyLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMinRedundancyLost 2 }

pcnsMinRedundancyLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMinRedundancyLost 3 }

pcnsMinRedundancyLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMinRedundancyLost 4 }

pcnsMinRedundancyLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMinRedundancyLost 5 }

pcnsMinRedundancyLostEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsMinRedundancyLost 6 }

pcnsMinRedundancyLostShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsMinRedundancyLost 7 }

pcnsMinRedundancyRegained   OBJECT IDENTIFIER ::=  { pcnsEvents 23 }

pcnsMinRedundancyRegainedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMinRedundancyRegained 1 }

pcnsMinRedundancyRegainedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMinRedundancyRegained 2 }

pcnsMinRedundancyRegainedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMinRedundancyRegained 3 }

pcnsMinRedundancyRegainedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMinRedundancyRegained 4 }

pcnsMinRedundancyRegainedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMinRedundancyRegained 5 }


pcnsParallelRedundancyLost   OBJECT IDENTIFIER ::=  { pcnsEvents 24 }

pcnsParallelRedundancyLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsParallelRedundancyLost 1 }

pcnsParallelRedundancyLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsParallelRedundancyLost 2 }

pcnsParallelRedundancyLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsParallelRedundancyLost 3 }

pcnsParallelRedundancyLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsParallelRedundancyLost 4 }

pcnsParallelRedundancyLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsParallelRedundancyLost 5 }

pcnsParallelRedundancyLostEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsParallelRedundancyLost 6 }

pcnsParallelRedundancyLostShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsParallelRedundancyLost 7 }

pcnsParallelRedundancyRegained   OBJECT IDENTIFIER ::=  { pcnsEvents 25 }

pcnsParallelRedundancyRegainedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsParallelRedundancyRegained 1 }

pcnsParallelRedundancyRegainedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsParallelRedundancyRegained 2 }

pcnsParallelRedundancyRegainedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsParallelRedundancyRegained 3 }

pcnsParallelRedundancyRegainedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsParallelRedundancyRegained 4 }

pcnsParallelRedundancyRegainedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsParallelRedundancyRegained 5 }

pcnsMaxInternalTempExceeded   OBJECT IDENTIFIER ::=  { pcnsEvents 26 }

pcnsMaxInternalTempExceededDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMaxInternalTempExceeded 1 }

pcnsMaxInternalTempExceededEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMaxInternalTempExceeded 2 }

pcnsMaxInternalTempExceededEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMaxInternalTempExceeded 3 }

pcnsMaxInternalTempExceededCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMaxInternalTempExceeded 4 }

pcnsMaxInternalTempExceededCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMaxInternalTempExceeded 5 }

pcnsMaxInternalTempExceededEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsMaxInternalTempExceeded 6 }

pcnsMaxInternalTempExceededShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsMaxInternalTempExceeded 7 }

pcnsMaxInternalTempInRange   OBJECT IDENTIFIER ::=  { pcnsEvents 27 }

pcnsMaxInternalTempInRangeDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMaxInternalTempInRange 1 }

pcnsMaxInternalTempInRangeEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMaxInternalTempInRange 2 }

pcnsMaxInternalTempInRangeEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMaxInternalTempInRange 3 }

pcnsMaxInternalTempInRangeCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMaxInternalTempInRange 4 }

pcnsMaxInternalTempInRangeCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMaxInternalTempInRange 5 }


pcnsMinLoadCapabilityLost   OBJECT IDENTIFIER ::=  { pcnsEvents 28 }

pcnsMinLoadCapabilityLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMinLoadCapabilityLost 1 }

pcnsMinLoadCapabilityLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMinLoadCapabilityLost 2 }

pcnsMinLoadCapabilityLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMinLoadCapabilityLost 3 }

pcnsMinLoadCapabilityLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMinLoadCapabilityLost 4 }

pcnsMinLoadCapabilityLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMinLoadCapabilityLost 5 }

pcnsMinLoadCapabilityLostEnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsMinLoadCapabilityLost 6 }

pcnsMinLoadCapabilityLostShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsMinLoadCapabilityLost 7 }

pcnsMinLoadCapabilityRegained   OBJECT IDENTIFIER ::=  { pcnsEvents 29 }

pcnsMinLoadCapabilityRegainedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsMinLoadCapabilityRegained 1 }

pcnsMinLoadCapabilityRegainedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsMinLoadCapabilityRegained 2 }

pcnsMinLoadCapabilityRegainedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsMinLoadCapabilityRegained 3 }

pcnsMinLoadCapabilityRegainedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsMinLoadCapabilityRegained 4 }

pcnsMinLoadCapabilityRegainedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsMinLoadCapabilityRegained 5 }



-- PCNS Environmental Monitoring Card Events
pcnsEnvironmentCommunicationEstablished   OBJECT IDENTIFIER ::=  { pcnsEvents 30 }

pcnsEnvironmentCommunicationEstablishedDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsEnvironmentCommunicationEstablished 1 }

pcnsEnvironmentCommunicationEstablishedEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsEnvironmentCommunicationEstablished 2 }

pcnsEnvironmentCommunicationEstablishedEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsEnvironmentCommunicationEstablished 3 }

pcnsEnvironmentCommunicationEstablishedCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsEnvironmentCommunicationEstablished 4 }

pcnsEnvironmentCommunicationEstablishedCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsEnvironmentCommunicationEstablished 5 }



pcnsEnvironmentCommunicationLost   OBJECT IDENTIFIER ::=  { pcnsEvents 31 }

pcnsEnvironmentCommunicationLostDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsEnvironmentCommunicationLost 1 }

pcnsEnvironmentCommunicationLostEnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsEnvironmentCommunicationLost 2 }

pcnsEnvironmentCommunicationLostEnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsEnvironmentCommunicationLost 3 }

pcnsEnvironmentCommunicationLostCommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsEnvironmentCommunicationLost 4 }

pcnsEnvironmentCommunicationLostCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsEnvironmentCommunicationLost 5 }

pcnsTempInRangeProbe1   OBJECT IDENTIFIER ::=  { pcnsEvents 32 }

pcnsTempInRangeProbe1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsTempInRangeProbe1 1 }

pcnsTempInRangeProbe1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsTempInRangeProbe1 2 }

pcnsTempInRangeProbe1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsTempInRangeProbe1 3 }

pcnsTempInRangeProbe1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsTempInRangeProbe1 4 }

pcnsTempInRangeProbe1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsTempInRangeProbe1 5 }



pcnsTempOutOfRangeProbe1   OBJECT IDENTIFIER ::=  { pcnsEvents 33 }

pcnsTempOutOfRangeProbe1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsTempOutOfRangeProbe1 1 }

pcnsTempOutOfRangeProbe1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsTempOutOfRangeProbe1 2 }

pcnsTempOutOfRangeProbe1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsTempOutOfRangeProbe1 3 }

pcnsTempOutOfRangeProbe1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsTempOutOfRangeProbe1 4 }

pcnsTempOutOfRangeProbe1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsTempOutOfRangeProbe1 5 }

pcnsTempOutOfRangeProbe1EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsTempOutOfRangeProbe1 6 }

pcnsTempOutOfRangeProbe1ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsTempOutOfRangeProbe1 7 }


pcnsHumidityInRangeProbe1   OBJECT IDENTIFIER ::=  { pcnsEvents 34 }
pcnsHumidityInRangeProbe1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsHumidityInRangeProbe1 1 }

pcnsHumidityInRangeProbe1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsHumidityInRangeProbe1 2 }

pcnsHumidityInRangeProbe1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsHumidityInRangeProbe1 3 }

pcnsHumidityInRangeProbe1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsHumidityInRangeProbe1 4 }

pcnsHumidityInRangeProbe1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsHumidityInRangeProbe1 5 }



pcnsHumidityOutOfRangeProbe1   OBJECT IDENTIFIER ::=  { pcnsEvents 35 }

pcnsHumidityOutOfRangeProbe1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsHumidityOutOfRangeProbe1 1 }

pcnsHumidityOutOfRangeProbe1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsHumidityOutOfRangeProbe1 2 }

pcnsHumidityOutOfRangeProbe1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe1 3 }

pcnsHumidityOutOfRangeProbe1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe1 4 }

pcnsHumidityOutOfRangeProbe1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsHumidityOutOfRangeProbe1 5 }

pcnsHumidityOutOfRangeProbe1EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe1 6 }

pcnsHumidityOutOfRangeProbe1ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsHumidityOutOfRangeProbe1 7 }

pcnsTempInRangeProbe2   OBJECT IDENTIFIER ::=  { pcnsEvents 36 }

pcnsTempInRangeProbe2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsTempInRangeProbe2 1 }

pcnsTempInRangeProbe2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsTempInRangeProbe2 2 }

pcnsTempInRangeProbe2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsTempInRangeProbe2 3 }

pcnsTempInRangeProbe2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsTempInRangeProbe2 4 }

pcnsTempInRangeProbe2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsTempInRangeProbe2 5 }



pcnsTempOutOfRangeProbe2   OBJECT IDENTIFIER ::=  { pcnsEvents 37 }

pcnsTempOutOfRangeProbe2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsTempOutOfRangeProbe2 1 }

pcnsTempOutOfRangeProbe2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsTempOutOfRangeProbe2 2 }

pcnsTempOutOfRangeProbe2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsTempOutOfRangeProbe2 3 }

pcnsTempOutOfRangeProbe2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsTempOutOfRangeProbe2 4 }

pcnsTempOutOfRangeProbe2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsTempOutOfRangeProbe2 5 }

pcnsTempOutOfRangeProbe2EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsTempOutOfRangeProbe2 6 }

pcnsTempOutOfRangeProbe2ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsTempOutOfRangeProbe2 7 }


pcnsHumidityInRangeProbe2   OBJECT IDENTIFIER ::=  { pcnsEvents 38 }

pcnsHumidityInRangeProbe2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsHumidityInRangeProbe2 1 }

pcnsHumidityInRangeProbe2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsHumidityInRangeProbe2 2 }

pcnsHumidityInRangeProbe2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsHumidityInRangeProbe2 3 }

pcnsHumidityInRangeProbe2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsHumidityInRangeProbe2 4 }

pcnsHumidityInRangeProbe2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsHumidityInRangeProbe2 5 }



pcnsHumidityOutOfRangeProbe2   OBJECT IDENTIFIER ::=  { pcnsEvents 39 }

pcnsHumidityOutOfRangeProbe2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsHumidityOutOfRangeProbe2 1 }

pcnsHumidityOutOfRangeProbe2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsHumidityOutOfRangeProbe2 2 }

pcnsHumidityOutOfRangeProbe2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe2 3 }

pcnsHumidityOutOfRangeProbe2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe2 4 }

pcnsHumidityOutOfRangeProbe2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsHumidityOutOfRangeProbe2 5 }

pcnsHumidityOutOfRangeProbe2EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsHumidityOutOfRangeProbe2 6 }

pcnsHumidityOutOfRangeProbe2ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsHumidityOutOfRangeProbe2 7 }

pcnsContactFault1   OBJECT IDENTIFIER ::=  { pcnsEvents 40 }

pcnsContactFault1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactFault1 1 }

pcnsContactFault1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactFault1 2 }

pcnsContactFault1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactFault1 3 }

pcnsContactFault1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactFault1 4 }

pcnsContactFault1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactFault1 5 }

pcnsContactFault1EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsContactFault1 6 }

pcnsContactFault1ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsContactFault1 7 }


pcnsContactFault2   OBJECT IDENTIFIER ::=  { pcnsEvents 41 }

pcnsContactFault2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactFault2 1 }

pcnsContactFault2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactFault2 2 }

pcnsContactFault2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactFault2 3 }

pcnsContactFault2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactFault2 4 }

pcnsContactFault2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactFault2 5 }

pcnsContactFault2EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsContactFault2 6 }

pcnsContactFault2ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsContactFault2 7 }

pcnsContactFault3   OBJECT IDENTIFIER ::=  { pcnsEvents 42 }

pcnsContactFault3Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactFault3 1 }

pcnsContactFault3EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactFault3 2 }

pcnsContactFault3EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactFault3 3 }

pcnsContactFault3CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactFault3 4 }

pcnsContactFault3CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactFault3 5 }

pcnsContactFault3EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsContactFault3 6 }

pcnsContactFault3ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsContactFault3 7 }

pcnsContactFault4   OBJECT IDENTIFIER ::=  { pcnsEvents 43 }

pcnsContactFault4Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactFault4 1 }

pcnsContactFault4EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactFault4 2 }

pcnsContactFault4EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactFault4 3 }

pcnsContactFault4CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactFault4 4 }

pcnsContactFault4CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactFault4 5 }

pcnsContactFault4EnableShutdown OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Perform a graceful shutdown of the server when this event occurs."
   ::= { pcnsContactFault4 6 }

pcnsContactFault4ShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before performing a graceful shutdown of the server (seconds)."
   ::= { pcnsContactFault4 7 }

pcnsContactNormal1   OBJECT IDENTIFIER ::=  { pcnsEvents 44 }

pcnsContactNormal1Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactNormal1 1 }

pcnsContactNormal1EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactNormal1 2 }

pcnsContactNormal1EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactNormal1 3 }

pcnsContactNormal1CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactNormal1 4 }

pcnsContactNormal1CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactNormal1 5 }


pcnsContactNormal2   OBJECT IDENTIFIER ::=  { pcnsEvents 45 }

pcnsContactNormal2Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactNormal2 1 }

pcnsContactNormal2EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactNormal2 2 }

pcnsContactNormal2EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactNormal2 3 }

pcnsContactNormal2CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactNormal2 4 }

pcnsContactNormal2CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactNormal2 5 }


pcnsContactNormal3   OBJECT IDENTIFIER ::=  { pcnsEvents 46 }

pcnsContactNormal3Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactNormal3 1 }

pcnsContactNormal3EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactNormal3 2 }

pcnsContactNormal3EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactNormal3 3 }

pcnsContactNormal3CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactNormal3 4 }

pcnsContactNormal3CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactNormal3 5 }



pcnsContactNormal4   OBJECT IDENTIFIER ::=  { pcnsEvents 47 }

pcnsContactNormal4Desc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Description of the event."
   ::= { pcnsContactNormal4 1 }

pcnsContactNormal4EnableLogging OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Log occurrences of this event in PCNS log."
   ::= { pcnsContactNormal4 2 }

pcnsContactNormal4EnableCommandFile OBJECT-TYPE
   SYNTAX INTEGER {
            yes (1),
            no  (2)
         }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Execute a command file when this event occurs."
   ::= { pcnsContactNormal4 3 }

pcnsContactNormal4CommandFilePath OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Path of command file to execute when this event occurs."
   ::= { pcnsContactNormal4 4 }

pcnsContactNormal4CommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "How long to wait after event occurs before executing command file (seconds)."
   ::= { pcnsContactNormal4 5 }






-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsShutdown group

pcnsShutdownCommandFileEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Run a shutdown command file before performing graceful shutdown."
   ::= { pcnsShutdown 1 }

pcnsShutdownCommandFileDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "How long in seconds to wait before running a shutdown command file before graceful shutdown."
   ::= { pcnsShutdown 2 }

pcnsShutdownCommandFile OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Full name of the shutdown command file to run before graceful shutdown."
   ::= { pcnsShutdown 3 }

pcnsShutdownCommandFileDuration  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "How long in seconds shutdown command file takes to run."
   ::= { pcnsShutdown 4 }

pcnsTurnOffUps OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Turn off the UPS when performing a graceful shutdown."
   ::= { pcnsShutdown 5 }

pcnsTurnOffSOG OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Turn off the Outlet Group on the UPS when performing a graceful shutdown."
   ::= { pcnsShutdown 6 }

pcnsRuntimeRemainingThreshold  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "This defines a threshold for runtime remaining. When the
      UPS is running on battery power and the runtime remaining
      on the UPS drops below the threshold, PowerChute will trigger
      a shutdown sequence."
   ::= { pcnsShutdown 7 }

pcnsRuntimeRemainingCmdFileThreshold  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "This defines a threshold for runtime remaining. When
      runtime remaining drops below this threshold, PowerChute
      will execute the command file."
   ::= { pcnsShutdown 8 }

pcnsAdvancedShutdownTable OBJECT-TYPE
   SYNTAX SEQUENCE OF PCNSAdvancedShutdownEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Network Management Cards in the UPS's which PCNS is monitoring to provide safe shutdown."
   ::= { pcnsShutdown 9 }

pcnsAdvancedShutdownEntry OBJECT-TYPE
   SYNTAX PCNSAdvancedShutdownEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Details of the NMC."
   INDEX  { pcnsAdvancedGroupNo }
   ::= { pcnsAdvancedShutdownTable 1 }

PCNSAdvancedShutdownEntry ::=
   SEQUENCE {
        pcnsAdvancedGroupNo Gauge,
        pcnsAdvancedGroupName DisplayString,
        pcnsAdvancedGroupNMC DisplayString,
        pcnsAdvancedShutdownUPSRequiredForLoad INTEGER,
        pcnsAdvancedShutdownCommandFileEnabled INTEGER,
        pcnsAdvancedShutdownCommandFile DisplayString,
        pcnsAdvancedShutdownCommandFileDuration INTEGER,
        pcnsAdvancedShutdownPowerchuteServer INTEGER,
        pcnsAdvancedShutdownOnLostRedundancy INTEGER,
        pcnsAdvancedTurnOffUps INTEGER,
        pcnsAdvancedTurnOffSOG INTEGER
   }

pcnsAdvancedGroupNo OBJECT-TYPE
   SYNTAX  Gauge
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Index of the Advanced Shutdown Group."
   ::= { pcnsAdvancedShutdownEntry 1 }

pcnsAdvancedGroupName OBJECT-TYPE
   SYNTAX  DisplayString (SIZE (0..32))
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Name of the Advanced Shutdown Group."
   ::= { pcnsAdvancedShutdownEntry 2 }

pcnsAdvancedGroupNMC OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "List of NMCs in the Advanced Shutdown Group."
   ::= { pcnsAdvancedShutdownEntry 3 }

pcnsAdvancedShutdownUPSRequiredForLoad  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Number of UPS's required to power load."
   ::= { pcnsAdvancedShutdownEntry 4 }

pcnsAdvancedShutdownCommandFileEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Run a shutdown command file before performing graceful shutdown."
   ::= { pcnsAdvancedShutdownEntry 5 }

pcnsAdvancedShutdownCommandFile OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Full name of the shutdown command file to run before graceful shutdown."
   ::= { pcnsAdvancedShutdownEntry 6 }

pcnsAdvancedShutdownCommandFileDuration  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "How long in seconds shutdown command file takes to run."
   ::= { pcnsAdvancedShutdownEntry 7 }

pcnsAdvancedShutdownPowerchuteServer OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Shut down PowerChute Server."
   ::= { pcnsAdvancedShutdownEntry 8 }

pcnsAdvancedShutdownOnLostRedundancy OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Shut down if Redundancy lost."
   ::= { pcnsAdvancedShutdownEntry 9 }

pcnsAdvancedTurnOffUps OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Turn off the UPS when performing a graceful shutdown."
   ::= { pcnsAdvancedShutdownEntry 10 }

pcnsAdvancedTurnOffSOG OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "Turn off the Outlet Group on the UPS when performing a graceful shutdown."
   ::= { pcnsAdvancedShutdownEntry 11 }


-- the software group
-- the powerChuteNetworkShutdown group
-- the pcnsAlarms group

pcnsCriticalFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "PowerChute Network Shutdown has begun a safe shutdown of the host."
   ::= { pcnsAlarms 1 }

pcnsCriticalCause  OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..255))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The reason PowerChute Network Shutdown has begun a safe shutdown."
   ::= { pcnsAlarms 2 }

pcnsNetComsLostFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "PowerChute cannot communicate with NMC."
   ::= { pcnsAlarms 3 }

pcnsNMCComsLostFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "NMC cannot communicate with UPS."
   ::= { pcnsAlarms 4 }

pcnsUpdateAvailableFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "PowerChute has detected that a newer version is available."
   ::= { pcnsAlarms 5 }

pcnsUpdateDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..255))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Details of the newer version of PowerChute."
   ::= { pcnsAlarms 6 }

-- the software group
-- the powerChuteBusinessEdition group
-- the pcbeIdent group

pcbeHostname OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hostname of the PCBE instance."
   ::= { pcbeIdent 1 }

pcbeVersion OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of PCBE installed.  x.x.x"
   ::= { pcbeIdent 2 }

pcbeOS OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of OS PCBE is installed on."
   ::= { pcbeIdent 3 }

pcbeJavaVersion OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..32))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The version of Java PCBE is running on."
   ::= { pcbeIdent 4 }

pcbeUIProtocol OBJECT-TYPE
   SYNTAX INTEGER  {
      http(1),
      https(2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Web Protocol used to connect to the PCBE UI."
   ::= { pcbeIdent 5 }

pcbeHttpPort OBJECT-TYPE
   SYNTAX INTEGER(0..65535)
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Port used for PCBE http UI."
   ::= { pcbeIdent 6 }

pcbeHttpsPort OBJECT-TYPE
   SYNTAX INTEGER(0..65535)
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Port used for PCBE https UI."
   ::= { pcbeIdent 7 }



-- the software group
-- the powerChuteBusinessEdition group
-- the pcbeAlarms group

pcbeCriticalFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "PowerChute Business Edition has begun a safe shutdown of the host."
   ::= { pcbeAlarms 1 }

pcbeCriticalCause  OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..255))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The reason PowerChute Business Edition has begun a safe shutdown."
   ::= { pcbeAlarms 2 }

pcbeComsLostFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "If active (1), PowerChute cannot communicate with UPS"
   ::= { pcbeAlarms 3 }

-- pcbeAlarms 4 is deliberately skipped to make this consistent with PCNS

pcbeUpdateAvailableFlag  OBJECT-TYPE
   SYNTAX INTEGER {
      active (1),
      clear  (2)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "PowerChute has detected that a newer version is available."
   ::= { pcbeAlarms 5 }

pcbeUpdateDesc OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..255))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "Details of the newer version of PowerChute."
   ::= { pcbeAlarms 6 }

-- the ups group
-- the upsIdent group
-- the upsBasicIdent

upsBasicIdentModel OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The UPS model name (e.g. 'APC Smart-UPS 600')."
   ::= { upsBasicIdent 1 }

upsBasicIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An 8 byte ID string identifying the UPS.  This object
       can be set by the administrator."
   ::= { upsBasicIdent 2 }

upsBasicIdentFamilyName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The UPS model family name for the product."
   ::= { upsBasicIdent 3 }
   
upsBasicIdentModelType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The detailed model information of the system."
   ::= { upsBasicIdent 4 }

-- the upsAdvIdent group

upsAdvIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the UPS system's microprocessor."
   ::= { upsAdvIdent 1 }

upsAdvIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the UPS was manufactured in mm/dd/yy (or yyyy) format."
   ::= { upsAdvIdent 2 }

upsAdvIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An 8-character string identifying the serial number of
       the UPS internal microprocessor.  This number is set at
       the factory.  NOTE: This number does NOT correspond to
       the serial number on the rear of the UPS."
   ::= { upsAdvIdent 3 }

upsAdvIdentFirmwareRevision2 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of a UPS system co-microprocessor."
   ::= { upsAdvIdent 4 }

upsAdvIdentSkuNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The SKU number of a UPS system."
   ::= { upsAdvIdent 5 }

upsAdvIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of a UPS system."
   ::= { upsAdvIdent 6 }

upsAdvIdentUpsPhaseConfigType OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      threePhaseInOut(2),
      onePhaseInOut(3),
      threePhaseInOneOut(4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type definition, based on phase configuration.
      1 - Unknown
      2 - 3 phase in/out
      3 - 1 phase in/out
      4 - 3 phase in/1 phase out"
   ::= { upsAdvIdent 7 }

upsAdvEnergyStorageType OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      vrlaOrWetCells(2),
      niCdBatteries(3),
      liIonBatteries(4),
      noEnergyStorage(5),
      flywheel(6),
      ultracaps(7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The energy storage type connected to the UPS. It states battery type and battery chemistry.
      1 - Unknown
      2 - VRLA or wet cells
      3 - NiCd batteries
      4 - Lithium-ion batteries
      5 - No energy storage
      6 - Flywheel
      7 - Ultracaps"
   ::= { upsAdvIdent 8 }

-- the upsBattery group
-- the upsBasicBattery group

upsBasicBatteryStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      batteryNormal(2),
      batteryLow(3),
      batteryInFaultCondition(4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the UPS batteries. A batteryLow(3) value
       indicates the UPS will be unable to sustain the current
       load, and its services will be lost if power is not restored.
       The amount of run time in reserve at the time of low battery
       can be configured by the upsAdvConfigLowBatteryRunTime.
       A batteryInFaultCondition(4)value indicates that a battery
       installed has an internal error condition."
   ::= { upsBasicBattery 1 }

upsBasicBatteryTimeOnBattery OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The elapsed time since the UPS has switched to battery
       power."
   ::= { upsBasicBattery 2 }

upsBasicBatteryLastReplaceDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The date when the UPS system's batteries were last replaced
       in mm/dd/yy (or yyyy) format.  For Smart-UPS models, this value
       is originally set in the factory.  When the UPS batteries
       are replaced, this value should be reset by the administrator.
       For Symmetra PX 250/500 this OID is read only and is configurable in the local display only."
   ::= { upsBasicBattery 3 }

-- the upsAdvBattery group

upsAdvBatteryCapacity OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remaining battery capacity expressed in
       percent of full capacity."
   ::= { upsAdvBattery 1 }

upsAdvBatteryTemperature OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current internal UPS temperature expressed in
       Celsius. Temperatures below zero read as 0. 
       
       Consider using upsHighPrecExtdBatteryTemperature instead."
   ::= { upsAdvBattery 2 }

upsAdvBatteryRunTimeRemaining OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The UPS battery run time remaining before battery
       exhaustion."
   ::= { upsAdvBattery 3 }

upsAdvBatteryReplaceIndicator OBJECT-TYPE
   SYNTAX INTEGER  {
      noBatteryNeedsReplacing(1),
      batteryNeedsReplacing(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether the UPS batteries need replacing."
   ::= { upsAdvBattery 4 }

upsAdvBatteryNumOfBattPacks OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of external battery packs connected to the UPS. If
       the UPS does not use smart cells then the agent reports
       ERROR_NO_SUCH_NAME."
   ::= { upsAdvBattery 5 }

upsAdvBatteryNumOfBadBattPacks OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of external battery packs connected to the UPS that
       are defective. If the UPS does not use smart cells then the
       agent reports ERROR_NO_SUCH_NAME."
   ::= { upsAdvBattery 6 }

upsAdvBatteryNominalVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal battery voltage in Volts."
   ::= { upsAdvBattery 7 }

upsAdvBatteryActualVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual battery bus voltage in Volts."
   ::= { upsAdvBattery 8 }

upsAdvBatteryCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery current in Amps."
   ::= { upsAdvBattery 9 }

upsAdvTotalDCCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total DC current in Amps."
   ::= { upsAdvBattery 10 }

upsAdvBatteryFullCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The full chargeable capacity of the battery which is
       expressed in percentage."
   ::= { upsAdvBattery 11 }

-- Advanced Battery Voltage Table

   upsAdvBatteryActualVoltageTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSAdvBatteryActualVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of battery table entries. The number of battery
                frames present in UPS."
       ::= { upsAdvBattery 12 }


   upsAdvBatteryActualVoltageEntry OBJECT-TYPE
       SYNTAX     UPSAdvBatteryActualVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "Information applicable to
                each of the Battery frames."
       INDEX { upsAdvBatteryActualVoltageTableIndex }
       ::= { upsAdvBatteryActualVoltageTable 1 }

   UPSAdvBatteryActualVoltageEntry ::= SEQUENCE {
       upsAdvBatteryActualVoltageTableIndex    INTEGER,
       upsAdvBatteryActualVoltagePolarity      INTEGER,
       upsAdvBatteryFrameActualVoltage         INTEGER
   }

   upsAdvBatteryActualVoltageTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery Frame identifier. Battery Frame index."
       ::= { upsAdvBatteryActualVoltageEntry 1 }

   upsAdvBatteryActualVoltagePolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery Voltage Polarity.
                0 indicates positive polarity.
                1 indicates negative polarity."
       ::= { upsAdvBatteryActualVoltageEntry 2 }

   upsAdvBatteryFrameActualVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The actual battery bus voltage in Volts."
       ::= { upsAdvBatteryActualVoltageEntry 3 }

-- Advanced TotalDC Current Table

   upsAdvTotalDCCurrentTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSAdvTotalDCCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Frame table entries.  The number of entries
               is given by the value of Number of Battery Frames."
       ::= { upsAdvBattery 13 }


   upsAdvTotalDCCurrentEntry OBJECT-TYPE
       SYNTAX     UPSAdvTotalDCCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular Battery Frame."
       INDEX { upsAdvTotalDCCurrentTableIndex }
       ::= { upsAdvTotalDCCurrentTable 1 }

   UPSAdvTotalDCCurrentEntry ::= SEQUENCE {
       upsAdvTotalDCCurrentTableIndex    INTEGER,
       upsAdvTotalDCCurrentPolarity      INTEGER,
       upsAdvTotalFrameDCCurrent         INTEGER
   }

   upsAdvTotalDCCurrentTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery Frame identifier. Total DC Current
                Table Index."
       ::= { upsAdvTotalDCCurrentEntry 1 }

   upsAdvTotalDCCurrentPolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery Current Polarity.
                0 indicates positive polarity.
                1 indicates negative polarity."
       ::= { upsAdvTotalDCCurrentEntry 2 }

   upsAdvTotalFrameDCCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               " The Total DC Current of battery in Amperes."
       ::= { upsAdvTotalDCCurrentEntry 3 }



-- Advanced Battery Current Table

   upsAdvBatteryCurrentTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSAdvBatteryCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Frame table entries.  The number of entries
               is given by number of Battery frames present."
       ::= { upsAdvBattery 14 }

   upsAdvBatteryCurrentEntry OBJECT-TYPE
       SYNTAX     UPSAdvBatteryCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery frame."
       INDEX { upsAdvBatteryCurrentTableIndex, upsAdvBatteryCurrentIndex }
       ::= { upsAdvBatteryCurrentTable 1 }

   UPSAdvBatteryCurrentEntry ::= SEQUENCE {
       upsAdvBatteryCurrentTableIndex    INTEGER,
       upsAdvBatteryCurrentIndex         INTEGER,
       upsAdvBatteryCurrentPolarity      INTEGER,
       upsAdvBatteryFrameCurrent         INTEGER
   }

   upsAdvBatteryCurrentTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery Frame identifier. Battery Current
                Table Index."
       ::= { upsAdvBatteryCurrentEntry 1 }

   upsAdvBatteryCurrentIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery frame identifier."
       ::= { upsAdvBatteryCurrentEntry 2 }

   upsAdvBatteryCurrentPolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery current polarity.
                0 indicates positive polarity.
                1 indicates negative polarity"
       ::= { upsAdvBatteryCurrentEntry 3 }

   upsAdvBatteryFrameCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery current measured in Amperes"
       ::= { upsAdvBatteryCurrentEntry 4 }


   upsAdvBatteryEstimatedChargeTime      OBJECT-TYPE
      SYNTAX TimeTicks
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
        "The estimated remaining time required to charge the UPS to a full state of charge."
      ::= { upsAdvBattery 15 }

   upsAdvBatteryPower     OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
       "The measured battery power in kW."
     ::= { upsAdvBattery 16 }

    upsAdvBatteryChargerStatus    OBJECT-TYPE
      SYNTAX INTEGER  {
        unknown(1),
        ok(2),
        inFaultCondition(3),
        floatCharging(4),
        boostCharging(5),
        resting(6),
        notCharging(7),
        equalizationCharging(8),
        testInProgress(9),
        cyclicFloatCharging(10)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "The status of the battery charger. If the UPS is unable
        to find the state of charger, this variable is set to unknown(1)."
      ::= { upsAdvBattery 17 }


   upsAdvBatteryInternalSKU    OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "The SKU of the internal battery."
      ::= { upsAdvBattery 19 }

   upsAdvBatteryExternalSKU    OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "The SKU of the external battery."
      ::= { upsAdvBattery 20 }

   upsAdvBatteryRecommendedReplaceDate    OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "The recommended replacement date for the battery based on the UPS internal battery life algorithm."
      ::= { upsAdvBattery 21 }

   upsAdvBatteryNominalBackupTime OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "Defines the runtime of the user supplied battery in minutes, when battery is new."
      ::= { upsAdvBattery 22 }

    upsAdvBatteryCondition  OBJECT-TYPE
      SYNTAX INTEGER{
      unknown(1),
      ok(2),
      weak(3),
      poor(4)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "Health of the battries based on the battery test."
      ::= { upsAdvBattery 23 }

    upsAdvBatteryChargingCurrentRestricted  OBJECT-TYPE
      SYNTAX INTEGER{
      yes (1),
      no  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
     "Indicates whether battery charging current is restricted or not.
      The value of yes(1) indicates that battery charging current is restricted .
      The value of no(2) indicates that battery charging current is not restricted."
    ::= { upsAdvBattery 24 }

upsAdvBatteryTotalCapacity OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
         "The actual available battery capacity of the system expressed in ampere hours (Ah).
         The value is updated continuously, for example when battery breakers are opened or closed,
         or when battery strings/battery blocks are added or removed."
  ::= { upsAdvBattery 25 }
   
upsAdvBatteryFuseStatus  OBJECT-TYPE
  SYNTAX INTEGER {
      fuseOpen(1),
      fuseOk(2),
      notPresent(3)
      }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
   "If battery system has one common fuse for the battery system, the status is given by this value.
   1 = Fuse Open
   2 = Fuse Ok
   3 = Not present"
  ::= { upsAdvBattery 26 }

upsAdvBatteryBreakerStatus  OBJECT-TYPE
  SYNTAX INTEGER {
      disconnected(1),
      closed(2),
      notPresent(3)
      }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
   "The value indicates the aggregated status of the battery breakers in the system.
   disconnected(1) indicates none of the battery breakers are closed, and the battery system is disconnected
   closed(2) indicates at least one of the battery breakers in the system is closed
   notPresent(3) if not present"
  ::= { upsAdvBattery 27 }

upsAdvBatteryWiringConfiguration  OBJECT-TYPE
  SYNTAX INTEGER {
      twoWire(1),
      threeWire(2)
      }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
   "The value indicates the wiring configuration, whether the battery is 2-wire or 3-wire.
   If it's a 3-wire battery system, the system can have 2 voltages and currents per cabinet.
   1 = 2-wire (a non-split battery)
   2 = 3-wire (a split battery)"
  ::= { upsAdvBattery 28 }


-- the upsHighPrecBattery group

upsHighPrecBatteryCapacity OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remaining battery capacity expressed in
       tenths of percent of full capacity."
   ::= { upsHighPrecBattery 1 }

upsHighPrecBatteryTemperature OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current internal UPS temperature expressed in
       tenths of degrees Celsius. Temperatures below zero
       read as 0.
       
       Consider using upsHighPrecExtdBatteryTemperature instead."
   ::= { upsHighPrecBattery 2 }

upsHighPrecBatteryNominalVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal battery voltage in tenths of Volts."
   ::= { upsHighPrecBattery 3 }

upsHighPrecBatteryActualVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual battery bus voltage in tenths of Volts."
   ::= { upsHighPrecBattery 4 }

upsHighPrecBatteryCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery current in tenths of Amps."
   ::= { upsHighPrecBattery 5 }

upsHighPrecTotalDCCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total DC current in tenths of Amps."
   ::= { upsHighPrecBattery 6 }
   
-- High Precision Actual Battery Voltage Table

   upsHighPrecBatteryActualVoltageTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSHighPrecBatteryActualVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery frame table entries.  The number of entries
               is given by the number of Battery frames."
       ::= { upsHighPrecBattery 7 }


   upsHighPrecBatteryActualVoltageEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecBatteryActualVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery frame."
       INDEX { upsHighPrecBatteryActualVoltageTableIndex }
       ::= { upsHighPrecBatteryActualVoltageTable 1 }

   UPSHighPrecBatteryActualVoltageEntry ::= SEQUENCE {
       upsHighPrecBatteryActualVoltageTableIndex    INTEGER,
       upsHighPrecBatteryActualVoltagePolarity      INTEGER,
       upsHighPrecBatteryVoltage                    INTEGER
   }

   upsHighPrecBatteryActualVoltageTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery Frame identifier. High Precision
                Actual Voltage Table Index."
       ::= { upsHighPrecBatteryActualVoltageEntry 1 }

   upsHighPrecBatteryActualVoltagePolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery Voltage polarity.
                0 indicates positive polarity.
                1 indicates negative polarity."
       ::= { upsHighPrecBatteryActualVoltageEntry 2 }

   upsHighPrecBatteryVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The actual battery bus voltage expressed
                as tenths of Volts. "
       ::= { upsHighPrecBatteryActualVoltageEntry 3 }

-- High Precision Total DC Current Table

   upsHighPrecTotalDCCurrentTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSHighPrecTotalDCCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Frame table entries.  The number of entries
               is given by the number of battery frames."
       ::= { upsHighPrecBattery 8 }


   upsHighPrecTotalDCCurrentEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecTotalDCCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery frame."
       INDEX { upsHighPrecTotalDCCurrentTableIndex }
       ::= { upsHighPrecTotalDCCurrentTable 1 }

   UPSHighPrecTotalDCCurrentEntry ::= SEQUENCE {
       upsHighPrecTotalDCCurrentTableIndex    INTEGER,
       upsHighPrecTotalDCCurrentPolarity      INTEGER,
       upsHighPrecTotalDCFrameCurrent         INTEGER
   }

   upsHighPrecTotalDCCurrentTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery Frame identifier.
                High precision Total DC Current index."
       ::= { upsHighPrecTotalDCCurrentEntry 1 }

   upsHighPrecTotalDCCurrentPolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery Current polarity.
                0 indicates positive polarity.
                1 indicates negative polarity."
       ::= { upsHighPrecTotalDCCurrentEntry 2 }

   upsHighPrecTotalDCFrameCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The total DC current in tenths of Amperes. "
       ::= { upsHighPrecTotalDCCurrentEntry 3 }


-- HighPrec Battery Current Table

   upsHighPrecBatteryCurrentTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSHighPrecBatteryCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Frame table entries.  The number of entries
               is given by the number of battery frames."
       ::= { upsHighPrecBattery 9 }

   upsHighPrecBatteryCurrentEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecBatteryCurrentEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery frame."
       INDEX { upsHighPrecBatteryCurrentTableIndex, upsHighPrecBatteryCurrentIndex }
       ::= { upsHighPrecBatteryCurrentTable 1 }

   UPSHighPrecBatteryCurrentEntry ::= SEQUENCE {
       upsHighPrecBatteryCurrentTableIndex    INTEGER,
       upsHighPrecBatteryCurrentIndex         INTEGER,
       upsHighPrecBatteryCurrentPolarity      INTEGER,
       upsHighPrecBatteryFrameCurrent         INTEGER
   }

   upsHighPrecBatteryCurrentTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery frame identifier.
                Battery Frame index."
       ::= { upsHighPrecBatteryCurrentEntry 1 }

   upsHighPrecBatteryCurrentIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery frame identifier.
                Battery Index for each frame."
       ::= { upsHighPrecBatteryCurrentEntry 2 }

   upsHighPrecBatteryCurrentPolarity OBJECT-TYPE
       SYNTAX     INTEGER {
         positive       (0),
         negative       (1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The selected Battery Current polarity.
                0 indicates positive polarity.
                1 indicates negative polarity."
       ::= { upsHighPrecBatteryCurrentEntry 3 }

   upsHighPrecBatteryFrameCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Battery current in tenths of Amperes."
       ::= { upsHighPrecBatteryCurrentEntry 4 }

-- High Precision Battery Packs

upsHighPrecBatteryPacks OBJECT IDENTIFIER ::= { upsHighPrecBattery 10 }

upsHighPrecBatteryPackTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the upsHighPrecBatteryPacks."
   ::= { upsHighPrecBatteryPacks 1 }

   upsHighPrecBatteryPackTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSHighPrecBatteryPackEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Pack table entries.  The number of entries
               is given by number of Battery Packs present."
       ::= { upsHighPrecBatteryPacks 2 }

   upsHighPrecBatteryPackEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecBatteryPackEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery pack."
       INDEX { upsHighPrecBatteryPackIndex, upsHighPrecBatteryCartridgeIndex }
       ::= { upsHighPrecBatteryPackTable 1 }

   UPSHighPrecBatteryPackEntry ::= SEQUENCE {
       upsHighPrecBatteryPackIndex                 INTEGER,
       upsHighPrecBatteryCartridgeIndex            INTEGER,
       upsHighPrecBatteryPackFirmwareRevision      DisplayString,
       upsHighPrecBatteryPackSerialNumber          DisplayString,
       upsHighPrecBatteryPackTemperature           INTEGER,
       upsHighPrecBatteryPackStatus                OCTET STRING,
       upsHighPrecBatteryPackCartridgeHealth       OCTET STRING,
       upsHighPrecBatteryPackCartridgeReplaceDate  DisplayString,
       upsHighPrecBatteryPackCartridgeInstallDate  DisplayString,
       upsHighPrecBatteryPackCartridgeStatus       OCTET STRING
   }

   upsHighPrecBatteryPackIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack identifier."
       ::= { upsHighPrecBatteryPackEntry 1 }

   upsHighPrecBatteryCartridgeIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery cartridge identifier."
       ::= { upsHighPrecBatteryPackEntry 2 }

   upsHighPrecBatteryPackFirmwareRevision OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack firmware revision."
       ::= { upsHighPrecBatteryPackEntry 3}

   upsHighPrecBatteryPackSerialNumber OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack serial number."
       ::= { upsHighPrecBatteryPackEntry 4}

   upsHighPrecBatteryPackTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack temperature measured in 10ths of degree Celcius"
       ::= { upsHighPrecBatteryPackEntry 5 }

   upsHighPrecBatteryPackStatus OBJECT-TYPE
       SYNTAX     OCTET STRING
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery status for the pack only.
                bit 0 Disconnected
                bit 1 Overvoltage
                bit 2 NeedsReplacement
                bit 3 OvertemperatureCritical
                bit 4 Charger
                bit 5 TemperatureSensor
                bit 6 BusSoftStart
                bit 7 OvertemperatureWarning
                bit 8 GeneralError
                bit 9 Communication
                bit 10 DisconnectedFrame
                bit 11 FirmwareMismatch
               "
       ::= { upsHighPrecBatteryPackEntry 6 }

   upsHighPrecBatteryPackCartridgeHealth OBJECT-TYPE
       SYNTAX     OCTET STRING
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery cartridge health.
                bit 0 Battery lifetime okay
                bit 1 Battery lifetime near end, order replacement cartridge
                bit 2 Battery lifetime exceeded, replace battery
                bit 3 Battery lifetime near end acknowledged, order replacement cartridge
                bit 4 Battery lifetime exceeded acknowledged, replace battery
                bit 5 Battery measured lifetime near end, order replacement cartridge
                bit 6 Battery measured lifetime near end acknowledged, order replacement cartridge
               "
       ::= { upsHighPrecBatteryPackEntry 7}

   upsHighPrecBatteryPackCartridgeReplaceDate OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery cartridge estimated battery replace date."
       ::= { upsHighPrecBatteryPackEntry 8 }

   upsHighPrecBatteryPackCartridgeInstallDate OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "The battery cartridge install date."
       ::= { upsHighPrecBatteryPackEntry 9 }

   upsHighPrecBatteryPackCartridgeStatus OBJECT-TYPE
       SYNTAX     OCTET STRING
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery cartridge status.
                bit 0 Disconnected
                bit 1 Overvoltage
                bit 2 NeedsReplacement
                bit 3 OvertemperatureCritical
                bit 4 Charger
                bit 5 TemperatureSensor
                bit 6 BusSoftStart
                bit 7 OvertemperatureWarning
                bit 8 GeneralError
                bit 9 Communication
                bit 10 DisconnectedFrame
                bit 11 FirmwareMismatch
               "
       ::= { upsHighPrecBatteryPackEntry 10 }

upsHighPrecBatteryPackOnlyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the upsHighPrecBatteryPacks."
   ::= { upsHighPrecBatteryPacks 3 }

   upsHighPrecBatteryPackOnlyTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSHighPrecBatteryPackOnlyEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Battery Pack table entries.  The number of entries
               is given by number of Battery Packs present."
       ::= { upsHighPrecBatteryPacks 4 }

   upsHighPrecBatteryPackOnlyEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecBatteryPackOnlyEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular battery pack."
       INDEX { upsHighPrecBatteryPackOnlyIndex }
       ::= { upsHighPrecBatteryPackOnlyTable 1 }

   UPSHighPrecBatteryPackOnlyEntry ::= SEQUENCE {
       upsHighPrecBatteryPackOnlyIndex                 INTEGER,
       upsHighPrecBatteryPackOnlyFirmwareRevision      DisplayString,
       upsHighPrecBatteryPackOnlySerialNumber          DisplayString,
       upsHighPrecBatteryPackOnlyTemperature           INTEGER,
       upsHighPrecBatteryPackOnlyStatus                OCTET STRING,
       upsHighPrecBatteryPackOnlyHealth                OCTET STRING,
       upsHighPrecBatteryPackOnlyReplaceDate           DisplayString,
       upsHighPrecBatteryPackOnlyInstallDate           DisplayString
   }

   upsHighPrecBatteryPackOnlyIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack identifier."
       ::= { upsHighPrecBatteryPackOnlyEntry 1 }

   upsHighPrecBatteryPackOnlyFirmwareRevision OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack firmware revision."
       ::= { upsHighPrecBatteryPackOnlyEntry 2}

   upsHighPrecBatteryPackOnlySerialNumber OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack serial number."
       ::= { upsHighPrecBatteryPackOnlyEntry 3}

   upsHighPrecBatteryPackOnlyTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack temperature measured in 10ths of degree Celcius"
       ::= { upsHighPrecBatteryPackOnlyEntry 4 }

   upsHighPrecBatteryPackOnlyStatus OBJECT-TYPE
       SYNTAX     OCTET STRING
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery status for the pack only.
                bit 0 Disconnected
                bit 1 Overvoltage
                bit 2 NeedsReplacement
                bit 3 OvertemperatureCritical
                bit 4 Charger
                bit 5 TemperatureSensor
                bit 6 BusSoftStart
                bit 7 OvertemperatureWarning
                bit 8 GeneralError
                bit 9 Communication
                bit 10 DisconnectedFrame
                bit 11 FirmwareMismatch
               "
       ::= { upsHighPrecBatteryPackOnlyEntry 5 }

   upsHighPrecBatteryPackOnlyHealth OBJECT-TYPE
       SYNTAX     OCTET STRING
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack health.
                bit 0 Battery lifetime okay
                bit 1 Battery lifetime near end, order replacement pack
                bit 2 Battery lifetime exceeded, replace battery
                bit 3 Battery lifetime near end acknowledged, order replacement pack
                bit 4 Battery lifetime exceeded acknowledged, replace battery
                bit 5 Battery measured lifetime near end, order replacement pack
                bit 6 Battery measured lifetime near end acknowledged, order replacement pack
               "
       ::= { upsHighPrecBatteryPackOnlyEntry 6 }

   upsHighPrecBatteryPackOnlyReplaceDate OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery pack estimated battery replace date."
       ::= { upsHighPrecBatteryPackOnlyEntry 7 }

   upsHighPrecBatteryPackOnlyInstallDate OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "The battery pack install date."
       ::= { upsHighPrecBatteryPackOnlyEntry 8 }

-- end of High Precision Battery Packs

upsHighPrecBatteryHealth OBJECT-TYPE
   SYNTAX OCTET STRING
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery health.
       Bit 0 Battery life okay
       Bit 1 Battery life near end, order battery cartridge
       Bit 2 Battery life exceeded, replace battery cartridge
       Bit 3 Battery life near end acknowledged, order battery
             cartridge
       Bit 4 Battery life exceeded acknowledged, replace battery
             cartridge
       Bit 5 Battery measured life near end, order battery cartridge
       Bit 6 Battery measured life near end acknowledged, order
             battery cartridge"
   ::= { upsHighPrecBattery 11}

upsHighPrecActivePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Active Power of Battery in tenths of kW"
   ::= { upsHighPrecBattery 12 }

upsHighPrecExtdBatteryTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current internal UPS temperature expressed in
       tenths of degrees Celsius. Can be negative."
   ::= { upsHighPrecBattery 13 }

    upsBatteryNumberOfCabinets  OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
       "The value indicates the number of battery cabinets in total, internal and external.
       If the UPS only has internal batteries, that number should be 1.
       If the UPS has external and internal, the number is 1 + number of external cabinets."
      ::= { upsBattery 4 }

-- Battery Cabinet Table

   upsBatteryCabinetTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSBatteryCabinetEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
        "Table of battery cabinets"
       ::= { upsBattery 5 }

   upsBatteryCabinetEntry OBJECT-TYPE
       SYNTAX     UPSBatteryCabinetEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
        "An entry containing information applicable to a
        particular battery cabinet."
       INDEX { upsBatteryCabinetIndex }
       ::= { upsBatteryCabinetTable 1 }

   UPSBatteryCabinetEntry ::= SEQUENCE {
       upsBatteryCabinetIndex                       INTEGER,
       upsBatteryCabinetLocalIndex                  INTEGER,
       upsBatteryCabinetWiringConfiguration         INTEGER,
       upsBatteryCabinetVoltagePolarity1            INTEGER,
       upsBatteryCabinetVoltagePolarity2            INTEGER,
       upsBatteryCabinetCurrentPolarity1            INTEGER,
       upsBatteryCabinetCurrentPolarity2            INTEGER,
       upsBatteryCabinetTemperature                 INTEGER,
       upsBatteryCabinetMaxTemperature              INTEGER,
       upsBatteryCabinetMinTemperature              INTEGER,
       upsBatteryCabinetAverageTemperature          INTEGER,
       upsBatteryCabinetFuse                        INTEGER,
       upsBatteryCabinetBreaker                     INTEGER,
       upsBatteryCabinetNumberOfStrings             INTEGER,
       upsBatteryCabinetNumberOfVerticalPositions   INTEGER,
       upsBatteryCabinetNumberOfHorizontalPositions INTEGER
   }

   upsBatteryCabinetIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The Battery Cabinet identifier. Battery Cabinet
        Table Index."
       ::= { upsBatteryCabinetEntry 1 }

   upsBatteryCabinetLocalIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The identification number for the actual battery cabinet in the system.
        0 corresponds to the internal batteries
        1 and higher corresponds to external battery cabinets"
       ::= { upsBatteryCabinetEntry 2 }

   upsBatteryCabinetWiringConfiguration OBJECT-TYPE
       SYNTAX     INTEGER {
          twoWire(1),
          threeWire(2)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The value indicates the wiring configuration, whether the battery is 2-wire or 3-wire.
        If it's a 3-wire battery system, the system can have two voltages and currents per cabinet.
        1 = 2-wire (a non-split battery)
        2 = 3-wire (a split battery)"
       ::= { upsBatteryCabinetEntry 3 }

   upsBatteryCabinetVoltagePolarity1 OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The battery voltage. For a non-split battery, it is the full voltage.
        For a split battery, the value is the voltage for one side/half of the battery"
       ::= { upsBatteryCabinetEntry 4 }

   upsBatteryCabinetVoltagePolarity2 OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The voltage for the second side/half of the battery in a split battery system.
        If it is not a split battery, this reports -1"
       ::= { upsBatteryCabinetEntry 5 }
       
   upsBatteryCabinetCurrentPolarity1 OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The battery current. For a non-split battery, it is the full current.
        For a split battery, the value is the current for one side/half of the battery"
       ::= { upsBatteryCabinetEntry 6 }

   upsBatteryCabinetCurrentPolarity2 OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The current for the second side/half of the battery in a split battery system.
        If it is not a split battery, this reports -1"
       ::= { upsBatteryCabinetEntry 7 }

   upsBatteryCabinetTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The measured temperature of the battery cabinet in tenths of degrees Celcius"
       ::= { upsBatteryCabinetEntry 8 }

   upsBatteryCabinetMaxTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The highest temperature measured for the battery in the battery cabinet in tenths of degrees Celcius.
        If there are multiple sensors in the battery cabinet, it is the selected highest actual value
        of measured temperatures.
        If there is battery string information, it is the highest actual battery string temperature value."
       ::= { upsBatteryCabinetEntry 9 }
       
   upsBatteryCabinetMinTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The lowest temperature measured for the battery in the battery cabinet in tenths of degrees Celcius.
        If there are multiple sensors in the battery cabinet, it is the selected lowest actual value
        of measured temperatures.
        If there is string information, it is the lowest actual battery string temperature value."
       ::= { upsBatteryCabinetEntry 10 }

   upsBatteryCabinetAverageTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The average temperature for all the battery sensors in the battery cabinet and
        for the battery strings, if battery strings are present.
        Measured in tenths of degrees Celcius."
       ::= { upsBatteryCabinetEntry 11 }

   upsBatteryCabinetFuse OBJECT-TYPE
       SYNTAX     INTEGER {
          fuseOpen(1),
          fuseOk(2),
          notPresent(3)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "If the battery cabinet has a common fuse, the status is given by this value.
        1 = Fuse open
        2 = Fuse OK
        3 = Not present"
       ::= { upsBatteryCabinetEntry 12 }

   upsBatteryCabinetBreaker OBJECT-TYPE
       SYNTAX     INTEGER {
          noBreaker(1),
          unknown(2),
          breakerOpen(3),
          breakerClosed(4)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The value indicates the battery cabinet breaker status. Reports 1 if no breaker is present.
        1 = No breaker
        2 = Unknown
        3 = Breaker open
        4 = Breaker closed"
       ::= { upsBatteryCabinetEntry 13 }

   upsBatteryCabinetNumberOfStrings OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The number of battery strings in the battery cabinet. The value can be 0,
        meaning that no additional information on the battery string is available.
        1 and higher means data in the table is provided."
       ::= { upsBatteryCabinetEntry 14 }

   upsBatteryCabinetNumberOfVerticalPositions OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The number of vertical levels or shelves for battery blocks/modules.
        The levels are indexed from the bottom up"
       ::= { upsBatteryCabinetEntry 15 }

   upsBatteryCabinetNumberOfHorizontalPositions OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
        "The number of horizontal positions for battery blocks/modules.
        The levels are indexed from left to right"
       ::= { upsBatteryCabinetEntry 16 }

-- Battery Cabinet String Table

   upsBatteryCabStringTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSBatteryCabStringEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "Table of battery strings in the complete battery solution"
       ::= { upsBattery 6 }

   upsBatteryCabStringEntry OBJECT-TYPE
       SYNTAX     UPSBatteryCabStringEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "An entry containing information applicable to a particular battery string
               in the battery cabinet."
       INDEX { upsBatteryCabStringIndex }
       ::= { upsBatteryCabStringTable 1 }

   UPSBatteryCabStringEntry ::= SEQUENCE {
       upsBatteryCabStringIndex                 INTEGER,
       upsBatteryCabStringCabReference          INTEGER,
       upsBatteryCabStringLocalIndex            INTEGER,
       upsBatteryCabStringCurrent               INTEGER,
       upsBatteryCabStringAverageTemperature    INTEGER,
       upsBatteryCabStringMaxTemperature        INTEGER,
       upsBatteryCabStringMinTemperature        INTEGER,
       upsBatteryCabStringFuseStatus            INTEGER,
       upsBatteryCabStringNumberOfBlocks        INTEGER
   }

   upsBatteryCabStringIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The battery cabinet string identifier. Battery cabinet string or halfstring
                table index."
       ::= { upsBatteryCabStringEntry 1 }

   upsBatteryCabStringCabReference OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Reference to the global battery cabinet index where the battery string is placed."
       ::= { upsBatteryCabStringEntry 2 }

   upsBatteryCabStringLocalIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Local battery string identification index in the actual battery cabinet (E.g. String 2 in cabinet)"
       ::= { upsBatteryCabStringEntry 3 }

   upsBatteryCabStringCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The current in a battery string or battery halfstring, in tenths of Amps."
       ::= { upsBatteryCabStringEntry 4 }

   upsBatteryCabStringAverageTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Temperature of the battery string or the average of the aggregated temperature of each
               battery block/module (in tenths of degrees Celcius). "
       ::= { upsBatteryCabStringEntry 5 }

   upsBatteryCabStringMaxTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The actual highest battery temperature measurement for the battery blocks/modules (in tenths of degrees Celcius)."
       ::= { upsBatteryCabStringEntry 6 }

   upsBatteryCabStringMinTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The actual lowest battery temperature measurement for the battery blocks/modules (in tenths of degrees Celcius)."
       ::= { upsBatteryCabStringEntry 7 }

   upsBatteryCabStringFuseStatus OBJECT-TYPE
       SYNTAX     INTEGER {
          fuseOpen(1),
          fuseOk(2),
          notPresent(3)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "If the battery string has a common fuse, the status is given by this value.
                1 = Fuse open
                2 = Fuse OK
                3 = Not present"
       ::= { upsBatteryCabStringEntry 8 }

   upsBatteryCabStringNumberOfBlocks OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The number of battery blocks/modules in a battery string.
                Can be 0, if no data is available in the table of individual battery blocks/cartridges"
       ::= { upsBatteryCabStringEntry 9 }

-- Battery Cabinet Block Table

   upsBatteryCabBlockTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSBatteryCabBlockEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "Table of battery blocks/modules in the complete battery solution."
       ::= { upsBattery 7 }

   upsBatteryCabBlockEntry OBJECT-TYPE
       SYNTAX     UPSBatteryCabBlockEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "An entry containing information applicable to a particular battery block
               in the battery cabinet."
       INDEX { upsBatteryCabBlockIndex }
       ::= { upsBatteryCabBlockTable 1 }

   UPSBatteryCabBlockEntry ::= SEQUENCE {
       upsBatteryCabBlockIndex              INTEGER,
       upsBatteryCabBlockStringReference    INTEGER,
       upsBatteryCabBlockLocalIndex         INTEGER,
       upsBatteryCabBlockPresent            INTEGER,
       upsBatteryCabBlockType               DisplayString,
       upsBatteryCabBlockTemperature        INTEGER,
       upsBatteryCabBlockFuseStatus         INTEGER,
       upsBatteryCabBlockVoltage            INTEGER,
       upsBatteryCabBlockNumberOfCells      INTEGER,
       upsBatteryCabBlockVerticalPosition   INTEGER,
       upsBatteryCabBlockHorizontalPosition INTEGER
   }

   upsBatteryCabBlockIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The battery cabinet block identifier. Global battery cabinet block
                table index."
       ::= { upsBatteryCabBlockEntry 1 }

   upsBatteryCabBlockStringReference OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Reference to the specific global battery string index"
       ::= { upsBatteryCabBlockEntry 2 }

   upsBatteryCabBlockLocalIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Local battery block/module identification index in the actual battery string (E.g. Battery block 3 in the battery string)"
       ::= { upsBatteryCabBlockEntry 3 }

   upsBatteryCabBlockPresent OBJECT-TYPE
       SYNTAX     INTEGER {
          present(1),
          notPresent(2),
          notAvailable(3)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Value indicates if battery block/module is present in the system.
               Typically battery modules are removable and battery blocks are static. Reports notAvailable(3) if data is not available"
       ::= { upsBatteryCabBlockEntry 4 }

   upsBatteryCabBlockType OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Text string value, showing the vendor and model of the battery in the battery block/module"
       ::= { upsBatteryCabBlockEntry 5 }

   upsBatteryCabBlockTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The temperature for the battery block/module in tenths of degrees Celcius.
               If multiple sensors are available it is the highest temperature in the battery block/module"
       ::= { upsBatteryCabBlockEntry 6 }

   upsBatteryCabBlockFuseStatus OBJECT-TYPE
       SYNTAX     INTEGER {
          fuseOpen(1),
          fuseOk(2),
          notPresent(3)
          }
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "If the battery module has a fuse, the status is given by this value.
               1 = Fuse open
               2 = Fuse OK
               3 = Not present"
       ::= { upsBatteryCabBlockEntry 7 }

   upsBatteryCabBlockVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The voltage of the battery block/module"
       ::= { upsBatteryCabBlockEntry 8 }

   upsBatteryCabBlockNumberOfCells OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The number of cells in the battery block/module"
       ::= { upsBatteryCabBlockEntry 9 }

   upsBatteryCabBlockVerticalPosition OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The vertical position of the battery block/module in the actual battery cabinet
               (E.g. 4, if it is the 4th shelf counting from the bottom)"
       ::= { upsBatteryCabBlockEntry 10 }

   upsBatteryCabBlockHorizontalPosition OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The horizontal position of the battery block/module in the actual battery cabinet
               (E.g. 3, if it is the 3rd position counting from the left)"
       ::= { upsBatteryCabBlockEntry 11 }

-- Battery Block Cell Table

   upsBatteryCabBlockCellTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UPSBatteryCabBlockCellEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "Table of battery cells in a battery block/module in the complete battery solution"
       ::= { upsBattery 8 }

   upsBatteryCabBlockCellEntry OBJECT-TYPE
       SYNTAX     UPSBatteryCabBlockCellEntry
       ACCESS     not-accessible
       STATUS     optional
       DESCRIPTION
               "An entry containing information applicable to a particular battery cell
               inside the battery block."
       INDEX { upsBatteryCabBlockCellIndex }
       ::= { upsBatteryCabBlockCellTable 1 }

   UPSBatteryCabBlockCellEntry ::= SEQUENCE {
       upsBatteryCabBlockCellIndex          INTEGER,
       upsBatteryCabBlockCellReference      INTEGER,
       upsBatteryCabBlockCellLocalIndex     INTEGER,
       upsBatteryCabBlockCellVoltage        INTEGER,
       upsBatteryCabBlockCellTemperature    INTEGER
   }

   upsBatteryCabBlockCellIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The battery block cell identifier. Global battery block cell
                table index."
       ::= { upsBatteryCabBlockCellEntry 1 }

   upsBatteryCabBlockCellReference OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Reference to the specific global battery block/module index."
       ::= { upsBatteryCabBlockCellEntry 2 }

   upsBatteryCabBlockCellLocalIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "Local battery block/module identification index in the actual battery block (E.g. battery cell 5 in the battery block)"
       ::= { upsBatteryCabBlockCellEntry 3 }

   upsBatteryCabBlockCellVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The measured battery cell voltage"
       ::= { upsBatteryCabBlockCellEntry 4 }

   upsBatteryCabBlockCellTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     optional
       DESCRIPTION
               "The temperature for the battery cell in tenths of degrees Celcius.
               If there is not a temperature sensor for each battery cell, then report -1 for those, which are not present."
       ::= { upsBatteryCabBlockCellEntry 5 }

-- the upsBasicInput group

upsBasicInputPhase OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current AC input phase."
   ::= { upsBasicInput 1 }


-- the upsAdvInput group

upsAdvInputLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current utility line voltage in VAC."
   ::= { upsAdvInput 1 }

upsAdvInputMaxLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum utility line voltage in VAC over the
       previous 1 minute period."
   ::= { upsAdvInput 2 }

upsAdvInputMinLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum utility line voltage in VAC over the
       previous 1 minute period."
   ::= { upsAdvInput 3 }

upsAdvInputFrequency OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current input frequency to the UPS system in Hz."
   ::= { upsAdvInput 4 }


upsAdvInputLineFailCause OBJECT-TYPE
   SYNTAX INTEGER  {
      noTransfer(1),
      highLineVoltage(2),
      brownout(3),
      blackout(4),
      smallMomentarySag(5),
      deepMomentarySag(6),
      smallMomentarySpike(7),
      largeMomentarySpike(8),
      selfTest(9),
      rateOfVoltageChange(10)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The reason for the occurrence of the last transfer to UPS
       battery power.  The variable is set to:
       - noTransfer(1) -- if there is no transfer yet.
       - highLineVoltage(2) -- if the transfer to battery is caused
       by an over voltage greater than the high transfer voltage.
       - brownout(3) -- if the duration of the outage is greater than
       five seconds and the line voltage is between 40% of the
       rated output voltage and the low transfer voltage.
       - blackout(4) -- if the duration of the outage is greater than five
       seconds and the line voltage is between 40% of the rated
       output voltage and ground.
       - smallMomentarySag(5) -- if the duration of the outage is less
       than five seconds and the line voltage is between 40% of the
       rated output voltage and the low transfer voltage.
       - deepMomentarySag(6) -- if the duration of the outage is less
       than five seconds and the line voltage is between 40% of the
       rated output voltage and ground.  The variable is set to
       - smallMomentarySpike(7) -- if the line failure is caused by a
       rate of change of input voltage less than ten volts per cycle.
       - largeMomentarySpike(8) -- if the line failure is caused by
       a rate of change of input voltage greater than ten volts per cycle.
       - selfTest(9) -- if the UPS was commanded to do a self test.
       - rateOfVoltageChange(10) -- if the failure is due to the rate of change of
       the line voltage."
   ::= { upsAdvInput 5 }


upsAdvInputNominalFrequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal input frequency of the UPS system in Hz."
   ::= { upsAdvInput 6 }

upsAdvInputNominalVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal input voltage of the UPS system in VAC."
   ::= { upsAdvInput 7 }

upsAdvInputBypassNominalFrequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal bypass input frequency of the UPS system in Hz."
   ::= { upsAdvInput 8 }

upsAdvInputBypassNominalVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal bypass input voltage of the UPS system in VAC."
   ::= { upsAdvInput 9 }

   upsAdvInputStatisticsTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsAdvInputStatisticsEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the value of upsPhaseNumInputs."
       ::= { upsAdvInput 10 }

   upsAdvInputStatisticsEntry OBJECT-TYPE
       SYNTAX     UpsAdvInputStatisticsEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input."
       INDEX { upsAdvInputStatisticsIndex }
       ::= { upsAdvInputStatisticsTable 1 }

UpsAdvInputStatisticsEntry ::= SEQUENCE {
       upsAdvInputStatisticsIndex       INTEGER,
       upsAdvInputApparentPower         INTEGER,
       upsAdvInputVoltageTHD            INTEGER,
       upsAdvInputBypassVoltageTHD      INTEGER,
       upsAdvInputPeakCurrent           INTEGER,
       upsAdvInputBypassPeakCurrent     INTEGER,
       upsAdvInputActivePower           INTEGER
   }

   upsAdvInputStatisticsIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { upsAdvInputStatisticsEntry 1 }

upsAdvInputApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input apparent power(sum of all of the three phases) measured in kVA."
   ::= { upsAdvInputStatisticsEntry 2 }

upsAdvInputVoltageTHD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input voltage Total Harmonic Distortion in percent."
   ::= { upsAdvInputStatisticsEntry 3 }

upsAdvInputBypassVoltageTHD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The bypass input voltage Total Harmonic Distortion in percent."
   ::= { upsAdvInputStatisticsEntry 4 }

upsAdvInputPeakCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input peak current in Amperes."
   ::= { upsAdvInputStatisticsEntry 5 }

upsAdvInputBypassPeakCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The bypass input peak current in Amperes."
   ::= { upsAdvInputStatisticsEntry 6 }


upsAdvInputActivePower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
       "The input active power measured in kW."
       ::= { upsAdvInputStatisticsEntry 7 }




upsAdvInputTotalApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input total apparent power(sum of all three phases)
       of the UPS system in kVA."
   ::= { upsAdvInput 11 }

upsAdvInputTotalActivePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input total active power(sum of all three phases)
       of the UPS system in kW."
   ::= { upsAdvInput 12 }

upsAdvInputBypassTotalApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input bypass total apparent power(sum of all three phases)
       of the UPS system in kVA."
   ::= { upsAdvInput 13 }

upsAdvInputBypassTotalActivePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input bypass total active power(sum of all three phases)
       of the UPS system in kW."
   ::= { upsAdvInput 14 }

upsAdvInputEnergyUsage OBJECT-TYPE
   SYNTAX Unsigned32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input energy usage of the UPS in kWh."
   ::= { upsAdvInput 15 }
   
upsAdvInputDCVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The DC input voltage in Volts."
   ::= { upsAdvInput 16 }
      
upsAdvInputDCCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The DC input current in Amps."
   ::= { upsAdvInput 17 }
  
-- the upsHighPrecInput group

upsHighPrecInputLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current utility line voltage in tenths of VAC."
   ::= { upsHighPrecInput 1 }

upsHighPrecInputMaxLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum utility line voltage in tenths of VAC over the
       previous 1 minute period."
   ::= { upsHighPrecInput 2 }

upsHighPrecInputMinLineVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum utility line voltage in tenths of VAC over the
       previous 1 minute period."
   ::= { upsHighPrecInput 3 }

upsHighPrecInputFrequency OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current input frequency to the UPS system in tenths of Hz."
   ::= { upsHighPrecInput 4 }


upsHighPrecInputEnergyUsage    OBJECT-TYPE
   SYNTAX Unsigned32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input energy usage of the UPS in hundredths of kWh."
   ::= { upsHighPrecInput 5 }

upsHighPrecInputBypassVoltage OBJECT-TYPE
   SYNTAX Unsigned32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current bypass line voltage in tenths of VAC."
   ::= { upsHighPrecInput 6 }

upsHighPrecInputBypassFrequency OBJECT-TYPE
   SYNTAX Unsigned32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current input bypass frequency to the UPS system in tenths of Hz."
   ::= { upsHighPrecInput 7 }

-- the upsBasicOutput group
upsBasicOutputStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      onLine(2),
      onBattery(3),
      onSmartBoost(4),
      timedSleeping(5),
      softwareBypass(6),
      off(7),
      rebooting(8),
      switchedBypass(9),
      hardwareFailureBypass(10),
      sleepingUntilPowerReturn(11),
      onSmartTrim(12),
      ecoMode(13),
      hotStandby(14),
      onBatteryTest(15),
      emergencyStaticBypass(16),
      staticBypassStandby(17),
      powerSavingMode(18),
      spotMode(19),
      eConversion(20),
      chargerSpotmode(21),
      inverterSpotmode(22),
      activeLoad(23),
      batteryDischargeSpotmode(24),
      inverterStandby (25),
      chargerOnly(26)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current state of the UPS. If the UPS is unable to
       determine the state of the UPS this variable is set
       to unknown(1). 
       
       During self-test most UPSes report onBattery(3) but 
       some that support it will report onBatteryTest(15). 
       To determine self-test status across all UPSes, refer 
       to the upsBasicStateOutputState OID."
   ::= { upsBasicOutput 1 }
  
upsBasicOutputPhase OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual number of output phases in a UPS"
   ::= { upsBasicOutput 2 }

upsBasicSystemStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      onLine(2),
      onBattery(3),
      onSmartBoost(4),
      timedSleeping(5),
      softwareBypass(6),
      off(7),
      rebooting(8),
      switchedBypass(9),
      hardwareFailureBypass(10),
      sleepingUntilPowerReturn(11),
      onSmartTrim(12),
      ecoMode(13),
      inverter(14),
      eConversion(15),
      staticBypassStandby(16),
      efficiencyBoosterMode(17)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Current state for the whole system (UPS and surrounding breakers).
       If the UPS is unable to determine the state of the system, this
       variable is set to unknown(1)."
   ::= { upsBasicOutput 3 }

upsBasicSystemInternalTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual internal temperature of the UPS system in Celsius."
   ::= { upsBasicOutput 4 }


   upsBasicSystemInverterStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      ok(2),
      inFaultCondition(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current state of the UPS inverter. If the UPS is unable
       to determine the state of the inverter, this variable is set
       to unknown(1)."
   ::= { upsBasicOutput 5 }

  upsBasicSystemPFCStatus OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      ok(2),
      inFaultCondition(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The general status of the power factor correction (AC input stage
       of the UPS). If the UPS is unable to determine the state of PFC,
       this variable is set to unknown(1)."
   ::= { upsBasicOutput 6 }

   upsBasicOutputACwiringConfiguration OBJECT-TYPE
      SYNTAX INTEGER  {
      unknown(1),
      noNeutralWiredonSystem(2),
      neutralUsedforSupplyingLoad(3)

   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates if neutral wire on output side of the UPS is
       used (load wired line to neutral). If the UPS is unable to
       determine the state of neutral, this variable is set to
       unknown(1)."
   ::= { upsBasicOutput 7 }



-- the upsAdvOutput group

upsAdvOutputVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The output voltage of the UPS system in VAC."
   ::= { upsAdvOutput 1 }

upsAdvOutputFrequency OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current output frequency of the UPS system in Hz."
   ::= { upsAdvOutput 2 }

upsAdvOutputLoad OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current UPS load expressed in percent
       of rated capacity."
   ::= { upsAdvOutput 3 }

upsAdvOutputCurrent OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current in amperes drawn by the load on the UPS."
   ::= { upsAdvOutput 4 }

upsAdvOutputRedundancy OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of power modules which can fail or be
       removed without causing the UPS to generate a Minimum
       Redundancy Lost event."
   ::= { upsAdvOutput 5 }

upsAdvOutputKVACapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum load that this UPS can support.
      This value is dynamic for scalable 3-phase UPSs where power modules can be added for increased capacity.
      The value indicates the actual available output capacity. For non-scalable 3-phase UPSs the value is
      fixed to the UPS rating."
   ::= { upsAdvOutput 6 }

upsAdvOutputNominalFrequency OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal output frequency of the UPS system in Hz."
   ::= { upsAdvOutput 7 }

upsAdvOutputActivePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total output active power of the UPS system in W.
       The total active power is the sum of phase 1, phase 2 and
       phase 3 power."
   ::= { upsAdvOutput 8 }

upsAdvOutputApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total output apparent power of all phases of the UPS system in VA."
   ::= { upsAdvOutput 9 }


   upsAdvOutputStatisticsTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsAdvOutputStatisticsEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the value of upsPhaseNumOutputs."
       ::= { upsAdvOutput 10 }

   upsAdvOutputStatisticsEntry OBJECT-TYPE
       SYNTAX     UpsAdvOutputStatisticsEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output."
       INDEX { upsAdvOutputStatisticsIndex }
       ::= { upsAdvOutputStatisticsTable 1 }

   UpsAdvOutputStatisticsEntry ::= SEQUENCE {
       upsAdvOutputStatisticsIndex         INTEGER,
       upsAdvOutputPeakCurrent             INTEGER,
       upsAdvOutputCurrentTHD              INTEGER,
       upsAdvOutputCrestFactor             INTEGER

   }

   upsAdvOutputStatisticsIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { upsAdvOutputStatisticsEntry 1 }

   upsAdvOutputPeakCurrent OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "The output peak current in Amperes."
       ::= { upsAdvOutputStatisticsEntry 2 }

   upsAdvOutputCurrentTHD OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "The output current Total Harmonic Distortion in percent."
       ::= { upsAdvOutputStatisticsEntry 3 }

   upsAdvOutputCrestFactor OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS read-only
       STATUS mandatory
       DESCRIPTION
          "The output current crest factor expressed in tenths."
       ::= { upsAdvOutputStatisticsEntry 4 }

   upsAdvOutputNeutralCurrent  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The neutral current in amperes."
       ::= { upsAdvOutput 11 }

   upsAdvOutputEnergyUsage  OBJECT-TYPE
       SYNTAX     Unsigned32
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
          " The output energy usage of the UPS in kWh."
       ::= { upsAdvOutput 12 }

upsAdvOutputSourceSynchronization  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
         "Indicates the synchronization source for the inverter output frequency.
         1. Main
         2. Internal
         3. External
         4. On AC Bypass.
         5. External / On Bypass
         For other values it is unknown"
       ::= { upsAdvOutput 13 }

upsAdvOutputInverterFrequency OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Output frequency in Hz measured at the output of inverter."
   ::= { upsAdvOutput 14 }

-- the upsHighPrecOutput group

upsHighPrecOutputVoltage OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The output voltage of the UPS system in tenths of VAC."
   ::= { upsHighPrecOutput 1 }

upsHighPrecOutputFrequency OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current output frequency of the UPS system in tenths of Hz."
   ::= { upsHighPrecOutput 2 }

upsHighPrecOutputLoad OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current UPS load expressed in tenths of percent
       of rated capacity."
   ::= { upsHighPrecOutput 3 }

upsHighPrecOutputCurrent OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current in tenths of amperes drawn by the load on the UPS."
   ::= { upsHighPrecOutput 4 }

upsHighPrecOutputEfficiency OBJECT-TYPE
   SYNTAX Integer32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The positive values represent efficiency of the UPS in tenths of percent.
       -1 If UPS supports this OID but the result is not available
       -2 Load is too low to report efficiency
       -3 Output off and efficiency is 0
       -4 On battery, efficiency is not measured or calculated in this mode
       -5 In Bypass, efficiency is not measured or calculated in this mode
       -6 Battery charging, battery is charging and adversely affecting efficiency
       -7 Poor AC input, the main input is outside the optimum efficiency range"
   ::= { upsHighPrecOutput 5 }

upsHighPrecOutputEnergyUsage OBJECT-TYPE
   SYNTAX Unsigned32
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The output energy usage of the UPS in hundredths of kWh."
   ::= { upsHighPrecOutput 6 }

-- the upsBasicConfig group

upsBasicConfigNumDevices OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of devices that are plugged into the UPS.
       This value is customer configurable from the device entry table"
   ::= { upsBasicConfig 1 }

upsBasicConfigDeviceTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsBasicConfigDeviceEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of devices that are plugged into the UPS.
       The number of entries is given by the value of
       upsBasicConfigNumDevices."
   ::= { upsBasicConfig 2 }

upsBasicConfigDeviceEntry OBJECT-TYPE
   SYNTAX UpsBasicConfigDeviceEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The devices plugged in to the UPS."
   INDEX  { deviceIndex }
   ::= { upsBasicConfigDeviceTable 1 }

UpsBasicConfigDeviceEntry ::=
   SEQUENCE {
      deviceIndex
         INTEGER,
      deviceName
         DisplayString,
      vaRating
         INTEGER,
      acceptThisDevice
         INTEGER
   }

deviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the device that is plugged into the UPS."
   ::= { upsBasicConfigDeviceEntry 1 }

deviceName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The name/description of the device plugged into the UPS."
   ::= { upsBasicConfigDeviceEntry 2 }

vaRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The volt-amp rating of the device plugged into the UPS."
   ::= { upsBasicConfigDeviceEntry 3 }

acceptThisDevice OBJECT-TYPE
   SYNTAX INTEGER   {
      yes(1),
      no(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An entry is added if yes, the entry is deleted if no."
   ::= { upsBasicConfigDeviceEntry 4 }




-- the upsAdvConfig group

upsAdvConfigRatedOutputVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The nominal output voltage from the UPS in VAC.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { upsAdvConfig 1 }

upsAdvConfigHighTransferVolt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum line voltage in VAC allowed before the
       UPS system transfers to battery backup.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as a the next higher
       acceptable value.  If the provided value is higher than
       the highest acceptable value, the highest acceptable
       value is used."
   ::= { upsAdvConfig 2 }

upsAdvConfigLowTransferVolt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum line voltage in VAC allowed before the
       UPS system transfers to battery backup.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { upsAdvConfig 3 }

upsAdvConfigAlarm OBJECT-TYPE
   SYNTAX INTEGER  {
      timed(1),
      atLowBattery(2),
      never(3),
      mute(4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A flag indicating how the UPS should handle audible
       line fail alarms:
       timed(1): UPS alarm will sound after a preset timed duration starting
       from the line fail condition (see OID upsAdvConfigAlarmTimer for the
       alarm timer value)
       atLowBattery(2): UPS alarm will sound when the UPS has reached a Low
       Battery condition during a line fail
       never(3): Disables the UPS audible alarm
       mute(4): Mutes the current alarm for some UPSs only when it is in an
       alarm state and will return to the previously configured option when
       the UPS recovers from the alarm condition"
   ::= { upsAdvConfig 4 }

upsAdvConfigAlarmTimer OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The time after initial line failure at which the UPS
       begins emitting audible alarms (beeping).  This timer is
       observed only if the value of extControlAlarm is timed(2).
       Allowed values are 0 or 30 seconds.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as a the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { upsAdvConfig 5 }

upsAdvConfigMinReturnCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum battery capacity required before the UPS will
       return from a low battery shutdown condition.  The capacity is
       measured from 0% battery capacity (or Low Battery) as a percent
       of full capacity (100%).   In other words, the UPS will not re-energize
       the output until the battery has charged so that its' capacity is equal
       to this value.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as a the next higher
       acceptable value.  If the provided value is higher than
       the highest acceptable value, the highest acceptable
       value is used."
   ::= { upsAdvConfig 6 }

upsAdvConfigSensitivity OBJECT-TYPE
   SYNTAX INTEGER  {
      auto(1),
      low(2),
      medium(3),
      high(4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The sensitivity of the UPS to utility line abnormalities
       or noises."
   ::= { upsAdvConfig 7 }

upsAdvConfigLowBatteryRunTime OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The desired run time of the UPS, in seconds, once the
       low battery condition is reached. During this time the UPS will
       produce a constant warning tone which can not be disabled.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a set
       request, the UPS interprets the value as the next higher
       acceptable value.  If the provided value is higher than the
       highest acceptable value, the highest acceptable value is used."
   ::= { upsAdvConfig 8 }

upsAdvConfigReturnDelay OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The delay in seconds after utility line power returns
       before the UPS will turn on.  This value is also used
       when the UPS comes out of a reboot and before the UPS
       wakes up from 'sleep' mode.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as a the next higher
       acceptable value.  If the provided value is higher than
       the highest acceptable value, the highest acceptable
       value is used."
   ::= { upsAdvConfig 9 }

upsAdvConfigShutoffDelay OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The delay in seconds the UPS remains on after being told
       to turn off.

       For a list of allowed values supported by your UPS model,
       see the UPS User's Manual.

       If a value other than a supported value is provided in a
       set request, the UPS interprets it as a the next higher
       acceptable value.  If the provided value is higher than
       the highest acceptable value, the highest acceptable
       value is used."
   ::= { upsAdvConfig 10 }

upsAdvConfigUpsSleepTime OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The time in seconds for the UPS to go to 'sleep' when
       instructed.  When in sleep mode, the UPS will not provide
       output power regardless of the input line state.  Once the
       specified time has elapsed, output power will be restored.

       This is a configuration setting.  The UPS will not go to
       sleep until told to do so by the manager from a management
       station.

       Any input value is allowed, however the UPS only recognizes
       1/10 of an hour increments.  The provided value will be
       rounded to the closest 1/10 of an hour with one exception:
       Any value entered between 1 and 540 seconds will be rounded
       to 360 seconds (or 6 minutes)."
   ::= { upsAdvConfig 11 }


upsAdvConfigSetEEPROMDefaults OBJECT-TYPE
   SYNTAX INTEGER  {
      noSetEEPROMDefaults(1),
      setEEPROMDefaults(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "WRITE: Resets the UPS EEPROM variables to default values.
       READ: returns 1"
   ::= { upsAdvConfig 12 }

upsAdvConfigDipSwitchTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsAdvConfigDipSwitchEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Current settings of UPS dip switches."
   ::= { upsAdvConfig 13 }

upsAdvConfigDipSwitchEntry OBJECT-TYPE
   SYNTAX UpsAdvConfigDipSwitchEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The current setting of one dip switch."
   INDEX  { dipSwitchIndex }
   ::= { upsAdvConfigDipSwitchTable 1 }

UpsAdvConfigDipSwitchEntry ::=
   SEQUENCE {
      dipSwitchIndex
         INTEGER,
      dipSwitchStatus
         INTEGER
   }

dipSwitchIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of a UPS dip switch."
   ::= { upsAdvConfigDipSwitchEntry 1 }

dipSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
      on(1),
      off(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The setting of a UPS dip switch."
   ::= { upsAdvConfigDipSwitchEntry 2 }

upsAdvConfigBattExhaustThresh OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of seconds prior to battery exhaustion when the
       UPS will switch off power to its load."
   ::= { upsAdvConfig 14 }

upsAdvConfigPassword OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The password entered at the UPS front panel to enable local
       configuration of the EEProm. If the password is disabled or
       is not supported, then the agent returns a null string."
   ::= { upsAdvConfig 15 }

upsAdvConfigAllowedSetTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsAdvConfigAllowedSetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The table listing the allowed values for all discrete
       configurable UPS variables."
   ::= { upsAdvConfig 16 }

upsAdvConfigAllowedSetEntry OBJECT-TYPE
   SYNTAX UpsAdvConfigAllowedSetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The table entry for a configurable UPS variable."
   INDEX  { apcUpsConfigFieldIndex }
   ::= { upsAdvConfigAllowedSetTable 1 }

UpsAdvConfigAllowedSetEntry ::= SEQUENCE {
   apcUpsConfigFieldIndex        INTEGER,
   apcUpsConfigFieldOID          OBJECT IDENTIFIER,
   apcUpsConfigFieldValueRange   DisplayString
   }

apcUpsConfigFieldIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to an eeprom field entry."
   ::= { upsAdvConfigAllowedSetEntry 1 }

apcUpsConfigFieldOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The OID of the current configurable value."
   ::= { upsAdvConfigAllowedSetEntry 2 }

apcUpsConfigFieldValueRange OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The discrete set of allowed values of a configurable
       register. Individual values are delimited by a comma."
   ::= { upsAdvConfigAllowedSetEntry 3 }

upsAdvConfigBattCabAmpHour OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the amp-hour setting of the UPS battery solution.
      The value shows the maximum battery capacity configured for the UPS when using a third party battery solution
      regardless of the breaker positions. The actual available battery capacity based on breaker positions or
      connected/disconnected battery strings, is presented in OID upsAdvBatteryTotalCapacity"
   ::= { upsAdvConfig 17 }

upsAdvConfigPositionSelector OBJECT-TYPE
   SYNTAX INTEGER {
     unknown  (1),
     rack     (2),
     tower    (3)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure UPS position selector.  If the UPS doesn't
       support this configuration it will report unknown (1).
       The positions are either rack (2) for rack mounted or
       tower (3) for tower unit."
   ::= { upsAdvConfig 18 }

upsAdvConfigOutputFreqRange OBJECT-TYPE
   SYNTAX INTEGER {
     unknown          (1),
     freqRangeAUTO    (2),
     freqRange60Var1  (3),
     freqRange60Var3  (4),
     freqRange50Var1  (5),
     freqRange50Var3  (6),
     freqRange60Var10 (7),
     freqRange50Var10 (8),
     freqRange60Var1dot0 (9),
     freqRange50Var1dot0 (10),
     freqRange50Pct0dot5 (11),
     freqRange50Pct1     (12),
     freqRange50Pct2     (13),
     freqRange50Pct4     (14),
     freqRange50Pct6     (15),
     freqRange50Pct8     (16),
     freqRange60Pct0dot5 (17),
     freqRange60Pct1     (18),
     freqRange60Pct2     (19),
     freqRange60Pct4     (20),
     freqRange60Pct6     (21),
     freqRange60Pct8     (22)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the output frequency tolerance range.
       unknown(1) indicates the output frequency is unknown.
       freqRangeAUTO(2) configure the output frequency range for automatic.
       freqRange60Var1(3) configure the output frequency range for 60 +/- 0.1 Hz
       freqRange60Var3(4) configure the output frequency range for 60 +/- 3.0 Hz
       freqRange50Var1(5) configure the output frequency range for 50 +/- 0.1 Hz
       freqRange50Var3(6) configure the output frequency range for 50 +/- 3.0 Hz
       freqRange60Var10(7) configure the output frequency range for 60 +/- 10 Hz
       freqRange50Var10(8) configure the output frequency range for 50 +/- 10 Hz
       freqRange60Var1dot0(9) configure the output frequency range for 60 +/- 1.0 Hz
       freqRange50Var1dot0(10) configure the output frequency range for 50 +/- 1.0 Hz
       freqRange50Pct0dot5(11) configure the output frequency range for 50 Hz +/- 0.5 %
       freqRange50Pct1(12) configure the output frequency range for 50 Hz +/- 1.0 %
       freqRange50Pct2(13) configure the output frequency range for 50 Hz +/- 2.0 %
       freqRange50Pct4(14) configure the output frequency range for 50 Hz +/- 4.0 %
       freqRange50Pct6(15) configure the output frequency range for 50 Hz +/- 6.0 %
       freqRange50Pct8(16) configure the output frequency range for 50 Hz +/- 8.0 %
       freqRange60Pct0dot5(17) configure the output frequency range for 60 Hz +/- 0.5 %
       freqRange60Pct1(18) configure the output frequency range for 60 Hz +/- 1.0 %
       freqRange60Pct2(19) configure the output frequency range for 60 Hz +/- 2.0 %
       freqRange60Pct4(20) configure the output frequency range for 60 Hz +/- 4.0 %
       freqRange60Pct6(21) configure the output frequency range for 60 Hz +/- 6.0 %
       freqRange60Pct8(22) configure the output frequency range for 60 Hz +/- 8.0 %
       For a list of allowed values and conditions when variable can be set by your UPS model,
       see the UPS User's Manual."
   ::= { upsAdvConfig 19 }

upsAdvConfigUPSFail OBJECT-TYPE
   SYNTAX INTEGER {
     unknown      (1),
     gotoBypass   (2),
     dropLoad     (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the UPS fail action.  If UPS fails,
      and frequency or voltage is out of range it will either
      GotoBypass (2) or DropLoad (3).  This OID will report
      unknown (1) if it is not supported feature or option."
   ::= { upsAdvConfig 20 }

upsAdvConfigAlarmRedundancy OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure settings of UPS alarm if the redundancy is
      under the current redundancy.  Use 0 for never."
   ::= { upsAdvConfig 21 }

upsAdvConfigAlarmLoadOver OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure settings of UPS alarm if the load is
      over the current load in kVA.  Use -1 for never."
   ::= { upsAdvConfig 22 }

upsAdvConfigAlarmRuntimeUnder OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure settings of UPS alarm if the runtime is
      under the current time of minutes.  Use -1 for never."
   ::= { upsAdvConfig 23 }

upsAdvConfigVoutReporting OBJECT-TYPE
   SYNTAX INTEGER {
     unknown    (1),
     voutAUTO   (2),
     vout208    (3),
     vout240    (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the way the UPS scales its output voltage readings.
       unknown(1) indicates the Vout Reporting is unknown.
       voutAUTO(2) configure the Vout Reporting for automatic scaling.
       vout208(3) configure the Vout Reporting for 208 Volts.
       vout240(4) configure the Vout Reporting for 240 Volts."
   ::= { upsAdvConfig 24 }

upsAdvConfigNumExternalBatteries OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the number of external batteries connected to the UPS."
   ::= { upsAdvConfig 25 }

upsAdvConfigSimpleSignalShutdowns OBJECT-TYPE
   SYNTAX INTEGER {
     unknown    (1),
     disabled   (2),
     enabled    (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure Simple Signal shutdown commands from the Simple Signal
       port to be issued to the UPS.
       unknown(1) indicates the Simple Signal Shutdown setting is unknown.
       disabled(2) configure to disable Simple Signal Shutdowns.
       enabled(3) configure to enable Simple Signal Shutdowns."
   ::= { upsAdvConfig 26 }

upsAdvConfigMaxShutdownTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum amount of time for server shutdown to complete before a
      UPS shutdown occurs."
   ::= { upsAdvConfig 27 }

upsAsiUpsControlServerRequestShutdown OBJECT-TYPE
   SYNTAX INTEGER {
     serverShutdownOff    (1),
     serverShutdownReboot (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Start a server shutdown sequence:
      serverShutdownOff: Shutdown server and turn off UPS
      serverShutdownReboot: Shutdown server and turn reboot UPS."
   ::= { upsAdvConfig 28 }

upsAdvConfigMinReturnRuntime OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum amount of run time in seconds required before the output will be
      turned on, using power calculation captured at start of last shutdown."
   ::= { upsAdvConfig 29 }

upsAdvConfigBasicSignalLowBatteryDuration OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The duration of runtime in seconds during an on-battery condition at which
      the UPS will signal the basic low battery shutdown condition."
   ::= { upsAdvConfig 30 }

upsAdvConfigBypassPhaseLockRequired OBJECT-TYPE
   SYNTAX INTEGER {
     unknown    (1),
     disabled   (2),
     enabled    (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sets the condition for when bypass is an acceptable mode of operation as a
      requirement."
   ::= { upsAdvConfig 31 }

upsAdvConfigOutputFreqSlewRate OBJECT-TYPE
   SYNTAX INTEGER {
     unknown                 (1),
     slewRateQuarterHzPerSec (2),
     slewRateHalfHzPerSec    (3),
     slewRate1HzPerSec       (4),
     slewRate2HzPerSec       (5),
     slewRate4HzPerSec       (6),
     slewRate6HzPerSec       (7)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The rate at which the UPS will change its output frequency
       in response to utility frequency changes."
   ::= { upsAdvConfig 32 }

upsAdvConfigChargerLevel OBJECT-TYPE
   SYNTAX INTEGER {
     unknown    (1),
     low        (2),
     high       (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sets the rate at which the UPS charges its batteries."
   ::= { upsAdvConfig 33 }

upsAdvConfigBypassToleranceSetting OBJECT-TYPE
   SYNTAX INTEGER {
     unknown    (1),
     wide       (2),
     medium     (3),
     narrow     (4),
     custom     (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting allows selecting from standard bypass tolerance configurations to suit their situation."
   ::= { upsAdvConfig 34 }

upsAdvConfigMainsSetting OBJECT-TYPE
   SYNTAX INTEGER {
     singleInput (1),
     dualInput   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Configure the type of mains supply system.
      singleInput (1) indicates a single supply system.
      dualInput   (2) indicates a dual supply system. "
   ::= { upsAdvConfig 35 }

upsAdvConfigACWiringSetting OBJECT-TYPE
   SYNTAX INTEGER {
     threeWire (1),
     fourWire  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
     "Configure the AC wiring of the system.
     threeWire (1) indicates 3-wire system configuration.
     fourWire  (2) indicates 4-wire system configuration."
   ::= { upsAdvConfig 36 }

upsAdvConfigUpperOutputVoltTolerance OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Upper tolerance of the output RMS voltage before transferring to bypass.
      Expressed as percent of nominal voltage."
   ::= { upsAdvConfig 37 }

upsAdvConfigLowerOutputVoltTolerance OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Lower tolerance of the output RMS voltage before transferring to bypass.
      Expressed as percent of nominal voltage."
   ::= { upsAdvConfig 38 }

upsAdvConfigUpperBypassVoltTolerance OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Upper tolerance of the bypass voltage that allows transfer to bypass by user.
      Expressed as percent of nominal voltage."
   ::= { upsAdvConfig 39 }

upsAdvConfigLowerBypassVoltTolerance OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Lower tolerance of the bypass voltage that allows transfer to bypass by user.
      Expressed as percent of nominal voltage."
   ::= { upsAdvConfig 40 }

upsAdvConfigOutofSyncBypassTransferDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the time (in milliseconds), indicating the gap in output voltage
      if an asynchronous transfer to bypass needs to occur."
   ::= { upsAdvConfig 41 }




upsAdvConfigWarningAlarmDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the time delay for reporting warning alarms
      (in seconds)."
   ::= { upsAdvConfig 43 }

upsAdvConfigInformationalAlarmDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the time delay for reporting informational alarms
      (in seconds)."
   ::= { upsAdvConfig 44 }

upsAdvConfigGreenMode OBJECT-TYPE
   SYNTAX INTEGER {
     disable    (1),
     enable     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable/Disable UPS green mode feature."
   ::= { upsAdvConfig 45 }

upsAdvConfigLCDLocalLanguage OBJECT-TYPE
   SYNTAX INTEGER {
     english    (1),
     french     (2),
     italian    (3),
     german     (4),
     spanish    (5),
     portuguese (6),
     japanese   (7)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the language setting of the UPS LCD display information."
   ::= { upsAdvConfig 46 }

upsAdvConfigLCDLockOut OBJECT-TYPE
   SYNTAX INTEGER {
     disable    (1),
     enable     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable/Disable the control function of the UPS via the LCD Display."
   ::= { upsAdvConfig 47 }

upsAdvConfigChargerRate OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Change the maximum allowed UPS charge rate on select products where 100% represents
      the manufacturer's recommended rate.  A charge/discharge rate of C/10 for a 10 Ah
      battery would be 1 where C is defined as the charge or discharge rate equal to the
      capacity of a battery divided by 1 hour. To increase the charge rate by a factor of
      2 to C/5, this oid would be set to 200%.  This number would not change when external
      packs are added or removed.  Charging at too high a rate can result in boiling and/or
      venting of electrolyte and/or high gas pressure."
   ::= { upsAdvConfig 48 }

upsAdvConfigBatterySelection OBJECT-TYPE
   SYNTAX INTEGER {
     vrla        (1),
     ventedcell  (2),
     nicd (3),
     li-ion(4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the installed battery type; VRLA is a Valve Regulated
      Lead Acid type battery, Vented Cell is a wet cell type (car) battery, NiCd is a
      Nickel-Cadmium type battery, and Li-Ion is Lithium Ion type battery.
      Please use the OID defined under upsIdent: upsAdvEnergyStorageType"
   ::= { upsAdvConfig 49 }

upsAdvConfigBatteryHealthAlarmWarningTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the number of days before the battery health is depleted that the battery
      health alarm is activated. Setting this to -1, if supported by the UPS, will suppress
      the battery health alarm."
   ::= { upsAdvConfig 50 }

upsAdvConfigBatteryHealthAlarmSleepTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the number of days that the UPS's battery health alarm should sleep before
      being activated again after being acknowledged. Setting this to -1, if supported by the
      UPS, displays no other alarms after the first alarm is acknowledged."
   ::= { upsAdvConfig 51 }

upsAdvConfigSignalFlashVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the signal flash voltage in tenths of volts."
   ::= { upsAdvConfig 52 }

upsAdvConfigBatteryTemperatureCompensation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configure the battery temperature compensation voltage in
       hundreds of volts per degree C. On products which support this
       field, the charger voltage is reduced for each degree C rise
       by the value configured in this setting multiplied by the
       number of battery cells attached to the UPS."
   ::= { upsAdvConfig 53 }

upsAdvConfigBatteryChargerType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID describes type of battery charger used: standard or extended.
      1 - Internal charger,
      2 - Extended (CLA),
      3 - Large extension (other cases),
      4 - Extra large extension (XL),
      5 - Double extra large extension (XXL)
      For other numbers charger type is unknown"
   ::= { upsAdvConfig 54 }

upsAdvConfigAutomaticRestart OBJECT-TYPE
   SYNTAX INTEGER {
     enabled    (1),
     disabled   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates whether Automatic Restart is enabled or disabled."
   ::= { upsAdvConfig 55 }

upsAdvConfigDeepDischargeProtection OBJECT-TYPE
   SYNTAX INTEGER {
     enabled    (1),
     disabled   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates whether protection against deep discharge is enabled or disabled."
   ::= { upsAdvConfig 56 }

upsAdvConfigFreqBypassTransferRange OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Tolerance of bypass AC frequency to switch on bypass. The frequency must be in
      range of -X% to +X% around the nominal value."
   ::= { upsAdvConfig 57 }

upsAdvConfigUpsPowerconverterType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This value indicates the type of UPS in terms of output phase and redundancy.
           2  - Galaxy 7000 Unitary 3:3
           3  - Galaxy 7000 Redundant 3:3
           4  - Galaxy 7000 Parallel SSC 3:3
           6  - Galaxy 7000 SSC 3:3
           10 - Galaxy 300  Unitary 3:3
           11 - Galaxy 300  Unitary 3:1
           12 - Galaxy 300  Redundant 3:3
           13 - Galaxy 300  Redundant 3:1
           14 - Galaxy 5000/5500  Unitary
           15 - Galaxy 5000/5500  Parallel
           16 - Galaxy 5000/5500  Unitary Frequency Converter
           17 - Galaxy 5000/5500  Parallel Frequency Converter
           For other values UPS is unknown. "
    ::= { upsAdvConfig 58 }

upsAdvConfigFrequencyConverterMode OBJECT-TYPE
   SYNTAX INTEGER {
     autoRanging    	(1),
     frequencyConverter	(2),
     unknown   			(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates whether the output frequency is in Auto Ranging or Frequency converter mode.
       In Auto Ranging mode the inverter provides output frequency in the same range as the input.
       In Frequency converter mode it is possible to have 50Hz input and 60 Hz output and vice versa."
   ::= { upsAdvConfig 59 }

upsAdvConfigACQualificationTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The time in seconds that the voltage is required to be in the acceptable range before being declared to be acceptable."
   ::= { upsAdvConfig 60 }

   -- the upsSyncCtrlGroupConfig group

upsSCGMembershipGroupNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The SCG Membership Group number (MGN) is a 16-bit number allowing
       up to 65534 separate groups that can be identified and distinguished
       per IP subnet. Zero and 65535 are not used. The MGN is used in all
       communication between members of the SCG and a Network Management Card
       (NMC) will listen and only respond to commands sent to it using its
       configured SCG ID."
   ::= { upsSyncCtrlGroupConfig 1 }

upsSCGActiveMembershipStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      enabledSCG (1),
      disabledSCG (2)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Membership in the configured SCG can be enabled and
      disabled.  If an NMC is configured for an SCG, but
      has its membership disabled, all synchronized control commands
      received will be ignored."
   ::= { upsSyncCtrlGroupConfig 2 }

upsSCGPowerSynchronizationDelayTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The Power Synchronization Delay Time (PSD) setting is the maximum
         number of seconds an SCG Initiator will wait for all SCG members to
         recover utility power before completing the reboot sequence of a
         reboot or sleep command. If all SCG members are ready to proceed,
         no additional delay is introduced."
   ::= { upsSyncCtrlGroupConfig 3 }

upsSCGReturnBatteryCapacityOffset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A reboot command uses the Initiator's Return battery Capacity (RBC) to control
        when the SCG completes this operation. In a Normal Control Operation (NCC) the
        UPS will only complete the reboot if RBC is reached.  Due to normal battery
        charge rate variations it may be desirable for the Followers to complete the
        reboot if they are within some range of the Initiator's RBC when the Initiator
        is prepared (charged to RBC) to complete the reboot. The Return Battery
        Capacity Offset (RBCO) defines a percent battery capacity subtracted from an
        RBC above which a Follower's battery must be charged for it to complete a
        reboot.  For example, if the Initiator's RBC is 50% and the Initiator's RBCO is
        5% then a Follower's battery capacity is within range if it is greater or equal
        to 45% (50% - 5%) at the time when the Initiator tries to complete the reboot
        command.  The default RBCO is 10%. "
   ::= { upsSyncCtrlGroupConfig 4 }

upsSCGMultiCastIP OBJECT-TYPE
       SYNTAX     IpAddress
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "The MultiCast IP address of the SCG Group."
       ::= { upsSyncCtrlGroupConfig 5 }


-- the upsSyncCtrlGroupStatus group

upsSCGNumOfGroupMembers OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
       "The number of active, communicating members in the Sync Control Group (SCG).
        This variable indicates the number of rows in the SCG Status Table."
       ::= { upsSyncCtrlGroupStatus 1 }

-- Sync Control Group Status Table

upsSCGStatusTable OBJECT-TYPE
   SYNTAX     SEQUENCE OF UpsSCGStatusEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
       "A list of SCG status table entries.  The number of entries
        is given by the value of upsSCGNumOfGroupMembers."
       ::= { upsSyncCtrlGroupStatus 2 }

   upsSCGStatusEntry OBJECT-TYPE
       SYNTAX     UpsSCGStatusEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular SCG Member."
       INDEX { upsSCGStatusTableIndex }
       ::= { upsSCGStatusTable 1 }

   UpsSCGStatusEntry ::= SEQUENCE {
       upsSCGStatusTableIndex           INTEGER,
       upsSCGMemberIP                   IpAddress,
       upsSCGACInputStatus              INTEGER,
       upsSCGACOutputStatus             INTEGER
   }

   upsSCGStatusTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The index of a status entry for an active, communicating SCG member."
       ::= { upsSCGStatusEntry 1 }

  upsSCGMemberIP OBJECT-TYPE
       SYNTAX     IpAddress
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The IP address of an active, communicating SCG Member."
       ::= { upsSCGStatusEntry 2 }

   upsSCGACInputStatus OBJECT-TYPE
        SYNTAX INTEGER {
          acInGood(1),
          acInBad(2)
        }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "This OID indicates the AC Input Status of the SCG Member.
                acInGood(1) indicates the AC Input is within tolerance.
                acInBad(2)  indicates the AC Input is not within tolerance."
       ::= { upsSCGStatusEntry 3 }

    upsSCGACOutputStatus OBJECT-TYPE
        SYNTAX INTEGER {
          acOutOn(1),
          acOutOff(2)
        }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "This OID indicates the AC Output Status of the SCG Member.
                acOutOn(1)  indicates the UPS output is providing power to the load.
                acOutOff(2) indicates the UPS output is not providing power to the load. "
       ::= { upsSCGStatusEntry 4 }

-- the upsBasicState group


upsBasicStateOutputState OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
       the current state(s) of the UPS. If the Network Card
       is unable to determine the state of the UPS, this
       variable is set to 'UNKNOWN'.

       The flags are numbered 1 to 64, read from left to
       right. The flags are defined as follows:

       Flag  1: Abnormal Condition Present
       Flag  2: On Battery
       Flag  3: Low Battery
       Flag  4: On Line

       Flag  5: Replace Battery
       Flag  6: Serial Communication Established
       Flag  7: AVR Boost Active
       Flag  8: AVR Trim Active

       Flag  9: Overload
       Flag 10: Runtime Calibration
       Flag 11: Batteries Discharged
       Flag 12: Manual Bypass

       Flag 13: Software Bypass
       Flag 14: In Bypass due to Internal Fault
       Flag 15: In Bypass due to Supply Failure
       Flag 16: In Bypass due to Fan Failure

       Flag 17: Sleeping on a Timer
       Flag 18: Sleeping until Utility Power Returns
       Flag 19: On
       Flag 20: Rebooting

       Flag 21: Battery Communication Lost
       Flag 22: Graceful Shutdown Initiated
       Flag 23: Smart Boost or Smart Trim Fault
       Flag 24: Bad Output Voltage

       Flag 25: Battery Charger Failure
       Flag 26: High Battery Temperature
       Flag 27: Warning Battery Temperature
       Flag 28: Critical Battery Temperature

       Flag 29: Self Test In Progress
       Flag 30: Low Battery / On Battery
       Flag 31: Graceful Shutdown Issued by Upstream Device
       Flag 32: Graceful Shutdown Issued by Downstream Device

       Flag 33: No Batteries Attached
       Flag 34: Synchronized Command is in Progress
       Flag 35: Synchronized Sleeping Command is in Progress
       Flag 36: Synchronized Rebooting Command is in Progress

       Flag 37: Inverter DC Imbalance
       Flag 38: Transfer Relay Failure
       Flag 39: Shutdown or Unable to Transfer
       Flag 40: Low Battery Shutdown

       Flag 41: Electronic Unit Fan Failure
       Flag 42: Main Relay Failure
       Flag 43: Bypass Relay Failure
       Flag 44: Temporary Bypass

       Flag 45: High Internal Temperature
       Flag 46: Battery Temperature Sensor Fault
       Flag 47: Input Out of Range for Bypass
       Flag 48: DC Bus Overvoltage

       Flag 49: PFC Failure
       Flag 50: Critical Hardware Fault
       Flag 51: Green Mode/ECO Mode
       Flag 52: Hot Standby

       Flag 53: Emergency Power Off (EPO) Activated
       Flag 54: Load Alarm Violation
       Flag 55: Bypass Phase Fault
       Flag 56: UPS Internal Communication Failure

       Flag 57: Efficiency Booster Mode
       Flag 58: Off
       Flag 59: Standby
       Flag 60: Minor or Environment Alarm

       Flag 61: <Not Used>
       Flag 62: <Not Used>
       Flag 63: <Not Used>
       Flag 64: <Not Used>"
   ::= { upsBasicState 1 }

upsBasicStateAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
     noAlarms        (1),
     infoAlarm       (2),
     warningAlarm    (3),
     criticalAlarm   (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The alarm status of the Power Module.
       noAlarms(1) indicates the device has no alarms present.
       infoAlarm (2) indicates the device has alarms and the
       highest severity of the alarms present is infomational.
       warningAlarm (3) indicates the device has alarms and the
       highest severity of the alarms present is warning.
       criticalAlarm (4) indicates the device has alarms and the
       highest severity of the alarms present is critical."
   ::= { upsBasicState 2 }


-- the upsAdvState group

upsAdvStateAbnormalConditions OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 32 flags representing
       the current active UPS faults. If the Network Card
       is unable to determine the values of the flags, this
       variable is set to 'UNKNOWN'. If this variable is not
       supported by the connected UPS, this variable is set to
       'NOT SUPPORTED'.

       The flags are numbered from 1 to 32, and read from left to
       right. The flags are defined as follows:

       Flag  1: Power Module Failure
       Flag  2: Main Intelligence Module Failure
       Flag  3: Redundant Intelligence Module Failure
       Flag  4: Battery Failure

       Flag  5: Load(kVA) Alarm Threshold Violation
       Flag  6: Redundancy Lost
       Flag  7: Redundancy Below Alarm Threshold
       Flag  8: Bypass not in Range; Either Frequency or Voltage

       Flag  9: Bypass Contactor Stuck in Bypass Condition
       Flag 10: Bypass Contactor Stuck in On-Line Condition
       Flag 11: In Bypass due to an Internal Fault
       Flag 12: In Bypass due to an Overload

       Flag 13: In Maintenance Bypass
       Flag 14: Input Circuit Braker Tripped Open
       Flag 15: System Level Fan Failure
       Flag 16: Redundant Intelligent Module in Control

       Flag 17: IIC Inter-Module Communication Failure
       Flag 18: No Working Power Modules
       Flag 19: Load Shutdown From Bypass; Input Frequency
       Flag 20: Runtime Below Alarm Threshold

       Flag 21: Extended Run Frame Fault
       Flag 22: Output Voltage out of Range
       Flag 23: UPS Not Synchronized
       Flag 24: No Batteries Installed

       Flag 25: Battery Voltage High
       Flag 26: UPS Specific Fault Detected
       Flag 27: Site Wiring Fault
       Flag 28: Backfeed Protection Relay Opened

       Flag 29: <Not Used>
       Flag 30: <Not Used>
       Flag 31: <Not Used>
       Flag 32: <Not Used>"
   ::= { upsAdvState 1 }

upsAdvStateSymmetra3PhaseSpecificFaults OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
      the current active UPS specific faults for the Symmetra
      3-Phase UPS models. If the Network Card is unable to
      determine the values of the flags, this variable is set
      to 'UNKNOWN'. If the connected UPS does not use this
      variable, it is set to 'NOT SUPPORTED'.

      The flags are numbered from 1 to 64, and read from left
      to right. The bits are defined as follows:

      Flag  1: External Switch Gear Failure
      Flag  2: External Transformer Over Temperature
      Flag  3: External DC Circuit Breaker Tripped
      Flag  4: System Power Supply Failure

      Flag  5: Battery Monitor Card Failure
      Flag  6: Battery Monitor Card Removed
      Flag  7: XR Communication Card Failure
      Flag  8: XR Communication Card Removed

      Flag  9: External Switch Gear Monitoring Card Failure
      Flag 10: External Switch Gear Monitoring Card Removed
      Flag 11: Internal DC Circuit Breaker Tripped
      Flag 12: Static Bypass Switch Failure

      Flag 13: System EEPROM Removed
      Flag 14: System EEPROM Failure
      Flag 15: UPS in Forced Bypass
      Flag 16: Static Bypass Switch Module Removed

      Flag 17: System Start-Up Configuration Fault
      Flag 18: Battery Charger Shutdown Externally
      Flag 19: <Not Used>
      Flag 20: <Not Used>

      Flag 21: <Not Used>
      Flag 22: <Not Used>
      Flag 23: <Not Used>
      Flag 24: <Not Used>

      Flag 25: <Not Used>
      Flag 26: <Not Used>
      Flag 27: <Not Used>
      Flag 28: <Not Used>

      Flag 29: <Not Used>
      Flag 30: <Not Used>
      Flag 31: <Not Used>
      Flag 32: <Not Used>

      Flag 33: <Not Used>
      Flag 34: <Not Used>
      Flag 35: <Not Used>
      Flag 36: <Not Used>

      Flag 37: <Not Used>
      Flag 38: <Not Used>
      Flag 39: <Not Used>
      Flag 40: <Not Used>

      Flag 41: <Not Used>
      Flag 42: <Not Used>
      Flag 43: <Not Used>
      Flag 44: <Not Used>

      Flag 45: <Not Used>
      Flag 46: <Not Used>
      Flag 47: <Not Used>
      Flag 48: <Not Used>

      Flag 49: <Not Used>
      Flag 50: <Not Used>
      Flag 51: <Not Used>
      Flag 52: <Not Used>

      Flag 53: <Not Used>
      Flag 54: <Not Used>
      Flag 55: <Not Used>
      Flag 56: <Not Used>

      Flag 57: <Not Used>
      Flag 58: <Not Used>
      Flag 59: <Not Used>
      Flag 60: <Not Used>

      Flag 61: <Not Used>
      Flag 62: <Not Used>
      Flag 63: <Not Used>
      Flag 64: <Not Used>"
   ::= { upsAdvState 2 }

upsAdvStateDP300ESpecificFaults OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
      the current active UPS specific faults for the Silcon
      DP300E UPS models. If the Network Card is unable to
      determine the values of the flags, this variable is set
      to 'UNKNOWN'. If the connected UPS does not use this
      variable, it is set to 'NOT SUPPORTED'.

      The flags are numbered from 1 to 64, and read from left
      to right. The bits are defined as follows:

      Flag  1: Peak Current Limiter Active
      Flag  2: Bypass Power Supply Fault
      Flag  3: Delta Current Limiter Active
      Flag  4: Fan Fault

      Flag  5: High DC warning
      Flag  6: Inverter Voltage Error
      Flag  7: Parallel Synchronization Error
      Flag  8: Second Power Supply Fault

      Flag  9: Internal Power Supply Fault
      Flag 10: <Not Used>
      Flag 11: <Not Used>
      Flag 12: <Not Used>

      Flag 13: <Not Used>
      Flag 14: Bypass Static Switch High Temperature
      Flag 15: High Battery Temperature
      Flag 16: Battery Weak

      Flag 17: <Not Used>
      Flag 18: System Locked in Operation Mode
      Flag 19: RAM1 Memory Write Error
      Flag 20: Memory Write Error

      Flag 21: Communication to VQ Bypass Lost
      Flag 22: Communication to VQ Output Lost
      Flag 23: Communication to DMU Lost
      Flag 24: Communication to Controller Lost

      Flag 25: Communication to Parallel IF Lost
      Flag 26: External Shutdown Accepted
      Flag 27: DC Capacitor Charge Error
      Flag 28: Communication to VQ Mains Lost

      Flag 29: Bypass Synchronization Error
      Flag 30: Charge Error
      Flag 31: SII Aux Input Activiated
      Flag 32: <Not Used>

      Flag 33: Blown Inverter Fuse
      Flag 34: Blown Rectifier Fuse
      Flag 35: Auxilliary 1 Fault
      Flag 36: <Not Used>

      Flag 37: <Not Used>
      Flag 38: <Not Used>
      Flag 39: <Not Used>
      Flag 40: <Not Used>

      Flag 41: <Not Used>
      Flag 42: <Not Used>
      Flag 43: <Not Used>
      Flag 44: <Not Used>

      Flag 45: <Not Used>
      Flag 46: High Temperature Charger Magnetic
      Flag 47: <Not Used>
      Flag 48: Battery Monitor Warning

      Flag 49: Battery Monitor Alarm
      Flag 50: <Not Used>
      Flag 51: <Not Used>
      Flag 52: <Not Used>

      Flag 53: TSM 1/2/3 Temperature Shutdown
      Flag 54: Charger 0/30 Temperature Warning
      Flag 55: Charger 0/30 Temperature Shutdown
      Flag 56: High Output Voltage

      Flag 57: SSW Temperature Over 90
      Flag 58: <Not Used>
      Flag 59: Low Current Failure In AC Capacitors
      Flag 60: <Not Used>

      Flag 61: Advanced Battery Management Not Installed
      Flag 62: <Not Used>
      Flag 63: <Not Used>
      Flag 64: <Not Used>"
   ::= { upsAdvState 3 }

upsAdvStateSymmetraSpecificFaults OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
      the current active UPS specific faults for the Symmetra
      UPS models. If the Network Card is unable to determine
      the values of the flags, this variable is set to 'UNKNOWN'.
      If the connected UPS does not use this variable, it is
      set to 'NOT SUPPORTED'.

      The flags are numbered from 1 to 64, and read from left
      to right. The bits are defined as follows:

      Flag  1: System Fault
      Flag  2: Bypass Relay Fault
      Flag  3: Power Module Turn Off Failure
      Flag  4: Frame Identification Fault

      Flag  5: <Not Used>
      Flag  6: <Not Used>
      Flag  7: <Not Used>
      Flag  8: <Not Used>

      Flag  9: <Not Used>
      Flag 10: <Not Used>
      Flag 11: <Not Used>
      Flag 12: <Not Used>

      Flag 13: <Not Used>
      Flag 14: <Not Used>
      Flag 15: <Not Used>
      Flag 16: <Not Used>

      Flag 17: <Not Used>
      Flag 18: <Not Used>
      Flag 19: <Not Used>
      Flag 20: <Not Used>

      Flag 21: <Not Used>
      Flag 22: <Not Used>
      Flag 23: <Not Used>
      Flag 24: <Not Used>

      Flag 25: <Not Used>
      Flag 26: <Not Used>
      Flag 27: <Not Used>
      Flag 28: <Not Used>

      Flag 29: <Not Used>
      Flag 30: <Not Used>
      Flag 31: <Not Used>
      Flag 32: <Not Used>

      Flag 33: <Not Used>
      Flag 34: <Not Used>
      Flag 35: <Not Used>
      Flag 36: <Not Used>

      Flag 37: <Not Used>
      Flag 38: <Not Used>
      Flag 39: <Not Used>
      Flag 40: <Not Used>

      Flag 41: <Not Used>
      Flag 42: <Not Used>
      Flag 43: <Not Used>
      Flag 44: <Not Used>

      Flag 45: <Not Used>
      Flag 46: <Not Used>
      Flag 47: <Not Used>
      Flag 48: <Not Used>

      Flag 49: <Not Used>
      Flag 50: <Not Used>
      Flag 51: <Not Used>
      Flag 52: <Not Used>

      Flag 53: <Not Used>
      Flag 54: <Not Used>
      Flag 55: <Not Used>
      Flag 56: <Not Used>

      Flag 57: <Not Used>
      Flag 58: <Not Used>
      Flag 59: <Not Used>
      Flag 60: <Not Used>

      Flag 61: <Not Used>
      Flag 62: <Not Used>
      Flag 63: <Not Used>
      Flag 64: <Not Used>"
   ::= { upsAdvState 4 }

upsAdvStateSmartUPSSpecificFaults OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
      the current active UPS specific faults for the Smart-UPS
      UPS models. If the Network Card is unable to determine
      the values of the flags, this variable is set to
      'UNKNOWN'. If the connected UPS does not use this
      variable, it is set to 'NOT SUPPORTED'.

      The flags are numbered from 1 to 64, and read from left
      to right. The bits are defined as follows:

      Flag  1: EPO Switch Activated
      Flag  2: Static Bypass Switch Fault
      Flag  3: System Configuration Fault
      Flag  4: Power Supply Unit Fault

      Flag  5: Weak Battery
      Flag  6: High Battery Temperature
      Flag  7: Internal Mechanical Bypass
      Flag  8: Loss Of Parallel Redundancy

      Flag  9: Parallel Bus Communication Fault on Cable 1
      Flag 10: Parallel Bus Communication Fault on Cable 2
      Flag 11: Auxiliary Bus Communication Fault
      Flag 12: Parallel Bus Termination Fault on Cable 1

      Flag 13: Parallel Bus Termination Fault on Cable 2
      Flag 14: Auxiliary Bus Termination Fault
      Flag 15: No Master Present In The Parallel System
      Flag 16: Overload on a Parallel Unit

      Flag 17: Parallel Configuration Fault
      Flag 18: <Not Used>
      Flag 19: <Not Used>
      Flag 20: <Not Used>

      Flag 21: <Not Used>
      Flag 22: <Not Used>
      Flag 23: <Not Used>
      Flag 24: <Not Used>

      Flag 25: <Not Used>
      Flag 26: <Not Used>
      Flag 27: <Not Used>
      Flag 28: <Not Used>

      Flag 29: <Not Used>
      Flag 30: <Not Used>
      Flag 31: <Not Used>
      Flag 32: <Not Used>

      Flag 33: <Not Used>
      Flag 34: <Not Used>
      Flag 35: <Not Used>
      Flag 36: <Not Used>

      Flag 37: <Not Used>
      Flag 38: <Not Used>
      Flag 39: <Not Used>
      Flag 40: <Not Used>

      Flag 41: <Not Used>
      Flag 42: <Not Used>
      Flag 43: <Not Used>
      Flag 44: <Not Used>

      Flag 45: <Not Used>
      Flag 46: <Not Used>
      Flag 47: <Not Used>
      Flag 48: <Not Used>

      Flag 49: <Not Used>
      Flag 50: <Not Used>
      Flag 51: <Not Used>
      Flag 52: <Not Used>

      Flag 53: <Not Used>
      Flag 54: <Not Used>
      Flag 55: <Not Used>
      Flag 56: <Not Used>

      Flag 57: <Not Used>
      Flag 58: <Not Used>
      Flag 59: <Not Used>
      Flag 60: <Not Used>

      Flag 61: <Not Used>
      Flag 62: <Not Used>
      Flag 63: <Not Used>
      Flag 64: <Not Used>"
   ::= { upsAdvState 5 }


upsAdvStateSystemMessages OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 3 digit Decimal code
      representing the current active message from the
      System Message Register. Each code should remain active
      for a minimum of 15 seconds. However, in the worst case
      scenario, a code could be cleared after only 5 seconds.
      It is recommended that this object be polled at least
      once every 4 seconds in order to get the most accurate
      representation of the current UPS System Message. If the
      Network Card is unable to determine the value of the
      System Message Register, this variable is set to
      'UNKNOWN'."
   ::= { upsAdvState 6 }


upsAdvStateTotaltimeonbattery OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time the UPS has been in battery operation."
   ::= { upsAdvState 7 }

upsAdvStateTotaltimeonbypass OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time the UPS has been in bypass operation."
   ::= { upsAdvState 8 }

upsAdvStateTotaltimeonNormal OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time the UPS has been in normal operation."
   ::= { upsAdvState 9 }

upsAdvStateNumberoftimesonbattery OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of times the UPS was on battery.
       Since the last reset of statistical data."
   ::= { upsAdvState 10 }

upsAdvStateNumberoftimesbypass OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of times the UPS was in bypass.
       Since the last reset of statistical data."
   ::= { upsAdvState 11 }

upsAdvStateNumberoftimesNormal OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of times the UPS was in normal operation.
       Since the last reset of statistical data."
   ::= { upsAdvState 12 }

upsAdvStateEcomode OBJECT-TYPE
   SYNTAX INTEGER {
          upsOnEcoMode(1),
          upsNotOnEcoMode(2)
        }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Eco mode status.
       1: UPS is on Eco-mode
       2: UPS is not on Eco-mode."
   ::= { upsAdvState 13 }

upsAdvStateLifeCycleManagement OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 16 flags representing the life cycle management alerts
      for the device. If the Network Card is unable to determine the values of the flags,
      this variable is set to 'UNKNOWN'. If the connected UPS does not use this variable,
      it is set to 'NOT SUPPORTED'.

      The flags are numbered from 1 to 16, and read from left
      to right. The bits are defined as follows:

      Flag  1:	End of Warranty Soon
      Flag  2:	Battery Check Recommended
      Flag  3:	Service Period On Wearing Parts Expired
      Flag  4:	Secure Start-up Recommended

      Flag  5:	Fan Life Expired
      Flag  6: 	DC Capacitor Life Expired
      Flag  7: 	AC Capacitor Life Expired
      Flag  8: 	Supply Service Life Expired

      Flag  9: 	Ups Out Of Limits Warning
      Flag 10:  Air Filter Life Expired
      Flag 11: 	<Not Used>
      Flag 12: 	<Not Used>

      Flag 13: 	<Not Used>
      Flag 14: 	<Not Used>
      Flag 15: 	<Not Used>
      Flag 16: 	<Not Used>"
   ::= { upsAdvState 14 }

-- the upsBasicControl group

upsBasicControlConserveBattery OBJECT-TYPE
   SYNTAX INTEGER  {
      noTurnOffUps(1),
      turnOffUpsToConserveBattery(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to turnUpsOffToConserveBattery(2)
       causes a UPS on battery to be put into 'sleep' mode.  The
       UPS will turn back on when utility power is restored.
       Attempting to turn off a UPS that is not on battery will
       result in a badValue error.

       Setting this value to noTurnOffUps(1) has no
       effect.

       The value noTurnOffUps(1) will always be returned
       when the variable is read."
::= { upsBasicControl 1 }



-- the upsAdvControl group

upsAdvControlUpsOff OBJECT-TYPE
   SYNTAX INTEGER  {
      noTurnUpsOff(1),
      turnUpsOff(2),
      turnUpsOffGracefully(3),
      turnUpsSyncGroupOff(4),
      turnUpsSyncGroupOffAfterDelay(5),
      turnUpsSyncGroupOffGracefully(6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to turnUpsOff(2) causes
       the UPS to shut off.  When in this state, the UPS
       will not provide output power regardless of the input
       line state.

       Setting this variable to turnUpsOffGracefully(3) causes
       the UPS to shut off after a delay period. This allows the
       host to shut down in a graceful manner. When in this state,
       the UPS will not provide output power regardless of the
       input line state.

       If this UPS is an active member of a Synchronized
       Control Group (SCG) the turnUpsSyncGroupOff(4) command
       will perform a Synchronized Turn Off of all active Group
       members regardless of their current AC output status.

       If this UPS is an active member of a Synchronized
       Control Group (SCG) the turnUpsSyncGroupOffAfterDelay(5)
       command will perform a Synchronized Turn Off After Delay
       of all active Group members regardless of their current
       AC output status. This unit's Shutdown Delay will be used
       to execute the Turn Off After Delay command.

       If this UPS is an active member of an SCG, the
       turnUpsSyncGroupOffGracefully(6) command will perform a
       Synchronized Turn Off Gracefully of all active Group
       members regardless of their current AC output status.
       This unit's Maximum Shutdown Time and Shutdown Delay will
       be used to execute the Turn Off Gracefully command.

       Setting this value to noTurnUpsOff(1) has no
       effect.

       The value noTurnUpsOff(1) will always be returned
       when the variable is read."
   ::= { upsAdvControl 1 }

upsAdvControlRebootShutdownUps OBJECT-TYPE
   SYNTAX INTEGER  {
      noRebootShutdownUps(1),
      rebootShutdownUps(2),
      rebootShutdownUpsGracefully(3),
      rebootShutdownSyncGroupUps(4),
      rebootShutdownSyncGroupUpsGracefully(5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to rebootShutdownUps(2) causes the UPS
       to shut off and turn back on (as long as good AC input power
       is available, otherwise the UPS will remain off until good AC
       input power is available).

       Setting this variable to rebootShutdownUpsGracefully(3) causes
       the UPS to shut off after a delay period and then turn back
       on.  This allows the host to shut down in a graceful manner.

       If this UPS is an active member of a Synchronized Control
       Group (SCG) the rebootShutdownSyncGroupUps(4) command will
       perform a Synchronized Reboot of all active Group members
       regardless of their current AC output status.  If applicable,
       this unit's Power Synchronization Delay, Shutdown Delay,
       Return Delay, Return Battery Capacity, and Return Battery
       Capacity Offset will be used to execute the Reboot command.

       If this UPS is an active member of a SCG the
       rebootShutdownSyncGroupUpsGracefully(5) command will perform
       a Synchronized Reboot of all active Group members regardless
       of their current AC output status.  If applicable, this unit's
       Power Synchronization Delay, Maximum Shutdown Time, Shutdown
       Delay, Return Delay, Return Battery Capacity, and Return
       Battery Capacity Offset will be used to execute the Reboot
       command.

       Setting this value to noRebootShutdownUps(1) has no effect.

       The value noRebootShutdownUps(1) will always be returned when
       the variable is read."
   ::= { upsAdvControl 2 }

upsAdvControlUpsSleep OBJECT-TYPE
   SYNTAX INTEGER  {
      noPutUpsToSleep(1),
      putUpsToSleep(2),
      putUpsToSleepGracefully(3),
      putUpsSyncGroupToSleep(4),
      putUpsSyncGroupToSleepGracefully(5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to putUpsToSleep(2) causes
       the UPS to go to sleep for the time specified by
       upsAdvConfigUpsSleepTime.

       Setting this variable to putUpsToSleepGracefully(3)
       causes the UPS to go to sleep for the time specified
       by upsAdvConfigUpsSleepTime after a delay period.
       This allows the host to shut down in a graceful manner.

       If this UPS is an active member of a Synchronized Control
       Group (SCG), the putUpsSyncGroupToSleep(4) command will perform
       a Synchronized Sleep of all active Group members regardless
       of their current AC output status.  This unit's Power
       Synchronization Delay, Shutdown Delay, Sleep Time,
       and Return Delay will be used to execute the sleep command.

       If this UPS is an active member of a SCG the
       putUpsSyncGroupToSleepGracefully(5) command will perform a
       Synchronized Sleep Gracefully of all active Group members
       regardless of their current AC output status.  This unit's
       Power Synchronization Delay, Maximum Shutdown Time, Shutdown
       Delay, Sleep Time, and Return Delay to execute the sleep
       command.

       When in sleep mode, the UPS will not provide output
       power regardless of the input line state.  Once the
       specified time has elapsed, output power will be
       restored.

       Setting this value to noPutUpsToSleep(1) has no
       effect.

       The value noPutUpsToSleep(1) will always be returned
       when the variable is read."
   ::= { upsAdvControl 3 }


upsAdvControlSimulatePowerFail OBJECT-TYPE
   SYNTAX INTEGER  {
      noSimulatePowerFailure(1),
      simulatePowerFailure(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to simulatePowerFailure(2) causes
       the UPS switch to battery power.

       Setting this value to noSimulatePowerFailure(1) has no
       effect.

       The value noSimulatePowerFailure(1) will always be returned
       when the variable is read."
   ::= { upsAdvControl 4 }


upsAdvControlFlashAndBeep OBJECT-TYPE
   SYNTAX INTEGER  {
      noFlashAndBeep(1),
      flashAndBeep(2),
      flashAndBeepSyncGroup(3),
      flashAndBeepCont(4),
      flashAndBeepCancel(5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to flashAndBeep(2) causes the
       UPS to beep and simultaneously turn on the UPS front
       panel lights (Smart-UPS only).

       If this UPS is an active member of a Synchronized Control
       Group (SCG), the flashAndBeepSyncGroup(3) command will
       Flash and Beep all active Group members regardless of
       current AC output status.

       Setting this value to noFlashAndBeep(1) has no
       effect.

       Setting this value to flashAndBeepCont (4) commandcauses
       the UPS to beep and light the front panel lights until
       the flashAndBeepCancel (5) command is received.

       The value noFlashAndBeep(1) will always be returned
       when the variable is read."
   ::= { upsAdvControl 5 }


upsAdvControlTurnOnUPS OBJECT-TYPE
   SYNTAX INTEGER  {
      noTurnOnUPS(1),
      turnOnUPS(2),
      turnOnUPSSyncGroup(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to turnOnUPS(2) causes the
       UPS to be turned on immediately.

       If this UPS is an active member of a Synchronized Control
       Group (SCG), the turnOnUPSSyncGroup(3) command will perform
       a Synchronized Turn On of all active Group members
       regardless of their current AC output status.

       Setting this value to noTurnOnUPS(1) has no
       effect.

       The value noTurnOnUPS(1) will always be returned
       when the variable is read."
   ::= { upsAdvControl 6 }

upsAdvControlBypassSwitch OBJECT-TYPE
   SYNTAX INTEGER {
      noBypassSwitch (1),
      switchToBypass (2),
      switchOutOfBypass(3)
      }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This switch puts the UPS in or out of bypass mode."
   ::= { upsAdvControl 7 }

upsAdvControlRebootUpsWithOrWithoutAC OBJECT-TYPE
   SYNTAX INTEGER  {
      noRebootUpsWithOrWithoutAC          (1),
      rebootUpsImmediatelyWithOrWithoutAC (2),
      rebootUpsDelayedWithOrWithoutAC     (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to rebootUpsImmediatelyWithOrWithoutAC (2)
       causes the UPS to turn off immediately, wait for a minimum time
       (typically 8 seconds), and then turn back on regardless of the
       AC input power on the UPS.  Any supported switched outlet
       groups will be turned off immediately but will turn on based
       on their individual settings (to allow on sequencing).

       Setting this variable to rebootUpsDelayedWithOrWithoutAC (3)
       causes the UPS to turn off after a delay period, wait for a
       minimum time (typically 8 seconds), and then turn back on
       regardless of the AC input power on the UPS.  Any supported
       switched outlet groups will be turned off and on based on their
       individual settings (to allow off and/or on sequencing).

       Setting this value to noRebootUpsWithOrWithoutAC (1) has no
       effect.

       The value noRebootUpsWithOrWithoutAC (1) will always be
       returned when the variable is read."
   ::= { upsAdvControl 8 }

upsAdvControlFirmwareUpdate OBJECT-TYPE
   SYNTAX INTEGER {
      noFirmwareUpdate (1),
      firmwareUpdate   (2),
      updateInProcess  (3),
      updateSuccessful (4),
      updateFailed     (5)
      }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to firmwareUpdate(2) causes the
       UPS to begin a firmware update if possible.

       Setting this value to noFirmwareUpdate(1) will clear the
       previous results, if any, or otherwise has no effect.

       Reading this variable will return noFirmwareUpdate(1) when
       the UPS firmware has not been updated (or previous results
       have been cleared), updateInProcess(3) when the UPS firmware
       is being updated, updateSuccessful(4) when the UPS firmware
       has been successfully updated, or updateFailed(5) if the UPS
       firmware update failed."
   ::= { upsAdvControl 9 }


-- the upsTest group

-- the upsBasicTest group

-- the upsAdvTest group

upsAdvTestDiagnosticSchedule OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      biweekly(2),
      weekly(3),
      atTurnOn(4),
      never(5),
      fourWeeks(6),
      twelveWeeks(7),
      biweeklySinceLastTest(8),
      weeklySinceLastTest(9),
      eightWeeks(10),
      twentysixWeeks(11),
      fiftytwoWeeks(12)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The UPS system's automatic battery test schedule."
   ::= { upsAdvTest 1 }


upsAdvTestDiagnostics OBJECT-TYPE
   SYNTAX INTEGER  {
      noTestDiagnostics(1),
      testDiagnostics(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to testDiagnostics(2) causes
       the UPS to perform a diagnostic self test.

       Setting this value to noTestDiagnostics(1) has no
       effect.

       The value noTestDiagnostics(1) will always be returned
       when the variable is read."
   ::= { upsAdvTest 2 }

upsAdvTestDiagnosticsResults OBJECT-TYPE
   SYNTAX INTEGER {
      ok(1),
      failed(2),
      invalidTest(3),
      testInProgress(4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The results of the last UPS diagnostics test performed."
   ::= { upsAdvTest 3 }

upsAdvTestLastDiagnosticsDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date the last UPS diagnostics test was performed in
       mm/dd/yy format."
   ::= { upsAdvTest 4 }

upsAdvTestRuntimeCalibration OBJECT-TYPE
   SYNTAX INTEGER  {
      noPerformCalibration(1),
      performCalibration(2),
      cancelCurrentCalibration(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to performCalibration(2) causes
       the UPS to discharge to calibrate the UPS.
       The test will only start if the battery capacity is 100%.
       The test runs until capacity is less than 25%.

       Setting this variable to cancelCurrentCalibration(3)
       after setting performCalibration(2) will cancel the
       current discharge.

       Setting this variable to noPerformCalibration(1)
       will have no effect.

       The value noPerformCalibration(1) will always be returned
       when the variable is read.

       The result of the calibration will be saved in
       upsAdvTestCalibrationResult."
   ::= { upsAdvTest 5 }

upsAdvTestCalibrationResults OBJECT-TYPE
   SYNTAX INTEGER {
      ok(1),
      invalidCalibration(2),
      calibrationInProgress(3),
      refused(4),
      aborted(5),
      pending(6)
   }
   ACCESS read-only
   STATUS mandatory

   DESCRIPTION
      "The results of the last runtime calibration.

       Value ok(1) means a successful runtime calibration.

       Value invalidCalibration(2) indicates last calibration did
       not take place since the battery capacity was below
       100%.
       Value calibrationInProgress(3) means a calibration
       is occurring now.

       Value refused(4) means the test was refused, it did not take place.

       Value aborted(5) indicates the test started but either someone cancelled it or
       the system encountered an error.

       Value pending(6) the test will commence shortly. "
   ::= { upsAdvTest 6 }

upsAdvTestCalibrationDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date the last UPS runtime calibration was
       performed in mm/dd/yy format."
   ::= { upsAdvTest 7 }

upsAdvTestDiagnosticTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The time of the day to perform automatic battery test.
      Expressed in 24 hour notation - hh:mm."
   ::= { upsAdvTest 8 }

upsAdvTestDiagnosticDay OBJECT-TYPE
   SYNTAX INTEGER {
      monday    (1),
      tuesday   (2),
      wednesday (3),
      thursday  (4),
      friday    (5),
      saturday  (6),
      sunday    (7)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The day of the week to perform automatic battery test."
   ::= { upsAdvTest 9 }

upsAdvTestBatteryInterval OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The UPS system's automatic battery test period."
   ::= { upsAdvTest 10 }

-- the upsComm group

upsCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      ok(1),
      noComm(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of agent's communication with UPS. "
   ::= { upsComm 1 }

-- ups (integrated) output relay table

upsOutputRelayStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of integrated output relays on the UPS."
   ::= { upsOutputRelays 1 }

upsOutputRelayStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UPSOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual relays."
   ::= { upsOutputRelays 2 }

upsOutputRelayStatusEntry OBJECT-TYPE
   SYNTAX UPSOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relays to access."
   INDEX  { upsOutputRelayIndex }
   ::= { upsOutputRelayStatusTable 1 }

UPSOutputRelayStatusEntry ::=
   SEQUENCE {
      upsOutputRelayIndex           INTEGER,
      upsOutputRelayState           INTEGER,
      upsOutputRelayDetailedStatus  DisplayString
   }

upsOutputRelayIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the output relay entry."
   ::= { upsOutputRelayStatusEntry 1 }

upsOutputRelayState OBJECT-TYPE
   SYNTAX INTEGER {
      outputRelayNormalState        (1),
      outputRelayAbnormalState      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the output relay state.
        1 - normal state
        2 - abnormal state"
   ::= { upsOutputRelayStatusEntry 2 }

upsOutputRelayDetailedStatus OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 16 flags representing
      the status of the output relay.

      The flags are numbered from 1 to 16, and read from left
      to right. The bits are defined as follows:

      Flag  1: Cause is true which makes the output relay active if not pending a condition
      Flag  2: Pending delay
      Flag  3: Pending peak period
      Flag  4: <Not Used>

      Flag  5: <Not Used>
      Flag  6: <Not Used>
      Flag  7: <Not Used>
      Flag  8: <Not Used>

      Flag  9: <Not Used>
      Flag 10: <Not Used>
      Flag 11: <Not Used>
      Flag 12: <Not Used>

      Flag 13: <Not Used>
      Flag 14: <Not Used>
      Flag 15: <Not Used>
      Flag 16: <Not Used>"
   ::= { upsOutputRelayStatusEntry 3 }

upsOutputRelayConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of integrated output relays on the UPS."
   ::= { upsOutputRelays 3 }

upsOutputRelayConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UPSOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual relays."
   ::= { upsOutputRelays 4 }

upsOutputRelayConfigEntry OBJECT-TYPE
   SYNTAX UPSOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relays to access."
   INDEX  { upsOutputRelayConfigIndex }
   ::= { upsOutputRelayConfigTable 1 }

UPSOutputRelayConfigEntry ::=
   SEQUENCE {
      upsOutputRelayConfigIndex         INTEGER,
      upsOutputRelayConfigDelay         INTEGER,
      upsOutputRelayConfigCause         INTEGER
   }

upsOutputRelayConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the output relay entry."
   ::= { upsOutputRelayConfigEntry 1 }

upsOutputRelayConfigDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Output relay delay 0 - 86400 seconds."
   ::= { upsOutputRelayConfigEntry 2 }

upsOutputRelayConfigCause OBJECT-TYPE
   SYNTAX INTEGER {
      outputRelayConfigCauseNone                           (1),
      outputRelayConfigCauseOnBatPwrFail                   (2),
      outputRelayConfigCauseOnBatPwrFailExceptPeakPeriod   (3),
      outputRelayConfigCauseLoBatWhileOnBat                (4),
      outputRelayConfigCauseAlarm                          (5),
      outputRelayConfigCauseFault                          (6),
      outputRelayConfigCauseOutputOn                       (7),
      outputRelayConfigCauseOutputOff                      (8),
      outputRelayConfigCauseOnline                         (9),
      outputRelayConfigCauseInBypass                       (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "This variable sets what causes the output relay state to change.
        1 - none
        2 - on battery power failure
        3 - on battery power failure expect during peak period
        4 - low battery while on battery
        5 - alarm
        6 - fault
        7 - output on
        8 - output off
        9 - online
        10 - in bypass"
   ::= { upsOutputRelayConfigEntry 3 }

upsOutputRelayConfigPolarity OBJECT-TYPE
   SYNTAX INTEGER{
      upsOutputRelayAllRelaysEnergizedWhenTrue     (1),
      upsOutputRelayAllRelaysNotEnergizedWhenTrue  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures all output relays with one setting.
       1 - all relays act normally open, when logic condition is true, relays are energized
       2 - all relays act normally close, when logic condition is true relays are deenergized"
   ::= { upsOutputRelays 5 }


upsOutputRelayConfigPeakPeriod OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 64 flags representing
      the peak period setting of the UPS. Flags are numbered 1-64
      starting from the left. Each flag is either a '1', 
      representing a flag that is set, or a '0', representing 
      a flag that is /not/ set.
      
      The peak period intervals are times that are both:
      - on the days of the week set by the first 7 flags AND
      - within the time periods set by the remaining flags.
      
      UPS output relays triggered by 'On battery except peak period' 
      will not signal when the UPS is on battery during a peak period. 

      The flags are defined as follows:

      Flag  1: Sunday
      Flag  2: Monday
      Flag  3: Tuesday
      Flag  4: Wednesday

      Flag  5: Thursday
      Flag  6: Friday
      Flag  7: Saturday
      Flag  8: 00:00-00:29

      Flag  9: 00:30-00:59
      Flag 10: 01:00-01:29
      Flag 11: 01:30-01:59
      Flag 12: 02:00-02:29

      Flag 13: 02:30-02:59
      Flag 14: 03:00-03:29
      Flag 15: 03:30-03:59
      Flag 16: 04:00-04:29

      Flag 17: 04:30-04:59
      Flag 18: 05:00-05:29
      Flag 19: 05:30-05:59
      Flag 20: 06:00-06:29

      Flag 21: 06:30-06:59
      Flag 22: 07:00-07:29
      Flag 23: 07:30-07:59
      Flag 24: 08:00-08:29

      Flag 25: 08:30-08:59
      Flag 26: 09:00-09:29
      Flag 27: 09:30-09:59
      Flag 28: 10:00-00:29

      Flag 29: 10:30-10:59
      Flag 30: 11:00-11:29
      Flag 31: 11:30-11:59
      Flag 32: 12:00-12:29

      Flag 33: 12:30-12:59
      Flag 34: 13:00-13:29
      Flag 35: 13:30-13:59
      Flag 36: 14:00-14:29

      Flag 37: 14:30-14:59
      Flag 38: 15:00-15:29
      Flag 39: 15:30-15:59
      Flag 40: 16:00-16:29

      Flag 41: 16:30-16:59
      Flag 42: 17:00-17:29
      Flag 43: 17:30-17:59
      Flag 44: 18:00-18:29

      Flag 45: 18:30-18:59
      Flag 46: 19:00-19:29
      Flag 47: 19:30-19:59
      Flag 48: 20:00-20:29

      Flag 49: 20:30-20:59
      Flag 50: 21:00-21:29
      Flag 51: 21:30-21:59
      Flag 52: 22:00-22:29

      Flag 53: 22:30-22:59
      Flag 54: 23:00-23:29
      Flag 55: 23:30-23:59
      Flag 56: <Not Used>

      Flag 57: <Not Used>
      Flag 58: <Not Used>
      Flag 59: <Not Used>
      Flag 60: <Not Used>

      Flag 61: <Not Used>
      Flag 62: <Not Used>
      Flag 63: <Not Used>
      Flag 64: <Not Used>
      
      To set this OID you can either:
      - set the 64 flag bits as an ASCII string of '1's and '0's 
        as described above. The same format is used when this OID
        is read.
      - or turn on/off an individual flags. 
      
      Examples:
      
      Set for Sundays and Tuesdays from 00:00-01:29: 
      1010000111000000000000000000000000000000000000000000000000000000
      
      Set Mondays to be part of the peak periods:
      +2
      
      Set Tuesdays to not be part of the peak periods:
      -3
      
      Include interval 23:30-23:59 in the peak period:
      +55"
   ::= { upsOutputRelays 6 }

upsInputContactStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of integrated input contacts on the UPS."
   ::= { upsInputContacts 1 }

upsInputContactStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual contacts."
   ::= { upsInputContacts 2 }

upsInputContactStatusEntry OBJECT-TYPE
   SYNTAX UpsInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contacts to access."
   INDEX  { upsInputContactIndex }
   ::= { upsInputContactStatusTable 1 }

UpsInputContactStatusEntry ::=
   SEQUENCE {
      upsInputContactIndex         INTEGER,
      upsInputContactState         INTEGER
   }

upsInputContactIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the input contact entry."
   ::= { upsInputContactStatusEntry 1 }

upsInputContactState OBJECT-TYPE
   SYNTAX INTEGER {
      upsInputContactNormalState        (1),
      upsInputContactAbnormalState      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the input contact state.
        1 - normal state
        2 - abnormal state"
   ::= { upsInputContactStatusEntry 2 }

upsInputContactConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of integrated input contacts on the UPS."
   ::= { upsInputContacts 3 }

upsInputContactConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual contacts."
   ::= { upsInputContacts 4 }

upsInputContactConfigEntry OBJECT-TYPE
   SYNTAX UpsInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contacts to access."
   INDEX  { upsInputContactConfigIndex }
   ::= { upsInputContactConfigTable 1 }

UpsInputContactConfigEntry ::=
   SEQUENCE {
      upsInputContactConfigIndex        INTEGER,
      upsInputContactConfigAction       INTEGER
   }

upsInputContactConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the input contact entry."
   ::= { upsInputContactConfigEntry 1 }

upsInputContactConfigAction OBJECT-TYPE
   SYNTAX INTEGER {
      upsInputContactConfigActionNone               (1),
      upsInputContactConfigActionSelfTest           (2),
      upsInputContactConfigActionExternalAlarmOn    (3),
      upsInputContactConfigActionExternalAlarmOff   (4),
      upsInputContactConfigActionOutputOffNoDelay   (5),
      upsInputContactConfigActionOutputOn           (6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "When the input contact changes state, this action occurs.
        1 - none
        2 - self test
        3 - external alarm on
        4 - external alarm off
        5 - output off no delay
        6 - output on"
   ::= { upsInputContactConfigEntry 2 }

upsInputContactConfigPolarity OBJECT-TYPE
   SYNTAX INTEGER{
      upsInputContactAllContactsClosedEqualsTrue    (1),
      upsInputContactAllContactsOpenEqualsTrue      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures all input contacts with one setting.
       1 - all contacts act as normally open
       2 - all contacts act as normally closed"
   ::= { upsInputContacts 5 }

-- upsServiceInfo subgroup
-- the upsServiceBatteryInfo subgroup
-- Don't want to expose Ups Service information data to customer.
-- Always be in experimental.

-- upsECOmode subgroup
upsEcoModeFreqTransferRange OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates tolerance of bypass AC frequency in Hz to switch on ECO mode."
   ::= { upsECOmode 1 }

upsEcoModeHighVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates high threshold on AC voltage in volts to switch on ECO mode."
   ::= { upsECOmode 2 }

upsEcoModeLowVoltThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates low threshold on AC voltage in volts to switch on ECO mode."
   ::= { upsECOmode 3 }

upsEcoModeSetting OBJECT-TYPE
    SYNTAX INTEGER  {
      enabled 	(1),
      disabled 	(2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether ECO feature is avaiable to this UPS or not."
   ::= { upsECOmode 4 }

upsEcoModeStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      active    (1),
      inactive	(2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether UPS is running in ECO mode or not."
   ::= { upsECOmode 5 }

upsEcoModeCountSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of times UPS entered into ECO mode since maintenance reset."
   ::= { upsECOmode 6 }

upsEcoModeOnlineSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime in online mode with ECO feature enabled once product is authorized to use (in minutes)."
   ::= { upsECOmode 7 }

upsEcoModeOnlineSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime in online mode with ECO feature enabled since maintenance reset (in minutes)."
   ::= { upsECOmode 8 }

upsEcoModeTotalPercentTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates percentage of runtime in ECO mode since maintenance reset."
   ::= { upsECOmode 9 }

upsEcoModePercentTimeSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates percentage of operation time in ECO mode once product is authorized to use."
   ::= { upsECOmode 10 }

upsEcoModeTotalTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime of UPS in ECO mode since maintenance reset (in minutes)."
   ::= { upsECOmode 11 }

upsEcoModeTotalTimeSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime in ECO mode once product is authorized to use (in minutes)."
   ::= { upsECOmode 12 }

upsEcoModeTotalTimeInMonth OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime of UPS in ECO mode since beginning of month (in minutes)."
   ::= { upsECOmode 13 }

-- upsEBMmode subgroup
upsEbmModeSetting OBJECT-TYPE
    SYNTAX INTEGER  {
      enabled 	(1),
      disabled 	(2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether efficiency booster mode feature is avaiable to this UPS or not."
   ::= { upsEBMmode 1 }

upsEbmModeStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      active    (1),
      inactive	(2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether UPS is running on EBM mode or not."
   ::= { upsEBMmode 2 }

upsEbmModeCountSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of times UPS entered into efficiency booster mode since maintenance reset."
   ::= { upsEBMmode 3 }

upsEbmModeTotalTimeInMonth OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime of UPS in efficiency booster mode since beginning of month (in minutes)."
   ::= { upsEBMmode 4 }

upsEbmModeTotalTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime of UPS in efficiency booster mode since maintenance reset (in minutes)."
   ::= { upsEBMmode 5 }

upsEbmModeTotalPercentTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates percentage of runtime in efficiency booster mode since maintenance reset."
   ::= { upsEBMmode 6 }

upsEbmModeOnlineSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates runtime in online mode with EBM feature enabled once product is authorized to use (in minutes)."
   ::= { upsEBMmode 7 }

upsEbmModePercentTimeSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates percentage of operation time in efficiency booster mode once product is authorized to use."
   ::= { upsEBMmode 8 }

upsEbmModeRuntimeSinceCommission OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime in efficiency booster mode once product is authorized to use (in minutes)."
   ::= { upsEBMmode 9 }

upsEbmModeOnlineSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total runtime in online mode with EBM feature enabled since maintenance reset (in minutes)."
   ::= { upsEBMmode 10 }

upsEbmModeUpsCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of UPS's running in efficiency booster mode."
   ::= { upsEBMmode 11 }

-- upsBatteryStats group

upsBatteryStatsReset OBJECT-TYPE
   SYNTAX INTEGER  {
      notSupported (1),
      noOperation (2),
      reset (3)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(3) will reset the Battery Stats timer.
      Getting this OID will return:
      notSupported(1) - reset feature is not supported.
      noOperation(2) - indicates reset is supported, does nothing."
   ::= { upsBatteryStats 1 }

upsBatteryStatsTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time since battery timer reset (in minutes)."
   ::= { upsBatteryStats 2 }

upsBatteryStatsTimeOnBattery OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in battery operation (in minutes)."
   ::= { upsBatteryStats 3 }

-- upsOperationalStats group

upsOpStatsReset OBJECT-TYPE
   SYNTAX INTEGER  {
      notSupported (1),
      noOperation (2),
      reset (3)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(3) will reset the Operational Stats timer.
      Getting this OID will return:
      notSupported(1) - reset feature is not supported.
      noOperation(2) - indicates reset is supported, does nothing."
   ::= { upsOperationalStats 1 }

upsOpStatsTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time since timer reset (in minutes)."
   ::= { upsOperationalStats 2 }

upsOpStatsTimeInNormalOperation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in normal operation since timer reset via upsOpStatsReset (in minutes)."
   ::= { upsOperationalStats 3 }

upsOpStatsTimeInBypassOperation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in bypass operation since timer reset via upsOpStatsReset (in minutes)."
   ::= { upsOperationalStats 4 }

upsOpStatsTimeInECOmodeOperation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in ECO mode since timer reset via upsOpStatsReset (in minutes)."
   ::= { upsOperationalStats 5 }

upsOpStatsTimeInECOnversionOperation OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in ECOnversion since timer reset via upsOpStatsReset (in minutes)."
   ::= { upsOperationalStats 6 }

-- upsEnergyEfficiencyStats group

upsEnergyEfficiencyStatsReset OBJECT-TYPE
   SYNTAX INTEGER  {
      notSupported (1),
      noOperation (2),
      reset (3)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(3) will reset the Energy Efficiency Stats timer.
      Getting this OID will return:
      notSupported(1) - reset feature is not supported.
      noOperation(2) - indicates reset is supported, does nothing."
   ::= { upsEnergyEfficiencyStats 1 }

upsEnergyEfficiencyStatsTimeSinceReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time since timer reset (in minutes)."
   ::= { upsEnergyEfficiencyStats 2 }

upsEnergyEfficiencyStatsTimeInECOmode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in ECO mode since timer reset via upsEnergyEfficiencyStatsReset (in minutes)."
   ::= { upsEnergyEfficiencyStats 3 }

upsEnergyEfficiencyStatsTimeInECOnversion OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total time for UPS in ECOnversion since timer reset via upsEnergyEfficiencyStatsReset (in minutes)."
   ::= { upsEnergyEfficiencyStats 4 }

upsEnergyEfficiencyStatsInputEnergyUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The input energy usage of the UPS in kWh since timer reset."
   ::= { upsEnergyEfficiencyStats 5 }

upsEnergyEfficiencyStatsOutputEnergyUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The output energy usage of the UPS in kWh since timer reset."
   ::= { upsEnergyEfficiencyStats 6 }


-- the measureUps group
-- the Environ group

mUpsEnvironAmbientTemperature OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The ambient temperature in Celsius for Probe 1."
   ::= { mUpsEnviron 1 }

mUpsEnvironRelativeHumidity OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity as a percentage for Probe 1."
   ::= { mUpsEnviron 2 }


mUpsEnvironAmbientTemperature2 OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The ambient temperature in Celsius for Probe 2."
   ::= { mUpsEnviron 3 }

mUpsEnvironRelativeHumidity2 OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity as a percentage for Probe 2."
   ::= { mUpsEnviron 4 }

-- the mUpsContact group

mUpsContactNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported by the Measure-UPS."
   ::= { mUpsContact 1 }

mUpsContactTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MUpsContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the Measure-UPS."
   ::= { mUpsContact 2 }

mUpsContactEntry OBJECT-TYPE
   SYNTAX MUpsContactEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A contact entry containing information for a given contact."
   INDEX  { contactNumber }
   ::= { mUpsContactTable 1 }

MUpsContactEntry ::=
   SEQUENCE {
      contactNumber
         INTEGER,
      normalState
         INTEGER,
      description
         DisplayString,
      monitoringStatus
         INTEGER,
      currentStatus
         INTEGER
   }

contactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An index identifying the contact on the Measure-UPS."
   ::= { mUpsContactEntry 1 }

normalState OBJECT-TYPE
   SYNTAX INTEGER {
      unknown(1),
      open(2),
      closed(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal operating position of the contact. If the normal
       operating position cannot be set then it is controlled via the
       dip switch on the Measure-UPS and is therefore read-only."
   ::= { mUpsContactEntry 2 }

description OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The description of the purpose/use of the contact."
   ::= { mUpsContactEntry 3 }

monitoringStatus OBJECT-TYPE
   SYNTAX INTEGER {
      unknown(1),
      enabled(2),
      disabled(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A flag indicating whether this contact is
       monitored, or not."
   ::= { mUpsContactEntry 4 }

currentStatus OBJECT-TYPE
   SYNTAX INTEGER {
      unknown(1),
      noFault(2),
      fault(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This value indicates the current state of the contact.
       If the contact is not in its normal state.  This value
       is set to fault(2)."
   ::= { mUpsContactEntry 5 }

-- Three Phase Group

--
-- Reset Max/Min Values Group
--

   upsPhaseResetMaxMinValues OBJECT-TYPE
       SYNTAX INTEGER {
          none (1),
          reset (2)
       }
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "Reset the maximum and minimum UPS values:
                upsPhaseInputMaxVoltage, upsPhaseInputMinVoltage,
                upsPhaseInputMaxCurrent, upsPhaseInputMinCurrent,
                upsPhaseInputMaxPower, upsPhaseInputMinPower,
                upsPhaseOutputMaxCurrent, upsPhaseOutputMinCurrent,
                upsPhaseOutputMaxLoad, upsPhaseOutputMinLoad,
                upsPhaseOutputMaxPercentLoad, upsPhaseOutputMinPercentLoad,
                upsPhaseOutputMaxPower, upsPhaseOutputMinPower,
                upsPhaseOutputMaxPercentPower, upsPhaseOutputMinPercentPower."
       ::= { upsPhaseResetValues 1 }

--
-- Input Group
--

-- Number of Inputs

   upsPhaseNumInputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of input feeds to this device.
               This variable indicates the number of rows in the
               input table."
       ::= { upsPhaseInput 1 }

-- Input Table

   upsPhaseInputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsPhaseInputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the value of upsPhaseNumInputs."
       ::= { upsPhaseInput 2 }

   upsPhaseInputEntry OBJECT-TYPE
       SYNTAX     UpsPhaseInputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input."
       INDEX { upsPhaseInputTableIndex }
       ::= { upsPhaseInputTable 1 }

   UpsPhaseInputEntry ::= SEQUENCE {
       upsPhaseInputTableIndex         INTEGER,
       upsPhaseNumInputPhases          INTEGER,
       upsPhaseInputVoltageOrientation INTEGER,
       upsPhaseInputFrequency          INTEGER,
       upsPhaseInputType               INTEGER,
       upsPhaseInputName               DisplayString
   }

   upsPhaseInputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { upsPhaseInputEntry 1 }

   upsPhaseNumInputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of input phases utilized in this
               device.  The sum of all the upsPhaseNumInputPhases
               variable indicates the number of rows in the
               input phase table."
       ::= { upsPhaseInputEntry 2 }

   upsPhaseInputVoltageOrientation OBJECT-TYPE
       SYNTAX INTEGER {
          unknown(1),
          singlePhase(2),
          splitPhase(3),
          threePhasePhaseToNeutral(4),
          threePhasePhaseToPhase(5)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage orientation:
               1: unknown for this UPS
               2: singlePhase - phase 1 voltage is between Phase 1
               and Neutral.
               3: splitPhase - phase 1 voltage is between Phase 1 and
               Neutral; phase 2 voltage is between Phase 2 and Neutral;
               phase 3 voltage is between Phase 1 and Phase 2.
               4: threePhasePhaseToNeutral - phase 1 voltage is between
               Phase 1 and Neutral; phase 2 voltage is between Phase 2
               and Neutral; phase 3 voltage is between Phase 3 and
               Neutral.
               5: threePhasePhaseToPhase - phase 1 voltage is between
               Phase 1 and Phase 2; phase 2 voltage is between Phase 2
               and Phase 3; phase 3 voltage is between Phase 3 and
               Phase 1."
       ::= { upsPhaseInputEntry 3 }

   upsPhaseInputFrequency OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input frequency in 0.1 Hertz, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseInputEntry 4 }

   upsPhaseInputType OBJECT-TYPE
       SYNTAX     INTEGER {
          unknown(1),
          main(2),
          bypass(3)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input type."
       ::= { upsPhaseInputEntry 5 }

   upsPhaseInputName OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "A name given to a particular input."
       ::= { upsPhaseInputEntry 6 }

-- Input Phase Table

   upsPhaseInputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsPhaseInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the sum of the upsPhaseNumInputPhases."
       ::= { upsPhaseInput 3 }

   upsPhaseInputPhaseEntry OBJECT-TYPE
       SYNTAX     UpsPhaseInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input phase."
       INDEX { upsPhaseInputPhaseTableIndex, upsPhaseInputPhaseIndex }
       ::= { upsPhaseInputPhaseTable 1 }

    UpsPhaseInputPhaseEntry ::= SEQUENCE {
       upsPhaseInputPhaseTableIndex     INTEGER,
       upsPhaseInputPhaseIndex          INTEGER,
       upsPhaseInputVoltage             INTEGER,
       upsPhaseInputMaxVoltage          INTEGER,
       upsPhaseInputMinVoltage          INTEGER,
       upsPhaseInputCurrent             INTEGER,
       upsPhaseInputMaxCurrent          INTEGER,
       upsPhaseInputMinCurrent          INTEGER,
       upsPhaseInputPower               INTEGER,
       upsPhaseInputMaxPower            INTEGER,
       upsPhaseInputMinPower            INTEGER,
       upsPhaseInputApparentPower       INTEGER,
       upsPhaseInputPowerFactor         INTEGER,
	   upsPhaseInputVoltagePN           INTEGER
   }

   upsPhaseInputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { upsPhaseInputPhaseEntry 1 }

   upsPhaseInputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input phase identifier."
       ::= { upsPhaseInputPhaseEntry 2 }

   upsPhaseInputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage in VAC, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseInputPhaseEntry 3 }	   	   

   upsPhaseInputMaxVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input voltage in VAC measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 4 }

   upsPhaseInputMinVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input voltage in VAC measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 5 }

   upsPhaseInputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input current in 0.1 amperes, or -1 if it's
               unsupported by this UPS."
       ::= { upsPhaseInputPhaseEntry 6 }

   upsPhaseInputMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input current in 0.1 amperes measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 7 }

   upsPhaseInputMinCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input current in 0.1 amperes measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 8 }

   upsPhaseInputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input power in Watts, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseInputPhaseEntry 9 }

   upsPhaseInputMaxPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input power in Watts measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 10 }

   upsPhaseInputMinPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input power in Watts measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseInputPhaseEntry 11 }


     upsPhaseInputApparentPower   OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input apparent power of the UPS in kVA."
       ::= { upsPhaseInputPhaseEntry 12 }

     upsPhaseInputPowerFactor  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input power factor measured in hundredth."
       ::= { upsPhaseInputPhaseEntry 13 }
	   
     upsPhaseInputVoltagePN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage measured across Phase to Neutral in VAC, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseInputPhaseEntry 14 }		   
   --
   -- The Output group.
   --

   -- Number of Outputs

   upsPhaseNumOutputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output feeds to this device.
               This variable indicates the number of rows in the
               output table."
       ::= { upsPhaseOutput 1 }

   -- Output Table

   upsPhaseOutputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsPhaseOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of entries
               is given by the value of upsOutputNumPhases."
       ::= { upsPhaseOutput 2 }

   upsPhaseOutputEntry OBJECT-TYPE
       SYNTAX     UpsPhaseOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output."
       INDEX { upsPhaseOutputTableIndex }
       ::= { upsPhaseOutputTable 1 }

   UpsPhaseOutputEntry ::= SEQUENCE {
       upsPhaseOutputTableIndex         INTEGER,
       upsPhaseNumOutputPhases          INTEGER,
       upsPhaseOutputVoltageOrientation INTEGER,
       upsPhaseOutputFrequency          INTEGER
   }

   upsPhaseOutputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { upsPhaseOutputEntry 1 }

   upsPhaseNumOutputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output phases utilized in this
               device.  The sum of all the upsPhaseNumOutputPhases
               variable indicates the number of rows in the
               output phase table."
       ::= { upsPhaseOutputEntry 2 }

   upsPhaseOutputVoltageOrientation OBJECT-TYPE
       SYNTAX INTEGER {
          unknown(1),
          singlePhase(2),
          splitPhase(3),
          threePhasePhaseToNeutral(4),
          threePhasePhaseToPhase(5)
       }
       ACCESS read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage orientation:
               1: unknown for this UPS
               2: singlePhase - phase 1 voltage is between Phase 1
               and Neutral.
               3: splitPhase - phase 1 voltage is between Phase 1 and
               Neutral; phase 2 voltage is between Phase 2 and Neutral;
               phase 3 voltage is between Phase 1 and Phase 2.
               4: threePhasePhaseToNeutral - phase 1 voltage is between
               Phase 1 and Neutral; phase 2 voltage is between Phase 2
               and Neutral; phase 3 voltage is between Phase 3 and
               Neutral.
               5: threePhasePhaseToPhase - phase 1 voltage is between
               Phase 1 and Phase 2; phase 2 voltage is between Phase 2
               and Phase 3; phase 3 voltage is between Phase 3 and
               Phase 1."
       ::= { upsPhaseOutputEntry 3 }

   upsPhaseOutputFrequency OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output frequency in 0.1 Hertz, or -1 if it's
               unsupported by this UPS."
       ::= { upsPhaseOutputEntry 4 }

   -- Output Phase Table

   upsPhaseOutputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsPhaseOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of
               entries is given by the sum of the upsPhaseNumOutputPhases."
       ::= { upsPhaseOutput 3 }

   upsPhaseOutputPhaseEntry OBJECT-TYPE
       SYNTAX     UpsPhaseOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output phase."
       INDEX { upsPhaseOutputPhaseTableIndex, upsPhaseOutputPhaseIndex }
       ::= { upsPhaseOutputPhaseTable 1 }

    UpsPhaseOutputPhaseEntry ::= SEQUENCE {
       upsPhaseOutputPhaseTableIndex     INTEGER,
       upsPhaseOutputPhaseIndex          INTEGER,
       upsPhaseOutputVoltage             INTEGER,
       upsPhaseOutputCurrent             INTEGER,
       upsPhaseOutputMaxCurrent          INTEGER,
       upsPhaseOutputMinCurrent          INTEGER,
       upsPhaseOutputLoad                INTEGER,
       upsPhaseOutputMaxLoad             INTEGER,
       upsPhaseOutputMinLoad             INTEGER,
       upsPhaseOutputPercentLoad         INTEGER,
       upsPhaseOutputMaxPercentLoad      INTEGER,
       upsPhaseOutputMinPercentLoad      INTEGER,
       upsPhaseOutputPower               INTEGER,
       upsPhaseOutputMaxPower            INTEGER,
       upsPhaseOutputMinPower            INTEGER,
       upsPhaseOutputPercentPower        INTEGER,
       upsPhaseOutputMaxPercentPower     INTEGER,
       upsPhaseOutputMinPercentPower     INTEGER,
       upsPhaseOutputPowerFactor         INTEGER,
       upsPhaseOutputApparentPower       INTEGER,
       upsPhaseOutputInverterVoltage     INTEGER,
       upsPhaseOutputVoltagePN           INTEGER
   }

   upsPhaseOutputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { upsPhaseOutputPhaseEntry 1 }

   upsPhaseOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output phase identifier."
       ::= { upsPhaseOutputPhaseEntry 2 }

   upsPhaseOutputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage in VAC, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseOutputPhaseEntry 3 }

   upsPhaseOutputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output current in 0.1 amperes drawn
               by the load on the UPS, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseOutputPhaseEntry 4 }

   upsPhaseOutputMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output current in 0.1 amperes measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 5 }

   upsPhaseOutputMinCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output current in 0.1 amperes measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 6 }

   upsPhaseOutputLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output load in VA, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseOutputPhaseEntry 7 }

   upsPhaseOutputMaxLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output load in VA measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 8 }

   upsPhaseOutputMinLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output load in VA measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 9 }

   upsPhaseOutputPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the UPS load capacity in VA at
               redundancy @ (n + x) presently being used on this
               output phase, or -1 if it's unsupported by this UPS."
       ::= { upsPhaseOutputPhaseEntry 10 }

   upsPhaseOutputMaxPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the UPS load capacity in
               VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last reset
               (upsPhaseResetMaxMinValues), or -1 if it's unsupported
               by this UPS. Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 11 }

   upsPhaseOutputMinPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum percentage of the UPS load capacity in
               VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last reset
               (upsPhaseResetMaxMinValues), or -1 if it's unsupported
               by this UPS. Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 12 }

   upsPhaseOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output power in Watts, or -1 if it's
               unsupported by this UPS."
       ::= { upsPhaseOutputPhaseEntry 13 }

   upsPhaseOutputMaxPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output power in Watts measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 14 }

   upsPhaseOutputMinPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output power in Watts measured
               since the last reset (upsPhaseResetMaxMinValues), or
               -1 if it's unsupported by this UPS.
               Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 15 }

   upsPhaseOutputPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the UPS power capacity in Watts at
               redundancy @ (n + x) presently being used on this
               output phase, or -1 if it's unsupported by this UPS."
       ::= { upsPhaseOutputPhaseEntry 16 }

   upsPhaseOutputMaxPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the UPS power capacity
               in Watts measured at redundancy @ (n + x) presently
               being used on this output phase since the last
               reset (upsPhaseResetMaxMinValues), or -1 if it's
               unsupported by this UPS. Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 17 }

   upsPhaseOutputMinPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the UPS power capacity
               in Watts measured at redundancy @ (n + x) presently
               being used on this output phase since the last
               reset (upsPhaseResetMaxMinValues), or -1 if it's
               unsupported by this UPS. Sampled every 30 seconds."
       ::= { upsPhaseOutputPhaseEntry 18 }

    upsPhaseOutputPowerFactor  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Output power factor of the UPS in hundredth."
       ::= { upsPhaseOutputPhaseEntry 19 }
    upsPhaseOutputApparentPower OBJECT-TYPE
        SYNTAX    INTEGER
        ACCESS    read-only
        STATUS    mandatory
        DESCRIPTION
                "Apparent power in kVA"
        ::= { upsPhaseOutputPhaseEntry 20 }

    upsPhaseOutputInverterVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Output voltage in VAC measured at the output of inverter."
       ::= { upsPhaseOutputPhaseEntry 21 }
	   
   upsPhaseOutputVoltagePN OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage measured across Phase to Neutral in VAC, or -1 if it's unsupported
               by this UPS."
       ::= { upsPhaseOutputPhaseEntry 22 }

-- the upsOutletGroupStatus group

upsOutletGroupStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlet groups for the UPS."
   ::= { upsOutletGroupStatus 1 }

upsOutletGroupStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsOutletGroupStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting status of the outlet groups. The number of
       entries is contained in the upsOutletGroupStatusTableSize OID."
   ::= { upsOutletGroupStatus 2 }

upsOutletGroupStatusEntry OBJECT-TYPE
   SYNTAX UpsOutletGroupStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet group status to get."
   INDEX  { upsOutletGroupStatusIndex}
   ::= { upsOutletGroupStatusTable 1 }

UpsOutletGroupStatusEntry ::=
   SEQUENCE {
      upsOutletGroupStatusIndex             INTEGER,
      upsOutletGroupStatusName              DisplayString,
      upsOutletGroupStatusGroupState        INTEGER,
      upsOutletGroupStatusCommandPending    INTEGER,
      upsOutletGroupStatusOutletType        INTEGER,
      upsOutletGroupStatusGroupFullState    DisplayString
   }

upsOutletGroupStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet group entry."
   ::= { upsOutletGroupStatusEntry 1 }

upsOutletGroupStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the outlet group. This OID is provided
       for informational purposes only. This value is set
       by the upsOutletGroupConfigName OID."
   ::= { upsOutletGroupStatusEntry  2 }

upsOutletGroupStatusGroupState OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupStatusOn      (1),
        upsOutletGroupStatusOff     (2),
        upsOutletGroupStatusUnknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the outlet group state. If the outlet
       group is on, the upsOutletGroupStatusOn (1) value will be returned. If
       the outlet group is off, the upsOutletGroupStatusOff (2) value will be
       returned. If the state of the outlet group cannot be determined, the
       upsOutletGroupStatusUnknown (3) value will be returned."

   ::= { upsOutletGroupStatusEntry 3 }

upsOutletGroupStatusCommandPending OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupCommandPending   (1),
        upsOutletGroupNoCommandPending (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the command pending
       state of the outlet group. If a command is pending on the
       outlet group, the upsOutletGroupCommandPending (1) value
       will be returned. If there is not a command pending
       on the outlet group, the upsOutletGroupNoCommandPending (2)
       will be returned."
   ::= { upsOutletGroupStatusEntry 4 }

upsOutletGroupStatusOutletType OBJECT-TYPE
   SYNTAX INTEGER {
        upsSwitchedOutletGroup (1),
        upsMainOutletGroup     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the type of outlet group.
       If present in the system, the main outlet group is
       'unswitched' and must be on in order for any of the switched
       outlet groups to be on. Conversely, if the main outlet group
       is off, all the switched outlet groups must also be off.
       Therefore, any commands made to the main outlet group that
       turn it off will also be applied to all switched outlet
       groups that are on, unless the state of a switched outlet
       group prevents it, in which case the command will fail."
   ::= { upsOutletGroupStatusEntry 5 }

upsOutletGroupStatusGroupFullState OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 32 flags representing the
       current state(s) of the outlet group. If the Network Card
       is unable to determine the state of the outlet group, this
       variable is set to 'UNKNOWN'.

       The flags are numbered from 1 to 32, and read from left to
       right. The flags are defined as follows:

       Flag  1: On
       Flag  2: Off
       Flag  3: Reboot in Progress
       Flag  4: Shutdown in Progress

       Flag  5: Sleep in Progress
       Flag  6: <Not Used>
       Flag  7: <Not Used>
       Flag  8: Pending Load Shed

       Flag  9: Pending On Delay
       Flag 10: Pending Off Delay
       Flag 11: Pending AC Presence
       Flag 12: Pending On Minimum Runtime

       Flag 13: Member Group Process 1
       Flag 14: Member Group Process 2
       Flag 15: Runtime Below Turn On Setting
       Flag 16: <Not Used>

       Flag 17: <Not Used>
       Flag 18: <Not Used>
       Flag 19: <Not Used>
       Flag 20: <Not Used>

       Flag 21: <Not Used>
       Flag 22: <Not Used>
       Flag 23: <Not Used>
       Flag 24: <Not Used>

       Flag 25: <Not Used>
       Flag 26: <Not Used>
       Flag 27: <Not Used>
       Flag 28: <Not Used>

       Flag 29: <Not Used>
       Flag 30: <Not Used>
       Flag 31: <Not Used>
       Flag 32: <Not Used>"
   ::= { upsOutletGroupStatusEntry 6 }

-- the upsOutletGroupConfig group

upsOutletGroupConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlet groups for the UPS."
   ::= { upsOutletGroupConfig 1 }

upsOutletGroupConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsOutletGroupConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The list of outlet groups to configure. The number of entries
       is defined by the upsOutletGroupConfigTableSize OID."
   ::= { upsOutletGroupConfig 2  }

upsOutletGroupConfigEntry OBJECT-TYPE
   SYNTAX UpsOutletGroupConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet groups to configure."
   INDEX  { upsOutletGroupConfigIndex}
   ::= { upsOutletGroupConfigTable 1 }

UpsOutletGroupConfigEntry ::=
   SEQUENCE {
      upsOutletGroupConfigIndex                           INTEGER,
      upsOutletGroupConfigName                            DisplayString,
      upsOutletGroupConfigPowerOnDelay                    INTEGER,
      upsOutletGroupConfigPowerOffDelay                   INTEGER,
      upsOutletGroupConfigRebootDuration                  INTEGER,
      upsOutletGroupConfigMinReturnRuntime                INTEGER,
      upsOutletGroupConfigOutletType                      INTEGER,
      upsOutletGroupConfigLoadShedControlSkipOffDelay     INTEGER,
      upsOutletGroupConfigLoadShedControlAutoRestart      INTEGER,
      upsOutletGroupConfigLoadShedControlTimeOnBattery    INTEGER,
      upsOutletGroupConfigLoadShedControlRuntimeRemaining INTEGER,
      upsOutletGroupConfigLoadShedControlInOverload       INTEGER,
      upsOutletGroupConfigLoadShedTimeOnBattery           INTEGER,
      upsOutletGroupConfigLoadShedRuntimeRemaining        INTEGER
   }

upsOutletGroupConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet group entry."
   ::= { upsOutletGroupConfigEntry 1 }

upsOutletGroupConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The name of the outlet group."
   ::= { upsOutletGroupConfigEntry 2 }

upsOutletGroupConfigPowerOnDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (seconds) the outlet group will delay
       powering on when the delayed on, reboot, or shutdown command is
       applied. Allowed values vary by UPS model. The value of -1 is
       used for Never if supported by the UPS and the outlet group."
   ::= { upsOutletGroupConfigEntry 3 }

upsOutletGroupConfigPowerOffDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (seconds) the outlet group will delay
       powering off when the delayed off, reboot, or shutdown command is
       applied. Allowed values vary by UPS model. The value of -1 is
       used for Never if supported by the UPS and the outlet group."
   ::= { upsOutletGroupConfigEntry 4 }

upsOutletGroupConfigRebootDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "During a reboot sequence, power is turned off and then
       back on. This OID defines the amount of time to wait
       (seconds) after turning the power off, at the start
       of the sequence, before initiating the power on sequence.
       Allowed values vary by UPS model."
   ::= { upsOutletGroupConfigEntry 5 }

upsOutletGroupConfigMinReturnRuntime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "In an Outlet Group shutdown sequence, the Outlet Group cycles
       power off then on. This OID defines the minimum amount of UPS
       runtime (seconds) that is required in order to power the
       Outlet Group on. Allowed values vary by UPS model."
   ::= { upsOutletGroupConfigEntry 6 }

upsOutletGroupConfigOutletType OBJECT-TYPE
   SYNTAX INTEGER {
        upsSwitchedOutletGroup (1),
        upsMainOutletGroup     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the type of outlet group.
       If present in the system, the main outlet group is
       'unswitched' and must be on in order for any of the switched
       outlet groups to be on. Conversely, if the main outlet group
       is off, all the switched outlet groups must also be off.
       Therefore, any commands made to the main outlet group that
       turn it off will also be applied to all switched outlet
       groups that are on, unless the state of a switched outlet
       group prevents it, in which case the command will fail."
   ::= { upsOutletGroupConfigEntry 7 }

upsOutletGroupConfigLoadShedControlSkipOffDelay OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupConfigSkipOffDelay (1),
        upsOutletGroupConfigUseOffDelay  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures whether the outlet group's off delay setting
       (upsOutletGroupConfigPowerOffDelay) will be used in a load
       shedding situation, where applicable."
   ::= { upsOutletGroupConfigEntry 8 }

upsOutletGroupConfigLoadShedControlAutoRestart OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupConfigAutoRestart   (1),
        upsOutletGroupConfigManualRestart (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures whether the outlet group will automatically restart
       after a load shedding situation, where applicable."
   ::= { upsOutletGroupConfigEntry 9 }

upsOutletGroupConfigLoadShedControlTimeOnBattery OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupConfigDisableTimeOnBatteryLoadShed (1),
        upsOutletGroupConfigEnableTimeOnBatteryLoadShed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures whether the outlet group will load shed (turn off)
       after the UPS's time on battery has exceeded the
       upsOutletGroupConfigLoadShedTimeOnBattery OID setting. The
       settings for upsOutletGroupConfigLoadShedControlSkipOffDelay
       and upsOutletGroupConfigLoadShedControlAutoRestart are valid
       for this load shed condition."
   ::= { upsOutletGroupConfigEntry 10 }

upsOutletGroupConfigLoadShedControlRuntimeRemaining OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupConfigDisableRuntimeRemainingLoadShed (1),
        upsOutletGroupConfigEnableRuntimeRemainingLoadShed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures whether the outlet group will load shed (turn off)
       when the UPS is on battery and the remaining runtime is less
       than the upsOutletGroupConfigLoadShedRuntimeRemaining OID
       setting. The settings for
       upsOutletGroupConfigLoadShedControlSkipOffDelay and
       upsOutletGroupConfigLoadShedControlAutoRestart are valid for
       this load shed condition."
   ::= { upsOutletGroupConfigEntry 11 }

upsOutletGroupConfigLoadShedControlInOverload OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupConfigDisableInOverloadLoadShed (1),
        upsOutletGroupConfigEnableInOverloadLoadShed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Configures whether the outlet group will load shed (turn off)
       when the UPS is in an overload condition. The setting for
       upsOutletGroupConfigLoadShedControlSkipOffDelay is valid for
       this load shed condition. Returns -1 if not supported by this
       outlet group."
   ::= { upsOutletGroupConfigEntry 12 }

upsOutletGroupConfigLoadShedTimeOnBattery OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When the UPS has been on battery for more time than this
       value, the outlet group will turn off if this condition is
       enabled by the upsOutletGroupConfigLoadShedControlTimeOnBattery
       OID. Allowed values vary by UPS model."
   ::= { upsOutletGroupConfigEntry 13 }

upsOutletGroupConfigLoadShedRuntimeRemaining OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When the runtime remaining is less than this value, the outlet
       group will turn off if this condition is enabled by the
       upsOutletGroupConfigLoadShedControlRuntimeRemaining OID.
       Allowed values vary by UPS model."
   ::= { upsOutletGroupConfigEntry 14 }

-- the upsOutletGroupControl group

upsOutletGroupControlTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlet groups for the UPS."
   ::= { upsOutletGroupControl 1 }

upsOutletGroupControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsOutletGroupControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual outlet groups. The number of
       entries is contained in the upsOutletGroupControlTableSize OID."
   ::= { upsOutletGroupControl 2 }

upsOutletGroupControlEntry OBJECT-TYPE
   SYNTAX UpsOutletGroupControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet group to control."
   INDEX  { upsOutletGroupControlIndex}
   ::= { upsOutletGroupControlTable 1 }

UpsOutletGroupControlEntry ::=
   SEQUENCE {
      upsOutletGroupControlIndex      INTEGER,
      upsOutletGroupControlName       DisplayString,
      upsOutletGroupControlCommand    INTEGER,
      upsOutletGroupControlOutletType INTEGER
   }

upsOutletGroupControlIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet group entry."
   ::= { upsOutletGroupControlEntry 1 }

upsOutletGroupControlName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the outlet group. This OID is provided
       for informational purposes only. This value is set
       by the upsOutletGroupConfigName OID."
   ::= { upsOutletGroupControlEntry  2 }

upsOutletGroupControlCommand OBJECT-TYPE
   SYNTAX INTEGER {
        upsOutletGroupImmediateOn                    (1),
        upsOutletGroupImmediateOff                   (2),
        upsOutletGroupImmediateRebootWithOrWithoutAC (3),
        upsOutletGroupDelayedOn                      (4),
        upsOutletGroupDelayedOff                     (5),
        upsOutletGroupDelayedRebootWithOrWithoutAC   (6),
        upsOutletGroupCancelPendingCommand           (7),
        upsOutletGroupControlUnknown                 (8),
        upsOutletGroupImmediateRebootShutdown        (9),
        upsOutletGroupDelayedRebootShutdown          (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the outlet group state. If the outlet
       group is on, the upsOutletGroupImmediateOn (1) value will be returned. If
       the outlet group is off, the upsOutletGroupImmediateOff (2) value will be
       returned.

       If the state of the outlet group cannot be determined, the
       upsOutletGroupControlUnknown (8) value will be returned.

       Setting this variable to upsOutletGroupImmediateOn (1) will turn the
       outlet group on immediately.

       Setting this variable to upsOutletGroupImmediateOff (2) will turn the
       outlet group off immediately.

       Setting this variable to upsOutletGroupImmediateRebootWithOrWithoutAC (3)
       will turn the outlet group off immediately, wait the
       upsOutletGroupConfigRebootDuration OID time, wait the
       upsOutletGroupConfigPowerOnDelay OID, and then turn the outlet group on
       regardless of the AC input power on the UPS.

       Setting this variable to upsOutletGroupDelayedOn (4) will turn the outlet
       group on after the upsOutletGroupConfigPowerOnDelay OID has elapsed.

       Setting this variable to upsOutletGroupDelayedOff (5) will turn the outlet
       group off after the upsOutletGroupConfigPowerOffDelay OID has elapsed.

       Setting this variable to upsOutletGroupDelayedRebootWithOrWithoutAC (6)
       will turn the outlet group off after the upsOutletGroupConfigPowerOffDelay
       OID has elapsed, wait the upsOutletGroupConfigRebootDuration OID time, wait
       the upsOutletGroupConfigPowerOnDelay OID, and then turn the outlet group
       on regardless of the AC input power on the UPS.

       Setting this variable to upsOutletGroupCancelPendingCommand (7) will
       cause any pending command to this outlet group to be canceled.

       Setting this variable to upsOutletGroupImmediateRebootShutdown (9) will
       turn the outlet group off immediately, wait for the AC power to return to normal
       (a minimum of the upsOutletGroupConfigRebootDuration OID time), wait the
       upsOutletGroupConfigPowerOnDelay OID time, and then turn the outlet
       group on.

       Setting this variable to upsOutletGroupDelayedRebootShutdown (10) will
       turn the outlet group off after the upsOutletGroupConfigPowerOffDelay OID
       has elapsed, wait for the AC power to return to normal (a minimum of the
       upsOutletGroupConfigRebootDuration OID time), wait the
       upsOutletGroupConfigPowerOnDelay OID time, and then turn the outlet
       group on.

       In systems with a main outlet group, commands to the main outlet group must
       be performed with caution. It may be clearer to use the ups control commands
       available from upsAdvControl... OIDs. If any command is made to the main
       outlet group that will turn it off, one of two things will happen:
       1) If any switched outlet group is in a state that prevents this command
       from occurring on the main outlet group, the command will be rejected. Note
       that a switched outlet group being on without a command in progress is not a
       state that normally prevents the command.
       2) The command will be accepted and applied to the main outlet group and all
       switched outlet groups that are on.

       There is one additional special case for systems with a main outlet group.
       If the main outlet group is off and a switched outlet group is commanded to
       turn on, the on command will be applied to both the main outlet group and
       that switched outlet group."
   ::= { upsOutletGroupControlEntry 3 }

upsOutletGroupControlOutletType OBJECT-TYPE
   SYNTAX INTEGER {
        upsSwitchedOutletGroup (1),
        upsMainOutletGroup     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the type of outlet group.
       If present in the system, the main outlet group is
       'unswitched' and must be on in order for any of the switched
       outlet groups to be on. Conversely, if the main outlet group
       is off, all the switched outlet groups must also be off.
       Therefore, any commands made to the main outlet group that
       turn it off will also be applied to all switched outlet
       groups that are on, unless the state of a switched outlet
       group prevents it, in which case the command will fail."
   ::= { upsOutletGroupControlEntry 4 }

-- the upsDiagnosticIM group

upsDiagIMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Intelligence Modules in or attached to the UPS."
   ::= { upsDiagnosticIM 1 }

upsDiagIMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagIMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Intelligence Modules. The number of
       entries is contained in the upsDiagIMTableSize OID."
   ::= { upsDiagnosticIM 2 }

upsDiagIMEntry OBJECT-TYPE
   SYNTAX UpsDiagIMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics and information of an Intelligence Module."
   INDEX  { upsDiagIMIndex}
   ::= { upsDiagIMTable 1 }

UpsDiagIMEntry ::=
   SEQUENCE {
      upsDiagIMIndex             INTEGER,
      upsDiagIMType              INTEGER,
      upsDiagIMStatus            INTEGER,
      upsDiagIMFirmwareRev       DisplayString,
      upsDiagIMSlaveFirmwareRev  DisplayString,
      upsDiagIMHardwareRev       DisplayString,
      upsDiagIMSerialNum         DisplayString,
      upsDiagIMManufactureDate   DisplayString,
      upsDiagIMInControl         INTEGER
   }

upsDiagIMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Intelligence Module entry."
   ::= { upsDiagIMEntry 1 }

upsDiagIMType OBJECT-TYPE
   SYNTAX INTEGER {
     imUnknown    (1),
     imMIM        (2),
     imRIM        (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of the Intelligence Module.
       imUnknown(1) indicates the IM type is unknown.
       imMIM(2) indicates the IM type is a Main Intelligence Module.
       imRIM(3) indicates the IM type is Redundant Intelligence Module."
   ::= { upsDiagIMEntry  2 }

upsDiagIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Intelligence Module.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagIMEntry  3 }

upsDiagIMFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Intelligence Module."
   ::= { upsDiagIMEntry  4 }

upsDiagIMSlaveFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The slave firmware revision of the Intelligence Module."
   ::= { upsDiagIMEntry  5 }

upsDiagIMHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Intelligence Module."
   ::= { upsDiagIMEntry  6 }

upsDiagIMSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Intelligence Module."
   ::= { upsDiagIMEntry  7 }

upsDiagIMManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The manufacture date of the Intelligence Module."
   ::= { upsDiagIMEntry  8 }
upsDiagIMInControl OBJECT-TYPE
   SYNTAX INTEGER {
     activeInControl  (1),
     passive          (2),
     unknown          (3),
     fault            (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Intelligence Module state.
       activeInControl(1) indicates the IM is active and in control.
       passive(2) indicates the IM is in passive state.
       unknown(3) indicates the IM is in unknown state.
       fault(4) indicates the IM is in fault state."
   ::= { upsDiagIMEntry  9 }

-- the upsDiagnosticPowerModules group

upsDiagPMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum number of Power Modules supported by the UPS."
   ::= { upsDiagnosticPowerModules 1 }

upsDiagPMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagPMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of Individual Power modules. The number of
       entries is contained in the upsDiagPMTableSize OID."
   ::= { upsDiagnosticPowerModules 2 }

upsDiagPMEntry OBJECT-TYPE
   SYNTAX UpsDiagPMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an Power Module."
   INDEX  { upsDiagPMIndex}
   ::= { upsDiagPMTable 1 }

UpsDiagPMEntry ::=
   SEQUENCE {
      upsDiagPMIndex           INTEGER,
      upsDiagPMStatus          INTEGER,
      upsDiagPMFirmwareRev     DisplayString,
      upsDiagPMHardwareRev     DisplayString,
      upsDiagPMSerialNum       DisplayString,
      upsDiagPMManufactureDate DisplayString,
      upsDiagPMModelNum        DisplayString
   }

upsDiagPMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Power Module entry."
   ::= { upsDiagPMEntry 1 }

upsDiagPMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Power Module.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagPMEntry  2 }

upsDiagPMFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Power Module."
   ::= { upsDiagPMEntry  3 }

upsDiagPMHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Power Module."
   ::= { upsDiagPMEntry  4 }

upsDiagPMSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Power Module."
   ::= { upsDiagPMEntry  5 }

upsDiagPMManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The manufacture date of the Power Module."
   ::= { upsDiagPMEntry  6 }

upsDiagPMModelNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The model number of the Power Module."
   ::= { upsDiagPMEntry  7 }

upsDiagPMLifetimeInfoTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagPMLifetimeInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual power module's lifetime information.
      The number of entries is contained in the upsDiagPMTableSize OID."
   ::= { upsDiagnosticPowerModules 3 }

upsDiagPMLifetimeInfoEntry OBJECT-TYPE
   SYNTAX UpsDiagPMLifetimeInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a Power Module lifetime information."
        INDEX  { upsDiagPMLifetimeInfoIndex}
   ::= { upsDiagPMLifetimeInfoTable 1 }

UpsDiagPMLifetimeInfoEntry ::=
   SEQUENCE {
      upsDiagPMLifetimeInfoIndex          INTEGER,
      upsDiagPMLifetimeStatus             INTEGER,
      upsDiagPMEstmtdLifetimeRmng         INTEGER,
      upsDiagPMEstmtdLifetimeRmngPct      INTEGER,
      upsDiagPMFanLifetimeStatus          INTEGER,
      upsDiagPMFanEstmtdLifetimeRmng      INTEGER,
      upsDiagPMFanEstmtdLifetimeRmngPct   INTEGER

   }

upsDiagPMLifetimeInfoIndex  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Power Module lifetime information entry."
   ::= { upsDiagPMLifetimeInfoEntry 1 }

upsDiagPMLifetimeStatus OBJECT-TYPE
   SYNTAX INTEGER {
     ok         (1),
     nearEnd    (2),
     exceeded   (3),
     unknown    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Power Module lifetime information.
       ok(1) indicates the device lifetime status is OK.
       nearEnd(2) indicates the device lifetime status is near end.
       exceeded(3) indicates the device lifetime status is exceeded.
       unknown(4) indicates the device lifetime status is unknown."

   ::= { upsDiagPMLifetimeInfoEntry 2 }

upsDiagPMEstmtdLifetimeRmng  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Displays the time remaining for the module before it should be replaced.
         Measured in months. This value is set when you originally install the module."
   ::= { upsDiagPMLifetimeInfoEntry 3 }

upsDiagPMEstmtdLifetimeRmngPct  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Displays the percentage of the total lifetime remaining for the module
         before it should be replaced."
   ::= { upsDiagPMLifetimeInfoEntry 4 }

upsDiagPMFanLifetimeStatus OBJECT-TYPE
   SYNTAX INTEGER {
     ok         (1),
     nearEnd    (2),
     exceeded   (3),
     unknown    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Power Module Fan lifetime information.
       ok(1) indicates the device lifetime status is OK.
       nearEnd(2) indicates the device lifetime status is near end.
       exceeded(3) indicates the device lifetime status is exceeded.
       unknown(4) indicates the device lifetime status is unknown."
   ::= { upsDiagPMLifetimeInfoEntry 5 }

upsDiagPMFanEstmtdLifetimeRmng OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Displays the time remaining, measured in months, before the module's
       fan should be replaced. It is reset by the field service engineer when
       a new fan is installed."
   ::= { upsDiagPMLifetimeInfoEntry 6 }

upsDiagPMFanEstmtdLifetimeRmngPct OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Displays the percentage of the total lifetime remaining
       before the module's fan should be replaced."
   ::= { upsDiagPMLifetimeInfoEntry 7 }

upsDiagPMEnclDoorFltrTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum number of power module enclosures attached to the UPS."
   ::= { upsDiagnosticPowerModules 4 }

upsDiagPMEnclDoorFltrTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagPMEnclDoorFltrEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the diagnostics of individual power module enclosure door filters.
       The number of entries is contained in the upsDiagPMEnclDoorFltrTableSize OID."
   ::= { upsDiagnosticPowerModules 5 }

upsDiagPMEnclDoorFltrEntry OBJECT-TYPE
   SYNTAX UpsDiagPMEnclDoorFltrEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Power module door filter diagnostics info."
   INDEX  { upsDiagPMEnclIndex}
   ::= { upsDiagPMEnclDoorFltrTable 1 }

UpsDiagPMEnclDoorFltrEntry ::=
   SEQUENCE {
      upsDiagPMEnclIndex                         INTEGER,
      upsDiagPMEnclDoorFltrLifetime              INTEGER,
      upsDiagPMEnclDoorFltrStatus                INTEGER,
      upsDiagPMEnclDoorFltrEstmtdLifetimeRmng    INTEGER,
      upsDiagPMEnclDoorFltrEstmtdLifetimeRmngPct INTEGER
   }
upsDiagPMEnclIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the power module enclosure entry.
       Enclosure 0 indicates the Power enclosure 1.
       Enclosure 1 indicates the Power enclosure 2."
   ::= { upsDiagPMEnclDoorFltrEntry 1 }

upsDiagPMEnclDoorFltrLifetime OBJECT-TYPE
   SYNTAX INTEGER {
     heavyFiltration15days (1),
     normalFiltration30days(2),
     lightFiltration60days (3),
     notPresent            (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Door filter replacement time interval, based on the installation enivironment.
        heavyFiltration15days (1) indicates door filter needs to be replaced within 15 days.
        normalFiltration30days (2) indicates door filter needs to be replaced within 30 days.
        lightFiltration60days (3) indicates door filter needs to be replaced within 60 days.
        notPresent(4) indicates that the door filter is not present."
   ::= { upsDiagPMEnclDoorFltrEntry 2 }

upsDiagPMEnclDoorFltrStatus OBJECT-TYPE
   SYNTAX INTEGER {
     ok         (1),
     nearEnd    (2),
     exceeded   (3),
     unknown    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the current status of the door filter.
       ok(1) indicates the device lifetime status is OK.
       nearEnd(2) indicates the device lifetime status is near end.
       exceeded(3) indicates the device lifetime status is exceeded.
       unknown(4) indicates the device lifetime status is unknown."
   ::= { upsDiagPMEnclDoorFltrEntry 3 }

upsDiagPMEnclDoorFltrEstmtdLifetimeRmng OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Displays the time remaining, measured in days, before the module door filter should be replaced.
       This value is set when you originally install the module."
   ::= { upsDiagPMEnclDoorFltrEntry 4 }

upsDiagPMEnclDoorFltrEstmtdLifetimeRmngPct OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Displays the percentage of the total lifetime remaining for the module
        door filter before it should be replaced."
   ::= { upsDiagPMEnclDoorFltrEntry 5 }



-- the upsDiagnosticBatteries group

upsDiagBatteryTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum number of batteries supported by the UPS."
   ::= { upsDiagnosticBatteries 1 }

upsDiagBatteryTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagBatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual batteries. The number of
       entries is contained in the upsDiagBattTableSize OID."
   ::= { upsDiagnosticBatteries 2 }

upsDiagBatteryEntry OBJECT-TYPE
   SYNTAX UpsDiagBatteryEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a battery."
   INDEX  { upsDiagBatteryIndex}
   ::= { upsDiagBatteryTable 1 }

UpsDiagBatteryEntry ::=
   SEQUENCE {
      upsDiagBatteryFrameIndex      INTEGER,
      upsDiagBatteryIndex           INTEGER,
      upsDiagBatteryStatus          INTEGER,
      upsDiagBatterySerialNumber    DisplayString,
      upsDiagBatteryFirmwareRev     DisplayString,
      upsDiagBatteryManufactureDate DisplayString,
      upsDiagBatteryType             DisplayString,
      upsDiagBatteryFramePresent     INTEGER,
      upsDiagBatteryFrameTemperature INTEGER
   }

upsDiagBatteryFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the battery frame entry.
       Frame 0 indicates the Main frame. Extended Run (XR) frames
       start from index 1."
   ::= { upsDiagBatteryEntry 1 }

upsDiagBatteryIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the battery entry."
   ::= { upsDiagBatteryEntry 2 }

upsDiagBatteryStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown            (1),
     notInstalled       (2),
     ok                 (3),
     failed             (4),
     highTemperature    (5),
     replaceImmediately (6),
     lowCapacity        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the battery.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the battery status is OK.
       failed(4) indicates the battery status is failed.
       highTemperature(5) indicates the battery has a high temperature condition.
       replaceImmediately(6) indicates the battery must be replaced immediately.
       lowCapacity(7) indicates the battery has a low capacity."
   ::= { upsDiagBatteryEntry  3 }

upsDiagBatterySerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the battery."
   ::= { upsDiagBatteryEntry  4 }

upsDiagBatteryFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the battery."
   ::= { upsDiagBatteryEntry  5 }

upsDiagBatteryManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The manufacture date of the battery."
   ::= { upsDiagBatteryEntry  6 }

upsDiagBatteryType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The battery type or rating for the battery."
   ::= { upsDiagBatteryEntry  7 }


 upsDiagBatteryFramePresent OBJECT-TYPE
       SYNTAX     INTEGER {
         notPresent(0),
         present(1)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery frame/cabinet status.
                0 indicates frame/cabinet is not present.
                1 indicates frame/cabinet is present."
       ::= { upsDiagBatteryEntry 8 }

   upsDiagBatteryFrameTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery frame/cabinet temperature in tenths of degrees celsius.
                If the frame/cabinet is not present, this variable is set to (-1)."
       ::= { upsDiagBatteryEntry 9 }

upsDiagBatteryFrameTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum number of battery frames supported by the UPS."
   ::= { upsDiagnosticBatteries 3 }

upsDiagBatteryFrameTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagBatteryFrameEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual battery frame. The number of
       entries is contained in the upsDiagBatteryFrameTableSize OID."
   ::= { upsDiagnosticBatteries 4 }

upsDiagBatteryFrameEntry OBJECT-TYPE
   SYNTAX UpsDiagBatteryFrameEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a battery frame."
   INDEX  { upsDiagBatteryFrameTableIndex}
   ::= { upsDiagBatteryFrameTable 1 }

UpsDiagBatteryFrameEntry ::=
   SEQUENCE {
      upsDiagBatteryFrameTableIndex        INTEGER,
      upsDiagBatteryModuleStatusPerFrame   DisplayString,
      upsDiagBatteryPositiveVoltage        INTEGER,
      upsDiagBatteryNegativeVoltage        INTEGER,
      upsDiagBatteryTemperature            INTEGER

   }

upsDiagBatteryFrameTableIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the battery frame entry."
   ::= { upsDiagBatteryFrameEntry 1 }

upsDiagBatteryModuleStatusPerFrame OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
     "An ASCII string containing the 64 flags representing
     the status of battery modules. 1 indicates battery module installed,
     0 indicates battery module not installed.

     The flags are numbered from 1 to 64, and read from left
     to right. The flags are defined as follows:

     Flag  1: Battery Module Level 1 A
     Flag  2: Battery Module Level 1 B
     Flag  3: Battery Module Level 1 C
     Flag  4: Battery Module Level 1 D
     Flag  5: Battery Module Level 1 E
     Flag  6: Battery Module Level 1 F

     Flag  7: Battery Module Level 2 A
     Flag  8: Battery Module Level 2 B
     Flag  9: Battery Module Level 2 C
     Flag 10: Battery Module Level 2 D
     Flag 11: Battery Module Level 2 E
     Flag 12: Battery Module Level 2 F

     Flag 13: Battery Module Level 3 A
     Flag 14: Battery Module Level 3 B
     Flag 15: Battery Module Level 3 C
     Flag 16: Battery Module Level 3 D
     Flag 17: Battery Module Level 3 E
     Flag 18: Battery Module Level 3 F

     Flag 19: Battery Module Level 4 A
     Flag 20: Battery Module Level 4 B
     Flag 21: Battery Module Level 4 C
     Flag 22: Battery Module Level 4 D
     Flag 23: Battery Module Level 4 E
     Flag 24: Battery Module Level 4 F

     Flag 25: Battery Module Level 7 A
     Flag 26: Battery Module Level 7 B
     Flag 27: Battery Module Level 7 C
     Flag 28: Battery Module Level 7 D
     Flag 29: Battery Module Level 7 E
     Flag 30: Battery Module Level 7 F

     Flag 31: Battery Module Level 8 A
     Flag 32: Battery Module Level 8 B
     Flag 33: Battery Module Level 8 C
     Flag 34: Battery Module Level 8 D
     Flag 35: Battery Module Level 8 E
     Flag 36: Battery Module Level 8 F

     Flag 37: Battery Module Level 9 A
     Flag 38: Battery Module Level 9 B
     Flag 39: Battery Module Level 9 C
     Flag 40: Battery Module Level 9 D
     Flag 41: Battery Module Level 9 E
     Flag 42: Battery Module Level 9 F

     Flag 43: Battery Module Level 10 A
     Flag 44: Battery Module Level 10 B
     Flag 45: Battery Module Level 10 C
     Flag 46: Battery Module Level 10 D
     Flag 47: Battery Module Level 10 E
     Flag 48: Battery Module Level 10 F

     Flag 49: <Not Used>
     Flag 50: <Not Used>
     Flag 51: <Not Used>
     Flag 52: <Not Used>
     Flag 53: <Not Used>
     Flag 54: <Not Used>

     Flag 55: <Not Used>
     Flag 56: <Not Used>
     Flag 57: <Not Used>
     Flag 58: <Not Used>
     Flag 59: <Not Used>
     Flag 60: <Not Used>

     Flag 61: <Not Used>
     Flag 62: <Not Used>
     Flag 63: <Not Used>
     Flag 64: <Not Used>"
   ::= { upsDiagBatteryFrameEntry  2 }

upsDiagBatteryPositiveVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
        "The battery positive voltage, in Volts."
        ::= { upsDiagBatteryFrameEntry 3 }

upsDiagBatteryNegativeVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
        "The battery negative voltage, in Volts."
        ::= { upsDiagBatteryFrameEntry 4 }

upsDiagBatteryTemperature OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The battery frame/cabinet temperature in tenths of degrees celsius.
                If the frame/cabinet is not present, this variable is set to (-1)."
       ::= { upsDiagBatteryFrameEntry 5 }


-- the upsDiagnosticSubsystem group

upsDiagSubSysFrameTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of frames attached to the UPS including the Main frame."
   ::= { upsDiagnosticSubsystem 1 }

upsDiagSubSysFrameTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysFrameEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual XR Frames."
   ::= { upsDiagnosticSubsystem 2 }

upsDiagSubSysFrameEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysFrameEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an XR Frame."
   INDEX  { upsDiagSubSysFrameIndex}
   ::= { upsDiagSubSysFrameTable 1 }

UpsDiagSubSysFrameEntry ::=
   SEQUENCE {
      upsDiagSubSysFrameIndex                 INTEGER,
      upsDiagSubSysFrameType                  INTEGER,
      upsDiagSubSysFrameFirmwareRev           DisplayString,
      upsDiagSubSysFrameHardwareRev           DisplayString,
      upsDiagSubSysFrameSerialNum             DisplayString,
      upsDiagSubSysFrameManufactureDate       DisplayString
   }

upsDiagSubSysFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysFrameEntry 1 }

upsDiagSubSysFrameType OBJECT-TYPE
   SYNTAX INTEGER {
     unknown            (1),
     notInstalled       (2),
     frameTypeMain      (3),
     frameTypeXR        (4),
     frameTypeLXR       (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of Frame.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       frameTypeMain(3) indicates the frame type is the Main Frame.
       frameTypeXR(4) indicates the frame type is an XR Frame.
       frameTypeLXR(5) indicates the frame type is an LXR Frame."
   ::= { upsDiagSubSysFrameEntry 2 }

upsDiagSubSysFrameFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the frame."
   ::= { upsDiagSubSysFrameEntry 3 }

upsDiagSubSysFrameHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the frame."
   ::= { upsDiagSubSysFrameEntry 4 }

upsDiagSubSysFrameSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the frame."
   ::= { upsDiagSubSysFrameEntry 5 }

upsDiagSubSysFrameManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The manufacture date of the frame."
   ::= { upsDiagSubSysFrameEntry 6 }

upsDiagSubSysIntBypSwitchTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Internal Bypass switches attached to the UPS."
   ::= { upsDiagnosticSubsystem 3 }

upsDiagSubSysIntBypSwitchTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysIntBypSwitchEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the Internal Bypass Switch."
   ::= { upsDiagnosticSubsystem 4 }

upsDiagSubSysIntBypSwitchEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysIntBypSwitchEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of the Internal Bypass Switch."
   INDEX  { upsDiagSubSysIntBypSwitchIndex}
   ::= { upsDiagSubSysIntBypSwitchTable 1 }

UpsDiagSubSysIntBypSwitchEntry ::=
   SEQUENCE {
      upsDiagSubSysIntBypSwitchFrameIndex            INTEGER,
      upsDiagSubSysIntBypSwitchIndex                 INTEGER,
      upsDiagSubSysIntBypSwitchStatus                INTEGER,
      upsDiagSubSysIntBypSwitchFirmwareRev           DisplayString,
      upsDiagSubSysIntBypSwitchHardwareRev           DisplayString,
      upsDiagSubSysIntBypSwitchSerialNum             DisplayString,
      upsDiagSubSysIntBypSwitchManufactureDate       DisplayString,
      upsDiagSubSysIntBypSwitchModelNum              DisplayString
   }

upsDiagSubSysIntBypSwitchFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysIntBypSwitchEntry 1 }

upsDiagSubSysIntBypSwitchIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Internal Bypass Switch index entry."
   ::= { upsDiagSubSysIntBypSwitchEntry 2 }

upsDiagSubSysIntBypSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Internal Bypass Switch status.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysIntBypSwitchEntry 3 }

upsDiagSubSysIntBypSwitchFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Internal Bypass Switch."
   ::= { upsDiagSubSysIntBypSwitchEntry 4 }

upsDiagSubSysIntBypSwitchHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Internal Bypass Switch."
   ::= { upsDiagSubSysIntBypSwitchEntry 5 }

upsDiagSubSysIntBypSwitchSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Internal Bypass Switch."
   ::= { upsDiagSubSysIntBypSwitchEntry 6 }

upsDiagSubSysIntBypSwitchManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The manufacture date of the Internal Bypass Switch."
   ::= { upsDiagSubSysIntBypSwitchEntry 7 }

 upsDiagSubSysIntBypSwitchModelNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The model number of the Internal Bypass Switch."
   ::= { upsDiagSubSysIntBypSwitchEntry  8 }

upsDiagSubSysBattMonitorTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Battery Monitor Boards attached to the UPS."
   ::= { upsDiagnosticSubsystem 5 }

upsDiagSubSysBattMonitorTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysBattMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the Battery Monitor Board."
   ::= { upsDiagnosticSubsystem 6 }

upsDiagSubSysBattMonitorEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysBattMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of the Battery Monitor Board."
   INDEX  { upsDiagSubSysBattMonitorIndex}
   ::= { upsDiagSubSysBattMonitorTable 1 }

UpsDiagSubSysBattMonitorEntry ::=
   SEQUENCE {
      upsDiagSubSysBattMonitorFrameIndex            INTEGER,
      upsDiagSubSysBattMonitorIndex                 INTEGER,
      upsDiagSubSysBattMonitorStatus                INTEGER,
      upsDiagSubSysBattMonitorFirmwareRev           DisplayString,
      upsDiagSubSysBattMonitorHardwareRev           DisplayString,
      upsDiagSubSysBattMonitorSerialNum             DisplayString,
      upsDiagSubSysBattMonitorManufactureDate       DisplayString
   }

upsDiagSubSysBattMonitorFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysBattMonitorEntry 1 }

upsDiagSubSysBattMonitorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the Battery Monitor Board."
   ::= { upsDiagSubSysBattMonitorEntry 2 }

upsDiagSubSysBattMonitorStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Battery Monitor Board.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysBattMonitorEntry 3 }

upsDiagSubSysBattMonitorFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Battery Monitor Board."
   ::= { upsDiagSubSysBattMonitorEntry 4 }

upsDiagSubSysBattMonitorHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Battery Monitor Board."
   ::= { upsDiagSubSysBattMonitorEntry 5 }

upsDiagSubSysBattMonitorSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Battery Monitor Board."
   ::= { upsDiagSubSysBattMonitorEntry 6 }

upsDiagSubSysBattMonitorManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the manufacture for the Battery Monitor Board."
   ::= { upsDiagSubSysBattMonitorEntry  7 }

upsDiagSubSysExternalSwitchGearTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of External Switch Gears attached to the UPS."
   ::= { upsDiagnosticSubsystem 7 }

upsDiagSubSysExternalSwitchGearTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysExternalSwitchGearEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the individual External Switch Gear."
   ::= { upsDiagnosticSubsystem 8 }

upsDiagSubSysExternalSwitchGearEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysExternalSwitchGearEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an individual External Switch Gear."
   INDEX  { upsDiagSubSysExternalSwitchGearIndex}
   ::= { upsDiagSubSysExternalSwitchGearTable 1 }

UpsDiagSubSysExternalSwitchGearEntry ::=
   SEQUENCE {
      upsDiagSubSysExternalSwitchGearFrameIndex            INTEGER,
      upsDiagSubSysExternalSwitchGearIndex                 INTEGER,
      upsDiagSubSysExternalSwitchGearStatus                INTEGER,
      upsDiagSubSysExternalSwitchGearFirmwareRev           DisplayString,
      upsDiagSubSysExternalSwitchGearHardwareRev           DisplayString,
      upsDiagSubSysExternalSwitchGearSerialNum             DisplayString,
      upsDiagSubSysExternalSwitchGearManufactureDate       DisplayString,
      upsDiagSubSysExternalSwitchGearTemperature           INTEGER

   }

upsDiagSubSysExternalSwitchGearFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysExternalSwitchGearEntry 1 }

upsDiagSubSysExternalSwitchGearIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the External Switch Gear."
   ::= { upsDiagSubSysExternalSwitchGearEntry 2 }

upsDiagSubSysExternalSwitchGearStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the External Switch Gear.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysExternalSwitchGearEntry 3 }

upsDiagSubSysExternalSwitchGearFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the External Switch Gear monitor card."
   ::= { upsDiagSubSysExternalSwitchGearEntry 4 }

upsDiagSubSysExternalSwitchGearHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the External Switch Gear monitor card."
   ::= { upsDiagSubSysExternalSwitchGearEntry 5 }

upsDiagSubSysExternalSwitchGearSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the External Switch Gear monitor card."
   ::= { upsDiagSubSysExternalSwitchGearEntry 6 }

upsDiagSubSysExternalSwitchGearManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the manufacture for the External Switch Gear monitor card."
   ::= { upsDiagSubSysExternalSwitchGearEntry  7 }

   upsDiagSubSysExternalSwitchGearTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION

      "The temperature of the air around the External Switch
       Gear monitor card in tenths of degrees Celsius."
   ::= { upsDiagSubSysExternalSwitchGearEntry 8 }

upsDiagSubSysDisplayInterfaceCardTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Display Interface Cards attached to the UPS."
   ::= { upsDiagnosticSubsystem 9 }

upsDiagSubSysDisplayInterfaceCardTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysDisplayInterfaceCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Display Interface Cards."
   ::= { upsDiagnosticSubsystem 10 }

upsDiagSubSysDisplayInterfaceCardEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysDisplayInterfaceCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a Display Interface Card."
   INDEX  { upsDiagSubSysDisplayInterfaceCardIndex}
   ::= { upsDiagSubSysDisplayInterfaceCardTable 1 }

UpsDiagSubSysDisplayInterfaceCardEntry ::=
   SEQUENCE {
      upsDiagSubSysDisplayInterfaceCardFrameIndex            INTEGER,
      upsDiagSubSysDisplayInterfaceCardIndex                 INTEGER,
      upsDiagSubSysDisplayInterfaceCardStatus                INTEGER
   }

upsDiagSubSysDisplayInterfaceCardFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysDisplayInterfaceCardEntry 1 }

upsDiagSubSysDisplayInterfaceCardIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the Display Interface Card."
   ::= { upsDiagSubSysDisplayInterfaceCardEntry 2 }

upsDiagSubSysDisplayInterfaceCardStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Display Interface Card.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysDisplayInterfaceCardEntry 3 }

upsDiagSubSysDCCircuitBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC Circuit Breakers attached to the UPS."
   ::= { upsDiagnosticSubsystem 11 }

upsDiagSubSysDCCircuitBreakerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysDCCircuitBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual DC Circuit Breakers."
   ::= { upsDiagnosticSubsystem 12 }

upsDiagSubSysDCCircuitBreakerEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysDCCircuitBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a DC Circuit Breaker."
   INDEX  { upsDiagSubSysDCCircuitBreakerIndex}
   ::= { upsDiagSubSysDCCircuitBreakerTable 1 }

UpsDiagSubSysDCCircuitBreakerEntry ::=
   SEQUENCE {
      upsDiagSubSysDCCircuitBreakerFrameIndex            INTEGER,
      upsDiagSubSysDCCircuitBreakerIndex                 INTEGER,
      upsDiagSubSysDCCircuitBreakerStatus                INTEGER
   }

upsDiagSubSysDCCircuitBreakerFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysDCCircuitBreakerEntry 1 }

upsDiagSubSysDCCircuitBreakerIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the DC Circuit Breaker."
   ::= { upsDiagSubSysDCCircuitBreakerEntry 2 }

upsDiagSubSysDCCircuitBreakerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the DC Circuit Breaker.
       unknown(1) indicates the circuit breaker status is unknown.
       notInstalled(2) indicates the circuit breaker is not installed.
       opened(3) indicates the circuit breaker is opened.
       closed(4) indicates the circuit breaker is closed."
   ::= { upsDiagSubSysDCCircuitBreakerEntry 3 }

upsDiagSubSysSystemPowerSupplyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of System Power Supplies attached to the UPS."
   ::= { upsDiagnosticSubsystem 13 }

upsDiagSubSysSystemPowerSupplyTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysSystemPowerSupplyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual System Power Supplies."
   ::= { upsDiagnosticSubsystem 14 }

upsDiagSubSysSystemPowerSupplyEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysSystemPowerSupplyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a System Power Supply."
   INDEX  { upsDiagSubSysSystemPowerSupplyIndex}
   ::= { upsDiagSubSysSystemPowerSupplyTable 1 }

UpsDiagSubSysSystemPowerSupplyEntry ::=
   SEQUENCE {
      upsDiagSubSysSystemPowerSupplyFrameIndex            INTEGER,
      upsDiagSubSysSystemPowerSupplyIndex                 INTEGER,
      upsDiagSubSysSystemPowerSupplyStatus                INTEGER,
      upsDiagSubSysSystemPowerSupplyFirmwareRev           DisplayString,
      upsDiagSubSysSystemPowerSupplyHardwareRev           DisplayString,
      upsDiagSubSysSystemPowerSupplySerialNum             DisplayString,
      upsDiagSubSysSystemPowerSupplyManufactureDate       DisplayString
   }

upsDiagSubSysSystemPowerSupplyFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 1 }

upsDiagSubSysSystemPowerSupplyIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of a System Power Supply."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 2 }

upsDiagSubSysSystemPowerSupplyStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the System Power Supply.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 3 }

upsDiagSubSysSystemPowerSupplyFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the System Power Supply monitor card."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 4 }

upsDiagSubSysSystemPowerSupplyHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the System Power Supply monitor card."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 5 }

upsDiagSubSysSystemPowerSupplySerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the System Power Supply monitor card."
   ::= { upsDiagSubSysSystemPowerSupplyEntry 6 }

upsDiagSubSysSystemPowerSupplyManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the manufacture for the System Power Supply monitor card."
   ::= { upsDiagSubSysSystemPowerSupplyEntry  7 }

upsDiagSubSysXRCommunicationCardTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of XR Communication Cards attached to the UPS."
   ::= { upsDiagnosticSubsystem 15 }

upsDiagSubSysXRCommunicationCardTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysXRCommunicationCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual XR Communication Cards."
   ::= { upsDiagnosticSubsystem 16 }

upsDiagSubSysXRCommunicationCardEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysXRCommunicationCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an XR Communication Card."
   INDEX  { upsDiagSubSysXRCommunicationCardIndex}
   ::= { upsDiagSubSysXRCommunicationCardTable 1 }

UpsDiagSubSysXRCommunicationCardEntry ::=
   SEQUENCE {
      upsDiagSubSysXRCommunicationCardFrameIndex            INTEGER,
      upsDiagSubSysXRCommunicationCardIndex                 INTEGER,
      upsDiagSubSysXRCommunicationCardStatus                INTEGER,
      upsDiagSubSysXRCommunicationCardFirmwareRev           DisplayString,
      upsDiagSubSysXRCommunicationCardSerialNum             DisplayString

   }

upsDiagSubSysXRCommunicationCardFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysXRCommunicationCardEntry 1 }

upsDiagSubSysXRCommunicationCardIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an XR Communication Card."
   ::= { upsDiagSubSysXRCommunicationCardEntry 2 }

upsDiagSubSysXRCommunicationCardStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the XR Communication Card.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysXRCommunicationCardEntry 3 }

upsDiagSubSysXRCommunicationCardFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the XR Communication card."
   ::= { upsDiagSubSysXRCommunicationCardEntry 4 }

upsDiagSubSysXRCommunicationCardSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the XR Communication card."
   ::= { upsDiagSubSysXRCommunicationCardEntry 5 }

upsDiagSubSysExternalPowerFrameBoardTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of External Power Frame Boards attached to the UPS."
   ::= { upsDiagnosticSubsystem 17 }

upsDiagSubSysExternalPowerFrameBoardTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysExternalPowerFrameBoardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual External Power Frame Boards."
   ::= { upsDiagnosticSubsystem 18 }

upsDiagSubSysExternalPowerFrameBoardEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysExternalPowerFrameBoardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an External Power Frame Board."
   INDEX  { upsDiagSubSysExternalPowerFrameBoardIndex}
   ::= { upsDiagSubSysExternalPowerFrameBoardTable 1 }

UpsDiagSubSysExternalPowerFrameBoardEntry ::=
   SEQUENCE {
      upsDiagSubSysExternalPowerFrameBoardFrameIndex            INTEGER,
      upsDiagSubSysExternalPowerFrameBoardIndex                 INTEGER,
      upsDiagSubSysExternalPowerFrameBoardStatus                INTEGER
   }

upsDiagSubSysExternalPowerFrameBoardFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysExternalPowerFrameBoardEntry 1 }

upsDiagSubSysExternalPowerFrameBoardIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an External Power Frame Board."
   ::= { upsDiagSubSysExternalPowerFrameBoardEntry 2 }

upsDiagSubSysExternalPowerFrameBoardStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the External Power Frame Board.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysExternalPowerFrameBoardEntry 3 }

upsDiagSubSysChargerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Chargers attached to the UPS."
   ::= { upsDiagnosticSubsystem 19 }

 upsDiagSubSysChargerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysChargerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual chargers."
   ::= { upsDiagnosticSubsystem 20 }

upsDiagSubSysChargerEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysChargerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a charger."
   INDEX  { upsDiagSubSysChargerIndex}
   ::= { upsDiagSubSysChargerTable 1 }

UpsDiagSubSysChargerEntry ::=
   SEQUENCE {
      upsDiagSubSysChargerFrameIndex            INTEGER,
      upsDiagSubSysChargerIndex                 INTEGER,
      upsDiagSubSysChargerStatus                INTEGER
   }

upsDiagSubSysChargerFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysChargerEntry 1 }

upsDiagSubSysChargerIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of a charger."
   ::= { upsDiagSubSysChargerEntry 2 }

upsDiagSubSysChargerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Charger.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysChargerEntry 3 }

upsDiagSubSysInverterTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Inverters attached to the UPS."
   ::= { upsDiagnosticSubsystem 21 }

upsDiagSubSysInverterTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysInverterEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Inverters."
   ::= { upsDiagnosticSubsystem 22 }

upsDiagSubSysInverterEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysInverterEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of an Inverter."
   INDEX  { upsDiagSubSysInverterIndex}
   ::= { upsDiagSubSysInverterTable 1 }

UpsDiagSubSysInverterEntry ::=
   SEQUENCE {
      upsDiagSubSysInverterFrameIndex            INTEGER,
      upsDiagSubSysInverterIndex                 INTEGER,
      upsDiagSubSysInverterStatus                INTEGER,
      upsDiagSubSysInverterFirmwareRev           DisplayString,
      upsDiagSubSysInverterHardwareRev           DisplayString,
      upsDiagSubSysInverterSerialNum             DisplayString,
      upsDiagSubSysInverterManufactureDate       DisplayString
   }

upsDiagSubSysInverterFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysInverterEntry 1 }

upsDiagSubSysInverterIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an Inverter."
   ::= { upsDiagSubSysInverterEntry 2 }

upsDiagSubSysInverterStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Inverter.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysInverterEntry 3 }

upsDiagSubSysInverterFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Inverter monitor."
   ::= { upsDiagSubSysInverterEntry 4 }

upsDiagSubSysInverterHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Inverter monitor."
   ::= { upsDiagSubSysInverterEntry 5 }

upsDiagSubSysInverterSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Inverter monitor."
   ::= { upsDiagSubSysInverterEntry 6 }

upsDiagSubSysInverterManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of manufacture for the Inverter monitor."
   ::= { upsDiagSubSysInverterEntry  7 }

upsDiagSubSysPowerFactorCorrectionTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Power Factor Correction devices attached to the UPS."
   ::= { upsDiagnosticSubsystem 23 }

upsDiagSubSysPowerFactorCorrectionTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysPowerFactorCorrectionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual PowerFactorCorrections."
   ::= { upsDiagnosticSubsystem 24 }

upsDiagSubSysPowerFactorCorrectionEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysPowerFactorCorrectionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a Power Factor Correction."
   INDEX  { upsDiagSubSysPowerFactorCorrectionIndex}
   ::= { upsDiagSubSysPowerFactorCorrectionTable 1 }

UpsDiagSubSysPowerFactorCorrectionEntry ::=
   SEQUENCE {
      upsDiagSubSysPowerFactorCorrectionFrameIndex            INTEGER,
      upsDiagSubSysPowerFactorCorrectionIndex                 INTEGER,
      upsDiagSubSysPowerFactorCorrectionStatus                INTEGER,
      upsDiagSubSysPowerFactorCorrectionFirmwareRev           DisplayString,
      upsDiagSubSysPowerFactorCorrectionHardwareRev           DisplayString,
      upsDiagSubSysPowerFactorCorrectionSerialNum             DisplayString,
      upsDiagSubSysPowerFactorCorrectionManufactureDate       DisplayString
   }

upsDiagSubSysPowerFactorCorrectionFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frame index entry."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 1 }

upsDiagSubSysPowerFactorCorrectionIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of a Power Factor Correction."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 2 }

upsDiagSubSysPowerFactorCorrectionStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Power Factor Correction.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 3 }

upsDiagSubSysPowerFactorCorrectionFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Power Factor Correction monitor."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 4 }

upsDiagSubSysPowerFactorCorrectionHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Power Factor Correction monitor."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 5 }

upsDiagSubSysPowerFactorCorrectionSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Power Factor Correction monitor."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry 6 }

upsDiagSubSysPowerFactorCorrectionManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of the manufacture for the Power Factor Correction monitor."
   ::= { upsDiagSubSysPowerFactorCorrectionEntry  7 }

upsDiagSubSysNetworkComCardTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Network Communication Cards attached to the UPS."
   ::= { upsDiagnosticSubsystem 25 }

upsDiagSubSysNetworkComCardTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysNetworkComCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting diagnostics information of an individual Network Communication Card."
   ::= { upsDiagnosticSubsystem 26 }

upsDiagSubSysNetworkComCardEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysNetworkComCardEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a Network Communication Card."
   INDEX  { upsDiagSubSysNetworkComCardIndex}
   ::= { upsDiagSubSysNetworkComCardTable 1 }

UpsDiagSubSysNetworkComCardEntry ::=
   SEQUENCE {
      upsDiagSubSysNetworkComCardIndex             INTEGER,
      upsDiagSubSysNetworkComCardModelNumber       DisplayString,
      upsDiagSubSysNetworkComCardSerialNumber      DisplayString,
      upsDiagSubSysNetworkComCardDateOfManufacture DisplayString,
      upsDiagSubSysNetworkComCardHardwareRev       DisplayString,
      upsDiagSubSysNetworkComCardFirmwareAppRev    DisplayString,
      upsDiagSubSysNetworkComCardFirmwareAppOSRev  DisplayString
   }

upsDiagSubSysNetworkComCardIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The UPS network and display interface communication card index entry."
   ::= { upsDiagSubSysNetworkComCardEntry 1 }

upsDiagSubSysNetworkComCardModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of the UPS network and display interface communication card.
      This value is set at the factory."
   ::= { upsDiagSubSysNetworkComCardEntry 2 }

upsDiagSubSysNetworkComCardSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of the UPS network and display interface communication card.
       This value is set at the factory."
   ::= { upsDiagSubSysNetworkComCardEntry 3 }

upsDiagSubSysNetworkComCardDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the UPS network and display interface communication card was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { upsDiagSubSysNetworkComCardEntry 4 }

upsDiagSubSysNetworkComCardHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the UPS network and display interface communication card.
       This value is set at the factory."
   ::= { upsDiagSubSysNetworkComCardEntry 5 }

upsDiagSubSysNetworkComCardFirmwareAppRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application firmware revision of the
      UPS network and display interface communication card."
   ::= {  upsDiagSubSysNetworkComCardEntry 6 }

upsDiagSubSysNetworkComCardFirmwareAppOSRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application operating system firmware revision of the
      UPS network and display interface communication card."
   ::= {  upsDiagSubSysNetworkComCardEntry 7 }

upsDiagSubSysUsrSuppBattMonitorTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of user supplied Battery Monitor Boards attached to the UPS."
   ::= { upsDiagnosticSubsystem 27 }

upsDiagSubSysUsrSuppBattMonitorTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysUsrSuppBattMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the user supplied Battery Monitor Board."
   ::= { upsDiagnosticSubsystem 28 }

upsDiagSubSysUsrSuppBattMonitorEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysUsrSuppBattMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of the user supplied Battery Monitor Board."
   INDEX  { upsDiagSubSysUsrSuppBattMonitorIndex}
   ::= { upsDiagSubSysUsrSuppBattMonitorTable 1 }

UpsDiagSubSysUsrSuppBattMonitorEntry ::=
   SEQUENCE {
      upsDiagSubSysUsrSuppBattMonitorIndex                 INTEGER,
      upsDiagSubSysUsrSuppBattMonitorStatus                INTEGER,
      upsDiagSubSysUsrSuppBattMonitorFirmwareRev           DisplayString,
      upsDiagSubSysUsrSuppBattMonitorHardwareRev           DisplayString,
      upsDiagSubSysUsrSuppBattMonitorSerialNum             DisplayString,
      upsDiagSubSysUsrSuppBattMonitorTemperature           INTEGER
   }

upsDiagSubSysUsrSuppBattMonitorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the user supplied Battery Monitor Board."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 1 }

upsDiagSubSysUsrSuppBattMonitorStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the user supplied Battery Monitor Board.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 2 }

upsDiagSubSysUsrSuppBattMonitorFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the user supplied Battery Monitor Board."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 3 }

upsDiagSubSysUsrSuppBattMonitorHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the user supplied
       Battery Monitor Board."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 4 }

upsDiagSubSysUsrSuppBattMonitorSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the user supplied
       Battery Monitor Board."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 5 }

upsDiagSubSysUsrSuppBattMonitorTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION

      "The temperature of the air around the user supplied
       Battery Monitor Board in tenths of degrees Celsius."
   ::= { upsDiagSubSysUsrSuppBattMonitorEntry 6 }

upsDiagSubSysUsrSuppBattBreakerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the user supplied Battery Breaker.
       unknown(1) indicates the circuit breaker status is unknown.
       notInstalled(2) indicates the circuit breaker is not installed.
       opened(3) indicates the circuit breaker is opened.
       closed(4) indicates the circuit breaker is closed."
   ::= { upsDiagnosticSubsystem 29 }

upsDiagSubSysPSUTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Power Supply Units in the UPS."
   ::= { upsDiagnosticSubsystem 30 }

upsDiagSubSysPSUTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysPSUEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Power Supply Units. The number of
       entries is contained in the upsDiagSubSysPSUTableSize OID."
   ::= { upsDiagnosticSubsystem 31 }

upsDiagSubSysPSUEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysPSUEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics information of a Power Supply Unit."
   INDEX  { upsDiagSubSysPSUIndex}
   ::= { upsDiagSubSysPSUTable 1 }

UpsDiagSubSysPSUEntry ::=
   SEQUENCE {
      upsDiagSubSysPSUIndex             INTEGER,
      upsDiagSubSysPSUStatus            INTEGER
   }

upsDiagSubSysPSUIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Power Supply Unit entry."
   ::= { upsDiagSubSysPSUEntry 1 }

upsDiagSubSysPSUStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Power Supply Unit.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysPSUEntry  2 }

upsDiagSubSysIDRCTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of ID and Relay Controller Cards attached to the UPS."
   ::= { upsDiagnosticSubsystem 32 }

upsDiagSubSysIDRCTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysIDRCEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the ID and Relay Controller Card."
   ::= { upsDiagnosticSubsystem 33 }

upsDiagSubSysIDRCEntry OBJECT-TYPE
   SYNTAX UpsDiagSubSysIDRCEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of the ID and Relay Controller Card."
   INDEX  { upsDiagSubSysIDRCIndex}
   ::= { upsDiagSubSysIDRCTable 1 }

UpsDiagSubSysIDRCEntry ::=
   SEQUENCE {
      upsDiagSubSysIDRCIndex                 INTEGER,
      upsDiagSubSysIDRCStatus                INTEGER,
      upsDiagSubSysIDRCFirmwareRev           DisplayString,
      upsDiagSubSysIDRCHardwareRev           DisplayString,
      upsDiagSubSysIDRCSerialNum             DisplayString
   }

upsDiagSubSysIDRCIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the ID and Relay Controller Card."
   ::= { upsDiagSubSysIDRCEntry 1 }

upsDiagSubSysIDRCStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the ID and Relay Controller Card.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagSubSysIDRCEntry 2 }

upsDiagSubSysIDRCFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the ID and Relay Controller Card."
   ::= { upsDiagSubSysIDRCEntry 3 }

upsDiagSubSysIDRCHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the ID and Relay Controller Card."
   ::= { upsDiagSubSysIDRCEntry 4 }

upsDiagSubSysIDRCSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the ID
       and Relay Controller Card."
   ::= { upsDiagSubSysIDRCEntry 5 }

upsDiagSubSysExternalConnectorStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The status of the external connector board.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagnosticSubsystem 34 }


upsDiagSubSysBackfeedContactorTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of backfeed protection contactor attached to the UPS."
   ::= { upsDiagnosticSubsystem 35 }

upsDiagSubSysBackfeedContactorTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysBackfeedContactorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Backfeed protection contactor table."
   ::= { upsDiagnosticSubsystem 36 }
   upsDiagSubSysBackfeedContactorEntry OBJECT-TYPE
      SYNTAX UpsDiagSubSysBackfeedContactorEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of backfeed protection contactors."
      INDEX  { upsDiagSubSysbackfeedContactorIndex }
      ::= { upsDiagSubSysBackfeedContactorTable 1 }

   UpsDiagSubSysBackfeedContactorEntry ::=
      SEQUENCE {
         upsDiagSubSysbackfeedContactorIndex
            INTEGER,
         upsDiagSubSysbackfeedContactorName
            DisplayString,
         upsDiagSubSysbackfeedContactorType
            INTEGER,
         upsDiagSubSysbackfeedContactorStatus
            INTEGER
      }

   upsDiagSubSysbackfeedContactorIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the backfeed protection contactor."
      ::= { upsDiagSubSysBackfeedContactorEntry 1 }

   upsDiagSubSysbackfeedContactorName OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "The name of the backfeed protection contactor."
      ::= { upsDiagSubSysBackfeedContactorEntry 2 }

   upsDiagSubSysbackfeedContactorType OBJECT-TYPE
      SYNTAX INTEGER {
              unknown(1),
              normalAC(2),
              bypassAC(3)

      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Indicates the backfeed protection contactor types available in the UPS system.
          If the UPS is unable to find any attached contactors, this variable
          is set to unknown(1)."
      ::= { upsDiagSubSysBackfeedContactorEntry 3 }

   upsDiagSubSysbackfeedContactorStatus OBJECT-TYPE
      SYNTAX INTEGER {
              unknown(1),
              opened(2),
              closed(3)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The status of backfeed protection contactor.
          unknown(1) indicates the contactor status is unknown.
          opened (2) indicates the contactor is opened.
          closed (3) indicates the contactor is closed."
      ::= { upsDiagSubSysBackfeedContactorEntry 4 }

upsDiagSubSysIntBypSwitchFanLifetimeInfoTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of backfeed protection contactor attached to the UPS."
   ::= { upsDiagnosticSubsystem 37 }

upsDiagSubSysIntBypSwitchFanLifetimeInfoTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubSysIntBypSwitchFanLifetimeInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the Internal Bypass Switch life time infomation."
  ::= { upsDiagnosticSubsystem 38 }

   upsDiagSubSysIntBypSwitchFanLifetimeInfoEntry OBJECT-TYPE
      SYNTAX UpsDiagSubSysIntBypSwitchFanLifetimeInfoEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "The diagnostics of the Internal Bypass Switch."
         INDEX  { upsDiagSubSysIntBypSwitchFanLifetimeInfoIndex }
   ::= { upsDiagSubSysIntBypSwitchFanLifetimeInfoTable 1 }

   UpsDiagSubSysIntBypSwitchFanLifetimeInfoEntry ::=
      SEQUENCE {
        upsDiagSubSysIntBypSwitchFanLifetimeInfoIndex         INTEGER,
        upsDiagSubSysIntBypSwitchFanLifetimeStatus            INTEGER,
        upsDiagSubSysIntBypSwitchFanEstmtdLifetimeRmng        INTEGER,
        upsDiagSubSysIntBypSwitchFanEstmtdLifetimeRmngPct     INTEGER
   }

   upsDiagSubSysIntBypSwitchFanLifetimeInfoIndex OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The index to the Internal Bypass Switch Fan liftime information entry"
   ::= { upsDiagSubSysIntBypSwitchFanLifetimeInfoEntry 1 }

   upsDiagSubSysIntBypSwitchFanLifetimeStatus OBJECT-TYPE
     SYNTAX INTEGER {
       ok (1),
       nearEnd (2),
       exceeded (3),
       unknown (4)
   }
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "The status of the Internal Bypass Switch Fan lifetime information.
         ok(1) indicates the device lifetime status is OK.
         nearEnd(2) indicates the device lifetime status is near end.
         exceeded(3) indicates the device lifetime status is exceeded.
         unknown(4) indicates the device lifetime status is unknown."
   ::= { upsDiagSubSysIntBypSwitchFanLifetimeInfoEntry 2 }

   upsDiagSubSysIntBypSwitchFanEstmtdLifetimeRmng  OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "Displays the time remaining for the module before it should be replaced.
         Measured in months. This value is set when you originally install the module."
   ::= { upsDiagSubSysIntBypSwitchFanLifetimeInfoEntry 3 }

   upsDiagSubSysIntBypSwitchFanEstmtdLifetimeRmngPct  OBJECT-TYPE
     SYNTAX INTEGER
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
        "Displays the percentage of the total lifetime remaining for the module
         before it should be replaced."
   ::= { upsDiagSubSysIntBypSwitchFanLifetimeInfoEntry 4 }

-- the upsDiagnosticExternalDevices group

upsDiagSwitchGearStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     fail            (4),
     lostComm        (5),
     overtemp        (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Switch Gear.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       fail(4) indicates the device status has failed.
       lostComm(5) indicates the device has lost communication.
       overtemp(6) indicates the device has an over temperature condition."
   ::= { upsDiagSwitchGear  1 }

upsDiagSwitchGearInputSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Switch Gear Input Switch.
       unknown(1) indicates the switch status is unknown.
       notInstalled(2) indicates the switch is not installed.
       opened(3) indicates the switch is opened.
       closed(4) indicates the switch is closed."
   ::= { upsDiagSwitchGear  2 }

upsDiagSwitchGearOutputSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Switch Gear Output Switch.
       unknown(1) indicates the switch status is unknown.
       notInstalled(2) indicates the switch is not installed.
       opened(3) indicates the switch is opened.
       closed(4) indicates the switch is closed."
   ::= { upsDiagSwitchGear  3 }

upsDiagSwitchGearBypassSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Switch Gear Bypass Switch.
       unknown(1) indicates the switch status is unknown.
       notInstalled(2) indicates the switch is not installed.
       opened(3) indicates the switch is opened.
       closed(4) indicates the switch is closed."
   ::= { upsDiagSwitchGear  4 }

upsDiagSwitchGearBypassInputSwitchStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Switch Gear Bypass Input Switch.
       unknown(1) indicates the switch status is unknown.
       notInstalled(2) indicates the switch is not installed.
       opened(3) indicates the switch is opened.
       closed(4) indicates the switch is closed."
   ::= { upsDiagSwitchGear  5 }

upsDiagSwitchGearBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of switchgear breakers attached to the UPS."
   ::= { upsDiagSwitchGear 6 }

upsDiagSwitchGearBreakerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSwitchGearBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Switchgear breaker table."
   ::= { upsDiagSwitchGear 7 }

   upsDiagSwitchGearBreakerEntry OBJECT-TYPE
      SYNTAX UpsDiagSwitchGearBreakerEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of switchgear breakers."
      INDEX  { switchgearBreakerIndex }
      ::= { upsDiagSwitchGearBreakerTable 1 }

   UpsDiagSwitchGearBreakerEntry ::=
      SEQUENCE {
         switchgearBreakerIndex
            INTEGER,
         switchgearBreakerPresent
            INTEGER,
         switchgearBreakerName
            DisplayString,
         switchgearBreakerType
            INTEGER,
         switchgearBreakerStatus
            INTEGER
      }

   switchgearBreakerIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the switchgear breaker."
      ::= { upsDiagSwitchGearBreakerEntry 1 }

   switchgearBreakerPresent OBJECT-TYPE
      SYNTAX INTEGER {
         notPresent(1),
         present(2)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Indicates if the switchgear breaker is present.
          notPresent(1) indicates that the breaker is not present.
          present(2) indicates that the breaker is present."
      ::= { upsDiagSwitchGearBreakerEntry 2 }

   switchgearBreakerName OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "The name of the switchgear breaker."
      ::= { upsDiagSwitchGearBreakerEntry 3 }


   switchgearBreakerType OBJECT-TYPE
      SYNTAX INTEGER {
              unknown(1),
              unitInputBreaker(2),
              staticSwitchInputBreaker(3),
              maintenanceBypassBreaker(4),
              unitOutputBreaker(5),
              systemIsolationBreaker(6),
              batteryBreaker(7),
              bypassBackFeedBreaker(8),
              internalMaintenanceBypassBreaker(9),
              redundantInternalMaintenanceBypassBreaker(10)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Indicates the switchgear breaker types available in the UPS system.
          If the UPS is unable to find any attached breakers, this variable
          is set to unknown(1)."
      ::= { upsDiagSwitchGearBreakerEntry 4 }

   switchgearBreakerStatus OBJECT-TYPE
      SYNTAX INTEGER {
              unknown(1),
              opened(2),
              closed(3)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The status of switchgear breaker.
          unknown(1) indicates the breaker status is unknown.
          opened (2) indicates the breaker is opened.
          closed (3) indicates the breaker is closed."
      ::= { upsDiagSwitchGearBreakerEntry 5 }



upsDiagSubFeedBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of subfeed breakers attached to the UPS."
   ::= { upsDiagSwitchGear 8 }

upsDiagSubFeedBreakerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagSubFeedBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Subfeed breaker table."
   ::= { upsDiagSwitchGear 9 }

   upsDiagSubFeedBreakerEntry OBJECT-TYPE
      SYNTAX UpsDiagSubFeedBreakerEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of subfeed breakers."
      INDEX  { subfeedBreakerIndex }
      ::= { upsDiagSubFeedBreakerTable 1 }

   UpsDiagSubFeedBreakerEntry ::=
      SEQUENCE {
         subfeedBreakerIndex
            INTEGER,
         subfeedBreakerPresent
            INTEGER,
         subfeedBreakerRating
            INTEGER,
         subfeedBreakerUpperAcceptPowerWarning
            INTEGER,
         subfeedBreakerUpperAcceptPowerCritical
            INTEGER,
        subfeedBreakerStatus
            INTEGER,
        subfeedBreakerName
            DisplayString,
        subfeedBreakerCurrent
            INTEGER
      }

   subfeedBreakerIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the subfeed breakers."
      ::= { upsDiagSubFeedBreakerEntry 1 }

   subfeedBreakerPresent OBJECT-TYPE
      SYNTAX INTEGER {
         notPresent (1),
         present    (2)
      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Indicates if the subfeed breaker is present.
         notPresent (1) indicates that the breaker is not present.
         present (2) indicates that the breaker is present."
      ::= { upsDiagSubFeedBreakerEntry 2 }

   subfeedBreakerRating OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The current rating of the installed subfeed breaker."
      ::= { upsDiagSubFeedBreakerEntry 3 }

   subfeedBreakerUpperAcceptPowerWarning OBJECT-TYPE
      SYNTAX INTEGER (0..100)
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "The maximum acceptable load before warning is issued.
         Expressed as percent of the subfeed breaker rating."
      ::= { upsDiagSubFeedBreakerEntry 4 }



   subfeedBreakerUpperAcceptPowerCritical OBJECT-TYPE
      SYNTAX INTEGER (0..125)
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "The maximum load before a critical alarm occurs.
         Expressed as percent of the subfeed breaker rating."
      ::= { upsDiagSubFeedBreakerEntry 5 }

   subfeedBreakerStatus OBJECT-TYPE
       SYNTAX INTEGER {
       unknown         (1),
       notInstalled    (2),
       opened          (3),
       closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Circuit Breaker.
       unknown(1) indicates the circuit breaker status is unknown.
       notInstalled(2) indicates the circuit breaker is not installed.
       opened(3) indicates the circuit breaker is opened.
       closed(4) indicates the circuit breaker is closed."
   ::= { upsDiagSubFeedBreakerEntry 6 }

    subfeedBreakerName OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "The name of the subfeed breaker."
      ::= { upsDiagSubFeedBreakerEntry  7}

    subfeedBreakerCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
            "The subfeed current in tenths of Amps."
       ::= { upsDiagSubFeedBreakerEntry 8 }


upsDiagSwitchGearInstallationLoadPct OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual output load expressed as a percentage of the rating of the UPS."
   ::= { upsDiagSwitchGear 10 }


 upsDiagSubFeedPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF  UPSDiagSubFeedPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of subfeed phase table."
       ::= { upsDiagSwitchGear 11 }

 upsDiagSubFeedPhaseEntry OBJECT-TYPE
       SYNTAX     UPSDiagSubFeedPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular phase."
       INDEX { upsDiagSubFeedPhaseIndex }
       ::= { upsDiagSubFeedPhaseTable 1 }

 UPSDiagSubFeedPhaseEntry ::= SEQUENCE {
       upsDiagSubFeedBreakerIndex    INTEGER,
       upsDiagSubFeedPhaseIndex      INTEGER,
       upsDiagSubFeedPhaseCurrent          INTEGER,
       upsDiagSubFeedPhaseCurrentAlternate INTEGER
   }

 upsDiagSubFeedBreakerIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
            "The subfeed breaker index."
       ::= { upsDiagSubFeedPhaseEntry 1 }

 upsDiagSubFeedPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
             "The subfeed phase index."
       ::= { upsDiagSubFeedPhaseEntry 2 }

 upsDiagSubFeedPhaseCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
            "The subfeed phase current in Amps."
       ::= { upsDiagSubFeedPhaseEntry 3 }

 upsDiagSubFeedPhaseCurrentAlternate OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
            "The subfeed phase current in tenths of Amps."
       ::= { upsDiagSubFeedPhaseEntry 4 }


upsDiagSwitchgearSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the UPS I/O Cabinet."
   ::= { upsDiagSwitchGear 12 }

upsDiagSwitchgearAmbientTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The ambient temperature of I/O Cabinet in tenths of degrees Celsius."
   ::= { upsDiagSwitchGear  13 }

upsDiagUsrSuppSwitchgearMonitorTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of user supplied Switch Gear Monitor Boards attached to the UPS."
   ::= { upsDiagSwitchGear 14 }

upsDiagUsrSuppSwitchgearMonitorTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagUsrSuppSwitchgearMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of the user supplied Switch Gear Monitor Board."
   ::= { upsDiagSwitchGear 15 }

upsDiagUsrSuppSwitchgearMonitorEntry OBJECT-TYPE
   SYNTAX UpsDiagUsrSuppSwitchgearMonitorEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of the user supplied Switch Gear Monitor Board."
   INDEX  { upsDiagUsrSuppSwitchgearMonitorIndex}
   ::= { upsDiagUsrSuppSwitchgearMonitorTable 1 }

UpsDiagUsrSuppSwitchgearMonitorEntry ::=
   SEQUENCE {
      upsDiagUsrSuppSwitchgearMonitorIndex                 INTEGER,
      upsDiagUsrSuppSwitchgearMonitorStatus                INTEGER,
      upsDiagUsrSuppSwitchgearMonitorFirmwareRev           DisplayString,
      upsDiagUsrSuppSwitchgearMonitorHardwareRev           DisplayString,
      upsDiagUsrSuppSwitchgearMonitorSerialNum             DisplayString,
      upsDiagUsrSuppSwitchgearMonitorTemperature           INTEGER

   }

upsDiagUsrSuppSwitchgearMonitorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the user supplied Switch Gear Monitor Board."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 1 }

upsDiagUsrSuppSwitchgearMonitorStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the user supplied Switch Gear Monitor Board.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 2 }

upsDiagUsrSuppSwitchgearMonitorFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the user supplied Switch Gear Monitor Board."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 3 }

upsDiagUsrSuppSwitchgearMonitorHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the user supplied Switch Gear Monitor Board."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 4 }

upsDiagUsrSuppSwitchgearMonitorSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the user supplied
       Switch Gear Monitor Board."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 5 }

upsDiagUsrSuppSwitchgearMonitorTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION

      "The temperature of the air around the user supplied
       Switch Gear Monitor Board in tenths of degrees Celsius."
   ::= { upsDiagUsrSuppSwitchgearMonitorEntry 6 }

upsDiagMCCBBoxStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the MCCB Box (Molded Case Circuit Breaker Box) external device.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       opened(3) indicates the circuit is opened.
       closed(4) indicates the circuit is closed."
   ::= { upsDiagMCCBBox  1 }

upsDiagTransformerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     fail            (4),
     lostComm        (5),
     overtemp        (6),
     opened          (7),
     closed          (8)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the External Transformer.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       fail(4) indicates the device status has failed.
       lostComm(5) indicates the device has lost communication.
       overtemp(6) indicates the device has an over temperature condition.
       opened(7) indicates the circuit is opened.
       closed(8) indicates the circuit is closed."
   ::= { upsDiagTransformer  1 }


   upsDiagFlyWheelStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown(1),
     present(2),
     notPresent(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the status of flywheel connected to UPS. If the UPS
       is unable to determine the state of flywheel, this variable is
       set to unknown(1)."
   ::= { upsDiagFlyWheel  1 }




-- the upsDiagnosticComBus group

upsDiagComBusInternalMIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     lostComm        (4),
     rxFailure       (5),
     txFailure       (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the internal MIM communication bus.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       lostComm(4) indicates the device has lost communication.
       rxFailure(5) indicates the device has a receive failure.
       txFailure(6) indicates the device has a transmit failure."
   ::= { upsDiagnosticComBus  1 }

upsDiagComBusInternalRIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     lostComm        (4),
     rxFailure       (5),
     txFailure       (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the internal RIM communication bus.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       lostComm(4) indicates the device has lost communication.
       rxFailure(5) indicates the device has a receive failure.
       txFailure(6) indicates the device has a transmit failure."
   ::= { upsDiagnosticComBus  2 }

upsDiagComBusMIMtoRIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     lostComm        (4),
     rxFailure       (5),
     txFailure       (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the MIM to RIM communication bus.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       lostComm(4) indicates the device has lost communication.
       rxFailure(5) indicates the device has a receive failure.
       txFailure(6) indicates the device has a transmit failure."
   ::= { upsDiagnosticComBus  3 }

upsDiagComBusExternalMIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     lostComm        (4),
     rxFailure       (5),
     txFailure       (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the external MIM communication bus.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       lostComm(4) indicates the device has lost communication.
       rxFailure(5) indicates the device has a receive failure.
       txFailure(6) indicates the device has a transmit failure."
   ::= { upsDiagnosticComBus  4 }

upsDiagComBusExternalRIMStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     ok              (3),
     lostComm        (4),
     rxFailure       (5),
     txFailure       (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the external RIM communication bus.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       ok(3) indicates the device status is OK.
       lostComm(4) indicates the device has lost communication.
       rxFailure(5) indicates the device has a receive failure.
       txFailure(6) indicates the device has a transmit failure."
   ::= { upsDiagnosticComBus  5 }

-- the upsDiagnosticPowerCabinet group
upsDiagnosticPowerCabinetTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum number of Power Cabinets supported by the UPS."
   ::= { upsDiagnosticPowerCabinet 1 }

upsDiagnosticPowerCabinetTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagnosticPowerCabinetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Power Cabinets.
      The number of entries is contained in the upsDiagnosticPowerCabinetTableSize OID."
   ::= { upsDiagnosticPowerCabinet 2 }

upsDiagnosticPowerCabinetEntry OBJECT-TYPE
   SYNTAX UpsDiagnosticPowerCabinetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of a Power Cabinet."
   INDEX  { upsDiagnosticPowerCabinetIndex}
   ::= { upsDiagnosticPowerCabinetTable 1 }

UpsDiagnosticPowerCabinetEntry ::=
   SEQUENCE {
      upsDiagnosticPowerCabinetIndex                    INTEGER,
      upsDiagnosticPowerCabinetAmbientTemperature       INTEGER
   }

upsDiagnosticPowerCabinetIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Power Cabinet."
   ::= { upsDiagnosticPowerCabinetEntry 1 }

upsDiagnosticPowerCabinetAmbientTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The ambient temperature of Power Cabinet in tenths of degrees Celsius.
            If the Power Cabinet is not present, this variable is set to (-1)."
   ::= { upsDiagnosticPowerCabinetEntry 2 }

-- the upsDiagnosticDisplay group
upsDiagnosticDisplayHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Display."
   ::= { upsDiagnosticDisplay 1 }

upsDiagnosticDisplaySerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Display."
   ::= {  upsDiagnosticDisplay 2 }

upsDiagnosticDisplayFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Display."
   ::= {  upsDiagnosticDisplay 3 }

 upsDiagnosticDisplayModelNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The model number of the Display."
   ::= {  upsDiagnosticDisplay 4 }

 upsDiagnosticDisplayStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The System Level Controller Status.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagnosticDisplay 5 }

 -- the upsDiagnosticSLC group
upsDiagnosticSLCHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the System Level Controller."
   ::= { upsDiagnosticSLC 1 }

upsDiagnosticSLCSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the System Level Controller."
   ::= {  upsDiagnosticSLC 2 }

upsDiagnosticSLCFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the System Level Controller."
   ::= {  upsDiagnosticSLC 3 }

upsDiagnosticSLCModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Model number of the System Level Controller."
   ::= {  upsDiagnosticSLC 4 }

 upsDiagSLCStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The System Level Controller Status.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagnosticSLC 5 }

-- upsDiagnosticTemperature   
upsDiagnosticTemperatureAmbientTemperature OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
           "The ambient temperature in tenths of degrees Celsius.
            If not available, this variable is set to (-1999)."
   ::= { upsDiagnosticTemperature 1 }

   
-- upsDiagnosticUnitContoller group

  upsDiagUnitControllerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Unit Controllers in or attached to the UPS."
   ::= { upsDiagnosticUnitController 1 }

upsDiagUnitControllerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDiagUnitControllerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of individual Intelligence Modules. The number of
       entries is contained in the upsDiagUnitControllerTableSize OID."
   ::= { upsDiagnosticUnitController 2 }

upsDiagUnitControllerEntry OBJECT-TYPE
   SYNTAX UpsDiagUnitControllerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics and information of an Intelligence Module."
   INDEX  { upsDiagUnitControllerIndex}
   ::= { upsDiagUnitControllerTable 1 }

UpsDiagUnitControllerEntry ::=
   SEQUENCE {
      upsDiagUnitControllerIndex             INTEGER,
      upsDiagUnitControllerStatus            INTEGER,
      upsDiagUnitControllerFirmwareRev       DisplayString,
      upsDiagUnitControllerHardwareRev       DisplayString,
      upsDiagUnitControllerSerialNum         DisplayString,
      upsDiagUnitControllerModelNum          DisplayString
   }

upsDiagUnitControllerIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Unit Controller entry."
   ::= { upsDiagUnitControllerEntry 1 }


upsDiagUnitControllerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     offOk           (3),
     onOk            (4),
     offFail         (5),
     onFail          (6),
     lostComm        (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Unit Controller.
       unknown(1) indicates the device status is unknown.
       notInstalled(2) indicates the device is not installed.
       offOk(3) indicates the device status is off and OK.
       onOk(4) indicates the device status is on and OK.
       offFail(5) indicates the device status is off and failed.
       onFail(6) indicates the device status is on and failed.
       lostComm(7) indicates the device has lost communication."
   ::= { upsDiagUnitControllerEntry  2 }

upsDiagUnitControllerFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Unit Controller."
   ::= { upsDiagUnitControllerEntry  3 }

upsDiagUnitControllerHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Unit Controller."
   ::= { upsDiagUnitControllerEntry  4 }

upsDiagUnitControllerSerialNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The serial number of the Unit Controller."
   ::= { upsDiagUnitControllerEntry  5 }

upsDiagUnitControllerModelNum OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The model number of the Unit Controller."
   ::= { upsDiagUnitControllerEntry  6 }

-- the upsParallelSystem group

upsParallelSysLocalAddress OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Defines the UPS ID number in the parallel system."
   ::= { upsParallelSystem  1 }

upsParallelSysRemoteAddress OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Defines the total number of UPSs in parallel."
   ::= { upsParallelSystem  2 }

upsParallelSysRedundancy OBJECT-TYPE
   SYNTAX INTEGER {
      nplus0   (1),
      nplus1   (2),
      nplus2   (3),
      nplus3   (4),
      nplus4   (5),
      nplus5   (6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The redundancy warning level for paralleled UPS
      nplus0 (1) indicates that there are no redundant units.
      nplus1 (2) indicates that there is one redundant unit.
      nplus2 (3) indicates that there are two redundant units.
      nplus3 (4) indicates that there are three redundant units.
      nplus4 (5) indicates that there are four redundant unit.
      nplus5 (6) indicates that there are five redundant units."
   ::= { upsParallelSystem  3 }


upsParallelInputMaximumCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Maximum input RMS current of the parallel system
       measured in Amperes."
   ::= { upsParallelSystem  4 }

upsParallelTotalOutputPower OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The Total Output power of UPS in kW
       when UPS are configured in parallel
       or -1 if it's unsupported by this UPS."
       ::= { upsParallelSystem 5 }

upsParallelTotalOutputApparentPower OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The Total Output Apparent power of UPS in kVA
       when UPS are configured in parallel
       or -1 if it's unsupported by this UPS."
       ::= { upsParallelSystem 6 }

-- Parallel Input Phase Table

   upsParallelInputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsParallelInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries."
       ::= { upsParallelSystem 7 }

   upsParallelInputPhaseEntry OBJECT-TYPE
       SYNTAX     UpsParallelInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input phase."
       INDEX { upsParallelInputPhaseTableIndex, upsParallelInputPhaseIndex }
       ::= { upsParallelInputPhaseTable 1 }

   UpsParallelInputPhaseEntry ::= SEQUENCE {
       upsParallelInputPhaseTableIndex    INTEGER,
       upsParallelInputPhaseIndex         INTEGER,
       upsParallelInputCurrent            INTEGER,
       upsParallelInputActivePower        INTEGER,
       upsParallelInputApparentPower      INTEGER,
       upsParallelInputVoltage            INTEGER,
       upsParallelInputMaxVoltage         INTEGER,
       upsParallelInputMaxCurrent         INTEGER,
       upsParallelInputTotalActivePower   INTEGER,
       upsParallelInputTotalApparentPower INTEGER
   }

   upsParallelInputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The parallel unit identifier."
       ::= { upsParallelInputPhaseEntry 1 }

   upsParallelInputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input phase identifier."
       ::= { upsParallelInputPhaseEntry 2 }


   upsParallelInputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input current in amperes, or -1 if it's
               unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 3 }

   upsParallelInputActivePower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input power in kW, or -1 if it's
               unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 4 }

    upsParallelInputApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input apparent power in kVA, or -1 if it's
               unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 5 }

    upsParallelInputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage of UPS in volts, or -1 if it's
               unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 6 }

    upsParallelInputMaxVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The peak input voltage in VAC measured since the last reset,
               or -1 if it's unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 7 }

    upsParallelInputMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The peak input current in amperes measured since last reset,
               or -1 if it's unsupported by this UPS."
       ::= { upsParallelInputPhaseEntry 8 }

   upsParallelInputTotalActivePower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Total active input power of the parallel system in kW."
       ::= { upsParallelInputPhaseEntry 9 }

    upsParallelInputTotalApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Total apparent input power of the parallel system in kVA."
       ::= { upsParallelInputPhaseEntry 10 }


-- Parallel Output Phase Table

   upsParallelOutputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsParallelOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of
               entries is given by the sum of the upsPhaseNumOutputPhases."
       ::= { upsParallelSystem 8 }

   upsParallelOutputPhaseEntry OBJECT-TYPE
       SYNTAX     UpsParallelOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output phase."
       INDEX { upsParallelOutputPhaseTableIndex, upsParallelOutputPhaseIndex }
       ::= { upsParallelOutputPhaseTable 1 }

   UpsParallelOutputPhaseEntry ::= SEQUENCE {
       upsParallelOutputPhaseTableIndex INTEGER,
       upsParallelOutputPhaseIndex      INTEGER,
       upsParallelOutputCurrent         INTEGER,
       upsParallelOutputLoad            INTEGER,
       upsParallelOutputPercentLoad     INTEGER,
       upsParallelOutputPower           INTEGER
   }

   upsParallelOutputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { upsParallelOutputPhaseEntry 1 }

   upsParallelOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output phase identifier."
       ::= { upsParallelOutputPhaseEntry 2 }

   upsParallelOutputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output current in amperes drawn
               by the load on the UPS, or -1 if it's unsupported
               by this UPS."
       ::= { upsParallelOutputPhaseEntry 3 }

   upsParallelOutputLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output load in VA, or -1 if it's unsupported
               by this UPS."
       ::= { upsParallelOutputPhaseEntry 4 }

   upsParallelOutputPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the UPS load capacity in VA at
               present redundancy being used on this output phase,
               or -1 if it's unsupported by this UPS."
       ::= { upsParallelOutputPhaseEntry 5 }

   upsParallelOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output power in Watts, or -1 if it's
               unsupported by this UPS."
       ::= { upsParallelOutputPhaseEntry 6 }

   -- Parallel Output Apparent Power Table

   upsParallelOutputApparentPowerTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF UpsParallelOutputApparentPowerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of entries
               is given by the value of upsOutputNumPhases."
       ::= { upsParallelSystem 9 }

   upsParallelOutputApparentPowerEntry OBJECT-TYPE
       SYNTAX     UpsParallelOutputApparentPowerEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output."
       INDEX { upsParallelOutputApparentPowerTableIndex }
       ::= { upsParallelOutputApparentPowerTable 1 }

   UpsParallelOutputApparentPowerEntry ::= SEQUENCE {
       upsParallelOutputApparentPowerTableIndex         INTEGER,
       upsParallelOutputApparentPower                   INTEGER
   }

   upsParallelOutputApparentPowerTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The UPS parallel output identifier."
       ::= { upsParallelOutputApparentPowerEntry 1 }

   upsParallelOutputApparentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The apparent power of each of UPS in kVA
               when UPS are configured in parallel."
       ::= { upsParallelOutputApparentPowerEntry 2 }


upsParallelDiagSubSysBreakerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsParallelDiagSubSysBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for diagnostics of parallel Circuit Breakers."
   ::= { upsParallelSystem 10 }

upsParallelDiagSubSysBreakerEntry OBJECT-TYPE
   SYNTAX UpsParallelDiagSubSysBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The diagnostics of Circuit Breaker."
   INDEX  { upsParallelDiagSubSysBreakerFrameIndex, upsParallelDiagSubSysBreakerIndex}
   ::= { upsParallelDiagSubSysBreakerTable 1 }

UpsParallelDiagSubSysBreakerEntry ::=
   SEQUENCE {
      upsParallelDiagSubSysBreakerFrameIndex            INTEGER,
      upsParallelDiagSubSysBreakerIndex                 INTEGER,
      upsParallelDiagSubSysBreakerStatus                INTEGER,
      upsParallelDiagSubSysBreakerName                  DisplayString
   }

upsParallelDiagSubSysBreakerFrameIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Parallel UPS index entry."
   ::= { upsParallelDiagSubSysBreakerEntry 1 }

upsParallelDiagSubSysBreakerIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the Circuit Breaker."
   ::= { upsParallelDiagSubSysBreakerEntry 2 }

upsParallelDiagSubSysBreakerStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown         (1),
     notInstalled    (2),
     opened          (3),
     closed          (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Circuit Breaker.
       unknown(1) indicates the circuit breaker status is unknown.
       notInstalled(2) indicates the circuit breaker is not installed.
       opened(3) indicates the circuit breaker is opened.
       closed(4) indicates the circuit breaker is closed."
   ::= { upsParallelDiagSubSysBreakerEntry 3 }

upsParallelDiagSubSysBreakerName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of Circuit Breaker."
   ::= { upsParallelDiagSubSysBreakerEntry 4 }

upsParallelOutputTotalPercentLoad OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory

DESCRIPTION
      "The percentage of the UPS total load capacity in kVA
        or -1 if it's unsupported by this UPS."
       ::= { upsParallelSystem 11 }
-- Parallel Output Active Power Table

upsParallelOutputActivePowerTable OBJECT-TYPE
   SYNTAX     SEQUENCE OF UpsParallelOutputActivePowerEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
      "A list of output table entries.  The number of entries
       is given by the value of upsParallelSysRemoteAddress."
   ::= { upsParallelSystem 12 }

upsParallelOutputActivePowerEntry OBJECT-TYPE
   SYNTAX     UpsParallelOutputActivePowerEntry
   ACCESS     not-accessible
   STATUS     mandatory
   DESCRIPTION
      "An entry containing information applicable to a
       particular output."
       INDEX { upsParallelOutputActivePowerTableIndex }
   ::= { upsParallelOutputActivePowerTable 1 }

UpsParallelOutputActivePowerEntry ::= SEQUENCE {
      upsParallelOutputActivePowerTableIndex         INTEGER,
      upsParallelOutputActivePower                   INTEGER
   }

upsParallelOutputActivePowerTableIndex OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The UPS parallel output identifier."
   ::= { upsParallelOutputActivePowerEntry 1 }

upsParallelOutputActivePower OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The active power of each UPS in kW
       when UPSs are configured in parallel."
   ::= { upsParallelOutputActivePowerEntry 2 }

upsParallelSysSwitchGearInstallationLoadPct OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual output load expressed as a percentage of the rating of the
       Parallel UPS system."
   ::= { upsParallelSystem 13 }



upsParallelSysRedundancyStatus OBJECT-TYPE
   SYNTAX INTEGER {
      nplus0   (1),
      nplus1   (2),
      nplus2   (3),
      nplus3   (4),
      nplus4   (5),
      nplus5   (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
     "Displays the number of backup or redundant UPSs set up on the parallel system.
      nplus0 (1) no redundant units.
      nplus1 (2) one redundant unit.
      nplus2 (3) two redundant units.
      nplus3 (4) three redundant units.
      nplus4 (5) four redundant units.
      nplus5 (6) five redundant units."
   ::= { upsParallelSystem  14 }

upsParallelSysName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An ID string for the group of UPS units in the same parallel system.
       Some products do not allow write operations for this OID."
   ::= { upsParallelSystem 15 }

upsParallelSysUpsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of UPSs in parallel."
   ::= { upsParallelSystem 16 }

upsParallelSysUpsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsParallelSysUpsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of UPS table entries.  The number of entries
       is given by the value of upsParallelSysUpsTableize."
   ::= { upsParallelSystem 17 }

upsParallelSysUpsEntry OBJECT-TYPE
   SYNTAX UpsParallelSysUpsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information applicable to a
       particular UPS in parallel."
   INDEX  { upsParallelSysUpsIndex}
   ::= { upsParallelSysUpsTable 1 }

UpsParallelSysUpsEntry ::=
   SEQUENCE {
      upsParallelSysUpsIndex        INTEGER,
      upsParallelSysUpsName         DisplayString,
      upsParallelSysUpsAlarmStatus  INTEGER,
      upsParallelSysUpsMode         INTEGER,
      upsParallelSysUpsSerialNumber DisplayString
   }

upsParallelSysUpsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Parallel System UPS table entry."
   ::= { upsParallelSysUpsEntry 1 }

upsParallelSysUpsName OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The UPS id as assigned by the system."
      ::= { upsParallelSysUpsEntry 2 }

upsParallelSysUpsAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
     unknown       (1),
     normal        (2),
     informational (3),
     warning       (4),
     critical      (5)
     }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The alarm status of the UPS.
       unknown(1) indicates the UPS status is unknown.
       normal(2) indicates UPS is functioning normally.
       informational(3) indicates informational alarm present in the UPS.
       warning(4) indicates warning alarm present in the UPS.
       critical(5) indicates critical alarm present in the UPS."
   ::= { upsParallelSysUpsEntry 3 }

upsParallelSysUpsMode OBJECT-TYPE
   SYNTAX INTEGER  {
      unknown(1),
      onLine(2),
      onBattery(3),
      onBatteryTest(4),
      requestedStaticBypass(5),
      forcedBypass(6),
      maintenanceBypass(7),
      off(8),
      ecoMode(9),
      hotStandby(10),
      inquiring(11)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current operating mode of the UPS. If the UPS is unable to
       determine the state of the UPS, this variable is set
       to unknown(1)."
   ::= { upsParallelSysUpsEntry 4 }

upsParallelSysUpsSerialNumber OBJECT-TYPE
      SYNTAX DisplayString
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The Serial number of the UPS in parallel.
         Equivalent to OID 1.3.6.1.4.1.318.1.1.1.1.2.3 (upsAdvIdentSerialNumber)."
      ::= { upsParallelSysUpsEntry 5 }
   
upsParallelNumOfUpsPoweringLoad OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Number of UPS powered and protecting the load which are not defective
      (no battery fault, no internal fault)."
   ::= { upsParallelSystem 18 }

upsParallelMinNumOfRequiredUps OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Minimal number of UPS required to guarantee the availability of power."
   ::= { upsParallelSystem 19 }

-- the upsPhysicalLayout group
upsIOFrameLayoutPositionID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Defines the position ID of UPS frame."
   ::= { upsPhysicalLayout 1 }

upsBottomFeedFrameLayoutPositionID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Defines the position ID of bottom feed frame."
   ::= { upsPhysicalLayout 2 }

upsSwitchGearLayoutPositionID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Defines the position ID of switchgear."
   ::= { upsPhysicalLayout 3 }

-- the upsBatteryFrameLayoutTable subgroup
upsBatteryFrameLayoutTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of battery frames."
   ::= { upsPhysicalLayout 4 }

upsBatteryFrameLayoutTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsBatteryFrameLayoutEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Battery frame layout position ID table."
   ::= { upsPhysicalLayout 5 }

   upsBatteryFrameLayoutEntry OBJECT-TYPE
      SYNTAX UpsBatteryFrameLayoutEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of layout position IDs of battery frames."
      INDEX  { batteryFrameIndex }
      ::= { upsBatteryFrameLayoutTable 1 }

   UpsBatteryFrameLayoutEntry ::=
      SEQUENCE {
         batteryFrameIndex
            INTEGER,
         batteryFramePositionID
            INTEGER
      }

   batteryFrameIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the battery frame."
      ::= { upsBatteryFrameLayoutEntry 1 }

   batteryFramePositionID OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Defines the position ID of each of the battery frames in the row."
      ::= { upsBatteryFrameLayoutEntry 2 }

-- the upsSideCarFrameLayoutTable subgroup
upsSideCarFrameLayoutTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of sidecar frames."
   ::= { upsPhysicalLayout 6 }

upsSideCarFrameLayoutTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsSideCarFrameLayoutEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Sidecar frame layout position ID table."
   ::= { upsPhysicalLayout 7 }

   upsSideCarFrameLayoutEntry OBJECT-TYPE
      SYNTAX UpsSideCarFrameLayoutEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of sidecar frame layout position IDs."
      INDEX  { sideCarFrameIndex }
      ::= { upsSideCarFrameLayoutTable 1 }

   UpsSideCarFrameLayoutEntry ::=
      SEQUENCE {
         sideCarFrameIndex
            INTEGER,
         sideCarFramePositionID
            INTEGER
      }

   sideCarFrameIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the sidecar frame."
      ::= { upsSideCarFrameLayoutEntry 1 }

   sideCarFramePositionID OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Defines the position ID of each of the sidecar frames in the row."
      ::= { upsSideCarFrameLayoutEntry 2 }

-- the upsPowerFrameLayoutTable subgroup
upsPowerFrameLayoutTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of power frames."
   ::= { upsPhysicalLayout 8 }

upsPowerFrameLayoutTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsPowerFrameLayoutEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Power frame layout position ID table."
   ::= { upsPhysicalLayout 9 }

   upsPowerFrameLayoutEntry OBJECT-TYPE
      SYNTAX UpsPowerFrameLayoutEntry
      ACCESS not-accessible
      STATUS mandatory
      DESCRIPTION
         "A list of power frame layout position IDs."
      INDEX  { powerFrameIndex }
      ::= { upsPowerFrameLayoutTable 1 }

   UpsPowerFrameLayoutEntry ::=
      SEQUENCE {
         powerFrameIndex
            INTEGER,
         powerFramePositionID
            INTEGER
      }

   powerFrameIndex OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "The index of the power frame."
      ::= { upsPowerFrameLayoutEntry 1 }

   powerFramePositionID OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Defines the position ID of each of the power frames in the row."
      ::= { upsPowerFrameLayoutEntry 2 }

-- the upsIntegratedATS group

upsIntegratedATSSelectedSource OBJECT-TYPE
    SYNTAX INTEGER  {
        noSourceSelected       (1),
        unknown                (2),
        sourceA                (3),
        sourceB                (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The source which is currently selected by the ATS to supply the UPS."
   ::= { upsIntegratedATS 1 }


upsIntegratedATSPreferredSource OBJECT-TYPE
   SYNTAX INTEGER {
        upsIntegratedATSNoSourcePreference  (1),
        upsIntegratedATSPreferSourceA       (2),
        upsIntegratedATSPreferSourceB       (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The preferred source of power when both sources are OK."
   ::= { upsIntegratedATS 2 }

upsIntegratedATSUpsReturnStaggering OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This is a delay factor applied to the retransfer of this UPS with integrated ATS.
       When multiple UPSs are in use from a single source, each UPS can have a unique delay value,
       which will reduce inrush by preventing all UPSs from transferring at the same time."
   ::= { upsIntegratedATS 3 }

upsIntegratedATSSourceTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of input sources for this integrated ATS."
   ::= { upsIntegratedATS 4 }

upsIntegratedATSSourceTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsIntegratedATSSourceEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting status and settings for the ATS input sources.
       The number of entries is contained in the upsIntegratedATSSourceTableSize OID."
   ::= { upsIntegratedATS 5 }

upsIntegratedATSSourceEntry OBJECT-TYPE
   SYNTAX UpsIntegratedATSSourceEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input source status to get."
   INDEX  { upsIntegratedATSSourceIndex}
   ::= { upsIntegratedATSSourceTable 1 }

UpsIntegratedATSSourceEntry ::=
   SEQUENCE {
      upsIntegratedATSSourceIndex          INTEGER,
      upsIntegratedATSSourceName           DisplayString,
      upsIntegratedATSSourceStatus         INTEGER,
      upsIntegratedATSLineFailDelay        INTEGER,
      upsIntegratedATSLineStabilityDelay   INTEGER
   }

upsIntegratedATSSourceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the input source entry."
   ::= { upsIntegratedATSSourceEntry 1 }

upsIntegratedATSSourceName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the input source. This OID is provided
       for informational purposes only."
   ::= { upsIntegratedATSSourceEntry  2 }

upsIntegratedATSSourceStatus OBJECT-TYPE
   SYNTAX INTEGER {
        upsIntegratedATSSourceGood      (1),
        upsIntegratedATSSourceBad       (2),
        upsIntegratedATSSourceUnknown   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the input source status."
   ::= { upsIntegratedATSSourceEntry  3 }

upsIntegratedATSLineFailDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The delay between a selected input source becoming bad, and the ATS switching away from that source.
       This delay is used to make sure that the line has truly failed before the ATS will be switched.
       Specified in seconds."
   ::= { upsIntegratedATSSourceEntry 4 }

upsIntegratedATSLineStabilityDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The delay between an unselected input source becoming good, and the ATS switching to that source.
       This delay is used to make sure that the line has truly returned before the ATS will be switched.
       Specified in seconds."
   ::= { upsIntegratedATSSourceEntry 5 }

-- the upsDCOutput group

upsDCOutputStatus            OBJECT IDENTIFIER ::=  { upsDCOutput 1 }

upsDCOutputStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC outputs on the UPS."
   ::= { upsDCOutputStatus 1 }

upsDCOutputStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UpsDCOutputStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Provides status information on UPS DC outputs.
       The number of entries is contained in the upsDCOutputStatusTableSize OID."
   ::= { upsDCOutputStatus 2 }

upsDCOutputStatusEntry OBJECT-TYPE
   SYNTAX UpsDCOutputStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The DC output."
   INDEX  { upsDCOutputStatusTableIndex}
   ::= { upsDCOutputStatusTable 1 }

UpsDCOutputStatusEntry ::=
   SEQUENCE {
      upsDCOutputStatusTableIndex         INTEGER,
      upsDCOutputStatusVoltageNominal     INTEGER,
      upsDCOutputStatusCurrentRating      INTEGER,
      upsDCOutputStatusVoltage            INTEGER,
      upsDCOutputStatusCurrent            INTEGER,
      upsDCOutputStatusAbnormalConditions DisplayString
   }

upsDCOutputStatusTableIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC output status entry."
   ::= { upsDCOutputStatusEntry 1 }

upsDCOutputStatusVoltageNominal OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The desired voltage for this output in tenths of VDC.
       When the output is on and there are no fault conditions,
       the actual voltage should be near the nominal."
   ::= { upsDCOutputStatusEntry 2 }

upsDCOutputStatusCurrentRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of current this output is able to supply in
       tenths of amperes."
   ::= { upsDCOutputStatusEntry 3 }

upsDCOutputStatusVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage measured on this output in tenths of VDC."
   ::= { upsDCOutputStatusEntry 4 }

upsDCOutputStatusCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current drawn by the load measured on this output
       in tenths of amperes."
   ::= { upsDCOutputStatusEntry 5 }

upsDCOutputStatusAbnormalConditions OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing flags representing active
       output faults. If the Network Card is unable to determine
       the state of the faults, this variable is set to 'UNKNOWN'.

       The flags are numbered 1 onward, read from left to
       right. The flags are defined as follows starting from 1:

       Flag  1: Output Overload
       Flag  2: Output Short Circuit
       Flag  3: Output Over Voltage
       Flag  4: <Not Used>
       Flag  5: Overtemperature
       Flag  6: Backfeed Relay Fault
       Flag  7: <Not Used>
       Flag  8: PFC Input Relay Fault
       Flag  9: <Not Used>
       Flag 10: Bypass Relay Fault
       Flag 11: <Not Used>
       Flag 12: <Not Used>
       Flag 13: <Not Used>
       Flag 14: <Not Used>
       Flag 15: <Not Used>
       Flag 16: <Not Used>
       Flag 17: <Not Used>
       Flag 18: <Not Used>
       Flag 19: Output Fault (over or undervoltage)
       Flag 20: Bus Converter Fault
       Flag 21: Sensor Fault
       Flag 21: <Not Used>
       Flag 22: <Not Used>
       Flag 23: <Not Used>
       Flag 24: <Not Used>
       Flag 25: <Not Used>
       Flag 26: <Not Used>
       Flag 27: <Not Used>
       Flag 28: <Not Used>
       Flag 29: <Not Used>
       Flag 30: <Not Used>
       Flag 31: <Not Used>
       Flag 32: <Not Used>"
   ::= { upsDCOutputStatusEntry 6 }

-- the serialPort2Config group

serialPort2Mode OBJECT-TYPE
   SYNTAX INTEGER  {
      localConsole(1),
      passthrough(2)
   }
   ACCESS read-write
   STATUS obsolete
   DESCRIPTION
      "Setting this variable to passthrough will enable mini's port2
       behave like a UPS port. Choosing localConsole will enable the port
       to be used as local console."
      ::= { serialPort2Config 1 }
-- the serialPort2Control group

setPulseOnTXD OBJECT-TYPE
   SYNTAX INTEGER  {
      noSetPulseOnTXD(1),
      setPulseOnTXD(2),
      setTXDLow(3),
      setTXDHigh(4)

   }
   ACCESS read-write
   STATUS obsolete
   DESCRIPTION
      "Setting this variable to setPulseOnTXD(2)
       causes adapter to generate a PULSE on TXD pin of serial port 2.
       The duration in the prototype implementation will be 1 second.

       Setting this value to noSetPulseOnTXD(1) has no
       effect.

       The value noSetPulseOnTXD(1) will always be returned
       when the variable is read.

       Setting this value to setTXDLow(3), or setTXDHigh(4) will keep TXD
       always low or high respectively."
      ::= { serialPort2Control 1 }

-- the sPDUIdent group

sPDUIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the PDU. This value
       is set at the factory."
   ::= { sPDUIdent 1 }

sPDUIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An 8 byte ID string identifying the PDU firmware revision.
       This value is set at the factory."
   ::= {  sPDUIdent 2 }


sPDUIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the PDU was manufactured in mm/dd/yy format.
       This value is set at the factory. The year 2000 will be
       represented by 00."
   ::= { sPDUIdent 3 }

sPDUIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 10-character string identifying the model number of
       the PDU internal. This value is set at the factory."
   ::= { sPDUIdent 4 }

sPDUIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 12-character string identifying the serial number of
       the PDU internal microprocessor. This value is set at
       the factory."
   ::= { sPDUIdent 5 }


-- the sPDUMasterControl group

sPDUMasterControlSwitch  OBJECT-TYPE
  SYNTAX INTEGER       {
      turnAllOnNow              (1),
      turnAllOnSequence         (2),
      turnAllOffNow             (3),
      rebootAllNow              (4),
      rebootAllSequence         (5),
      noCommand                 (6),
      turnAllOffSequence        (7)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to turnAllOnNow (1) will turn all outlets
       on immediately.

       Setting this OID to turnAllOnSequence (2) will turn all outlets
       on as defined by each outlet's sPDUOutletPowerOnTime OID value.

       Setting this OID to turnAllOff (3) will turn all outlets
       off immediately.

       Setting this OID to rebootAllNow (4) will reboot all outlets
       immediately.

       For MasterSwitch firmware version 1.X, setting this OID to
       rebootAllSequence (5) reboots all outlets, with power returned
       to the outlets in the sequence defined by each outlet's
       sPDUOutletPowerOnTime OID value.

       For MasterSwitch firmware version 2.X, setting this OID to
       rebootAllSequence (5) will cause a turnAllOffSequence to be performed.
       Once all outlets are off, the MasterSwitch will then delay the
       sPDUMasterConfigReboot OID time, and then perform a turnAllOnSequence.

       For MasterSwitch firmware version 2.X, setting this OID to
       turnAllOffSequence (7) will turn all outlets off as defined by
       each outlet's sPDUOutletPowerOffTime OID value.

       For MasterSwitch firmware version 1.X, setting this OID to
       turnAllOffSequence (7) will have no effect.

       Getting this OID will return the noCommand (6) value."

   ::= { sPDUMasterControl 1 }


sPDUMasterState  OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
          "Getting this OID will cause the status of all outlets to be
          returned. This OID is provided for informational purposes only.
          To change the outlet state, the user should use the sPDUOutletCtl
          OID in the sPDUOutletControlTable.

          The format of the data returned is a character string consisting
          of the word 'On' if the outlet is on or 'Off' if the outlet is
          off. At least one space will delimit each outlet entry in the
          string.

          If the outlet states are unknown, the character string 'Unknown'
          will be returned. This signifies that there is an inconsistency
          in the PDU. In the rare case that this should happen, the user
          is advised to shut down all equipment powered by the PDU and
          then cycle the PDU's power. This will put the PDU in a consistent
          state."

   ::= { sPDUMasterControl 2 }

sPDUMasterPending    OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
          "Getting this OID will cause the command pending status of all outlets to be returned.

          The format of the data returned is a character string consisting
          of the word 'Yes' if a command is pending for the outlet or 'No'
          if there is no command pending for the outlet. At least one
          space will delimit each outlet entry in the string.

          If the pending states are unknown, the character string 'Unknown'
          will be returned. This signifies that there is an inconsistency
          in the PDU. In the rare case that this should happen, the user
          is advised to shut down all equipment powered by the PDU and then
          cycle the PDU's power. This will put the PDU in a consistent state."
  ::= { sPDUMasterControl 3 }


-- the sPDUMasterConfig group

sPDUMasterConfigPowerOn  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, between when
        power is provided to the PDU and when the PDU
        provides basic master power to the outlets.

       Allowed values are:

       -1 never apply power automatically.
       0 apply power immediately.
       15 apply power in 15 seconds.
       30 apply power in 30 seconds.
       45 apply power in 45 seconds.
       60 apply power in 60 seconds  (1 minute).
       120 apply power in 120 seconds (2 minutes).
       300 apply power in 300 seconds (5 minutes).

       If a value other than a supported value is provided in a
       set request, the PDU interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."

   ::= { sPDUMasterConfig 1 }

sPDUMasterConfigReboot   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "During a reboot sequence, power is turned off and then
       back on. This OID defines the amount of time to wait,
       in seconds, after turning the power off, at the start
       of the sequence, before turning power back on, at the
       end of the reboot sequence.

       Allowed values are:

       5 wait 5 seconds between off/on.
       10 wait 10 seconds between off/on.
       15 wait 15 seconds between off/on.
       20 wait 20 seconds between off/on.
       30 wait 30 seconds between off/on.
       45 wait 45 seconds between off/on.
       60 wait 60 seconds (1 minute) between off/on.

       If a value other than a supported value is provided in a
       set request, the PDU interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used.

       This OID is read-only for the MasterSwitch version 2.X and is the
       maximum sPDUOutletRebootDuration OID of the individual outlets."

   ::= { sPDUMasterConfig 2 }

sPDUMasterConfigPDUName  OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the PDU."
   ::= { sPDUMasterConfig 3 }



-- the sPDUOutletControl group
sPDUOutletControlTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlets for the PDU."
   ::= { sPDUOutletControl 1 }


sPDUOutletControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual outlet switches. The number of
       entries is contained in the sPDUOutletControlTableSize OID."
   ::= { sPDUOutletControl 2 }

sPDUOutletControlEntry OBJECT-TYPE
   SYNTAX SPDUOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to control."
   INDEX  { sPDUOutletControlIndex}
   ::= { sPDUOutletControlTable 1 }

SPDUOutletControlEntry ::=
   SEQUENCE {
      sPDUOutletControlIndex  INTEGER,
      sPDUOutletPending       INTEGER,
      sPDUOutletCtl           INTEGER,
      sPDUOutletCtlName       DisplayString
   }

sPDUOutletControlIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletControlEntry 1 }

sPDUOutletPending OBJECT-TYPE
   SYNTAX INTEGER{
        commandPending        (1),
        noCommandPending      (2),
        commandPendingUnknown (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Reports whether the current outlet has a pending command.

       If the commandPendingUnknown (3) value is returned, all
       devices powered by the PDU should be shut down. The PDU's
       power should then be cycled to clear this condition."

   ::= { sPDUOutletControlEntry 2 }

sPDUOutletCtl OBJECT-TYPE
   SYNTAX INTEGER {
        outletOn              (1),
        outletOff             (2),
        outletReboot          (3),
        outletUnknown         (4),
        outletOnWithDelay     (5),
        outletOffWithDelay    (6),
        outletRebootWithDelay (7)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the outletOn (1) value will be returned.
       If the outlet is off, the outletOff (2) value will be
       returned.

       If the state of the outlet cannot be determined, the
       outletUnknown (4) value will be returned. If the
       outletUnknown condition should occur, all devices
       powered by the PDU should be shut down. The PDU's power
       should then be cycled to clear this condition.

       Setting this variable to outletOn (1) will turn the outlet on.

       Setting this variable to outletOff (2) will turn the outlet off.

       Setting this variable to outletReboot (3) will reboot the outlet.

       Setting this variable to outletOnWithDelay (5) will turn the outlet on
       after the sPDUOutletPowerOnTime OID has elapsed. This option is not
       valid for MasterSwitch firmware version 1.X.

       Setting this variable to outletOffWithDelay (6) will turn the outlet off
       after the sPDUOutletPowerOffTime OID has elapsed. This option is not valid
       for MasterSwitch firmware version 1.X.

       Setting this variable to outletRebootWithDelay (7) will turn the outlet off
       after the sPDUOutletPowerOffTime OID has elapsed, wait the sPDUOutletRebootDuration
       OID time, then turn the outlet back on.
       This option is not valid for MasterSwitch firmware version 1.X."

   ::= { sPDUOutletControlEntry 3 }

sPDUOutletCtlName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 20 characters.
       This OID is provided for informational purposes only.
       This value is set by the sPDUOutletName OID."

   ::= { sPDUOutletControlEntry  4 }

-- the sPDUOutletConfig group
sPDUOutletConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlets for the PDU."
   ::= { sPDUOutletConfig 1 }

sPDUOutletConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The list of outlets to configure. The number of
       entries is defined by the sPDUOutletConfigTableSize
       OID."

   ::= { sPDUOutletConfig 2  }

sPDUOutletConfigEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to control."
   INDEX  { sPDUOutletConfigIndex}
   ::= { sPDUOutletConfigTable 1 }

SPDUOutletConfigEntry ::=
   SEQUENCE {
      sPDUOutletConfigIndex    INTEGER,
      sPDUOutletPowerOnTime    INTEGER,
      sPDUOutletName           DisplayString,
      sPDUOutletPowerOffTime   INTEGER,
      sPDUOutletRebootDuration INTEGER
   }

sPDUOutletConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigEntry 1 }

sPDUOutletPowerOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering on when the MasterSwitch is powered on.

       Allowed values are:

       -1 never power on automatically.
       0  power on with the Master Switch.
       15 power on 15 seconds after the MasterSwitch has power applied.
       30 power on 30 seconds after the MasterSwitch has power applied.
       45 power on 45 seconds after the MasterSwitch has power applied.
       60 power on 60 seconds (1 minute) after the MasterSwitch has power applied.
       120 power on 120 seconds (2 minutes) after the MasterSwitch has power applied.
       300 power on 300 seconds (5 minutes) after the MasterSwitch has power applied.

       If a value other than a supported value is provided in a
       set request, the PDU interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."

   ::= { sPDUOutletConfigEntry 2 }

sPDUOutletName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 20 characters."

   ::= { sPDUOutletConfigEntry  3 }

sPDUOutletPowerOffTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering off.

       Allowed values are:

       -1 never power off automatically.
       0  power off with the MasterSwitch.
       15 power off 15 seconds after being commanded.
       30 power off 30 seconds after being commanded.
       45 power off 45 seconds after being commanded.
       60 power off 60 seconds (1 minute) after being commanded.
       120 power off 120 seconds (2 minutes) after being commanded.
       300 power off 300 seconds (5 minutes) after being commanded.

       If a value other than a supported value is provided in a
       set request, the PDU interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used.

       This OID is not available for MasterSwitch firmware version 1.X."

   ::= { sPDUOutletConfigEntry 4 }

sPDUOutletRebootDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "During a reboot sequence, power is turned off and then
       back on. This OID defines the amount of time to wait,
       in seconds, after turning the power off, at the start
       of the sequence, before turning power back on, at the
       end of the reboot sequence.

       Allowed values are:

       5 wait 5 seconds between off/on.
       10 wait 10 seconds between off/on.
       15 wait 15 seconds between off/on.
       20 wait 20 seconds between off/on.
       30 wait 30 seconds between off/on.
       45 wait 45 seconds between off/on.
       60 wait 60 seconds (1 minute) between off/on.

       If a value other than a supported value is provided in a
       set request, the PDU interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used.

       This OID is not available for MasterSwitch firmware version 1.X."

   ::= { sPDUOutletConfigEntry 5 }


-- the sPDUIdentVM group

sPDUIdentVMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch VMs controllable
       by this IP address."
   ::= { sPDUIdentVM 1 }


sPDUIdentVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUIdentVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual MasterSwitch VMs.
       The number of entries is contained in the
       sPDUIdentVMTableSize OID."
   ::= { sPDUIdentVM 2 }

sPDUIdentVMEntry OBJECT-TYPE
   SYNTAX SPDUIdentVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch VMs to query."
   INDEX  { sPDUIdentVMIndex}
   ::= { sPDUIdentVMTable 1 }

SPDUIdentVMEntry ::=
   SEQUENCE {
      sPDUIdentVMIndex                   INTEGER,
      sPDUIdentNameVM                    DisplayString,
      sPDUIdentHardwareRevVM             DisplayString,
      sPDUIdentFirmwareRevVM             DisplayString,
      sPDUIdentDateOfManufactureVM       DisplayString,
      sPDUIdentModelNumberVM             DisplayString,
      sPDUIdentSerialNumberVM            DisplayString
   }

sPDUIdentVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM entry."
   ::= { sPDUIdentVMEntry 1 }

sPDUIdentNameVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 23-character string identifying the
       MasterSwitch VM. "
   ::= { sPDUIdentVMEntry 2 }

sPDUIdentHardwareRevVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware version of the MasterSwitch VM.
       This value is set at the factory."
   ::= { sPDUIdentVMEntry 3 }

sPDUIdentFirmwareRevVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An 6-character ID string identifying the MasterSwitch VM
       firmware version. This value is set at the factory."
   ::= {  sPDUIdentVMEntry 4 }


sPDUIdentDateOfManufactureVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the MasterSwitch VM was manufactured in mm/dd/yyyy format.
       This value is set at the factory. "
   ::= { sPDUIdentVMEntry 5 }

sPDUIdentModelNumberVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 17-character string identifying the model number of
       the MasterSwitch VM. This value is set at the factory."
   ::= { sPDUIdentVMEntry 6 }

sPDUIdentSerialNumberVM OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 17-character string identifying the serial number of
       the MasterSwitch VM. This value is set at the factory."
   ::= { sPDUIdentVMEntry 7 }


-- the sPDUMasterControlVM group

sPDUMasterControlVMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch VMs controllable
       by this IP address."
   ::= { sPDUMasterControlVM 1 }


sPDUMasterControlVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterControlVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of the individual MasterSwitch VMs.
       The number of entries is contained in the
       sPDUMasterControlVMTableSize OID."
   ::= { sPDUMasterControlVM 2 }

sPDUMasterControlVMEntry OBJECT-TYPE
   SYNTAX SPDUMasterControlVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch VMs to control."
   INDEX  { sPDUMasterControlVMIndex}
   ::= { sPDUMasterControlVMTable 1 }

SPDUMasterControlVMEntry ::=
   SEQUENCE {
      sPDUMasterControlVMIndex           INTEGER,
      sPDUMasterControlVMName            DisplayString,
      sPDUMasterControlVMCommand         INTEGER
   }

sPDUMasterControlVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM entry."
   ::= { sPDUMasterControlVMEntry 1 }

sPDUMasterControlVMName  OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigVMName OID."
   ::= { sPDUMasterControlVMEntry 2 }

sPDUMasterControlVMCommand  OBJECT-TYPE
  SYNTAX INTEGER       {
      noCommandAllVM               (1),
      immediateAllOnVM             (2),
      immediateAllOffVM            (3),
      immediateAllRebootVM         (4),
      delayedAllOnVM               (5),
      delayedAllOffVM              (6),
      sequencedAllRebootVM         (7),
      delayedAllRebootVM           (8),
      delayedSequenceAllRebootVM   (9),
      cancelAllPendingCommandsVM   (10),
      audioAlarmMute               (11)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to immediateAllOnVM (2) will turn all outlets
       on immediately.

       Setting this OID to immediateAllOffVM (3) will turn all outlets
       off immediately.

       Setting this OID to immediateAllRebootVM (4) will reboot all outlets
       immediately.

       Setting this OID to delayedAllOnVM (5) will turn all outlets on as
       defined by each outlet's sPDUOutletConfigVMPowerOnTime OID value.

       Setting this OID to delayedAllOffVM (6) will turn all outlets
       off as defined by each outlet's sPDUOutletConfigVMPowerOffTime OID value.

       Setting this OID to sequencedAllRebootVM (7) will cause a
       immediateAllOffVM command to be performed. The MasterSwitch VM will
       then delay the sPDUMasterStatusVMRebootDuration OID time, and then
       perform a delayedAllOnVM command.

       Setting this OID to delayedAllRebootVM (8) will cause a delayedAllOffVM
       command to be performed. Each outlet will then wait its
       sPDUOutletConfigVMRebootDuration before returning power to the outlet.

       Setting this OID to delayedSequenceAllRebootVM (9) will cause a
       delayedAllOffVM command to be performed. Once all outlets are off,
       the MasterSwitch VM will then delay the sPDUMasterStatusVMRebootDuration
       OID time, and then perform a delayedAllOnVM command.

       Setting this OID to cancelAllPendingCommandsVM (10) will cause all pending
       commands on the MasterSwitch VM to be canceled.


       Setting this OID to audioAlarmMute (11) will temporarily silence the audible
       alarm for the duration of the current overload condition. The audible alarm
       will be activated on subsequent overload alarms.

       Getting this OID will return the noCommandAllVM (1) value."
   ::= { sPDUMasterControlVMEntry 3 }


-- the sPDUMasterConfigVM group

sPDUMasterConfigVMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch VMs configurable
       by this IP address."
   ::= { sPDUMasterConfigVM 1 }


sPDUMasterConfigVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterConfigVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of the individual MasterSwitch VMs.
       The number of entries is contained in the
       sPDUMasterConfigVMTableSize OID."
   ::= { sPDUMasterConfigVM 2 }

sPDUMasterConfigVMEntry OBJECT-TYPE
   SYNTAX SPDUMasterConfigVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch VMs to configure."
   INDEX  { sPDUMasterConfigVMIndex}
   ::= { sPDUMasterConfigVMTable 1 }

SPDUMasterConfigVMEntry ::=
   SEQUENCE {
      sPDUMasterConfigVMIndex                     INTEGER,
      sPDUMasterConfigVMName                      DisplayString,
      sPDUMasterConfigVMColdstartDelay            INTEGER,
      sPDUMasterConfigVMAudioAlarmActivated       INTEGER,
      sPDUMasterConfigVMHighLoadWarningThreshold  INTEGER,
      sPDUMasterConfigVMLowLoadWarningThreshold   INTEGER,
      sPDUMasterConfigVMOverloadRestriction       INTEGER
   }

sPDUMasterConfigVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM entry."
   ::= { sPDUMasterConfigVMEntry 1 }


sPDUMasterConfigVMName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. Maximum size is 23 characters."
   ::= { sPDUMasterConfigVMEntry 2 }

sPDUMasterConfigVMColdstartDelay  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, between when
        power is provided to the MasterSwitch VM and
        when the MasterSwitch VM provides basic master
        power to the outlets.

       Allowed values are:

       -1 never apply power automatically.
       0 apply power immediately.
       15 apply power in 15 seconds.
       30 apply power in 30 seconds.
       45 apply power in 45 seconds.
       60 apply power in 60 seconds  (1 minute).
       120 apply power in 120 seconds (2 minutes).
       300 apply power in 300 seconds (5 minutes).

       If a value other than a supported value is provided in a
       set request, the MasterSwitch VM interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { sPDUMasterConfigVMEntry 3 }

sPDUMasterConfigVMAudioAlarmActivated  OBJECT-TYPE
   SYNTAX INTEGER       {
      audioAlarmActiveNever               (1),
      audioAlarmActiveOnOverload          (2),
      audioAlarmActiveOnOverloadImminent  (3)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to audioAlarmActiveNever (1) will disable
       the audio alarm on the MasterSwitch VM.

       Setting this OID to audioAlarmActiveOnOverload (2) will
       activate the audio alarm on the MasterSwitch VM when an
       overload condition is present.

       Setting this OID to audioAlarmActiveOnOverloadImminent (3)
       will activate the audio alarm on the MasterSwitch VM when
       the load on the MasterSwitch VM has surpassed the
       sPDUMasterConfigVMHighLoadWarningThreshold OID value."
   ::= { sPDUMasterConfigVMEntry 4 }

sPDUMasterConfigVMHighLoadWarningThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing an overload condition. It is
       represented as a percentage of full load."
   ::= { sPDUMasterConfigVMEntry 5 }

sPDUMasterConfigVMLowLoadWarningThreshold OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing a low consumption condition. It is
       represented as a percentage of full load."
   ::= { sPDUMasterConfigVMEntry 6 }

sPDUMasterConfigVMOverloadRestriction OBJECT-TYPE
   SYNTAX INTEGER       {
      alwaysAllowTurnON         (1),
      restrictOnWarning         (2),
      restrictOnOverload        (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID controls the behavior of the MasterSwitch VM
       when an overload condition is possible and additional
       outlets are requested to be turned on.

       Setting this OID to alwaysAllowTurnON (1) will always allow
       the outlets to turn on.

       Setting this OID to restrictOnWarning (2) will not allow
       outlets to turn on if the sPDUMasterConfigVMHighLoadWarningThreshold
       OID is exceeded.

       Setting this OID to restrictOnOverload (3) will not allow
       outlets to turn on if the MasterSwitch Vm is in an
       overload condition."
   ::= { sPDUMasterConfigVMEntry 7 }

-- the sPDUMasterStatusVM group

sPDUMasterStatusVMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch VMs at
       this IP address."
   ::= { sPDUMasterStatusVM 1 }


sPDUMasterStatusVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterStatusVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for gathering of status from the individual
       MasterSwitch VMs. The number of entries is contained
       in the sPDUMasterStatusVMTableSize OID."
   ::= { sPDUMasterStatusVM 2 }

sPDUMasterStatusVMEntry OBJECT-TYPE
   SYNTAX SPDUMasterStatusVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch VMs to gather status from."
   INDEX  { sPDUMasterStatusVMIndex}
   ::= { sPDUMasterStatusVMTable 1 }

SPDUMasterStatusVMEntry ::=
   SEQUENCE {
      sPDUMasterStatusVMIndex                     INTEGER,
      sPDUMasterStatusVMName                      DisplayString,
      sPDUMasterStatusVMCommandPending            INTEGER,
      sPDUMasterStatusVMOverloadCondition         INTEGER,
      sPDUMasterStatusVMLowLoadCondition          INTEGER,
      sPDUMasterStatusVMCurrentLoad               INTEGER,
      sPDUMasterStatusVMMaxLoad                   INTEGER,
      sPDUMasterStatusVMOutletCount               INTEGER,
      sPDUMasterStatusVMRebootDuration            INTEGER
   }

sPDUMasterStatusVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM entry."
   ::= { sPDUMasterStatusVMEntry 1 }

sPDUMasterStatusVMName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. Maximum size is 23 characters."
   ::= { sPDUMasterStatusVMEntry 2 }

sPDUMasterStatusVMCommandPending OBJECT-TYPE
   SYNTAX INTEGER       {
      commandPendingMasterTrueVM      (1),
      commandPendingMasterFalseVM     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return commandPendingMasterTrueVM (1)
       if the MasterSwitch VM has a pending command on any of its
       outlets.

       commandPendingMasterFalseVM (2) will be returned if there are
       no pending commands."
   ::= { sPDUMasterStatusVMEntry 3 }

sPDUMasterStatusVMOverloadCondition OBJECT-TYPE
   SYNTAX INTEGER       {
      overloadConditionTrueVM         (1),
      overloadConditionFalseVM        (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return overloadConditionTrueVM (1)
       if the sPDUMasterConfigVMHighLoadWarningThreshold OID is
       violated.

       overloadConditionFalseVM (2) will be returned if the
       sPDUMasterConfigVMHighLoadWarningThreshold OID is not
       violated."
   ::= { sPDUMasterStatusVMEntry 4 }

sPDUMasterStatusVMLowLoadCondition OBJECT-TYPE
   SYNTAX INTEGER       {
      lowLoadConditionTrueVM            (1),
      lowLoadConditionFalseVM           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return lowLoadConditionTrueVM (1)
       if the sPDUMasterConfigVMLowLoadWarningThreshold OID is
       violated.

       lowLoadConditionFalseVM (2) will be returned if the
       sPDUMasterConfigVMHighLoadWarningThreshold OID is not
       violated. "
   ::= { sPDUMasterStatusVMEntry 5 }

sPDUMasterStatusVMCurrentLoad   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the total amount of power
       being consumed by the load. It is represented as a
       percentage of full load."
   ::= { sPDUMasterStatusVMEntry 6 }

sPDUMasterStatusVMMaxLoad   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the total amount of power
       that this MasterSwitch VM can provide. It is represented
       in Amps."
   ::= { sPDUMasterStatusVMEntry 7 }

sPDUMasterStatusVMOutletCount   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of controllable
       outlets for this MasterSwitch VM."
   ::= { sPDUMasterStatusVMEntry 8 }

sPDUMasterStatusVMRebootDuration   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the largest
       sPDUOutletConfigVMRebootDuration OID time
       for this MasterSwitch VM."
   ::= { sPDUMasterStatusVMEntry 9 }

-- the sPDUOutletControlVM group


sPDUOutletControlVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletControlVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual outlet switches. The number of
       entries is contained in the sPDUMasterStatusOutletCount OID."
   ::= { sPDUOutletControlVM 1 }

sPDUOutletControlVMEntry OBJECT-TYPE
   SYNTAX SPDUOutletControlVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to control."
   INDEX  { sPDUOutletControlVMIndex, sPDUOutletControlVMOutletIndex }
   ::= { sPDUOutletControlVMTable 1 }

SPDUOutletControlVMEntry ::=
   SEQUENCE {
      sPDUOutletControlVMIndex         INTEGER,
      sPDUOutletControlVMName          DisplayString,
      sPDUOutletControlVMOutletIndex   INTEGER,
      sPDUOutletControlVMOutletName    DisplayString,
      sPDUOutletControlVMOutletCommand INTEGER
   }

sPDUOutletControlVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM."
   ::= { sPDUOutletControlVMEntry 1 }

sPDUOutletControlVMName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. Maximum size is 23 characters.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletControlVMEntry 2 }

sPDUOutletControlVMOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletControlVMEntry 3 }

sPDUOutletControlVMOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 23 characters.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletControlVMEntry 4 }

sPDUOutletControlVMOutletCommand OBJECT-TYPE
   SYNTAX INTEGER {
      immediateOnVM             (1),
      immediateOffVM            (2),
      immediateRebootVM         (3),
      delayedOnVM               (4),
      delayedOffVM              (5),
      delayedRebootVM           (6),
      cancelPendingCommandVM    (7)

   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the immediateOnVM (1) value will be returned.
       If the outlet is off, the immediateOffVM (2) value will be
       returned.


       Setting this variable to immediateOnVM (1) will immediately turn the outlet on.

       Setting this variable to immediateOffVM (2) will immediately turn the outlet off.

       Setting this variable to immediateRebootVM (3) will immediately reboot the outlet.

       Setting this variable to delayedOnVM (4) will turn the outlet on
       after the sPDUOutletConfigVMPowerOnTime OID time has elapsed.

       Setting this variable to delayedOffVM (5) will turn the outlet off
       after the sPDUOutletConfigVMPowerOffTime OID time has elapsed.

       Setting this variable to delayedRebootVM  (6) will cause the
       MasterSwitch VM to perform a delayedOffVM command, wait the
       sPDUOutletConfigVMRebootDuration OID time, and then perform the
       immediateOnVM command.

       Setting this variable to cancelPendingCommandVM (7) will cause any
       pending command to this outlet to be canceled."
   ::= { sPDUOutletControlVMEntry 5 }

-- the sPDUOutletConfigVM group

sPDUOutletConfigVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the sPDUMasterStatusOutletCount OID."
   ::= { sPDUOutletConfigVM 1 }

sPDUOutletConfigVMEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { sPDUOutletConfigVMIndex, sPDUOutletConfigVMOutletIndex }
   ::= { sPDUOutletConfigVMTable 1 }

SPDUOutletConfigVMEntry ::=
   SEQUENCE {
      sPDUOutletConfigVMIndex          INTEGER,
      sPDUOutletConfigVMName           DisplayString,
      sPDUOutletConfigVMOutletIndex    INTEGER,
      sPDUOutletConfigVMOutletName     DisplayString,
      sPDUOutletConfigVMPowerOnTime    INTEGER,
      sPDUOutletConfigVMPowerOffTime   INTEGER,
      sPDUOutletConfigVMRebootDuration INTEGER
   }

sPDUOutletConfigVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM."
   ::= { sPDUOutletConfigVMEntry 1 }

sPDUOutletConfigVMName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. Maximum size is 23 characters."
   ::= { sPDUOutletConfigVMEntry 2 }

sPDUOutletConfigVMOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigVMEntry 3 }


sPDUOutletConfigVMOutletName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 23 characters."
   ::= { sPDUOutletConfigVMEntry 4 }

sPDUOutletConfigVMPowerOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering on at coldstart or when a command that requires
       a turn-on delay is issued.

       Allowed values are:

       -1 never power on.
       0  power on immediately.
       15 power on 15 seconds after being commanded.
       30 power on 30 seconds after being commanded.
       45 power on 45 seconds after being commanded.
       60 power on 60 seconds (1 minute) after being commanded.
       120 power on 120 seconds (2 minutes) after being commanded.
       300 power on 300 seconds (5 minutes) after being commanded.

       If a value other than a supported value is provided in a
       set request, the MasterSwitch VM interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { sPDUOutletConfigVMEntry 5 }


sPDUOutletConfigVMPowerOffTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering off when a command that requires
       a turn-off delay is issued.


       Allowed values are:

       -1 never power off automatically.
       0  power off immediately.
       15 power off 15 seconds after being commanded.
       30 power off 30 seconds after being commanded.
       45 power off 45 seconds after being commanded.
       60 power off 60 seconds (1 minute) after being commanded.
       120 power off 120 seconds (2 minutes) after being commanded.
       300 power off 300 seconds (5 minutes) after being commanded.

       If a value other than a supported value is provided in a
       set request, the MasterSwitch VM interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { sPDUOutletConfigVMEntry 6 }

sPDUOutletConfigVMRebootDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "During a reboot sequence, power is turned off and then
       back on. This OID defines the amount of time to wait,
       in seconds, after turning the power off, at the start
       of the sequence, before turning power back on, at the
       end of the reboot sequence.

       Allowed values are:

       5 wait 5 seconds between off/on.
       10 wait 10 seconds between off/on.
       15 wait 15 seconds between off/on.
       20 wait 20 seconds between off/on.
       30 wait 30 seconds between off/on.
       45 wait 45 seconds between off/on.
       60 wait 60 seconds (1 minute) between off/on.

       If a value other than a supported value is provided in a
       set request, the MasterSwitch VM interprets it as the next lower
       acceptable value.  If the provided value is lower than
       the lowest acceptable value, the lowest acceptable
       value is used."
   ::= { sPDUOutletConfigVMEntry 7 }

-- the sPDUOutletStatusVM group

sPDUOutletStatusVMTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletStatusVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of individual outlets. The number of
       entries is contained in the sPDUMasterStatusOutletCount OID."
   ::= { sPDUOutletStatusVM 1 }

sPDUOutletStatusVMEntry OBJECT-TYPE
   SYNTAX SPDUOutletStatusVMEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to gather status from."
   INDEX  { sPDUOutletStatusVMIndex, sPDUOutletStatusVMOutletIndex }
   ::= { sPDUOutletStatusVMTable 1 }

SPDUOutletStatusVMEntry ::=
   SEQUENCE {
      sPDUOutletStatusVMIndex          INTEGER,
      sPDUOutletStatusVMName           DisplayString,
      sPDUOutletStatusVMOutletIndex    INTEGER,
      sPDUOutletStatusVMOutletName     DisplayString,
      sPDUOutletStatusVMOutletState    INTEGER,
      sPDUOutletStatusVMCommandPending INTEGER
   }

sPDUOutletStatusVMIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch VM."
   ::= { sPDUOutletStatusVMEntry 1 }

sPDUOutletStatusVMName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch VM. Maximum size is 23 characters."
   ::= { sPDUOutletStatusVMEntry 2 }

sPDUOutletStatusVMOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletStatusVMEntry 3 }

sPDUOutletStatusVMOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 23 characters."
   ::= { sPDUOutletStatusVMEntry 4 }

sPDUOutletStatusVMOutletState OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusVMOn              (1),
        outletStatusVMOff             (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the outletStatusOnVM (1) value will be returned.
       If the outlet is off, the outletStatusOffVM (2) value will be
       returned. "
   ::= { sPDUOutletStatusVMEntry 5 }

sPDUOutletStatusVMCommandPending    OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusVMCommandPending    (1),
        outletStatusVMNoCommandPending  (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the command pending
        state of the outlet. If a command is pending on the
        outlet, the outletStatusVMCommandPending (1) value
        will be returned. If there is not a command pending
        on the outlet, the outletStatusVMNoCommandPending (2)
        will be returned."
   ::= { sPDUOutletStatusVMEntry 6 }

-- the sPDUIdentMSP group

sPDUIdentMSPTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch pluses controllable
       by this IP address."
   ::= { sPDUIdentMSP 1 }


sPDUIdentMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUIdentMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual MasterSwitch pluses.
       The number of entries is contained in the
       sPDUIdentMSPTableSize OID."
   ::= { sPDUIdentMSP 2 }

sPDUIdentMSPEntry OBJECT-TYPE
   SYNTAX SPDUIdentMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch pluses to query."
   INDEX  { sPDUIdentMSPIndex}
   ::= { sPDUIdentMSPTable 1 }

SPDUIdentMSPEntry ::=
   SEQUENCE {
      sPDUIdentMSPIndex                   INTEGER,
      sPDUIdentNameMSP                   DisplayString,
      sPDUIdentHardwareRevMSP            DisplayString,
      sPDUIdentFirmwareRevMSP            DisplayString,
      sPDUIdentDateOfManufactureMSP      DisplayString,
      sPDUIdentModelNumberMSP            DisplayString,
      sPDUIdentSerialNumberMSP           DisplayString
   }

sPDUIdentMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus entry."
   ::= { sPDUIdentMSPEntry 1 }

sPDUIdentNameMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUIdentMSPEntry 2 }

sPDUIdentHardwareRevMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware version of the MasterSwitch plus.
       This value is set at the factory."
   ::= { sPDUIdentMSPEntry 3 }

sPDUIdentFirmwareRevMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An 6-character ID string identifying the MasterSwitch plus
       firmware version. This value is set at the factory."
   ::= {  sPDUIdentMSPEntry 4 }

sPDUIdentDateOfManufactureMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the MasterSwitch plus was manufactured in mm/dd/yyyy format.
       This value is set at the factory. "
   ::= { sPDUIdentMSPEntry 5 }

sPDUIdentModelNumberMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 17-character string identifying the model number of
       the MasterSwitch plus. This value is set at the factory."
   ::= { sPDUIdentMSPEntry 6 }

sPDUIdentSerialNumberMSP OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 17-character string identifying the serial number of
       the MasterSwitch plus. This value is set at the factory."
   ::= { sPDUIdentMSPEntry 7 }


-- the sPDUMasterControlMSP group

sPDUMasterControlMSPTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch pluses controllable
       by this IP address."
   ::= { sPDUMasterControlMSP 1 }

sPDUMasterControlMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterControlMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of the individual MasterSwitch pluses.
       The number of entries is contained in the
       sPDUMasterControlMSPTableSize OID."
   ::= { sPDUMasterControlMSP 2 }

sPDUMasterControlMSPEntry OBJECT-TYPE
   SYNTAX SPDUMasterControlMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch pluses to control."
   INDEX  { sPDUMasterControlMSPIndex}
   ::= { sPDUMasterControlMSPTable 1 }

SPDUMasterControlMSPEntry ::=
   SEQUENCE {
      sPDUMasterControlMSPIndex           INTEGER,
      sPDUMasterControlMSPName            DisplayString,
      sPDUMasterControlMSPCommand         INTEGER
   }

sPDUMasterControlMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus entry."
   ::= { sPDUMasterControlMSPEntry 1 }

sPDUMasterControlMSPName  OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUMasterControlMSPEntry 2 }

sPDUMasterControlMSPCommand  OBJECT-TYPE
  SYNTAX INTEGER       {
      noCommandAllMSP              (1),
      immediateAllOnMSP            (2),
      sequencedAllOnMSP            (3),
      immediateAllOffMSP           (4),
      gracefulAllRebootMSP         (5),
      immediateAllRebootMSP        (6),
      gracefulAllShutdownMSP       (7),
      overrideAllBatCapThreshMSP   (8),
      cancelAllPendingCommandsMSP  (9),
      restoreFactoryDefaultsMSP   (10)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to immediateAllOnMSP (2) will turn all outlets
       on immediately.

       Setting this OID to sequencedAllOnMSP (3) will turn all outlets
       on as defined by each outlet's sPDUOutletConfigMSPPowerOnDelay OID value.

       Setting this OID to immediateAllOffMSP (4) will turn all outlets
       off immediately.

       Setting this OID to gracefulAllRebootMSP (5) will reboot all outlets
       (after the device running PowerChute confirms shutdown) as defined
       by each outlet's sPDUOutletConfigMSPRebootDuration OID time value.

       Setting this OID to immediateAllRebootMSP (6) will reboot all outlets
       immediately.

       Setting this OID to gracefulAllShutdownMSP (7) will shutdown all outlets
       (after the device running PowerChute confirms shutdown) as defined
       by each outlet's sPDUOutletConfigMSPPowerOffDelay OID time value.  Each
       outlet will then turn on after the sum of its
       sPDUOutletConfigMSPRestartDelay and sPDUOutletConfigMSPPowerOnDelay OID
       values.

       Setting this OID to overrideAllBatCapThreshMSP (8) will cause the
       outlet to ignore the Battery Capacity Threshold and proceed turning on
       the outlets as defined by each outlet's sPDUOutletConfigMSPPowerOnDelay
       OID value.

       Setting this OID to cancelAllPendingCommandsMSP (9) will cause all pending
       commands on the MasterSwitch plus to be canceled.

       Setting this OID to restoreFactoryDefaultsMSP (10) will cause the settings of
       the MasterSwitch plus to be restored to the factory defaults.

       Getting this OID will return the noCommandAllMSP (1) value."
   ::= { sPDUMasterControlMSPEntry 3 }


-- the sPDUMasterConfigMSP group

sPDUMasterConfigMSPTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch pluses configurable
       by this IP address."
   ::= { sPDUMasterConfigMSP 1 }

sPDUMasterConfigMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterConfigMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of the individual MasterSwitch pluses.
       The number of entries is contained in the
       sPDUMasterConfigMSPTableSize OID."
   ::= { sPDUMasterConfigMSP 2 }

sPDUMasterConfigMSPEntry OBJECT-TYPE
   SYNTAX SPDUMasterConfigMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch pluses to configure."
   INDEX  { sPDUMasterConfigMSPIndex}
   ::= { sPDUMasterConfigMSPTable 1 }

SPDUMasterConfigMSPEntry ::=
   SEQUENCE {
      sPDUMasterConfigMSPIndex                     INTEGER,
      sPDUMasterConfigMSPName                      DisplayString,
      sPDUMasterConfigMSPPowerOnTimeDelay          INTEGER,
      sPDUMasterConfigMSPManualButton              INTEGER
   }

sPDUMasterConfigMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus entry."
   ::= { sPDUMasterConfigMSPEntry 1 }

sPDUMasterConfigMSPName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. Maximum size is 23 characters."
   ::= { sPDUMasterConfigMSPEntry 2 }

sPDUMasterConfigMSPPowerOnTimeDelay  OBJECT-TYPE
   SYNTAX INTEGER (0..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, between when
        power is provided to the MasterSwitch plus and
        when the MasterSwitch plus provides basic master
        power to the outlets.

       Allowed values are:

       0 - 9999 seconds (0 - 2hrs, 46 mins, 39 secs).
       0 indicates to apply power immediately."
   ::= { sPDUMasterConfigMSPEntry 3 }


sPDUMasterConfigMSPManualButton  OBJECT-TYPE
   SYNTAX INTEGER       {
      manualButtonDisabled              (1),
      manualButtonEnabled               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to manualButtonDisabled (1) will disable
       the manual button on the MasterSwitch plus.

       Setting this OID to manualButtonEnabled (2) will enable
       the manual button on the MasterSwitch plus."
   ::= { sPDUMasterConfigMSPEntry 4 }

-- the sPDUMasterStatusMSP group

sPDUMasterStatusMSPTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of MasterSwitch pluses at
       this IP address."
   ::= { sPDUMasterStatusMSP 1 }


sPDUMasterStatusMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUMasterStatusMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for gathering of status from the individual
       MasterSwitch pluses. The number of entries is contained
       in the sPDUMasterStatusMSPTableSize OID."
   ::= { sPDUMasterStatusMSP 2 }

sPDUMasterStatusMSPEntry OBJECT-TYPE
   SYNTAX SPDUMasterStatusMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The MasterSwitch pluses to gather status from."
   INDEX  { sPDUMasterStatusMSPIndex}
   ::= { sPDUMasterStatusMSPTable 1 }

SPDUMasterStatusMSPEntry ::=
   SEQUENCE {
      sPDUMasterStatusMSPIndex                     INTEGER,
      sPDUMasterStatusMSPName                      DisplayString,
      sPDUMasterStatusMSPOutletCount               INTEGER
   }

sPDUMasterStatusMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus entry."
   ::= { sPDUMasterStatusMSPEntry 1 }

sPDUMasterStatusMSPName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUMasterStatusMSPEntry 2 }

sPDUMasterStatusMSPOutletCount   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of controllable
       outlets for this MasterSwitch plus."
   ::= { sPDUMasterStatusMSPEntry 3 }

-- the sPDUOutletControlMSP group

sPDUOutletControlMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletControlMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual outlet switches. The number of
       entries is contained in the sPDUMasterStatusMSPOutletCount OID."
   ::= { sPDUOutletControlMSP 1 }

sPDUOutletControlMSPEntry OBJECT-TYPE
   SYNTAX SPDUOutletControlMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to control."
   INDEX  { sPDUOutletControlMSPIndex, sPDUOutletControlMSPOutletIndex }
   ::= { sPDUOutletControlMSPTable 1 }

SPDUOutletControlMSPEntry ::=
   SEQUENCE {
      sPDUOutletControlMSPIndex         INTEGER,
      sPDUOutletControlMSPName          DisplayString,
      sPDUOutletControlMSPOutletIndex   INTEGER,
      sPDUOutletControlMSPOutletName    DisplayString,
      sPDUOutletControlMSPOutletCommand INTEGER
   }

sPDUOutletControlMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus."
   ::= { sPDUOutletControlMSPEntry 1 }

sPDUOutletControlMSPName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletControlMSPEntry 2 }

sPDUOutletControlMSPOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletControlMSPEntry 3 }

sPDUOutletControlMSPOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum size is
       23 characters. The name is set by using the
       sPDUOutletConfigMSPallOutletName OID.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletControlMSPEntry 4 }

sPDUOutletControlMSPOutletCommand OBJECT-TYPE
   SYNTAX INTEGER {
      immediateOnMSP            (1),
      delayedOnMSP              (2),
      immediateOffMSP           (3),
      gracefulRebootMSP         (4),
      immediateRebootMSP        (5),
      gracefulshutdownMSP       (6),
      overrideBatCapThreshMSP   (7),
      cancelPendingCommandMSP   (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the immediateOnMSP (1) value will be returned.
       If the outlet is off, the immediateOffMSP (3) value will be
       returned.

       Setting this variable to immediateOnMSP (1) will immediately turn the outlet on.

       Setting this variable to delayedOnMSP (2) will turn the outlet on
       after the sPDUOutletConfigMSPPowerOnDelay OID time has elapsed.

       Setting this variable to immediateOffMSP (3) will immediately turn the outlet off.

       Setting this variable to gracefulRebootMSP (4) will cause the outlet to wait for
       device confirmation (if applicable) and then turn the outlet off after the
       sPDUOutletConfigMSPPowerOffDelay OID time has elapsed.  The outlet will then turn
       on after the sPDUOutletConfigMSPRebootDuration OID time has elapsed.

       Setting this variable to immediateRebootMSP (5) will immediately reboot the outlet.

       Setting this variable to gracefulshutdownMSP (6) will cause the outlet to wait for
       device confirmation (if applicable) and then turn the outlet off after the
       sPDUOutletConfigMSPPowerOffDelay OID time has elapsed.  The outlet will then turn
       on after the sum of the sPDUOutletConfigMSPRestartTime OID time and the
       sPDUOutletConfigMSPPowerOnDelay OID time has elapsed.

       Setting this variable to overrideBatCapThreshMSP (7) will cause the outlet to
       ignore the Battery Capacity Threshold and proceed waiting on the
       sPDUOutletConfigMSPPowerOnDelay OID time before turning the outlet on.

       Setting this variable to cancelPendingCommandMSP (8) will cause any
       pending command to this outlet to be canceled."
   ::= { sPDUOutletControlMSPEntry 5 }

-- the sPDUOutletConfigMSPall group

sPDUOutletConfigMSPallTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigMSPallEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the sPDUMasterStatusMSPOutletCount OID."
   ::= { sPDUOutletConfigMSPall 1 }

sPDUOutletConfigMSPallEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigMSPallEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { sPDUOutletConfigMSPallIndex, sPDUOutletConfigMSPallOutletIndex }
   ::= { sPDUOutletConfigMSPallTable 1 }

SPDUOutletConfigMSPallEntry ::=
   SEQUENCE {
      sPDUOutletConfigMSPallIndex          INTEGER,
      sPDUOutletConfigMSPallName           DisplayString,
      sPDUOutletConfigMSPallOutletIndex    INTEGER,
      sPDUOutletConfigMSPallOutletName     DisplayString,
      sPDUOutletConfigMSPallOutletCtrlMode INTEGER
   }

sPDUOutletConfigMSPallIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus."
   ::= { sPDUOutletConfigMSPallEntry 1 }

sPDUOutletConfigMSPallName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletConfigMSPallEntry 2 }

sPDUOutletConfigMSPallOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigMSPallEntry 3 }

sPDUOutletConfigMSPallOutletName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. Maximum size is 23 characters."
   ::= { sPDUOutletConfigMSPallEntry 4 }

sPDUOutletConfigMSPallOutletCtrlMode  OBJECT-TYPE
   SYNTAX INTEGER       {
      modeGracefulShutdown              (1),
      modeAnnunciator                   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to modeGracefulShutdown (1) will put this
       outlet into the Graceful Shutdown control mode.

       Setting this OID to modeAnnunciator (2) will put this outlet
       into the Annunciator control mode."
   ::= { sPDUOutletConfigMSPallEntry 5 }


-- the sPDUOutConfigMSPgs group

sPDUOutletConfigMSPgsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigMSPgsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the sPDUMasterStatusMSPOutletCount OID."
   ::= { sPDUOutletConfigMSPgs 1 }

sPDUOutletConfigMSPgsEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigMSPgsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { sPDUOutletConfigMSPgsIndex, sPDUOutletConfigMSPgsOutletIndex }
   ::= { sPDUOutletConfigMSPgsTable 1 }

SPDUOutletConfigMSPgsEntry ::=
   SEQUENCE {
      sPDUOutletConfigMSPgsIndex          INTEGER,
      sPDUOutletConfigMSPgsName           DisplayString,
      sPDUOutletConfigMSPgsOutletIndex    INTEGER,
      sPDUOutletConfigMSPgsOutletName     DisplayString,
      sPDUOutletConfigMSPgsOutletCtrlMode INTEGER,
      sPDUOutletConfigMSPgsDeviceConfirm  INTEGER,
      sPDUOutletConfigMSPgsLowBattWarning INTEGER,
      sPDUOutletConfigMSPgsLowBattMult    INTEGER,
      sPDUOutletConfigMSPgsRestartDelay   INTEGER,
      sPDUOutletConfigMSPgsPowerOnDelay   INTEGER,
      sPDUOutletConfigMSPgsPowerOffDelay  INTEGER,
      sPDUOutletConfigMSPgsBattCapThresh  INTEGER,
      sPDUOutletConfigMSPgsRebootDuration INTEGER
   }

sPDUOutletConfigMSPgsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus."
   ::= { sPDUOutletConfigMSPgsEntry 1 }

sPDUOutletConfigMSPgsName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletConfigMSPgsEntry 2 }

sPDUOutletConfigMSPgsOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigMSPgsEntry 3 }

sPDUOutletConfigMSPgsOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum size is
       23 characters. The name is set by using the
       sPDUOutletConfigMSPallOutletName OID.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletConfigMSPgsEntry 4 }

sPDUOutletConfigMSPgsOutletCtrlMode  OBJECT-TYPE
   SYNTAX INTEGER       {
      modeGracefulShutdown              (1),
      modeAnnunciator                   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Control Mode of the outlet.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletConfigMSPgsEntry 5 }

sPDUOutletConfigMSPgsDeviceConfirm  OBJECT-TYPE
   SYNTAX INTEGER       {
      deviceConfirmNo               (1),
      deviceConfirmYes              (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to deviceConfirmNo (1) cause the outlet to
       NOT wait for device confirmation while performing graceful
       operations.

       Setting this OID to deviceConfirmYes (2) cause the outlet to
       wait for device confirmation while performing graceful
       operations."
   ::= { sPDUOutletConfigMSPgsEntry 6 }

sPDUOutletConfigMSPgsLowBattWarning  OBJECT-TYPE
   SYNTAX INTEGER (-2..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in 6 second intervals, between
        when the UPS goes on battery and the power down sequence for
        the outlet is initiated.

       Allowed values are:

       -2 - Never initiate the power down sequence on low battery warning.
       -1 - Initiate power down sequence based on remaining runtime.
       1 - 9999 six second intervals (6 secs - 16hrs, 39 mins, 54 secs).
       0 indicates to immediately initiate power down sequence on low
         battery warning."
   ::= { sPDUOutletConfigMSPgsEntry 7 }

sPDUOutletConfigMSPgsLowBattMult  OBJECT-TYPE
   SYNTAX INTEGER     (1..7)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
     " Only applicable if sPDUOutletConfigMSPgsLowBattWarning OID is
       set to -1 (On Runtime Remaining).

       Allows you to set the value to stagger the shutdown sequence of the outlets.
       1 provides the longest delay (the outlet to shutoff first), and 7 would
       provide the shortest delay (the outlet to shut off last).

       Allowed values are:
       1 - 7."
   ::= { sPDUOutletConfigMSPgsEntry 8 }

sPDUOutletConfigMSPgsRestartDelay  OBJECT-TYPE
   SYNTAX INTEGER (-1..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in 6 minute intervals, between
        when the outlet is turned off and the outlet is turned back on
        when performing a Graceful Shutdown.

       Allowed values are:

       -1 - Never turn outlet back on after a Graceful shutdown.
       0 - 9999 six minute intervals (0 - 999hrs, 54 mins)."
   ::= { sPDUOutletConfigMSPgsEntry 9 }

sPDUOutletConfigMSPgsPowerOnDelay  OBJECT-TYPE
   SYNTAX INTEGER (-1..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, between the UPS entering
        normal (on-line) state and the outlet being powered on.

       Allowed values are:

       -1 - Remain Off when the UPS enters the on-line state.
       0 - 9999 seconds (0 - 2 hrs, 46 mins, 39 secs)."
   ::= { sPDUOutletConfigMSPgsEntry 10 }


sPDUOutletConfigMSPgsPowerOffDelay  OBJECT-TYPE
   SYNTAX INTEGER (0..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, between when the server
        shuts down and the outlet is powered off.

       Allowed values are:

       0 - 9999 seconds (0 - 2 hrs, 46 mins, 39 secs)."
   ::= { sPDUOutletConfigMSPgsEntry 11 }

sPDUOutletConfigMSPgsBattCapThresh  OBJECT-TYPE
   SYNTAX INTEGER (0..100)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The minimum battery capacity, as a percent (0-100%), required
        of the UPS before an outlet will be allowed to power on.

       Allowed values are:

       0 - 100 percent."
   ::= { sPDUOutletConfigMSPgsEntry 12 }

sPDUOutletConfigMSPgsRebootDuration  OBJECT-TYPE
   SYNTAX INTEGER (0..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of delay, in seconds, from outlet off until
        outlet on during a reboot.

       Allowed values are:

       0 - 9999 seconds (0 - 2 hrs, 46 mins, 39 secs)."
   ::= { sPDUOutletConfigMSPgsEntry 13 }


-- the sPDUOutConfigMSPannun group

sPDUOutletConfigMSPannunTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigMSPannunEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the sPDUMasterStatusMSPOutletCount OID."
   ::= { sPDUOutletConfigMSPannun 1 }

sPDUOutletConfigMSPannunEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigMSPannunEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { sPDUOutletConfigMSPannunIndex, sPDUOutletConfigMSPannunOutletIndex }
   ::= { sPDUOutletConfigMSPannunTable 1 }

SPDUOutletConfigMSPannunEntry ::=
   SEQUENCE {
      sPDUOutletConfigMSPannunIndex          INTEGER,
      sPDUOutletConfigMSPannunName           DisplayString,
      sPDUOutletConfigMSPannunOutletIndex    INTEGER,
      sPDUOutletConfigMSPannunOutletName     DisplayString,
      sPDUOutletConfigMSPannunOutletCtrlMode INTEGER,
      sPDUOutletConfigMSPannunInitialState   INTEGER,
      sPDUOutletConfigMSPannunAlarmActionDly INTEGER
   }

sPDUOutletConfigMSPannunIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus."
   ::= { sPDUOutletConfigMSPannunEntry 1 }

sPDUOutletConfigMSPannunName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletConfigMSPannunEntry 2 }

sPDUOutletConfigMSPannunOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigMSPannunEntry 3 }

sPDUOutletConfigMSPannunOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum size is
       23 characters. The name is set by using the
       sPDUOutletConfigMSPallOutletName OID.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletConfigMSPannunEntry 4 }

sPDUOutletConfigMSPannunOutletCtrlMode  OBJECT-TYPE
   SYNTAX INTEGER       {
      modeGracefulShutdown              (1),
      modeAnnunciator                   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Control Mode of the outlet.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletConfigMSPannunEntry 5 }

sPDUOutletConfigMSPannunInitialState  OBJECT-TYPE
   SYNTAX INTEGER       {
      initialStateOff              (1),
      initialStateOn               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to initialStateOff (1) causes the outlet
       to default to off when in the non-alarmed condition.

       Setting this OID to initialStateOn (2) causes the outlet
       to default to on when in the non-alarmed condition."
   ::= { sPDUOutletConfigMSPannunEntry 6 }

sPDUOutletConfigMSPannunAlarmActionDly  OBJECT-TYPE
   SYNTAX INTEGER (0..9999)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      " The amount of time, in seconds, that an enabled Measure-UPS
        alarm must be asserted before an alarm condition is recognized.

       Allowed values are:

       0 - 9999 seconds (0 - 2 hrs, 46 mins, 39 secs)."
   ::= { sPDUOutletConfigMSPannunEntry 7 }


-- the sPDUOutConfigMSPmups group

sPDUOutletConfigMSPmupsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletConfigMSPmupsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the sPDUMasterStatusMSPOutletCount OID."
   ::= { sPDUOutletConfigMSPmups 1 }

sPDUOutletConfigMSPmupsEntry OBJECT-TYPE
   SYNTAX SPDUOutletConfigMSPmupsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { sPDUOutletConfigMSPmupsIndex, sPDUOutletConfigMSPmupsOutletIndex }
   ::= { sPDUOutletConfigMSPmupsTable 1 }

SPDUOutletConfigMSPmupsEntry ::=
   SEQUENCE {
      sPDUOutletConfigMSPmupsIndex          INTEGER,
      sPDUOutletConfigMSPmupsName           DisplayString,
      sPDUOutletConfigMSPmupsOutletIndex    INTEGER,
      sPDUOutletConfigMSPmupsOutletName     DisplayString,
      sPDUOutletConfigMSPmupsZone1          INTEGER,
      sPDUOutletConfigMSPmupsZone2          INTEGER,
      sPDUOutletConfigMSPmupsZone3          INTEGER,
      sPDUOutletConfigMSPmupsZone4          INTEGER,
      sPDUOutletConfigMSPmupsP1LowHum       INTEGER,
      sPDUOutletConfigMSPmupsP1HiHum        INTEGER,
      sPDUOutletConfigMSPmupsP1LowTemp      INTEGER,
      sPDUOutletConfigMSPmupsP1HiTemp       INTEGER,
      sPDUOutletConfigMSPmupsP2LowHum       INTEGER,
      sPDUOutletConfigMSPmupsP2HiHum        INTEGER,
      sPDUOutletConfigMSPmupsP2LowTemp      INTEGER,
      sPDUOutletConfigMSPmupsP2HiTemp       INTEGER
   }

sPDUOutletConfigMSPmupsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch plus."
   ::= { sPDUOutletConfigMSPmupsEntry 1 }

sPDUOutletConfigMSPmupsName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletConfigMSPmupsEntry 2 }

sPDUOutletConfigMSPmupsOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletConfigMSPmupsEntry 3 }

sPDUOutletConfigMSPmupsOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum size is
       23 characters. The name is set by using the
       sPDUOutletConfigMSPallOutletName OID.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletConfigMSPmupsEntry 4 }

sPDUOutletConfigMSPmupsZone1  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Zone 1 alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Zone 1 alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 5 }

sPDUOutletConfigMSPmupsZone2  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Zone 2 alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Zone 2 alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 6 }

sPDUOutletConfigMSPmupsZone3  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Zone 3 alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Zone 3 alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 7 }

sPDUOutletConfigMSPmupsZone4  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Zone 4 alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Zone 4 alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 8 }

sPDUOutletConfigMSPmupsP1LowHum  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 1 low humidity alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 1 low humidity alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 9 }

sPDUOutletConfigMSPmupsP1HiHum  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 1 high humidity alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 1 high humidity alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 10 }

sPDUOutletConfigMSPmupsP1LowTemp  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 1 low temperature alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 1 low temperature alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 11 }

sPDUOutletConfigMSPmupsP1HiTemp  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 1 high temperature alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 1 high temperature alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 12 }

sPDUOutletConfigMSPmupsP2LowHum  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 2 low humidity alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 2 low humidity alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 13 }

sPDUOutletConfigMSPmupsP2HiHum  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 2 high humidity alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 2 high humidity alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 14 }

sPDUOutletConfigMSPmupsP2LowTemp  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 2 low temperature alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 2 low temperature alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 15 }

sPDUOutletConfigMSPmupsP2HiTemp  OBJECT-TYPE
   SYNTAX INTEGER       {
      disableAlarm              (1),
      enableAlarm               (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to disableAlarm (1) disables the
       Probe 2 high temperature alarm for this outlet.

       Setting this OID to enableAlarm (2) enables the
       Probe 2 high temperature alarm for this outlet."
   ::= { sPDUOutletConfigMSPmupsEntry 16 }

-- the sPDUOutletStatusMSP group

sPDUOutletStatusMSPTable OBJECT-TYPE
   SYNTAX SEQUENCE OF SPDUOutletStatusMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of individual outlets. The number of
       entries is contained in the sPDUMasterStatusOutletCount OID."
   ::= { sPDUOutletStatusMSP 1 }

sPDUOutletStatusMSPEntry OBJECT-TYPE
   SYNTAX SPDUOutletStatusMSPEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to gather status from."
   INDEX  { sPDUOutletStatusMSPIndex, sPDUOutletStatusMSPOutletIndex }
   ::= { sPDUOutletStatusMSPTable 1 }

SPDUOutletStatusMSPEntry ::=
   SEQUENCE {
      sPDUOutletStatusMSPIndex          INTEGER,
      sPDUOutletStatusMSPName           DisplayString,
      sPDUOutletStatusMSPOutletIndex    INTEGER,
      sPDUOutletStatusMSPOutletName     DisplayString,
      sPDUOutletStatusMSPOutletState    INTEGER,
      sPDUOutletStatusMSPCommandPending INTEGER,
      sPDUOutletStatusMSPOutletCtrlMode INTEGER
   }

sPDUOutletStatusMSPIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the MasterSwitch MSP."
   ::= { sPDUOutletStatusMSPEntry 1 }

sPDUOutletStatusMSPName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the MasterSwitch plus. The maximum
       value is 23 characters. The name is set by
       using the sPDUMasterConfigMSPName OID."
   ::= { sPDUOutletStatusMSPEntry 2 }

sPDUOutletStatusMSPOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { sPDUOutletStatusMSPEntry 3 }

sPDUOutletStatusMSPOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum size is
       23 characters. The name is set by using the
       sPDUOutletConfigMSPallOutletName OID.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletStatusMSPEntry 4 }

sPDUOutletStatusMSPOutletState OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusMSPOn              (1),
        outletStatusMSPOff             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the outletStatusMSPOn (1) value will be returned.
       If the outlet is off, the outletStatusMSPOff (2) value will be
       returned. "
   ::= { sPDUOutletStatusMSPEntry 5 }

sPDUOutletStatusMSPCommandPending    OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusMSPCommandPending    (1),
        outletStatusMSPNoCommandPending  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the command pending
        state of the outlet. If a command is pending on the
        outlet, the outletStatusMSPCommandPending (1) value
        will be returned. If there is not a command pending
        on the outlet, the outletStatusMSPNoCommandPending (2)
        will be returned."
   ::= { sPDUOutletStatusMSPEntry 6 }

sPDUOutletStatusMSPOutletCtrlMode  OBJECT-TYPE
   SYNTAX INTEGER       {
      modeGracefulShutdown              (1),
      modeAnnunciator                   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Control Mode of the outlet.
       This OID is provided for informational purposes only."
   ::= { sPDUOutletStatusMSPEntry 7 }


-- the rPDUIdent group

rPDUIdentName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the Rack PDU.
       The maximum string size is device dependent."
   ::= { rPDUIdent 1 }

rPDUIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Rack PDU.
       This value is set at the factory."
   ::= { rPDUIdent 2 }

rPDUIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An 8-byte ID string identifying the Rack PDU firmware revision.
       This value is set at the factory."
   ::= {  rPDUIdent 3 }


rPDUIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the Rack PDU was manufactured in mm/dd/yyyy format.
       This value is set at the factory. The year 2000 will be
       represented by 00."
   ::= { rPDUIdent 4 }

rPDUIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 10-character string identifying the model number of
       the Rack PDU. This value is set at the factory."
   ::= { rPDUIdent 5 }

rPDUIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 12-character string identifying the serial number of
       the Rack PDU. This value is set at the factory."
   ::= { rPDUIdent 6 }

rPDUIdentDeviceRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the electrical rating of the device in Amps."

   ::= { rPDUIdent 7 }

rPDUIdentDeviceNumOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of outlets contained in the device."

   ::= { rPDUIdent 8 }

rPDUIdentDeviceNumPhases OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of phases supported by the device."

   ::= { rPDUIdent 9 }

rPDUIdentDeviceNumBreakers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of circuit breakers supported by the device.
       This is the same as the number of banks of outlets.
       0 will be returned if the unit has no phase breakers. "

   ::= { rPDUIdent 10 }

rPDUIdentDeviceBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return rating of the circuit breakers
      on the device in Amps if it has any."

   ::= { rPDUIdent 11 }

rPDUIdentDeviceOrientation OBJECT-TYPE
   SYNTAX INTEGER       {
      orientHorizontal            (1),
      orientVertical              (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the intended physical orientation of the device.

       OrientHorizonatal(1) indicates Horizontal.
       OrientVertical(2) indicates Vertical."

   ::= { rPDUIdent 12 }

rPDUIdentDeviceOutletLayout OBJECT-TYPE
   SYNTAX INTEGER       {
      seqPhaseToNeutral            (1),
      seqPhaseToPhase              (2),
      seqPhToNeu21PhToPh           (3),
      seqPhToPhGrouped             (4),
      seqPhToNGrouped              (5),
      seqPToN1516PToPGrouped       (6),
      seqPhToPh2xGrouped           (7),
      seqPhToN2xGrouped            (8),
      seqNotApplicable             (9)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return outlet layout for the device.

       seqPhaseToNeutral(1) indicates outlet layout as follows:
       1:1-N,2:2-N,3:3-N,4:1-N,5:2-N,...

       seqPhaseToPhase(2) indicates outlet layout as follows:
       1:1-2,2:2-3,3:3-1,4:1-2,5:2-3,...

       seqPhToNeu21PhToPh(3) indicates outlet layout as follows:
       1:1-N,2:2-N...21:3-N,22:1-2,23:2-3,24:3-1,...

       seqPhToPhGrouped(4) indicates outlet layout as follows:
       For AP8xxx SKU's Group 1:1-2, Group 2:2-3, Group 3:3-1.
       For AP7xxx SKU's Group 1:3-1. Group 2:2-3, Group 3:1-2.

       seqPhToNGrouped(5) indicates outlet layout as follows:
       This unit has 3 outlet groups.  Group 1:1-N, Group 2:2-N, Group 3:3-N.

       seqPToN1516PToPGrouped(6) indicates outlet layout as follows:
       This unit has 4 outlet groups. Group 1 (Outlets 1-14):1-2,
       Group 2 (Outlets 15-16):1-N, Group 3:2-3, Group 4:3-1.

       seqPhToPh2xGrouped(7) indicates outlet layout as follows:
       This unit has 6 outlet groups.  Group 1:1-2, Group 2:1-2, Group 3:2-3,
       Group 4:2-3, Group 5:3-1, Group 6:3-1.

       seqPhToN2xGrouped(8) indicates outlet layout as follows:
       This unit has 6 outlet groups.  Group 1:1-N, Group 2:1-N, Group 3:2-N,
       Group 4:2-N, Group 5:3-N, Group 6:3-N.

       seqNotApplicable(9):
       Outlet layout does not affect any of the user interfaces.
       These SKUs may report seqNotApplicable(9) if there is
       not an exact outlet layout match available."
   ::= { rPDUIdent 13 }

rPDUIdentDeviceDisplayOrientation OBJECT-TYPE
   SYNTAX INTEGER       {
      displayNormal            (1),
      displayReverse           (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the intended physical orientation of the Seven-Segment Display.

       Normal(1) indicates Normal.
       Reverse(2)indicates Upside-Down."

   ::= { rPDUIdent 14 }


rPDUIdentDeviceLinetoLineVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting/Setting this OID will return/set the Line to Line Voltage.
       This OID defaults to the nominal input line voltage in volts AC.
       This setting is used to calculate total power and must be configured for best accuracy.
       This OID does not apply to AP86XX, AP88XX, or AP89XX SKUs.

       The valid range is between 0V to 440V"
   ::= { rPDUIdent 15 }

rPDUIdentDevicePowerWatts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the Power in Watts."

   ::= { rPDUIdent 16 }

rPDUIdentDevicePowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting/setting this OID will return/set the
       Power Factor in thousanths (1000 is power factor of 1).
       For AP8XXX SKUs, this OID is read-only

       Valid range is from 0 to 1000."
   ::= { rPDUIdent 17 }

rPDUIdentDevicePowerVA OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the Power in VA."

   ::= { rPDUIdent 18 }

rPDUIdentDeviceLinetoNeutralVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting/Setting this OID will return/set the Line to Neutral Voltage.
       This OID defaults to the nominal line to neutral voltage in volts AC.
       This setting is used to calculate total power and must be configured for best accuracy.
       This OID applies only to AP7823. For all other models, the OID is fixed at 0.

       The valid range is between 0V to 440V."

   ::= { rPDUIdent 19 }

-- the rPDULoadDevice group

rPDULoadDevMaxPhaseLoad   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the maximum rated power
       that each phase of the Rack PDU can provide. It is
       represented in Amps.

       0 will be returned if the unit is banked."
   ::= { rPDULoadDevice 1 }

rPDULoadDevNumPhases OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of phases available with this Rack PDU."
   ::= { rPDULoadDevice 2 }

rPDULoadDevMaxBankLoad   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the maximum rated power
       that a bank of the Rack PDU can provide. It is
       represented in Amps.

       0 will be returned if the device does not have any banks."

   ::= { rPDULoadDevice 3 }

rPDULoadDevNumBanks OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of banks of outlets available with this Rack PDU.
       A bank of outlets has a unique circuit breaker for a subset
       of the total number of outlets on the rPDU.

       0 will be returned if the unit has no banks."
   ::= { rPDULoadDevice 4 }

rPDULoadDevBankTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Bank Table."
   ::= { rPDULoadDevice 5 }


rPDULoadDevBankTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDULoadDevBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting the Bank Max Load in the Rack PDU."

   ::= { rPDULoadDevice 6 }

rPDULoadDevBankEntry OBJECT-TYPE
   SYNTAX RPDULoadDevBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU Banks Access."
   INDEX  { rPDULoadDevBankIndex}
   ::= { rPDULoadDevBankTable 1 }

RPDULoadDevBankEntry ::=
   SEQUENCE {
      rPDULoadDevBankIndex      INTEGER,
      rPDULoadDevBankNumber     INTEGER,
      rPDULoadDevBankMaxLoad    INTEGER
   }

rPDULoadDevBankIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU bank entry."
   ::= { rPDULoadDevBankEntry 1 }

rPDULoadDevBankNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the bank number."

   ::= { rPDULoadDevBankEntry 2 }

rPDULoadDevBankMaxLoad OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the maximum rated power
       that each bank of the Rack PDU can provide. It is
       represented in Amps."

   ::= { rPDULoadDevBankEntry 3 }

rPDULoadDevMaxOutletTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Outlet Table."
   ::= { rPDULoadDevice 7 }


rPDULoadDevMaxOutletTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDULoadDevMaxOutletEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting the Max Outlet Load in an Outlet Monitored Rack PDU."
   ::= { rPDULoadDevice 8 }

rPDULoadDevMaxOutletEntry OBJECT-TYPE
   SYNTAX RPDULoadDevMaxOutletEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to Max Outlet Load of an Outlet Monitored Rack PDU"
   INDEX  { rPDULoadDevOutletIndex}
   ::= { rPDULoadDevMaxOutletTable 1 }

RPDULoadDevMaxOutletEntry ::=
   SEQUENCE {
      rPDULoadDevOutletIndex    INTEGER,
      rPDULoadDevOutletNumber   INTEGER,
      rPDULoadDevMaxOutletLoad  INTEGER
   }

rPDULoadDevOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Outlet Monitored Rack PDU Max Outlet Load entry."
   ::= { rPDULoadDevMaxOutletEntry 1 }

rPDULoadDevOutletNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the Outlet number."
   ::= { rPDULoadDevMaxOutletEntry 2 }


rPDULoadDevMaxOutletLoad OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the maximum rated power
       that each Outlet of an Outlet Monitored Rack PDU can provide. It is
       represented in Amps. "
   ::= { rPDULoadDevMaxOutletEntry 3 }



-- the rPDULoadPhaseConfig group

rPDULoadPhaseConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDULoadPhaseConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of each Rack PDU phase.
       The number of entries is contained in the
       rPDULoadDevNumPhases OID."
   ::= { rPDULoadPhaseConfig 1 }

rPDULoadPhaseConfigEntry OBJECT-TYPE
   SYNTAX RPDULoadPhaseConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU phase to configure."
   INDEX  { rPDULoadPhaseConfigIndex}
   ::= { rPDULoadPhaseConfigTable 1 }

RPDULoadPhaseConfigEntry ::=
   SEQUENCE {
      rPDULoadPhaseConfigIndex                  INTEGER,
      rPDULoadPhaseConfigLowLoadThreshold       INTEGER,
      rPDULoadPhaseConfigNearOverloadThreshold  INTEGER,
      rPDULoadPhaseConfigOverloadThreshold      INTEGER,
      rPDULoadPhaseConfigAlarm                  INTEGER
   }

rPDULoadPhaseConfigIndex OBJECT-TYPE
   SYNTAX INTEGER {
      phase1                     (1),
      phase2                     (2),
      phase3                     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase entry."
   ::= { rPDULoadPhaseConfigEntry 1 }

rPDULoadPhaseConfigLowLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing a low consumption condition. It is
       represented in Amps.  A warning will be issued when the
       load is less than the threshold value.

       A threshold value of 0 Amps effectively disables this
       warning.

       Maximum value must be less than the value returned
       by the rPDULoadPhaseConfigNearOverloadThreshold OID."
   ::= { rPDULoadPhaseConfigEntry 2 }

rPDULoadPhaseConfigNearOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than the value returned by
       the rPDULoadPhaseConfigLowLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDULoadPhaseConfigOverloadThreshold OID."
   ::= { rPDULoadPhaseConfigEntry 3 }

rPDULoadPhaseConfigOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load has entered an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than or equal to the value
       returned by the rPDULoadPhaseConfigNearOverloadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDULoadDevMaxPhaseLoad OID."
   ::= { rPDULoadPhaseConfigEntry 4 }


rPDULoadPhaseConfigAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        noLoadAlarm             (1),
        underCurrentAlarm       (2),
        nearOverCurrentAlarm    (3),
        overCurrentAlarm        (4)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
   "Getting this OID will return the current Phase Alarm."
   ::= { rPDULoadPhaseConfigEntry 5 }





-- the rPDULoadStatus group

rPDULoadStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDULoadStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of each Rack PDU phase/bank.
       The number of entries is calculated by adding
       the number of phases (rPDULoadDevNumPhases OID) and
       the number of banks of outlets (rPDULoadDevNumBanks)
       Number of entries = #phases + #banks.
       NOTE: If a device has phase and bank information, all phase information
       shall precede the bank information.  If a device has total information,
       it shall precede both the bank and the phase information."
   ::= { rPDULoadStatus 1 }

rPDULoadStatusEntry OBJECT-TYPE
   SYNTAX RPDULoadStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU phase/bank to gather status from."
   INDEX  { rPDULoadStatusIndex}
   ::= { rPDULoadStatusTable 1 }

RPDULoadStatusEntry ::=
   SEQUENCE {
      rPDULoadStatusIndex                 INTEGER,
      rPDULoadStatusLoad                  Gauge,
      rPDULoadStatusLoadState             INTEGER,
      rPDULoadStatusPhaseNumber           INTEGER,
      rPDULoadStatusBankNumber            INTEGER
   }

rPDULoadStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase/bank entry. All phase information will precede
       any bank information"
   ::= { rPDULoadStatusEntry 1 }

rPDULoadStatusLoad OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the phase/bank load measured
       in tenths of Amps."
   ::= { rPDULoadStatusEntry 2 }

rPDULoadStatusLoadState OBJECT-TYPE
   SYNTAX INTEGER       {
      phaseLoadNormal                 (1),
      phaseLoadLow                    (2),
      phaseLoadNearOverload           (3),
      phaseLoadOverload               (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the phase/bank load state.

       phaseLoadNormal(1) indicates that the phase/bank is
       operating properly within the rPDULoadConfigLowLoadThreshold
       and rPDULoadConfigNearOverloadThreshold OID values.

       phaseLoadLow(2) indicates that the phase/bank load has
       dropped below the rPDULoadConfigLowLoadThreshold OID value.
       An SNMP trap will occur when this state is entered or cleared.

       phaseLoadNearOverload(3) indicates that the phase/bank load
       is greater than or equal to the
       rPDULoadConfigNearOverloadThreshold OID value.
       An SNMP trap will occur when this state is entered or cleared.

       phaseLoadOverload(4) indicates that the phase/bank load is
       greater than or equal to the rPDULoadConfigOverloadThreshold
       OID value.
       An SNMP trap will occur when this state is entered or cleared."
   ::= { rPDULoadStatusEntry 3 }

rPDULoadStatusPhaseNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The phase number to which this record refers."
   ::= { rPDULoadStatusEntry 4 }

rPDULoadStatusBankNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The bank number to which this record refers.  A value of 0 will be returned if
       any bank is not present or if it is phase related."
   ::= { rPDULoadStatusEntry 5 }


-- the rPDULoadBankConfig group

rPDULoadBankConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDULoadBankConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of each Rack PDU bank.
       The number of entries is contained in the
       rPDULoadDevNumBanks OID."
   ::= { rPDULoadBankConfig 1 }

rPDULoadBankConfigEntry OBJECT-TYPE
   SYNTAX RPDULoadBankConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU bank to configure."
   INDEX  { rPDULoadBankConfigIndex}
   ::= { rPDULoadBankConfigTable 1 }

RPDULoadBankConfigEntry ::=
   SEQUENCE {
      rPDULoadBankConfigIndex                    INTEGER,
      rPDULoadBankConfigLowLoadThreshold         INTEGER,
      rPDULoadBankConfigNearOverloadThreshold    INTEGER,
      rPDULoadBankConfigOverloadThreshold        INTEGER,
      rPDULoadBankConfigAlarm                    INTEGER
   }

rPDULoadBankConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU bank entry."
   ::= { rPDULoadBankConfigEntry 1 }

rPDULoadBankConfigLowLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing a low consumption condition. It is
       represented in Amps.  A warning will be issued when the
       load is less than the threshold value.

       A threshold value of 0 Amps effectively disables this
       warning.

       Maximum value must be less than the value returned
       by the rPDULoadBankConfigNearOverloadThreshold OID."

   ::= { rPDULoadBankConfigEntry 2 }

rPDULoadBankConfigNearOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than the value returned by
       the rPDULoadBankConfigLowLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDULoadBankConfigOverloadThreshold OID."

   ::= { rPDULoadBankConfigEntry 3 }

rPDULoadBankConfigOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load has entered an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than or equal to the value
       returned by the rPDULoadBankConfigNearOverloadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDULoadDevMaxBankLoad OID."

   ::= { rPDULoadBankConfigEntry 4 }

rPDULoadBankConfigAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        noLoadAlarm             (1),
        underCurrentAlarm       (2),
        nearOverCurrentAlarm    (3),
        overCurrentAlarm        (4)

    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
   " Getting this OID will return the current Bank Alarm."
   ::= { rPDULoadBankConfigEntry 5 }


-- the rPDUOutletDevice group

rPDUOutletDevCommand  OBJECT-TYPE
  SYNTAX INTEGER       {
      noCommandAll               (1),
      immediateAllOn             (2),
      immediateAllOff            (3),
      immediateAllReboot         (4),
      delayedAllOn               (5),
      delayedAllOff              (6),
      delayedAllReboot           (7),
      cancelAllPendingCommands   (8)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to immediateAllOn (2) will turn all outlets
       on immediately.

       Setting this OID to immediateAllOff (3) will turn all outlets
       off immediately.

       Setting this OID to immediateAllReboot (4) will reboot all outlets
       immediately.

       Setting this OID to delayedAllOn (5) will turn all outlets on as
       defined by each outlet's rPDUOutletConfigPowerOnTime OID value.

       Setting this OID to delayedAllOff (6) will turn all outlets
       off as defined by each outlet's rPDUOutletConfigPowerOffTime OID value.

       Setting this OID to delayedAllReboot (7) will cause a
       delayedAllOff command to be performed. Once all outlets are off,
       the Switched Rack PDU will then delay the largest
       rPDUOutletConfigRebootDuration OID time, and then perform a
       delayedAllOn command.

       Setting this OID to cancelAllPendingCommands (8) will cause all pending
       commands on the Switched Rack PDU to be canceled.

       Getting this OID will return the noCommandAll (1) value."
   ::= { rPDUOutletDevice 1 }

rPDUOutletDevColdstartDelay  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of delay, in seconds, between when
       power is provided to the Switched Rack PDU and
       when the Switched Rack PDU provides basic master
       power to the outlets.

       Allowed values are:

       -1       - never apply power automatically.
       0        - apply power immediately.
       1 to 300 - delay up to 300 seconds (5 minutes)."
   ::= { rPDUOutletDevice 2 }

rPDUOutletDevNumCntrlOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of controlled outlets on this Switched Rack PDU."
   ::= { rPDUOutletDevice 3 }

rPDUOutletDevNumTotalOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of outlets on this Rack PDU."
   ::= { rPDUOutletDevice 4 }

rPDUOutletDevMonitoredOutlets  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of monitored outlets on this Rack PDU."
   ::= { rPDUOutletDevice 5 }


-- the rPDUOutletPhase group

rPDUOutletPhaseTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for management of outlets on a per phase basis."
   ::= { rPDUOutletPhase 1 }

rPDUOutletPhaseEntry OBJECT-TYPE
   SYNTAX RPDUOutletPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The phase to manage."
   INDEX  { rPDUOutletPhaseIndex}
   ::= { rPDUOutletPhaseTable 1 }

RPDUOutletPhaseEntry ::=
   SEQUENCE {
      rPDUOutletPhaseIndex                INTEGER,
      rPDUOutletPhaseOverloadRestriction  INTEGER
   }

rPDUOutletPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER {
      phase1                     (1),
      phase2                     (2),
      phase3                     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Switched Rack PDU phase entry."
   ::= { rPDUOutletPhaseEntry 1 }

rPDUOutletPhaseOverloadRestriction OBJECT-TYPE
   SYNTAX INTEGER       {
      alwaysAllowTurnON         (1),
      restrictOnNearOverload    (2),
      restrictOnOverload        (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID controls the behavior of a Switched Rack PDU
       phase when an overload condition is possible and
       additional outlets are requested to be turned on.

       Setting this OID to alwaysAllowTurnON (1) will always allow
       the outlets on the corresponding phase to turn on.

       Setting this OID to restrictOnNearOverload (2) will not allow
       outlets on the corresponding phase to turn on if the
       rPDULoadConfigNearOverloadThreshold OID is exceeded.

       Setting this OID to restrictOnOverload (3) will not allow
       outlets on the corresponding phase to turn on if the
       rPDULoadConfigOverloadThreshold OID is exceeded."
   ::= { rPDUOutletPhaseEntry 2 }


-- the rPDUOutletControl group

rPDUOutletControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of the individual outlets.
       The number of entries is contained in the
       rPDUOutletDevNumCntrlOutlets OID."
   ::= { rPDUOutletControl 1 }

rPDUOutletControlEntry OBJECT-TYPE
   SYNTAX RPDUOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet to control."
   INDEX  { rPDUOutletControlIndex}
   ::= { rPDUOutletControlTable 1 }

RPDUOutletControlEntry ::=
   SEQUENCE {
      rPDUOutletControlIndex         INTEGER,
      rPDUOutletControlOutletName    DisplayString,
      rPDUOutletControlOutletPhase   INTEGER,
      rPDUOutletControlOutletCommand INTEGER,
      rPDUOutletControlOutletBank    INTEGER
   }

rPDUOutletControlIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { rPDUOutletControlEntry 1 }

rPDUOutletControlOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum string size is device dependent.
       An error will be returned if the set request exceeds the max size.
       This OID is provided for informational purposes only."
   ::= { rPDUOutletControlEntry 2 }

rPDUOutletControlOutletPhase    OBJECT-TYPE
   SYNTAX INTEGER {
      phase1                     (1),
      phase2                     (2),
      phase3                     (3),
      phase1-2                   (4),
      phase2-3                   (5),
      phase3-1                   (6)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The phase/s associated with this outlet.

       For single phase devices, this object will always
       return phase1(1).

       For 3-phase devices, this object will return phase1 (1),
       phase2 (2), or phase3 (3) for outlets tied to a single
       phase.  For outlets tied to two phases, this object will
       return phase1-2 (4) for phases 1 and 2, phase2-3 (5) for
       phases 2 and 3, and phase3-1 (6) for phases 3 and 1."
   ::= { rPDUOutletControlEntry 3 }

rPDUOutletControlOutletCommand OBJECT-TYPE
   SYNTAX INTEGER {
      immediateOn             (1),
      immediateOff            (2),
      immediateReboot         (3),
      delayedOn               (4),
      delayedOff              (5),
      delayedReboot           (6),
      cancelPendingCommand    (7)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
        the outlet is on, the immediateOn (1) value will be returned.
        If the outlet is off, the immediateOff (2) value will be
        returned.


        Setting this variable to immediateOn (1) will immediately turn
        the outlet on.

        Setting this variable to immediateOff (2) will immediately turn
        the outlet off.

        Setting this variable to immediateReboot (3) will immediately
        reboot the outlet.

        Setting this variable to delayedOn (4) will turn the outlet on
        after the rPDUOutletConfigPowerOnTime OID time has elapsed.

        Setting this variable to delayedOff (5) will turn the outlet off
        after the rPDUOutletConfigPowerOffTime OID time has elapsed.

        Setting this variable to delayedReboot  (6) will cause the
        Switched Rack PDU to perform a delayedOff command, wait the
        rPDUOutletConfigRebootDuration OID time, and then perform a
        delayedOn command.

        Setting this variable to cancelPendingCommand (7) will cause any
        pending command to this outlet to be canceled."

    ::= { rPDUOutletControlEntry 4 }

rPDUOutletControlOutletBank    OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The bank associated with this outlet."
   ::= { rPDUOutletControlEntry 5 }


-- the rPDUOutletConfig group

rPDUOutletConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the rPDUOutletDevNumCntrlOutlets OID."
   ::= { rPDUOutletConfig 1 }

rPDUOutletConfigEntry OBJECT-TYPE
   SYNTAX RPDUOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet to configure."
   INDEX  { rPDUOutletConfigIndex}
   ::= { rPDUOutletConfigTable 1 }

RPDUOutletConfigEntry ::=
   SEQUENCE {
      rPDUOutletConfigIndex                 INTEGER,
      rPDUOutletConfigOutletName            DisplayString,
      rPDUOutletConfigOutletPhase           INTEGER,
      rPDUOutletConfigPowerOnTime           INTEGER,
      rPDUOutletConfigPowerOffTime          INTEGER,
      rPDUOutletConfigRebootDuration        INTEGER,
      rPDUOutletConfigOutletBank            INTEGER
   }

rPDUOutletConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { rPDUOutletConfigEntry 1 }

rPDUOutletConfigOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum string size is device dependent.
       An error will be returned if the set request exceeds the max size."
   ::= { rPDUOutletConfigEntry 2 }

rPDUOutletConfigOutletPhase    OBJECT-TYPE
   SYNTAX INTEGER {
      phase1                     (1),
      phase2                     (2),
      phase3                     (3),
      phase1-2                   (4),
      phase2-3                   (5),
      phase3-1                   (6)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The phase/s associated with this outlet.

       For single phase devices, this object will always
       return phase1(1).

       For 3-phase devices, this object will return phase1 (1),
       phase2 (2), or phase3 (3) for outlets tied to a single
       phase.  For outlets tied to two phases, this object will
       return phase1-2 (4) for phases 1 and 2, phase2-3 (5) for
       phases 2 and 3, and phase3-1 (6) for phases 3 and 1."
   ::= { rPDUOutletConfigEntry 3 }

rPDUOutletConfigPowerOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering on at coldstart or when a command that requires
       a turn-on delay is issued.

       Allowed values are:

       -1        - never power on.
       0         - power on immediately.
       1 to 7200 - power on up to 7200 seconds after being
                  commanded."
   ::= { rPDUOutletConfigEntry 4 }

rPDUOutletConfigPowerOffTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time (in seconds) the outlet will delay
       powering off when a command that requires
       a turn-off delay is issued.

       Allowed values are:

       -1        - never power off.
       0         - power off immediately.
       1 to 7200 - power off up to 7200 seconds after being
                  commanded."
   ::= { rPDUOutletConfigEntry 5 }

rPDUOutletConfigRebootDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "During a reboot sequence, power is turned off and then
       back on. This OID defines the amount of time to wait,
       in seconds, after turning the power off, at the start
       of the sequence, before turning power back on, at the
       end of the reboot sequence.

       Allowed range is any value between 5 and 60 seconds (1 minute)."
   ::= { rPDUOutletConfigEntry 6 }

rPDUOutletConfigOutletBank    OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The bank associated with this outlet."
   ::= { rPDUOutletConfigEntry 7 }

-- Monitored Outlets table

rPDUOutletConfigMonitoredTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Outlet Config Monitored Table"
   ::= { rPDUOutletConfig 2 }


rPDUOutletConfigMonitoredTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletConfigMonitoredEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting/setting of outlet thresholds of an Outlet Monitored Rack PDU."
   ::= { rPDUOutletConfig 3 }

rPDUOutletConfigMonitoredEntry  OBJECT-TYPE
   SYNTAX RPDUOutletConfigMonitoredEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to Monitored Outlet entries"
   INDEX  { rPDUOutletConfigMonitoredIndex }
   ::= { rPDUOutletConfigMonitoredTable 1 }

RPDUOutletConfigMonitoredEntry ::=
   SEQUENCE {
      rPDUOutletConfigMonitoredIndex                    INTEGER,
      rPDUOutletConfigMonitoredName                     DisplayString,
      rPDUOutletConfigMonitoredNumber                   INTEGER,
      rPDUOutletConfigMonitoredLowLoadThreshold         INTEGER,
      rPDUOutletConfigMonitoredNearOverloadThreshold    INTEGER,
      rPDUOutletConfigMonitoredOverloadThreshold        INTEGER
   }

rPDUOutletConfigMonitoredIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the RACK PDU Phase entry."
   ::= { rPDUOutletConfigMonitoredEntry 1 }

rPDUOutletConfigMonitoredName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the Monitored Outlet. The maximum string size is device dependent.
       An error will be returned if the set request exceeds the max size."
   ::= { rPDUOutletConfigMonitoredEntry 2 }

rPDUOutletConfigMonitoredNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The outlet number of an Outlet Monitored RACK PDU."
   ::= { rPDUOutletConfigMonitoredEntry 3 }


rPDUOutletConfigMonitoredLowLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing a low consumption condition. It is
       represented in Amps.  A warning will be issued when the
       load is less than the threshold value.

       A threshold value of 0 Amps effectively disables this
       warning.

       Maximum value must be less than the value returned
       by the rPDUOutletConfigMonitoredNearOverloadThreshold OID.

       0 will be returned if the unit is not Outlet Monitored Rack PDU."
   ::= { rPDUOutletConfigMonitoredEntry 4 }

rPDUOutletConfigMonitoredNearOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load is nearing an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than the value returned by
       the rPDUOutletConfigMonitoredLowLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDUOutletConfigMonitoredOverloadThreshold OID.

       0 will be returned if the unit is not Outlet Monitored Rack PDU."
   ::= { rPDUOutletConfigMonitoredEntry 5 }

rPDUOutletConfigMonitoredOverloadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the power consumption of
       the load has entered an overload condition. It is
       represented in Amps.  A warning will be issued when the
       load is greater than or equal to the threshold value.

       Minimum value must be greater than or equal to the value
       returned by the rPDUOutletConfigMonitoredNearOverloadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the rPDULoadDevMaxOutletLoad OID.

       0 will be returned if the unit is not Outlet Monitored Rack PDU."
   ::= { rPDUOutletConfigMonitoredEntry 6 }




-- the rPDUOutletStatus group

rPDUOutletStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of individual outlets. The number of
       entries is contained in the rPDUOutletDevNumCntrlOutlets OID or
       rPDUOutletDevMonitoredOutlets OID."
   ::= { rPDUOutletStatus 1 }

rPDUOutletStatusEntry OBJECT-TYPE
   SYNTAX RPDUOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlet to gather status from."
   INDEX  { rPDUOutletStatusIndex}
   ::= { rPDUOutletStatusTable 1 }

RPDUOutletStatusEntry ::=
   SEQUENCE {
      rPDUOutletStatusIndex          INTEGER,
      rPDUOutletStatusOutletName     DisplayString,
      rPDUOutletStatusOutletPhase    INTEGER,
      rPDUOutletStatusOutletState    INTEGER,
      rPDUOutletStatusCommandPending INTEGER,
      rPDUOutletStatusOutletBank     INTEGER,
      rPDUOutletStatusLoad           Gauge
   }

rPDUOutletStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { rPDUOutletStatusEntry 1 }

rPDUOutletStatusOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet. The maximum string size is device dependent.
       This OID is provided for informational purposes only."
   ::= { rPDUOutletStatusEntry 2 }

rPDUOutletStatusOutletPhase    OBJECT-TYPE
   SYNTAX INTEGER {
      phase1                     (1),
      phase2                     (2),
      phase3                     (3),
      phase1-2                   (4),
      phase2-3                   (5),
      phase3-1                   (6)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The phase/s associated with this outlet.

       For single phase devices, this object will always
       return phase1(1).

       For 3-phase devices, this object will return phase1 (1),
       phase2 (2), or phase3 (3) for outlets tied to a single
       phase.  For outlets tied to two phases, this object will
       return phase1-2 (4) for phases 1 and 2, phase2-3 (5) for
       phases 2 and 3, and phase3-1 (6) for phases 3 and 1."
   ::= { rPDUOutletStatusEntry 3 }

rPDUOutletStatusOutletState OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusOn              (1),
        outletStatusOff             (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the outletStatusOn (1) value will be returned.
       If the outlet is off, the outletStatusOff (2) value will be
       returned."
   ::= { rPDUOutletStatusEntry 4 }

rPDUOutletStatusCommandPending    OBJECT-TYPE
   SYNTAX INTEGER {
        outletStatusCommandPending    (1),
        outletStatusNoCommandPending  (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the command pending
        state of the outlet. If a command is pending on the
        outlet, the outletStatusCommandPending (1) value
        will be returned. If there is not a command pending
        on the outlet, the outletStatusNoCommandPending (2)
        will be returned."
   ::= { rPDUOutletStatusEntry 5 }

rPDUOutletStatusOutletBank    OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The bank associated with this outlet."
   ::= { rPDUOutletStatusEntry 6 }

rPDUOutletStatusLoad OBJECT-TYPE
   SYNTAX Gauge
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the measured Outlet load for
       an Outlet Monitored Rack PDU in tenths of Amps. For other
       models this OID is not supported."
   ::= { rPDUOutletStatusEntry 7 }


-- the rPDUOutletBank group

rPDUOutletBankTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUOutletBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for management of outlets on a per bank basis."
   ::= { rPDUOutletBank 1 }

rPDUOutletBankEntry OBJECT-TYPE
   SYNTAX RPDUOutletBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The bank to manage."
   INDEX  { rPDUOutletBankIndex}
   ::= { rPDUOutletBankTable 1 }

RPDUOutletBankEntry ::=
   SEQUENCE {
      rPDUOutletBankIndex                INTEGER,
      rPDUOutletBankOverloadRestriction  INTEGER
   }

rPDUOutletBankIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Switched Rack PDU bank entry."
   ::= { rPDUOutletBankEntry 1 }

rPDUOutletBankOverloadRestriction OBJECT-TYPE
   SYNTAX INTEGER       {
      alwaysAllowTurnON         (1),
      restrictOnNearOverload    (2),
      restrictOnOverload        (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID controls the behavior of a Switched Rack PDU
       bank when an overload condition is possible and
       additional outlets are requested to be turned on.

       Setting this OID to alwaysAllowTurnON (1) will always allow
       the outlets on the corresponding bank to turn on.

       Setting this OID to restrictOnNearOverload (2) will not allow
       outlets on the corresponding bank to turn on if the
       rPDULoadBankConfigNearOverloadThreshold OID is exceeded.

       Setting this OID to restrictOnOverload (3) will not allow
       outlets on the corresponding bank to turn on if the
       rPDULoadBankConfigOverloadThreshold OID is exceeded."
   ::= { rPDUOutletBankEntry 2 }

-- the rPDUPowerSupplyDevice group

rPDUPowerSupply1Status   OBJECT-TYPE
   SYNTAX INTEGER       {
      powerSupplyOneOk             (1),
      powerSupplyOneFailed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return powerSupply1Ok(1) if power
       supply 1 is functioning normally.  If not functioning normally,
       this OID will return powerSupply1Failed(2)."
   ::= { rPDUPowerSupplyDevice 1 }

rPDUPowerSupply2Status   OBJECT-TYPE
   SYNTAX INTEGER       {
      powerSupplyTwoOk             (1),
      powerSupplyTwoFailed         (2),
      powerSupplyTwoNotPresent     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return powerSupply2Ok(1) if power
       supply 2 is functioning normally.  If not functioning normally,
       this OID will return powerSupply2Failed(2).

       Metered Rack PDUs do not have a redundant powersupply."

   ::= { rPDUPowerSupplyDevice 2 }



rPDUPowerSupplyAlarm   OBJECT-TYPE
   SYNTAX INTEGER {
    allAvailablePowerSuppliesOK (1),
    powerSupplyOneFailed        (2),
    powerSupplyTwoFailed        (3),
    powerSupplyOneandTwoFailed  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return powerSupply Alarm"
   ::= { rPDUPowerSupplyDevice 3 }

-- the rPDUStatus group

rPDUStatusBankTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Status Bank Table"
   ::= { rPDUStatus 1 }


rPDUStatusBankTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUStatusBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of each Rack PDU Bank"
   ::= { rPDUStatus 2 }

rPDUStatusBankEntry  OBJECT-TYPE
   SYNTAX RPDUStatusBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to Bank entries"
   INDEX  { rPDUStatusBankIndex }
   ::= { rPDUStatusBankTable 1 }

RPDUStatusBankEntry ::=
   SEQUENCE {
      rPDUStatusBankIndex   INTEGER,
      rPDUStatusBankNumber  INTEGER,
      rPDUStatusBankState   INTEGER
   }

rPDUStatusBankIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the RACK PDU Bank entry."
   ::= { rPDUStatusBankEntry 1 }

rPDUStatusBankNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the bank number."
   ::= { rPDUStatusBankEntry 2 }

rPDUStatusBankState    OBJECT-TYPE
   SYNTAX INTEGER {
      bankLoadNormal                 (1),
      bankLoadLow                    (2),
      bankLoadNearOverload           (3),
      bankLoadOverload               (4)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
    "Getting this OID will return the bank load state.

    bankLoadNormal(1) indicates that the bank is
    operating properly within the rPDULoadBankConfigLowLoadThreshold
    and rPDULoadBankConfigNearOverloadThreshold OID values.

    bankLoadLow(2) indicates that the bank load has
    dropped below the rPDULoadBankConfigLowLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    bankLoadNearOverload(3) indicates that the bank load
    is greater than or equal to the
    rPDULoadBankConfigNearOverloadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    bankLoadOverload(4) indicates that the bank load is
    greater than or equal to the rPDULoadBankConfigOverloadThreshold
    OID value.
    An SNMP trap will occur when this state is entered or cleared."
   ::= { rPDUStatusBankEntry 3 }

-- Phase status table

rPDUStatusPhaseTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Status Phase Table"
   ::= { rPDUStatus 3 }


rPDUStatusPhaseTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUStatusPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of each Rack PDU Phase"
   ::= { rPDUStatus 4 }

rPDUStatusPhaseEntry  OBJECT-TYPE
   SYNTAX RPDUStatusPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to Phase entries"
   INDEX  { rPDUStatusPhaseIndex }
   ::= { rPDUStatusPhaseTable 1 }

RPDUStatusPhaseEntry ::=
   SEQUENCE {
      rPDUStatusPhaseIndex  INTEGER,
      rPDUStatusPhaseNumber INTEGER,
      rPDUStatusPhaseState  INTEGER
   }

rPDUStatusPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the RACK PDU Phase entry."
   ::= { rPDUStatusPhaseEntry 1 }

rPDUStatusPhaseNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the phase number."
   ::= { rPDUStatusPhaseEntry 2 }

rPDUStatusPhaseState    OBJECT-TYPE
   SYNTAX INTEGER {
      phaseLoadNormal                 (1),
      phaseLoadLow                    (2),
      phaseLoadNearOverload           (3),
      phaseLoadOverload               (4)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
    "Getting this OID will return the Phase load state.

    phaseLoadNormal(1) indicates that the Phase is
    operating properly within the rPDULoadPhaseConfigLowLoadThreshold
    and rPDULoadPhaseConfigNearOverloadThreshold OID values.

    phaseLoadLow(2) indicates that the Phase load has
    dropped below the rPDULoadPhaseConfigLowLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    phaseLoadNearOverload(3) indicates that the Phase load
    is greater than or equal to the
    rPDULoadPhaseConfigNearOverloadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    phaseLoadOverload(4) indicates that the Phase load is
    greater than or equal to the rPDULoadPhaseConfigOverloadThreshold
    OID value.
    An SNMP trap will occur when this state is entered or cleared."
   ::= { rPDUStatusPhaseEntry 3 }

-- Outlet status table

rPDUStatusOutletTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the Status Outlet Table"
   ::= { rPDUStatus 5 }


rPDUStatusOutletTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDUStatusOutletEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting of status of each Outlet of an Outlet Monitored Rack PDU."
   ::= { rPDUStatus 6 }

rPDUStatusOutletEntry  OBJECT-TYPE
   SYNTAX RPDUStatusOutletEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to Outlet entries"
   INDEX  { rPDUStatusOutletIndex }
   ::= { rPDUStatusOutletTable 1 }

RPDUStatusOutletEntry ::=
   SEQUENCE {
      rPDUStatusOutletIndex     INTEGER,
      rPDUStatusOutletNumber    INTEGER,
      rPDUStatusOutletState     INTEGER
   }

rPDUStatusOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the RACK PDU Outlet entry."
   ::= { rPDUStatusOutletEntry 1 }

rPDUStatusOutletNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the Outlet number."
   ::= { rPDUStatusOutletEntry 2 }

rPDUStatusOutletState    OBJECT-TYPE
   SYNTAX INTEGER {
      outletLoadNormal                 (1),
      outletLoadLow                    (2),
      outletLoadNearOverload           (3),
      outletLoadOverload               (4)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
    "Getting this OID will return the Outlet load state.

    outletLoadNormal(1) indicates that the Outlet is
    operating properly within the rPDUOutletConfigMonitoredLowLoadThreshold
    and rPDUOutletConfigMonitoredNearOverloadThreshold OID values.

    outletLoadLow(2) indicates that the Outlet load has
    dropped below the rPDUOutletConfigMonitoredLowLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    outletLoadNearOverload(3) indicates that the Outlet load
    is greater than or equal to the
    rPDUOutletConfigMonitoredNearOverloadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    outletLoadOverload(4) indicates that the Outlet load is
    greater than or equal to the rPDUOutletConfigMonitoredOverloadThreshold
    OID value.
    An SNMP trap will occur when this state is entered or cleared."
   ::= { rPDUStatusOutletEntry 3 }

-- Common rPDU2 values

Rpdu2OutletPhaseLayoutType ::= INTEGER {
      seqPhase1ToNeutral   (1),
      seqPhase2ToNeutral   (2),
      seqPhase3ToNeutral   (3),
      seqPhase1ToPhase2    (4),
      seqPhase2ToPhase3    (5),
      seqPhase3ToPhase1    (6)
   }

-- rPDU2 Ident Table

rPDU2IdentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of Rack PDUs"
   ::= { rPDU2 1 }

rPDU2IdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2IdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU identification data"
   ::= { rPDU2 2 }

rPDU2IdentEntry OBJECT-TYPE
   SYNTAX RPDU2IdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Identification data from Rack PDU being queried"
   INDEX { rPDU2IdentIndex }
   ::= { rPDU2IdentTable 1 }

RPDU2IdentEntry ::=
   SEQUENCE {
      rPDU2IdentIndex               INTEGER,
      rPDU2IdentModule              INTEGER,
      rPDU2IdentName                DisplayString,
      rPDU2IdentLocation            DisplayString,
      rPDU2IdentHardwareRev         DisplayString,
      rPDU2IdentFirmwareRev         DisplayString,
      rPDU2IdentDateOfManufacture   DisplayString,
      rPDU2IdentModelNumber         DisplayString,
      rPDU2IdentSerialNumber        DisplayString,
      rPDU2IdentContact             DisplayString,
      rPDU2IdentBootMonitorRev      DisplayString,
      rPDU2IdentLongDescription     DisplayString,
      rPDU2IdentNMCSerialNumber     DisplayString
   }

rPDU2IdentIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU identification table
       entry"
   ::= { rPDU2IdentEntry 1 }

rPDU2IdentModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2IdentEntry 2 }

rPDU2IdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the Rack PDU"
   ::= { rPDU2IdentEntry 3 }

rPDU2IdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the location
       of the Rack PDU"
   ::= { rPDU2IdentEntry 4 }

rPDU2IdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU hardware version"
   ::= { rPDU2IdentEntry 5 }

rPDU2IdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU firmware version"
   ::= { rPDU2IdentEntry 6 }

rPDU2IdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date the Rack PDU was manufactured
       in mm/dd/yyyy format"
   ::= { rPDU2IdentEntry 7 }

rPDU2IdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU model number"
   ::= { rPDU2IdentEntry 8 }

rPDU2IdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU serial number"
   ::= { rPDU2IdentEntry 9 }

rPDU2IdentContact OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the
      person to contact regarding the Rack PDU"
   ::= { rPDU2IdentEntry 10 }
   
rPDU2IdentBootMonitorRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU Boot Monitor version"
   ::= { rPDU2IdentEntry 11 }
   
 rPDU2IdentLongDescription OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU Long Description name"
   ::= { rPDU2IdentEntry 12 } 
   
 rPDU2IdentNMCSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The Rack PDU Network Management Card (NMC) serial number"
   ::= { rPDU2IdentEntry 13 }


-- rPDU2 Device Data

rPDU2DeviceTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of Rack PDUs"
   ::= { rPDU2 3 }

rPDU2Device                    OBJECT IDENTIFIER ::=  { rPDU2 4 }

-- rPDU2 Device Config

rPDU2DeviceConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2DeviceConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU configuration data"
   ::= { rPDU2Device 1 }

rPDU2DeviceConfigEntry OBJECT-TYPE
   SYNTAX RPDU2DeviceConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from Rack PDU being queried"
   INDEX { rPDU2DeviceConfigIndex }
   ::= { rPDU2DeviceConfigTable 1 }

RPDU2DeviceConfigEntry ::=
   SEQUENCE {
      rPDU2DeviceConfigIndex                       INTEGER,
      rPDU2DeviceConfigModule                      INTEGER,
      rPDU2DeviceConfigName                        DisplayString,
      rPDU2DeviceConfigLocation                    DisplayString,
      rPDU2DeviceConfigDisplayOrientation          INTEGER,
      rPDU2DeviceConfigColdstartDelay              INTEGER,
      rPDU2DeviceConfigLowLoadPowerThreshold       INTEGER,
      rPDU2DeviceConfigNearOverloadPowerThreshold  INTEGER,
      rPDU2DeviceConfigOverloadPowerThreshold      INTEGER,
      rPDU2DeviceConfigDevicePeakPowerReset        INTEGER,
      rPDU2DeviceConfigDeviceEnergyReset           INTEGER,
      rPDU2DeviceConfigOutletsEnergyReset          INTEGER,
      rPDU2DeviceConfigOutletsPeakLoadReset        INTEGER,
      rPDU2DeviceConfigContact                     DisplayString

   }

rPDU2DeviceConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU table entry"
   ::= { rPDU2DeviceConfigEntry 1 }

rPDU2DeviceConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2DeviceConfigEntry 2 }

rPDU2DeviceConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the Rack PDU"
   ::= { rPDU2DeviceConfigEntry 3 }

rPDU2DeviceConfigLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the location
       of the Rack PDU"
   ::= { rPDU2DeviceConfigEntry 4 }

rPDU2DeviceConfigDisplayOrientation OBJECT-TYPE
   SYNTAX INTEGER {
      displayNormal  (1),
      displayReverse (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates the intended physical orientation
       of the display.

       displayNormal(1) indicates normal orientation
       displayReverse(2) indicates upside down orientation"
   ::= { rPDU2DeviceConfigEntry 5 }

rPDU2DeviceConfigColdstartDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of delay, measured in seconds, between
       when power is provided to the Rack PDU and when
       the Rack PDU provides basic master power to the
       outlets.
       Allowed values are:
       -1       - never apply power automatically.
       0        - apply power immediately.
       1 to 300 - delay up to 300 seconds (5 minutes)."
   ::= { rPDU2DeviceConfigEntry 6 }

rPDU2DeviceConfigLowLoadPowerThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined low power draw alarm threshold,
       measured in tenths of kilowatts. Models that do
       not support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceConfigEntry 7 }

rPDU2DeviceConfigNearOverloadPowerThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined near power overload threshold,
       measured in tenths of kilowatts. Models that do
       not support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceConfigEntry 8 }

rPDU2DeviceConfigOverloadPowerThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined power overload threshold,
       measured in tenths of kilowatts. Models that do
       not support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceConfigEntry 9 }

rPDU2DeviceConfigDevicePeakPowerReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation (1),
      reset       (2),
      notSupported (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the existing peak power value
       to be replaced by the current load power value.

       Getting this OID will do nothing and return the noOperation(1) value.
       Models that do not support this feature will respond to this OID
       with a value of not supported (3). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2DeviceConfigEntry 10 }

rPDU2DeviceConfigDeviceEnergyReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation  (1),
      reset        (2),
      notSupported (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the device energy meter value
       to be reset to zero.

       Getting this OID in models that support this feature will do nothing
       and return the noOperation(1) value.

       Models that do not support this feature will respond to this OID
       with a value of notSupported (3). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2DeviceConfigEntry 11 }

rPDU2DeviceConfigOutletsEnergyReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation  (1),
      reset        (2),
      notSupported (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the all outlet energy meter values
       to be reset to zero.

       Getting this OID will do nothing and return the noOperation(1) value.

       Models that do not support this feature will respond to this OID
       with a value of notSupported (3). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2DeviceConfigEntry 12 }

rPDU2DeviceConfigOutletsPeakLoadReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation  (1),
      reset        (2),
      notSupported (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the all outlet peak load values
       to be reset to zero.

       Getting this OID will do nothing and return the noOperation(1) value.

       Models that do not support this feature will respond to this OID
       with a value of notSupported (3). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2DeviceConfigEntry 13 }

rPDU2DeviceConfigContact OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the
      person to contact regarding the Rack PDU"
   ::= { rPDU2DeviceConfigEntry 14 }

-- rPDU2 Device Properties

rPDU2DevicePropertiesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2DevicePropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU properties"
   ::= { rPDU2Device 2 }

rPDU2DevicePropertiesEntry OBJECT-TYPE
   SYNTAX RPDU2DevicePropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Properties of the Rack PDU being queried"
   INDEX { rPDU2DevicePropertiesIndex }
   ::= { rPDU2DevicePropertiesTable 1 }

RPDU2DevicePropertiesEntry ::=
   SEQUENCE {
      rPDU2DevicePropertiesIndex                   INTEGER,
      rPDU2DevicePropertiesModule                  INTEGER,
      rPDU2DevicePropertiesName                    DisplayString,
      rPDU2DevicePropertiesNumOutlets              INTEGER,
      rPDU2DevicePropertiesNumSwitchedOutlets      INTEGER,
      rPDU2DevicePropertiesNumMeteredOutlets       INTEGER,
      rPDU2DevicePropertiesNumPhases               INTEGER,
      rPDU2DevicePropertiesNumMeteredBanks         INTEGER,
      rPDU2DevicePropertiesMaxCurrentRating        INTEGER,
      rPDU2DevicePropertiesOrientation             INTEGER,
      rPDU2DevicePropertiesOutletLayout            INTEGER,
      rPDU2DevicePropertiesMaxPhaseCurrentRating   INTEGER,
      rPDU2DevicePropertiesDevicePowerRating       INTEGER      
   }

rPDU2DevicePropertiesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU properties table entry"
   ::= { rPDU2DevicePropertiesEntry 1 }

rPDU2DevicePropertiesModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2DevicePropertiesEntry 2 }

rPDU2DevicePropertiesName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 3 }

rPDU2DevicePropertiesNumOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of outlets on the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 4 }

rPDU2DevicePropertiesNumSwitchedOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of switched outlets on the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 5 }

rPDU2DevicePropertiesNumMeteredOutlets OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of metered outlets on the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 6 }

rPDU2DevicePropertiesNumPhases OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of phases present in the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 7 }

rPDU2DevicePropertiesNumMeteredBanks OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of metered banks present in the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 8 }

rPDU2DevicePropertiesMaxCurrentRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum current rating, measured in Amps, for
       the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 9 }

rPDU2DevicePropertiesOrientation OBJECT-TYPE
   SYNTAX INTEGER {
      horizontal     (1),
      vertical       (2),
      verticalISXv2  (3),
      verticalISXv3  (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Rack PDU orientation"
   ::= { rPDU2DevicePropertiesEntry 10 }

rPDU2DevicePropertiesOutletLayout OBJECT-TYPE
   SYNTAX INTEGER {
      seqPhaseToNeutral            (1),
      seqPhaseToPhase              (2),
      seqPhToNeu21PhToPh           (3),
      seqPhToPhGrouped             (4),
      seqPhToNGrouped              (5),
      seqPToN1516PToPGrouped       (6),
      seqPhToPh2xGrouped           (7),
      seqPhToN2xGrouped            (8),
      seqNotApplicable             (9),
      seqPhToNPhToPhPhToN         (10)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return outlet layout for the device.

       seqPhaseToNeutral(1) indicates outlet layout as follows:
       1:1-N,2:2-N,3:3-N,4:1-N,5:2-N,...
       or for single phase SKUs, all outlets 1-N

       seqPhaseToPhase(2) indicates outlet layout as follows:
       1:1-2,2:2-3,3:3-1,4:1-2,5:2-3,...

       seqPhToNeu21PhToPh(3) indicates outlet layout as follows:
       1:1-N,2:2-N...21:3-N,22:1-2,23:2-3,24:3-1,...

       seqPhToPhGrouped(4) indicates outlet layout as follows:
       For AP8xxx SKU's Group 1:1-2, Group 2:2-3, Group 3:3-1.

       seqPhToNGrouped(5) indicates outlet layout as follows:
       This unit has 3 outlet groups.  Group 1:1-N, Group 2:2-N, Group 3:3-N.

       seqPToN1516PToPGrouped(6) indicates outlet layout as follows:
       This unit has 4 outlet groups. Group 1 (Outlets 1-14):1-2,
       Group 2 (Outlets 15-16):1-N, Group 3:2-3, Group 4:3-1.

       seqPhToPh2xGrouped(7) indicates outlet layout as follows:
       This unit has 6 outlet groups.  Group 1:1-2, Group 2:1-2, Group 3:2-3,
       Group 4:2-3, Group 5:3-1, Group 6:3-1.

       seqPhToN2xGrouped(8) indicates outlet layout as follows:
       This unit has 6 outlet groups.  Group 1:1-N, Group 2:1-N, Group 3:2-N,
       Group 4:2-N, Group 5:3-N, Group 6:3-N.

       seqNotApplicable(9):
       Outlet layout does not affect any of the user interfaces for
       AP88XX SKUs.  These SKUs may report seqNotApplicable(9) if there is
       not an exact outlet layout match available.

       seqPhToNPhToPhPhToN(10) indicates outlet layout as follows:
       Group 1:1-N, Group 2:1-2, Group 3:2-N."
   ::= { rPDU2DevicePropertiesEntry 11 }

rPDU2DevicePropertiesMaxPhaseCurrentRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum current rating, measured in Amps, for
       the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 12 }
   

rPDU2DevicePropertiesDevicePowerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The maximum power rating, measured in Watts, for
        the Rack PDU"
   ::= { rPDU2DevicePropertiesEntry 13 }

   
-- rPDU2 Device Status

rPDU2DeviceStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2DeviceStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU status information"
   ::= { rPDU2Device 3 }

rPDU2DeviceStatusEntry OBJECT-TYPE
   SYNTAX RPDU2DeviceStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status information from the Rack PDU being queried"
   INDEX { rPDU2DeviceStatusIndex }
   ::= { rPDU2DeviceStatusTable 1 }

RPDU2DeviceStatusEntry ::=
   SEQUENCE {
      rPDU2DeviceStatusIndex                  INTEGER,
      rPDU2DeviceStatusModule                 INTEGER,
      rPDU2DeviceStatusName                   DisplayString,
      rPDU2DeviceStatusLoadState              INTEGER,
      rPDU2DeviceStatusPower                  INTEGER,
      rPDU2DeviceStatusPeakPower              INTEGER,
      rPDU2DeviceStatusPeakPowerTimestamp     DisplayString,
      rPDU2DeviceStatusPeakPowerStartTime     DisplayString,
      rPDU2DeviceStatusEnergy                 INTEGER,
      rPDU2DeviceStatusEnergyStartTime        DisplayString,
      rPDU2DeviceStatusCommandPending         INTEGER,
      rPDU2DeviceStatusPowerSupplyAlarm       INTEGER,
      rPDU2DeviceStatusPowerSupply1Status     INTEGER,
      rPDU2DeviceStatusPowerSupply2Status     INTEGER,
      rPDU2DeviceStatusOutletsEnergyStartTime DisplayString,
      rPDU2DeviceStatusApparentPower          INTEGER,
      rPDU2DeviceStatusPowerFactor            INTEGER,
      rPDU2DeviceStatusNPSType                INTEGER
   }

rPDU2DeviceStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU status table entry"
   ::= { rPDU2DeviceStatusEntry 1 }

rPDU2DeviceStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2DeviceStatusEntry 2 }

rPDU2DeviceStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the Rack PDU"
   ::= { rPDU2DeviceStatusEntry 3 }

rPDU2DeviceStatusLoadState OBJECT-TYPE
   SYNTAX INTEGER {
      lowLoad        (1),
      normal         (2),
      nearOverload   (3),
      overload       (4),
      notsupported   (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the present load status of the Rack PDU.
       Models that do not support this feature will respond to this OID
       with a value of notsupported (5)."
   ::= { rPDU2DeviceStatusEntry 4 }

rPDU2DeviceStatusPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power consumption of the Rack PDU load in hundredths of kilowatts.
       Models that do not support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceStatusEntry 5 }

rPDU2DeviceStatusPeakPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The peak power consumption of the Rack PDU load in hundredths of kilowatts.
       Models that do not support this feature will respond to this OID with a value
       of -1."
   ::= { rPDU2DeviceStatusEntry 6 }

rPDU2DeviceStatusPeakPowerTimestamp OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time that peak power consumption occurred.
       Models that do not support this feature will respond to this OID with string
       'notsupported'."
   ::= { rPDU2DeviceStatusEntry 7 }

rPDU2DeviceStatusPeakPowerStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last device peak power reset.
       Models that do not support this feature will respond to this OID with string
       'notsupported'."
   ::= { rPDU2DeviceStatusEntry 8 }

rPDU2DeviceStatusEnergy OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user resettable energy meter measuring Rack PDU load
       energy consumption in tenths of kilowatt-hours. Models that do not
       support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceStatusEntry 9 }

rPDU2DeviceStatusEnergyStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last device energy
       meter reset. Models that do not support this feature will
       respond to this OID with string 'notsupported'."
   ::= { rPDU2DeviceStatusEntry 10 }


rPDU2DeviceStatusCommandPending OBJECT-TYPE
   SYNTAX INTEGER {
      commandPending          (1),
      noCommandPending        (2),
      commandPendingUnknown   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the device
       is processing a pending command.  If
       the commandPendingUnknown (3) value is
       returned, all devices powered by the
       Rack PDU should be shut down.  The
       Rack PDU's power should then be cycled
       to clear this condition."
   ::= { rPDU2DeviceStatusEntry 11 }

rPDU2DeviceStatusPowerSupplyAlarm OBJECT-TYPE
   SYNTAX INTEGER {
      normal   (1),
      alarm    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates a power supply alarm is active when value
      equals alarm (2)"
   ::= { rPDU2DeviceStatusEntry 12 }

rPDU2DeviceStatusPowerSupply1Status OBJECT-TYPE
   SYNTAX INTEGER {
      normal       (1),
      alarm        (2),
      notInstalled (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not an alarm is active in Power
       Supply 1"
   ::= { rPDU2DeviceStatusEntry 13 }

rPDU2DeviceStatusPowerSupply2Status OBJECT-TYPE
   SYNTAX INTEGER {
      normal       (1),
      alarm        (2),
      notInstalled (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not an alarm is active in Power
       Supply 2"
   ::= { rPDU2DeviceStatusEntry 14 }

rPDU2DeviceStatusOutletsEnergyStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last outlets energy
       meter reset. Models that do not support this feature will
       respond to this OID with string 'notsupported'."
   ::= { rPDU2DeviceStatusEntry 15 }

rPDU2DeviceStatusApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The apparent power consumption of the Rack PDU load in hundredths of kiloVoltAmps (kVA).
       Models that do not support this feature will respond to this OID
       with a value of -1."
   ::= { rPDU2DeviceStatusEntry 16 }

rPDU2DeviceStatusPowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power factor of the Rack PDU load in hundredths. Models that do not support this feature
       will respond to this OID with a value of -1."
   ::= { rPDU2DeviceStatusEntry 17 }

rPDU2DeviceStatusNPSType OBJECT-TYPE
   SYNTAX INTEGER {
      notNPS    (1),
      host      (2),
      guest     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The device NPS status:
       notNPS (1) indicates the Rack PDU is not in an NPS group.
       host (2) indicates the Rack PDU has been designated as a host in an NPS group.
         Only one Rack PDU in an NPS group is allowed to be the host.
       guest (3) indicates the Rack PDU has been designated as a guest in an NPS group."
   ::= { rPDU2DeviceStatusEntry 18 }

-- rPDU2 Device Control

rPDU2DeviceControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2DeviceControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU control data"
   ::= { rPDU2Device 4 }

rPDU2DeviceControlEntry OBJECT-TYPE
   SYNTAX RPDU2DeviceControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Control data from Rack PDU being queried"
   INDEX { rPDU2DeviceControlIndex }
   ::= { rPDU2DeviceControlTable 1 }

RPDU2DeviceControlEntry ::=
   SEQUENCE {
      rPDU2DeviceControlIndex    INTEGER,
      rPDU2DeviceControlModule   INTEGER,
      rPDU2DeviceControlName     DisplayString,
      rPDU2DeviceControlCommand  INTEGER
   }

rPDU2DeviceControlIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU control table entry"
   ::= { rPDU2DeviceControlEntry 1 }

rPDU2DeviceControlModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2DeviceControlEntry 2 }

rPDU2DeviceControlName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user-defined string identifying the Rack PDU"
   ::= { rPDU2DeviceControlEntry 3 }

rPDU2DeviceControlCommand OBJECT-TYPE
   SYNTAX INTEGER       {
      immediateAllOn            (1),
      delayedAllOn              (2),
      immediateAllOff           (3),
      immediateAllReboot        (4),
      delayedAllReboot          (5),
      noCommandAll              (6),
      delayedAllOff             (7),
      cancelAllPendingCommands  (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to immediateAllOn (1) will turn all outlets
       on immediately.

       Setting this OID to delayedAllOn (2) will turn all outlets on as
       defined by each outlet's rPDU2OutletSwitchedConfigPowerOnTime
       OID value.

       Setting this OID to immediateAllOff (3) will turn all outlets
       off immediately.

       Setting this OID to immediateAllReboot (4) will cause an immediateAllOff
       command to be performed. Once all outlets are off, the
       Switched Rack PDU will then delay the
       rPDU2OutletSwitchedConfigRebootDuration OID time, and then perform an
       immediateAllOn command.

       Setting this OID to delayedAllReboot (5) will cause a
       delayedAllOff command to be performed. Once all outlets are off,
       the Switched Rack PDU will then delay the largest
       rPDU2OutletSwitchedConfigRebootDuration OID time, and then perform a
       delayedAllOn command.

       Setting this OID to noCommandAll (6) will have no effect.

       Setting this OID to delayedAllOff (7) will turn all outlets off
       as defined by each outlet's rPDU2OutletSwitchedConfigPowerOffTime
       OID value.

       Setting this OID to cancelAllPendingCommands (8) will cause all pending
       commands on the Switched Rack PDU to be cancelled.

       Getting this OID will return the noCommandAll (6)
       value."
   ::= { rPDU2DeviceControlEntry 4 }

-- rPDU2 Phase Data

rPDU2PhaseTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of connected Rack PDU phases"
   ::= { rPDU2 5}

rPDU2Phase                     OBJECT IDENTIFIER ::=  { rPDU2 6 }

-- rPDU2 Phase Config

rPDU2PhaseConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2PhaseConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU phase configuration data"
   ::= { rPDU2Phase 1 }

rPDU2PhaseConfigEntry OBJECT-TYPE
   SYNTAX RPDU2PhaseConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from currently queried Rack
       PDU phase"
   INDEX { rPDU2PhaseConfigIndex }
   ::= { rPDU2PhaseConfigTable 1 }

RPDU2PhaseConfigEntry ::=
   SEQUENCE {
      rPDU2PhaseConfigIndex                        INTEGER,
      rPDU2PhaseConfigModule                       INTEGER,
      rPDU2PhaseConfigNumber                       INTEGER,
      rPDU2PhaseConfigOverloadRestriction          INTEGER,
      rPDU2PhaseConfigLowLoadCurrentThreshold      INTEGER,
      rPDU2PhaseConfigNearOverloadCurrentThreshold INTEGER,
      rPDU2PhaseConfigOverloadCurrentThreshold     INTEGER,
      rPDU2PhaseConfigPhasePeakCurrentReset        INTEGER
   }

rPDU2PhaseConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase configuration
       table entry"
   ::= { rPDU2PhaseConfigEntry 1 }

rPDU2PhaseConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2PhaseConfigEntry 2 }

rPDU2PhaseConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric phase ID"
   ::= { rPDU2PhaseConfigEntry 3 }

rPDU2PhaseConfigOverloadRestriction OBJECT-TYPE
   SYNTAX INTEGER       {
      alwaysAllowTurnON         (1),
      restrictOnNearOverload    (2),
      restrictOnOverload        (3),
      notSupported              (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID controls the behavior of a Switched Rack PDU
       phase when an overload condition is possible and
       additional outlets are requested to be turned on.

       Setting this OID to alwaysAllowTurnON (1) will always allow
       the outlets on the corresponding phase to turn on.

       Setting this OID to restrictOnNearOverload (2) will not allow
       outlets on the corresponding phase to turn on if the
       rPDULoadConfigNearOverloadThreshold OID is exceeded.

       Setting this OID to restrictOnOverload (3) will not allow
       outlets on the corresponding phase to turn on if the
       rPDULoadConfigOverloadThreshold OID is exceeded.

       Models that do not support this feature will respond to this OID
       with a value of notSupported (4). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2PhaseConfigEntry 4 }

rPDU2PhaseConfigLowLoadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined low load phase current
       threshold in Amps"
   ::= { rPDU2PhaseConfigEntry 5 }

rPDU2PhaseConfigNearOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined near phase overload warning
       threshold in Amps"
   ::= { rPDU2PhaseConfigEntry 6 }

rPDU2PhaseConfigOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined phase overload current
      threshold in Amps"
   ::= { rPDU2PhaseConfigEntry 7 }

rPDU2PhaseConfigPhasePeakCurrentReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation (1),
      reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the existing peak current value
       to be replaced by the present load current value.

       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { rPDU2PhaseConfigEntry 8 }


-- rPDU2 Phase Properties

rPDU2PhasePropertiesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2PhasePropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU phase properties"
   ::= { rPDU2Phase 2 }

rPDU2PhasePropertiesEntry OBJECT-TYPE
   SYNTAX RPDU2PhasePropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Properties of the currently queried Rack
       PDU phase"
   INDEX { rPDU2PhasePropertiesIndex }
   ::= { rPDU2PhasePropertiesTable 1 }

RPDU2PhasePropertiesEntry ::=
   SEQUENCE {
      rPDU2PhasePropertiesIndex  INTEGER,
      rPDU2PhasePropertiesModule INTEGER,
      rPDU2PhasePropertiesNumber INTEGER
   }

rPDU2PhasePropertiesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase properties
       table entry"
   ::= { rPDU2PhasePropertiesEntry 1 }

rPDU2PhasePropertiesModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2PhasePropertiesEntry 2 }

rPDU2PhasePropertiesNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric phase ID"
   ::= { rPDU2PhasePropertiesEntry 3 }

-- rPDU2 Phase Status

rPDU2PhaseStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2PhaseStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU phase status data"
   ::= { rPDU2Phase 3 }

rPDU2PhaseStatusEntry OBJECT-TYPE
   SYNTAX RPDU2PhaseStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status data from currently queried Rack PDU
       phase"
   INDEX { rPDU2PhaseStatusIndex }
   ::= { rPDU2PhaseStatusTable 1 }

RPDU2PhaseStatusEntry ::=
   SEQUENCE {
      rPDU2PhaseStatusIndex                    INTEGER,
      rPDU2PhaseStatusModule                   INTEGER,
      rPDU2PhaseStatusNumber                   INTEGER,
      rPDU2PhaseStatusLoadState                INTEGER,
      rPDU2PhaseStatusCurrent                  INTEGER,
      rPDU2PhaseStatusVoltage                  INTEGER,
      rPDU2PhaseStatusPower                    INTEGER,
      rPDU2PhaseStatusApparentPower            INTEGER,
      rPDU2PhaseStatusPowerFactor              INTEGER,
      rPDU2PhaseStatusPeakCurrent              INTEGER,
      rPDU2PhaseStatusPeakCurrentTimestamp     DisplayString,
      rPDU2PhaseStatusPeakCurrentStartTime     DisplayString
   }

rPDU2PhaseStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase status table
       entry"
   ::= { rPDU2PhaseStatusEntry 1 }

rPDU2PhaseStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2PhaseStatusEntry 2 }

rPDU2PhaseStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric phase ID"
   ::= { rPDU2PhaseStatusEntry 3 }

rPDU2PhaseStatusLoadState OBJECT-TYPE
   SYNTAX INTEGER {
      lowLoad        (1),
      normal         (2),
      nearOverload   (3),
      overload       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the present load status of the Rack PDU
       phase being queried"
   ::= { rPDU2PhaseStatusEntry 4 }

rPDU2PhaseStatusCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the current draw, in tenths of Amps, of the load
       on the Rack PDU phase being queried"
   ::= { rPDU2PhaseStatusEntry 5 }

rPDU2PhaseStatusVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the Voltage, in Volts, of the Rack
       PDU phase being queried. Models that do not support this
       feature will respond to this OID with a value of -1."
   ::= { rPDU2PhaseStatusEntry 6 }

rPDU2PhaseStatusPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the load power, in hundredths of kilowatts (kW),
       consumed on the Rack PDU phase being queried.
       Models that do not support this feature will respond to this
       OID with a value of -1."
   ::= { rPDU2PhaseStatusEntry 7 }

rPDU2PhaseStatusApparentPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the load apparent power, in hundredths of kiloVoltAmps (kVA),
       consumed on the Rack PDU phase being queried.
       Models that do not support this feature will respond to this
       OID with a value of -1."
   ::= { rPDU2PhaseStatusEntry 8 }

rPDU2PhaseStatusPowerFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the load power factor, in hundredths,
       of the Rack PDU phase being queried.
       Models that do not support this feature will respond to
       this OID with a value of -1."
   ::= { rPDU2PhaseStatusEntry 9 }


rPDU2PhaseStatusPeakCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The peak current of the Rack PDU phase load in tenths of Amps"
   ::= { rPDU2PhaseStatusEntry 10 }

rPDU2PhaseStatusPeakCurrentTimestamp OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time that the peak current occurred"
   ::= { rPDU2PhaseStatusEntry 11 }

rPDU2PhaseStatusPeakCurrentStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last phase peak current reset"
   ::= { rPDU2PhaseStatusEntry 12 }

-- rPDU2 Bank Data

rPDU2BankTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of connected Rack PDU banks"
   ::= { rPDU2 7}

rPDU2Bank                      OBJECT IDENTIFIER ::=  { rPDU2 8 }

-- rPDU2 Bank Config

rPDU2BankConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2BankConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU bank configuration data"
   ::= { rPDU2Bank 1 }

rPDU2BankConfigEntry OBJECT-TYPE
   SYNTAX RPDU2BankConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from currently queried
       Rack PDU bank"
   INDEX { rPDU2BankConfigIndex }
   ::= { rPDU2BankConfigTable 1 }

RPDU2BankConfigEntry ::=
   SEQUENCE {
      rPDU2BankConfigIndex                         INTEGER,
      rPDU2BankConfigModule                        INTEGER,
      rPDU2BankConfigNumber                        INTEGER,
      rPDU2BankConfigOverloadRestriction           INTEGER,
      rPDU2BankConfigLowLoadCurrentThreshold       INTEGER,
      rPDU2BankConfigNearOverloadCurrentThreshold  INTEGER,
      rPDU2BankConfigOverloadCurrentThreshold      INTEGER,
      rPDU2BankConfigBankPeakCurrentReset          INTEGER
   }

rPDU2BankConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU bank configuration
       table entry"
   ::= { rPDU2BankConfigEntry 1 }

rPDU2BankConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2BankConfigEntry 2 }

rPDU2BankConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric bank ID"
   ::= { rPDU2BankConfigEntry 3 }

rPDU2BankConfigOverloadRestriction OBJECT-TYPE
   SYNTAX INTEGER       {
      alwaysAllowTurnON         (1),
      restrictOnNearOverload    (2),
      restrictOnOverload        (3),
      notSupported              (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID controls the behavior of a Switched Rack PDU
       bank when an overload condition is possible and
       additional outlets are requested to be turned on.

       Setting this OID to alwaysAllowTurnON (1) will always allow
       the outlets on the corresponding bank to turn on.

       Setting this OID to restrictOnNearOverload (2) will not allow
       outlets on the corresponding bank to turn on if the
       rPDU2BankConfigNearOverloadCurrentThreshold OID is exceeded.

       Setting this OID to restrictOnOverload (3) will not allow
       outlets on the corresponding bank to turn on if the
       rPDU2BankConfigOverloadCurrentThreshold OID is exceeded.

       Models that do not support this feature will respond to this OID
       with a value of notSupported (4). Attempts to set this OID
       in these models will fail."
   ::= { rPDU2BankConfigEntry 4 }

rPDU2BankConfigLowLoadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined low load bank current
       threshold in Amps"
   ::= { rPDU2BankConfigEntry 5 }

rPDU2BankConfigNearOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined near bank overload current warning
       threshold in Amps"
   ::= { rPDU2BankConfigEntry 6 }

rPDU2BankConfigOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined bank overload current threshold
       in Amps"
   ::= { rPDU2BankConfigEntry 7 }

 rPDU2BankConfigBankPeakCurrentReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation (1),
      reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the existing peak current value
       to be replaced by the present load current value.

       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { rPDU2BankConfigEntry 8 }

-- rPDU2 Bank Properties

rPDU2BankPropertiesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2BankPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU bank properties"
   ::= { rPDU2Bank 2 }

rPDU2BankPropertiesEntry OBJECT-TYPE
   SYNTAX RPDU2BankPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Properties of the currently queried
       Rack PDU bank"
   INDEX { rPDU2BankPropertiesIndex }
   ::= { rPDU2BankPropertiesTable 1 }

RPDU2BankPropertiesEntry ::=
   SEQUENCE {
      rPDU2BankPropertiesIndex                  INTEGER,
      rPDU2BankPropertiesModule                 INTEGER,
      rPDU2BankPropertiesNumber                 INTEGER,      
      rPDU2BankPropertiesPhaseLayout            Rpdu2OutletPhaseLayoutType,   
      rPDU2BankPropertiesBreakerRating          INTEGER
   }

rPDU2BankPropertiesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU bank properties
       table entry"
   ::= { rPDU2BankPropertiesEntry 1 }

rPDU2BankPropertiesModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2BankPropertiesEntry 2 }

rPDU2BankPropertiesNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric bank ID"
   ::= { rPDU2BankPropertiesEntry 3 }

rPDU2BankPropertiesPhaseLayout OBJECT-TYPE
   SYNTAX Rpdu2OutletPhaseLayoutType
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID describes the outlet phase connections on
      the referenced bank as follows:

      seqPhase1ToNeutral(1) indicates that bank outlets are
      wired from Phase 1 to Neutral.

      seqPhase2ToNeutral(2) indicates that bank outlets are
      wired from Phase 2 to Neutral.

      seqPhase3ToNeutral(3) indicates that bank outlets are
      wired from Phase 3 to Neutral.

      seqPhase1ToPhase2(4) indicates that bank outlets are
      wired from Phase 1 to Phase 2.

      seqPhase2ToPhase3(5) indicates that bank outlets are
      wired from Phase 2 to Phase 3.

      seqPhase3ToPhase1(6) indicates that bank outlets are
      wired from Phase 3 to Phase 1."
   ::= { rPDU2BankPropertiesEntry 4 }
   

rPDU2BankPropertiesBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "If bank circuit breakers are present on the device, this OID will return 
	   the rating of the breaker in Amps."
   ::= { rPDU2BankPropertiesEntry 5 }   

-- rPDU2 Bank Status

rPDU2BankStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2BankStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU bank status data"
   ::= { rPDU2Bank 3 }

rPDU2BankStatusEntry OBJECT-TYPE
   SYNTAX RPDU2BankStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status data from currently queried Rack PDU
       bank"
   INDEX { rPDU2BankStatusIndex }
   ::= { rPDU2BankStatusTable 1 }

RPDU2BankStatusEntry ::=
   SEQUENCE {
      rPDU2BankStatusIndex                    INTEGER,
      rPDU2BankStatusModule                   INTEGER,
      rPDU2BankStatusNumber                   INTEGER,
      rPDU2BankStatusLoadState                INTEGER,
      rPDU2BankStatusCurrent                  INTEGER,
      rPDU2BankStatusPeakCurrent              INTEGER,
      rPDU2BankStatusPeakCurrentTimestamp     DisplayString,
      rPDU2BankStatusPeakCurrentStartTime     DisplayString
   }

rPDU2BankStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU bank status
       table entry"
   ::= { rPDU2BankStatusEntry 1 }

rPDU2BankStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2BankStatusEntry 2 }

rPDU2BankStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric bank ID"
   ::= { rPDU2BankStatusEntry 3 }

rPDU2BankStatusLoadState OBJECT-TYPE
   SYNTAX INTEGER {
      lowLoad        (1),
      normal         (2),
      nearOverload   (3),
      overload       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the present load status of the Rack PDU
       bank being queried"
   ::= { rPDU2BankStatusEntry 4 }

rPDU2BankStatusCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the current draw, in tenths of Amps, of the load
       on the Rack PDU bank being queried"
   ::= { rPDU2BankStatusEntry 5 }

rPDU2BankStatusPeakCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The peak current of the Rack PDU bank load in tenths of Amps"
   ::= { rPDU2BankStatusEntry 6 }

rPDU2BankStatusPeakCurrentTimestamp OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time the bank peak current occurred"
   ::= { rPDU2BankStatusEntry 7 }

rPDU2BankStatusPeakCurrentStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last bank peak current reset"
   ::= { rPDU2BankStatusEntry 8 }
   
   
-- rPDU2 Outlet Data

rPDU2Outlet                    OBJECT IDENTIFIER ::=  { rPDU2 9 }

-- rPDU2 Switched Outlet Data

rPDU2OutletSwitchedTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of switched outlets on connected Rack PDUs"
   ::= { rPDU2Outlet 1}

rPDU2OutletSwitched            OBJECT IDENTIFIER ::=  { rPDU2Outlet 2 }

-- rPDU2 Switched Outlet Config

rPDU2OutletSwitchedConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletSwitchedConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU switched outlet configuration data"
   ::= { rPDU2OutletSwitched 1 }

rPDU2OutletSwitchedConfigEntry OBJECT-TYPE
   SYNTAX RPDU2OutletSwitchedConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from currently queried
       Rack PDU switched outlet"
   INDEX { rPDU2OutletSwitchedConfigIndex }
   ::= { rPDU2OutletSwitchedConfigTable 1 }

RPDU2OutletSwitchedConfigEntry ::=
   SEQUENCE {
      rPDU2OutletSwitchedConfigIndex            INTEGER,
      rPDU2OutletSwitchedConfigModule           INTEGER,
      rPDU2OutletSwitchedConfigName             DisplayString,
      rPDU2OutletSwitchedConfigNumber           INTEGER,
      rPDU2OutletSwitchedConfigPowerOnTime      INTEGER,
      rPDU2OutletSwitchedConfigPowerOffTime     INTEGER,
      rPDU2OutletSwitchedConfigRebootDuration   INTEGER,
      rPDU2OutletSwitchedConfigExternalLink     DisplayString   
   }

rPDU2OutletSwitchedConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU switched outlet
       configuration table entry"
   ::= { rPDU2OutletSwitchedConfigEntry 1 }

rPDU2OutletSwitchedConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletSwitchedConfigEntry 2 }

rPDU2OutletSwitchedConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The user-defined switched outlet ID string"
   ::= { rPDU2OutletSwitchedConfigEntry 3 }

rPDU2OutletSwitchedConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric switched outlet ID"
   ::= { rPDU2OutletSwitchedConfigEntry 4 }

rPDU2OutletSwitchedConfigPowerOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of delay, in seconds, between when
       power is provided to the Rack PDU and when
       this switched outlet starts providing power.
       Range -1...300 where -1 = Never power on,
       0 = immediate power on, and 1-300 = seconds to
       delay."
   ::= { rPDU2OutletSwitchedConfigEntry 5 }

rPDU2OutletSwitchedConfigPowerOffTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time, in seconds, this outlet will
       delay powering off.
       Range -1...300 where -1 = Never power off,
       0 = immediate power off, and 1-300 = seconds to
       delay."
   ::= { rPDU2OutletSwitchedConfigEntry 6 }

rPDU2OutletSwitchedConfigRebootDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "After turning power off during a reboot sequence,
       the amount of time to wait before turning power
       to this outlet back on.
       Range 5-60 seconds delay."
   ::= { rPDU2OutletSwitchedConfigEntry 7 }


rPDU2OutletSwitchedConfigExternalLink OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-write
STATUS mandatory
DESCRIPTION
    "User-defined external device web link. 
     Possible use cases could be the IP address of the external device
     plugged into the outlet or its manufacturer web page for convenient 
     support such as user manuals, specifications, drivers, etc."
::= { rPDU2OutletSwitchedConfigEntry 8 }


-- rPDU2 Switched Outlet Config

rPDU2OutletSwitchedPropertiesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletSwitchedPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU switched outlet properties"
   ::= { rPDU2OutletSwitched 2 }

rPDU2OutletSwitchedPropertiesEntry OBJECT-TYPE
   SYNTAX RPDU2OutletSwitchedPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Properties of the currently queried Rack PDU
       switched outlet"
   INDEX { rPDU2OutletSwitchedPropertiesIndex }
   ::= { rPDU2OutletSwitchedPropertiesTable 1 }

RPDU2OutletSwitchedPropertiesEntry ::=
   SEQUENCE {
      rPDU2OutletSwitchedPropertiesIndex        INTEGER,
      rPDU2OutletSwitchedPropertiesModule       INTEGER,
      rPDU2OutletSwitchedPropertiesName         DisplayString,
      rPDU2OutletSwitchedPropertiesNumber       INTEGER,
      rPDU2OutletSwitchedPropertiesPhaseLayout  Rpdu2OutletPhaseLayoutType,
      rPDU2OutletSwitchedPropertiesBank         INTEGER
   }

rPDU2OutletSwitchedPropertiesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU switched outlet
       properties table entry"
   ::= { rPDU2OutletSwitchedPropertiesEntry 1 }

rPDU2OutletSwitchedPropertiesModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletSwitchedPropertiesEntry 2 }

rPDU2OutletSwitchedPropertiesName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined switched outlet ID string"
   ::= { rPDU2OutletSwitchedPropertiesEntry 3 }

rPDU2OutletSwitchedPropertiesNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric switched outlet ID"
   ::= { rPDU2OutletSwitchedPropertiesEntry 4 }

rPDU2OutletSwitchedPropertiesPhaseLayout OBJECT-TYPE
   SYNTAX Rpdu2OutletPhaseLayoutType
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID describes the phase connections of
      the referenced outlet as follows:

      seqPhase1ToNeutral(1) indicates that the outlet is
      wired from Phase 1 to Neutral.

      seqPhase2ToNeutral(2) indicates that the outlet is
      wired from Phase 2 to Neutral.

      seqPhase3ToNeutral(3) indicates that the outlet is
      wired from Phase 3 to Neutral.

      seqPhase1ToPhase2(4) indicates that the outlet is
      wired from Phase 1 to Phase 2.

      seqPhase2ToPhase3(5) indicates that the outlet is
      wired from Phase 2 to Phase 3.

      seqPhase3ToPhase1(6) indicates that the outlet is
      wired from Phase 3 to Phase 1."
   ::= { rPDU2OutletSwitchedPropertiesEntry 5 }

rPDU2OutletSwitchedPropertiesBank OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric bank ID"
   ::= { rPDU2OutletSwitchedPropertiesEntry 6 }

-- rPDU2 Switched Outlet Status

rPDU2OutletSwitchedStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletSwitchedStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU switched outlet status
       information"
   ::= { rPDU2OutletSwitched 3 }

rPDU2OutletSwitchedStatusEntry OBJECT-TYPE
   SYNTAX RPDU2OutletSwitchedStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status information for currently queried
       Rack PDU switched outlet"
   INDEX { rPDU2OutletSwitchedStatusIndex }
   ::= { rPDU2OutletSwitchedStatusTable 1 }

RPDU2OutletSwitchedStatusEntry ::=
   SEQUENCE {
      rPDU2OutletSwitchedStatusIndex            INTEGER,
      rPDU2OutletSwitchedStatusModule           INTEGER,
      rPDU2OutletSwitchedStatusName             DisplayString,
      rPDU2OutletSwitchedStatusNumber           INTEGER,
      rPDU2OutletSwitchedStatusState            INTEGER,      
      rPDU2OutletSwitchedStatusCommandPending   INTEGER,
      rPDU2OutletSwitchedStatusExternalLink     DisplayString             
   }

rPDU2OutletSwitchedStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU switched outlet
       status information table entry"
   ::= { rPDU2OutletSwitchedStatusEntry 1 }

rPDU2OutletSwitchedStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletSwitchedStatusEntry 2 }

rPDU2OutletSwitchedStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined switched outlet ID string"
   ::= { rPDU2OutletSwitchedStatusEntry 3 }

rPDU2OutletSwitchedStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric switched outlet ID"
   ::= { rPDU2OutletSwitchedStatusEntry 4 }

rPDU2OutletSwitchedStatusState OBJECT-TYPE
   SYNTAX INTEGER {
      off (1),
      on  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the present switch state of the Rack
       PDU switched outlet being queried"
   ::= { rPDU2OutletSwitchedStatusEntry 5 }

rPDU2OutletSwitchedStatusCommandPending OBJECT-TYPE
   SYNTAX INTEGER {
      commandPending          (1),
      noCommandPending        (2),
      commandPendingUnknown   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not the device is
       processing a command for this outlet.

       If the commandPendingUnknown (3) value is
       returned, all devices powered by the Rack PDU
       should be shut down.  The Rack PDU's power
       should then be cycled to clear this condition."
   ::= { rPDU2OutletSwitchedStatusEntry 6 }


rPDU2OutletSwitchedStatusExternalLink OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Each RPDU outlet can have its own external web URL link. 
       This can be configured in the rPDU2OutletSwitchedConfigExternalLink OID.  
       When this link is clicked in the web interface, the linked URL will 
       open in the web browser."
   ::= { rPDU2OutletSwitchedStatusEntry 7 }

 
-- rPDU2 Switched Outlet Control

rPDU2OutletSwitchedControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletSwitchedControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU switched outlet control
       data"
   ::= { rPDU2OutletSwitched 4 }

rPDU2OutletSwitchedControlEntry OBJECT-TYPE
   SYNTAX RPDU2OutletSwitchedControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Control data for currently queried Rack
       PDU switched outlet"
   INDEX { rPDU2OutletSwitchedControlIndex }
   ::= { rPDU2OutletSwitchedControlTable 1 }

RPDU2OutletSwitchedControlEntry ::=
   SEQUENCE {
      rPDU2OutletSwitchedControlIndex     INTEGER,
      rPDU2OutletSwitchedControlModule    INTEGER,
      rPDU2OutletSwitchedControlName      DisplayString,
      rPDU2OutletSwitchedControlNumber    INTEGER,
      rPDU2OutletSwitchedControlCommand   INTEGER
   }

rPDU2OutletSwitchedControlIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU switched outlet
       control data table entry"
   ::= { rPDU2OutletSwitchedControlEntry 1 }

rPDU2OutletSwitchedControlModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletSwitchedControlEntry 2 }

rPDU2OutletSwitchedControlName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined switched outlet ID string"
   ::= { rPDU2OutletSwitchedControlEntry 3 }

rPDU2OutletSwitchedControlNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric switched outlet ID"
   ::= { rPDU2OutletSwitchedControlEntry 4 }

rPDU2OutletSwitchedControlCommand OBJECT-TYPE
   SYNTAX INTEGER {
        immediateOn           (1),
        immediateOff          (2),
        immediateReboot       (3),
        outletUnknown         (4),
        delayedOn             (5),
        delayedOff            (6),
        delayedReboot         (7),
        cancelPendingCommand  (8)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Getting this variable will return the outlet state. If
       the outlet is on, the immediateOn (1) value will be returned.
       If the outlet is off, the immediateOff (2) value will be
       returned. If the state of the outlet cannot be
       determined, the outletUnknown (4) value will be returned.
       If the outletUnknown condition should occur, all devices
       powered by the PDU should be shut down. The PDU's power
       should then be cycled to clear this condition.

       Setting this variable to immediateOn (1) will immediately turn
       the outlet on.

       Setting this variable to immediateOff (2) will immediately turn
       the outlet off.

       Setting this variable to immediateReboot (3) will cause the
       Switched Rack PDU to perform an immediateOff command, wait the
       rPDU2OutletSwitchedConfigRebootDuration OID time, and then perform an
       immediateOn command.

       Setting this variable to delayedOn (5) will turn the outlet on
       after the rPDU2OutletSwitchedConfigPowerOnTime OID time has elapsed.

       Setting this variable to delayedOff (6) will turn the outlet off
       after the rPDU2OutletSwitchedConfigPowerOffTime OID time has elapsed.

       Setting this variable to delayedReboot  (7) will cause the
       Switched Rack PDU to perform a delayedOff command, wait the
       rPDU2OutletSwitchedConfigRebootDuration OID time, and then perform a
       delayedOn command.

       Setting this variable to cancelPendingCommand (8) will cause any
       pending command to this outlet to be cancelled."
       ::= { rPDU2OutletSwitchedControlEntry 5 }

-- rPDU2 Metered Outlet Data

rPDU2OutletMeteredTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of metered outlets on connect Rack PDUs"
   ::= { rPDU2Outlet 3}

rPDU2OutletMetered             OBJECT IDENTIFIER ::=  { rPDU2Outlet 4 }

-- rPDU2 Metered Outlet Config

rPDU2OutletMeteredConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletMeteredConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU metered outlet configuration data"
   ::= { rPDU2OutletMetered 1 }

rPDU2OutletMeteredConfigEntry OBJECT-TYPE
   SYNTAX RPDU2OutletMeteredConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from currently queried
       Rack PDU metered outlet"
   INDEX { rPDU2OutletMeteredConfigIndex }
   ::= { rPDU2OutletMeteredConfigTable 1 }

RPDU2OutletMeteredConfigEntry ::=
   SEQUENCE {
      rPDU2OutletMeteredConfigIndex                         INTEGER,
      rPDU2OutletMeteredConfigModule                        INTEGER,
      rPDU2OutletMeteredConfigName                          DisplayString,
      rPDU2OutletMeteredConfigNumber                        INTEGER,
      rPDU2OutletMeteredConfigLowLoadCurrentThreshold       INTEGER,
      rPDU2OutletMeteredConfigNearOverloadCurrentThreshold  INTEGER,          
      rPDU2OutletMeteredConfigOverloadCurrentThreshold      INTEGER,
      rPDU2OutletMeteredConfigExternalLink                  DisplayString         
   }

rPDU2OutletMeteredConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU metered outlet
       configuration table entry"
   ::= { rPDU2OutletMeteredConfigEntry 1 }

rPDU2OutletMeteredConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletMeteredConfigEntry 2 }

rPDU2OutletMeteredConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The user-defined metered outlet ID string"
   ::= { rPDU2OutletMeteredConfigEntry 3 }

rPDU2OutletMeteredConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric switched outlet ID"
   ::= { rPDU2OutletMeteredConfigEntry 4 }

rPDU2OutletMeteredConfigLowLoadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined low load outlet current threshold in Watts"
   ::= { rPDU2OutletMeteredConfigEntry 5 }

rPDU2OutletMeteredConfigNearOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined near outlet overload warning threshold
       in Watts"
   ::= { rPDU2OutletMeteredConfigEntry 6 }

rPDU2OutletMeteredConfigOverloadCurrentThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "User-defined outlet overload current threshold in Watts"
   ::= { rPDU2OutletMeteredConfigEntry 7 }


rPDU2OutletMeteredConfigExternalLink OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-write
STATUS mandatory
DESCRIPTION
    "User-defined external device web link. 
     Possible use cases could be the IP address of the external device
     plugged into the outlet or its manufacturer web page for convenient 
     support such as user manuals, specifications, drivers, etc."
::= { rPDU2OutletMeteredConfigEntry 8 }   

-- rPDU2 Metered Outlet Properties

rPDU2OutletMeteredPropertiesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletMeteredPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU metered outlet properties"
   ::= { rPDU2OutletMetered 2 }

rPDU2OutletMeteredPropertiesEntry OBJECT-TYPE
   SYNTAX RPDU2OutletMeteredPropertiesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Properties of currently queried Rack PDU
       metered outlet"
   INDEX { rPDU2OutletMeteredPropertiesIndex }
   ::= { rPDU2OutletMeteredPropertiesTable 1 }

RPDU2OutletMeteredPropertiesEntry ::=
   SEQUENCE {
      rPDU2OutletMeteredPropertiesIndex       INTEGER,
      rPDU2OutletMeteredPropertiesModule      INTEGER,
      rPDU2OutletMeteredPropertiesName        DisplayString,
      rPDU2OutletMeteredPropertiesNumber      INTEGER,
      rPDU2OutletMeteredPropertiesLayout      Rpdu2OutletPhaseLayoutType,
      rPDU2OutletMeteredPropertiesPowerRating INTEGER,
      rPDU2OutletMeteredPropertiesBank        INTEGER
   }

rPDU2OutletMeteredPropertiesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU metered properties table
       entry"
   ::= { rPDU2OutletMeteredPropertiesEntry 1 }

rPDU2OutletMeteredPropertiesModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletMeteredPropertiesEntry 2 }

rPDU2OutletMeteredPropertiesName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined metered outlet ID string"
   ::= { rPDU2OutletMeteredPropertiesEntry 3 }

rPDU2OutletMeteredPropertiesNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric metered outlet ID"
   ::= { rPDU2OutletMeteredPropertiesEntry 4 }

rPDU2OutletMeteredPropertiesLayout OBJECT-TYPE
   SYNTAX Rpdu2OutletPhaseLayoutType
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID describes the phase connections of
      the referenced outlet as follows:

      seqPhase1ToNeutral(1) indicates that the outlet is
      wired from Phase 1 to Neutral.

      seqPhase2ToNeutral(2) indicates that the outlet is
      wired from Phase 2 to Neutral.

      seqPhase3ToNeutral(3) indicates that the outlet is
      wired from Phase 3 to Neutral.

      seqPhase1ToPhase2(4) indicates that the outlet is
      wired from Phase 1 to Phase 2.

      seqPhase2ToPhase3(5) indicates that the outlet is
      wired from Phase 2 to Phase 3.

      seqPhase3ToPhase1(6) indicates that the outlet is
      wired from Phase 3 to Phase 1."
   ::= { rPDU2OutletMeteredPropertiesEntry 5 }

rPDU2OutletMeteredPropertiesPowerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Maximum power rating of Rack PDU metered outlet"
   ::= { rPDU2OutletMeteredPropertiesEntry 6 }

rPDU2OutletMeteredPropertiesBank OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This outlet's numeric bank ID"
   ::= { rPDU2OutletMeteredPropertiesEntry 7 }

-- rPDU2 Metered Outlet Status

rPDU2OutletMeteredStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2OutletMeteredStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU metered outlet status data"
   ::= { rPDU2OutletMetered 3 }

rPDU2OutletMeteredStatusEntry OBJECT-TYPE
   SYNTAX RPDU2OutletMeteredStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status data from currently queried Rack PDU
       metered outlet"
   INDEX { rPDU2OutletMeteredStatusIndex }
   ::= { rPDU2OutletMeteredStatusTable 1 }

RPDU2OutletMeteredStatusEntry ::=
   SEQUENCE {
      rPDU2OutletMeteredStatusIndex                INTEGER,
      rPDU2OutletMeteredStatusModule               INTEGER,
      rPDU2OutletMeteredStatusName                 DisplayString,
      rPDU2OutletMeteredStatusNumber               INTEGER,
      rPDU2OutletMeteredStatusState                INTEGER,
      rPDU2OutletMeteredStatusCurrent              INTEGER,
      rPDU2OutletMeteredStatusPower                INTEGER,
      rPDU2OutletMeteredStatusPeakPower            INTEGER,
      rPDU2OutletMeteredStatusPeakPowerTimestamp   DisplayString,
      rPDU2OutletMeteredStatusPeakPowerStartTime   DisplayString,
      rPDU2OutletMeteredStatusEnergy               INTEGER,
      rPDU2OutletMeteredStatusReceptacleType       DisplayString,
      rPDU2OutletMeteredStatusExternalLink         DisplayString          
   }

rPDU2OutletMeteredStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU metered status table
       entry"
   ::= { rPDU2OutletMeteredStatusEntry 1 }

rPDU2OutletMeteredStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2OutletMeteredStatusEntry 2 }

rPDU2OutletMeteredStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined metered outlet ID string"
   ::= { rPDU2OutletMeteredStatusEntry 3 }

rPDU2OutletMeteredStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The numeric metered outlet ID"
   ::= { rPDU2OutletMeteredStatusEntry 4 }

rPDU2OutletMeteredStatusState OBJECT-TYPE
   SYNTAX INTEGER {
      lowLoad        (1),
      normal         (2),
      nearOverload   (3),
      overload       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the present load status of the Rack
       PDU metered outlet being queried"
   ::= { rPDU2OutletMeteredStatusEntry 5 }

rPDU2OutletMeteredStatusCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the current draw, in tenths
       of Amps, of the load on the Rack PDU
       outlet being queried"
   ::= { rPDU2OutletMeteredStatusEntry 6 }

rPDU2OutletMeteredStatusPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the power draw of the load
       on the Rack PDU outlet being queried"
   ::= { rPDU2OutletMeteredStatusEntry 7 }

rPDU2OutletMeteredStatusPeakPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the peak power load draw
       on the Rack PDU outlet being queried"
   ::= { rPDU2OutletMeteredStatusEntry 8 }

rPDU2OutletMeteredStatusPeakPowerTimestamp OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time that this metered
       outlet's peak power consumption occurred"
   ::= { rPDU2OutletMeteredStatusEntry 9 }

rPDU2OutletMeteredStatusPeakPowerStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the start date and time that this metered
       outlet began recording peak power observations"
   ::= { rPDU2OutletMeteredStatusEntry 10 }

rPDU2OutletMeteredStatusEnergy OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A user resettable energy meter measuring Rack PDU load
       energy consumption in tenths of kilowatt-hours"
   ::= { rPDU2OutletMeteredStatusEntry 11 }


rPDU2OutletMeteredStatusReceptacleType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates receptacle type for the outlet."
   ::= { rPDU2OutletMeteredStatusEntry 12 }  
   
   
rPDU2OutletMeteredStatusExternalLink OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
      "Each RPDU outlet can have its own external web URL link. 
	   This can be configured in the rPDU2OutletMeteredConfigExternalLink OID.  
	   When this link is clicked in the web interface, the linked URL will 
	   open in the web browser."
::= { rPDU2OutletMeteredStatusEntry 13 }   
   
-- rPDU2 Sensor Data

rPDU2Sensor                    OBJECT IDENTIFIER ::=  { rPDU2 10 }

-- rPDU2 Temperature and Humidity Sensor Data

rPDU2SensorTempHumidityTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of connected temperature-humidity sensors"
   ::= { rPDU2Sensor 1}

rPDU2SensorTempHumidity        OBJECT IDENTIFIER ::=  { rPDU2Sensor 2 }

-- rPDU2 Temperature and Humidity Sensor Config

rPDU2SensorTempHumidityConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2SensorTempHumidityConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of temperature-humidity sensor
       configuration data"
   ::= { rPDU2SensorTempHumidity 1 }

rPDU2SensorTempHumidityConfigEntry OBJECT-TYPE
   SYNTAX RPDU2SensorTempHumidityConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from temperature-humidity sensor
       being queried"
   INDEX { rPDU2SensorTempHumidityConfigIndex }
   ::= { rPDU2SensorTempHumidityConfigTable 1 }

RPDU2SensorTempHumidityConfigEntry ::=
   SEQUENCE {
      rPDU2SensorTempHumidityConfigIndex                    INTEGER,
      rPDU2SensorTempHumidityConfigModule                   INTEGER,
      rPDU2SensorTempHumidityConfigName                     DisplayString,
      rPDU2SensorTempHumidityConfigNumber                   INTEGER,
      rPDU2SensorTempHumidityConfigTemperatureAlarmEnable   INTEGER,
      rPDU2SensorTempHumidityConfigHumidityAlarmEnable      INTEGER,
      rPDU2SensorTempHumidityConfigTempMaxThreshF           INTEGER,
      rPDU2SensorTempHumidityConfigTempHighThreshF          INTEGER,
      rPDU2SensorTempHumidityConfigTempHysteresisF          INTEGER,
      rPDU2SensorTempHumidityConfigTempMaxThreshC           INTEGER,
      rPDU2SensorTempHumidityConfigTempHighThreshC          INTEGER,
      rPDU2SensorTempHumidityConfigTempHysteresisC          INTEGER,
      rPDU2SensorTempHumidityConfigHumidityLowThresh        INTEGER,
      rPDU2SensorTempHumidityConfigHumidityMinThresh        INTEGER,
      rPDU2SensorTempHumidityConfigHumidityHysteresis       INTEGER,
      rPDU2SensorTempHumidityConfigTempPeakReset            INTEGER
   }

rPDU2SensorTempHumidityConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the temperature-humidity sensor
       configuration data table entry"
   ::= { rPDU2SensorTempHumidityConfigEntry 1 }

rPDU2SensorTempHumidityConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2SensorTempHumidityConfigEntry 2 }

rPDU2SensorTempHumidityConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The user-defined temperature-humidity
       sensor ID string"
   ::= { rPDU2SensorTempHumidityConfigEntry 3 }

rPDU2SensorTempHumidityConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature-humidity sensor numeric ID"
   ::= { rPDU2SensorTempHumidityConfigEntry 4 }

rPDU2SensorTempHumidityConfigTemperatureAlarmEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID enables or disables generation
       of sensor temperature alarm.

       Getting this OID returns the current value of
       the temperature alarm enable."
   ::= { rPDU2SensorTempHumidityConfigEntry 5 }

rPDU2SensorTempHumidityConfigHumidityAlarmEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID enables or disables generation
       of sensor humidity alarm.

       Getting this OID returns the current value of
       the humidity alarm enable."
   ::= { rPDU2SensorTempHumidityConfigEntry 6 }

rPDU2SensorTempHumidityConfigTempMaxThreshF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor maximum temperature alarm threshold in
       Fahrenheit. Attempting to set this OID to a
       value less than or equal to that of
       rPDU2SensorTempHumidityConfigTempHighThreshF
       will result in an error."
   ::= { rPDU2SensorTempHumidityConfigEntry 7 }

rPDU2SensorTempHumidityConfigTempHighThreshF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor high temperature warning alarm threshold
       in Fahrenheit. Attempting to set this OID to a
       value greater than or equal to that of
       rPDU2SensorTempHumidityConfigTempMaxThreshF
       will result in an error."
   ::= { rPDU2SensorTempHumidityConfigEntry 8 }

rPDU2SensorTempHumidityConfigTempHysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor temperature hysteresis setting in Fahrenheit"
   ::= { rPDU2SensorTempHumidityConfigEntry 9 }

rPDU2SensorTempHumidityConfigTempMaxThreshC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor maximum temperature alarm threshold
      in Celsius. Attempting to set this OID to a
      value less than or equal to that of
      rPDU2SensorTempHumidityConfigTempHighThreshC
      will result in an error."
   ::= { rPDU2SensorTempHumidityConfigEntry 10 }

rPDU2SensorTempHumidityConfigTempHighThreshC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor high temperature warning alarm threshold
       in Celsius. Attempting to set this OID to a
       value greater than or equal to that of
       rPDU2SensorTempHumidityConfigTempMaxThreshC
       will result in an error."
   ::= { rPDU2SensorTempHumidityConfigEntry 11 }

rPDU2SensorTempHumidityConfigTempHysteresisC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor temperature hysteresis setting in Celsius"
   ::= { rPDU2SensorTempHumidityConfigEntry 12 }

rPDU2SensorTempHumidityConfigHumidityLowThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor low humidity warning alarm threshold in percent
       relative humidity. Attempting to set this OID to a
       value less than or equal to that of
       rPDU2SensorTempHumidityConfigHumidityMinThresh
       will result in an error. Must be between 15% and 90%"
   ::= { rPDU2SensorTempHumidityConfigEntry 13 }

rPDU2SensorTempHumidityConfigHumidityMinThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor minimum humidity alarm threshold in percent
       relative humidity. Attempting to set this OID to a
       value greater than or equal to that of
       rPDU2SensorTempHumidityConfigHumidityLowThresh
       will result in an error. Must be between 15% and 90%"
   ::= { rPDU2SensorTempHumidityConfigEntry 14 }

rPDU2SensorTempHumidityConfigHumidityHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sensor humidity hysteresis setting in percent relative
       humidity"
   ::= { rPDU2SensorTempHumidityConfigEntry 15 }

rPDU2SensorTempHumidityConfigTempPeakReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation (1),
      reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the existing peak temperature
       to be replaced by the present temperature reading.

       Getting this OID will do nothing and return the noOperation(1) value."
   ::= { rPDU2SensorTempHumidityConfigEntry 16}


-- rPDU2 Temperature and Humidity Sensor Status

rPDU2SensorTempHumidityStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2SensorTempHumidityStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of temperature-humidity sensor status data"
   ::= { rPDU2SensorTempHumidity 2 }

rPDU2SensorTempHumidityStatusEntry OBJECT-TYPE
   SYNTAX RPDU2SensorTempHumidityStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status information from temperature-humidity sensor
       being queried"
   INDEX { rPDU2SensorTempHumidityStatusIndex }
   ::= { rPDU2SensorTempHumidityStatusTable 1 }

RPDU2SensorTempHumidityStatusEntry ::=
   SEQUENCE {
      rPDU2SensorTempHumidityStatusIndex            INTEGER,
      rPDU2SensorTempHumidityStatusModule           INTEGER,
      rPDU2SensorTempHumidityStatusName             DisplayString,
      rPDU2SensorTempHumidityStatusNumber           INTEGER,
      rPDU2SensorTempHumidityStatusType             INTEGER,
      rPDU2SensorTempHumidityStatusCommStatus       INTEGER,
      rPDU2SensorTempHumidityStatusTempF            INTEGER,
      rPDU2SensorTempHumidityStatusTempC            INTEGER,
      rPDU2SensorTempHumidityStatusTempStatus       INTEGER,
      rPDU2SensorTempHumidityStatusRelativeHumidity INTEGER,
      rPDU2SensorTempHumidityStatusHumidityStatus   INTEGER,
      rPDU2SensorTempHumidityStatusTempPeakF        INTEGER,
      rPDU2SensorTempHumidityStatusTempPeakC        INTEGER,
      rPDU2SensorTempHumidityStatusTempPeakStartTime    DisplayString,
      rPDU2SensorTempHumidityStatusTempPeakTimestamp    DisplayString
   }

rPDU2SensorTempHumidityStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the temperature-humidity
       status data table entry"
   ::= { rPDU2SensorTempHumidityStatusEntry 1 }

rPDU2SensorTempHumidityStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2SensorTempHumidityStatusEntry 2 }

rPDU2SensorTempHumidityStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined temperature-humidity
       sensor ID string"
   ::= { rPDU2SensorTempHumidityStatusEntry 3 }

rPDU2SensorTempHumidityStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature-humidity sensor numeric ID"
   ::= { rPDU2SensorTempHumidityStatusEntry 4 }

rPDU2SensorTempHumidityStatusType OBJECT-TYPE
   SYNTAX INTEGER {
      temperatureOnly       (1),
      temperatureHumidity   (2),
      commsLost             (3),
      notInstalled          (4)

   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of the sensor"
   ::= { rPDU2SensorTempHumidityStatusEntry 5 }

rPDU2SensorTempHumidityStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled  (1),
      commsOK       (2),
      commsLost     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communications status of the sensor"
   ::= { rPDU2SensorTempHumidityStatusEntry 6 }

rPDU2SensorTempHumidityStatusTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Sensor temperature reading in tenths of degrees Fahrenheit"
   ::= { rPDU2SensorTempHumidityStatusEntry 7 }

rPDU2SensorTempHumidityStatusTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Sensor temperature reading in tenths of degrees Celsius"
   ::= { rPDU2SensorTempHumidityStatusEntry 8 }

rPDU2SensorTempHumidityStatusTempStatus OBJECT-TYPE
   SYNTAX INTEGER {
     notPresent      (1),
     belowMin        (2),
     belowLow        (3),
     normal          (4),
     aboveHigh       (5),
     aboveMax        (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID reports the current state of the temperature probe.

       A notPresent (1) response indicates that no probe is attached.
       A belowMin (2) response indicates that the probe is present and
       its measured temperature lies below the minimum threshold.
       A belowLow (3) response indicates that the probe is present and
       its measured temperature lies below the low threshold.
       A normal (4) response indicates that the probe is present
       and its measured temperature lies within all temperature thresholds.
       An aboveHigh (5) response indicates that the probe is present
       and is measuring a temperature above the high threshold.
       An aboveMax (6) response indicates that the probe is present
       and is measuring a temperature above the max threshold."
   ::= { rPDU2SensorTempHumidityStatusEntry 9 }

rPDU2SensorTempHumidityStatusRelativeHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Sensor humidity reading in percent relative humidity"
   ::= { rPDU2SensorTempHumidityStatusEntry 10 }

rPDU2SensorTempHumidityStatusHumidityStatus OBJECT-TYPE
   SYNTAX INTEGER {
     notPresent      (1),
     belowMin        (2),
     belowLow        (3),
     normal          (4),
     aboveHigh       (5),
     aboveMax        (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID reports the current state of the humidity probe.

       A notPresent (1) response indicates that no probe is attached.
       A belowMin (2) response indicates that the probe is present and
       its measured humidity lies below the minimum threshold.
       A belowLow (3) response indicates that the probe is present and
       its measured humidity lies below the low threshold.
       A normal (4) response indicates that the probe is present
       and its measured humidity lies within all humidity thresholds.
       An aboveHigh (5) response indicates that the probe is present
       and is measuring a humidity above the high threshold.
       An aboveMax (6) response indicates that the probe is present
       and is measuring a humidity above the max threshold."
   ::= { rPDU2SensorTempHumidityStatusEntry 11 }

rPDU2SensorTempHumidityStatusTempPeakF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Sensor peak temperature in tenths of degrees Fahrenheit"
   ::= { rPDU2SensorTempHumidityStatusEntry 12 }

rPDU2SensorTempHumidityStatusTempPeakC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Sensor peak temperature in tenths of degrees Celsius"
   ::= { rPDU2SensorTempHumidityStatusEntry 13 }


rPDU2SensorTempHumidityStatusTempPeakTimestamp OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time that the peak temperature occurred"
   ::= { rPDU2SensorTempHumidityStatusEntry 14 }

rPDU2SensorTempHumidityStatusTempPeakStartTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the date and time of the last temperature peak reset"
   ::= { rPDU2SensorTempHumidityStatusEntry 15 }

-- rPDU2 Discrete Sensor Data

rPDU2SensorDiscreteTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of connected discrete sensors"
   ::= { rPDU2Sensor 3}

rPDU2SensorDiscrete        OBJECT IDENTIFIER ::=  { rPDU2Sensor 4 }

-- rPDU2 Discrete Sensor Config

rPDU2SensorDiscreteConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2SensorDiscreteConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of discrete sensor configuration
       data"
   ::= { rPDU2SensorDiscrete 1 }

rPDU2SensorDiscreteConfigEntry OBJECT-TYPE
   SYNTAX RPDU2SensorDiscreteConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Configuration data from discreste sensor
       being queried"
   INDEX { rPDU2SensorDiscreteConfigIndex }
   ::= { rPDU2SensorDiscreteConfigTable 1 }

RPDU2SensorDiscreteConfigEntry ::=
   SEQUENCE {
      rPDU2SensorDiscreteConfigIndex            INTEGER,
      rPDU2SensorDiscreteConfigModule           INTEGER,
      rPDU2SensorDiscreteConfigName             DisplayString,
      rPDU2SensorDiscreteConfigNumber           INTEGER,
      rPDU2SensorDiscreteConfigNormalState      INTEGER,
      rPDU2SensorDiscreteConfigAbnormalSeverity INTEGER
   }

rPDU2SensorDiscreteConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the discrete sensor configuration
       data table entry"
   ::= { rPDU2SensorDiscreteConfigEntry 1 }

rPDU2SensorDiscreteConfigModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2SensorDiscreteConfigEntry 2 }

rPDU2SensorDiscreteConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The user-defined discrete sensor ID string"
   ::= { rPDU2SensorDiscreteConfigEntry 3 }

rPDU2SensorDiscreteConfigNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The discrete sensor numeric ID"
   ::= { rPDU2SensorDiscreteConfigEntry 4 }

rPDU2SensorDiscreteConfigNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyOpen   (1),
      normallyClosed (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates the normal state of the discrete input
       contact"
   ::= { rPDU2SensorDiscreteConfigEntry 5 }

rPDU2SensorDiscreteConfigAbnormalSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      informational  (1),
      warning        (2),
      critical       (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates the severity of alarm triggered by
       abnormal discrete input contact state"
   ::= { rPDU2SensorDiscreteConfigEntry 6 }

-- rPDU2 Discrete Sensor Status

rPDU2SensorDiscreteStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2SensorDiscreteStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of discrete sensor status data"
   ::= { rPDU2SensorDiscrete 2 }

rPDU2SensorDiscreteStatusEntry OBJECT-TYPE
   SYNTAX RPDU2SensorDiscreteStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status information from discrete sensor
       being queried"
   INDEX { rPDU2SensorDiscreteStatusIndex }
   ::= { rPDU2SensorDiscreteStatusTable 1 }

RPDU2SensorDiscreteStatusEntry ::=
   SEQUENCE {
      rPDU2SensorDiscreteStatusIndex         INTEGER,
      rPDU2SensorDiscreteStatusModule        INTEGER,
      rPDU2SensorDiscreteStatusName          DisplayString,
      rPDU2SensorDiscreteStatusNumber        INTEGER,
      rPDU2SensorDiscreteStatusType          INTEGER,
      rPDU2SensorDiscreteStatusCommStatus    INTEGER,
      rPDU2SensorDiscreteStatusCurrentState  INTEGER,
      rPDU2SensorDiscreteStatusAlarmState    INTEGER
   }

rPDU2SensorDiscreteStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the discrete sensor status data
       table entry"
   ::= { rPDU2SensorDiscreteStatusEntry 1 }

rPDU2SensorDiscreteStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2SensorDiscreteStatusEntry 2 }

rPDU2SensorDiscreteStatusName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined discrete sensor ID string"
   ::= { rPDU2SensorDiscreteStatusEntry 3 }

rPDU2SensorDiscreteStatusNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The discrete sensor numeric ID"
   ::= { rPDU2SensorDiscreteStatusEntry 4 }

rPDU2SensorDiscreteStatusType OBJECT-TYPE
   SYNTAX INTEGER {
      notConnected      (1),
      doorContactSensor (2),
      smokeSensor       (3),
      motionDetector    (4),
      vibrationSensor   (5),
      dryContactSensor  (6),
      spotLeakSensor    (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of discrete sensor currently being queried"
   ::= { rPDU2SensorDiscreteStatusEntry 5 }

rPDU2SensorDiscreteStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled(1),
      commsOK(2),
      commsLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communications status of the sensor"
   ::= { rPDU2SensorDiscreteStatusEntry 6 }

rPDU2SensorDiscreteStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      open     (1),
      closed   (2),
      unknown  (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current open/close state of the discrete
       sensor"
   ::= { rPDU2SensorDiscreteStatusEntry 7 }

rPDU2SensorDiscreteStatusAlarmState OBJECT-TYPE
   SYNTAX INTEGER {
      normal   (1),
      alarm    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates alarm status of discrete sensor input"
   ::= { rPDU2SensorDiscreteStatusEntry 8 }

rPDU2Group                    OBJECT IDENTIFIER ::=  { rPDU2 11 }

-- rPDU2 Total Rack PDU Network Port Sharing (NPS) group power and energy

rPDU2GroupNumberOfDevices OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the number of Rack PDU devices contributing
       to the Network Port Sharing (NPS) group power and energy values.
       Queries to guest units in an NPS group are not applicable and will
       return 0."

   ::= { rPDU2Group 1 }

rPDU2GroupTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the total power consumption of the Rack PDU
       Network Port Sharing (NPS) group devices in hundredths of kilowatts.
       Queries to guest units in an NPS group are not applicable and will
       return 0."

   ::= { rPDU2Group 2 }

rPDU2GroupTotalEnergy OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return the total energy consumption of the Rack PDU
       Network Port Sharing (NPS) group devices in tenths of kilowatt-hours.

       To reset the energy meters for each of the Rack PDU devices that contribute
       to this value, see the rPDU2GroupEnergyReset OID.

       To view the start time for each of the Rack PDU device energy meters that
       contribute to this value, see the rPDU2DeviceStatusEnergyStartTime OID.

       Queries to guest units in an NPS group are not applicable and will
       return 0."

   ::= { rPDU2Group 3 }

rPDU2GroupEnergyReset OBJECT-TYPE
   SYNTAX INTEGER {
      noOperation  (1),
      reset        (2),
      notSupported (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset (2) will cause the device energy meter value
       on each device in the Rack PDU Network Port Sharing (NPS) group to be
       reset to zero.

       Each device in the Rack PDU group will also have its corresponding
       rPDU2DeviceStatusEnergyStartTime OID value updated.

       Getting this OID in models that support this feature will do nothing
       and return the noOperation(1) value.

       Models that do not support this feature, as well as guest units in an
       NPS group, will respond to this OID with a value of notSupported (3).
       Attempts to set this OID in these units will fail."

   ::= { rPDU2Group 4 }


-- rPDU2 Phase To Phase Status
rPDU2PhaseToPhaseStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of connected Rack PDU banks"
   ::= { rPDU2 12}

rPDU2PhaseToPhase                OBJECT IDENTIFIER ::=  { rPDU2 13 }

rPDU2PhaseToPhaseStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RPDU2PhaseToPhaseStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A table of Rack PDU phase to phase status data.
       This table is only applicable to SKUs that have
       phase to phase outputs."
   ::= { rPDU2PhaseToPhase 1 }

rPDU2PhaseToPhaseStatusEntry OBJECT-TYPE
   SYNTAX RPDU2PhaseToPhaseStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Status data from currently queried Rack PDU
       phase to phase outputs"
   INDEX { rPDU2PhaseToPhaseStatusIndex }
   ::= { rPDU2PhaseToPhaseStatusTable 1 }

RPDU2PhaseToPhaseStatusEntry ::=
   SEQUENCE {
      rPDU2PhaseToPhaseStatusIndex      INTEGER,
      rPDU2PhaseToPhaseStatusModule     INTEGER,
      rPDU2PhaseToPhaseStatusVoltage1to2 INTEGER,
      rPDU2PhaseToPhaseStatusVoltage2to3 INTEGER,
      rPDU2PhaseToPhaseStatusVoltage3to1 INTEGER
   }

rPDU2PhaseToPhaseStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the Rack PDU phase to phase status table
       entry"
   ::= { rPDU2PhaseToPhaseStatusEntry 1 }

rPDU2PhaseToPhaseStatusModule OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The user-defined Rack PDU numeric ID"
   ::= { rPDU2PhaseToPhaseStatusEntry 2 }


rPDU2PhaseToPhaseStatusVoltage1to2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the Voltage, in Volts, of the Rack
       PDU phase 1 to phase 2 output being queried"
   ::= { rPDU2PhaseToPhaseStatusEntry 3 }

rPDU2PhaseToPhaseStatusVoltage2to3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the Voltage, in Volts, of the Rack
       PDU phase 2 to phase 3 output being queried"
   ::= { rPDU2PhaseToPhaseStatusEntry 4 }

rPDU2PhaseToPhaseStatusVoltage3to1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the Voltage, in Volts, of the Rack
       PDU phase 3 to phase 2 output being queried"
   ::= { rPDU2PhaseToPhaseStatusEntry 5 }



-- the cooling group

coolingUnit                    OBJECT IDENTIFIER ::=  { cooling 1 }

coolingUnitTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of cooling units accessible via this agent."
    ::= { coolingUnit 1 }

coolingUnitTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of cooling unit level data."
    ::= { coolingUnit 2}

coolingUnitEntry OBJECT-TYPE
    SYNTAX CoolingUnitEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitTable."
    INDEX { coolingUnitTableIndex }
    ::= { coolingUnitTable 1 }

CoolingUnitEntry ::= SEQUENCE {
    coolingUnitTableIndex INTEGER
}

coolingUnitTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The unit reference identifier for this table and all other table entries subordinate to coolingUnits."
    ::= { coolingUnitEntry 1 }

coolingUnitAbout               OBJECT IDENTIFIER ::=  { coolingUnit 3 }

coolingUnitAboutTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitAboutTable."
    ::= { coolingUnitAbout 1 }

coolingUnitAboutTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitAboutEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of unit reference information."
    ::= { coolingUnitAbout 2}

coolingUnitAboutEntry OBJECT-TYPE
    SYNTAX CoolingUnitAboutEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitAboutTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitAboutTableIndex }
    ::= { coolingUnitAboutTable 1 }

CoolingUnitAboutEntry ::= SEQUENCE {
    coolingUnitAboutTableIndex INTEGER,
    coolingUnitAboutDescription DisplayString,
    coolingUnitAboutValue DisplayString
}

coolingUnitAboutTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitAboutEntry 1 }

coolingUnitAboutDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitAboutValue."
    ::= { coolingUnitAboutEntry 2 }

coolingUnitAboutValue OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry."
    ::= { coolingUnitAboutEntry 3 }

coolingUnitStatus              OBJECT IDENTIFIER ::=  { coolingUnit 4 }
coolingUnitStatusAnalog        OBJECT IDENTIFIER ::=  { coolingUnitStatus 1 }

coolingUnitStatusAnalogTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitStatusAnalogTable."
    ::= { coolingUnitStatusAnalog 1 }

coolingUnitStatusAnalogTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitStatusAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of analog unit status data."
    ::= { coolingUnitStatusAnalog 2}

coolingUnitStatusAnalogEntry OBJECT-TYPE
    SYNTAX CoolingUnitStatusAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitStatusAnalogTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitStatusAnalogTableIndex }
    ::= { coolingUnitStatusAnalogTable 1 }

CoolingUnitStatusAnalogEntry ::= SEQUENCE {
    coolingUnitStatusAnalogTableIndex INTEGER,
    coolingUnitStatusAnalogDescription DisplayString,
    coolingUnitStatusAnalogValue INTEGER,
    coolingUnitStatusAnalogUnits DisplayString,
    coolingUnitStatusAnalogScale INTEGER
}

coolingUnitStatusAnalogTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitStatusAnalogEntry 1 }

coolingUnitStatusAnalogDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitStatusAnalogValue."
    ::= { coolingUnitStatusAnalogEntry 2 }

coolingUnitStatusAnalogValue OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The scaled value of the current table entry (multiplied by coolingUnitStatusAnalogScale for integer presentation)."
    ::= { coolingUnitStatusAnalogEntry 3 }

coolingUnitStatusAnalogUnits OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unit of measure by which coolingUnitStatusAnalogValue is expressed."
    ::= { coolingUnitStatusAnalogEntry 4 }

coolingUnitStatusAnalogScale OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The factor by which coolingUnitStatusAnalogValue is expressed."
    ::= { coolingUnitStatusAnalogEntry 5 }

coolingUnitStatusDiscrete      OBJECT IDENTIFIER ::=  { coolingUnitStatus 2 }

coolingUnitStatusDiscreteTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitStatusDiscreteTable."
    ::= { coolingUnitStatusDiscrete 1 }

coolingUnitStatusDiscreteTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitStatusDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of discrete unit status data."
    ::= { coolingUnitStatusDiscrete 2}

coolingUnitStatusDiscreteEntry OBJECT-TYPE
    SYNTAX CoolingUnitStatusDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitStatusDiscreteTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitStatusDiscreteTableIndex }
    ::= { coolingUnitStatusDiscreteTable 1 }

CoolingUnitStatusDiscreteEntry ::= SEQUENCE {
    coolingUnitStatusDiscreteTableIndex INTEGER,
    coolingUnitStatusDiscreteDescription DisplayString,
    coolingUnitStatusDiscreteValueAsString DisplayString,
    coolingUnitStatusDiscreteValueAsInteger INTEGER,
    coolingUnitStatusDiscreteIntegerReferenceKey DisplayString
}

coolingUnitStatusDiscreteTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitStatusDiscreteEntry 1 }

coolingUnitStatusDiscreteDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in this table's 'value' OIDs."
    ::= { coolingUnitStatusDiscreteEntry 2 }

coolingUnitStatusDiscreteValueAsString OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as a string."
    ::= { coolingUnitStatusDiscreteEntry 3 }

coolingUnitStatusDiscreteValueAsInteger OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as an integer value."
    ::= { coolingUnitStatusDiscreteEntry 4 }

coolingUnitStatusDiscreteIntegerReferenceKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A complete listing of all possible coolingUnitStatusDiscreteValueAsInteger values paired with their identifying strings."
    ::= { coolingUnitStatusDiscreteEntry 5 }

coolingUnitConfiguration       OBJECT IDENTIFIER ::=  { coolingUnit 5 }
coolingUnitConfigurationAnalog OBJECT IDENTIFIER ::=  { coolingUnitConfiguration 1 }

coolingUnitConfigurationAnalogTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitConfigurationAnalogTable."
    ::= { coolingUnitConfigurationAnalog 1 }

coolingUnitConfigurationAnalogTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitConfigurationAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of analog unit configuration data."
    ::= { coolingUnitConfigurationAnalog 2}

coolingUnitConfigurationAnalogEntry OBJECT-TYPE
    SYNTAX CoolingUnitConfigurationAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitConfigurationAnalogTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitConfigurationAnalogTableIndex }
    ::= { coolingUnitConfigurationAnalogTable 1 }

CoolingUnitConfigurationAnalogEntry ::= SEQUENCE {
    coolingUnitConfigurationAnalogTableIndex INTEGER,
    coolingUnitConfigurationAnalogDescription DisplayString,
    coolingUnitConfigurationAnalogValue INTEGER,
    coolingUnitConfigurationAnalogUnits DisplayString,
    coolingUnitConfigurationAnalogScale INTEGER,
    coolingUnitConfigurationAnalogAccess INTEGER,
    coolingUnitConfigurationAnalogMinimum INTEGER,
    coolingUnitConfigurationAnalogMaximum INTEGER
}

coolingUnitConfigurationAnalogTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitConfigurationAnalogEntry 1 }

coolingUnitConfigurationAnalogDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitConfigurationAnalogValue."
    ::= { coolingUnitConfigurationAnalogEntry 2 }

coolingUnitConfigurationAnalogValue OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The scaled value of the current table entry (multiplied by coolingUnitConfigurationAnalogScale for integer presentation)."
    ::= { coolingUnitConfigurationAnalogEntry 3 }

coolingUnitConfigurationAnalogUnits OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unit of measure by which coolingUnitConfigurationAnalogValue is expressed."
    ::= { coolingUnitConfigurationAnalogEntry 4 }

coolingUnitConfigurationAnalogScale OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The factor by which coolingUnitConfigurationAnalogValue is expressed."
    ::= { coolingUnitConfigurationAnalogEntry 5 }

coolingUnitConfigurationAnalogAccess OBJECT-TYPE
    SYNTAX INTEGER {
      readOnly  (1),
      readWrite (2)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A description of available access to coolingUnitConfigurationAnalogValue via SNMP client."
    ::= { coolingUnitConfigurationAnalogEntry 6 }

coolingUnitConfigurationAnalogMinimum OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The minimum possible value of coolingUnitConfigurationAnalogValue."
    ::= { coolingUnitConfigurationAnalogEntry 7 }

coolingUnitConfigurationAnalogMaximum OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The maximum possible value of coolingUnitConfigurationAnalogValue."
    ::= { coolingUnitConfigurationAnalogEntry 8 }

coolingUnitConfigurationDiscrete OBJECT IDENTIFIER ::=  { coolingUnitConfiguration 2 }

coolingUnitConfigurationDiscreteTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitConfigurationDiscreteTable."
    ::= { coolingUnitConfigurationDiscrete 1 }

coolingUnitConfigurationDiscreteTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitConfigurationDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of discrete unit configuration data."
    ::= { coolingUnitConfigurationDiscrete 2}

coolingUnitConfigurationDiscreteEntry OBJECT-TYPE
    SYNTAX CoolingUnitConfigurationDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitConfigurationDiscreteTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitConfigurationDiscreteTableIndex }
    ::= { coolingUnitConfigurationDiscreteTable 1 }

CoolingUnitConfigurationDiscreteEntry ::= SEQUENCE {
    coolingUnitConfigurationDiscreteTableIndex INTEGER,
    coolingUnitConfigurationDiscreteDescription DisplayString,
    coolingUnitConfigurationDiscreteValueAsString DisplayString,
    coolingUnitConfigurationDiscreteValueAsInteger INTEGER,
    coolingUnitConfigurationDiscreteIntegerReferenceKey DisplayString,
    coolingUnitConfigurationDiscreteAccess INTEGER
}

coolingUnitConfigurationDiscreteTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitConfigurationDiscreteEntry 1 }

coolingUnitConfigurationDiscreteDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in this table's 'value' OIDs."
    ::= { coolingUnitConfigurationDiscreteEntry 2 }

coolingUnitConfigurationDiscreteValueAsString OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as a string."
    ::= { coolingUnitConfigurationDiscreteEntry 3 }

coolingUnitConfigurationDiscreteValueAsInteger OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as an integer value."
    ::= { coolingUnitConfigurationDiscreteEntry 4 }

coolingUnitConfigurationDiscreteIntegerReferenceKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A complete listing of all possible coolingUnitConfigurationDiscreteValueAsInteger values paired with their identifying strings."
    ::= { coolingUnitConfigurationDiscreteEntry 5 }

coolingUnitConfigurationDiscreteAccess OBJECT-TYPE
    SYNTAX INTEGER {
      readOnly  (1),
      readWrite (2)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A description of available access to coolingUnitConfigurationDiscreteValueAsInteger via SNMP client."
    ::= { coolingUnitConfigurationDiscreteEntry 6 }

coolingUnitConfigurationString  OBJECT IDENTIFIER ::=  { coolingUnitConfiguration 3 }

coolingUnitConfigurationStringTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitConfigurationStringTable."
    ::= { coolingUnitConfigurationString 1 }

coolingUnitConfigurationStringTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitConfigurationStringEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of unit configuration strings."
    ::= { coolingUnitConfigurationString 2}

coolingUnitConfigurationStringEntry OBJECT-TYPE
    SYNTAX CoolingUnitConfigurationStringEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitConfigurationStringTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitConfigurationStringTableIndex }
    ::= { coolingUnitConfigurationStringTable 1 }

CoolingUnitConfigurationStringEntry ::= SEQUENCE {
    coolingUnitConfigurationStringTableIndex INTEGER,
    coolingUnitConfigurationStringDescription DisplayString,
    coolingUnitConfigurationStringValue DisplayString,
    coolingUnitConfigurationStringMaxLength INTEGER,
    coolingUnitConfigurationStringAccess INTEGER
}

coolingUnitConfigurationStringTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry."
    ::= { coolingUnitConfigurationStringEntry 1 }

coolingUnitConfigurationStringDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitConfigurationStringValue."
    ::= { coolingUnitConfigurationStringEntry 2 }

coolingUnitConfigurationStringValue OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry."
    ::= { coolingUnitConfigurationStringEntry 3 }

coolingUnitConfigurationStringMaxLength OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The maximum string length supported by coolingUnitConfigurationStringValue."
    ::= { coolingUnitConfigurationStringEntry 4 }

coolingUnitConfigurationStringAccess OBJECT-TYPE
    SYNTAX INTEGER {
      readOnly  (1),
      readWrite (2)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A description of available access to coolingUnitConfigurationStringValue via SNMP client."
    ::= { coolingUnitConfigurationStringEntry 5 }

coolingUnitExtended            OBJECT IDENTIFIER ::=  { coolingUnit 6 }
coolingUnitExtendedAnalog      OBJECT IDENTIFIER ::=  { coolingUnitExtended 1 }

coolingUnitExtendedAnalogTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitExtendedAnalogTable."
    ::= { coolingUnitExtendedAnalog 1 }

coolingUnitExtendedAnalogTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitExtendedAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of secondary analog data for the cooling unit or one of its components."
    ::= { coolingUnitExtendedAnalog 2}

coolingUnitExtendedAnalogEntry OBJECT-TYPE
    SYNTAX CoolingUnitExtendedAnalogEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitExtendedAnalogTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitExtendedAnalogTableIndex }
    ::= { coolingUnitExtendedAnalogTable 1 }

CoolingUnitExtendedAnalogEntry ::= SEQUENCE {
    coolingUnitExtendedAnalogTableIndex INTEGER,
    coolingUnitExtendedAnalogDescription DisplayString,
    coolingUnitExtendedAnalogValue INTEGER,
    coolingUnitExtendedAnalogUnits DisplayString,
    coolingUnitExtendedAnalogScale INTEGER
}

coolingUnitExtendedAnalogTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry.  This identifier may reference different table entries in different unit models."
    ::= { coolingUnitExtendedAnalogEntry 1 }

coolingUnitExtendedAnalogDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitExtendedAnalogValue."
    ::= { coolingUnitExtendedAnalogEntry 2 }

coolingUnitExtendedAnalogValue OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The scaled value of the current table entry (multiplied by coolingUnitExtendedAnalogScale for integer presentation)."
    ::= { coolingUnitExtendedAnalogEntry 3 }

coolingUnitExtendedAnalogUnits OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unit of measure by which coolingUnitExtendedAnalogValue is expressed."
    ::= { coolingUnitExtendedAnalogEntry 4 }

coolingUnitExtendedAnalogScale OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The factor by which coolingUnitExtendedAnalogValue is expressed."
    ::= { coolingUnitExtendedAnalogEntry 5 }

coolingUnitExtendedDiscrete    OBJECT IDENTIFIER ::=  { coolingUnitExtended 2 }

coolingUnitExtendedDiscreteTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitExtendedDiscreteTable."
    ::= { coolingUnitExtendedDiscrete 1 }

coolingUnitExtendedDiscreteTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitExtendedDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of secondary discrete cooling unit data."
    ::= { coolingUnitExtendedDiscrete 2}

coolingUnitExtendedDiscreteEntry OBJECT-TYPE
    SYNTAX CoolingUnitExtendedDiscreteEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitExtendedDiscreteTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitExtendedDiscreteTableIndex }
    ::= { coolingUnitExtendedDiscreteTable 1 }

CoolingUnitExtendedDiscreteEntry ::= SEQUENCE {
    coolingUnitExtendedDiscreteTableIndex INTEGER,
    coolingUnitExtendedDiscreteDescription DisplayString,
    coolingUnitExtendedDiscreteValueAsString DisplayString,
    coolingUnitExtendedDiscreteValueAsInteger INTEGER,
    coolingUnitExtendedDiscreteIntegerReferenceKey DisplayString
}

coolingUnitExtendedDiscreteTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry.  This identifier may reference different table entries in different unit models."
    ::= { coolingUnitExtendedDiscreteEntry 1 }

coolingUnitExtendedDiscreteDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in this table's 'value' OIDs."
    ::= { coolingUnitExtendedDiscreteEntry 2 }

coolingUnitExtendedDiscreteValueAsString OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as a string."
    ::= { coolingUnitExtendedDiscreteEntry 3 }

coolingUnitExtendedDiscreteValueAsInteger OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry expressed as an integer value."
    ::= { coolingUnitExtendedDiscreteEntry 4 }

coolingUnitExtendedDiscreteIntegerReferenceKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A complete listing of all possible coolingUnitExtendedDiscreteValueAsInteger values paired with their identifying strings."
    ::= { coolingUnitExtendedDiscreteEntry 5 }

coolingUnitExtendedString      OBJECT IDENTIFIER ::=  { coolingUnitExtended 3 }

coolingUnitExtendedStringTableSize OBJECT-TYPE
    SYNTAX INTEGER (0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The potential number of entries available in coolingUnitExtendedStringTable."
    ::= { coolingUnitExtendedString 1 }

coolingUnitExtendedStringTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CoolingUnitExtendedStringEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of secondary unit reference data."
    ::= { coolingUnitExtendedString 2}

coolingUnitExtendedStringEntry OBJECT-TYPE
    SYNTAX CoolingUnitExtendedStringEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An element of coolingUnitExtendedStringTable."
    INDEX { coolingUnitTableIndex,
            coolingUnitExtendedStringTableIndex }
    ::= { coolingUnitExtendedStringTable 1 }

CoolingUnitExtendedStringEntry ::= SEQUENCE {
    coolingUnitExtendedStringTableIndex INTEGER,
    coolingUnitExtendedStringDescription DisplayString,
    coolingUnitExtendedStringValue DisplayString
}

coolingUnitExtendedStringTableIndex OBJECT-TYPE
    SYNTAX INTEGER (1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The static reference identifier for each table entry.  This identifier may reference different table entries in different unit models."
    ::= { coolingUnitExtendedStringEntry 1 }

coolingUnitExtendedStringDescription OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A text description of the information presented in coolingUnitExtendedStringValue."
    ::= { coolingUnitExtendedStringEntry 2 }

coolingUnitExtendedStringValue OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The actual value of the current table entry."
    ::= { coolingUnitExtendedStringEntry 3 }



-- the dm3IdentSystem group

dm3IdentSysDescriptionTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC description records."
   ::= { dm3IdentSystem 1 }

dm3IdentSysDescriptionTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3IdentSysDescriptionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing description records of the powerplant. The number of
       entries is contained in the dm3IdentSysDescriptionTableSize OID."
   ::= { dm3IdentSystem 2 }

dm3IdentSysDescriptionEntry OBJECT-TYPE
   SYNTAX Dm3IdentSysDescriptionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The powerplant description record to reference."
   INDEX { dm3IdentSysDescriptionIndex }
   ::= { dm3IdentSysDescriptionTable 1 }

Dm3IdentSysDescriptionEntry ::=
   SEQUENCE {
      dm3IdentSysDescriptionIndex   INTEGER,
      dm3IdentSysDescriptionText    DisplayString
   }

dm3IdentSysDescriptionIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant description record."
   ::= { dm3IdentSysDescriptionEntry 1 }

dm3IdentSysDescriptionText OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A 16 character text field describing the DC power plant device.
      This field can be configured from the dm3ConfigSysDescriptionText OID."
   ::= { dm3IdentSysDescriptionEntry 2 }

dm3IdentSysModel OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Model type of the DC power plant."
   ::= { dm3IdentSystem 3 }

dm3IdentSysCntrlRev OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Integer representation of the hardware revision of the Master Controller board."
   ::= { dm3IdentSystem 4 }

dm3IdentSysFWVersion OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Integer representation of the power plant Master Controller firmware revision."
   ::= { dm3IdentSystem 5 }

-- the dm3ConfigSystem group

dm3ConfigSysDescriptionTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC description records."
   ::= { dm3ConfigSystem 1 }

dm3ConfigSysDescriptionTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigSysDescriptionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing description records of the powerplant. The number of
       entries is contained in the dm3ConfigSysDescriptionTableSize OID."
   ::= { dm3ConfigSystem 2 }

dm3ConfigSysDescriptionEntry OBJECT-TYPE
   SYNTAX Dm3ConfigSysDescriptionEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The powerplant description record to reference."
   INDEX { dm3ConfigSysDescriptionIndex }
   ::= { dm3ConfigSysDescriptionTable 1 }

Dm3ConfigSysDescriptionEntry ::=
   SEQUENCE {
      dm3ConfigSysDescriptionIndex   INTEGER,
      dm3ConfigSysDescriptionText    DisplayString
   }

dm3ConfigSysDescriptionIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant description record."

   ::= { dm3ConfigSysDescriptionEntry 1 }

dm3ConfigSysDescriptionText OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "16 character text field describing the DC power plant device."

   ::= { dm3ConfigSysDescriptionEntry 2 }

dm3ConfigSysHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Ambient high temperature threshold.  Temperature sensor located on Master
      Controller board.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit).

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigSystem 3 }

dm3ConfigSysHighTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the System High Temperature Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."
   ::= { dm3ConfigSystem 4 }

dm3ConfigSysLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Ambient low temperature threshold.  Temperature sensor located on Master
      Controller board.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit).

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigSystem 5 }

dm3ConfigSysLowTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the System Low Temperature Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."
   ::= { dm3ConfigSystem 6 }

dm3ConfigSysHardwareTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the System Hardware Temperature Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."
   ::= { dm3ConfigSystem 7 }

dm3ConfigSysRemoteAccess OBJECT-TYPE
   SYNTAX INTEGER       {
      accessEnabled               (1),
      accessDisabled              (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "
      This OID is used to disable remote write access to the power plant.
      Setting this OID to accessEnabled (1) will have no affect.
      Setting this OID to accessDisabled (2) will disable the ability to
      remotely configure the DC powerplant.

      Once remote access is disabled, it can only be restored from the front
      panel of the DC power plant."
   ::= { dm3ConfigSystem 8 }


-- the dm3ConfigLVD group

dm3ConfigLVDTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant LVDs controllable
       by this IP address."
   ::= { dm3ConfigLVD 1 }

dm3ConfigLVDTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the LVDs. The number of
       entries is contained in the dm3ConfigLVDTableSize OID."
   ::= { dm3ConfigLVD 2 }

dm3ConfigLVDEntry OBJECT-TYPE
   SYNTAX Dm3ConfigLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The LVD to configure."
   INDEX { dm3ConfigLVDIndex }
   ::= { dm3ConfigLVDTable 1 }

Dm3ConfigLVDEntry ::=
   SEQUENCE {
      dm3ConfigLVDIndex               INTEGER,
      dm3ConfigLVDName                DisplayString,
      dm3ConfigLVDEnable              INTEGER,
      dm3ConfigLVDTripThresh          INTEGER,
      dm3ConfigLVDResetThresh         INTEGER,
      dm3ConfigLVDOpenAlarm           INTEGER,
      dm3ConfigLVDHWAlarm             INTEGER
   }

dm3ConfigLVDIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant LVD."
   ::= { dm3ConfigLVDEntry 1 }

dm3ConfigLVDName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the LVD. The maximum value is 16 characters."
   ::= { dm3ConfigLVDEntry 2 }

dm3ConfigLVDEnable OBJECT-TYPE
   SYNTAX INTEGER       {
      enabledYes               (1),
      enabledNo                (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID is used to control and indicate if the LVD is on or off.
      Setting this OID to enabledYes (1) will enable (turn on) the LVD.
      Setting this OID to enabledNo (2) will disable (turn off) the LVD."
   ::= { dm3ConfigLVDEntry 3 }

dm3ConfigLVDTripThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "LVD Trip threshold.  If voltage exceeds threshold, the LVD will trip.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigLVDEntry 4 }

dm3ConfigLVDResetThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "LVD Reset threshold.  If voltage exceeds threshold, the LVD will reset.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigLVDEntry 5 }

dm3ConfigLVDOpenAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the LVD Open Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."
   ::= { dm3ConfigLVDEntry 6 }

dm3ConfigLVDHWAlarm OBJECT-TYPE
SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the LVD Hardware Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."
   ::= { dm3ConfigLVDEntry 7 }


-- the dm3ConfigBattery group

dm3ConfigBattFloatVolt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery Float Voltage.  This setting controls the power plant voltage.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 1 }

dm3ConfigBattMaxRecharge OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery Maximum Recharge Rate.  This setting controls the battery max
      recharge rate.  The value is based on C/20 for 240 AHr battery string.

      Values are represented in thousandths of Amps (mA).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 2 }

dm3ConfigBattDischargeThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery discharge threshold.  If battery output current exceeds threshold
      a battery discharge alarm will occur.

      Values are represented in thousandths of Amps (mA).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 3 }

dm3ConfigBattDischargeAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery Discharge Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 4 }

dm3ConfigBattHighVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery high voltage threshold.  If system battery voltage exceeds threshold
      a battery high voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 5 }

dm3ConfigBattHighVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery High Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 6 }

dm3ConfigBattLowVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery low voltage threshold.  If system battery voltage is under threshold
      a battery low voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 7 }

dm3ConfigBattLowVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery Low Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 8 }

dm3ConfigBattHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery high temperature threshold.  If system battery temperature exceeds threshold
      a battery high temperature alarm will occur.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit).

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."

   ::= { dm3ConfigBattery 9 }

dm3ConfigBattHighTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery High Temperature Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 10 }

dm3ConfigBattLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery low temperature threshold.  If system battery temperature is under threshold
      a battery low temperature alarm will occur.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit).

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."

   ::= { dm3ConfigBattery 11 }

dm3ConfigBattLowTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery Low Temperature Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 12 }

dm3ConfigBattAmpHour OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery Amp-Hour Size.  Units are thousandths of Amp hours (mAHr).

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 13 }

dm3ConfigCompMethod OBJECT-TYPE
   SYNTAX INTEGER       {
      tempcompOn          (1),
      tempcompOff         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID is used to configure and get the state of the battery
      temperature compensation.

      Setting this OID to tempcompOn (1) will enable/turn on the battery temperature compensation.
      Setting this OID to tempcompOff (2) will disable/turn off the battery temperature compensation."
   ::= { dm3ConfigBattery 14 }

dm3ConfigCompTempCoeff OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Compensation Temperature Coefficient. (uV/degC/cell).

      Units are presented in microvolts.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 15 }

dm3ConfigHighKneeTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "High Knee for temperature compensation:  Compensation temperature coefficient
      becomes 0mV/degC/cell.

      Values are represented in thousandths of degrees Celsius.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 16 }

dm3ConfigLowKneeTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Low Knee for temperature compensation:  Compensation temperature coefficient
      becomes 0mV/degC/cell.

      Values are represented in thousandths of degrees Celsius.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigBattery 17 }

dm3ConfigBattHwCurrentAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery Current Hardware Alarm (indicating current is outside realistic
       limits, or a possible measurement fault;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 18 }

dm3ConfigBattHwTempAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Battery Temperature Hardware Alarm (indicating temperature is outside realistic
       limits, or a possible measurement fault;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBattery 19 }


-- the dm3ConfigRectThresh group
dm3ConfigRectHighVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Rectifier high voltage threshold.  If rectifier voltage exceeds threshold
      a rectifier high voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigRectThresh 1 }


dm3ConfigRectLowVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Rectifier low voltage threshold.  If rectifier voltage is under threshold
      a rectifier low voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigRectThresh 2 }

dm3ConfigRectFailSafe OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Rectifier Fail Safe point.  This OID represents the value sent to rectifier controllers
      to use in the event of communications loss with the Master Controller or Master Controller
      board failure.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigRectThresh 3 }

dm3ConfigRectFailComm OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Rectifier Communication Fail timeout.  This OID represents the time interval in which there is no
      communication between the rectifier and the master controller at which the rectifier will reset
      all its values to default.

      Values are represented in hundredths of Seconds.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigRectThresh 4 }

-- the dm3ConfigRectAlarms group

dm3ConfigRectHighVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier High Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 1 }

dm3ConfigRectLowVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Low Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 2 }

dm3ConfigRectConfigAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This alarm is activated when a new rectifier is detected;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 3 }

dm3ConfigRect1ofNAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting indicates the action if ONE rectifier of a N+1 system has failed;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 4 }

dm3ConfigRect2ofNAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This setting indicates the action if TWO OR MORE rectifiers of a N+1 system have failed;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 5 }

dm3ConfigRectDiagAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Controller Diagnostics Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigRect1ofNAlarm OID
      to be activated if ONE rectifier fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigRect2ofNAlarm OID to be activated if TWO OR MORE rectifiers fail in an N+1 system."

   ::= { dm3ConfigRectAlarms 6 }

dm3ConfigRectImbalanceAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Imbalance Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 7 }

dm3ConfigRectCurrLimitAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Current Limit Alarm (indicating rectifier in the Current Limit state);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigRect1ofNAlarm OID
      to be activated if ONE rectifier fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigRect2ofNAlarm OID to be activated if TWO OR MORE rectifiers fail in an N+1 system."

   ::= { dm3ConfigRectAlarms 8 }

dm3ConfigRectStandbyAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Standby Alarm (indicating output DC has been turned off);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigRect1ofNAlarm OID
      to be activated if ONE rectifier fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigRect2ofNAlarm OID to be activated if TWO OR MORE rectifiers fail in an N+1 system."

   ::= { dm3ConfigRectAlarms 9 }

dm3ConfigRectFanFailAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Fan Fail Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigRect1ofNAlarm OID
      to be activated if ONE rectifier fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigRect2ofNAlarm OID to be activated if TWO OR MORE rectifiers fail in an N+1 system."

   ::= { dm3ConfigRectAlarms 10 }

dm3ConfigRectFailAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Fail Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigRect1ofNAlarm OID
      to be activated if ONE rectifier fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigRect2ofNAlarm OID to be activated if TWO OR MORE rectifiers fail in an N+1 system."

   ::= { dm3ConfigRectAlarms 11 }

dm3ConfigRectHwVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Rectifier Hardware Voltage Alarm (indicating voltage outside realistic limits,
      or a possible measurement fault);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigRectAlarms 12 }


-- the dm3ConfigConvThresh group

dm3ConfigConvHighVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter high voltage threshold.  If converter voltage exceeds threshold
      a converter high voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."

   ::= { dm3ConfigConvThresh 1 }

dm3ConfigConvLowVoltThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter low voltage threshold.  If converter voltage exceeds threshold
      a converter low voltage alarm will occur.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 2 }

dm3ConfigConvFailSafe OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter Fail Safe point.  This OID represents the value sent to converter controllers
      to use in the event of communications loss with the Master Controller or Master Controller
      board failure.

      Values are represented in thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 3 }

dm3ConfigConvSetPoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter Set point.  This OID represents the initial set point used in the
      voltage control loop.

      Units are thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 4 }

dm3ConfigConvFailMax OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter Fail Maximum limit.  This OID represents the value sent to the converter
      controllers to define the maximum set point allowed.

      Units are thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 5 }

dm3ConfigConvFailMin OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter Fail Minimum limit.  This OID represents the value sent to the converter
      controllers to define the minimum set point allowed.

      Units are thousandths of Volts (mV).
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 6 }

dm3ConfigConvFailComm OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Converter Communication Fail timeout.  This OID represents the time interval in which there is no
      communication between the converter and the master controller at which the converter will reset
      all its values to default.

      Values are represented in hundredths of Seconds.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigConvThresh 7 }

-- the dm3ConfigConvAlarms group
dm3ConfigConvHighVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter High Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigConvAlarms 1 }

dm3ConfigConvLowVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Low Voltage Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigConvAlarms 2 }

dm3ConfigConvConfigAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Configuration Alarm (indicating a new converter has been detected);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigConvAlarms 3 }

dm3ConfigConv1ofNAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter 1ofN Alarm (indicating action if ONE converter of a N+1 system has failed);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigConvAlarms 4 }

dm3ConfigConv2ofNAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter 2ofN Alarm (indicating action if TWO OR MORE converters of a N+1 system has failed);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigConvAlarms 5 }

dm3ConfigConvDiagAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Diagnostics Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 6 }

dm3ConfigConvImbalanceAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Imbalance Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 7 }

dm3ConfigConvCurrLimitAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Current Limit Alarm (indicating the converter is in the Current Limit state);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 8 }

dm3ConfigConvStandbyAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Standby Alarm (indicating the converter is in the Standby state);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 9 }

dm3ConfigConvFanFailAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Fan Fail Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 10 }

dm3ConfigConvFailAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Fail Alarm;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 11 }

dm3ConfigConvHwVoltAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9),
      alarmNofN                (10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "For the Converter Voltage Alarm (indicating voltage outside realistic limits, or a
      possible measurement fault);
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.
      Setting this OID to alarmNofN (10) causes the alarm specified in the dm3ConfigConv1ofNAlarm OID
      to be activated if ONE converter fails in an N+1 system.  It causes the alarm specified in the
      dm3ConfigConv2ofNAlarm OID to be activated if TWO OR MORE converters fail in an N+1 system."

   ::= { dm3ConfigConvAlarms 12 }


-- the dm3ConfigOutputRelays group

dm3ConfigOutRlyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant Output Relays controllable
       by this IP address."
   ::= { dm3ConfigOutputRelays 1 }

dm3ConfigOutRlyTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigOutRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the Output Relays. The number of
       entries is contained in the dm3ConfigOutRlyTableSize OID."
   ::= { dm3ConfigOutputRelays 2 }

dm3ConfigOutRlyEntry OBJECT-TYPE
   SYNTAX Dm3ConfigOutRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relay to configure."
   INDEX { dm3ConfigOutRlyIndex }
   ::= { dm3ConfigOutRlyTable 1 }

Dm3ConfigOutRlyEntry ::=
   SEQUENCE {
      dm3ConfigOutRlyIndex            INTEGER,
      dm3ConfigOutRlyName             DisplayString,
      dm3ConfigOutRlyDelay            INTEGER,
      dm3ConfigOutRlyAlarm            INTEGER
   }

dm3ConfigOutRlyIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant output relay."
   ::= { dm3ConfigOutRlyEntry 1 }

dm3ConfigOutRlyName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the output relay. The maximum value is 16 characters."
   ::= { dm3ConfigOutRlyEntry 2 }

dm3ConfigOutRlyDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output Relay Delay.  This OID represents the time delay from the initiation of an
      output relay action to when the output relay action does occur.  If the alarm condition
      disappears before the end of the delay, no action will occur.  Delay for Major
      and Minor alarms is not configurable and is always set to 0.

      Values are represented in hundredths of seconds.
      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigOutRlyEntry 3 }

dm3ConfigOutRlyAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output Relay Alarm.  This setting indicates what action to perform in the event of
      an output relay alarm condition;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition.

      Relay Alarm for Major and Minor alarms is not configurable and is always set to
      alarmMajor and alarmMinor respectively."

   ::= { dm3ConfigOutRlyEntry 4 }


-- the dm3ConfigInputRelays group

dm3ConfigInRlyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant Input Relays controllable
       by this IP address."
   ::= { dm3ConfigInputRelays 1 }

dm3ConfigInRlyTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigInRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the Input Relays. The number of
       entries is contained in the dm3ConfigInRlyTableSize OID."
   ::= { dm3ConfigInputRelays 2 }

dm3ConfigInRlyEntry OBJECT-TYPE
   SYNTAX Dm3ConfigInRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input relay to configure."
   INDEX { dm3ConfigInRlyIndex }
   ::= { dm3ConfigInRlyTable 1 }

Dm3ConfigInRlyEntry ::=
   SEQUENCE {
      dm3ConfigInRlyIndex             INTEGER,
      dm3ConfigInRlyName              DisplayString,
      dm3ConfigInRlyDelay             INTEGER,
      dm3ConfigInRlyAlarm             INTEGER
   }

dm3ConfigInRlyIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant input relay."
   ::= { dm3ConfigInRlyEntry 1 }

dm3ConfigInRlyName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the input relay. The maximum value is 16 characters."

   ::= { dm3ConfigInRlyEntry 2 }

dm3ConfigInRlyDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input Relay Delay.  This OID represents the time delay from the initiation of an
      input relay action to when the input relay action does occur.   If the alarm condition
      disappears before the end of the delay, no action will occur.

      Values are represented in hundredths of seconds.

      Attempts to set the value above or below the acceptable range of the powerplant
       will cause the value to be set at the high or low point of the range respectively."
   ::= { dm3ConfigInRlyEntry 3 }

dm3ConfigInRlyAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input Relay Alarm.  This setting indicates what action to perform in the event of
      an input relay alarm condition;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigInRlyEntry 4 }

-- the dm3ConfigBreakers group

dm3ConfigBreakersTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant circuit breakers controllable
       by this IP address."
   ::= { dm3ConfigBreakers 1 }

dm3ConfigBreakersTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigBreakersEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the circuit breakers. The number of
       entries is contained in the dm3ConfigBreakersTableSize OID."
   ::= { dm3ConfigBreakers 2 }

dm3ConfigBreakersEntry OBJECT-TYPE
   SYNTAX Dm3ConfigBreakersEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The circuit breaker to configure."
   INDEX { dm3ConfigBreakersIndex }
   ::= { dm3ConfigBreakersTable 1 }

Dm3ConfigBreakersEntry ::=
   SEQUENCE {
      dm3ConfigBreakersIndex         INTEGER,
      dm3ConfigBreakersName          DisplayString,
      dm3ConfigBreakersAlarm         INTEGER
   }

dm3ConfigBreakersIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant circuit breaker."
   ::= { dm3ConfigBreakersEntry 1 }

dm3ConfigBreakersName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the circuit breaker. The maximum value is 16 characters."
   ::= { dm3ConfigBreakersEntry 2 }

dm3ConfigBreakersAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Circuit Breaker Alarm.  This setting indicates what action to perform in the event of
      a circuit breaker alarm condition;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigBreakersEntry 3 }

-- the dm3ConfigFuses group

dm3ConfigFusesTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant Fuses controllable
       by this IP address."
   ::= { dm3ConfigFuses 1 }

dm3ConfigFusesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3ConfigFusesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the Fuses. The number of
       entries is contained in the dm3ConfigFusesTableSize OID."
   ::= { dm3ConfigFuses 2 }

dm3ConfigFusesEntry OBJECT-TYPE
   SYNTAX Dm3ConfigFusesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The fuse to configure."
   INDEX { dm3ConfigFusesIndex }
   ::= { dm3ConfigFusesTable 1 }

Dm3ConfigFusesEntry ::=
   SEQUENCE {
      dm3ConfigFusesIndex              INTEGER,
      dm3ConfigFusesName               DisplayString,
      dm3ConfigFusesAlarm              INTEGER
   }

dm3ConfigFusesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant fuse."
   ::= { dm3ConfigFusesEntry 1 }

dm3ConfigFusesName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the fuse. The maximum value is 16 characters."
   ::= { dm3ConfigFusesEntry 2 }

dm3ConfigFusesAlarm OBJECT-TYPE
   SYNTAX INTEGER       {
      alarmIgnore               (1),
      alarmRelay1               (2),
      alarmRelay2               (3),
      alarmRelay3               (4),
      alarmRelay4               (5),
      alarmRelay5               (6),
      alarmRelay6               (7),
      alarmMinor                (8),
      alarmMajor                (9)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Fuses Alarm.  This setting indicates what action to perform in the event of
      a Fuse alarm condition;
      Setting this OID to alarmIgnore (1) results in the alarm condition being ignored.
      Setting this OID to alarmRelay1 (2) causes relay 1 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay2 (3) causes relay 2 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay3 (4) causes relay 3 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay4 (5) causes relay 4 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay5 (6) causes relay 5 to be activated for an
      alarm condition.
      Setting this OID to alarmRelay6 (7) causes relay 6 to be activated for an
      alarm condition.
      Setting this OID to alarmMinor (8) causes the Minor relay to be activated for an
      alarm condition.
      Setting this OID to alarmMajor (9) causes the Major relay to be activated for an
      alarm condition."

   ::= { dm3ConfigFusesEntry 3 }

-- the dm3StatusSystem group

dm3StatusSystemTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System temperature based on sensor on Master Controller PCB.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit)."

   ::= { dm3StatusSystem 1 }

dm3StatusSystemStart OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Time stamp at DC powerplant initialization.
       The time is represented as MMM,DD,YYYY,HH:MM:SS."
   ::= { dm3StatusSystem 2 }

dm3StatusSysRemoteAccess OBJECT-TYPE
   SYNTAX INTEGER       {
      accessEnabled              (1),
      accessDisabled             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Remote Access indicator
      This setting indicates if configuration (write) access to the powerplant is enabled or
      disabled at the powerplant level.
      This value will be accessEnabled (1) if remote configuration is enabled, and
      accessDisabled (2) if remote configuration is disabled."
   ::= { dm3StatusSystem 3 }

dm3StatusSysSecurityLevel OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable shows the current active security access level of controller.  This
      can only be changed directly from the front panel."
   ::= { dm3StatusSystem 4 }

dm3StatusSysTempSanity OBJECT-TYPE
   SYNTAX INTEGER{
      saneYES              (1),
      saneNO               (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System temperature sanity indicator.  Indicates if the system temperature is
      reasonable.  Reasonable is defined based on powerplant type.  A value of saneYes (1)
      indicates temperature is reasonable, a value of saneNo (2) indicates it is not."
   ::= { dm3StatusSystem 5 }

dm3StatusSysAlarmState OBJECT-TYPE
   SYNTAX INTEGER{
      alarmMinor           (1),
      alarmMajor           (2),
      alarmBoth            (3),
      alarmNone            (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System Alarm State.  Reflects the alarm status of the overall DC system.
      If a minor alarm is present, the value will be alarmMinor(1).
      If a major alarm is present, the value will be alarmMajor(2).
      If both minor and a major alarm is present, the value will be alarmBoth(3).
      If no alarm is present, the value will be alarmNone(4)."
   ::= { dm3StatusSystem 6 }

dm3StatusSysTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       in the DC system, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { dm3StatusSystem 7 }


-- the dm3StatusAlarms group

dm3StatusAlarmsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant alarms viewable
       by this IP address."
   ::= { dm3StatusAlarms 1 }

dm3StatusAlarmsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing system alarms. The number of
       entries is contained in the dm3StatusAlarmsTableSize OID."
   ::= { dm3StatusAlarms 2 }

dm3StatusAlarmsEntry OBJECT-TYPE
   SYNTAX Dm3StatusAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The alarm to display."
   INDEX { dm3StatusAlarmsIndex }
   ::= { dm3StatusAlarmsTable 1 }

Dm3StatusAlarmsEntry ::=
   SEQUENCE {
      dm3StatusAlarmsIndex               INTEGER,
      dm3StatusAlarmsText                DisplayString
   }

dm3StatusAlarmsIndex OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The index of the system alarm."
   ::= { dm3StatusAlarmsEntry 1 }

dm3StatusAlarmsText OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The 16 character text describing the active alarm condition."
   ::= { dm3StatusAlarmsEntry 2 }

-- the dm3StatusBattery group

dm3StatusBattCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery Current:  This OID shows the battery current in thousandths of Amps (mA)."
   ::= { dm3StatusBattery 1 }

dm3StatusBattTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery Temperature:

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dm3StatusSysTempUnits' OID (Celsius or Fahrenheit)."

   ::= { dm3StatusBattery 2 }

dm3StatusBattCurrentSanity OBJECT-TYPE
   SYNTAX INTEGER{
      saneYES              (1),
      saneNO               (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery current sanity indicator.  Indicates if the battery current is
      reasonable.  Reasonable is defined based on powerplant type.  A value of saneYes (1)
      indicates current is reasonable, a value of saneNo (2) indicates it is not."
   ::= { dm3StatusBattery 3 }

dm3StatusBattTempSanity OBJECT-TYPE
   SYNTAX INTEGER{
      saneYES              (1),
      saneNO               (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery temperature sanity indicator.  Indicates if the battery temperature is
      reasonable.  Reasonable is defined based on powerplant type.  A value of saneYes (1)
      indicates temperature is reasonable, a value of saneNo (2) indicates it is not."
   ::= { dm3StatusBattery 4 }

-- the dm3StatusOEM group

dm3StatusOEMrectOffset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier offset value in thousandths of Volts (mV)."
   ::= { dm3StatusOEM 1 }

dm3StatusOEMrectGain OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier gain value in thousandths of Volts (mV/V)."
   ::= { dm3StatusOEM 2 }

dm3StatusOEMconvOffset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter offset value in thousandths of Volts (mV)."
   ::= { dm3StatusOEM 3 }

dm3StatusOEMconvGain OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter gain value in thousandths of Volts (mV/V)."
   ::= { dm3StatusOEM 4 }

dm3StatusOEMshuntOffset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the shunt offset value in thousandths of Amps (mA)."
   ::= { dm3StatusOEM 5 }

dm3StatusOEMshuntGain OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the shunt gain value in thousandths of Amps (mA/A)."
   ::= { dm3StatusOEM 6 }

-- the dm3StatusLVD group

dm3StatusLVDTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant LVDs viewable
       by this IP address."
   ::= { dm3StatusLVD 1 }

dm3StatusLVDTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the LVDs. The number of
       entries is contained in the dm3StatusLVDTableSize OID."
   ::= { dm3StatusLVD 2 }

dm3StatusLVDEntry OBJECT-TYPE
   SYNTAX Dm3StatusLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The LVD to gather status from."
   INDEX { dm3StatusLVDIndex }
   ::= { dm3StatusLVDTable 1 }

Dm3StatusLVDEntry ::=
   SEQUENCE {
      dm3StatusLVDIndex               INTEGER,
      dm3StatusLVDName                DisplayString,
      dm3StatusLVDState               INTEGER,
      dm3StatusLVDHwFault             INTEGER
   }

dm3StatusLVDIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant LVD."
   ::= { dm3StatusLVDEntry 1 }

dm3StatusLVDName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the LVD. The maximum size is
       16 characters. The name is set by using the
       dm3ConfigLVDName OID.
       This OID is provided for informational purposes only."
   ::= { dm3StatusLVDEntry 2 }

dm3StatusLVDState OBJECT-TYPE
   SYNTAX INTEGER       {
      statusClosed             (1),
      statusOpened             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusClosed (1) if the LVD is closed.
       statusOpened (2) will be returned if the LVD is opened."
   ::= { dm3StatusLVDEntry 3 }

dm3StatusLVDHwFault OBJECT-TYPE
   SYNTAX INTEGER       {
      statusFault               (1),
      statusNofault             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusFault (1) if the LVD is faulted.
       statusNofault (2) will be returned if the LVD is not faulted."
   ::= { dm3StatusLVDEntry 4 }

-- the dm3StatusRectifier group

dm3StatusRectTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant rectifiers viewable
       by this IP address."
   ::= { dm3StatusRectifier 1 }

dm3StatusRectTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusRectEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the rectifiers. The number of
       entries is contained in the dm3StatusRectTableSize OID."
   ::= { dm3StatusRectifier 2 }

dm3StatusRectEntry OBJECT-TYPE
   SYNTAX Dm3StatusRectEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The rectifier to gather status from."
   INDEX { dm3StatusRectIndex }
   ::= { dm3StatusRectTable 1 }

Dm3StatusRectEntry ::=
   SEQUENCE {
      dm3StatusRectIndex            INTEGER,
      dm3StatusRectID               INTEGER,
      dm3StatusRectDesc             DisplayString,
      dm3StatusRectCurrent          INTEGER,
      dm3StatusRectCurrentLimit     INTEGER,
      dm3StatusRectStandby          INTEGER,
      dm3StatusRectFanFail          INTEGER,
      dm3StatusRectFail             INTEGER,
      dm3StatusRectDevType          INTEGER,
      dm3StatusRectPhyAddr          INTEGER,
      dm3StatusRectCfg              INTEGER,
      dm3StatusRectPcbRev           INTEGER,
      dm3StatusRectFwVer            INTEGER,
      dm3StatusRectPresent          INTEGER,
      dm3StatusRectDiagPass         INTEGER,
      dm3StatusRectState            INTEGER
   }

dm3StatusRectIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant rectifier."
   ::= { dm3StatusRectEntry 1 }

dm3StatusRectID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier ID.  This enumerates the number of the rectifier within
       a group of rectifiers."
   ::= { dm3StatusRectEntry 2 }

dm3StatusRectDesc OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the 16-character rectifier description."
   ::= { dm3StatusRectEntry 3 }

dm3StatusRectCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier current in thousandths of Amps (mA)."
   ::= { dm3StatusRectEntry 4 }

dm3StatusRectCurrentLimit OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier is in the Current Limit state.
       statusFalse (2) will be returned if the rectifier is not in the Current Limit state."
   ::= { dm3StatusRectEntry 5 }

dm3StatusRectStandby OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier is in the Standby state.
       statusFalse (2) will be returned if the rectifier is not in the Standby state."
   ::= { dm3StatusRectEntry 6 }

dm3StatusRectFanFail OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier Fan has failed.
       statusFalse (2) will be returned if the rectifier Fan has not failed."
   ::= { dm3StatusRectEntry 7 }

dm3StatusRectFail    OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier has failed.
       statusFalse (2) will be returned if the rectifier has not failed."
   ::= { dm3StatusRectEntry 8 }

dm3StatusRectDevType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier device type."
   ::= { dm3StatusRectEntry 9 }

dm3StatusRectPhyAddr OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier physical address (the address on the bus)."
   ::= { dm3StatusRectEntry 10 }

dm3StatusRectCfg OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier is present after
      power-up or set-configuration.
       statusFalse (2) will be returned if the rectifier is not configured."
   ::= { dm3StatusRectEntry 11 }

dm3StatusRectPcbRev OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier device PCB serial number."
   ::= { dm3StatusRectEntry 12 }

dm3StatusRectFwVer OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier device firmware revision."
   ::= { dm3StatusRectEntry 13 }

dm3StatusRectPresent OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier is present.
       statusFalse (2) will be returned if the rectifier is not present."
   ::= { dm3StatusRectEntry 14 }

dm3StatusRectDiagPass OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier diagnostics have passed.
       statusFalse (2) will be returned if the rectifier diagnostics have not passed."
   ::= { dm3StatusRectEntry 15 }

dm3StatusRectState OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier device state as defined by the device status register."
   ::= { dm3StatusRectEntry 16 }

dm3StatusSysRectVoltSanity OBJECT-TYPE
   SYNTAX INTEGER {
      saneYES              (1),
      saneNO               (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Rectifier voltage sanity indicator.  Indicates if the rectifier voltage is
      reasonable.  Reasonable is defined based on powerplant type.  A value of saneYes (1)
      indicates voltage is reasonable, a value of saneNo (2) indicates it is not."
   ::= { dm3StatusRectifier 3 }

dm3StatusSysRectAvailable OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier is available.
       statusFalse (2) will be returned if the rectifier is not available."
   ::= { dm3StatusRectifier 4 }

dm3StatusSysRectType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the type of rectifier the system has.  There can only be a single type of
      rectifier in the power plant"
   ::= { dm3StatusRectifier 5 }

dm3StatusSysRectVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the system level rectifier voltage in thousandths of Volts (mV)."
   ::= { dm3StatusRectifier 6 }

dm3StatusSysRectCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the system level rectifier current in thousandths of Amps (mA)."
   ::= { dm3StatusRectifier 7 }


-- the dm3StatusConverter group

dm3StatusConvTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant converters viewable
       by this IP address."
   ::= { dm3StatusConverter 1 }

dm3StatusConvTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusConvEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for viewing status of the converters. The number of
       entries is contained in the dm3StatusConvTableSize OID."
   ::= { dm3StatusConverter 2 }

dm3StatusConvEntry OBJECT-TYPE
   SYNTAX Dm3StatusConvEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The converter to gather status from."
   INDEX { dm3StatusConvIndex }
   ::= { dm3StatusConvTable 1 }

Dm3StatusConvEntry ::=
   SEQUENCE {
      dm3StatusConvIndex            INTEGER,
      dm3StatusConvID               INTEGER,
      dm3StatusConvDesc             DisplayString,
      dm3StatusConvCurrent          INTEGER,
      dm3StatusConvCurrentLimit     INTEGER,
      dm3StatusConvStandby          INTEGER,
      dm3StatusConvFanFail          INTEGER,
      dm3StatusConvFail             INTEGER,
      dm3StatusConvDevType          INTEGER,
      dm3StatusConvPhyAddr          INTEGER,
      dm3StatusConvCfg              INTEGER,
      dm3StatusConvPcbRev           INTEGER,
      dm3StatusConvFwVer            INTEGER,
      dm3StatusConvPresent          INTEGER,
      dm3StatusConvDiagPass         INTEGER,
      dm3StatusConvState            INTEGER
   }

dm3StatusConvIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant converter."
   ::= { dm3StatusConvEntry 1 }

dm3StatusConvID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter ID.  This enumerates the number of the converter within
       a group of converters."
   ::= { dm3StatusConvEntry 2 }

dm3StatusConvDesc OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the 16 character converter description."
   ::= { dm3StatusConvEntry 3 }

dm3StatusConvCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter current in thousandths of Amps (mA)."
   ::= { dm3StatusConvEntry 4 }

dm3StatusConvCurrentLimit OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter is in the Current Limit state.
       statusFalse (2) will be returned if the converter is not in the Current Limit state."
   ::= { dm3StatusConvEntry 5 }

dm3StatusConvStandby OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter is in the Standby state.
       statusFalse (2) will be returned if the converter is not in the Standby state."
   ::= { dm3StatusConvEntry 6 }

dm3StatusConvFanFail OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter Fan has failed.
       statusFalse (2) will be returned if the converter Fan has not failed."
   ::= { dm3StatusConvEntry 7 }

dm3StatusConvFail OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter has failed.
       statusFalse (2) will be returned if the converter has not failed."
   ::= { dm3StatusConvEntry 8 }

dm3StatusConvDevType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter device type."
   ::= { dm3StatusConvEntry 9 }

dm3StatusConvPhyAddr OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter physical address (the address on the bus)."
   ::= { dm3StatusConvEntry 10 }

dm3StatusConvCfg OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter is present after
      power-up or set-configuration.
       statusFalse (2) will be returned if the converter is not configured."
   ::= { dm3StatusConvEntry 11 }

dm3StatusConvPcbRev OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter device PCB serial number."
   ::= { dm3StatusConvEntry 12 }

dm3StatusConvFwVer OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter device firmware version."
   ::= { dm3StatusConvEntry 13 }

dm3StatusConvPresent OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter is present.
       statusFalse (2) will be returned if the converter is not present."
   ::= { dm3StatusConvEntry 14 }

dm3StatusConvDiagPass OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter diagnostics have passed.
       statusFalse (2) will be returned if the converter diagnostics have not passed."
   ::= { dm3StatusConvEntry 15 }

dm3StatusConvState OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter state as defined by the device status register."
   ::= { dm3StatusConvEntry 16 }

dm3StatusSysConvVoltSanity OBJECT-TYPE
   SYNTAX INTEGER{
      saneYES              (1),
      saneNO               (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Converter voltage sanity indicator.  Indicates if the converter voltage is
      reasonable.  Reasonable is defined based on powerplant type.  A value of saneYes (1)
      indicates voltage is reasonable, a value of saneNo (2) indicates it is not."
   ::= { dm3StatusConverter 3 }

dm3StatusSysConvAvailable OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the converter is available.
       statusFalse (2) will be returned if the converter is not available."
   ::= { dm3StatusConverter 4 }

dm3StatusSysConvType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the converter type."
   ::= { dm3StatusConverter 5 }

dm3StatusSysConvVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the system level converter voltage in thousandths of volts (mV)."
   ::= { dm3StatusConverter 6 }

dm3StatusSysConvCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the system level converter current in thousandths of Amps (mA)."
   ::= { dm3StatusConverter 7 }

-- the dm3StatusOutputRelays group

dm3StatusOutRlyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant output relays viewable
       by this IP address."
   ::= { dm3StatusOutputRelays 1 }

dm3StatusOutRlyTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusOutRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for viewing status of the output relays. The number of
       entries is contained in the dm3StatusOutRlyTableSize OID."
   ::= { dm3StatusOutputRelays 2 }

dm3StatusOutRlyEntry OBJECT-TYPE
   SYNTAX Dm3StatusOutRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relay to gather status from."
   INDEX { dm3StatusOutRlyIndex }
   ::= { dm3StatusOutRlyTable 1 }

Dm3StatusOutRlyEntry ::=
   SEQUENCE {
      dm3StatusOutRlyIndex            INTEGER,
      dm3StatusOutRlyName             DisplayString,
      dm3StatusOutRlyStatus           INTEGER
   }

dm3StatusOutRlyIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant output relay."
   ::= { dm3StatusOutRlyEntry 1 }

dm3StatusOutRlyName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the output relay. The maximum size is
       16 characters. The name is set by using the
       dm3ConfigOutRlyName OID.
       This OID is provided for informational purposes only."
   ::= { dm3StatusOutRlyEntry 2 }

dm3StatusOutRlyStatus OBJECT-TYPE
   SYNTAX INTEGER       {
      statusOn          (1),
      statusOff         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusOn (1) if the output relay is enabled/on.
       statusOff (2) will be returned if the output relay is disabled/off."
   ::= { dm3StatusOutRlyEntry 3 }


-- the dm3StatusInputRelays group

dm3StatusInRlyTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant input relays viewable
       by this IP address."
   ::= { dm3StatusInputRelays 1 }

dm3StatusInRlyTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusInRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for viewing status of the input relays. The number of
       entries is contained in the dm3StatusInRlyTableSize OID."
   ::= { dm3StatusInputRelays 2 }


dm3StatusInRlyEntry OBJECT-TYPE
   SYNTAX Dm3StatusInRlyEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input relays to gather status from."
   INDEX { dm3StatusInRlyIndex }
   ::= { dm3StatusInRlyTable 1 }

Dm3StatusInRlyEntry ::=
   SEQUENCE {
      dm3StatusInRlyIndex           INTEGER,
      dm3StatusInRlyName            DisplayString,
      dm3StatusInRlyStatus          INTEGER
   }

dm3StatusInRlyIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant input relay."
   ::= { dm3StatusInRlyEntry 1 }

dm3StatusInRlyName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the input relay. The maximum size is
       16 characters. The name is set by using the
       dm3ConfigInRlyName OID.
       This OID is provided for informational purposes only."
   ::= { dm3StatusInRlyEntry 2 }

dm3StatusInRlyStatus OBJECT-TYPE
   SYNTAX INTEGER       {
      statusOn          (1),
      statusOff         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusOn (1) if the input relay is enabled/on.
       statusOff (2) will be returned if the input relay is disabled/off."
   ::= { dm3StatusInRlyEntry 3 }

-- the dm3StatusBreakers group

dm3StatusBreakersTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant circuit breakers viewable
       by this IP address."
   ::= { dm3StatusBreakers 1 }

dm3StatusBreakersTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusBreakersEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for viewing status of the circuit breakers. The number of
       entries is contained in the dm3StatusBreakersTableSize OID."
   ::= { dm3StatusBreakers 2 }

dm3StatusBreakersEntry OBJECT-TYPE
   SYNTAX Dm3StatusBreakersEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The circuit breaker to gather status from."
   INDEX { dm3StatusBreakersIndex }
   ::= { dm3StatusBreakersTable 1 }

Dm3StatusBreakersEntry ::=
   SEQUENCE {
      dm3StatusBreakersIndex               INTEGER,
      dm3StatusBreakersName                DisplayString,
      dm3StatusBreakersStatus              INTEGER
   }

dm3StatusBreakersIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant circuit breaker."
   ::= { dm3StatusBreakersEntry 1 }

dm3StatusBreakersName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the circuit breaker. The maximum size is
       16 characters. The name is set by using the
       dm3ConfigBreakersName OID.
       This OID is provided for informational purposes only."
   ::= { dm3StatusBreakersEntry 2 }

dm3StatusBreakersStatus OBJECT-TYPE
   SYNTAX INTEGER       {
      statusClosed          (1),
      statusOpen            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusClosed (1) if the circuit breaker is closed.
       statusOpen (2) will be returned if the circuit breaker is open."
   ::= { dm3StatusBreakersEntry 3 }

-- the dm3StatusFuses group

dm3StatusFusesTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant fuses controllable
       by this IP address."
   ::= { dm3StatusFuses 1 }

dm3StatusFusesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dm3StatusFusesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for viewing status of the fuses. The number of
       entries is contained in the dm3StatusFusesTableSize OID."
   ::= { dm3StatusFuses 2 }

dm3StatusFusesEntry OBJECT-TYPE
   SYNTAX Dm3StatusFusesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The fuse to gather status from."
   INDEX { dm3StatusFusesIndex }
   ::= { dm3StatusFusesTable 1 }

Dm3StatusFusesEntry ::=
   SEQUENCE {
      dm3StatusFusesIndex               INTEGER,
      dm3StatusFusesName                DisplayString,
      dm3StatusFusesStatus              INTEGER
   }

dm3StatusFusesIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant fuse."
   ::= { dm3StatusFusesEntry 1 }

dm3StatusFusesName OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the fuse. The maximum size is
       16 characters. The name is set by using the
       dm3ConfigFuseName OID.
       This OID is provided for informational purposes only."
   ::= { dm3StatusFusesEntry 2 }

dm3StatusFusesStatus OBJECT-TYPE
   SYNTAX INTEGER       {
      statusClosed          (1),
      statusOpen            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusClosed (1) if the fuse is closed.
       statusOpen (2) will be returned if the fuse is open."
   ::= { dm3StatusFusesEntry 3 }

-- the atsIdent group

atsIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Automatic Transfer Switch.
       This value is set at the factory."
   ::= { atsIdent 1 }

atsIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A string identifying the Automatic Transfer Switch
       firmware revision."
   ::= {  atsIdent 2 }

atsIdentFirmwareDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date of release for this Automatic Transfer Switch
       firmware revision. "
   ::= {  atsIdent 3 }

atsIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the Automatic Transfer Switch was manufactured in mm/dd/yyyy format.
       This value is set at the factory. "
   ::= { atsIdent 4 }

atsIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A string identifying the model number of the Automatic Transfer Switch.
       This value is set at the factory."
   ::= { atsIdent 5 }

atsIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A string identifying the serial number of
       the Automatic Transfer Switch. This value is set at the factory."
   ::= { atsIdent 6 }

atsIdentNominalLineVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
         "RMS Utility Voltage measured in Volts."
       ::= { atsIdent 7 }

atsIdentNominalLineFrequency OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Utility Power Frequency measured in Hertz."
       ::= { atsIdent 8 }

atsIdentDeviceRating OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
         "This gives the device rating in Amps"
       ::= { atsIdent 9 }


--  the atsCalibration group

-- Input Voltage Calibration Factor table

   atsCalibrationNumInputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of inputs to this device."
       ::= { atsCalibrationInput 1 }

   atsCalibrationNumInputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of phases per input for this device."
       ::= { atsCalibrationInput 2 }

   atsCalibrationInputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF ATSCalibrationInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "The number of phases per input line to this device."
       ::= { atsCalibrationInput 3 }

   atsCalibrationInputPhaseEntry OBJECT-TYPE
       SYNTAX     ATSCalibrationInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing calibration information applicable to a
               particular input phase."
       INDEX { atsCalibrationInputTableIndex, atsCalibrationInputPhaseTableIndex }
       ::= { atsCalibrationInputPhaseTable 1 }

   ATSCalibrationInputPhaseEntry ::= SEQUENCE {
       atsCalibrationInputTableIndex         INTEGER,
       atsCalibrationInputPhaseTableIndex    INTEGER,
       atsLineVoltageCalibrationFactor       INTEGER
   }

   atsCalibrationInputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { atsCalibrationInputPhaseEntry 1 }

   atsCalibrationInputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input phase identifier."
       ::= { atsCalibrationInputPhaseEntry 2 }

   atsLineVoltageCalibrationFactor  OBJECT-TYPE
       SYNTAX INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Line Voltage Calibration factor.
                This value is set at the factory."
       ::= { atsCalibrationInputPhaseEntry 3 }

-- Power Supply Voltage Calibration table

   atsCalibrationPowerSupplyVoltages OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of power supply voltages supported by this device.
                This variable indicates the number of rows in the
                atsCalibrationPowerSupplyTable."
       ::= { atsCalibrationPowerSupply 1 }

   atsCalibrationPowerSupplyVoltageTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF ATSCalibrationPowerSupplyVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Power Supply table entries."
       ::= { atsCalibrationPowerSupply 2 }

   atsCalibrationPowerSupplyVoltageEntry OBJECT-TYPE
       SYNTAX     ATSCalibrationPowerSupplyVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular Power Supply Voltage."
       INDEX { atsCalibrationPowerSupplyVoltageTableIndex }
       ::= { atsCalibrationPowerSupplyVoltageTable 1 }

   ATSCalibrationPowerSupplyVoltageEntry ::= SEQUENCE {
       atsCalibrationPowerSupplyVoltageTableIndex     INTEGER,
       atsCalibrationPowerSupplyVoltage               INTEGER,
       atsPowerSupplyVoltageCalibrationFactor         INTEGER
   }

   atsCalibrationPowerSupplyVoltageTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
           "The power supply voltage identifier."
       ::= { atsCalibrationPowerSupplyVoltageEntry 1 }

  atsCalibrationPowerSupplyVoltage OBJECT-TYPE
    SYNTAX INTEGER  {
      powerSupply24V(1),
      powerSupply12V(2),
      powerSupply(3),
      powerSupply24VSourceB(4),
      powerSupplyMinus12V(5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This value describes the power supply voltage of
       24V Source A, 24V Source B, +12V, -12V and 5V."
   ::= { atsCalibrationPowerSupplyVoltageEntry 2 }

   atsPowerSupplyVoltageCalibrationFactor  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Line Voltage Calibration factor.
                This value is set at the factory."
       ::= { atsCalibrationPowerSupplyVoltageEntry 3 }

-- ATS4G Power Supply Calibration
ats4gCalibrationPowerSupplyVoltageTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF ATS4GCalibrationPowerSupplyVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of Power Supply table entries. It is not applicable to
               AP77xx ATS units."
       ::= { atsCalibrationPowerSupply 3 }

   ats4gCalibrationPowerSupplyVoltageEntry OBJECT-TYPE
       SYNTAX     ATS4GCalibrationPowerSupplyVoltageEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular Power Supply Voltage. It is not applicable to
               AP77xx ATS units."
       INDEX { ats4gCalibrationPowerSupplyVoltageTableIndex }
       ::= { ats4gCalibrationPowerSupplyVoltageTable 1 }

   ATS4GCalibrationPowerSupplyVoltageEntry ::= SEQUENCE {
       ats4gCalibrationPowerSupplyVoltageTableIndex     INTEGER,
       ats4gCalibrationPowerSupplyVoltage               INTEGER,
       ats4gPowerSupplyVoltageCalibrationFactor         INTEGER
   }

   ats4gCalibrationPowerSupplyVoltageTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
           "The power supply voltage identifier. It is not applicable to
            AP77xx ATS units."
       ::= { ats4gCalibrationPowerSupplyVoltageEntry 1 }

  ats4gCalibrationPowerSupplyVoltage OBJECT-TYPE
    SYNTAX INTEGER  {
      powerSupply24VA(1),
      powerSupply24VB(2),
      powerSupplyVBoostA(3),
      powerSupplyVBoostB(4),
      powerSupply3Dot3V(5),
      powerSupply1Dot0V(6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This value describes the power supply voltage of
       24V Source A, 24V Source B, VBoost Source A, VBoost Source B, 3.3V, 1.0V.
       It is not applicable to AP77xx ATS units."
   ::= { ats4gCalibrationPowerSupplyVoltageEntry 2 }

   ats4gPowerSupplyVoltageCalibrationFactor  OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The Line Voltage Calibration factor. This value is set at the factory.
               It is not applicable to AP77xx ATS units."
       ::= { ats4gCalibrationPowerSupplyVoltageEntry 3 }

-- Output Current Calibration table

   atsCalibrationNumOutputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output lines from this device.
               This variable indicates the number of rows in the
               atsCalibrationOutputTable."
       ::= { atsCalibrationOutput 1 }

   atsCalibrationNumOutputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output phases utilized in this
               device."
       ::= { atsCalibrationOutput 2 }

   atsCalibrationOutputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF ATSCalibrationOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries."
       ::= { atsCalibrationOutput 3 }

   atsCalibrationOutputEntry OBJECT-TYPE
       SYNTAX     ATSCalibrationOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
                particular output."
       INDEX { atsCalibrationOutputTableIndex, atsCalibrationOutputPhasesTableIndex }
       ::= { atsCalibrationOutputTable 1 }

   ATSCalibrationOutputEntry ::= SEQUENCE {
       atsCalibrationOutputTableIndex       INTEGER,
       atsCalibrationOutputPhasesTableIndex INTEGER,
       atsOutputCurrentCalibrationFactor    INTEGER
   }

   atsCalibrationOutputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { atsCalibrationOutputEntry 1 }

   atsCalibrationOutputPhasesTableIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3),
          neutral(4)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Description of each calibration factor for each
                output phase utilized in this device and one for neutral. "
       ::= { atsCalibrationOutputEntry 2 }

   atsOutputCurrentCalibrationFactor OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output current calibration factor measured in Amps."
       ::= { atsCalibrationOutputEntry 3 }

--  Exp Begin
--  ATS4G output current calibration
   ats4gCalibrationOutputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF ATS4GCalibrationOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries. It is not applicable to
               AP77xx ATS units."
       ::= { atsCalibrationOutput 4 }

   ats4gCalibrationOutputEntry OBJECT-TYPE
       SYNTAX     ATS4GCalibrationOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
                particular output."
       INDEX { ats4gCalibrationOutputTableIndex, ats4gCalibrationOutputPhasesTableIndex}
       ::= { ats4gCalibrationOutputTable 1 }

   ATS4GCalibrationOutputEntry ::= SEQUENCE {
       ats4gCalibrationOutputTableIndex       INTEGER,
       ats4gCalibrationOutputPhasesTableIndex INTEGER,
       ats4gOutputCurrentCalibrationFactor    INTEGER
   }

   ats4gCalibrationOutputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { ats4gCalibrationOutputEntry 1 }

   ats4gCalibrationOutputPhasesTableIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          sourceALine(1),
          sourneBLine(2),
          bank1(3),
          bank2(4)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "Description of each calibration factor for each output phase utilized
                in this device and one for neutral. Bank 1 and Bank 2 are for units
                with two circuit breakers. It is not applicable to AP77xx ATS units."
       ::= { ats4gCalibrationOutputEntry 2 }

   ats4gOutputCurrentCalibrationFactor OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output current calibration factor measured in Amps.
               It is not applicable to AP7xxx ATS units."
       ::= { ats4gCalibrationOutputEntry 3 }
--  Exp End

--  the atsControl group

atsControlResetATS OBJECT-TYPE
    SYNTAX INTEGER  {
          none(1),
          reset(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable will cause the Automatic Transfer Switch to
       perform a power-on reset. It is not applicable to AP44xx units."
   ::= { atsControl 1 }

atsControlClearAllAlarms OBJECT-TYPE
    SYNTAX INTEGER  {
          none(1),
          clear(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable will clear all alarms in the Automatic Transfer Switch.
       Returns (-1) if unsupported."
   ::= { atsControl 2 }


--  the atsConfig group

atsConfigProductName OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "A configurable character string."
       ::= { atsConfig 1 }

atsConfigPreferredSource OBJECT-TYPE
    SYNTAX INTEGER  {
      sourceA(1),
      sourceB(2),
      none(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This variable returns the preferred source of power when both sources are OK."
   ::= { atsConfig 2 }

atsConfigFrontPanelLockout OBJECT-TYPE
   SYNTAX INTEGER  {
      disableFrontPanel(1),
      enableFrontPanel(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this variable to disableFrontPanel(1), prevents source
       preference configuration of the Automatic Transfer Switch via the
       Front Panel.
       Setting this variable to enableFrontPanel(2)allows, source preference
       configuration of the Automatic Transfer Switch via the Front Panel."
   ::= { atsConfig 3 }

atsConfigVoltageSensitivity OBJECT-TYPE
   SYNTAX INTEGER {
      high(1),
      low(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This variable defines the sensitivity to changes in voltage:
       high(1) for best protection, low(2) for frequent small line
       voltage changes."
   ::= { atsConfig 4 }

atsConfigTransferVoltageRange OBJECT-TYPE
   SYNTAX INTEGER {
      wide(1),
      medium(2),
      narrow(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This variable defines the range of acceptable voltage from a power source.
       If the voltage measured from the selected input source is not within this
       range, the Automatic Transfer Switch will switch over (transfer) to the
       alternate power source."

   ::= { atsConfig 5 }

atsConfigCurrentLimit OBJECT-TYPE
   SYNTAX INTEGER (0..20)
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The threshold (in Amps) at which an Over Current Alarm will be generated.
       This OID returns the overload threshold value of the
       OID atsConfigPhaseOverLoadThreshold for the 1U ATS and
       OID atsConfigBankOverLoadThreshold of total for the 2U ATS.
       Setting this OID does not have any impact on the device."
   ::= { atsConfig 6 }


atsConfigResetValues OBJECT-TYPE
   SYNTAX INTEGER {
      none(1),
      reset(2)
   }
   ACCESS     read-write
   STATUS     mandatory
   DESCRIPTION
      "Resets the ATS configuration to its default values.
       Returns (-1) if not supported."

   ::= { atsConfig 7 }

atsConfigLineVRMS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "To configure the input RMS voltage."

   ::= { atsConfig 8 }

atsConfigLineVRMSNarrowLimit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "To configure the Line VRMS Narrow Limit."

   ::= { atsConfig 9 }

atsConfigLineVRMSMediumLimit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "To configure the Line VRMS Medium Limit."

   ::= { atsConfig 10 }

atsConfigLineVRMSWideLimit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "To configure the Line VRMS Wide Limit."

   ::= { atsConfig 11 }

atsConfigFrequencyDeviation OBJECT-TYPE
   SYNTAX INTEGER {
      one(1),
      two(2),
      three(3),
      five(5),
      ten(10)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "To configure the frequency deviation.
      AP77xx units uses the options of 1, 2, or 3.
      AP44xx units uses the options of 3, 5, or 10."
   ::= { atsConfig 12 }

-- Bank table

atsConfigBankTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the bank table."
   ::= { atsConfig 13 }


atsConfigBankTable OBJECT-TYPE
   SYNTAX SEQUENCE OF ATSConfigBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of each ATS bank."
   ::= { atsConfig 14 }

atsConfigBankEntry OBJECT-TYPE
   SYNTAX ATSConfigBankEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to bank current threshold"
   INDEX  { atsConfigBankTableIndex }
   ::= { atsConfigBankTable 1 }

ATSConfigBankEntry ::=
   SEQUENCE {
      atsConfigBankTableIndex               INTEGER,
      atsConfigBank                         INTEGER,
      atsConfigBankLowLoadThreshold         INTEGER,
      atsConfigBankNearOverLoadThreshold    INTEGER,
      atsConfigBankOverLoadThreshold        INTEGER
   }

atsConfigBankTableIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An index to the bank table entry."
   ::= { atsConfigBankEntry 1 }

atsConfigBank OBJECT-TYPE
   SYNTAX INTEGER {
      total     (1),
      bank1     (2),
      bank2     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The bank number of an ATS"
   ::= { atsConfigBankEntry 2 }

atsConfigBankLowLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn is nearing
       a low consumption condition. It is represented in Amps.
       A warning will be issued when the load is less than the
       threshold value.

       A threshold value of 0 Amps disables this warning.

       Maximum value must be less than the value returned
       by the atsConfigBankNearOverLoadThreshold OID."
   ::= { atsConfigBankEntry 3 }

atsConfigBankNearOverLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn is nearing
       an overload condition. It is represented in Amps.
       A warning will be issued when the load is greater than
       or equal to the threshold value.

       Minimum value must be greater than the value returned by
       the atsConfigBankLowLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the atsConfigBankOverLoadThreshold OID."
   ::= { atsConfigBankEntry 4 }

atsConfigBankOverLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn has entered
       an overload condition. It is represented in Amps.
       A warning will be issued when the load is greater than or
       equal to the threshold value.

       Minimum value must be greater than or equal to the value
       returned by the atsConfigBankNearOverLoadThreshold OID.

       Maximum value must be less than or equal to the value returned by
       atsIdentDeviceRating OID."
   ::= { atsConfigBankEntry 5 }

-- Phase table

atsConfigPhaseTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The size of the phase table."
   ::= { atsConfig 15 }


atsConfigPhaseTable OBJECT-TYPE
   SYNTAX SEQUENCE OF ATSConfigPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of each ATS phase."
   ::= { atsConfig 16 }

atsConfigPhaseEntry OBJECT-TYPE
   SYNTAX ATSConfigPhaseEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "This gives access to phase threshold"
   INDEX  { atsConfigPhaseTableIndex }
   ::= { atsConfigPhaseTable 1 }

ATSConfigPhaseEntry ::=
   SEQUENCE {
      atsConfigPhaseTableIndex              INTEGER,
      atsConfigPhase                        INTEGER,
      atsConfigPhaseLowLoadThreshold        INTEGER,
      atsConfigPhaseNearOverLoadThreshold   INTEGER,
      atsConfigPhaseOverLoadThreshold       INTEGER
   }

atsConfigPhaseTableIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the phase table entry."
   ::= { atsConfigPhaseEntry 1 }

atsConfigPhase OBJECT-TYPE
   SYNTAX INTEGER {
      phase1    (1),
      phase2    (2),
      phase3    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The phase number of an ATS"
   ::= { atsConfigPhaseEntry 2 }

atsConfigPhaseLowLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn is nearing
       a low consumption condition. It is represented in Amps.
       A warning will be issued when the load is less than the
       threshold value.

       A threshold value of 0 Amps disables this warning.

       Maximum value must be less than the value returned
       by the atsConfigPhaseNearOverLoadThreshold OID."
   ::= { atsConfigPhaseEntry 3 }

atsConfigPhaseNearOverLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn is nearing
       an overload condition. It is represented in Amps.
       A warning will be issued when the load is greater than
       or equal to the threshold value.

       Minimum value must be greater than the value returned by
       the atsConfigPhaseLowLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by the atsConfigPhaseOverLoadThreshold OID."
   ::= { atsConfigPhaseEntry 4 }

atsConfigPhaseOverLoadThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A threshold that indicates the current drawn has entered
       an overload condition. It is represented in Amps.
       A warning will be issued when the load is greater than or
       equal to the threshold value.

       Minimum value must be greater than or equal to the value
       returned by the atsConfigPhaseNearOverLoadThreshold OID.

       Maximum value must be less than or equal to the value
       returned by atsIdentDeviceRating OID."
   ::= { atsConfigPhaseEntry 5 }


-- the atsStatus  group

   atsStatusCommStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      atsNeverDiscovered(1),
      atsCommEstablished(2),
      atsCommLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the current communication status
       of the Automatic Transfer Switch. "
   ::= { atsStatusDeviceStatus 1 }


   atsStatusSelectedSource OBJECT-TYPE
    SYNTAX INTEGER  {
      sourceA(1),
      sourceB(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the current source of power. "
   ::= { atsStatusDeviceStatus 2 }


   atsStatusRedundancyState OBJECT-TYPE
    SYNTAX INTEGER  {
       atsRedundancyLost(1),
       atsFullyRedundant(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the current redundancy state of the ATS.
       atsRedundancyLost(1) indicates that the ATS is unable to
       switch over to the alternate power source if the current source fails.
       atsFullyRedundant(2) indicates that the ATS will switch over to
       the alternate power source if the current source fails."
   ::= { atsStatusDeviceStatus 3 }


  atsStatusOverCurrentState OBJECT-TYPE
    SYNTAX INTEGER  {
        atsOverCurrent(1),
        atsCurrentOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the output current state of the ATS.
      atsOverCurrent(1) indicates that the ATS has exceeded the output
      current threshold and will not allow a switch over to the alternate power
      source if the current source fails.
      atsCurrentOK(2) indicates that the output current is below the
      output current threshold.
      This OID returns the value of the OID atsOutputPhaseState for the 1U ATS and
      OID atsOutputBankState for the 2U ATS."
   ::= { atsStatusDeviceStatus 4 }


  atsStatus5VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER {
        atsPowerSupplyFailure(1),
        atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 5V power supply.
       atsPowerSupplyFailure(1) indicates the 5V power supply has failed
       and that the ATS serial port Configuration Menu is not accessible .
       atsPowerSupplyOK(2) indicates that the ATS 5V power supply
       is operating within tolerance.  This is only supported by AP77xx SKUs."
   ::= { atsStatusDeviceStatus 5 }

  atsStatus24VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
        atsPowerSupplyFailure(1),
        atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 24V power supply for Source A.
       atsPowerSupplyFailure(1) indicates the 24V power supply has failed
       and the ATS is unable to switch over to the alternate power source if
       the current source fails.
       atsPowerSupplyOK(2) indicates that the ATS 24V power supply
       is operating within tolerance."
   ::= { atsStatusDeviceStatus 6 }


  atsStatus24VSourceBPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
        atsPowerSupplyFailure(1),
        atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 24V power supply for Source B.
       atsPowerSupplyFailure(1) indicates the 24V power supply has failed
       and the ATS is unable to switch over to the alternate power source if
       the current source fails.
       atsPowerSupplyOK(2) indicates that the ATS 24V power supply
       is operating within tolerance."
   ::= { atsStatusDeviceStatus 7 }

  atsStatusPlus12VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
        atsPowerSupplyFailure(1),
        atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 12V power supply.
       atsPowerSupplyFailure(1) indicates the 12V power supply has failed
       and the ATS is unable to monitor the current sensors.
       atsPowerSupplyOK(2) indicates that the ATS 12V power supply
       is operating within tolerance. This is only supported by AP77xx SKUs."
   ::= { atsStatusDeviceStatus 8 }


  atsStatusMinus12VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
        atsPowerSupplyFailure(1),
        atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS -12V power supply.
       atsPowerSupplyFailure(1) indicates the -12V power supply has failed
       and the ATS is unable to monitor the current sensors.
       atsPowerSupplyOK(2) indicates that the ATS -12V power supply
       is operating within tolerance. This is only supported by AP77xx SKUs."
   ::= { atsStatusDeviceStatus 9 }


  atsStatusSwitchStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      fail(1),
      ok(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the status of the ATS."
   ::= { atsStatusDeviceStatus 10 }

  atsStatusFrontPanel OBJECT-TYPE
    SYNTAX INTEGER  {
      locked(1),
      unlocked(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS front panel.
       locked(1): Front panel button cannot be used to change the sources.
       unlocked(2): Front panel button can be used to change the sources. "

   ::= { atsStatusDeviceStatus 11 }


  atsStatusSourceAStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      fail(1),
      ok(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the status of the Source A."
   ::= { atsStatusDeviceStatus 12 }


  atsStatusSourceBStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      fail(1),
      ok(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the status of the Source B."
   ::= { atsStatusDeviceStatus 13 }


  atsStatusPhaseSyncStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      inSync(1),
      outOfSync(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the status of the phase synch."
   ::= { atsStatusDeviceStatus 14 }


  atsStatusVoltageOutStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      fail(1),
      ok(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the output voltage status."
   ::= { atsStatusDeviceStatus 15 }


  atsStatusHardwareStatus OBJECT-TYPE
    SYNTAX INTEGER  {
      fail(1),
      ok(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the status of display board hardware."
   ::= { atsStatusDeviceStatus 16 }

  atsStatus3dot3VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
      atsPowerSupplyFailure(1),
      atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 3.3V power supply.
       atsPowerSupplyFailure(1) indicates the 3.3V power supply has failed.
       atsPowerSupplyOK(2) indicates that the ATS 3.3V power supply
       is operating within tolerance. This is only supported by AP44xx units."
   ::= {atsStatusDeviceStatus 17 }

  atsStatus1Dot0VPowerSupply OBJECT-TYPE
    SYNTAX INTEGER  {
      atsPowerSupplyFailure(1),
      atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS 1.0V power supply.
       atsPowerSupplyFailure(1) indicates the 1V power supply has failed.
       atsPowerSupplyOK(2) indicates that the ATS 1.0V power supply
       is operating within tolerance. This is only supported by AP44xx units."
   ::= {atsStatusDeviceStatus 18 }

  atsStatusVBoostSourceA OBJECT-TYPE
    SYNTAX INTEGER  {
      atsPowerSupplyFailure(1),
      atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS Source A Boost 48V voltage.
       atsPowerSupplyFailure(1) indicates the  ATS Source A Boost 48V voltage has failed.
       atsPowerSupplyOK(2) indicates that the  ATS Source A Boost 48V voltage
       is operating within tolerance. This is only supported by AP44xx units."
   ::= {atsStatusDeviceStatus 19 }

  atsStatusVBoostSourceB OBJECT-TYPE
    SYNTAX INTEGER  {
      atsPowerSupplyFailure(1),
      atsPowerSupplyOK(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This variable returns the present state of the ATS Source B Boost 48V voltage.
       atsPowerSupplyFailure(1) indicates the  ATS Source B Boost 48V voltage has failed.
       atsPowerSupplyOK(2) indicates that the  ATS Source B Boost 48V voltage
       is operating within tolerance. This is only supported by AP44xx units."
   ::= {atsStatusDeviceStatus 20 }

   atsStatusResetMaxMinValues OBJECT-TYPE
       SYNTAX INTEGER {
          none(1),
          reset(2)
       }
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "Resets the maximum and minimum ATS values:
                atsInputMaxVoltage,       atsInputMinVoltage,
                atsInputMaxCurrent,       atsInputMinCurrent,
                atsInputMaxPower,         atsInputMinPower,
                atsOutputMaxCurrent,      atsOutputMinCurrent,
                atsOutputMaxLoad,         atsOutputMinLoad,
                atsOutputMaxPercentLoad,  atsOutputMinPercentLoad,
                atsOutputMaxPower,        atsOutputMinPower,
                atsOutputMaxPercentPower, atsOutputMinPercentPower.
                These variables represent the maximum and minimum ATS values
                since the last time they were read or reset by this OID.
                Values unsupported by this ATS will return (-1)."
       ::= { atsStatusResetValues 1 }

--
-- Input Group
--
-- Number of Inputs
   atsNumInputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of input feeds to this device.
               This variable indicates the number of rows in the
               input table."
       ::= { atsStatusInput 1 }

-- Input Table

   atsInputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF AtsInputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the value of atsNumInputs."
       ::= { atsStatusInput 2 }

   atsInputEntry OBJECT-TYPE
       SYNTAX     AtsInputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input."
       INDEX { atsInputTableIndex }
       ::= { atsInputTable 1 }

   AtsInputEntry ::= SEQUENCE {
       atsInputTableIndex         INTEGER,
       atsNumInputPhases          INTEGER,
       atsInputVoltageOrientation INTEGER,
       atsInputFrequency          INTEGER,
       atsInputType               INTEGER,
       atsInputName               DisplayString
   }

   atsInputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { atsInputEntry 1 }

   atsNumInputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of input phases utilized in this
               device.  The sum of all the atsNumInputPhases
               variable indicates the number of rows in the
               input phase table."
       ::= { atsInputEntry 2 }

   atsInputVoltageOrientation OBJECT-TYPE
       SYNTAX INTEGER {
          unknown(1),
          singlePhase(2),
          splitPhase(3),
          threePhasePhaseToNeutral(4),
          threePhasePhaseToPhase(5)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage orientation:
               1: unknown for this Source
               2: singlePhase - phase 1 voltage is between Phase 1
               and Neutral.
               3: splitPhase - phase 1 voltage is between Phase 1 and
               Neutral; phase 2 voltage is between Phase 2 and Neutral;
               phase 3 voltage is between Phase 1 and Phase 2.
               4: threePhasePhaseToNeutral - phase 1 voltage is between
               Phase 1 and Neutral; phase 2 voltage is between Phase 2
               and Neutral; phase 3 voltage is between Phase 3 and
               Neutral.
               5: threePhasePhaseToPhase - phase 1 voltage is between
               Phase 1 and Phase 2; phase 2 voltage is between Phase 2
               and Phase 3; phase 3 voltage is between Phase 3 and
               Phase 1."
       ::= { atsInputEntry 3 }

   atsInputFrequency OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input frequency in Hertz, or -1 if it's unsupported
               by this Source."
       ::= { atsInputEntry 4 }

   atsInputType OBJECT-TYPE
       SYNTAX     INTEGER {
          unknown(1),
          main(2),
          bypass(3)
       }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input type."
       ::= { atsInputEntry 5 }

   atsInputName OBJECT-TYPE
       SYNTAX     DisplayString
       ACCESS     read-write
       STATUS     mandatory
       DESCRIPTION
               "A name given to a particular input."
       ::= { atsInputEntry 6 }

-- Input Phase Table

   atsInputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF AtsInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of input table entries.  The number of entries
               is given by the sum of the atsNumInputPhases."
       ::= { atsStatusInput 3 }

   atsInputPhaseEntry OBJECT-TYPE
       SYNTAX     AtsInputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular input phase."
       INDEX { atsInputPhaseTableIndex, atsInputPhaseIndex }
       ::= { atsInputPhaseTable 1 }

   AtsInputPhaseEntry ::= SEQUENCE {
       atsInputPhaseTableIndex    INTEGER,
       atsInputPhaseIndex         INTEGER,
       atsInputVoltage            INTEGER,
       atsInputMaxVoltage         INTEGER,
       atsInputMinVoltage         INTEGER,
       atsInputCurrent            INTEGER,
       atsInputMaxCurrent         INTEGER,
       atsInputMinCurrent         INTEGER,
       atsInputPower              INTEGER,
       atsInputMaxPower           INTEGER,
       atsInputMinPower           INTEGER
   }

   atsInputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input identifier."
       ::= { atsInputPhaseEntry 1 }

   atsInputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input phase identifier."
       ::= { atsInputPhaseEntry 2 }

   atsInputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input voltage in VAC, or -1 if it's unsupported
               by this Source."
       ::= { atsInputPhaseEntry 3 }

   atsInputMaxVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input voltage in VAC measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 4 }

   atsInputMinVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input voltage in VAC measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 5 }

   atsInputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input current in amperes, or -1 if it's
               unsupported by this Source."
       ::= { atsInputPhaseEntry 6 }

   atsInputMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input current in amperes measured
                 since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 7 }

   atsInputMinCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input current in amperes measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 8 }

   atsInputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The input power in Watts, or -1 if it's unsupported
               by this Source."
       ::= { atsInputPhaseEntry 9 }

   atsInputMaxPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum input power in Watts measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 10 }

   atsInputMinPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum input power in Watts measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsInputPhaseEntry 11 }

   --
   -- The Output group.
   --

   -- Number of Outputs

   atsNumOutputs OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output feeds to this device.
               This variable indicates the number of rows in the
               output table."
       ::= { atsStatusOutput 1 }

   -- Output Table

   atsOutputTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF AtsOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of entries
               is given by the value of atsOutputNumPhases."
       ::= { atsStatusOutput 2 }

   atsOutputEntry OBJECT-TYPE
       SYNTAX     AtsOutputEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output."
       INDEX { atsOutputTableIndex }
       ::= { atsOutputTable 1 }

   AtsOutputEntry ::= SEQUENCE {
       atsOutputTableIndex         INTEGER,
       atsNumOutputPhases          INTEGER,
       atsOutputVoltageOrientation INTEGER,
       atsOutputFrequency          INTEGER
   }

   atsOutputTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { atsOutputEntry 1 }

   atsNumOutputPhases OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The number of output phases utilized in this
               device.  The sum of all the atsNumOutputPhases
               variable indicates the number of rows in the
               output phase table."
       ::= { atsOutputEntry 2 }

   atsOutputVoltageOrientation OBJECT-TYPE
       SYNTAX INTEGER {
          unknown(1),
          singlePhase(2),
          splitPhase(3),
          threePhasePhaseToNeutral(4),
          threePhasePhaseToPhase(5)
       }
       ACCESS read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage orientation:
               1: unknown for this ATS
               2: singlePhase - phase 1 voltage is between Phase 1
               and Neutral.
               3: splitPhase - phase 1 voltage is between Phase 1 and
               Neutral; phase 2 voltage is between Phase 2 and Neutral;
               phase 3 voltage is between Phase 1 and Phase 2.
               4: threePhasePhaseToNeutral - phase 1 voltage is between
               Phase 1 and Neutral; phase 2 voltage is between Phase 2
               and Neutral; phase 3 voltage is between Phase 3 and
               Neutral.
               5: threePhasePhaseToPhase - phase 1 voltage is between
               Phase 1 and Phase 2; phase 2 voltage is between Phase 2
               and Phase 3; phase 3 voltage is between Phase 3 and
               Phase 1."
       ::= { atsOutputEntry 3 }

   atsOutputFrequency OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output frequency in Hertz, or -1 if it's
               unsupported by this ATS."
       ::= { atsOutputEntry 4 }

   -- Output Phase Table

   atsOutputPhaseTable OBJECT-TYPE
       SYNTAX     SEQUENCE OF AtsOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "A list of output table entries.  The number of
               entries is given by the sum of the atsNumOutputPhases."
       ::= { atsStatusOutput 3 }

   atsOutputPhaseEntry OBJECT-TYPE
       SYNTAX     AtsOutputPhaseEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION
               "An entry containing information applicable to a
               particular output phase."
       INDEX { atsOutputPhaseTableIndex, atsOutputPhaseIndex }
       ::= { atsOutputPhaseTable 1 }

   AtsOutputPhaseEntry ::= SEQUENCE {
       atsOutputPhaseTableIndex INTEGER,
       atsOutputPhaseIndex      INTEGER,
       atsOutputVoltage         INTEGER,
       atsOutputCurrent         INTEGER,
       atsOutputMaxCurrent      INTEGER,
       atsOutputMinCurrent      INTEGER,
       atsOutputLoad            INTEGER,
       atsOutputMaxLoad         INTEGER,
       atsOutputMinLoad         INTEGER,
       atsOutputPercentLoad     INTEGER,
       atsOutputMaxPercentLoad  INTEGER,
       atsOutputMinPercentLoad  INTEGER,
       atsOutputPower           INTEGER,
       atsOutputMaxPower        INTEGER,
       atsOutputMinPower        INTEGER,
       atsOutputPercentPower    INTEGER,
       atsOutputMaxPercentPower INTEGER,
       atsOutputMinPercentPower INTEGER,
       atsOutputPhaseState      INTEGER
   }

   atsOutputPhaseTableIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output identifier."
       ::= { atsOutputPhaseEntry 1 }

   atsOutputPhaseIndex OBJECT-TYPE
       SYNTAX     INTEGER{
          phase1(1),
          phase2(2),
          phase3(3),
          neutral(4)
         }
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
              "Description of each output phase utilized in
               this device and one for neutral. "
       ::= { atsOutputPhaseEntry 2 }

   atsOutputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage in VAC, or -1 if it's unsupported
               by this ATS."
       ::= { atsOutputPhaseEntry 3 }

   atsOutputCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output current in 0.1 amperes drawn
               by the load on the ATS, or -1 if it's unsupported
               by this ATS."
       ::= { atsOutputPhaseEntry 4 }

   atsOutputMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output current in 0.1 amperes measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 5 }

   atsOutputMinCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output current in 0.1 amperes measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 6 }

   atsOutputLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output load in VA, or -1 if it's unsupported
               by this ATS."
       ::= { atsOutputPhaseEntry 7 }

   atsOutputMaxLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output load in VA measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1)  if unsupported."
       ::= { atsOutputPhaseEntry 8 }

   atsOutputMinLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output load in VA measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 9 }

   atsOutputPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the ATS load capacity in VA at
               redundancy @ (n + x) presently being used on this
               output phase, or -1 if it's unsupported by this ATS."
       ::= { atsOutputPhaseEntry 10 }

   atsOutputMaxPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the ATS load capacity in
               VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last time
               this variable was read or reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 11 }

   atsOutputMinPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum percentage of the ATS load capacity in
               VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last time
               this variable was read or reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 12 }

   atsOutputPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output power in VA, or -1 if it's
               unsupported by this ATS."
       ::= { atsOutputPhaseEntry 13 }

   atsOutputMaxPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output power in VAs measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 14 }

   atsOutputMinPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output power in VA measured
                since the last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 15 }

   atsOutputPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the ATSpower capacity in VA at
               redundancy @ (n + x) presently being used on this
               output phase, or -1 if it's unsupported by this ATS."
       ::= { atsOutputPhaseEntry 16 }

   atsOutputMaxPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the ATSpower capacity
               in VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last time
               this variable was read or reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 17 }

   atsOutputMinPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum percentage of the ATSpower capacity
               in VA measured at redundancy @ (n + x) presently
               being used on this output phase since the last time
               this variable was read or reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputPhaseEntry 18 }


   atsOutputPhaseState    OBJECT-TYPE
    SYNTAX INTEGER {
      normal                 (1),
      lowload                (2),
      nearoverload           (3),
      overload               (4)
   }
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
    "Getting this OID will return the phase load state.

    normal(1) indicates that the bank is operating properly
    within the atsConfigPhaseLowLoadThreshold and
    atsConfigPhaseNearOverLoadThreshold OID values.

    lowload(2) indicates that the bank load has dropped below
    the atsConfigPhaseLowLoadThreshold OID value. An SNMP trap
    will occur when this state is entered or cleared.

    nearoverload(3) indicates that the bank load is greater than
    or equal to the atsConfigPhaseNearOverLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    overload(4) indicates that the bank load is greater than or
    equal to the atsConfigPhaseOverLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared."
    ::= { atsOutputPhaseEntry 19 }


  atsOutputBankTableSize OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The size of the bank table."
    ::= { atsStatusOutput 4 }


  atsOutputBankTable OBJECT-TYPE
    SYNTAX SEQUENCE OF ATSOutputBankEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
      "Allows for getting table entries."
    ::= { atsStatusOutput 5 }

  atsOutputBankEntry OBJECT-TYPE
    SYNTAX ATSOutputBankEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
      "This gives access to bank table entries"
    INDEX  { atsOutputBankTableIndex }
    ::= { atsOutputBankTable 1 }

  ATSOutputBankEntry ::=
    SEQUENCE {
      atsOutputBankTableIndex               INTEGER,
      atsOutputPhase                        INTEGER,
      atsOutputBank                         INTEGER,
      atsOutputBankCurrent                  Gauge,
      atsOutputBankState                    INTEGER,
      atsOutputBankOutputVoltage            INTEGER,
      atsOutputBankMaxCurrent               INTEGER,
      atsOutputBankMinCurrent               INTEGER,
      atsOutputBankLoad                     INTEGER,
      atsOutputBankMaxLoad                  INTEGER,
      atsOutputBankMinLoad                  INTEGER,
      atsOutputBankPercentLoad              INTEGER,
      atsOutputBankMaxPercentLoad           INTEGER,
      atsOutputBankMinPercentLoad           INTEGER,
      atsOutputBankPower                    INTEGER,
      atsOutputBankMaxPower                 INTEGER,
      atsOutputBankMinPower                 INTEGER,
      atsOutputBankPercentPower             INTEGER,
      atsOutputBankMaxPercentPower          INTEGER,
      atsOutputBankMinPercentPower          INTEGER
   }

  atsOutputBankTableIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The index to the bank table entry."
    ::= { atsOutputBankEntry 1 }

  atsOutputPhase OBJECT-TYPE
    SYNTAX INTEGER {
      phase1        (1),
      phase2        (2),
      phase3        (3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The phase number of an ATS"
    ::= { atsOutputBankEntry 2 }

  atsOutputBank OBJECT-TYPE
    SYNTAX INTEGER {
      total     (1),
      bank1     (2),
      bank2     (3)
    }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The bank number of an ATS"
    ::= { atsOutputBankEntry 3 }

  atsOutputBankCurrent OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "Getting this OID will return the bank current measured
       in tenths of Amps."
    ::= { atsOutputBankEntry 4 }

  atsOutputBankState    OBJECT-TYPE
    SYNTAX INTEGER {
      normal                 (1),
      lowload                (2),
      nearoverload           (3),
      overload               (4)
    }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
    "Getting this OID will return the bank load state.

    normal(1) indicates that the bank is
    operating properly within the atsConfigBankLowLoadThreshold
    and atsConfigBankNearOverLoadThreshold OID values.

    lowload(2) indicates that the bank load has dropped below the
    atsConfigBankLowLoadThreshold OID value. An SNMP trap will
    occur when this state is entered or cleared.

    nearoverload(3) indicates that the bank load is greater than
    or equal to the atsConfigBankNearOverLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared.

    overload(4) indicates that the bank load is greater than or
    equal to the atsConfigBankOverLoadThreshold OID value.
    An SNMP trap will occur when this state is entered or cleared."
    ::= { atsOutputBankEntry 5 }

   atsOutputBankOutputVoltage OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output voltage in VAC, or -1 if it's unsupported
               by this ATS."
       ::= { atsOutputBankEntry 6 }


   atsOutputBankMaxCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output current, on the bank represented by
                OID atsOutputBank, in 0.1 amperes measured since the
                last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 7 }

   atsOutputBankMinCurrent OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output current, on the bank represented by
                OID atsOutputBank, in 0.1 amperes measured since the
                last time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 8 }

   atsOutputBankLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output load, on the bank represented by
                OID atsOutputBank, in VA, or -1 if it's
                unsupported by this ATS."
       ::= { atsOutputBankEntry 9 }

   atsOutputBankMaxLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output load, on the bank represented by
                OID atsOutputBank, in VA measured since the last
                time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1)  if unsupported."
       ::= { atsOutputBankEntry 10 }

   atsOutputBankMinLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output load, on the bank represented by
                OID atsOutputBank, in VA measured since the last
                time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 11 }

   atsOutputBankPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the ATS load capacity in VA at
                redundancy @ (n + x) presently being used on this
                bank, represented by OID atsOutputBank.
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 12 }

   atsOutputBankMaxPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the ATS load capacity in
                VA measured at redundancy @ (n + x) presently
                being used on this bank, represented by OID atsOutputBank,
                since the last time this variable was read or
                reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 13 }

   atsOutputBankMinPercentLoad OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum percentage of the ATS load capacity in
                VA measured at redundancy @ (n + x) presently
                being used on this bank, represented by OID
                atsOutputBank, since the last time this variable was
                read or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 14 }

   atsOutputBankPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The output power in VA on the bank represented by
                OID atsOutputBank or -1 if it's unsupported by this ATS."
       ::= { atsOutputBankEntry 15 }

   atsOutputBankMaxPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum output power in VA measured on the bank
                represented by OID atsOutputBank since the last
                time this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 16 }

   atsOutputBankMinPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum output power in VA measured on the bank
                represented by OID atsOutputBank since the last time
                this variable was read
                or reset (atsStatusResetMaxMinValues).
                Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 17 }

   atsOutputBankPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The percentage of the ATSpower capacity in Watts at
               redundancy @ (n + x) presently being used on this
               bank, represented by OID atsOutputBank, or
               -1 if it's unsupported by this ATS."
       ::= { atsOutputBankEntry 18 }

   atsOutputBankMaxPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The maximum percentage of the ATSpower capacity
               in VA measured at redundancy @ (n + x) presently
               being used on this bank, represented by OID
               atsOutputBank, since the last time this variable
               was read or reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 19 }

   atsOutputBankMinPercentPower OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
               "The minimum percentage of the ATSpower capacity
               in VA measured at redundancy @ (n + x) presently
               being used on this bank, represented by OID atsOutputBank
               since the last time this variable was read or
               reset (atsStatusResetMaxMinValues).
               Returns (-1) if unsupported."
       ::= { atsOutputBankEntry 20 }


-- the dcmim2IdentSystem group

dcmim2IdentSysFWVersion OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Integer representation of the power plant Master Controller firmware revision."
   ::= { dcmim2IdentSystem 1 }


-- the dcmim2ControlSystem group

dcmim2ControlRunFunctBatteryTest OBJECT-TYPE
   SYNTAX INTEGER {
      battTestOff             (1),
      battTestOn              (2)
}
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this OID will return the battery functional test state. If
       the test is off, the battTestOff (1) value will be returned.
       If the test is on, the battTestOn (2) value will be
       returned.

       Setting this OID to battTestOff (1) will turn the battery functional test off.
       Setting this OID to battTestOn (2) will turn the battery functional test on."

   ::= { dcmim2ControlSystem 1 }

dcmim2ControlRunCapacityBatteryTest OBJECT-TYPE
   SYNTAX INTEGER {
      battTestOff             (1),
      battTestOn              (2)
}
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this OID will return the battery capacity test state. If
       the test is off, the battTestOff (1) value will be returned.
       If the test is on, the battTestOn (2) value will be
       returned.

       Setting this OID to battTestOff (1) will turn the battery capacity test off.
       Setting this OID to battTestOn (2) will turn the battery capacity test on."

   ::= { dcmim2ControlSystem 2 }


-- the dcmim2ConfigSystem group

dcmim2ConfigSysHighTempTrip OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Trip level (threshold) at which System High Temp alarm condition is created.
       Range 28 to 100 (degC).

       Values are represented in thousandths of a degree.
       Units are displayed in the scale shown in
       the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."


   ::= { dcmim2ConfigSystem 1 }

dcmim2ConfigSysHighTempReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Level at which System High Temp alarm condition is reset (cleared).
       Range 25 to (upper temp - 3) (degC).

       Values are represented in thousandths of a degree.
       Units are displayed in the scale shown in
       the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."

   ::= { dcmim2ConfigSystem 2 }

dcmim2ConfigSysLowTempTrip OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Trip level (threshold) at which System Low Temp alarm condition is created.
       Range -100 to 10 (degC).
       Values are represented in thousandths of a degree.
       Units are displayed in the scale shown in
       the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."

   ::= { dcmim2ConfigSystem 3 }

dcmim2ConfigSysLowTempReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Level at which System Low Temp alarm condition is reset (cleared).
       Range (lower temp + 3) to 13 (degC).
       Values are represented in thousandths of a degree.
       Units are displayed in the scale shown in
       the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."

   ::= { dcmim2ConfigSystem 4 }

-- the dcmim2ConfigBattery group

dcmim2ConfigBattFloatVolt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery Float Voltage defined at 25 degrees Celsius.

      Values are represented in thousandths of Volts (mV)."

   ::= { dcmim2ConfigBattery 1 }

dcmim2ConfigBattMaxRecharge OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery Maximum Recharge Rate.  This is the maximum current used
       during battery charging.

      Values are represented in thousandths of Amps (mA)."

   ::= { dcmim2ConfigBattery 2 }

dcmim2ConfigBattMfgCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Battery capacity (Amp-Hour Size) as specified by the battery manufacturer.

      Values are represented in thousandths of Amp hours (mAHr)."

   ::= { dcmim2ConfigBattery 3 }

dcmim2ConfigBattType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Type of battery in the powerplant

      Valid values range from 0 to 254."

   ::= { dcmim2ConfigBattery 4 }

dcmim2ConfigBattFunctTestDuration OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Duration of the battery functional test.

      Values are represented in thousandths of seconds (mSecs)."

   ::= { dcmim2ConfigBattery 5 }

dcmim2ConfigBattFunctTestThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold the battery voltage of the system must remain above
       in order to pass the battery functional test.

      Values are represented in thousandths of Volts (mV)."

   ::= { dcmim2ConfigBattery 6 }

dcmim2ConfigBattCapacityTestPercent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold for good battery capacity test results.

      Values range from 0 to 100 percent."

   ::= { dcmim2ConfigBattery 7 }

dcmim2ConfigBattCapacityTestEndThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Safeguard voltage at which battery capacity test will end
       if there is a battery problem.

      Values are represented in thousandths of Volts (mV)."

   ::= { dcmim2ConfigBattery 8 }

dcmim2ConfigBattCapacityTestCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Constant current value used during battery capacity testing.

      Values are represented in thousandths of Amps (mA)."

   ::= { dcmim2ConfigBattery 9 }


-- the dcmim2ConfigLVD group

dcmim2ConfigLVDTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant LVDs controllable
       by this IP address."
   ::= { dcmim2ConfigLVD 1 }

dcmim2ConfigLVDTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dcmim2ConfigLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the LVDs. The number of
       entries is contained in the dcmim2ConfigLVDTableSize OID."
   ::= { dcmim2ConfigLVD 2 }

dcmim2ConfigLVDEntry OBJECT-TYPE
   SYNTAX Dcmim2ConfigLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The LVD to configure."
   INDEX { dcmim2ConfigLVDIndex }
   ::= { dcmim2ConfigLVDTable 1 }

Dcmim2ConfigLVDEntry ::=
   SEQUENCE {
      dcmim2ConfigLVDIndex               INTEGER,
      dcmim2ConfigLVDTrip                INTEGER,
      dcmim2ConfigLVDReset               INTEGER,
      dcmim2ConfigLVDState               INTEGER
   }

dcmim2ConfigLVDIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant LVD."
   ::= { dcmim2ConfigLVDEntry 1 }

dcmim2ConfigLVDTrip OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "LVD Trip threshold.  System bus voltage at which LVD will trip (open)
       during a battery backup operation.

      Values are represented in thousandths of Volts (mV)."
   ::= { dcmim2ConfigLVDEntry 2 }

dcmim2ConfigLVDReset OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "LVD Reset threshold.  System bus voltage at which LVD will reset (close)
       after AC power has been restored.

      Values are represented in thousandths of Volts (mV)."
   ::= { dcmim2ConfigLVDEntry 3 }

dcmim2ConfigLVDState OBJECT-TYPE
   SYNTAX INTEGER       {
      statusClosed             (1),
      statusOpened             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusClosed (1) if the LVD is closed.
       statusOpened (2) will be returned if the LVD is opened."
   ::= { dcmim2ConfigLVDEntry 4 }


-- the dcmim2StatusSystem group

dcmim2StatusSysRectCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System (Total Rectifier) current in thousandths of Amps (mA)."
   ::= { dcmim2StatusSystem 1 }

dcmim2StatusSysLoadCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Load current in thousandths of Amps (mA)."
   ::= { dcmim2StatusSystem 2 }

dcmim2StatusSysBusVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System bus voltage in thousandths of Volts (mV)."
   ::= { dcmim2StatusSystem 3 }

dcmim2StatusSysAmbientTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "System temperature based on sensor on Master Controller PCB.

      Values are represented in thousandths of a degree.
      Units are displayed in the scale shown in
      the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."
   ::= { dcmim2StatusSystem 4 }

dcmim2StatusSysUpTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Length of time since the DC Powerplant controller has been powered up."
   ::= { dcmim2StatusSystem 5 }

dcmim2StatusSysTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       in the DC system, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { dcmim2StatusSystem 6 }


-- the dcmim2StatusRectifier group

dcmim2StatusRectTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant rectifiers viewable
       by this IP address."
   ::= { dcmim2StatusRectifier 1 }

dcmim2StatusRectTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dcmim2StatusRectEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing settings of the rectifiers. The number of
       entries is contained in the dcmim2StatusRectTableSize OID."
   ::= { dcmim2StatusRectifier 2 }

dcmim2StatusRectEntry OBJECT-TYPE
   SYNTAX Dcmim2StatusRectEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The rectifier to gather status from."
   INDEX { dcmim2StatusRectIndex }
   ::= { dcmim2StatusRectTable 1 }

Dcmim2StatusRectEntry ::=
   SEQUENCE {
      dcmim2StatusRectIndex            INTEGER,
      dcmim2StatusRectDevType          INTEGER,
      dcmim2StatusRectID               INTEGER,
      dcmim2StatusRectPhyAddr          INTEGER,
      dcmim2StatusRectFail             INTEGER,
      dcmim2StatusRectCurrent          INTEGER
   }

dcmim2StatusRectIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant rectifier."
   ::= { dcmim2StatusRectEntry 1 }

dcmim2StatusRectDevType OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier device type."
   ::= { dcmim2StatusRectEntry 2 }

dcmim2StatusRectID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier ID.  This enumerates the number of the rectifier within
       a group of rectifiers."
   ::= { dcmim2StatusRectEntry 3 }

dcmim2StatusRectPhyAddr OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the rectifier physical address (the address on the bus)."
   ::= { dcmim2StatusRectEntry 4 }

dcmim2StatusRectFail    OBJECT-TYPE
   SYNTAX INTEGER       {
      statusTrue          (1),
      statusFalse         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusTrue (1) if the rectifier has failed.
       statusFalse (2) will be returned if the rectifier has not failed."
   ::= { dcmim2StatusRectEntry 5 }

dcmim2StatusRectCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID shows the individual rectifier current in thousandths of Amps (mA)."
   ::= { dcmim2StatusRectEntry 6 }


-- the dcmim2StatusBattery group

dcmim2StatusBattFloatVolt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery Float Voltage represented in thousandths of Volts (mV)."
   ::= { dcmim2StatusBattery 1 }

dcmim2StatusBattCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery Current:  This OID shows the battery current in thousandths of Amps (mA)."
   ::= { dcmim2StatusBattery 2 }

dcmim2StatusBattTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery Temperature:

       Values are represented in thousandths of a degree.
       Units are displayed in the scale shown in
       the 'dcmim2StatusSysTempUnits' OID (Celsius or Fahrenheit)."
   ::= { dcmim2StatusBattery 3 }

dcmim2StatusBattMfgCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery capacity (Amp-Hour Size) as specified by the battery manufacturer.
      Values are represented in thousandths of Amp hours (mAHr)."
   ::= { dcmim2StatusBattery 4 }

dcmim2StatusBattTestCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Battery capacity (Amp-Hour Size) as determined by the battery capacity test.
      Values are represented in thousandths of Amp hours (mAHr)."
   ::= { dcmim2StatusBattery 5 }

dcmim2StatusBattFunctTestResult OBJECT-TYPE
   SYNTAX INTEGER{
      functTestNotPerformed   (1),
      functTestInProcess      (2),
      functTestInterrupted    (3),
      functTestPass           (4),
      functTestFail           (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Results of the last battery functional test that was run."
   ::= { dcmim2StatusBattery 6 }

dcmim2StatusBattCapacityTestResult OBJECT-TYPE
   SYNTAX INTEGER{
      capacityTestNotPerformed   (1),
      capacityTestInProcess      (2),
      capacityTestInterrupted    (3),
      capacityTestPass           (4),
      capacityTestFail            (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Results of the last battery capacity test that was run."
   ::= { dcmim2StatusBattery 7 }


-- the dcmim2StatusLVD group

dcmim2StatusLVDTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant LVDs accessible
       by this IP address."
   ::= { dcmim2StatusLVD 1 }

dcmim2StatusLVDTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dcmim2StatusLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing the LVDs. The number of
       entries is contained in the dcmim2StatusLVDTableSize OID."
   ::= { dcmim2StatusLVD 2 }

dcmim2StatusLVDEntry OBJECT-TYPE
   SYNTAX Dcmim2StatusLVDEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The LVD to access."
   INDEX { dcmim2StatusLVDIndex }
   ::= { dcmim2StatusLVDTable 1 }

Dcmim2StatusLVDEntry ::=
   SEQUENCE {
      dcmim2StatusLVDIndex               INTEGER,
      dcmim2StatusLVDState               INTEGER
   }

dcmim2StatusLVDIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the DC powerplant LVD."
   ::= { dcmim2StatusLVDEntry 1 }

dcmim2StatusLVDState OBJECT-TYPE
   SYNTAX INTEGER       {
      statusClosed             (1),
      statusOpened             (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Getting this OID will return statusClosed (1) if the LVD is closed.
       statusOpened (2) will be returned if the LVD is opened."
   ::= { dcmim2StatusLVDEntry 2 }


-- the dcmim2StatusAlarms group

dcmim2StatusAlarmsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of DC powerplant alarms viewable
       by this IP address."
   ::= { dcmim2StatusAlarms 1 }

dcmim2StatusAlarmsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF Dcmim2StatusAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for accessing system alarms. The number of
       entries is contained in the dcmim2StatusAlarmsTableSize OID."
   ::= { dcmim2StatusAlarms 2 }

dcmim2StatusAlarmsEntry OBJECT-TYPE
   SYNTAX Dcmim2StatusAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The alarm to display."
   INDEX { dcmim2StatusAlarmsIndex }
   ::= { dcmim2StatusAlarmsTable 1 }

Dcmim2StatusAlarmsEntry ::=
   SEQUENCE {
      dcmim2StatusAlarmsIndex               INTEGER,
      dcmim2StatusAlarmsText                DisplayString
   }

dcmim2StatusAlarmsIndex OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The index of the system alarm."
   ::= { dcmim2StatusAlarmsEntry 1 }

dcmim2StatusAlarmsText OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The 16 character text describing the active alarm condition."
   ::= { dcmim2StatusAlarmsEntry 2 }

-- External Environmental Monitor

emIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the Environmental Monitor."
   ::= { emIdent 1 }

emConfigProbesNumProbes OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of temperature and humidity probes available."
   ::= { emConfig 1 }

emConfigProbesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmConfigProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of probes supported by the Environmental Monitor
       and their configurations."
   ::= { emConfig 2 }

emConfigProbesEntry OBJECT-TYPE
   SYNTAX EmConfigProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Environmental Monitor probe configurations."
   INDEX  { emConfigProbeNumber }
   ::= { emConfigProbesTable 1 }

EmConfigProbesEntry ::=
   SEQUENCE {
      emConfigProbeNumber
         INTEGER,
      emConfigProbeName
         DisplayString,
      emConfigProbeHighTempThreshold
         INTEGER,
      emConfigProbeLowTempThreshold
         INTEGER,
      emConfigProbeTempUnits
         INTEGER,
      emConfigProbeHighHumidThreshold
         INTEGER,
      emConfigProbeLowHumidThreshold
         INTEGER,
      emConfigProbeHighTempEnable
         INTEGER,
      emConfigProbeLowTempEnable
         INTEGER,
      emConfigProbeHighHumidEnable
         INTEGER,
      emConfigProbeLowHumidEnable
         INTEGER,
      emConfigProbeMaxTempThreshold
         INTEGER,
      emConfigProbeMinTempThreshold
         INTEGER,
      emConfigProbeMaxHumidThreshold
         INTEGER,
      emConfigProbeMinHumidThreshold
         INTEGER,
      emConfigProbeMaxTempEnable
         INTEGER,
      emConfigProbeMinTempEnable
         INTEGER,
      emConfigProbeMaxHumidEnable
         INTEGER,
      emConfigProbeMinHumidEnable
         INTEGER,
      emConfigProbeTempHysteresis
         INTEGER,
      emConfigProbeHumidHysteresis
         INTEGER,
      emConfigProbeLocation
         DisplayString
   }

emConfigProbeNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index into an Environmental Monitor probe entry."
   ::= { emConfigProbesEntry 1 }

emConfigProbeName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name of the probe set by the user,
       possibly denoting its location or purpose."
   ::= { emConfigProbesEntry 2 }

emConfigProbeHighTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature alarm threshold for the probe.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 3 }

emConfigProbeLowTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm threshold for the probe.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 4 }

emConfigProbeTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       thresholds of the probe, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { emConfigProbesEntry 5 }

emConfigProbeHighHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { emConfigProbesEntry 6 }

emConfigProbeLowHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { emConfigProbesEntry 7 }

emConfigProbeHighTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 8 }

emConfigProbeLowTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 9 }

emConfigProbeHighHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 10 }

emConfigProbeLowHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 11 }

emConfigProbeMaxTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature alarm threshold for the probe.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 12 }

emConfigProbeMinTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature alarm threshold for the probe.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 13 }

emConfigProbeMaxHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximun humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { emConfigProbesEntry 14 }

emConfigProbeMinHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { emConfigProbesEntry 15 }

emConfigProbeMaxTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 16 }

emConfigProbeMinTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 17 }

emConfigProbeMaxHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 18 }

emConfigProbeMinHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { emConfigProbesEntry 19 }

emConfigProbeTempHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of degrees beyond the temperature thresholds
       at which an active temperature alarm will be cleared.
       This configuration setting applies to all temperature
       thresholds.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 20 }

emConfigProbeHumidHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of percent RH points beyond the humidity
       thresholds at which an active humidity alarm will be
       cleared. This configuration setting applies to all
       humidity thresholds.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { emConfigProbesEntry 21 }

emConfigProbeLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A string describing the location of the probe."
   ::= { emConfigProbesEntry 22 }

emConfigContactsNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported by the Environmental
       Monitor."
   ::= { emConfig 3 }

emConfigContactsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmConfigContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the Environmental Monitor
       and their configurations."
   ::= { emConfig 4 }

emConfigContactsEntry OBJECT-TYPE
   SYNTAX EmConfigContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Environmental Monitor contact configurations."
   INDEX  { emConfigContactNumber }
   ::= { emConfigContactsTable 1 }

EmConfigContactsEntry ::=
   SEQUENCE {
       emConfigContactNumber
           INTEGER,
       emConfigContactName
           DisplayString,
       emConfigContactEnable
           INTEGER,
       emConfigContactSeverity
           INTEGER,
       emConfigContactNormalState
           INTEGER,
       emConfigContactLocation
           DisplayString
   }

emConfigContactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an Environmental Monitor contact."
   ::= { emConfigContactsEntry 1 }

emConfigContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for an Environmental Monitor
      contact set by the user, possibly denoting its
      location or purpose."
   ::= { emConfigContactsEntry 2 }

emConfigContactEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An Environmental Monitor contact alarm enable/disable.
       No alarm will be generated if the contact is disabled(1).
       An alarm will be generated if the contact is enabled(2)
       and the contact has been faulted."
   ::= { emConfigContactsEntry 3 }

emConfigContactSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the input contact is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emConfigContactsEntry 4 }

emConfigContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open(1),
      closed(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The contact state that will be considered normal, i.e.
      will not trigger an alarm. The states are open(1) or
      closed(2)."
   ::= { emConfigContactsEntry 5 }

emConfigContactLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive label for the contact denoting its
      location or purpose."
   ::= { emConfigContactsEntry 6 }

emStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      noComm(1),
      comm(2),
      commLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status between the agent
       and the Environmental Monitor.

       noComm(1),   Communication has never been established.
       comm(2),     Communication has been established.
       commLost(3), Communication was established, but was lost."
   ::= { emStatus 1 }

emStatusProbesNumProbes OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of available probes on the Environmental
       Monitor."
   ::= { emStatus 2 }

emStatusProbesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmStatusProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of probes supported by the Environmental Monitor
       and their status."
   ::= { emStatus 3 }

emStatusProbesEntry OBJECT-TYPE
   SYNTAX EmStatusProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The status of the probe."
   INDEX  { emStatusProbeNumber }
   ::= { emStatusProbesTable 1 }

EmStatusProbesEntry ::=
   SEQUENCE {
      emStatusProbeNumber
         INTEGER,
      emStatusProbeName
         DisplayString,
      emStatusProbeStatus
         INTEGER,
      emStatusProbeCurrentTemp
         INTEGER,
      emStatusProbeTempUnits
         INTEGER,
      emStatusProbeCurrentHumid
         INTEGER,
      emStatusProbeHighTempViolation
         INTEGER,
      emStatusProbeLowTempViolation
         INTEGER,
      emStatusProbeHighHumidViolation
         INTEGER,
      emStatusProbeLowHumidViolation
         INTEGER,
      emStatusProbeMaxTempViolation
         INTEGER,
      emStatusProbeMinTempViolation
         INTEGER,
      emStatusProbeMaxHumidViolation
         INTEGER,
      emStatusProbeMinHumidViolation
         INTEGER
   }

emStatusProbeNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the probe."
   ::= { emStatusProbesEntry 1 }

emStatusProbeName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the probe set by the user,
       possibly denoting its location or purpose."
   ::= { emStatusProbesEntry 2 }

emStatusProbeStatus OBJECT-TYPE
   SYNTAX INTEGER {
      disconnected(1),
      connected(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The connected status of the probe, either
      disconnected(1) or connected(2)."
   ::= { emStatusProbesEntry 3 }

emStatusProbeCurrentTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current temperature reading from the probe displayed
       in the units shown in the 'emStatusProbeTempUnits' OID
       (Celsius or Fahrenheit)."
   ::= { emStatusProbesEntry 4 }

emStatusProbeTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       thresholds of the probe, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { emStatusProbesEntry 5 }

emStatusProbeCurrentHumid OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current humidity reading from the probe in
       percent relative humidity."
   ::= { emStatusProbesEntry 6 }

emStatusProbeHighTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      highTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high temperature violation status of the probe
       temperature reading. This OID will show a highTempViolation(2)
       if the current temperature reading shown in the
       'emStatusProbeCurrentTemp' OID is greater than or equal to
       the high temperature threshold value, the
       'emConfigProbeHighTempThreshold' OID, and the value of the
       'emConfigProbeHighTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'emConfigProbeHighTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { emStatusProbesEntry 7 }

emStatusProbeLowTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      lowTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high temperature violation status of the probe
       temperature reading. This OID will show a lowTempViolation(2)
       if the current temperature reading shown in the
       'emStatusProbeCurrentTemp' OID is less than or equal to
       the low temperature threshold value, the
       'emConfigProbeLowTempThreshold' OID, and the value of the
       'emConfigProbeLowTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'emConfigProbeLowTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { emStatusProbesEntry 8 }

emStatusProbeHighHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      highHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high humidity violation status of the probe humidity
       reading. This OID will show a highTempViolation(2)
       if the current humidity reading shown in the
       'emStatusProbeCurrentHumid' OID is greater than or equal to
       the high humidity threshold value, the
       'emConfigProbeHighHumidThreshold' OID, and the value of the
       'emConfigProbeHighHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1).  If the 'emConfigProbeHighHumidEnable' OID is
       disabled, this OID will show disabled(3)"
   ::= { emStatusProbesEntry 9 }

emStatusProbeLowHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      lowHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The low humidity violation status of the probe humidity
       reading. This OID will show a lowTempViolation(2)
       if the current humidity reading shown in the
       'emStatusProbeCurrentHumid' OID is less than or equal to
       the low humidity threshold value, the
       'emConfigProbeLowHumidThreshold' OID, and the value of the
       'emConfigProbeLowHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1). If the 'emConfigProbeLowHumidEnable' OID is
       disabled, this OID will show disabled(3)."
   ::= { emStatusProbesEntry 10 }

emStatusProbeMaxTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      maxTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The max temperature violation status of the probe
       temperature reading. This OID will show a maxTempViolation(2)
       if the current temperature reading shown in the
       'emStatusProbeCurrentTemp' OID is greater than or equal to
       the maximun temperature threshold value, the
       'emConfigProbeMaxTempThreshold' OID, and the value of the
       'emConfigProbeMaxTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'emConfigProbeMaxTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { emStatusProbesEntry 11 }

emStatusProbeMinTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      minTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature violation status of the probe
       temperature reading. This OID will show a minTempViolation(2)
       if the current temperature reading shown in the
       'emStatusProbeCurrentTemp' OID is less than or equal to
       the minimum temperature threshold value, the
       'emConfigProbeMinTempThreshold' OID, and the value of the
       'emConfigProbeMinTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'emConfigProbeMinTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { emStatusProbesEntry 12 }

emStatusProbeMaxHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      maxHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity violation status of the probe humidity
       reading. This OID will show a maxTempViolation(2)
       if the current humidity reading shown in the
       'emStatusProbeCurrentHumid' OID is greater than or equal to
       the maximum humidity threshold value, the
       'emConfigProbeMaxHumidThreshold' OID, and the value of the
       'emConfigProbeMaxHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1).  If the 'emConfigProbeMaxHumidEnable' OID is
       disabled, this OID will show disabled(3)"
   ::= { emStatusProbesEntry 13 }

emStatusProbeMinHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      minHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity violation status of the probe humidity
       reading. This OID will show a minTempViolation(2)
       if the current humidity reading shown in the
       'emStatusProbeCurrentHumid' OID is less than or equal to
       the minimum humidity threshold value, the
       'emConfigProbeMinHumidThreshold' OID, and the value of the
       'emConfigProbeMinHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1). If the 'emConfigProbeMinHumidEnable' OID is
       disabled, this OID will show disabled(3)."
   ::= { emStatusProbesEntry 14 }

emStatusContactsNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported by the
       Environmental Monitor."
   ::= { emStatus 4 }

emStatusContactsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmStatusContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the Environmental Monitor
       and their status."
   ::= { emStatus 5 }

emStatusContactsEntry OBJECT-TYPE
   SYNTAX EmStatusContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The status of the contact."
   INDEX  { emStatusContactNumber }
   ::= { emStatusContactsTable 1 }

EmStatusContactsEntry ::=
   SEQUENCE {
      emStatusContactNumber
         INTEGER,
      emStatusContactName
         DisplayString,
      emStatusContactStatus
         INTEGER
   }

emStatusContactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the Environmental Monitor contact."
   ::= { emStatusContactsEntry 1 }

emStatusContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the Environmental Monitor contact
       set by the user, possibly denoting its location or purpose."
   ::= { emStatusContactsEntry 2 }

emStatusContactStatus OBJECT-TYPE
   SYNTAX INTEGER {
      noFault(1),
      fault(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Environmental Monitor contact. The status
       will show noFault(1) if the contact is in the normal state
       and the 'emConfigContactEnable' OID is enabled. The status will
       show a fault(2) if the contact is faulted and the
       'emContactEnable' OID is enabled. If the 'emConfigContactEnable'
       OID is disabled, the status will show disabled(3)."
   ::= { emStatusContactsEntry 3 }

-- Modular Environmental Manager (MEM)

-- MEM Modules Status table

memModulesStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memModulesStatusTable."
   ::= { memModules 1 }

memModulesStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemModulesStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting status information from the modules
        attached to the system."
   ::= { memModules 2 }

memModulesStatusEntry OBJECT-TYPE
   SYNTAX MemModulesStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memModulesStatusModuleNumber }
   ::= { memModulesStatusTable 1 }

MemModulesStatusEntry ::=
   SEQUENCE {
      memModulesStatusModuleNumber   INTEGER,
      memModulesStatusModuleName     DisplayString,
      memModulesStatusModuleLocation DisplayString,
      memModulesStatusModelNumber    DisplayString,
      memModulesStatusSerialNumber   DisplayString,
      memModulesStatusFirmwareRev    DisplayString,
      memModulesStatusHardwareRev    DisplayString
   }

memModulesStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The module number."
   ::= { memModulesStatusEntry 1 }

memModulesStatusModuleName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The module name."
   ::= { memModulesStatusEntry 2 }

memModulesStatusModuleLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the module."
   ::= { memModulesStatusEntry 3 }

memModulesStatusModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The model number of the module."
   ::= { memModulesStatusEntry 4 }

memModulesStatusSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The serial number of the module."
   ::= { memModulesStatusEntry 5 }

memModulesStatusFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The firmware revision of the module."
   ::= { memModulesStatusEntry 6 }

memModulesStatusHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The hardware revision."
   ::= { memModulesStatusEntry 7 }

-- MEM Modules Config table

memModulesConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memModulesConfigTable."
   ::= { memModules 3 }

memModulesConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemModulesConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting status information from the modules
        attached to the system."
   ::= { memModules 4 }

memModulesConfigEntry OBJECT-TYPE
   SYNTAX MemModulesConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memModulesConfigModuleNumber }
   ::= { memModulesConfigTable 1 }

MemModulesConfigEntry ::=
   SEQUENCE {
      memModulesConfigModuleNumber      INTEGER,
      memModulesConfigModuleName        DisplayString,
      memModulesConfigModuleLocation    DisplayString
   }

memModulesConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The module number."
   ::= { memModulesConfigEntry 1 }

memModulesConfigModuleName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The module name."
   ::= { memModulesConfigEntry 2 }

memModulesConfigModuleLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the module."
   ::= { memModulesConfigEntry 3 }


-- MEM Sensor Status Table

memSensorsStatusSysTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The temperature scale used to display the temperature
        in the system, Celsius(1) or Fahrenheit(2).
        This setting is based on the system preferences
        configuration in the agent."
   ::= { memSensors 1 }

memSensorsStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memSensorsStatusTable."
   ::= { memSensors 2 }

memSensorsStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemSensorsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting sensor status information."
   ::= { memSensors 3 }

memSensorsStatusEntry OBJECT-TYPE
   SYNTAX MemSensorsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memSensorsStatusModuleNumber, memSensorsStatusSensorNumber }
   ::= { memSensorsStatusTable 1 }

MemSensorsStatusEntry ::=
   SEQUENCE {
      memSensorsStatusModuleNumber   INTEGER,
      memSensorsStatusSensorNumber   INTEGER,
      memSensorsStatusSensorName     DisplayString,
      memSensorsStatusSensorLocation DisplayString,
      memSensorsTemperature          INTEGER,
      memSensorsHumidity             INTEGER,
      memSensorsCommStatus           INTEGER,
      memSensorsAlarmStatus          INTEGER,
      memSensorsTemperatureHighPrec  INTEGER
   }

memSensorsStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the sensor is attached to."
   ::= { memSensorsStatusEntry 1 }

memSensorsStatusSensorNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this sensor on the module."
   ::= { memSensorsStatusEntry 2 }

memSensorsStatusSensorName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor name."
   ::= { memSensorsStatusEntry 3 }

memSensorsStatusSensorLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the sensor."
   ::= { memSensorsStatusEntry 4 }

memSensorsTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor's current temperature reading.
         Units are displayed in the scale shown in
         the memSensorsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { memSensorsStatusEntry 5 }

memSensorsHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current humidity reading from the sensor."
   ::= { memSensorsStatusEntry 6 }

memSensorsCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled(1),
      commsOK(2),
      commsLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The communications status of the sensor."
   ::= { memSensorsStatusEntry 7 }

memSensorsAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the sensor."
   ::= { memSensorsStatusEntry 8 }

memSensorsTemperatureHighPrec OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current temperature is displayed in tenths of degrees in the scale
      shown in the memSensorsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { memSensorsStatusEntry 9 }

-- MEM Sensor Config Table

memSensorsConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memSensorsConfigTable."
   ::= { memSensors 4 }

memSensorsConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemSensorsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting configuration information from
        sensors attached to the system."
   ::= { memSensors 5 }

memSensorsConfigEntry OBJECT-TYPE
   SYNTAX MemSensorsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memSensorsConfigModuleNumber, memSensorsConfigSensorNumber }
   ::= { memSensorsConfigTable 1 }

MemSensorsConfigEntry ::=
   SEQUENCE {
      memSensorsConfigModuleNumber           INTEGER,
      memSensorsConfigSensorNumber           INTEGER,
      memSensorsName                         DisplayString,
      memSensorsLocation                     DisplayString,
      memSensorsAlarmGeneration              INTEGER,
      memSensorsTempMaxThresh                INTEGER,
      memSensorsTempHighThresh               INTEGER,
      memSensorsTempLowThresh                INTEGER,
      memSensorsTempMinThresh                INTEGER,
      memSensorsTempThreshHysteresis         INTEGER,
      memSensorsTempShortDecRateThreshValue  INTEGER,
      memSensorsTempShortDecRateThreshTime   INTEGER,
      memSensorsTempShortIncRateThreshValue  INTEGER,
      memSensorsTempShortIncRateThreshTime   INTEGER,
      memSensorsTempLongDecRateThreshValue   INTEGER,
      memSensorsTempLongDecRateThreshTime    INTEGER,
      memSensorsTempLongIncRateThreshValue   INTEGER,
      memSensorsTempLongIncRateThreshTime    INTEGER,
      memSensorsHumidityMaxThresh            INTEGER,
      memSensorsHumidityHighThresh           INTEGER,
      memSensorsHumidityLowThresh            INTEGER,
      memSensorsHumidityMinThresh            INTEGER,
      memSensorsHumidityThreshHysteresis     INTEGER
   }

memSensorsConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the sensor is attached to."
   ::= { memSensorsConfigEntry 1 }

memSensorsConfigSensorNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this sensor on the module."
   ::= { memSensorsConfigEntry 2 }

memSensorsName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A descriptive name for the sensor."
   ::= { memSensorsConfigEntry 3 }

memSensorsLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the sensor."
   ::= { memSensorsConfigEntry 4 }

memSensorsAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this sensor."
   ::= { memSensorsConfigEntry 5 }

memSensorsTempMaxThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which the MEM will generate a maximum
         temperature threshold violation alarm on this sensor.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."

   ::= { memSensorsConfigEntry 6 }

memSensorsTempHighThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which the MEM will generate a high
         temperature threshold violation alarm on this sensor.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 7 }

memSensorsTempLowThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which the MEM will generate a low
         temperature threshold violation alarm on this sensor.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 8 }

memSensorsTempMinThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which the MEM will generate a minimum
         temperature threshold violation alarm on this sensor.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 9 }

memSensorsTempThreshHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The change in temperature required to cause a
         temperature alarm to change from an active to an inactive state.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."

   ::= { memSensorsConfigEntry 10 }

memSensorsTempShortDecRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature short-term decreasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 11 }

memSensorsTempShortDecRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not decrease
         beyond the value specified by the temperature short-term
         decreasing rate threshold value."
   ::= { memSensorsConfigEntry 12 }

memSensorsTempShortIncRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature short-term increasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 13 }

memSensorsTempShortIncRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not increase
         beyond the value specified by the temperature short-term
         increasing rate threshold value."
   ::= { memSensorsConfigEntry 14 }

memSensorsTempLongDecRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature long-term decreasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 15 }

memSensorsTempLongDecRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not decrease
         beyond the value specified by the temperature long-term
         decreasing rate threshold value."
   ::= { memSensorsConfigEntry 16 }

memSensorsTempLongIncRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature long-term increasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the memSensorsStatusSysTempUnits OID."
   ::= { memSensorsConfigEntry 17 }

memSensorsTempLongIncRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not increase
         beyond the value specified by the temperature long-term
         increasing rate threshold value."
   ::= { memSensorsConfigEntry 18 }

memSensorsHumidityMaxThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The humidity at which the maximum humidity threshold alarm
         will be generated."
   ::= { memSensorsConfigEntry 19 }

memSensorsHumidityHighThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The humidity at which the high humidity threshold alarm
         will be generated."
   ::= { memSensorsConfigEntry 20 }

memSensorsHumidityLowThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The humidity at which the low humidity threshold alarm
         will be generated."
   ::= { memSensorsConfigEntry 21 }

memSensorsHumidityMinThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The humidity at which the minimum humidity threshold alarm
         will be generated."
   ::= { memSensorsConfigEntry 22 }

memSensorsHumidityThreshHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The change in humidity required to cause an active humidity
         alarm to change to the inactive state."
   ::= { memSensorsConfigEntry 23 }


-- MEM Input Status Table

memInputsStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memInputsStatusTable."
   ::= { memInputs 1 }

memInputsStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemInputsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting input status information."
   ::= { memInputs 2 }

memInputsStatusEntry OBJECT-TYPE
   SYNTAX MemInputsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memInputsStatusModuleNumber, memInputsStatusInputNumber }
   ::= { memInputsStatusTable 1 }

MemInputsStatusEntry ::=
   SEQUENCE {
      memInputsStatusModuleNumber           INTEGER,
      memInputsStatusInputNumber            INTEGER,
      memInputsStatusInputName              DisplayString,
      memInputsStatusInputLocation          DisplayString,
      memInputsStatusCurrentState           INTEGER,
      memInputsStatusCurrentAnalogValue     DisplayString,
      memInputsStatusAlarmStatus            INTEGER,
      memInputsCommStatus                   INTEGER
   }

memInputsStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the input is attached to."
   ::= { memInputsStatusEntry 1 }

memInputsStatusInputNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this input on the module."
   ::= { memInputsStatusEntry 2 }

memInputsStatusInputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The input name."
   ::= { memInputsStatusEntry 3 }

memInputsStatusInputLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the input."
   ::= { memInputsStatusEntry 4 }

memInputsStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      inputClosedHighMEM      (1),
      inputOpenLowMEM         (2),
      inputDisabled           (3),
      inputStateNotApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current state of the input. This OID will return
         inputStateNotAplicable(4) for analog input types. "
   ::= { memInputsStatusEntry 5 }

memInputsStatusCurrentAnalogValue OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current analog value of the input in the units defined
         by the user."
   ::= { memInputsStatusEntry 6 }

memInputsStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the input."
   ::= { memInputsStatusEntry 7 }

memInputsCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled(1),
      commsOK(2),
      commsLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The communications status of the input. This OID is only supported by NBRK0200."
   ::= { memInputsStatusEntry 8 }

-- MEM Input Config Table

memInputsConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memInputsConfigTable."
   ::= { memInputs 3 }

memInputsConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemInputsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting input configuration information."
   ::= { memInputs 4 }

memInputsConfigEntry OBJECT-TYPE
   SYNTAX MemInputsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memInputsConfigModuleNumber, memInputsConfigInputNumber }
   ::= { memInputsConfigTable 1 }

MemInputsConfigEntry ::=
   SEQUENCE {
      memInputsConfigModuleNumber           INTEGER,
      memInputsConfigInputNumber            INTEGER,
      memInputName                          DisplayString,
      memInputLocation                      DisplayString,
      memInputType                          INTEGER,
      memInputAlarmGeneration               INTEGER,
      memInputNormalState                   INTEGER,
      memInputAbnormalSeverity              INTEGER,
      memInputNumberCalibrationPoints       INTEGER,
      memInputAnalogCalibrationPoint1       DisplayString,
      memInputAnalogCalibrationPoint2       DisplayString,
      memInputAnalogCalibrationPoint3       DisplayString,
      memInputAnalogCalibrationPoint4       DisplayString,
      memInputAnalogCalibrationPoint5       DisplayString,
      memInputAnalogCalibrationPoint1Value  DisplayString,
      memInputAnalogCalibrationPoint2Value  DisplayString,
      memInputAnalogCalibrationPoint3Value  DisplayString,
      memInputAnalogCalibrationPoint4Value  DisplayString,
      memInputAnalogCalibrationPoint5Value  DisplayString,
      memInputAnalogMeasurementUnits        DisplayString,
      memInputAnalogMaxThresh               DisplayString,
      memInputAnalogHighThresh              DisplayString,
      memInputAnalogLowThresh               DisplayString,
      memInputAnalogMinThresh               DisplayString,
      memInputAnalogThreshHysteresis        DisplayString
   }

memInputsConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the input is attached to."
   ::= { memInputsConfigEntry 1 }

memInputsConfigInputNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this input on the module."
   ::= { memInputsConfigEntry 2 }

memInputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The name of the input."
   ::= { memInputsConfigEntry 3 }

memInputLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the input."
   ::= { memInputsConfigEntry 4 }

memInputType OBJECT-TYPE
   SYNTAX INTEGER {
      noConnection          (1),
      dryContact            (2),
      digital               (3),
      analogmAmps           (4),
      analogVolts           (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The type of input this contact will take."
   ::= { memInputsConfigEntry 5 }

memInputAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this input."
   ::= { memInputsConfigEntry 6 }

memInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      inputClosedHighMEM      (1),
      inputOpenLowMEM         (2),
      inputDisabled           (3),
      inputStateNotApplicable (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Defines the normal (no alarm) state of the input."
   ::= { memInputsConfigEntry 7 }

memInputAbnormalSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      inputSeverityinformational (1),
      inputSeveritywarning       (2),
      inputSeveritysevere        (3),
      inputSeverityNotApplicable (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Defines the severity of the event that is associated
         with the abnormal state of the input.  This OID will return
         inputSeverityNotApplicable(4) for analog input types. "
   ::= { memInputsConfigEntry 8 }

memInputNumberCalibrationPoints OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The number of calibration points that are required for
         this input."
   ::= { memInputsConfigEntry 9 }

memInputAnalogCalibrationPoint1 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The electrical value that the input sensor will measure at the
         first calibration point.
         This OID is relevant only for inputs configured as analog type (ma or V)."
   ::= { memInputsConfigEntry 10 }

memInputAnalogCalibrationPoint2 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The electrical value that the input sensor will measure at the
         second calibration point.
         This OID is relevant only for inputs configured as analog type (ma or V)."
   ::= { memInputsConfigEntry 11 }

memInputAnalogCalibrationPoint3 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The electrical value that the input sensor will measure at the
         third calibration point.
         This OID is relevant only for inputs configured as analog type (ma or V)."
   ::= { memInputsConfigEntry 12 }

memInputAnalogCalibrationPoint4 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The electrical value that the input sensor will measure at the
         fourth calibration point.
         This OID is relevant only for inputs configured as analog type (ma or V)."
   ::= { memInputsConfigEntry 13 }

memInputAnalogCalibrationPoint5 OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The electrical value that the input sensor will measure at the
         fifth calibration point.
         This OID is relevant only for inputs configured as analog type (ma or V)."
   ::= { memInputsConfigEntry 14 }

memInputAnalogCalibrationPoint1Value OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the input, in units of measure defined by
         the user, that corresponds to the current setting at the
         first calibration point."
   ::= { memInputsConfigEntry 15 }

memInputAnalogCalibrationPoint2Value OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the input, in units of measure defined by
         the user, that corresponds to the current setting at the
         second calibration point."
   ::= { memInputsConfigEntry 16 }

memInputAnalogCalibrationPoint3Value OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the input, in units of measure defined by
         the user, that corresponds to the current setting at the
         third calibration point."
   ::= { memInputsConfigEntry 17 }

memInputAnalogCalibrationPoint4Value OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the input, in units of measure defined by
         the user, that corresponds to the current setting at the
         fourth calibration point."
   ::= { memInputsConfigEntry 18 }

memInputAnalogCalibrationPoint5Value OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the input, in units of measure defined by
         the user, that corresponds to the current setting at the
         fifth calibration point."
   ::= { memInputsConfigEntry 19 }

memInputAnalogMeasurementUnits OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The units of measure to be used for this input."
   ::= { memInputsConfigEntry 20 }

memInputAnalogMaxThresh OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The input value at which a maximum threshold violation
         alarm will be generated on this input."
   ::= { memInputsConfigEntry 21 }

memInputAnalogHighThresh OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The input value at which a high threshold violation
         alarm will be generated on this input."
   ::= { memInputsConfigEntry 22 }

memInputAnalogLowThresh OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The input value at which a low threshold violation
         alarm will be generated on this input."
   ::= { memInputsConfigEntry 23 }

memInputAnalogMinThresh OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The input value at which a minimum threshold violation
         alarm will be generated on this input."
   ::= { memInputsConfigEntry 24 }


memInputAnalogThreshHysteresis OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The change in value required to cause an alarm on this input
         to change from active to inactive."
   ::= { memInputsConfigEntry 25 }


-- MEM Output Status Table

memOutputStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memOutputStatusTable."
   ::= { memOutputs 1 }

memOutputStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemOutputStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting output status information."
   ::= { memOutputs 2 }

memOutputStatusEntry OBJECT-TYPE
   SYNTAX MemOutputStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memOutputStatusModuleNumber, memOutputStatusOutputNumber }
   ::= { memOutputStatusTable 1 }

MemOutputStatusEntry ::=
   SEQUENCE {
      memOutputStatusModuleNumber           INTEGER,
      memOutputStatusOutputNumber           INTEGER,
      memOutputStatusOutputName             DisplayString,
      memOutputStatusOutputLocation         DisplayString,
      memOutputStatusCurrentState           INTEGER,
      memOutputStatusAlarmState             INTEGER
   }

memOutputStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the output is attached to."
   ::= { memOutputStatusEntry 1 }

memOutputStatusOutputNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this output on the module."
   ::= { memOutputStatusEntry 2 }

memOutputStatusOutputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The output name."
   ::= { memOutputStatusEntry 3 }

memOutputStatusOutputLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the output."
   ::= { memOutputStatusEntry 4 }

memOutputStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      memOutputClosed (1),
      memOutputOpen   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The state of the output."
   ::= { memOutputStatusEntry 5 }

memOutputStatusAlarmState OBJECT-TYPE
   SYNTAX INTEGER {
      memOutputNormal     (1),
      memOutputAbnormal   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm state of the output."
   ::= { memOutputStatusEntry 6 }

-- MEM Output Config Table

memOutputConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memOutputConfigTable."
   ::= { memOutputs 3 }

memOutputConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemOutputConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting output configuration information."
   ::= { memOutputs 4 }

memOutputConfigEntry OBJECT-TYPE
   SYNTAX MemOutputConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memOutputConfigModuleNumber, memOutputConfigOutputNumber }
   ::= { memOutputConfigTable 1 }

MemOutputConfigEntry ::=
   SEQUENCE {
      memOutputConfigModuleNumber           INTEGER,
      memOutputConfigOutputNumber           INTEGER,
      memOutputName                         DisplayString,
      memOutputLocation                     DisplayString,
      memOutputNormalState                  INTEGER,
      memOutputAction                       INTEGER
   }

memOutputConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the output is attached to."
   ::= { memOutputConfigEntry 1 }

memOutputConfigOutputNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this output on the module."
   ::= { memOutputConfigEntry 2 }

memOutputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The name of the output."
   ::= { memOutputConfigEntry 3 }

memOutputLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the output."
   ::= { memOutputConfigEntry 4 }

memOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      memOutputClosed (1),
      memOutputOpen   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The state of the output that will not generate an alarm."
   ::= { memOutputConfigEntry 5 }

memOutputAction OBJECT-TYPE
   SYNTAX INTEGER {
       memActionClose (1),
       memActionOpen  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Manual control actions for the output. SNMP get command will return the state
         of the output, SNMP set of this OID controls the output."
   ::= { memOutputConfigEntry 6 }


-- MEM Outlet Status Table

memOutletStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memOutletStatusTable."
   ::= { memOutlets 1 }

memOutletStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting outlet status information."
   ::= { memOutlets 2 }

memOutletStatusEntry OBJECT-TYPE
   SYNTAX MemOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memOutletStatusModuleNumber, memOutletStatusOutletNumber }
   ::= { memOutletStatusTable 1 }

MemOutletStatusEntry ::=
   SEQUENCE {
      memOutletStatusModuleNumber           INTEGER,
      memOutletStatusOutletNumber           INTEGER,
      memOutletStatusOutletName             DisplayString,
      memOutletStatusOutletLocation         DisplayString,
      memOutletStatusCurrentState           INTEGER,
      memOutletStatusAlarmState             INTEGER
   }

memOutletStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the outlet is attached to."
   ::= { memOutletStatusEntry 1 }

memOutletStatusOutletNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this outlet on the module."
   ::= { memOutletStatusEntry 2 }

memOutletStatusOutletName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The outlet name."
   ::= { memOutletStatusEntry 3 }

memOutletStatusOutletLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the outlet."
   ::= { memOutletStatusEntry 4 }

memOutletStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      off          (1),
      on           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The state of the outlet."
   ::= { memOutletStatusEntry 5 }

memOutletStatusAlarmState OBJECT-TYPE
   SYNTAX INTEGER {
      memOutletNormal    (1),
      memOutletAbnormal   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm state of the outlet."
   ::= { memOutletStatusEntry 6 }

-- MEM Outlet Config Table

memOutletConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memOutletConfigTable."
   ::= { memOutlets 3 }

memOutletConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting outlet configuration information."
   ::= { memOutlets 4 }

memOutletConfigEntry OBJECT-TYPE
   SYNTAX MemOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memOutletConfigModuleNumber, memOutletConfigOutletNumber }
   ::= { memOutletConfigTable 1 }

MemOutletConfigEntry ::=
   SEQUENCE {
      memOutletConfigModuleNumber           INTEGER,
      memOutletConfigOutletNumber           INTEGER,
      memOutletName                         DisplayString,
      memOutletLocation                     DisplayString,
      memOutletNormalState                  INTEGER,
      memOutletAction                       INTEGER
   }

memOutletConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the Outlet is attached to."
   ::= { memOutletConfigEntry 1 }

memOutletConfigOutletNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this Outlet on the module."
   ::= { memOutletConfigEntry 2 }

memOutletName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The name of the Outlet."
   ::= { memOutletConfigEntry 3 }

memOutletLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the Outlet."
   ::= { memOutletConfigEntry 4 }

memOutletNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      off      (1),
      on       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The state of the Outlet that will not generate an alarm."
   ::= { memOutletConfigEntry 5 }

memOutletAction OBJECT-TYPE
   SYNTAX INTEGER {
       turnOff      (1),
       turnOn       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Manual control actions for the Outlet.  Get displays state
         of outlet, set controls outlet."
   ::= { memOutletConfigEntry 6 }


-- MEM Beacon Status Table

memBeaconStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memBeaconStatusTable."
   ::= { memBeacons 1 }

memBeaconStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemBeaconStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting beacon status information."
   ::= { memBeacons 2 }

memBeaconStatusEntry OBJECT-TYPE
   SYNTAX MemBeaconStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memBeaconStatusModuleNumber, memBeaconStatusBeaconNumber }
   ::= { memBeaconStatusTable 1 }

MemBeaconStatusEntry ::=
   SEQUENCE {
      memBeaconStatusModuleNumber           INTEGER,
      memBeaconStatusBeaconNumber           INTEGER,
      memBeaconStatusBeaconName             DisplayString,
      memBeaconStatusBeaconLocation         DisplayString,
      memBeaconStatusCurrentState           INTEGER,
      memBeaconStatusAlarmState             INTEGER
   }

memBeaconStatusModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the beacon is attached to."
   ::= { memBeaconStatusEntry 1 }

memBeaconStatusBeaconNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this beacon on the module."
   ::= { memBeaconStatusEntry 2 }

memBeaconStatusBeaconName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The beacon name."
   ::= { memBeaconStatusEntry 3 }

memBeaconStatusBeaconLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the beacon."
   ::= { memBeaconStatusEntry 4 }

memBeaconStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      off          (1),
      on           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The state of the beacon."
   ::= { memBeaconStatusEntry 5 }

memBeaconStatusAlarmState OBJECT-TYPE
   SYNTAX INTEGER {
      memBeaconNormal     (1),
      memBeaconAbnormal   (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm state of the beacon."
   ::= { memBeaconStatusEntry 6 }

-- MEM Beacon Config Table

memBeaconConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memBeaconConfigTable."
   ::= { memBeacons 3 }

memBeaconConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemBeaconConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting beacon configuration information."
   ::= { memBeacons 4 }

memBeaconConfigEntry OBJECT-TYPE
   SYNTAX MemBeaconConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { memBeaconConfigModuleNumber, memBeaconConfigBeaconNumber }
   ::= { memBeaconConfigTable 1 }

MemBeaconConfigEntry ::=
   SEQUENCE {
      memBeaconConfigModuleNumber           INTEGER,
      memBeaconConfigBeaconNumber           INTEGER,
      memBeaconConfigName                   DisplayString,
      memBeaconConfigLocation               DisplayString,
      memBeaconAction                       INTEGER
   }

memBeaconConfigModuleNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the module that the beacon is attached to."
   ::= { memBeaconConfigEntry 1 }

memBeaconConfigBeaconNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of this beacon on the module."
   ::= { memBeaconConfigEntry 2 }

memBeaconConfigName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The name of the beacon."
   ::= { memBeaconConfigEntry 3 }

memBeaconConfigLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the beacon."
   ::= { memBeaconConfigEntry 4 }

memBeaconAction OBJECT-TYPE
   SYNTAX INTEGER {
      turnOff       (1),
      turnOn        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Control action (on/off) for the beacon. Setting this OID will turn the
         beacon on/off.  Getting this OID will respond with the current state."
   ::= { memBeaconConfigEntry 5 }

-- MEM INPUT STATE SENSOR TABLE

memSmokeSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memSmokeSensorStatusTable."
   ::= { memInputStateSensors 1 }

memSmokeSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemSmokeSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { memInputStateSensors 2 }

memSmokeSensorStatusEntry OBJECT-TYPE
   SYNTAX MemSmokeSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { memSmokeSensorStatusModuleIndex }
   ::= { memSmokeSensorStatusTable 1 }

MemSmokeSensorStatusEntry ::=
   SEQUENCE {
      memSmokeSensorStatusModuleIndex    INTEGER,
      memSmokeSensorStatusSensorIndex    INTEGER,
      memSmokeSensorStatusSensorName     DisplayString,
      memSmokeSensorStatusSensorLocation DisplayString,
      memSmokeSensorStatusSensorState    INTEGER,
      memSmokeSensorStatusSensorSeverity INTEGER,
      memSmokeStatusAlarmStatus          INTEGER,
      memSmokeSensorCommStatus           INTEGER
   }

memSmokeSensorStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the module entry."
   ::= { memSmokeSensorStatusEntry 1 }

memSmokeSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memSmokeSensorStatusEntry 2 }

memSmokeSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the smoke sensor."
   ::= { memSmokeSensorStatusEntry 3 }

memSmokeSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the smoke sensor."
   ::= { memSmokeSensorStatusEntry 4 }

memSmokeSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      smokeDetected       (1),
      noSmoke             (2),
      unknown             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the smoke sensor.
       smokeDetected (1) indicates there is smoke.
       noSmoke (2) indicates there is no smoke.
       unknown (3) indicates the state is unknown."
   ::= { memSmokeSensorStatusEntry 5}

memSmokeSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the smoke sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memSmokeSensorStatusEntry 6 }

memSmokeStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the smoke sensor."
   ::= { memSmokeSensorStatusEntry 7 }

memSmokeSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the smoke sensor."
   ::= { memSmokeSensorStatusEntry 8 }

memVibrationSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memVibrationSensorStatusTable."
   ::= { memInputStateSensors 3}

memVibrationSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemVibrationSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { memInputStateSensors 4 }

memVibrationSensorStatusEntry OBJECT-TYPE
   SYNTAX MemVibrationSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to access."
   INDEX  { memVibrationSensorStatusModuleIndex }
   ::= { memVibrationSensorStatusTable 1 }

MemVibrationSensorStatusEntry ::=
   SEQUENCE {
      memVibrationSensorStatusModuleIndex         INTEGER,
      memVibrationSensorStatusSensorIndex         INTEGER,
      memVibrationSensorStatusSensorName          DisplayString,
      memVibrationSensorStatusSensorLocation      DisplayString,
      memVibrationSensorStatusSensorState         INTEGER,
      memVibrationSensorStatusSensorSeverity      INTEGER,
      memVibrationStatusAlarmStatus               INTEGER,
      memVibrationSensorCommStatus                INTEGER
    }

memVibrationSensorStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memVibrationSensorStatusEntry 1 }

memVibrationSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memVibrationSensorStatusEntry 2 }

memVibrationSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the vibration sensor."
   ::= { memVibrationSensorStatusEntry 3 }

memVibrationSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the vibration sensor."
   ::= { memVibrationSensorStatusEntry 4 }

memVibrationSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      vibrationDetected       (1),
      noVibration             (2),
      unknown                 (3)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the vibration sensor.
       vibrationDetected (1) indicates there is vibration.
       noVibration (2) indicates there is no vibration.
       unknown (3) indicates the state is unknown."
   ::= { memVibrationSensorStatusEntry 5 }

memVibrationSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the vibration sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memVibrationSensorStatusEntry 6 }

memVibrationStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the vibration sensor."
   ::= { memVibrationSensorStatusEntry 7 }

memVibrationSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the vibration sensor."
   ::= { memVibrationSensorStatusEntry 8 }


memFluidSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memFluidSensorStatusTable."
   ::= { memInputStateSensors 5}

memFluidSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemFluidSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual sensors."
   ::= { memInputStateSensors 6 }

memFluidSensorStatusEntry OBJECT-TYPE
   SYNTAX MemFluidSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { memFluidSensorStatusModuleIndex }
   ::= { memFluidSensorStatusTable 1 }

MemFluidSensorStatusEntry ::=
   SEQUENCE {
      memFluidSensorStatusModuleIndex       INTEGER,
      memFluidSensorStatusSensorIndex       INTEGER,
      memFluidSensorStatusSensorName        DisplayString,
      memFluidSensorStatusSensorLocation    DisplayString,
      memFluidSensorStatusSensorState       INTEGER,
      memFluidSensorStatusSensorSeverity    INTEGER,
      memFluidStatusAlarmStatus             INTEGER,
      memFluidSensorCommStatus              INTEGER
   }

memFluidSensorStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memFluidSensorStatusEntry 1 }

memFluidSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memFluidSensorStatusEntry 2 }

memFluidSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the fluid sensor."
   ::= { memFluidSensorStatusEntry 3 }

memFluidSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the fluid sensor."
   ::= { memFluidSensorStatusEntry 4 }

memFluidSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      fluidDetected       (1),
      noFluid             (2),
      unknown             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the fluid sensor.
       fluidDetected (1) indicates there is fluid leak.
       noFluid (2) indicates there is no fluid leak.
       unknown (3) indicates the state is unknown."
   ::= { memFluidSensorStatusEntry 5 }

memFluidSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the fluid sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memFluidSensorStatusEntry 6 }

memFluidStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the fluid sensor."
   ::= { memFluidSensorStatusEntry 7 }

memFluidSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the fluid sensor."
   ::= { memFluidSensorStatusEntry 8 }

memDoorSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the memDoorSensorStatusTable."
   ::= { memInputStateSensors 7}

memDoorSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemDoorSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { memInputStateSensors 8}

memDoorSensorStatusEntry OBJECT-TYPE
   SYNTAX MemDoorSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { memDoorSensorStatusModuleIndex }
   ::= { memDoorSensorStatusTable 1 }

MemDoorSensorStatusEntry ::=
   SEQUENCE {
      memDoorSensorStatusModuleIndex       INTEGER,
      memDoorSensorStatusSensorIndex       INTEGER,
      memDoorSensorStatusSensorName        DisplayString,
      memDoorSensorStatusSensorLocation    DisplayString,
      memDoorSensorStatusSensorState       INTEGER,
      memDoorSensorStatusSensorSeverity    INTEGER,
      memDoorStatusAlarmStatus             INTEGER,
      memDoorSensorCommStatus              INTEGER
   }

memDoorSensorStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memDoorSensorStatusEntry 1 }

memDoorSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memDoorSensorStatusEntry 2 }

memDoorSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the door sensor."
   ::= { memDoorSensorStatusEntry 3 }

memDoorSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the door sensor."
   ::= { memDoorSensorStatusEntry 4 }

memDoorSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      open       (1),
      closed     (2),
      unknown    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the door sensor.
       open (1) indicates door open.
       closed (2) indicates door closed.
       unknown (3) indicates the state is unknown."
   ::= { memDoorSensorStatusEntry 5 }

memDoorSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the door sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memDoorSensorStatusEntry 6 }

memDoorStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      memNormal(1),
      memWarning(2),
      memCritical(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the door sensor."
   ::= { memDoorSensorStatusEntry 7 }

memDoorSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the door sensor."
   ::= { memDoorSensorStatusEntry 8 }

-- MEM Input State sensor config
memSmokeSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemSmokeSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { memInputStateSensors 9 }

memSmokeSensorConfigEntry OBJECT-TYPE
   SYNTAX MemSmokeSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { memSmokeSensorConfigSensorModuleIndex }
   ::= { memSmokeSensorConfigTable 1 }

MemSmokeSensorConfigEntry ::=
   SEQUENCE {
      memSmokeSensorConfigSensorModuleIndex INTEGER,
      memSmokeSensorConfigSensorIndex       INTEGER,
      memSmokeSensorConfigSensorName        DisplayString,
      memSmokeSensorConfigSensorLocation    DisplayString,
      memSmokeSensorConfigSensorSeverity    INTEGER,
      memSmokeSensorConfigAlarmGeneration   INTEGER
   }

memSmokeSensorConfigSensorModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memSmokeSensorConfigEntry 1 }

memSmokeSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memSmokeSensorConfigEntry 2 }

memSmokeSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the smoke sensor."
   ::= { memSmokeSensorConfigEntry 3 }

memSmokeSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the smoke sensor."
   ::= { memSmokeSensorConfigEntry 4 }

memSmokeSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the smoke sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memSmokeSensorConfigEntry 5 }

memSmokeSensorConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this input."
   ::= { memSmokeSensorConfigEntry 6 }

memVibrationSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemVibrationSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { memInputStateSensors 10 }

memVibrationSensorConfigEntry OBJECT-TYPE
   SYNTAX MemVibrationSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to configure."
   INDEX  { memVibrationSensorModuleConfigIndex }
   ::= { memVibrationSensorConfigTable 1 }

MemVibrationSensorConfigEntry ::=
   SEQUENCE {
      memVibrationSensorModuleConfigIndex INTEGER,
      memVibrationSensorConfigSensorIndex       INTEGER,
      memVibrationSensorConfigSensorName        DisplayString,
      memVibrationSensorConfigSensorLocation    DisplayString,
      memVibrationSensorConfigSensorSeverity    INTEGER,
      memVibrationSensorConfigAlarmGeneration   INTEGER
    }

memVibrationSensorModuleConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memVibrationSensorConfigEntry 1 }

memVibrationSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memVibrationSensorConfigEntry 2 }

memVibrationSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the vibration sensor."
   ::= { memVibrationSensorConfigEntry 3 }

memVibrationSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the vibration sensor."
   ::= { memVibrationSensorConfigEntry 4 }

memVibrationSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the vibration sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memVibrationSensorConfigEntry 5 }

memVibrationSensorConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this input."
   ::= { memVibrationSensorConfigEntry 6 }

memFluidSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemFluidSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { memInputStateSensors 11 }

memFluidSensorConfigEntry OBJECT-TYPE
   SYNTAX MemFluidSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to configure."
   INDEX  { memFluidSensorModuleConfigIndex }
   ::= { memFluidSensorConfigTable 1 }

MemFluidSensorConfigEntry ::=
   SEQUENCE {
      memFluidSensorModuleConfigIndex       INTEGER,
      memFluidSensorConfigSensorIndex       INTEGER,
      memFluidSensorConfigSensorName        DisplayString,
      memFluidSensorConfigSensorLocation    DisplayString,
      memFluidSensorConfigSensorSeverity    INTEGER,
      memFluidSensorConfigAlarmGeneration   INTEGER
   }

memFluidSensorModuleConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memFluidSensorConfigEntry 1 }

memFluidSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memFluidSensorConfigEntry 2 }

memFluidSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the fluid sensor."
   ::= { memFluidSensorConfigEntry 3 }

memFluidSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the fluid sensor."
   ::= { memFluidSensorConfigEntry 4 }

memFluidSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the fluid sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memFluidSensorConfigEntry 5 }

memFluidSensorConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this input."
   ::= { memFluidSensorConfigEntry 6 }

memDoorSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF MemDoorSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { memInputStateSensors 12 }

memDoorSensorConfigEntry OBJECT-TYPE
   SYNTAX MemDoorSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { memDoorSensorModuleConfigIndex }
   ::= { memDoorSensorConfigTable 1 }

MemDoorSensorConfigEntry ::=
   SEQUENCE {
      memDoorSensorModuleConfigIndex INTEGER,
      memDoorSensorConfigSensorIndex       INTEGER,
      memDoorSensorConfigSensorName        DisplayString,
      memDoorSensorConfigSensorLocation    DisplayString,
      memDoorSensorConfigSensorSeverity    INTEGER,
      memDoorSensorConfigAlarmGeneration   INTEGER
    }

memDoorSensorModuleConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor module entry."
   ::= { memDoorSensorConfigEntry 1 }

memDoorSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { memDoorSensorConfigEntry 2 }

memDoorSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the door sensor."
   ::= { memDoorSensorConfigEntry 3 }

memDoorSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the door sensor."
   ::= { memDoorSensorConfigEntry 4 }

memDoorSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the door sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { memDoorSensorConfigEntry 5 }

memDoorSensorConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation on this input."
   ::= { memDoorSensorConfigEntry 6 }

-- WIRELESS Table

wirelessSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF WirelessSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { wirelessSensorStatus 1 }

wirelessSensorStatusEntry OBJECT-TYPE
   SYNTAX WirelessSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of wireless sensor status table entries."
   INDEX  { wirelessSensorStatusIndex }
   ::= { wirelessSensorStatusTable 1 }

WirelessSensorStatusEntry ::=
   SEQUENCE {
    wirelessSensorStatusIndex                INTEGER,
    wirelessSensorStatusExtAddr              DisplayString,
    wirelessSensorStatusName                 DisplayString,
    wirelessSensorStatusAlarmGeneration      INTEGER,
    wirelessSensorStatusTemperature          INTEGER,
    wirelessSensorStatusHighTempThresh       INTEGER,
    wirelessSensorStatusLowTempThresh        INTEGER,
    wirelessSensorStatusHumidity             INTEGER,
    wirelessSensorStatusHighHumidityThresh   INTEGER,
    wirelessSensorStatusLowHumidityThresh    INTEGER,
    wirelessSensorStatusCommStatus           INTEGER,
    wirelessSensorStatusMaxTempThresh        INTEGER,
    wirelessSensorStatusMinTempThresh        INTEGER,
    wirelessSensorStatusMaxHumidityThresh    INTEGER,
    wirelessSensorStatusMinHumidityThresh    INTEGER,
    wirelessSensorStatusBattery              INTEGER,
    wirelessSensorStatusLowBatteryThresh     INTEGER,
    wirelessSensorStatusMinBatteryThresh     INTEGER,
    wirelessSensorStatusRssi                 INTEGER,
    wirelessSensorStatusLowRssiThresh        INTEGER,
    wirelessSensorStatusMinRssiThresh        INTEGER,
    wirelessSensorStatusLocation             DisplayString,
    wirelessSensorStatusAlarmStatus          INTEGER
   }

wirelessSensorStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { wirelessSensorStatusEntry 1 }

wirelessSensorStatusExtAddr   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The extended address is the combination of the unique 10 byte
      MAC address of the sensor concatenated with its short address."
   ::= { wirelessSensorStatusEntry 2 }

wirelessSensorStatusName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the wireless sensor."
   ::= { wirelessSensorStatusEntry 3 }

wirelessSensorStatusAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (0),
      enabled          (1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Indicates whether alarm generation is enabled or disabled for the sensor."
   ::= { wirelessSensorStatusEntry 4 }

wirelessSensorStatusTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current temperature are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorStatusEntry 5 }

wirelessSensorStatusHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorStatusEntry 6 }

wirelessSensorStatusLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorStatusEntry 7 }

wirelessSensorStatusHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 8 }

wirelessSensorStatusHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 9 }

wirelessSensorStatusLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 10 }


wirelessSensorStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      inactive(0),
      active(1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the wireless sensor.
      inactive(0) indicates sensor is in the wireless network but not sending information.
      active(1) indicates wireless sensor is live and sending information."
   ::= { wirelessSensorStatusEntry 11 }

wirelessSensorStatusMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorStatusEntry 12 }

wirelessSensorStatusMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorStatusEntry 13 }

wirelessSensorStatusMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 14 }

wirelessSensorStatusMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 15 }

wirelessSensorStatusBattery OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorStatusEntry 16 }

wirelessSensorStatusLowBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorStatusEntry 17 }

wirelessSensorStatusMinBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorStatusEntry 18 }

wirelessSensorStatusRssi OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 19 }

wirelessSensorStatusLowRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 20 }

wirelessSensorStatusMinRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorStatusEntry 21 }

wirelessSensorStatusLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
       "A user-defined string identifying the location
       of the wireless sensor."
   ::= { wirelessSensorStatusEntry 22 }

wirelessSensorStatusAlarmStatus   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The alarm status of the wireless sensor.  This integer should be interpreted
       as a bit map, with each bit representing the presence or absence of
       the specific alarm conditions listed below.  The bit will be '1' if
       the condition is present, and '0' if the condition is not present.

       Bit  Hex. Value  Description
       1    0x0001      Maximum temperature exceeded.
       2    0x0002      High temperature exceeded.
       3    0x0004      Low temperature exceeded.
       4    0x0008      Minimum temperature exceeded.
       5    0x0010      Maximum humidity exceeded.
       6    0x0020      High humidity exceeded.
       7    0x0040      Low humidity exceeded.
       8    0x0080      Minimum humidity exceeded.
       9    0x0100      Low battery exceeded.
       10   0x0200      Minimum battery exceeded.
       11   0x0400      Low signal strength exceeded.
       12   0x0800      Minimum signal strength exceeded.
       13   0x1000      Sensor inactive."
   ::= { wirelessSensorStatusEntry 23 }

-- Sensor pod Status

wirelessSensorPodStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF WirelessSensorPodStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual pod sensors."
   ::= { wirelessSensorPodStatus 1 }

wirelessSensorPodStatusEntry OBJECT-TYPE
   SYNTAX WirelessSensorPodStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor pod to access."
   INDEX  { wirelessSensorPodStatusIndex }
   ::= { wirelessSensorPodStatusTable 1 }

WirelessSensorPodStatusEntry ::=
   SEQUENCE {
    wirelessSensorPodStatusIndex                INTEGER,
    wirelessSensorPodPortIndex                  INTEGER,
    wirelessSensorPodStatusExtAddr              DisplayString,
    wirelessSensorPodStatusName                 DisplayString,
    wirelessSensorPodStatusAlarmGeneration      INTEGER,
    wirelessSensorPodStatusTemperature          INTEGER,
    wirelessSensorPodStatusHighTempThresh       INTEGER,
    wirelessSensorPodStatusLowTempThresh        INTEGER,
    wirelessSensorPodStatusHumidity             INTEGER,
    wirelessSensorPodStatusHighHumidityThresh   INTEGER,
    wirelessSensorPodStatusLowHumidityThresh    INTEGER,
    wirelessSensorPodStatusCommStatus           INTEGER,
    wirelessSensorPodStatusMaxTempThresh        INTEGER,
    wirelessSensorPodStatusMinTempThresh        INTEGER,
    wirelessSensorPodStatusMaxHumidityThresh    INTEGER,
    wirelessSensorPodStatusMinHumidityThresh    INTEGER,
    wirelessSensorPodStatusDryContactState      INTEGER,
    wirelessSensorPodStatusDryContactNormalState INTEGER,
    wirelessSensorPodStatusBattery              INTEGER,
    wirelessSensorPodStatusLowBatteryThresh     INTEGER,
    wirelessSensorPodStatusMinBatteryThresh     INTEGER,
    wirelessSensorPodStatusRssi                 INTEGER,
    wirelessSensorPodStatusLowRssiThresh        INTEGER,
    wirelessSensorPodStatusMinRssiThresh        INTEGER,
    wirelessSensorPodStatusLocation             DisplayString,
    wirelessSensorPodStatusAlarmStatus          INTEGER
   }

wirelessSensorPodStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the pod sensor entry."
   ::= { wirelessSensorPodStatusEntry 1 }

 wirelessSensorPodPortIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
            "The pod sensor port index."
       ::= { wirelessSensorPodStatusEntry 2 }

wirelessSensorPodStatusExtAddr   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The extended address is the combination of the unique 10 byte MAC address
      of the sensor concatenated with its short address."
   ::= { wirelessSensorPodStatusEntry 3 }


wirelessSensorPodStatusName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the sensor pod."
   ::= { wirelessSensorPodStatusEntry 4 }

wirelessSensorPodStatusAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (0),
      enabled          (1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Status of whether alarm generation is enabled or disabled."
   ::= { wirelessSensorPodStatusEntry 5 }

wirelessSensorPodStatusTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodStatusEntry 6 }

wirelessSensorPodStatusHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodStatusEntry 7 }

wirelessSensorPodStatusLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodStatusEntry 8 }

wirelessSensorPodStatusHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 9 }

wirelessSensorPodStatusHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 10 }

wirelessSensorPodStatusLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 11}


wirelessSensorPodStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      inactive(0),
      active(1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the wireless sensor.
      inactive(0) indicates pod sensor is in the wireless network but not sending information.
      active(1) indicates wireless sensor is live and sending information."
   ::= { wirelessSensorPodStatusEntry 12 }

wirelessSensorPodStatusMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodStatusEntry 13 }

wirelessSensorPodStatusMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodStatusEntry 14 }

wirelessSensorPodStatusMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 15 }

wirelessSensorPodStatusMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 16 }

wirelessSensorPodStatusDryContactState OBJECT-TYPE
   SYNTAX INTEGER {
      drycontactOpen      (0),
      drycontactClosed    (1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "State of the dry contact. If the dry contact is closed,
       the drycontactClosed (1) value will be returned. If the dry contact
       state is open, the drycontactOpen (0) value will be returned."
   ::= { wirelessSensorPodStatusEntry 17 }

wirelessSensorPodStatusDryContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyOpen           (0),
      normallyClosed         (1)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The normal state of the dry contact. If the normal state is closed,
       the normallyClosed (1) value will be returned. If the normal state is
       open, the normallyOpen (0) value will be returned."
   ::= { wirelessSensorPodStatusEntry 18 }

wirelessSensorPodStatusBattery OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorPodStatusEntry 19 }

wirelessSensorPodStatusLowBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorPodStatusEntry 20 }

wirelessSensorPodStatusMinBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorPodStatusEntry 21 }

wirelessSensorPodStatusRssi OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 22 }

wirelessSensorPodStatusLowRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 23 }

wirelessSensorPodStatusMinRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodStatusEntry 24 }

wirelessSensorPodStatusLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The location of the wireless sensor pod."
   ::= { wirelessSensorPodStatusEntry 25 }

wirelessSensorPodStatusAlarmStatus   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The alarm status of the wireless pod sensor.  This integer should be interpreted
       as a bit map, with each bit representing the presence or absence of
       the specific alarm conditions listed below.  The bit will be '1' if
       the condition is present, and '0' if the condition is not present.

       Bit  Hex. Value  Description
       1    0x0001      Maximum temperature exceeded.
       2    0x0002      High temperature exceeded.
       3    0x0004      Low temperature exceeded.
       4    0x0008      Minimum temperature exceeded.
       5    0x0010      Maximum humidity exceeded.
       6    0x0020      High humidity exceeded.
       7    0x0040      Low humidity exceeded.
       8    0x0080      Minimum humidity exceeded.
       9    0x0100      Low battery exceeded.
       10   0x0200      Minimum battery exceeded.
       11   0x0400      Low signal strength exceeded.
       12   0x0800      Minimum signal strength exceeded.
       13   0x1000      Sensor inactive.
       14   0x2000      Dry contact in Critical state.
       15   0x4000      Dry contact in warning state."
   ::= { wirelessSensorPodStatusEntry 26 }

-- Sensor Config Table
wirelessSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF WirelessSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { wirelessSensorConfig 1 }

wirelessSensorConfigEntry   OBJECT-TYPE
   SYNTAX WirelessSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to configure."
   INDEX  { wirelessSensorConfigIndex }
   ::= { wirelessSensorConfigTable 1 }

WirelessSensorConfigEntry ::=
   SEQUENCE {
      wirelessSensorConfigIndex                INTEGER,
      wirelessSensorConfigName                 DisplayString,
      wirelessSensorConfigAlarmGeneration      INTEGER,
      wirelessSensorConfigHighTempThresh       INTEGER,
      wirelessSensorConfigLowTempThresh        INTEGER,
      wirelessSensorConfigHighHumidityThresh   INTEGER,
      wirelessSensorConfigLowHumidityThresh    INTEGER,
      wirelessSensorConfigMaxTempThresh        INTEGER,
      wirelessSensorConfigMinTempThresh        INTEGER,
      wirelessSensorConfigMaxHumidityThresh    INTEGER,
      wirelessSensorConfigMinHumidityThresh    INTEGER,
      wirelessSensorConfigLowBatteryThresh     INTEGER,
      wirelessSensorConfigMinBatteryThresh     INTEGER,
      wirelessSensorConfigLowRssiThresh        INTEGER,
      wirelessSensorConfigMinRssiThresh        INTEGER,
      wirelessSensorConfigLocation             DisplayString
   }

wirelessSensorConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the entry."
   ::= { wirelessSensorConfigEntry 1 }

wirelessSensorConfigName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user-defined wireless sensor ID string."
   ::= { wirelessSensorConfigEntry 2 }

wirelessSensorConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (0),
      enabled          (1)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation for this sensor."
   ::= { wirelessSensorConfigEntry 3 }

wirelessSensorConfigHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorConfigEntry 4 }

wirelessSensorConfigLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorConfigEntry 5 }

wirelessSensorConfigHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 6 }

wirelessSensorConfigLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 7 }

wirelessSensorConfigMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorConfigEntry 8 }

wirelessSensorConfigMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorConfigEntry 9 }

wirelessSensorConfigMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 10 }

wirelessSensorConfigMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 11 }

wirelessSensorConfigLowBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorConfigEntry 12 }

wirelessSensorConfigMinBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorConfigEntry 13 }

wirelessSensorConfigLowRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 14 }

wirelessSensorConfigMinRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorConfigEntry 15 }

wirelessSensorConfigLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "A user-defined string identifying the location of the
      wireless sensor. Maximum text input is 20 characters."
   ::= { wirelessSensorConfigEntry 16 }

-- Sensor pod config Table
wirelessSensorPodConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF WirelessSensorPodConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { wirelessSensorPodConfig 1 }

wirelessSensorPodConfigEntry OBJECT-TYPE
   SYNTAX WirelessSensorPodConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to configure."
   INDEX  { wirelessSensorPodConfigIndex, wirelessSensorPodConfigPortIndex }
   ::= { wirelessSensorPodConfigTable 1 }

WirelessSensorPodConfigEntry ::=
   SEQUENCE {
      wirelessSensorPodConfigIndex                 INTEGER,
      wirelessSensorPodConfigPortIndex             INTEGER,
      wirelessSensorPodConfigName                  DisplayString,
      wirelessSensorPodConfigAlarmGeneration       INTEGER,
      wirelessSensorPodConfigDryContactNormalState INTEGER,
      wirelessSensorPodConfigHighTempThresh        INTEGER,
      wirelessSensorPodConfigLowTempThresh         INTEGER,
      wirelessSensorPodConfigHighHumidityThresh    INTEGER,
      wirelessSensorPodConfigLowHumidityThresh     INTEGER,
      wirelessSensorPodConfigMaxTempThresh         INTEGER,
      wirelessSensorPodConfigMinTempThresh         INTEGER,
      wirelessSensorPodConfigMaxHumidityThresh     INTEGER,
      wirelessSensorPodConfigMinHumidityThresh     INTEGER,
      wirelessSensorPodConfigLowBatteryThresh      INTEGER,
      wirelessSensorPodConfigMinBatteryThresh      INTEGER,
      wirelessSensorPodConfigLowRssiThresh         INTEGER,
      wirelessSensorPodConfigMinRssiThresh         INTEGER,
      wirelessSensorPodConfigLocation              DisplayString
   }

wirelessSensorPodConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the entry."
   ::= { wirelessSensorPodConfigEntry 1 }

wirelessSensorPodConfigPortIndex OBJECT-TYPE
       SYNTAX     INTEGER
       ACCESS     read-only
       STATUS     mandatory
       DESCRIPTION
             "The sensor pod port index."
       ::= { wirelessSensorPodConfigEntry 2 }

wirelessSensorPodConfigName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the sensor pod."
   ::= { wirelessSensorPodConfigEntry 3 }

wirelessSensorPodConfigAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (0),
      enabled          (1)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable alarm generation for this sensor."
   ::= { wirelessSensorPodConfigEntry 4 }

wirelessSensorPodConfigDryContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyOpen          (0),
      normallyClosed        (1)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "The normal state of the dry contact. If the normal state is closed,
       the normallyClosed (1) value will be returned. If the normal state is open,
       the normallyOpen (0) value will be returned. Setting this variable will change
       the normal state of the dry contact."
   ::= { wirelessSensorPodConfigEntry 5 }


wirelessSensorPodConfigHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodConfigEntry 6 }

wirelessSensorPodConfigLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodConfigEntry 7 }

wirelessSensorPodConfigHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 8 }

wirelessSensorPodConfigLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 9 }

wirelessSensorPodConfigMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of degrees in the scale
      shown in the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodConfigEntry 10 }

wirelessSensorPodConfigMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { wirelessSensorPodConfigEntry 11 }

wirelessSensorPodConfigMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 12 }

wirelessSensorPodConfigMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 13 }

wirelessSensorPodConfigLowBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorPodConfigEntry 14 }

wirelessSensorPodConfigMinBatteryThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are displayed in tenths of Volts DC."
   ::= { wirelessSensorPodConfigEntry 15 }

wirelessSensorPodConfigLowRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 16 }

wirelessSensorPodConfigMinRssiThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Values are represented in whole number percentage."
   ::= { wirelessSensorPodConfigEntry 17 }

wirelessSensorPodConfigLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "A user-defined string identifying the location of the
      wireless pod sensor. Maximum text input is 20 characters."
   ::= { wirelessSensorPodConfigEntry 18 }

-- Integrated Environmental Monitor (IEM)

iemIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the Integrated Environmental
       Monitor."
   ::= { iemIdent 1 }

iemConfigProbesNumProbes OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of temperature and humidity probes available."
   ::= { iemConfig 1 }

iemConfigProbesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemConfigProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of probes supported by the Environmental Monitor
       and their configurations."
   ::= { iemConfig 2 }

iemConfigProbesEntry OBJECT-TYPE
   SYNTAX IemConfigProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Environmental Monitor probe configurations."
   INDEX  { iemConfigProbeNumber }
   ::= { iemConfigProbesTable 1 }

IemConfigProbesEntry ::=
   SEQUENCE {
      iemConfigProbeNumber
         INTEGER,
      iemConfigProbeName
         DisplayString,
      iemConfigProbeHighTempThreshold
         INTEGER,
      iemConfigProbeLowTempThreshold
         INTEGER,
      iemConfigProbeTempUnits
         INTEGER,
      iemConfigProbeHighHumidThreshold
         INTEGER,
      iemConfigProbeLowHumidThreshold
         INTEGER,
      iemConfigProbeHighTempEnable
         INTEGER,
      iemConfigProbeLowTempEnable
         INTEGER,
      iemConfigProbeHighHumidEnable
         INTEGER,
      iemConfigProbeLowHumidEnable
         INTEGER,
      iemConfigProbeMaxTempThreshold
         INTEGER,
      iemConfigProbeMinTempThreshold
         INTEGER,
      iemConfigProbeMaxHumidThreshold
         INTEGER,
      iemConfigProbeMinHumidThreshold
         INTEGER,
      iemConfigProbeMaxTempEnable
         INTEGER,
      iemConfigProbeMinTempEnable
         INTEGER,
      iemConfigProbeMaxHumidEnable
         INTEGER,
      iemConfigProbeMinHumidEnable
         INTEGER,
      iemConfigProbeTempHysteresis
         INTEGER,
      iemConfigProbeHumidHysteresis
         INTEGER,
      iemConfigProbeLocation
         DisplayString
   }

iemConfigProbeNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to a Environmental Monitor probe entry."
   ::= { iemConfigProbesEntry 1 }

iemConfigProbeName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the probe set by the user,
       possibly denoting its location or purpose."
   ::= { iemConfigProbesEntry 2 }

iemConfigProbeHighTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature alarm threshold for the probe.
       Units are displayed in the scale selected in the
       'iemConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 3 }

iemConfigProbeLowTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm threshold for the probe.
       Units are displayed in the scale selected in the
       'iemConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 4 }

iemConfigProbeTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       thresholds of the probe, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { iemConfigProbesEntry 5 }

iemConfigProbeHighHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { iemConfigProbesEntry 6 }

iemConfigProbeLowHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { iemConfigProbesEntry 7 }

iemConfigProbeHighTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 8 }

iemConfigProbeLowTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 9 }

iemConfigProbeHighHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 10 }

iemConfigProbeLowHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 11 }

iemConfigProbeMaxTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximun temperature alarm threshold for the probe.
       Units are displayed in the scale selected in the
       'iemConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 12 }

iemConfigProbeMinTempThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimun temperature alarm threshold for the probe.
       Units are displayed in the scale selected in the
       'iemConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 13 }

iemConfigProbeMaxHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { iemConfigProbesEntry 14 }

iemConfigProbeMinHumidThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity alarm threshold for the probe in
      percent relative humidity."
   ::= { iemConfigProbesEntry 15 }

iemConfigProbeMaxTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 16 }

iemConfigProbeMinTempEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 17 }

iemConfigProbeMaxHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 18 }

iemConfigProbeMinHumidEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity alarm enable/disable for the
       probe. No alarm will be generated if this value
       is set to disabled(1). The alarm will be
       generated if this value is set to enabled(2) and
       the threshold has been violated."
   ::= { iemConfigProbesEntry 19 }

iemConfigProbeTempHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of degrees beyond the temperature thresholds
       at which an active temperature alarm will be cleared.
       This configuration setting applies to all temperature
       thresholds.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 20 }

iemConfigProbeHumidHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of percent RH points beyond the humidity
       thresholds at which an active humidity alarm will be
       cleared. This configuration setting applies to all
       humidity thresholds.
       Units are displayed in the scale selected in
       the 'emConfigProbeTempUnits' OID (Celsius or Fahrenheit)."
   ::= { iemConfigProbesEntry 21 }

iemConfigProbeLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A string describing the location of the probe."
   ::= { iemConfigProbesEntry 22 }

iemConfigContactsNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts available on the Environmental
       Monitor."
   ::= { iemConfig 3 }

iemConfigContactsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemConfigContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the Environmental Monitor
       and their configurations."
   ::= { iemConfig 4 }

iemConfigContactsEntry OBJECT-TYPE
   SYNTAX IemConfigContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Environmental Monitor contact configurations."
   INDEX  { iemConfigContactNumber }
   ::= { iemConfigContactsTable 1 }

IemConfigContactsEntry ::=
   SEQUENCE {
       iemConfigContactNumber
           INTEGER,
       iemConfigContactName
           DisplayString,
       iemConfigContactEnable
           INTEGER,
       iemConfigContactSeverity
           INTEGER,
       iemConfigContactNormalState
           INTEGER,
       iemConfigContactLocation
           DisplayString
   }

iemConfigContactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an Environmental Monitor contact."
   ::= { iemConfigContactsEntry 1 }

iemConfigContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the Environmental Monitor contact
       set by the user, possibly denoting its location or purpose."
   ::= { iemConfigContactsEntry 2 }

iemConfigContactEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "An Environmental Monitor contact alarm enable/disable."
   ::= { iemConfigContactsEntry 3 }

iemConfigContactSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severtity of the alarm that will be triggered when
       the input contact is activated. The alarms can be
       critical(1), warning(2) or informational(3).
       NOTE: informational(3) is deprecated (and no longer valid) for this OID."
   ::= { iemConfigContactsEntry 4 }

iemConfigContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open(1),
      closed(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The contact state that will be considered normal, i.e.
      will not trigger an alarm. The states are open(1) or
      closed(2)."
   ::= { iemConfigContactsEntry 5 }

iemConfigContactLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive label for the contact denoting its
      location or purpose."
   ::= { iemConfigContactsEntry 6 }

iemConfigConfigRelaysNumRelays OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of output relays supported by the Environmental
      Monitor."
   ::= { iemConfig 5 }


iemConfigRelaysTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemConfigRelaysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of output relays supported by the Environmental Monitor
       and their configurations."
   ::= { iemConfig 6 }

iemConfigRelaysEntry OBJECT-TYPE
   SYNTAX IemConfigRelaysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The Environmental Monitor output relay configurations."
   INDEX  { iemConfigRelayNumber }
   ::= { iemConfigRelaysTable 1 }

IemConfigRelaysEntry ::=
   SEQUENCE {
      iemConfigRelayNumber
         INTEGER,
      iemConfigRelayName
         DisplayString,
      iemConfigRelayNormalState
         INTEGER,
      iemConfigRelayFaultCondition
         INTEGER
   }

iemConfigRelayNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of an Environmental Monitor output relay."
   ::= { iemConfigRelaysEntry 1 }

iemConfigRelayName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A descriptive name of an Environmental Monitor output relay,
      set by the user, describing its location or purpose."
   ::= { iemConfigRelaysEntry 2 }

iemConfigRelayNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open(1),
      closed(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state (non-fault state) of an Environmental
       Monitor output relay, either open(1) or closed(2)."
   ::= { iemConfigRelaysEntry 3 }

iemConfigRelayFaultCondition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fault condition used to activate the output relay."
   ::= { iemConfigRelaysEntry 4 }

iemStatusProbesNumProbes OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of available probes on the Environmental
       Monitor."
   ::= { iemStatus 1 }

iemStatusProbesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemStatusProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of probes supported by the Environmental Monitor
       and their status."
   ::= { iemStatus 2 }

iemStatusProbesEntry OBJECT-TYPE
   SYNTAX IemStatusProbesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The status of the probe."
   INDEX  { iemStatusProbeNumber }
   ::= { iemStatusProbesTable 1 }

IemStatusProbesEntry ::=
   SEQUENCE {
      iemStatusProbeNumber
         INTEGER,
      iemStatusProbeName
         DisplayString,
      iemStatusProbeStatus
         INTEGER,
      iemStatusProbeCurrentTemp
         INTEGER,
      iemStatusProbeTempUnits
         INTEGER,
      iemStatusProbeCurrentHumid
         INTEGER,
      iemStatusProbeHighTempViolation
         INTEGER,
      iemStatusProbeLowTempViolation
         INTEGER,
      iemStatusProbeHighHumidViolation
         INTEGER,
      iemStatusProbeLowHumidViolation
         INTEGER,
      iemStatusProbeMaxTempViolation
         INTEGER,
      iemStatusProbeMinTempViolation
         INTEGER,
      iemStatusProbeMaxHumidViolation
         INTEGER,
      iemStatusProbeMinHumidViolation
         INTEGER,
      iemStatusProbeLocation
         DisplayString
   }

iemStatusProbeNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the probe."
   ::= { iemStatusProbesEntry 1 }

iemStatusProbeName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the probe set by the user."
   ::= { iemStatusProbesEntry 2 }

iemStatusProbeStatus OBJECT-TYPE
   SYNTAX INTEGER {
      disconnected(1),
      connected(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The connected status of the probe, either
      disconnected(1) or connected(2)."
   ::= { iemStatusProbesEntry 3 }

iemStatusProbeCurrentTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current temperature reading from the probe displayed
       in the units shown in the 'iemStatusProbeTempUnits' OID
       (Celsius or Fahrenheit)."
   ::= { iemStatusProbesEntry 4 }

iemStatusProbeTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       thresholds of the probe, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { iemStatusProbesEntry 5 }

iemStatusProbeCurrentHumid OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current humidity reading from the probe in percent
      relative humidity."
   ::= { iemStatusProbesEntry 6 }

iemStatusProbeHighTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      highTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high temperature violation status of the probe
       temperature reading. This OID will show a highTempViolation(2)
       if the current temperature reading shown in the
       'iemStatusProbeCurrentTemp' OID is greater than or equal to
       the high temperature threshold value, the
       'iemConfigProbeHighTempThreshold' OID, and the value of the
       'iemConfigProbeHighTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'iemConfigProbeHighTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 7 }

iemStatusProbeLowTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      lowTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high temperature violation status of the probe
       temperature reading. This OID will show a lowTempViolation(2)
       if the current temperature reading shown in the
       'iemStatusProbeCurrentTemp' OID is less than or equal to
       the low temperature threshold value, the
       'iemConfigProbeLowTempThreshold' OID, and the value of the
       'iemPConfigrobeLowTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'iemConfigProbeLowTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 8 }

iemStatusProbeHighHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      highHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The high humidity violation status of the probe humidity
       reading. This OID will show a highTempViolation(2)
       if the current humidity reading shown in the
       'iemStatusProbeCurrentHumid' OID is greater than or equal to
       the high humidity threshold value, the
       'iemConfigProbeHighHumidThreshold' OID, and the value of the
       'iemConfigProbeHighHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1). If the 'iemConfigProbeHighHumidEnable' OID is
       disabled, this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 9 }

iemStatusProbeLowHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      lowHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The low humidity violation status of the probe humidity
       reading. This OID will show a lowTempViolation(2)
       if the current humidity reading shown in the
       'iemStatusProbeCurrentHumid' OID is less than or equal to
       the low humidity threshold value, the
       'iemConfigProbeLowHumidThreshold' OID, and the value of the
       'iemConfigProbeLowHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1). If the 'iemConfigProbeLowHumidEnable' OID is
       disabled, this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 10 }

iemStatusProbeMaxTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      maxTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The max temperature violation status of the probe
       temperature reading. This OID will show a maxTempViolation(2)
       if the current temperature reading shown in the
       'iemStatusProbeCurrentTemp' OID is greater than or equal to
       the maximun temperature threshold value, the
       'iemConfigProbeMaxTempThreshold' OID, and the value of the
       'iemConfigProbeMaxTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'iemConfigProbeMaxTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 11 }

iemStatusProbeMinTempViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      minTempViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature violation status of the probe
       temperature reading. This OID will show a minTempViolation(2)
       if the current temperature reading shown in the
       'iemStatusProbeCurrentTemp' OID is less than or equal to
       the minimum temperature threshold value, the
       'iemConfigProbeMinTempThreshold' OID, and the value of the
       'iemConfigProbeMinTempEnable' OID is enabled. Otherwise it will show
       noViolation(1). If the 'iemConfigProbeMinTempEnable' OID is disabled,
       this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 12 }

iemStatusProbeMaxHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      maxHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity violation status of the probe humidity
       reading. This OID will show a maxTempViolation(2)
       if the current humidity reading shown in the
       'iemStatusProbeCurrentHumid' OID is greater than or equal to
       the maximum humidity threshold value, the
       'iemConfigProbeMaxHumidThreshold' OID, and the value of the
       'iemConfigProbeMaxHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1).  If the 'iemConfigProbeMaxHumidEnable' OID is
       disabled, this OID will show disabled(3)"
   ::= { iemStatusProbesEntry 13 }

iemStatusProbeMinHumidViolation OBJECT-TYPE
   SYNTAX INTEGER {
      noViolation(1),
      minHumidViolation(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity violation status of the probe humidity
       reading. This OID will show a minTempViolation(2)
       if the current humidity reading shown in the
       'iemStatusProbeCurrentHumid' OID is less than or equal to
       the minimum humidity threshold value, the
       'iemConfigProbeMinHumidThreshold' OID, and the value of the
       'iemConfigProbeMinHumidEnable' OID is enabled. Otherwise it will
       show noViolation(1). If the 'iemConfigProbeMinHumidEnable' OID is
       disabled, this OID will show disabled(3)."
   ::= { iemStatusProbesEntry 14 }

iemStatusProbeLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive location for the probe set by the user."
   ::= { iemStatusProbesEntry 15 }

iemStatusContactsNumContacts OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of contacts supported on the
       Environmental Monitor."
   ::= { iemStatus 3 }

iemStatusContactsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemStatusContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of contacts supported by the Environmental Monitor
       and their status."
   ::= { iemStatus 4 }

iemStatusContactsEntry OBJECT-TYPE
   SYNTAX IemStatusContactsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The status of the contact."
   INDEX  { iemStatusContactNumber }
   ::= { iemStatusContactsTable 1 }

IemStatusContactsEntry ::=
   SEQUENCE {
      iemStatusContactNumber
         INTEGER,
      iemStatusContactName
         DisplayString,
      iemStatusContactStatus
         INTEGER
   }

iemStatusContactNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the Environmental Monitor contact."
   ::= { iemStatusContactsEntry 1 }

iemStatusContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the Environmental Monitor contact
       set by the user, denoting its location or purpose."
   ::= { iemStatusContactsEntry 2 }

iemStatusContactStatus OBJECT-TYPE
   SYNTAX INTEGER {
      noFault(1),
      fault(2),
      disabled(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the Environmental Monitor contact. The status
       will show noFault(1) if the contact is in the normal state
       and the 'iemConfigContactEnable' OID is enabled. The status will
       show a fault(2) if the contact is faulted and the
       'iemConfigContactEnable' OID is enabled. If the
       'iemConfigContactEnable' OID is disabled, the status will show
       disabled(3)."
   ::= { iemStatusContactsEntry 3 }

iemStatusRelaysNumRelays OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of output relays supported on the
       Environmental Monitor."
   ::= { iemStatus 6 }

iemStatusRelaysTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IemStatusRelaysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "A list of output relays supported by the
       Environmental Monitor and their status."
   ::= { iemStatus 7 }

iemStatusRelaysEntry OBJECT-TYPE
   SYNTAX IemStatusRelaysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The status of the relay."
   INDEX  { iemStatusRelayNumber }
   ::= { iemStatusRelaysTable 1 }

IemStatusRelaysEntry ::=
   SEQUENCE {
      iemStatusRelayNumber
         INTEGER,
      iemStatusRelayName
         DisplayString,
      iemStatusRelayStatus
         INTEGER
   }

iemStatusRelayNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { iemStatusRelaysEntry 1 }

iemStatusRelayName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A descriptive name for the output relay set by the
       user, denoting its location or purpose."
   ::= { iemStatusRelaysEntry 2 }

iemStatusRelayStatus OBJECT-TYPE
   SYNTAX INTEGER {
      faultState(1),
      normalState(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the output relay, either faultState(1) or
      normalState(2)."
   ::= { iemStatusRelaysEntry 3 }

-- Environmental Management System (EMS)

--  EMS IDENT

emsIdentEMSName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       device. "
   ::= { emsIdent 1 }

emsIdentProductNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of
       the device. This value is set at the factory."
   ::= { emsIdent 2 }

emsIdentFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The firmware revision of the device."
   ::= { emsIdent 3 }

emsIdentHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the device.
       This value is set at the factory."
   ::= { emsIdent 4 }

emsIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the device was manufactured in mm/dd/yyyy format.
       This value is set at the factory. "
   ::= { emsIdent 5 }

emsIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of
       the device. This value is set at the factory."
   ::= { emsIdent 6 }

--  EMS CONTROL

-- EMS OUTPUT RELAY CONTROL STATUS TABLE

emsOutputRelayControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsOutputRelayControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual output relays. The number of
       entries is contained in the emsStatusOutputRelayCount OID."
   ::= { emsOutputRelayControl 1 }

emsOutputRelayControlEntry OBJECT-TYPE
   SYNTAX EmsOutputRelayControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relays to control."
   INDEX  { emsOutputRelayControlOutputRelayIndex }
   ::= { emsOutputRelayControlTable 1 }

EmsOutputRelayControlEntry ::=
   SEQUENCE {
      emsOutputRelayControlOutputRelayIndex   INTEGER,
      emsOutputRelayControlOutputRelayName    DisplayString,
      emsOutputRelayControlOutputRelayCommand INTEGER
   }

emsOutputRelayControlOutputRelayIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the output relay entry."
   ::= { emsOutputRelayControlEntry 1 }

emsOutputRelayControlOutputRelayName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the output relay.
       This OID is provided for informational purposes only."
   ::= { emsOutputRelayControlEntry 2 }

emsOutputRelayControlOutputRelayCommand OBJECT-TYPE
   SYNTAX INTEGER {
      immediateCloseEMS           (1),
      immediateOpenEMS            (2)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the output relay state. If
       the output relay is closed, the immediateCloseEMS (1) value will be returned.
       If the output relay is open, the immediateOpenEMS (2) value will be
       returned.

       Setting this variable to immediateCloseEMS (1) will immediately close the relay.

       Setting this variable to immediateOpenEMS (2) will immediately open the relay."
   ::= { emsOutputRelayControlEntry 3 }

-- EMS OUTLET CONTROL TABLE

emsOutletControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual outlet switches. The number of
       entries is contained in the emsStatusOutletCount OID."
   ::= { emsOutletControl 1 }

emsOutletControlEntry OBJECT-TYPE
   SYNTAX EmsOutletControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to control."
   INDEX  { emsOutletControlOutletIndex }
   ::= { emsOutletControlTable 1 }

EmsOutletControlEntry ::=
   SEQUENCE {
      emsOutletControlOutletIndex   INTEGER,
      emsOutletControlOutletName    DisplayString,
      emsOutletControlOutletCommand INTEGER
   }

emsOutletControlOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { emsOutletControlEntry 1 }

emsOutletControlOutletName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet.
       This OID is provided for informational purposes only."
   ::= { emsOutletControlEntry 2 }

emsOutletControlOutletCommand OBJECT-TYPE
   SYNTAX INTEGER {
      immediateOnEMS             (1),
      immediateOffEMS            (2)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the outlet state. If
       the outlet is on, the immediateOnEMS (1) value will be returned.
       If the outlet is off, the immediateOffEMS (2) value will be
       returned.

       Setting this variable to immediateOnEMS (1) will immediately turn the outlet on.

       Setting this variable to immediateOffEMS (2) will immediately turn the outlet off."
   ::= { emsOutletControlEntry 3 }

-- EMS SENSOR CONTROL TABLE

emsSensorControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSSensorControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control/reset of individual sensors. The number of
       entries is contained in the emsStatusSensorCount OID."
   ::= { emsSensorControl 1 }

emsSensorControlEntry OBJECT-TYPE
   SYNTAX EMSSensorControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to control/reset."
   INDEX  { emsSensorControlSensorIndex }
   ::= { emsSensorControlTable 1 }

EMSSensorControlEntry ::=
   SEQUENCE {
      emsSensorControlSensorIndex         INTEGER,
      emsSensorControlSensorSystemName    DisplayString,
      emsSensorControlSensorUserName      DisplayString,
      emsSensorControlSensorCommand       INTEGER
   }

emsSensorControlSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsSensorControlEntry 1 }

emsSensorControlSensorSystemName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The system name of the sensor.  This describes the hardware system
       intent of this sensor."
   ::= { emsSensorControlEntry 2 }

emsSensorControlSensorUserName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the sensor as given by the system user."
   ::= { emsSensorControlEntry 3 }

emsSensorControlSensorCommand OBJECT-TYPE
   SYNTAX INTEGER {
      noCommandEMS        (1),
      resetCommandEMS     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return noCommandEMS(1).

       Setting this variable to resetCommandEMS(2) will issue a reset command to the
       sensor.  Some sensors cannot be manually reset and will not be affected
       by this command."
   ::= { emsSensorControlEntry 4 }

-- EMS ALARM DEVICE CONTROL TABLE

emsAlarmDeviceControlTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsAlarmDeviceControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for control of individual alarm devices.
       Note: Some alarm devices are not controllable.  The number of
       entries is contained in the emsStatusAlarmDeviceCount OID."
   ::= { emsAlarmDeviceControl 1 }

emsAlarmDeviceControlEntry OBJECT-TYPE
   SYNTAX EmsAlarmDeviceControlEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The alarm devices to control."
   INDEX  { emsAlarmDeviceControlDeviceIndex }
   ::= { emsAlarmDeviceControlTable 1 }

EmsAlarmDeviceControlEntry ::=
   SEQUENCE {
      emsAlarmDeviceControlDeviceIndex   INTEGER,
      emsAlarmDeviceControlDeviceName    DisplayString,
      emsAlarmDeviceControlDeviceCommand INTEGER
   }

emsAlarmDeviceControlDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the alarm device entry."
   ::= { emsAlarmDeviceControlEntry 1 }

emsAlarmDeviceControlDeviceName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the alarm device.
       This OID is provided for informational purposes only."
   ::= { emsAlarmDeviceControlEntry 2 }

emsAlarmDeviceControlDeviceCommand OBJECT-TYPE
   SYNTAX INTEGER {
      alarmDeviceOnEMS             (1),
      alarmDeviceOffEMS            (2),
      alarmDeviceNotInstalledEMS   (3)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the device state. If
       the device is active, the alarmDeviceOnEMS (1) value will be returned.
       If the device is inactive, the alarmDeviceOffEMS (2) value will be
       returned. If the device is not installed, the
       alarmDeviceNotInstalledEMS (3) value will be returned.

       Actions resulting from setting this variable are device-dependent.

       Setting this variable to alarmDeviceOnEMS (1) will turn that device (ex. Beacon) on.
       Setting this variable to alarmDeviceOffEMS (2) will turn that device off."

   ::= { emsAlarmDeviceControlEntry 3 }


--  EMS CONFIG

emsConfigName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the device."
   ::= { emsConfig 1 }

emsConfigCheckLogLight   OBJECT-TYPE
   SYNTAX INTEGER       {
      lightDisabled          (1),
      lightOnInformational   (2),
      lightOnWarning         (3),
      lightOnSevere          (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The setting of this OID determines the level of event that will
       trigger the check-log light on the EMS. This is not available on the EMU2.

      lightDisabled (1) disables the check-log light.
      lightOnInformational (2) lights check-log for any event of
        informational severity or above.
      lightOnWarning (3) lights check-log for any event of
        warning severity or above.
      lightOnSevere (4) lights check-log for any event of severe severity."

   ::= { emsConfig 2 }

-- EMS PROBE CONFIG TABLE

emsProbeConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSProbeConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual probes. The number of
       entries is contained in the emsStatusProbeCount OID."
   ::= { emsProbeConfig 1 }

emsProbeConfigEntry OBJECT-TYPE
   SYNTAX EMSProbeConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The probes to configure."
   INDEX  { emsProbeConfigProbeIndex }
   ::= { emsProbeConfigTable 1 }

EMSProbeConfigEntry ::=
   SEQUENCE {
      emsProbeConfigProbeIndex                INTEGER,
      emsProbeConfigProbeName                 DisplayString,
      emsProbeConfigProbeHighTempThresh       INTEGER,
      emsProbeConfigProbeLowTempThresh        INTEGER,
      emsProbeConfigProbeHighHumidityThresh   INTEGER,
      emsProbeConfigProbeLowHumidityThresh    INTEGER,
      emsProbeConfigProbeMaxTempThresh        INTEGER,
      emsProbeConfigProbeMinTempThresh        INTEGER,
      emsProbeConfigProbeDeltaTemp            INTEGER,
      emsProbeConfigProbeMaxHumidityThresh    INTEGER,
      emsProbeConfigProbeMinHumidityThresh    INTEGER,
      emsProbeConfigProbeDeltaHumidity        INTEGER,
      emsProbeConfigProbeSTIncTempVariance    INTEGER,
      emsProbeConfigProbeSTIncTempTime        INTEGER,
      emsProbeConfigProbeSTDecTempVariance    INTEGER,
      emsProbeConfigProbeSTDecTempTime        INTEGER,
      emsProbeConfigProbeLTIncTempVariance    INTEGER,
      emsProbeConfigProbeLTIncTempTime        INTEGER,
      emsProbeConfigProbeLTDecTempVariance    INTEGER,
      emsProbeConfigProbeLTDecTempTime        INTEGER
   }

emsProbeConfigProbeIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the probe entry."
   ::= { emsProbeConfigEntry 1 }

emsProbeConfigProbeName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the probe."
   ::= { emsProbeConfigEntry 2 }

emsProbeConfigProbeHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe high temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 3 }

emsProbeConfigProbeLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe low temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 4 }

emsProbeConfigProbeHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe high humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeConfigEntry 5 }

emsProbeConfigProbeLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe low humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeConfigEntry 6 }

emsProbeConfigProbeMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe maximum temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 7 }

emsProbeConfigProbeMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe minimum temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 8 }

emsProbeConfigProbeDeltaTemp OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe delta temperature.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 9 }

emsProbeConfigProbeMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe maximum humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeConfigEntry 10 }

emsProbeConfigProbeMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe minimum humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeConfigEntry 11 }

emsProbeConfigProbeDeltaHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe delta humidity.

      Values are represented in whole number percentage."
   ::= { emsProbeConfigEntry 12 }

emsProbeConfigProbeSTIncTempVariance OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe short-term increasing temperature variance used for rate of change alarms.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 13 }

emsProbeConfigProbeSTIncTempTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe short-term increasing temperature time used for rate of change alarms.

      Values are represented in whole number minutes."
   ::= { emsProbeConfigEntry 14 }

emsProbeConfigProbeSTDecTempVariance OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe short-term decreasing temperature variance used for rate of change alarms.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 15 }

emsProbeConfigProbeSTDecTempTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe short-term decreasing temperature time used for rate of change alarms.

      Values are represented in whole number minutes."
   ::= { emsProbeConfigEntry 16 }

emsProbeConfigProbeLTIncTempVariance OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe long-term increasing temperature variance used for rate of change alarms.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 17 }

emsProbeConfigProbeLTIncTempTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe long-term increasing temperature time used for rate of change alarms.

      Values are represented in whole number hours."
   ::= { emsProbeConfigEntry 18 }

emsProbeConfigProbeLTDecTempVariance OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe long-term decreasing temperature variance used for rate of change alarms.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeConfigEntry 19 }

emsProbeConfigProbeLTDecTempTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Probe long-term decreasing temperature time used for rate of change alarms.

      Values are represented in whole number hours."
   ::= { emsProbeConfigEntry 20 }


-- EMS INPUT CONTACT CONFIG STATUS TABLE

emsInputContactConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual input contacts. The number of
       entries is contained in the emsStatusInputContactCount OID."
   ::= { emsInputContactConfig 1 }

emsInputContactConfigEntry OBJECT-TYPE
   SYNTAX EMSInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contacts to configure."
   INDEX  { emsInputContactConfigInputContactIndex }
   ::= { emsInputContactConfigTable 1 }

EMSInputContactConfigEntry ::=
   SEQUENCE {
      emsInputContactConfigInputContactIndex         INTEGER,
      emsInputContactConfigInputContactName          DisplayString,
      emsInputContactConfigInputContactNormalState   INTEGER
   }

emsInputContactConfigInputContactIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the input contact entry."
   ::= { emsInputContactConfigEntry 1 }

emsInputContactConfigInputContactName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the input contact."
   ::= { emsInputContactConfigEntry 2 }

emsInputContactConfigInputContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS        (1),
      normallyOpenEMS          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the input contact. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is closed, the normallyOpenEMS (2) value will be
       returned.

       Setting this variable will change the normal state of the input contact"
   ::= { emsInputContactConfigEntry 3 }

-- EMS OUTPUT RELAY CONFIG STATUS TABLE

emsOutputRelayConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual output relays. The number of
       entries is contained in the emsStatusOutputRelayCount OID."
   ::= { emsOutputRelayConfig 1 }

emsOutputRelayConfigEntry OBJECT-TYPE
   SYNTAX EMSOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relays to configure."
   INDEX  { emsOutputRelayConfigOutputRelayIndex }
   ::= { emsOutputRelayConfigTable 1 }

EMSOutputRelayConfigEntry ::=
   SEQUENCE {
      emsOutputRelayConfigOutputRelayIndex          INTEGER,
      emsOutputRelayConfigOutputRelayName           DisplayString,
      emsOutputRelayConfigOutputRelayNormalState    INTEGER
   }

emsOutputRelayConfigOutputRelayIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the output relay entry."
   ::= { emsOutputRelayConfigEntry 1 }

emsOutputRelayConfigOutputRelayName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the output relay."
   ::= { emsOutputRelayConfigEntry 2 }

emsOutputRelayConfigOutputRelayNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS        (1),
      normallyOpenEMS          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the output relay. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is closed, the normallyOpenEMS (2) value will be
       returned.

       Setting this variable will change the normal state of the output relay"
   ::= { emsOutputRelayConfigEntry 3 }

-- EMS OUTLET CONFIG TABLE

emsOutletConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual outlets. The number of
       entries is contained in the emsStatusOutletCount OID."
   ::= { emsOutletConfig 1 }

emsOutletConfigEntry OBJECT-TYPE
   SYNTAX EMSOutletConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to configure."
   INDEX  { emsOutletConfigOutletIndex }
   ::= { emsOutletConfigTable 1 }

EMSOutletConfigEntry ::=
   SEQUENCE {
      emsOutletConfigOutletIndex          INTEGER,
      emsOutletConfigOutletName           DisplayString,
      emsOutletConfigOutletNormalState    INTEGER
   }

emsOutletConfigOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { emsOutletConfigEntry 1 }

emsOutletConfigOutletName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet."
   ::= { emsOutletConfigEntry 2 }

emsOutletConfigOutletNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyOnEMS             (1),
      normallyOffEMS            (2)
   }

   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the outlet. If
       the normal state is on, the normallyOnEMS (1) value will be returned.
       If the normal state is off, the normallyOffEMS (2) value will be
       returned.

       Setting this variable will change the normal state of the outlet"
   ::= { emsOutletConfigEntry 3 }

-- EMS SENSOR CONFIG TABLE

emsSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of individual sensors. The number of
       entries is contained in the emsStatusSensorCount OID."
   ::= { emsSensorConfig 1 }

emsSensorConfigEntry OBJECT-TYPE
   SYNTAX EMSSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { emsSensorConfigSensorIndex }
   ::= { emsSensorConfigTable 1 }

EMSSensorConfigEntry ::=
   SEQUENCE {
      emsSensorConfigSensorIndex         INTEGER,
      emsSensorConfigSensorSystemName    DisplayString,
      emsSensorConfigSensorUserName      DisplayString,
      emsSensorConfigSensorNormalState   INTEGER,
      emsSensorConfigSensorAlarmDelay    INTEGER
   }

emsSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsSensorConfigEntry 1 }

emsSensorConfigSensorSystemName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The system name of the sensor.  This describes the hardware system
       intent of this sensor."
   ::= { emsSensorConfigEntry 2 }

emsSensorConfigSensorUserName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the sensor as given by the system user."
   ::= { emsSensorConfigEntry 3 }

emsSensorConfigSensorNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS        (1),
      normallyOpenEMS          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the sensor. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is closed, the normallyOpenEMS (2) value will be
       returned.

       Setting this variable will change the normal state of the sensor.  Note:
       Only the AUX sensor in the EMS has a configurable Normal State"
   ::= { emsSensorConfigEntry 4 }

emsSensorConfigSensorAlarmDelay   OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The delay (in seconds) after a sensor detects an alarm condition before the
       condition is reported."
   ::= { emsSensorConfigEntry 5 }

--  EMS STATUS
--- EMS MASTER status

emsStatusEMSName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       device. "
   ::= { emsStatus 1 }

emsStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      noComm(1),
      comm(2),
      commLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status between the agent
       and the device.

       noComm(1),   Communication has never been established.
       comm(2),     Communication has been established.
       commLost(3), Communication was established, but was lost."
   ::= { emsStatus 2 }

emsStatusProbeCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of T/H probes (both local and remote) that
       is supported by this device."
   ::= { emsStatus 3 }

emsStatusInputContactCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of Input Contacts that
       is supported by this device."
   ::= { emsStatus 4 }

emsStatusOutputRelayCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of Output Relays that
       is supported by this device."
   ::= { emsStatus 5 }

emsStatusOutletCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of  AC Outlets that
       is supported by this device."
   ::= { emsStatus 6 }

emsStatusSensorCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of Sensors that
       is supported by this device."
   ::= { emsStatus 7 }

emsStatusAlinkAruDeviceCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of remote Aru's supported by this device."
   ::= { emsStatus 8 }

emsStatusAlinkProbeDeviceCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of remote T/H probes supported by this device."
   ::= { emsStatus 9 }

emsStatusAlarmDeviceCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of alarm devices supported by this device."
   ::= { emsStatus 10 }

emsStatusSysTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       in the system, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { emsStatus 11 }

emsStatusCheckLogLight   OBJECT-TYPE
   SYNTAX INTEGER       {
      lightOff         (1),
      lightOn          (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the check-log light on the device.
      For the EMU2, this will always indicate lightOff(1).

      lightOff (1) indicates the light is off (no new log entries).
      lightOn (2) indicates the light is on (new log entries present)."

   ::= { emsStatus 12 }

emsStatusHardwareStatus   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the EMS hardware.  This integer should be interpreted
       as a bit map, with each bit representing the presence or absence of
       a specific hardware error condition.

       0 indicates there are no error conditions detected in the EMS hardware.
       1 indicates a Current Limit error condition related to the Alink port.
       2 indicates incorrect hardware is plugged into an EMS port.
       3 indicates that both of these error conditions are present."

   ::= { emsStatus 13 }

-- EMS PROBE STATUS TABLE

emsProbeStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSProbeStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual probes. The number of
       entries is contained in the emsStatusProbeCount OID."
   ::= { emsProbeStatus 1 }

emsProbeStatusEntry OBJECT-TYPE
   SYNTAX EMSProbeStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The probes to access."
   INDEX  { emsProbeStatusProbeIndex }
   ::= { emsProbeStatusTable 1 }

EMSProbeStatusEntry ::=
   SEQUENCE {
      emsProbeStatusProbeIndex                INTEGER,
      emsProbeStatusProbeName                 DisplayString,
      emsProbeStatusProbeTemperature          INTEGER,
      emsProbeStatusProbeHighTempThresh       INTEGER,
      emsProbeStatusProbeLowTempThresh        INTEGER,
      emsProbeStatusProbeHumidity             INTEGER,
      emsProbeStatusProbeHighHumidityThresh   INTEGER,
      emsProbeStatusProbeLowHumidityThresh    INTEGER,
      emsProbeStatusProbeSerialNumber         DisplayString,
      emsProbeStatusProbeCommStatus           INTEGER,
      emsProbeStatusProbeAlarmStatus          INTEGER,
      emsProbeStatusProbeMaxTempThresh        INTEGER,
      emsProbeStatusProbeMinTempThresh        INTEGER,
      emsProbeStatusProbeMaxHumidityThresh    INTEGER,
      emsProbeStatusProbeMinHumidityThresh    INTEGER
   }

emsProbeStatusProbeIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the probe entry."
   ::= { emsProbeStatusEntry 1 }

emsProbeStatusProbeName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the probe."
   ::= { emsProbeStatusEntry 2 }

emsProbeStatusProbeTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe temperature reading.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeStatusEntry 3 }

emsProbeStatusProbeHighTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe high temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeStatusEntry 4 }

emsProbeStatusProbeLowTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe low temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeStatusEntry 5 }

emsProbeStatusProbeHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe humidity reading.

      Values are represented in whole number percentage."
   ::= { emsProbeStatusEntry 6 }

emsProbeStatusProbeHighHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe high humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeStatusEntry 7 }

emsProbeStatusProbeLowHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe low humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeStatusEntry 8 }

emsProbeStatusProbeSerialNumber   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "A label indicating the type (Local[L] or Remote[R]) and Number
       of the probe.  For example, the first local probe would be L1 and
       the third remote probe would be R3."
   ::= { emsProbeStatusEntry 9 }

emsProbeStatusProbeCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commsNeverDiscovered(1),
      commsEstablished(2),
      commsLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      " The state of communications to the probe.
      commNeverDiscovered(1) indicates there has never been communications with this device.
      commsEstablished(2) indicates communication is normal and active with this device.
      commsLost(3) indicates communication had been established, but is no longer."
   ::= { emsProbeStatusEntry 10 }

emsProbeStatusProbeAlarmStatus   OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The alarm status of the probe.  This integer should be interpreted
       as a bit map, with each bit representing the presence or absence of
       the specific alarm conditions listed below.  The bit will be '1' if
       the condition is present, and '0' if the condition is not present.

       Bit  Hex. Value  Description
       1    0x0001      Maximum temperature exceeded.
       2    0x0002      High temperature exceeded.
       3    0x0004      Low temperature exceeded.
       4    0x0008      Minimum temperature exceeded.
       5    0x0010      Short-term increasing temperature rate exceeded.
       6    0x0020      Short-term decreasing temperature rate exceeded.
       7    0x0040      Long-term increasing temperature rate exceeded.
       8    0x0080      Long-term decreasing temperature rate exceeded.
       9    0x0100      Maximum humidity exceeded.
       10   0x0200      High humidity exceeded.
       11   0x0400      Low humidity exceeded.
       12   0x0800      Minimum humidity exceeded."
   ::= { emsProbeStatusEntry 11 }

emsProbeStatusProbeMaxTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe maximum temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeStatusEntry 12 }

emsProbeStatusProbeMinTempThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe minimum temperature threshold.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the emsStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { emsProbeStatusEntry 13 }

emsProbeStatusProbeMaxHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe maximum humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeStatusEntry 14 }

emsProbeStatusProbeMinHumidityThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Probe minimum humidity threshold.

      Values are represented in whole number percentage."
   ::= { emsProbeStatusEntry 15 }


-- EMS INPUT CONTACT STATUS TABLE

emsInputContactStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual input contacts. The number of
       entries is contained in the emsStatusInputContactCount OID."
   ::= { emsInputContactStatus 1 }

emsInputContactStatusEntry OBJECT-TYPE
   SYNTAX EMSInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contacts to access."
   INDEX  { emsInputContactStatusInputContactIndex }
   ::= { emsInputContactStatusTable 1 }

EMSInputContactStatusEntry ::=
   SEQUENCE {
      emsInputContactStatusInputContactIndex         INTEGER,
      emsInputContactStatusInputContactName          DisplayString,
      emsInputContactStatusInputContactState         INTEGER,
      emsInputContactStatusInputContactNormalState   INTEGER
   }

emsInputContactStatusInputContactIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the input contact entry."
   ::= { emsInputContactStatusEntry 1 }

emsInputContactStatusInputContactName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the input contact."
   ::= { emsInputContactStatusEntry 2 }

emsInputContactStatusInputContactState OBJECT-TYPE
   SYNTAX INTEGER {
      contactClosedEMS         (1),
      contactOpenEMS           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the state of the input contact. If
       the input contact is closed, the contactClosedEMS (1) value will be returned.
       If the input contact state is open, the contactOpenEMS (2) value will be
       returned. "

   ::= { emsInputContactStatusEntry 3 }

emsInputContactStatusInputContactNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS         (1),
      normallyOpenEMS           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the input contact. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is open, the normallyOpenEMS (2) value will be
       returned. "

   ::= { emsInputContactStatusEntry 4 }


-- EMS OUTPUT RELAY STATUS TABLE

emsOutputRelayStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual output relays. The number of
       entries is contained in the emsStatusOutputRelayCount OID."
   ::= { emsOutputRelayStatus 1 }

emsOutputRelayStatusEntry OBJECT-TYPE
   SYNTAX EMSOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relays to access."
   INDEX  { emsOutputRelayStatusOutputRelayIndex }
   ::= { emsOutputRelayStatusTable 1 }

EMSOutputRelayStatusEntry ::=
   SEQUENCE {
      emsOutputRelayStatusOutputRelayIndex          INTEGER,
      emsOutputRelayStatusOutputRelayName           DisplayString,
      emsOutputRelayStatusOutputRelayState          INTEGER,
      emsOutputRelayStatusOutputRelayNormalState    INTEGER
   }

emsOutputRelayStatusOutputRelayIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the output relay entry."
   ::= { emsOutputRelayStatusEntry 1 }

emsOutputRelayStatusOutputRelayName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the output relay."
   ::= { emsOutputRelayStatusEntry 2 }

emsOutputRelayStatusOutputRelayState OBJECT-TYPE
   SYNTAX INTEGER {
      relayClosedEMS         (1),
      relayOpenEMS           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the state of the output relay. If
       the output relay is closed, the relayClosedEMS (1) value will be returned.
       If the output relay is open, the relayOpenEMS (2) value will be
       returned. "

   ::= { emsOutputRelayStatusEntry 3 }

emsOutputRelayStatusOutputRelayNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS         (1),
      normallyOpenEMS           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the output relay. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is open, the normallyOpenEMS (2) value will be
       returned. "

   ::= { emsOutputRelayStatusEntry 4 }

-- EMS OUTLET STATUS TABLE

emsOutletStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual outlets. The number of
       entries is contained in the emsStatusOutletCount OID."
   ::= { emsOutletStatus 1 }

emsOutletStatusEntry OBJECT-TYPE
   SYNTAX EMSOutletStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The outlets to access."
   INDEX  { emsOutletStatusOutletIndex }
   ::= { emsOutletStatusTable 1 }

EMSOutletStatusEntry ::=
   SEQUENCE {
      emsOutletStatusOutletIndex          INTEGER,
      emsOutletStatusOutletName           DisplayString,
      emsOutletStatusOutletState          INTEGER,
      emsOutletStatusOutletNormalState    INTEGER
   }

emsOutletStatusOutletIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the outlet entry."
   ::= { emsOutletStatusEntry 1 }

emsOutletStatusOutletName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the outlet."
   ::= { emsOutletStatusEntry 2 }

emsOutletStatusOutletState OBJECT-TYPE
   SYNTAX INTEGER {
      outletOnEMS             (1),
      outletOffEMS            (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the state of the outlet. If
       the outlet is on, the outletOnEMS (1) value will be returned.
       If the outlet is off, the outletOffEMS (2) value will be
       returned. "

   ::= { emsOutletStatusEntry 3 }

emsOutletStatusOutletNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyOnEMS             (1),
      normallyOffEMS            (2)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the outlet. If
       the normal state is on, the normallyOnEMS (1) value will be returned.
       If the normal state is off, the normallyOffEMS (2) value will be
       returned. "

   ::= { emsOutletStatusEntry 4 }

-- EMS ALARM DEVICE STATUS TABLE

emsAlarmDeviceStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSAlarmDeviceStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual alarm devices. The number of
       entries is contained in the emsStatusAlarmDeviceCount OID."
   ::= { emsAlarmDeviceStatus 1 }

emsAlarmDeviceStatusEntry OBJECT-TYPE
   SYNTAX EMSAlarmDeviceStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The alarm devices to access."
   INDEX  { emsAlarmDeviceStatusDeviceIndex }
   ::= { emsAlarmDeviceStatusTable 1 }

EMSAlarmDeviceStatusEntry ::=
   SEQUENCE {
      emsAlarmDeviceStatusDeviceIndex   INTEGER,
      emsAlarmDeviceStatusDeviceName    DisplayString,
      emsAlarmDeviceStatusDeviceState   INTEGER
   }

emsAlarmDeviceStatusDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the alarm device entry."
   ::= { emsAlarmDeviceStatusEntry 1 }

emsAlarmDeviceStatusDeviceName    OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the alarm device.
       This OID is provided for informational purposes only."
   ::= { emsAlarmDeviceStatusEntry 2 }

emsAlarmDeviceStatusDeviceState OBJECT-TYPE
   SYNTAX INTEGER {
      alarmDeviceOnEMS             (1),
      alarmDeviceOffEMS            (2),
      alarmDeviceNotInstalledEMS   (3)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the device state. If
       the device is active, the alarmDeviceOnEMS (1) value will be returned.
       If the device is inactive, the alarmDeviceOffEMS (2) value will be
       returned.  If the device is not installed, the
       alarmDeviceNotInstalledEMS (3) value will be returned."

   ::= { emsAlarmDeviceStatusEntry 3 }


-- EMS SENSOR STATUS TABLE

emsSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EMSSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for access of individual sensors. The number of
       entries is contained in the emsStatusSensorCount OID."
   ::= { emsSensorStatus 1 }

emsSensorStatusEntry OBJECT-TYPE
   SYNTAX EMSSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to access."
   INDEX  { emsSensorStatusSensorIndex }
   ::= { emsSensorStatusTable 1 }

EMSSensorStatusEntry ::=
   SEQUENCE {
      emsSensorStatusSensorIndex         INTEGER,
      emsSensorStatusSensorSystemName    DisplayString,
      emsSensorStatusSensorName          DisplayString,
      emsSensorStatusSensorState         INTEGER,
      emsSensorStatusSensorNormalState   INTEGER,
      emsSensorStatusSensorAlarmDelay    INTEGER
   }

emsSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsSensorStatusEntry 1 }

emsSensorStatusSensorSystemName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The system name of the sensor.  This describes the hardware system
       intent of this sensor."
   ::= { emsSensorStatusEntry 2 }

emsSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the sensor as given by the system user."
   ::= { emsSensorStatusEntry 3 }

emsSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      sensorFaultedEMS       (1),
      sensorOKEMS            (2),
      sensorNotInstalledEMS  (3)
   }

   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the sensor state. If the sensor is faulted,
       the sensorFaultedEMS (1) value will be returned.
       If the sensor is not faulted, the sensorOKEMS (2) value will be
       returned. If the sensor is not installed, the  sensorNotInstalledEMS (3)
       value will be returned."
   ::= { emsSensorStatusEntry 4 }

emsSensorStatusSensorNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      normallyClosedEMS        (1),
      normallyOpenEMS          (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Getting this variable will return the normal state of the sensor. If
       the normal state is closed, the normallyClosedEMS (1) value will be returned.
       If the normal state is closed, the normallyOpenEMS (2) value will be
       returned."
   ::= { emsSensorStatusEntry 5 }

emsSensorStatusSensorAlarmDelay   OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The delay (in seconds) after a sensor detects an alarm condition before the
       condition is reported."
   ::= { emsSensorStatusEntry 6 }

-- EMS INPUT STATE SENSOR CONFIG TABLE
emsSmokeSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsSmokeSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION

      "Allows for the configuration of individual sensors."
   ::= { emsInputStateSensorConfig 1 }

emsSmokeSensorConfigEntry OBJECT-TYPE
   SYNTAX EmsSmokeSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { emsSmokeSensorConfigSensorIndex }
   ::= { emsSmokeSensorConfigTable 1 }

EmsSmokeSensorConfigEntry ::=
   SEQUENCE {
      emsSmokeSensorConfigSensorIndex     INTEGER,
      emsSmokeSensorConfigSensorName      DisplayString,
      emsSmokeSensorConfigSensorLocation  DisplayString,
      emsSmokeSensorConfigSensorSeverity  INTEGER
   }

emsSmokeSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsSmokeSensorConfigEntry 1 }

emsSmokeSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the smoke sensor."
   ::= { emsSmokeSensorConfigEntry 2 }

emsSmokeSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the smoke sensor."
   ::= { emsSmokeSensorConfigEntry 3 }

emsSmokeSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the smoke sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsSmokeSensorConfigEntry 4 }

emsVibrationSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsVibrationSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { emsInputStateSensorConfig 2 }

emsVibrationSensorConfigEntry OBJECT-TYPE
   SYNTAX EmsVibrationSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { emsVibrationSensorConfigSensorIndex }
   ::= { emsVibrationSensorConfigTable 1 }

EmsVibrationSensorConfigEntry ::=
   SEQUENCE {
      emsVibrationSensorConfigSensorIndex     INTEGER,
      emsVibrationSensorConfigSensorName      DisplayString,
      emsVibrationSensorConfigSensorLocation  DisplayString,
      emsVibrationSensorConfigSensorSeverity  INTEGER
    }

emsVibrationSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsVibrationSensorConfigEntry 1 }

emsVibrationSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the vibration sensor."
   ::= { emsVibrationSensorConfigEntry 2 }

emsVibrationSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the vibration sensor."
   ::= { emsVibrationSensorConfigEntry 3 }

emsVibrationSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the  vibration sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsVibrationSensorConfigEntry 4 }

emsFluidSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsFluidSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { emsInputStateSensorConfig 3 }

emsFluidSensorConfigEntry OBJECT-TYPE
   SYNTAX EmsFluidSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { emsFluidSensorConfigSensorIndex }
   ::= { emsFluidSensorConfigTable 1 }

EmsFluidSensorConfigEntry ::=
   SEQUENCE {
      emsFluidSensorConfigSensorIndex     INTEGER,
      emsFluidSensorConfigSensorName      DisplayString,
      emsFluidSensorConfigSensorLocation  DisplayString,
      emsFluidSensorConfigSensorSeverity  INTEGER
   }

emsFluidSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsFluidSensorConfigEntry 1 }

emsFluidSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the fluid sensor."
   ::= { emsFluidSensorConfigEntry 2 }

emsFluidSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the fluid sensor."
   ::= { emsFluidSensorConfigEntry 3 }


emsFluidSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the fluid sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsFluidSensorConfigEntry 4 }

emsDoorSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsDoorSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the configuration of individual sensors."
   ::= { emsInputStateSensorConfig 4 }

emsDoorSensorConfigEntry OBJECT-TYPE
   SYNTAX EmsDoorSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to configure."
   INDEX  { emsDoorSensorConfigSensorIndex }
   ::= { emsDoorSensorConfigTable 1 }

EmsDoorSensorConfigEntry ::=
   SEQUENCE {
      emsDoorSensorConfigSensorIndex     INTEGER,
      emsDoorSensorConfigSensorName      DisplayString,
      emsDoorSensorConfigSensorLocation  DisplayString,
      emsDoorSensorConfigSensorSeverity  INTEGER
    }

emsDoorSensorConfigSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsDoorSensorConfigEntry 1 }

emsDoorSensorConfigSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the door sensor."
   ::= { emsDoorSensorConfigEntry 2 }

emsDoorSensorConfigSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the door sensor."
   ::= { emsDoorSensorConfigEntry 3 }

emsDoorSensorConfigSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the  door sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsDoorSensorConfigEntry 4 }

--EMS INPUT STATE SENSOR STATUS TABLE

emsSmokeSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the emsSmokeSensorStatusTable."
   ::= { emsInputStateSensorStatus 1 }

emsSmokeSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsSmokeSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { emsInputStateSensorStatus 2 }

emsSmokeSensorStatusEntry OBJECT-TYPE
   SYNTAX EmsSmokeSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { emsSmokeSensorStatusSensorIndex }
   ::= { emsSmokeSensorStatusTable 1 }

EmsSmokeSensorStatusEntry ::=
   SEQUENCE {
      emsSmokeSensorStatusSensorIndex     INTEGER,
      emsSmokeSensorStatusSensorName      DisplayString,
      emsSmokeSensorStatusSensorLocation  DisplayString,
      emsSmokeSensorStatusSensorState     INTEGER,
      emsSmokeSensorStatusSensorSeverity  INTEGER,
      emsSmokeSensorCommStatus            INTEGER

   }

emsSmokeSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsSmokeSensorStatusEntry 1 }

emsSmokeSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the smoke sensor."
   ::= { emsSmokeSensorStatusEntry 2 }

emsSmokeSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the smoke sensor."
   ::= { emsSmokeSensorStatusEntry 3 }

emsSmokeSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      smokeDetected       (1),
      noSmoke             (2),
      unknown             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the smoke sensor.
       smokeDetected (1) indicates there is smoke.
       noSmoke (2) indicates there is no smoke.
       unknown (3) indicates the state is unknown."
   ::= { emsSmokeSensorStatusEntry 4 }

emsSmokeSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the smoke sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsSmokeSensorStatusEntry 5 }

emsSmokeSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the smoke sensor."
   ::= { emsSmokeSensorStatusEntry 6 }

emsVibrationSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the emsVibrationSensorStatusTable."
   ::= { emsInputStateSensorStatus 3}

emsVibrationSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsVibrationSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { emsInputStateSensorStatus 4 }

emsVibrationSensorStatusEntry OBJECT-TYPE
   SYNTAX EmsVibrationSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { emsVibrationSensorStatusSensorIndex }
   ::= { emsVibrationSensorStatusTable 1 }

EmsVibrationSensorStatusEntry ::=
   SEQUENCE {
      emsVibrationSensorStatusSensorIndex     INTEGER,
      emsVibrationSensorStatusSensorName      DisplayString,
      emsVibrationSensorStatusSensorLocation  DisplayString,
      emsVibrationSensorStatusSensorState     INTEGER,
      emsVibrationSensorStatusSensorSeverity  INTEGER,
      emsVibrationSensorCommStatus            INTEGER
    }

emsVibrationSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsVibrationSensorStatusEntry 1 }

emsVibrationSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the vibration sensor."
   ::= { emsVibrationSensorStatusEntry 2 }

emsVibrationSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the vibration sensor."
   ::= { emsVibrationSensorStatusEntry 3 }

emsVibrationSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      vibrationDetected       (1),
      noVibration             (2),
      unknown                 (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the vibration sensor.
       vibrationDetected (1) indicates there is vibration.
       noVibration (2) indicates there is no vibration.
       unknown (3) indicates the state is unknown."
   ::= { emsVibrationSensorStatusEntry 4 }

emsVibrationSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the vibration sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsVibrationSensorStatusEntry 5 }

emsVibrationSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the vibration sensor."
   ::= { emsVibrationSensorStatusEntry 6 }

emsFluidSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the emsFluidSensorStatusTable."
   ::= { emsInputStateSensorStatus 5}

emsFluidSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsFluidSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { emsInputStateSensorStatus 6 }

emsFluidSensorStatusEntry OBJECT-TYPE
   SYNTAX EmsFluidSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensors to access."
   INDEX  { emsFluidSensorStatusSensorIndex }
   ::= { emsFluidSensorStatusTable 1 }

EmsFluidSensorStatusEntry ::=
   SEQUENCE {
      emsFluidSensorStatusSensorIndex      INTEGER,
      emsFluidSensorStatusSensorName       DisplayString,
      emsFluidSensorStatusSensorLocation   DisplayString,
      emsFluidSensorStatusSensorState      INTEGER,
      emsFluidSensorStatusSensorSeverity   INTEGER,
      emsFluidSensorCommStatus             INTEGER
   }

emsFluidSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsFluidSensorStatusEntry 1 }

emsFluidSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the fluid sensor."
   ::= { emsFluidSensorStatusEntry 2 }

emsFluidSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the fluid sensor."
   ::= { emsFluidSensorStatusEntry 3 }

emsFluidSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      fluidDetected       (1),
      noFluid             (2),
      unknown             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the fluid sensor.
       fluidDetected (1) indicates there is fluid leak.
       noFluid (2) indicates there is no fluid leak.
       unknown (3) indicates the state is unknown."
   ::= { emsFluidSensorStatusEntry 4 }

emsFluidSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the fluid sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsFluidSensorStatusEntry 5 }

emsFluidSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the fluid sensor."
   ::= { emsFluidSensorStatusEntry 6 }

emsDoorSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the emsDoorSensorStatusTable."
   ::= { emsInputStateSensorStatus 7}

emsDoorSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF EmsDoorSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for the access of individual sensors."
   ::= { emsInputStateSensorStatus 8}

emsDoorSensorStatusEntry OBJECT-TYPE
   SYNTAX EmsDoorSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor to access."
   INDEX  { emsDoorSensorStatusSensorIndex }
   ::= { emsDoorSensorStatusTable 1 }

EmsDoorSensorStatusEntry ::=
   SEQUENCE {
      emsDoorSensorStatusSensorIndex     INTEGER,
      emsDoorSensorStatusSensorName      DisplayString,
      emsDoorSensorStatusSensorLocation  DisplayString,
      emsDoorSensorStatusSensorState     INTEGER,
      emsDoorSensorStatusSensorSeverity  INTEGER,
      emsDoorSensorCommStatus            INTEGER
   }

emsDoorSensorStatusSensorIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the sensor entry."
   ::= { emsDoorSensorStatusEntry 1 }

emsDoorSensorStatusSensorName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined name of the door sensor."
   ::= { emsDoorSensorStatusEntry 2 }

emsDoorSensorStatusSensorLocation   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The user defined location of the door sensor."
   ::= { emsDoorSensorStatusEntry 3 }

emsDoorSensorStatusSensorState OBJECT-TYPE
   SYNTAX INTEGER {
      open        (1),
      closed      (2),
      unknown     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The state of the door sensor.
       open (1) indicates door open.
       closed (2) indicates door closed.
       unknown (3) indicates the state is unknown."
   ::= { emsDoorSensorStatusEntry 4 }

emsDoorSensorStatusSensorSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      critical(1),
      warning(2),
      informational(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The severity of the alarm that will be triggered when
       the door sensor is activated. The alarms can be
       critical(1), warning(2) or informational(3)."
   ::= { emsDoorSensorStatusEntry 5 }

emsDoorSensorCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commOK(1),
      commLost(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The communication status of the door sensor."
   ::= { emsDoorSensorStatusEntry 6 }



--  airFM AIR CONDITIONER IDENT

airFMIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device."
   ::= { airFMIdent 1 }

airFMIdentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMIdentTable. "
   ::= { airFMIdent 2 }

airFMIdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting identification information
       from each module in the system. "
   ::= { airFMIdent 3 }

airFMIdentEntry OBJECT-TYPE
   SYNTAX AirFMIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMIdentModuleIndex }
   ::= { airFMIdentTable 1 }

AirFMIdentEntry ::=
   SEQUENCE {
      airFMIdentModuleIndex            INTEGER,
      airFMIdentModuleModelNumber      DisplayString,
      airFMIdentModuleDateOfMfg        DisplayString,
      airFMIdentModuleSerialNumber     DisplayString,
      airFMIdentModuleFirmwareRev      DisplayString,
      airFMIdentModuleHardwareRev      DisplayString
   }

airFMIdentModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module information."
   ::= { airFMIdentEntry 1 }

airFMIdentModuleModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       model number. "
   ::= { airFMIdentEntry 2 }

airFMIdentModuleDateOfMfg OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       manufacture date. "
   ::= { airFMIdentEntry 3 }

airFMIdentModuleSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit serial number. "
   ::= { airFMIdentEntry 4 }

airFMIdentModuleFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       firmware revision. "
   ::= { airFMIdentEntry 5 }

airFMIdentModuleHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       hardware revision. "
   ::= { airFMIdentEntry 6 }

airFMIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       location of the device. "
   ::= { airFMIdent 4 }

airFMIdentContact OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       person to contact regarding the device. "
   ::= { airFMIdent 5 }


--  airFM AIR CONDITIONER STATUS

airFMStatusSystemOn OBJECT-TYPE
   SYNTAX INTEGER   {
      statusOn      (1),
      statusOff     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The operating state of the system.
       This OID has been deprecated in favor of
       airFMGroupSysStatus."
   ::= { airFMStatus 1 }

airFMStatusSystemAverageRetTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system average return air
       temperature in tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMSysAvgReturnTempC."
   ::= { airFMStatus 2 }

airFMStatusSystemAverageRetTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system average return air
       temperature in tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMSysAvgReturnTempF."
   ::= { airFMStatus 3 }

airFMStatusSystemAverageRetHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system average return air
       humidity in tenths of percent RH.
       This OID has been deprecated in favor of
       airFMSysAvgReturnHum."
   ::= { airFMStatus 4 }

airFMStatusSystemActionTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system action air
       temperature in tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMSysCtrlTempC."
   ::= { airFMStatus 5 }

airFMStatusSystemActionTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system action air
       temperature in tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMSysCtrlTempF."
   ::= { airFMStatus 6 }

airFMStatusSystemActionHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system action air humidity in tenths of percent RH.
       This OID has been deprecated in favor of
       airFMSysCtrlHum."
   ::= { airFMStatus 7 }

airFMStatusSystemRemoteHighTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote high air
       temperature in tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMSysMaxRemoteTempC."
   ::= { airFMStatus 8 }

airFMStatusSystemRemoteHighTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote high air
       temperature in tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMSysMaxRemoteTempF."
   ::= { airFMStatus 9 }

airFMStatusSystemRemoteAvgTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote average air
       temperature in tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMSysAvgRemoteTempC."
   ::= { airFMStatus 10 }

airFMStatusSystemRemoteAvgTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote average air
       temperature in tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMSysAvgRemoteTempF."
   ::= { airFMStatus 11 }

airFMStatusSystemRemoteAvgHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote average air
       humidity in tenths of percent RH.
       This OID has been deprecated in favor of
       airFMSysAvgRemoteHum."
   ::= { airFMStatus 12 }

airFMStatusSystemRemoteLowTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote low air
       temperature in tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMSysMinRemoteTempC."
   ::= { airFMStatus 13 }

airFMStatusSystemRemoteLowTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system remote low air
       temperature in tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMSysMinRemoteTempF."
   ::= { airFMStatus 14 }

airFMStatusSystemCoolingEnabled OBJECT-TYPE
   SYNTAX INTEGER   {
      enabledYes    (1),
      enabledNo     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the system cooling
       function enable.
       This OID has been deprecated in favor of
       airFMSysCoolState."
   ::= { airFMStatus 15 }

airFMStatusSystemReheatingEnabled OBJECT-TYPE
   SYNTAX INTEGER   {
      enabledYes    (1),
      enabledNo     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the system reheating
       function enable.
       This OID has been deprecated in favor of
       airFMSysReheatState."
   ::= { airFMStatus 16 }

airFMStatusSystemHumidifyEnabled OBJECT-TYPE
   SYNTAX INTEGER   {
      enabledYes    (1),
      enabledNo     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the system humidify
       function enable.
       This OID has been deprecated in favor of
       airFMSysHumState."
   ::= { airFMStatus 17 }

airFMStatusSystemDehumidifyEnabled OBJECT-TYPE
   SYNTAX INTEGER   {
      enabledYes    (1),
      enabledNo     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the system dehumidify
       function enable.
       This OID has been deprecated in favor of
       airFMSysDehumState."
   ::= { airFMStatus 18 }

airFMStatusModuleTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMStatusModuleTable."
   ::= { airFMStatus 19 }

airFMStatusModuleTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMStatusModuleEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module
       in the system."
   ::= { airFMStatus 20 }

airFMStatusModuleEntry OBJECT-TYPE
   SYNTAX AirFMStatusModuleEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get status from."
   INDEX  { airFMStatusModuleIndex }
   ::= { airFMStatusModuleTable 1 }

AirFMStatusModuleEntry ::=
   SEQUENCE {
      airFMStatusModuleIndex               INTEGER,
      airFMStatusModuleOutputCapacity      INTEGER,
      airFMStatusModuleSupplyTempC         INTEGER,
      airFMStatusModuleSupplyTempF         INTEGER,
      airFMStatusModuleSupplyHum           INTEGER,
      airFMStatusModuleReturnTempC         INTEGER,
      airFMStatusModuleReturnTempF         INTEGER,
      airFMStatusModuleReturnHum           INTEGER
   }

airFMStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module information."
   ::= { airFMStatusModuleEntry 1 }

airFMStatusModuleOutputCapacity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module output capacity in kilowatts.
       This OID has been deprecated in favor of
       airFMModOutputCapacity."
   ::= { airFMStatusModuleEntry 2 }

airFMStatusModuleSupplyTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module supply air temperature in
       tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMModSupplyTempC."
   ::= { airFMStatusModuleEntry 3 }

airFMStatusModuleSupplyTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module supply air temperature in
       tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMModSupplyTempF."
   ::= { airFMStatusModuleEntry 4 }

airFMStatusModuleSupplyHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module supply air humidity in tenths of percent RH.
       This OID has been deprecated in favor of
       airFMModSupplyHum."
   ::= { airFMStatusModuleEntry 5 }

airFMStatusModuleReturnTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module return air temperature in
       tenths of degrees Celsius.
       This OID has been deprecated in favor of
       airFMModReturnTempC."
   ::= { airFMStatusModuleEntry 6 }

airFMStatusModuleReturnTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module return air temperature in
       tenths of degrees Fahrenheit.
       This OID has been deprecated in favor of
       airFMModReturnTempF."
   ::= { airFMStatusModuleEntry 7 }

airFMStatusModuleReturnHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The module return air humidity in tenths of percent RH.
       This OID has been deprecated in favor of
       airFMModReturnHum."
   ::= { airFMStatusModuleEntry 8 }

-- airFM AIR CONDITIONER GROUP DATA

airFMGroupSysStatus OBJECT-TYPE
   SYNTAX INTEGER {
        statusOnLine    (1),
        statusIdle      (2),
        statusLoadShare (3),
        statusOffLine   (4),
        statusFailed    (5),
        statusDisabled  (6),
        statusUndefined (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of this system within the group."
   ::= { airFMGroup 1 }

airFMGroupSysRuntime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of hours the system has been running."
   ::= { airFMGroup 2 }

airFMGroupSysRole OBJECT-TYPE
   SYNTAX INTEGER {
        rolePrimary     (1),
        roleBackup      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The role of this system within the group."
   ::= { airFMGroup 3 }

-- airFM Group System Roles
airFMGroupSysRolesTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMGroupSysRolesTable. "
   ::= { airFMGroupSysRoles 1 }

airFMGroupSysRolesTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMGroupSysRolesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each system
       in the group. "
   ::= { airFMGroupSysRoles 2 }

airFMGroupSysRolesEntry OBJECT-TYPE
   SYNTAX AirFMGroupSysRolesEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The system to get status from."
   INDEX  { airFMGroupSysIndex }
   ::= { airFMGroupSysRolesTable 1 }

AirFMGroupSysRolesEntry ::=
   SEQUENCE {
      airFMGroupSysIndex                INTEGER,
      airFMGroupSysRoleStatus           INTEGER,
      airFMGroupSysPresentRole          INTEGER,
      airFMGroupSysManualRoleSetting    INTEGER,
      airFMGroupSysRunHours             INTEGER,
      airFMGroupSysComm                 INTEGER,
      airFMGroupSysIPAddress            IpAddress
   }

airFMGroupSysIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the system information."
   ::= { airFMGroupSysRolesEntry 1 }

airFMGroupSysRoleStatus OBJECT-TYPE
   SYNTAX INTEGER {
        reserved1       (1),
        reserved2       (2),
        onLine          (3),
        idle            (4),
        loadShare       (5),
        failed          (6),
        offLine         (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The present mode of the System."
   ::= { airFMGroupSysRolesEntry 2 }

airFMGroupSysPresentRole OBJECT-TYPE
   SYNTAX INTEGER {
        primary     (1),
        backup      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The present role of the System in a Group."
   ::= { airFMGroupSysRolesEntry 3 }

airFMGroupSysManualRoleSetting OBJECT-TYPE
   SYNTAX INTEGER {
        primary     (1),
        backup      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The manual role setting of the System in a Group.
       Only applies if Role Assignment Method is set
       to static (Manually Assigned Roles)."
   ::= { airFMGroupSysRolesEntry 4 }

airFMGroupSysRunHours OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of hours the System has been
       contributing to environmental control."
   ::= { airFMGroupSysRolesEntry 5 }

airFMGroupSysComm OBJECT-TYPE
   SYNTAX INTEGER {
        commLost            (1),
        commEstablished     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether a system is communicating with the
       other Systems in the Group."
   ::= { airFMGroupSysRolesEntry 6 }

airFMGroupSysIPAddress OBJECT-TYPE
   SYNTAX IpAddress
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The IP Address of the System."
   ::= { airFMGroupSysRolesEntry 7 }

airFMGroupSysRoleAssignment OBJECT-TYPE
   SYNTAX INTEGER {
        staticManual        (1),
        dynamicAutomatic    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The method used to assign roles (i.e. Primary, Backup)
       to the Systems in a Group.

       staticManual: Manually assign Primary or Backup to
       regulate run hours across the Group.
       dynamicAutomatic: User indicates the number of Systems
       that will be assigned a primary role in this Group."
   ::= { airFMGroupSysRoles 3 }

airFMGroupAutoRoleNumPrimary OBJECT-TYPE
   SYNTAX INTEGER {
        one     (1),
        two     (2),
        three   (3),
        four    (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of Systems assigned the 'primary' role in
       this Group.  Only applies if Role Assignment Method
       is set to dynamic (Automatic Run Hour Balancing)."
   ::= { airFMGroupSysRoles 4 }

-- airFM Group Config
airFMGroupCfgName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the group name."
   ::= { airFMGroupCfg 1 }

airFMGroupCfgNumSystems OBJECT-TYPE
   SYNTAX INTEGER {
        one     (1),
        two     (2),
        three   (3),
        four    (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of Systems in this Group."
   ::= { airFMGroupCfg 2 }

airFMGroupCfgIdleBlower OBJECT-TYPE
   SYNTAX INTEGER {
        off             (1),
        minimumSpeed    (2),
        normalSpeed     (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Blower behavior for backup Systems and Systems that
       have entered a failure mode."
   ::= { airFMGroupCfg 3 }

airFMGroupCfgShutdownSmoke OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "If enabled, all Systems in the Group will shut down
       if smoke is detected."
   ::= { airFMGroupCfg 4 }

airFMGroupCfgShutdownFire OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "If enabled, all Systems in the Group will shut down
       if fire is detected."
   ::= { airFMGroupCfg 5 }

airFMGroupCfgFailoverCommLoss OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Failover on Comm Loss enables an available backup
       System to run in place of a System that has lost
       communication with the Group."
   ::= { airFMGroupCfg 6 }

airFMGroupCfgDmdFightStatus OBJECT-TYPE
   SYNTAX INTEGER {
        off    (1),
        on     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Demand Fighting and Setpoint Sharing are
       automatically enabled when a System is responding to
       a Load Sharing Request."
   ::= { airFMGroupCfg 7 }

airFMGroupCfgDmdFightSetting OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Demand Fighting prevents a System from engaging
       reheat in a Group where any System is cooling."
   ::= { airFMGroupCfg 8 }

airFMGroupCfgSetpointShareStatus OBJECT-TYPE
   SYNTAX INTEGER {
        off    (1),
        on     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Demand Fighting and Setpoint Sharing are
       automatically enabled when a System is responding to
       Load Sharing Request."
   ::= { airFMGroupCfg 9 }

airFMGroupCfgSetpointShareSetting OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "All Systems in the Group use the same setpoints."
   ::= { airFMGroupCfg 10 }

airFMGroupCfgResetFieldServiceDefaults OBJECT-TYPE
   SYNTAX INTEGER {
       noOperation (1),
       reset       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset all Group
       parameters, which can only be edited by a field
       service engineer, to their factory default values.

       Getting this OID will do nothing and return the
       noOperation(1) value."
   ::= { airFMGroupCfg 11 }

-- airFM Group Load Sharing
airFMGroupLoadShareCoolRequests OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Systems that are cooling may request assistance from
       other Systems in the Group."
   ::= { airFMGroupLoadShare 1 }

airFMGroupLoadShareCoolThreshC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Temperature threshold at which a System will generate
       a load sharing request for cooling.  Measured in
       tenths of degrees Celsius."
   ::= { airFMGroupLoadShare 2 }

airFMGroupLoadShareCoolThreshF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Temperature threshold at which a System will generate
       a load sharing request for cooling.  Measured in
       tenths of degrees Fahrenheit."
   ::= { airFMGroupLoadShare 3 }

airFMGroupLoadShareReheatRequests OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Systems that are reheating may request assistance
       from other Systems in the Group."
   ::= { airFMGroupLoadShare 4 }

airFMGroupLoadShareReheatThreshC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Temperature threshold at which a System will generate
       a load sharing request for reheating.  Measured in
       tenths of degrees Celsius."
   ::= { airFMGroupLoadShare 5 }

airFMGroupLoadShareReheatThreshF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Temperature threshold at which a System will generate
       a load sharing request for reheating.  Measured in
       tenths of degrees Fahrenheit."
   ::= { airFMGroupLoadShare 6 }

airFMGroupLoadShareHumRequests OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Systems that are humidifying may request humidification
       assistance from other Systems in the Group."
   ::= { airFMGroupLoadShare 7 }

airFMGroupLoadShareHumThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Humidity threshold at which a System will generate a
       load sharing request for humidification.  Measured in
       tenths of percent relative humidity."
   ::= { airFMGroupLoadShare 8 }

airFMGroupLoadShareDehumRequests OBJECT-TYPE
   SYNTAX INTEGER {
        disable (1),
        enable  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Systems that are dehumidifying may request assistance
       from other Systems in the Group."
   ::= { airFMGroupLoadShare 9 }

airFMGroupLoadShareDehumThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Humidity threshold at which a System will generate a
       load sharing request for dehumidification.  Measured in
       tenths of percent relative humidity."
   ::= { airFMGroupLoadShare 10 }

-- airFM Group System Failover Events
airFMGroupFailoverSysAnyMinorAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if any minor system alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 1 }

airFMGroupFailoverSysAnyMajorAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if any major system alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 2 }

airFMGroupFailoverSysHighEnvTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the high environmental temperature
       alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 3 }

airFMGroupFailoverSysLowEnvTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the low environmental temperature
       alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 4 }

airFMGroupFailoverSysHighEnvHum OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the high environmental humidity
       alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 5 }

airFMGroupFailoverSysLowEnvHum OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the low environmental humidity
       alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 6 }

airFMGroupFailoverSysFireAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the fire alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 7 }

airFMGroupFailoverSysSmokeAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the smoke alarm is active.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 8 }

airFMGroupFailoverSysCommLost OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the system has lost comm.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 9 }

airFMGroupFailoverSysSupplySensorFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the supply sensor has failed.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 10 }

airFMGroupFailoverSysReturnSensorFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the return sensor has failed.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 11 }

airFMGroupFailoverSysPrimarySensorFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the primary sensor has failed.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 12 }

airFMGroupFailoverSysSecondarySensorFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the secondary sensor has failed.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 13 }

airFMGroupFailoverSysNoSensorsAvailable OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if no sensors are available.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverSys 14 }

-- airFM Group Module Failover Events
airFMGroupFailoverModMaintRequired OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if maintenance is required on a
       module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 1 }

airFMGroupFailoverModCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if cooling has failed on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 2 }


airFMGroupFailoverModHumFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the humidifier has failed on a
       module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 3 }

airFMGroupFailoverModBlwrCntrl1Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if blower controller 1 has failed on
       a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 4 }

airFMGroupFailoverModBlwrCntrl2Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if blower controller 2 has failed on
       a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 5 }

airFMGroupFailoverModHighFilterDP OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if a high filter differential
       pressure is present on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 6 }

airFMGroupFailoverModHighSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if a high supply temperature is
       active on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 7 }

airFMGroupFailoverModLowSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if a low supply temperature is active
       on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 8 }

airFMGroupFailoverModLossOrLowAirFlow OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if there is a loss of air flow or low
       air flow on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 9 }

airFMGroupFailoverModHumReplaceCylinder OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if a humidifier needs its cylinder
       replaced on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 10 }

airFMGroupFailoverModAirBlockInterlockOpen OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the air block interlock is open
       on a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 11 }

airFMGroupFailoverModWaterDetected OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if water is detected by a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 12 }

airFMGroupFailoverModCondensatePumpFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disable         (2),
        enable          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enabling this OID will cause the system to enter
       a failure state if the condensate pump has failed in
       a module.
       Once in the failure state, environmental control
       ceases for the system, and the blowers enter the
       Idle Blower Operation mode.
       A value of notApplicable indicates that this alarm
       does not apply to this device due to its configuration."
   ::= { airFMGroupFailoverMod 13 }

-- airFM System Status

airFMSysNumber OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        one             (2),
        two             (3),
        three           (4),
        four            (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of the system within the group.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 1 }

airFMSysPresentStatus OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        reserved1       (2),
        reserved2       (3),
        onLine          (4),
        idle            (5),
        loadShare       (6),
        failed          (7),
        offLine         (8)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The present mode of the System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 2 }

airFMSysPresentRole OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        primary         (2),
        backup          (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The present role of the System in the Group.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 3 }

airFMSysRunHours OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of hours the System has been
       contributing to environmental control.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 4 }

airFMSysCoilFluidTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the coolant at the fluid coil
       inlet.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 5 }

airFMSysCoilFluidTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the coolant at the fluid coil
       inlet.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 6 }

airFMSysHotWaterTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hot water temperature.  Measured in degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 7 }

airFMSysHotWaterTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hot water temperature.  Measured in degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 8 }

airFMSysAvgReturnTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average return temperature calculated from all
       present modules. Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 9 }

airFMSysAvgReturnTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average return temperature calculated from all
       present modules. Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 10 }

airFMSysAvgReturnHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average return humidity calculated from all
       present modules. Measured in tenths of percent RH.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 11 }

airFMSysAvgRemoteTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average temperature calculated from all
       operational remote sensors.  Measured in tenths of
       degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 12 }

airFMSysAvgRemoteTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average temperature calculated from all
       operational remote sensors. Measured in tenths of
       degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 13 }

airFMSysAvgRemoteHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average return humidity calculated from all
       present modules. Measured in tenths of percent RH.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 14 }

airFMSysMaxRemoteTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature reading from all operational
       remote sensors. Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 15 }

airFMSysMaxRemoteTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature reading from all operational
       remote sensors. Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 16 }

airFMSysMinRemoteTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature reading from all operational
       remote sensors. Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 17 }

airFMSysMinRemoteTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature reading from all operational
       remote sensors. Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 18 }

airFMSysTempCtrlMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        avgReturn       (2),
        avgRemote       (3),
        maxRemote       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The method of environment temperature control
       selected to regulate the temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 19 }

airFMSysActualTempCtrlMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        avgReturn       (2),
        avgRemote       (3),
        maxRemote       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual method of environment temperature control
       being used to regulate the temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 20 }

airFMSysHumCtrlMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        avgReturnRH     (2),
        avgReturnDewPt  (3),
        avgRemoteRH     (4),
        avgRemoteDewPt  (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The method of environment humidity control selected
       to regulate the humidity.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 21 }

airFMSysActualHumCtrlMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        avgReturnRH     (2),
        avgReturnDewPt  (3),
        avgRemoteRH     (4),
        avgRemoteDewPt  (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual method of environment humidity control
       being used to regulate the humidity.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysStatus 22 }

airFMSysCtrlTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system environmental control air temperature from
       the sensor denoted by airFMSysActualTempCtrl.
       Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
    ::= { airFMSysStatus 23 }

airFMSysCtrlTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system environmental control air temperature from
       the sensor denoted by airFMSysActualTempCtrl.
       Measured in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
    ::= { airFMSysStatus 24 }

airFMSysCtrlHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The system environmental control air humidity from
       the sensor denoted by airFMSysActualHumCtrl.
       Measured in percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
    ::= { airFMSysStatus 25 }

-- airFM System Demands and Actuals

airFMSysDXCoolingDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The direct expansion cooling output demanded by the
       System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 1 }

airFMSysDXDehumDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The direct expansion dehumidification output demanded
       by the System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 2 }

airFMSysDXActualCoolDehum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The direct expansion cooling or dehumidification
       output measured by the System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 3 }

airFMSysCoilFluidCoolDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid coil cooling output demanded by the System.
       Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 4 }

airFMSysCoilFluidDehumDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid coil dehumidification output demanded by
       the System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 5 }

airFMSysCoilFluidActualCoolDehum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid coil cooling or dehumidification output
       measured by the System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 6 }

airFMSysElectricReheatDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The electric reheating output demanded by the System.
       Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 7 }

airFMSysActualElectricReheat OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The electric reheating output of the System.
       Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 8 }

airFMSysSteamHotGasReheatDmd OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        off             (2),
        on              (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The steam, hot water, or hot gas reheating output
       demanded by the System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMSysDemands 9 }

airFMSysActualSteamHotGasReheat OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        off             (2),
        on              (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The steam, hot water, or hot gas reheating output of
       the System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMSysDemands 10 }

airFMSysSteamElectrodeHumDmd OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The steam electrode humidification output demanded by
       the System.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 11 }

airFMSysActualSteamElectrodeHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The average steam electrode humidification output
       measured for the Modules in the System.  Measured in
       percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 12 }

airFMSysSteamHumDmd OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        off             (2),
        on              (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The steam humidification output demanded by the System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 13 }

airFMSysActualSteamHum OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        off             (2),
        on              (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The steam humidification output for the System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDemands 14 }

-- airFM System Physical Setup

airFMSysNumModules OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        one             (2),
        two             (3),
        three           (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Modules in this System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 1 }

airFMSysNumPCIOMs OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        one             (2),
        two             (3),
        three           (4),
        four            (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of Programmable Customer Input/Output
       Modules (PCIOMs) installed in the Main Module of this
       System. Each PCIOM adds four input contacts and four
       output relays to the System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 2 }

airFMSysMainsVlt OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The mains voltage for the Modules in this System.
       A value of N/A indicates that this OID does not apply
       to this device due to its configuration."
   ::= { airFMSysSetup 3 }

airFMSysUPSVlt OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The UPS voltage for the Modules in this System.
       A value of N/A indicates that this OID does not apply
       to this device due to its configuration."
   ::= { airFMSysSetup 4 }

airFMSysCoilCfg OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        dx              (2),
        econ            (3),
        multicool       (4),
        chilledWater    (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of cooling coils installed in the Modules in
       this System: DX coil, DX and MultiCool (chilled water)
       coils, DX and Economizer coils, or only a Chilled
       Liquid coil.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 5 }

airFMSysRefrigType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        r22             (2),
        r407C           (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of refrigerant used by each compressor in
       the system.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 6 }

airFMSysHeatRejection OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        airCooled       (2),
        waterCooled     (3),
        glycolCooled    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The method the Modules in this System use to transfer
       heat away from the refrigerant.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 7 }

airFMSysDischAirPtrn OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        upFlow          (2),
        downFlow        (3),
        horizFlow       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The discharge air pattern for the Modules in this
       System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 8 }

airFMSysAirFltr OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        standard        (2),
        highEfficiency  (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of air filters (standard or high efficiency)
       installed in the Modules of this System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 9 }

airFMSysFlowSwitch OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable       (1),
        none                (2),
        dxEcon              (3),
        multiCoolChillWater (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The location of the optional flow switch.
       None: No flow switch is installed in this System.
       DX: Coolant input to the heat exchanger (condenser).
       MultiCool: Chilled water input to the MultiCool coil.

       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 10 }

airFMSysCoilFluidVlvAct OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        none            (2),
        springAnalog    (3),
        floatingControl (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of valve actuator installed on the coil
       fluid valve. The coil fluid valve controls the flow
       of coolant into a fluid cooling coil, such as a
       MultiCool or Economizer coil.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 11 }

airFMSysCoilFluidVlvType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        twoWay          (2),
        threeWay        (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of coil fluid valve installed for the
       Modules in this System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 12 }

airFMSysCndsrFluidVlvAct OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        none            (2),
        floatingControl (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of valve actuator installed on the Condenser
       fluid valve. The Condenser fluid valve controls the
       flow of coolant into the heat exchanger (condenser)
       to regulate head pressure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 13 }

airFMSysCndsrFluidVlvType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        twoWay          (2),
        threeWay        (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of Condenser fluid valve installed for the
       Modules in this System.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 14 }

airFMSysHotWaterVlvAct OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        none            (2),
        springAnalog    (3),
        floatingControl (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of valve actuator installed on the hot water
       valve.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysSetup 15 }

airFMSysNumRemoteSensors OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of remote sensors detected by the system."
   ::= { airFMSysSetup 16 }

-- airFM System Configuration

airFMSysPrimaryControlSensor OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        return          (2),
        remote          (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Selects whether return or remote sensors will control
       the system.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 1 }

airFMSysRemoteSensorData OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        average         (2),
        maximum         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Selects whether average temperature or max temperature
       will be used when remote sensors are selected for
       control of the system.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 2 }

airFMSysFastStartup OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Minimizes the time for the cooling process to begin
       after other delay constraints have been met.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 3 }

airFMSysStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay that begins when power is applied and
       ends when the System starts. This allows you to
       create a staged restart among your Systems after a
       power loss.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 4 }

airFMSysModeDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay between starting the blowers and
       engaging the modes. It allows the sensors to read
       room conditions accurately and allows the controller
       to check for major alarms before engaging a mode.
       Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 5 }

airFMSysCommLossShutdownDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay between an Expansion Module losing
       communication with the Main Module and the Expansion
       Module shutting down. A value of -1 will keep
       the Expansion Module running after a communication
       loss.  Measured in hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 6 }

airFMSysResetSysFailure OBJECT-TYPE
    SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will allows the system
       to return from any failure condition, if the
       failure(s) have cleared.
       Getting this OID will do nothing and return the noOperation(1) value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 7 }

airFMSysResetUserDflts OBJECT-TYPE
    SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
    }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset all system
       parameters that can be edited by the user to their
       factory default values.
       Getting this OID will do nothing and return the noOperation(1) value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 8 }

airFMSysResetFldSrvcDflts OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset all system
       parameters that can only be edited by the field
       service engineer to their factory default values.
       Getting this OID will do nothing and return the noOperation(1) value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 9 }

airFMSysResetRunHours OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Setting this OID to reset(2) will reset the system Run Hours.
       Getting this OID will do nothing and return the noOperation(1) value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysConfig 10 }

-- airFM System Cooling

airFMSysCompMinOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the minimum time the compressor continues to
       operate after it is started. The delay protects the
       compressor from damage. Caution: Reducing this delay
       shortens compressor life.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 1 }

airFMSysCompMinOffTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the minimum time the compressor will remain off
       after it ceases operation. The delay protects the
       compressor from damage. Caution: Reducing this delay
       shortens compressor life.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 2 }

airFMSysCompRotPeriod OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set how often to perform compressor runtime
       balancing.  Measured in hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 3 }

airFMSysEconIsolVlvOpenDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay between opening the Economizer Isolator
       output relay and engaging the compressors.  Measured
       in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 4 }

airFMSysEconIsolVlvCloseDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay between disengaging the compressor and
       closing the Economizer Isolator output relay.
       Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 5 }

airFMSysCndsrFluidVlvCloseDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the time the condenser valve remains open after
       the compressors disengage.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 6 }

airFMSysInterstageDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The DX interstage delay allows the first compressor's
       cooling to take effect before engaging the second
       compressor. This prevents the second compressor from
       cycling on and off excessively.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 7 }

airFMSysCoolState OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the mode to enabled or disabled. Disabled modes
       will not operate, and you cannot make changes to
       their settings while they are disabled.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 8 }

airFMSysCoolEssFunction OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        yes             (2),
        no              (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the priority of the mode for alarms and events
       with the nonessential stop behavior. Nonessential
       modes are disabled during nonessential stop alarms
       and events.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 9 }

airFMSysCoolSetpointC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 C above the
       reheat setpoint if a heater is installed.  Measured
       in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 10 }

airFMSysCoolSetpointF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 C above the
       reheat setpoint if a heater is installed.  Measured
       in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 11 }

airFMSysCoolDeadbandC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The temperature range that controls output when the
       selected control sensor temperature is above the
       setpoint. At the top of this range, the cool mode
       outputs at 100%. The deadband does not apply to PID-
       controlled modes.  Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 12 }

airFMSysCoolDeadbandF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The temperature range that controls output when the
       selected control sensor temperature is above the
       setpoint. At the top of this range, the cool mode
       outputs at 100%. The deadband does not apply to PID-
       controlled modes.  Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 13 }

airFMSysCoolEconIsolFunction OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the Economizer Automatic Coolant Isolation valve
       to enabled or disabled. This valve anticipates a
       cooling demand and opens the coil fluid valve.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 14 }

airFMSysSuctPresCompensation OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the Suction Pressure Compensation to enabled or
       disabled. This function attempts to keep the suction
       pressure from exceeding 95 psi.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 15 }

airFMSysCoilFluidActivThreshC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum coolant temperature required to use the
       optional MultiCool or Economizer coil.  Measured in
       tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 16 }

airFMSysCoilFluidActivThreshF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum coolant temperature required to use the
       optional MultiCool or Economizer coil.  Measured in
       tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 17 }

airFMSysCoilFluidActivDeadbandC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The controller will disengage the MultiCool or
       Economizer coil when the coolant temperature reaches
       the coil fluid temperature activation threshold plus
       the deadband.  Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 18 }

airFMSysCoilFluidActivDeadbandF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The controller will disengage the MultiCool or
       Economizer coil when the coolant temperature reaches
       the coil fluid temperature activation threshold plus
       the deadband.  Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 19 }

airFMSysCoolPIDMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        p               (2),
        pi              (3),
        pid             (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the multipliers that the PID algorithm will use
       to calculate the cool output. Proportional,
       Proportional + Integral, or Proportional + Integral
       + Derivative.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 20 }

airFMSysCoolPIDGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the proportional multiplier to correct for
       differences between the selected control sensor
       actual temperature and the setpoint.  Measured in
       %/C.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 21 }

airFMSysCoolPIDResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the integral multiplier to correct for the
       proportional offset.  Measured in %/(C * min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 22 }

airFMSysCoolPIDDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the derivative multiplier to counteract overshoot
       and droop during changes in the room load.  Measured
       in %/(C / min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysCooling 23 }

-- airFM System Humidify Function

airFMSysHumState OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the mode to enabled or disabled. Disabled modes
       will not operate, and you cannot make changes to their
       settings while they are disabled.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 1 }

airFMSysHumEssFunction OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        yes             (2),
        no              (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the priority of the mode for alarms and events
       with the nonessential stop behavior. Nonessential
       modes are disabled during nonessential stop alarms
       and events.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 2 }

airFMSysHumSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 % RH below
       the dehumidification setpoint.  Measured in tenths of
       percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 3 }

airFMSysHumDeadband OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidity range that controls output when the
       selected control sensor humidity is below the
       setpoint. At the top of this range, the
       humidification mode outputs at 100%. The deadband
       does not apply to PID-controlled modes.  Measured in
       tenths of percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 4 }

airFMSysHumCtrlSetting OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        relativeHum     (2),
        dewPoint        (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the method to control the humidity in the room.
       The two methods are Relative Humidity (RH) or Dew
       Point of the selected control sensor air. The dew
       point method helps correct for hot spots near the
       selected control sensors.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 5 }

airFMSysActualHumCtrl OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        relativeHum     (2),
        dewPoint        (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidity control method the system is using.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 6 }

airFMSysHumSensBand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The percentage of relative humidity below the
       setpoint at which the humidifier will output at 100%
       of capacity.  Measured in percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysHumidify 7 }

-- airFM System Dehumidify Function

airFMSysDehumState OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the mode to enabled or disabled. Disabled modes
       will not operate, and you cannot make changes to their
       settings while they are disabled.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 1 }

airFMSysDehumEssFunction OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        yes             (2),
        no              (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the priority of the mode for alarms and events
       with the nonessential stop behavior. Nonessential
       modes are disabled during nonessential stop alarms
       and events.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 2 }

airFMSysDehumSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 % RH above
       the humidification setpoint if a humidifier is
       installed.  Measured in tenths of percent relative
       humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 3 }

airFMSysDehumDeadband OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidity range above the setpoint at which the
       dehumidification mode will output at 100%. The
       deadband does not apply to PID controlled modes.
       Measured in tenths of percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 4 }

airFMSysDehumCapacity OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        half            (2),
        full            (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the dehumidification mode to use either half of
       the cooling coil or the full coil when dehumidifying
       the room.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 5 }

airFMSysDehumPIDMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        p               (2),
        pi              (3),
        pid             (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the multipliers that the PID algorithm will use
       to calculate the output. Proportional,
       Proportional + Integral, or Proportional + Integral
       + Derivative.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 6 }

airFMSysDehumPIDGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the proportional multiplier to correct for
       differences between the selected control sensor
       actual humidity and the setpoint.  Measured in %/%RH.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 7 }

airFMSysDehumPIDResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the integral multiplier to correct for the
       proportional offset.  Measured in %/(%RH * min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 8 }

airFMSysDehumPIDDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the derivative multiplier to counteract overshoot
       and droop during changes in the room humidity.
       Measure in %/(%RH / min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysDehumidify 9 }

-- airFM System Reheat Function

airFMSysReheatState OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the mode to enabled or disabled. Disabled modes
       will not operate, and you cannot make changes to their
       settings while they are disabled.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 1 }

airFMSysReheatEssFunction OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        yes             (2),
        no              (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the priority of the mode for alarms and events
       with the nonessential stop behavior. Nonessential
       modes are disabled during nonessential stop alarms
       and events.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 2 }

airFMSysReheatSetpointC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 C below the
       cooling setpoint.  Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 3 }

airFMSysReheatSetpointF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The target value for the selected control sensor air
       for this mode. It must be at least 1.0 C below the
       cooling setpoint.  Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 4 }

airFMSysReheatDeadbandC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The temperature range that controls output when the
       selected control sensor temperature is below the
       setpoint. At the bottom of this range, the reheat
       mode outputs at 100%. The deadband does not apply to
       PID-controlled modes.  Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 5 }

airFMSysReheatDeadbandF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The temperature range that controls output when the
       selected control sensor temperature is below the
       setpoint. At the bottom of this range, the reheat
       mode outputs at 100%. The deadband does not apply to
       PID-controlled modes.  Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 6 }

airFMSysReheatPIDMethod OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        p               (2),
        pi              (3),
        pid             (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the multipliers that the PID algorithm will use
       to calculate the output. Proportional,
       Proportional + Integral, or Proportional + Integral
       + Derivative.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 7 }

airFMSysReheatPIDGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the proportional multiplier to correct for
       differences between the selected control sensor
       actual temperature and the setpoint.  Measured in
       %/C.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 8 }

airFMSysReheatPIDResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the integral multiplier to correct for the
       proportional offset.  Measured in %/(C * min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 9 }

airFMSysReheatPIDDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the derivative multiplier to counteract overshoot
       and droop during changes in the room load.  Measured
       in %/(C / min).
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysReheat 10 }

-- airFM System Thresholds

airFMSysHighSplyTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for air blown into the
       room (supply). If the supply temperature exceeds the
       threshold, an alarm will occur.  Measured in tenths
       of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 1 }

airFMSysHighSplyTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for air blown into the
       room (supply). If the supply temperature exceeds the
       threshold, an alarm will occur.  Measured in tenths
       of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 2 }

airFMSysLowSplyTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for air blown into the
       room (supply). If the supply temperature drops below
       the threshold, an alarm will occur.  Measured in
       tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 3 }

airFMSysLowSplyTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for air blown into the
       room (supply). If the supply temperature drops below
       the threshold, an alarm will occur. Measured in
       tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 4 }

airFMSysHighCoilFluidTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for coolant at the
       inlet to the fluid coil. If the fluid coil coolant
       temperature exceeds the threshold, an alarm will
       occur.  Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 5 }

airFMSysHighCoilFluidTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for coolant at the
       inlet to the fluid coil. If the fluid coil coolant
       temperature exceeds the threshold, an alarm will
       occur.  Measured in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 6 }

airFMSysLowCoilFluidTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for coolant at the
       inlet to the fluid coil. If the fluid coil coolant
       temperature drops below the threshold, an alarm will
       occur.  Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 7 }

airFMSysLowCoilFluidTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for coolant at the
       inlet to the fluid coil. If the fluid coil coolant
       temperature drops below the threshold, an alarm will
       occur.  Measured in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 8 }

airFMSysHighCtrlTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for air monitored by
       the System. If the temperature exceeds the threshold,
       an alarm will occur.  Measured in tenths of degrees
       Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 9 }

airFMSysHighCtrlTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature threshold for air monitored by
       the System. If the temperature exceeds the threshold,
       an alarm will occur.  Measured in tenths of degrees
       Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 10 }

airFMSysLowCtrlTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for air monitored by
       the System. If the temperature drops below the
       threshold, an alarm will occur.  Measured in tenths
       of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 11 }

airFMSysLowCtrlTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature threshold for air monitored by
       the System. If the temperature drops below the
       threshold, an alarm will occur.  Measured in tenths
       of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 12 }

airFMSysHighCtrlHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity threshold for air monitored by the
       System. If the humidity exceeds the threshold, an
       alarm will occur.  Measured in tenths of percent
       relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 13 }

airFMSysLowCtrlHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity threshold for air monitored by the
       System. If the humidity drops below the threshold,
       an alarm will occur.  Measured in tenths of percent
       relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 14 }

airFMSysTempAlarmDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time the blower must be on before a
       temperature alarm can be issued.  Measured in
       seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 15 }

airFMSysHumAlarmDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The amount of time the blower must be on before a
       humidity alarm can be issued.  Measured in seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysThresholds 16 }

-- airFM System Input Contacts

airFMSysInputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysInputTable. "
   ::= { airFMSysInputs 1 }

airFMSysInputTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysInputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each input
       contact."
   ::= { airFMSysInputs 2 }

airFMSysInputEntry OBJECT-TYPE
   SYNTAX AirFMSysInputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contact to obtain status from."
   INDEX  { airFMSysInputIndex }
   ::= { airFMSysInputTable 1 }

AirFMSysInputEntry ::=
   SEQUENCE {
      airFMSysInputIndex           INTEGER,
      airFMSysInputName            DisplayString,
      airFMSysInputStatus          INTEGER,
      airFMSysInputNormalState     INTEGER,
      airFMSysInputDelay           INTEGER,
      airFMSysInputAlarmAction     INTEGER
   }

airFMSysInputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number designator of the Input Contact."
   ::= { airFMSysInputEntry 1 }

airFMSysInputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The configurable name for the Input Contact.  Maximum
       text input is 13 characters."
   ::= { airFMSysInputEntry 2 }

airFMSysInputStatus OBJECT-TYPE
   SYNTAX INTEGER {
        open    (1),
        closed  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of this contact: Open or Closed. A
       violation will occur when this relay is not in its
       normal state."
   ::= { airFMSysInputEntry 3 }

airFMSysInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
        open    (1),
        closed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the normal state of this contact (the state when
       no alarm/event exists)."
   ::= { airFMSysInputEntry 4 }

airFMSysInputDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the delay between this contact exiting its normal
       state and an alarm being triggered.  Measured in
       seconds."
   ::= { airFMSysInputEntry 5 }

airFMSysInputAlarmAction OBJECT-TYPE
   SYNTAX INTEGER {
        statusOnly      (1),
        minor           (2),
        major           (3),
        remoteRunStop   (4),
        nonessStop      (5),
        immShutdown     (6)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Sets the behavior for this contact when it exits its
       normal state."
   ::= { airFMSysInputEntry 6 }

-- airFM System Output Relays

airFMSysOutputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysOutputTable. "
   ::= { airFMSysOutputs 1 }

airFMSysOutputTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each output relay. "
   ::= { airFMSysOutputs 2 }

airFMSysOutputEntry OBJECT-TYPE
   SYNTAX AirFMSysOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The output relay to obtain status from."
   INDEX  { airFMSysOutputIndex }
   ::= { airFMSysOutputTable 1 }

AirFMSysOutputEntry ::=
   SEQUENCE {
      airFMSysOutputIndex           INTEGER,
      airFMSysOutputStatus          INTEGER,
      airFMSysOutputNormalState     INTEGER
   }

airFMSysOutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number designator of the output relay."
   ::= { airFMSysOutputEntry 1 }

airFMSysOutputStatus OBJECT-TYPE
   SYNTAX INTEGER {
        open    (1),
        closed  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of this relay: Open or Closed. A violation
       will occur when this relay is not in its normal state."
   ::= { airFMSysOutputEntry 2 }

airFMSysOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
        open    (1),
        closed  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the normal state of this relay (the state when no
       alarm/event exists)."
   ::= { airFMSysOutputEntry 3 }

-- airFM System Output Alarm Mapping

airFMSysAlarmMapSysTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysAlarmMapSysTable. "
   ::= { airFMSysAlarmMapSys 1 }

airFMSysAlarmMapSysTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapSysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapSys 2 }

airFMSysAlarmMapSysEntry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapSysEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The system alarm map type to reference."
   INDEX  { airFMSysAlarmMapSysOutputIndex }
   ::= { airFMSysAlarmMapSysTable 1 }

AirFMSysAlarmMapSysEntry ::=
   SEQUENCE {
      airFMSysAlarmMapSysOutputIndex    INTEGER,
      airFMSysAlarmMapSysAnyAlarm       INTEGER,
      airFMSysAlarmMapSystemOn          INTEGER,
      airFMSysAlarmMapSystemOffline     INTEGER,
      airFMSysAlarmMapSysHighEnvTemp    INTEGER,
      airFMSysAlarmMapSysLowEnvTemp     INTEGER,
      airFMSysAlarmMapSysHighEnvHum     INTEGER,
      airFMSysAlarmMapSysLowEnvHum      INTEGER,
      airFMSysAlarmMapSysFireDet        INTEGER,
      airFMSysAlarmMapSysSmokeDet       INTEGER,
      airFMSysAlarmMapSysEconIsol       INTEGER,
      airFMSysAlarmMapSysSupplySensFail INTEGER,
      airFMSysAlarmMapSysReturnSensFail INTEGER,
      airFMSysAlarmMapSysRemSensRemoved INTEGER,
      airFMSysAlarmMapSysPrimSensFail   INTEGER,
      airFMSysAlarmMapSysSecSensFail    INTEGER,
      airFMSysAlarmMapSysSecSensActive  INTEGER
   }

airFMSysAlarmMapSysOutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapSysEntry 1 }

airFMSysAlarmMapSysAnyAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Any Alarm.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 2 }

airFMSysAlarmMapSystemOn OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for System On.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 3 }

airFMSysAlarmMapSystemOffline OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for System Offline.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 4 }

airFMSysAlarmMapSysHighEnvTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for High Environmental
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 5 }

airFMSysAlarmMapSysLowEnvTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Low Environmental
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 6 }

airFMSysAlarmMapSysHighEnvHum OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for High Environmental
       Humidity.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 7 }

airFMSysAlarmMapSysLowEnvHum OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Low Environmental
       Humidity.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 8 }

airFMSysAlarmMapSysFireDet OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Fire Detected.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 9 }

airFMSysAlarmMapSysSmokeDet OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Smoke Detected.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 10 }

airFMSysAlarmMapSysEconIsol OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Econ Isolator.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 11 }

airFMSysAlarmMapSysSupplySensFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Supply Sensor Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 12 }

airFMSysAlarmMapSysReturnSensFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Return Sensor Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 13 }

airFMSysAlarmMapSysRemSensRemoved OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Remote Sensor Removed.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 14 }

airFMSysAlarmMapSysPrimSensFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Primary Sensor Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 15 }

airFMSysAlarmMapSysSecSensFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Secondary Sensor Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 16 }

airFMSysAlarmMapSysSecSensActive OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "System alarm map setting for Secondary Sensor Active.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapSysEntry 17 }

-- airFM Main Module Output Alarm Mapping

airFMSysAlarmMapMainModTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysAlarmMapMainModTable. "
   ::= { airFMSysAlarmMapMainMod 1 }

airFMSysAlarmMapMainModTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapMainModEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapMainMod 2 }

airFMSysAlarmMapMainModEntry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapMainModEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The main module alarm map type to reference."
   INDEX  { airFMSysAlarmMapMainModOutputIndex }
   ::= { airFMSysAlarmMapMainModTable 1 }

AirFMSysAlarmMapMainModEntry ::=
   SEQUENCE {
      airFMSysAlarmMapMainModOutputIndex    INTEGER,
      airFMSysAlarmMapMainModAnyAlarm       INTEGER,
      airFMSysAlarmMapMainModMaintReq       INTEGER,
      airFMSysAlarmMapMainModCoolFail       INTEGER,
      airFMSysAlarmMapMainModHighSupplyTemp INTEGER,
      airFMSysAlarmMapMainModLowSupplyTemp  INTEGER,
      airFMSysAlarmMapMainModHumFail        INTEGER,
      airFMSysAlarmMapMainModHumReplCyl     INTEGER,
      airFMSysAlarmMapMainModCondPumpFail   INTEGER,
      airFMSysAlarmMapMainModBlwrCntl1Fail  INTEGER,
      airFMSysAlarmMapMainModBlwrCntl2Fail  INTEGER,
      airFMSysAlarmMapMainModHighFltrDP     INTEGER,
      airFMSysAlarmMapMainModLowAirFlow     INTEGER,
      airFMSysAlarmMapMainModAirBlckIntOpen INTEGER,
      airFMSysAlarmMapMainModWaterDetected  INTEGER
   }

airFMSysAlarmMapMainModOutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapMainModEntry 1 }

airFMSysAlarmMapMainModAnyAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Any Alarm.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 2 }

airFMSysAlarmMapMainModMaintReq OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Module Maintenance
       Required.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 3 }

airFMSysAlarmMapMainModCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Module Cooling
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 4 }

airFMSysAlarmMapMainModHighSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for High Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 5 }

airFMSysAlarmMapMainModLowSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Low Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 6 }

airFMSysAlarmMapMainModHumFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Humidifier Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 7 }

airFMSysAlarmMapMainModHumReplCyl OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Humidifier Replace
       Cylinder.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 8 }

airFMSysAlarmMapMainModCondPumpFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Condensate Pump
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 9 }

airFMSysAlarmMapMainModBlwrCntl1Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Blower Controller 1
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 10 }

airFMSysAlarmMapMainModBlwrCntl2Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Blower Controller 2
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 11 }

airFMSysAlarmMapMainModHighFltrDP OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for High Filter
       Differential Pressure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 12 }

airFMSysAlarmMapMainModLowAirFlow OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Low Air Flow.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 13 }

airFMSysAlarmMapMainModAirBlckIntOpen OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Air Block Interlock
       Open.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 14 }

airFMSysAlarmMapMainModWaterDetected OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Main Module alarm map setting for Water Detected.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapMainModEntry 15 }

-- airFM Exp Module 1 Output Alarm Mapping

airFMSysAlarmMapExpMod1TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysAlarmMapExpMod1Table. "
   ::= { airFMSysAlarmMapExpMod1 1 }

airFMSysAlarmMapExpMod1Table OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapExpMod1Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapExpMod1 2 }

airFMSysAlarmMapExpMod1Entry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapExpMod1Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The expansion module 1 alarm map type to reference."
   INDEX  { airFMSysAlarmMapExpMod1OutputIndex }
   ::= { airFMSysAlarmMapExpMod1Table 1 }

AirFMSysAlarmMapExpMod1Entry ::=
   SEQUENCE {
      airFMSysAlarmMapExpMod1OutputIndex    INTEGER,
      airFMSysAlarmMapExpMod1AnyAlarm       INTEGER,
      airFMSysAlarmMapExpMod1MaintReq       INTEGER,
      airFMSysAlarmMapExpMod1CoolFail       INTEGER,
      airFMSysAlarmMapExpMod1HighSupplyTemp INTEGER,
      airFMSysAlarmMapExpMod1LowSupplyTemp  INTEGER,
      airFMSysAlarmMapExpMod1HumFail        INTEGER,
      airFMSysAlarmMapExpMod1HumReplCyl     INTEGER,
      airFMSysAlarmMapExpMod1CondPumpFail   INTEGER,
      airFMSysAlarmMapExpMod1BlwrCntl1Fail  INTEGER,
      airFMSysAlarmMapExpMod1BlwrCntl2Fail  INTEGER,
      airFMSysAlarmMapExpMod1HighFltrDP     INTEGER,
      airFMSysAlarmMapExpMod1LowAirFlow     INTEGER,
      airFMSysAlarmMapExpMod1AirBlckIntOpen INTEGER,
      airFMSysAlarmMapExpMod1WaterDetected  INTEGER
   }

airFMSysAlarmMapExpMod1OutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapExpMod1Entry 1 }

airFMSysAlarmMapExpMod1AnyAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Any Alarm.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 2 }

airFMSysAlarmMapExpMod1MaintReq OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Module Maintenance
       Required.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 3 }

airFMSysAlarmMapExpMod1CoolFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Module Cooling
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 4 }

airFMSysAlarmMapExpMod1HighSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for High Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 5 }

airFMSysAlarmMapExpMod1LowSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Low Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 6 }

airFMSysAlarmMapExpMod1HumFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Humidifier Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 7 }

airFMSysAlarmMapExpMod1HumReplCyl OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Humidifier Replace
       Cylinder.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 8 }

airFMSysAlarmMapExpMod1CondPumpFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Condensate Pump
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 9 }

airFMSysAlarmMapExpMod1BlwrCntl1Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Blower Controller 1
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 10 }

airFMSysAlarmMapExpMod1BlwrCntl2Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Blower Controller 2
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 11 }

airFMSysAlarmMapExpMod1HighFltrDP OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for High Filter
       Differential Pressure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 12 }

airFMSysAlarmMapExpMod1LowAirFlow OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Low Air Flow.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 13 }

airFMSysAlarmMapExpMod1AirBlckIntOpen OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Air Block Interlock
       Open.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 14 }

airFMSysAlarmMapExpMod1WaterDetected OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 1 alarm map setting for Water Detected.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod1Entry 15 }

-- airFM Expansion Module 2 Output Alarm Mapping

airFMSysAlarmMapExpMod2TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the
       airFMSysAlarmMapExpMod2Table."
   ::= { airFMSysAlarmMapExpMod2 1 }

airFMSysAlarmMapExpMod2Table OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapExpMod2Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapExpMod2 2 }

airFMSysAlarmMapExpMod2Entry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapExpMod2Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The expansion module 2 alarm map type to reference."
   INDEX  { airFMSysAlarmMapExpMod2OutputIndex }
   ::= { airFMSysAlarmMapExpMod2Table 1 }

AirFMSysAlarmMapExpMod2Entry ::=
   SEQUENCE {
      airFMSysAlarmMapExpMod2OutputIndex    INTEGER,
      airFMSysAlarmMapExpMod2AnyAlarm       INTEGER,
      airFMSysAlarmMapExpMod2MaintReq       INTEGER,
      airFMSysAlarmMapExpMod2CoolFail       INTEGER,
      airFMSysAlarmMapExpMod2HighSupplyTemp INTEGER,
      airFMSysAlarmMapExpMod2LowSupplyTemp  INTEGER,
      airFMSysAlarmMapExpMod2HumFail        INTEGER,
      airFMSysAlarmMapExpMod2HumReplCyl     INTEGER,
      airFMSysAlarmMapExpMod2CondPumpFail   INTEGER,
      airFMSysAlarmMapExpMod2BlwrCntl1Fail  INTEGER,
      airFMSysAlarmMapExpMod2BlwrCntl2Fail  INTEGER,
      airFMSysAlarmMapExpMod2HighFltrDP     INTEGER,
      airFMSysAlarmMapExpMod2LowAirFlow     INTEGER,
      airFMSysAlarmMapExpMod2AirBlckIntOpen INTEGER,
      airFMSysAlarmMapExpMod2WaterDetected  INTEGER
   }

airFMSysAlarmMapExpMod2OutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapExpMod2Entry 1 }

airFMSysAlarmMapExpMod2AnyAlarm OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Any Alarm.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 2 }

airFMSysAlarmMapExpMod2MaintReq OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Module Maintenance
       Required.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 3 }

airFMSysAlarmMapExpMod2CoolFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Module Cooling
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 4 }

airFMSysAlarmMapExpMod2HighSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for High Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 5 }

airFMSysAlarmMapExpMod2LowSupplyTemp OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Low Supply
       Temperature.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 6 }

airFMSysAlarmMapExpMod2HumFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Humidifier Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 7 }

airFMSysAlarmMapExpMod2HumReplCyl OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Humidifier Replace
       Cylinder.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 8 }

airFMSysAlarmMapExpMod2CondPumpFail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Condensate Pump
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 9 }

airFMSysAlarmMapExpMod2BlwrCntl1Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Blower Controller 1
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 10 }

airFMSysAlarmMapExpMod2BlwrCntl2Fail OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Blower Controller 2
       Failure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 11 }

airFMSysAlarmMapExpMod2HighFltrDP OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for High Filter
       Differential Pressure.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 12 }

airFMSysAlarmMapExpMod2LowAirFlow OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Low Air Flow.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 13 }

airFMSysAlarmMapExpMod2AirBlckIntOpen OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Air Block Interlock
       Open.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 14 }

airFMSysAlarmMapExpMod2WaterDetected OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Exp Module 2 alarm map setting for Water Detected.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapExpMod2Entry 15 }

-- airFM Input Alarm Mapping

airFMSysAlarmMapInputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMSysAlarmMapInputTable. "
   ::= { airFMSysAlarmMapInput 1 }

airFMSysAlarmMapInputTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapInputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapInput 2 }

airFMSysAlarmMapInputEntry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapInputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contact alarm map type to reference."
   INDEX  { airFMSysAlarmMapInputOutputIndex }
   ::= { airFMSysAlarmMapInputTable 1 }

AirFMSysAlarmMapInputEntry ::=
   SEQUENCE {
      airFMSysAlarmMapInputOutputIndex  INTEGER,
      airFMSysAlarmMapInput1            INTEGER,
      airFMSysAlarmMapInput2            INTEGER,
      airFMSysAlarmMapInput3            INTEGER,
      airFMSysAlarmMapInput4            INTEGER,
      airFMSysAlarmMapInput5            INTEGER,
      airFMSysAlarmMapInput6            INTEGER,
      airFMSysAlarmMapInput7            INTEGER,
      airFMSysAlarmMapInput8            INTEGER,
      airFMSysAlarmMapInput9            INTEGER,
      airFMSysAlarmMapInput10           INTEGER,
      airFMSysAlarmMapInput11           INTEGER,
      airFMSysAlarmMapInput12           INTEGER,
      airFMSysAlarmMapInput13           INTEGER,
      airFMSysAlarmMapInput14           INTEGER,
      airFMSysAlarmMapInput15           INTEGER,
      airFMSysAlarmMapInput16           INTEGER
   }

airFMSysAlarmMapInputOutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapInputEntry 1 }

airFMSysAlarmMapInput1 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 1 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 2 }

airFMSysAlarmMapInput2 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 2 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 3 }

airFMSysAlarmMapInput3 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 3 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 4 }

airFMSysAlarmMapInput4 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 4 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 5 }

airFMSysAlarmMapInput5 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 5 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 6 }

airFMSysAlarmMapInput6 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 6 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 7 }

airFMSysAlarmMapInput7 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 7 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 8 }

airFMSysAlarmMapInput8 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 8 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 9 }

airFMSysAlarmMapInput9 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 9 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 10 }

airFMSysAlarmMapInput10 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 10 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 11 }

airFMSysAlarmMapInput11 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 11 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 12 }

airFMSysAlarmMapInput12 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 12 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 13 }

airFMSysAlarmMapInput13 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 13 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 14 }

airFMSysAlarmMapInput14 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 14 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 15 }

airFMSysAlarmMapInput15 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 15 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 16 }

airFMSysAlarmMapInput16 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Input contact 16 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapInputEntry 17 }

-- airFM Output Alarm Mapping

airFMSysAlarmMapOutputTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the
       airFMSysAlarmMapOutputTable. "
   ::= { airFMSysAlarmMapOutput 1 }

airFMSysAlarmMapOutputTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMSysAlarmMapOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting alarm map information."
   ::= { airFMSysAlarmMapOutput 2 }

airFMSysAlarmMapOutputEntry OBJECT-TYPE
   SYNTAX AirFMSysAlarmMapOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contact alarm map type to reference."
   INDEX  { airFMSysAlarmMapOutputIndex }
   ::= { airFMSysAlarmMapOutputTable 1 }

AirFMSysAlarmMapOutputEntry ::=
   SEQUENCE {
      airFMSysAlarmMapOutputIndex       INTEGER,
      airFMSysAlarmMapOutput1           INTEGER,
      airFMSysAlarmMapOutput2           INTEGER,
      airFMSysAlarmMapOutput3           INTEGER,
      airFMSysAlarmMapOutput4           INTEGER,
      airFMSysAlarmMapOutput5           INTEGER,
      airFMSysAlarmMapOutput6           INTEGER,
      airFMSysAlarmMapOutput7           INTEGER,
      airFMSysAlarmMapOutput8           INTEGER,
      airFMSysAlarmMapOutput9           INTEGER,
      airFMSysAlarmMapOutput10          INTEGER,
      airFMSysAlarmMapOutput11          INTEGER,
      airFMSysAlarmMapOutput12          INTEGER,
      airFMSysAlarmMapOutput13          INTEGER,
      airFMSysAlarmMapOutput14          INTEGER,
      airFMSysAlarmMapOutput15          INTEGER,
      airFMSysAlarmMapOutput16          INTEGER
   }

airFMSysAlarmMapOutputIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the output relay."
   ::= { airFMSysAlarmMapOutputEntry 1 }

airFMSysAlarmMapOutput1 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 1 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 2 }

airFMSysAlarmMapOutput2 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 2 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 3 }

airFMSysAlarmMapOutput3 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 3 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 4 }

airFMSysAlarmMapOutput4 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 4 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 5 }

airFMSysAlarmMapOutput5 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 5 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 6 }

airFMSysAlarmMapOutput6 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 6 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 7 }

airFMSysAlarmMapOutput7 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 7 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 8 }

airFMSysAlarmMapOutput8 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 8 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 9 }

airFMSysAlarmMapOutput9 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 9 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 10 }

airFMSysAlarmMapOutput10 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 10 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 11 }

airFMSysAlarmMapOutput11 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 11 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 12 }

airFMSysAlarmMapOutput12 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 12 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 13 }

airFMSysAlarmMapOutput13 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 13 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 14 }

airFMSysAlarmMapOutput14 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 14 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 15 }

airFMSysAlarmMapOutput15 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 15 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 16 }

airFMSysAlarmMapOutput16 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        disabled        (2),
        enabled         (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Output relay 16 alarm map setting.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMSysAlarmMapOutputEntry 17 }

-- airFM Module Identification Table

airFMModIdentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModIdentTable. "
   ::= { airFMModIdent 1 }

airFMModIdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModIdent 2 }

airFMModIdentEntry OBJECT-TYPE
   SYNTAX AirFMModIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModIdentModuleIndex }
   ::= { airFMModIdentTable 1 }

AirFMModIdentEntry ::=
   SEQUENCE {
      airFMModIdentModuleIndex  INTEGER,
      airFMModModelNumber       DisplayString,
      airFMModSerialNumber      DisplayString,
      airFMModManufactureDate   DisplayString,
      airFMModFirmwareRev       DisplayString,
      airFMModHardwareRev       DisplayString
   }

airFMModIdentModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModIdentEntry 1 }

airFMModModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Model number of the Module."
   ::= { airFMModIdentEntry 2 }

airFMModSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unique identification number for this Module."
   ::= { airFMModIdentEntry 3 }

airFMModManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Date the Module was manufactured."
   ::= { airFMModIdentEntry 4 }

airFMModFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Revision number of the firmware installed on this
       Module."
   ::= { airFMModIdentEntry 5 }

airFMModHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Revision number of the hardware installed on this
       Module."
   ::= { airFMModIdentEntry 6 }

-- airFM Module Status Table

airFMModStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModStatusTable. "
   ::= { airFMModStatus 1 }

airFMModStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModStatus 2 }

airFMModStatusEntry OBJECT-TYPE
   SYNTAX AirFMModStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModStatusModuleIndex }
   ::= { airFMModStatusTable 1 }

AirFMModStatusEntry ::=
   SEQUENCE {
      airFMModStatusModuleIndex     INTEGER,
      airFMModSupplyTempC           INTEGER,
      airFMModSupplyTempF           INTEGER,
      airFMModSupplyHum             INTEGER,
      airFMModReturnTempC           INTEGER,
      airFMModReturnTempF           INTEGER,
      airFMModReturnHum             INTEGER,
      airFMModFilterDiffPresPa      INTEGER,
      airFMModFilterDiffPresInWC    INTEGER,
      airFMModCoilDiffPresPa        INTEGER,
      airFMModCoilDiffPresInWC      INTEGER
   }

airFMModStatusModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModStatusEntry 1 }

airFMModSupplyTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature measured at the supply sensor.
       Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 2 }

airFMModSupplyTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature measured at the supply sensor.
       Measured in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 3 }

airFMModSupplyHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidity measured at the supply sensor.
       Measured in tenths of percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 4 }

airFMModReturnTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature measured at the return sensor.
       Measured in tenths of degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 5 }

airFMModReturnTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature measured at the return sensor.
       Measured in tenths of degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 6 }

airFMModReturnHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidity measured at the return sensor.
       Measured in tenths of percent relative humidity.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 7 }

airFMModFilterDiffPresPa OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the air
       filters. A high differential pressure indicates a
       clogged filter.  Measured in Pascals.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 8 }

airFMModFilterDiffPresInWC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the air
       filters. A high differential pressure indicates a
       clogged filter.  Measured in hundredths of inches
       water column.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 9 }

airFMModCoilDiffPresPa OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the
       cooling/dehumidification coils.  Measured in Pascals.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 10 }

airFMModCoilDiffPresInWC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the
       cooling/dehumidification coils.  Measured in
       hundredths of inches water column.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModStatusEntry 11 }

-- airFM Module Properties Table

airFMModPropTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModPropTable. "
   ::= { airFMModProperties 1 }

airFMModPropTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModPropEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModProperties 2 }

airFMModPropEntry OBJECT-TYPE
   SYNTAX AirFMModPropEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModPropModuleIndex }
   ::= { airFMModPropTable 1 }

AirFMModPropEntry ::=
   SEQUENCE {
      airFMModPropModuleIndex       INTEGER,
      airFMModOutputCapacity        INTEGER,
      airFMModCapacityCtrl          INTEGER,
      airFMModHeaterType            INTEGER,
      airFMModElectricHeaterType    INTEGER,
      airFMModHumidifierType        INTEGER,
      airFMModBlwrFreqSetting       INTEGER,
      airFMModNomCoilDiffPresPa     INTEGER,
      airFMModNomCoilDiffPresInWC   INTEGER,
      airFMModCondPump              INTEGER,
      airFMModFireDetector          INTEGER,
      airFMModSmokeDetector         INTEGER,
      airFMModWaterDetector         INTEGER
   }

airFMModPropModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModPropEntry 1 }

airFMModOutputCapacity OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        kw45            (2),
        kw35            (3),
        kw40            (4),
        kw50            (5),
        kw80            (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling capacity (in Kilowatts) of the displayed
       Module.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 2 }

airFMModCapacityCtrl OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        tandem          (2),
        hotGasBypass    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The method used to load and unload the compressors.
       Tandem compressor Modules use two stages (one
       compressor each). Single compressor Modules use hot
       gas bypass.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 3 }

airFMModHeaterType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable       (1),
        none                (2),
        electricSCR         (3),
        steam               (4),
        hotWaterOnOff       (5),
        hotGasReheat        (6),
        hotGasAndElectric   (7),
        hotWaterProp        (8)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of reheating device installed in this Module.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 4 }

airFMModElectricHeaterType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        kw10            (2),
        kw15            (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type/capacity of the electric heater, if installed.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 5 }

airFMModHumidifierType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        none            (2),
        steamElectrode  (3),
        liveSteam       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of equipment installed in the Module to run
       the humidification mode.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 6 }

airFMModBlwrFreqSetting OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Frequency of the blower in tenths of hertz.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModPropEntry 7 }

airFMModNomCoilDiffPresPa OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the
       cooling/dehumidification coils.  Measured in Pascals.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModPropEntry 8 }

airFMModNomCoilDiffPresInWC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The difference in pressure on either side of the
       cooling/dehumidification coils.  Measured in
       hundredths of inches water column.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModPropEntry 9 }

airFMModCondPump OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        notPresent      (2),
        present         (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the presence of a condensate pump in the
       Modules of this System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 10 }

airFMModFireDetector OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        notPresent      (2),
        present         (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the presence of a fire detector for each
       of the Modules in this System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 11 }

airFMModSmokeDetector OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        notPresent      (2),
        present         (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the presence of a smoke detector for each
       of the Modules in this System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 12 }

airFMModWaterDetector OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        notPresent      (2),
        present         (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the presence of a water leak detector for
       each of the Modules in this System.
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModPropEntry 13 }

-- airFM Module Cooling Table

airFMModCoolTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModCoolTable. "
   ::= { airFMModCooling 1 }

airFMModCoolTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModCoolEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModCooling 2 }

airFMModCoolEntry OBJECT-TYPE
   SYNTAX AirFMModCoolEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModCoolModuleIndex }
   ::= { airFMModCoolTable 1 }

AirFMModCoolEntry ::=
   SEQUENCE {
      airFMModCoolModuleIndex   INTEGER,
      airFMModComp1             INTEGER,
      airFMModComp2             INTEGER,
      airFMModSuctPresKPa       INTEGER,
      airFMModSuctPresPSI       INTEGER,
      airFMModDischPresKPa      INTEGER,
      airFMModDischPresPSI      INTEGER,
      airFMModCondFluidVlvPos   INTEGER,
      airFMModCoilFluidVlvPos   INTEGER
   }

airFMModCoolModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModCoolEntry 1 }

airFMModComp1 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        on              (2),
        off             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of compressor 1 of the tandem compressor
       unit (on or off).
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 2 }

airFMModComp2 OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        on              (2),
        off             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of compressor 2 of the tandem compressor
       unit (on or off).
       A value of notApplicable indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 3 }

airFMModSuctPresKPa OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The refrigerant pressure measured at the suction
       inlet of the compressor.  Measured in kiloPascals.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 4 }

airFMModSuctPresPSI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The refrigerant pressure measured at the suction
       inlet of the compressor.  Measured in pounds per
       square inch.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 5 }

airFMModDischPresKPa OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The refrigerant pressure measured at the discharge
       outlet of the compressor.  Measured in kiloPascals.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 6 }

airFMModDischPresPSI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The refrigerant pressure measured at the discharge
       outlet of the compressor.  Measured in pounds per
       square inch.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 7 }

airFMModCondFluidVlvPos OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the condenser fluid valve. The valve
       regulates the flow of liquid coolant into the heat
       exchanger (condenser). 100% indicates the valve is
       completely open, and 0% indicates that the valve is
       closed.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 8 }

airFMModCoilFluidVlvPos OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the coil fluid valve. The valve
       regulates the flow of liquid coolant in the fluid
       cooling coil (MultiCool, Economizer, or Chilled
       Water). 100% indicates the valve is completely open,
       and 0% indicates that the valve is closed.  Measured
       in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModCoolEntry 9 }


-- airFM Module Humidity Control Table

airFMModHumTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModHumTable. "
   ::= { airFMModHumidity 1 }

airFMModHumTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModHumEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModHumidity 2 }

airFMModHumEntry OBJECT-TYPE
   SYNTAX AirFMModHumEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModHumModuleIndex }
   ::= { airFMModHumTable 1 }

AirFMModHumEntry ::=
   SEQUENCE {
      airFMModHumModuleIndex    INTEGER,
      airFMModHumidifier        INTEGER,
      airFMModElectrodeCurrent  INTEGER,
      airFMModHumActualOutput   INTEGER,
      airFMModWaterConductivity INTEGER,
      airFMModHotWaterVlvPos    INTEGER,
      airFMModStmElectHumMode   INTEGER
   }

airFMModHumModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModHumEntry 1 }

airFMModHumidifier OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        none            (2),
        steamElectrode  (3),
        liveSteam       (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of equipment installed in the Module to run
       the humidification mode.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 2 }

airFMModElectrodeCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current drawn by the electrodes of the steam
       cylinder humidifier.  Measured in tenths of amps.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 3 }

airFMModHumActualOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidification output of an individual Module.
       Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 4 }

airFMModWaterConductivity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The conductivity of the water in the humidifier
       cylinder.  Measured in microSiemens per centimeter.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 5 }

airFMModHotWaterVlvPos OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the hot water valve. 100% indicates
       the valve is completely open, and 0% indicates that
       the valve is closed.  Measured in percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 6 }

airFMModStmElectHumMode OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        off             (2),
        auto            (3),
        drain           (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Set the humidifier function mode.
       Off: Remove power from electrodes.
       Auto: Humidifier controlled by Module controller.
       Drain: Remove power from electrodes and drain the cylinder.

       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModHumEntry 7 }

-- airFM Module Blower 1 Table

airFMModBlwr1TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModBlwr1Table. "
   ::= { airFMModBlower1 1 }

airFMModBlwr1Table OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModBlwr1Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModBlower1 2 }

airFMModBlwr1Entry OBJECT-TYPE
   SYNTAX AirFMModBlwr1Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModBlwr1ModuleIndex }
   ::= { airFMModBlwr1Table 1 }

AirFMModBlwr1Entry ::=
   SEQUENCE {
      airFMModBlwr1ModuleIndex      INTEGER,
      airFMModBlwr1CtrlType         INTEGER,
      airFMModBlwr1CmdFreq          INTEGER,
      airFMModBlwr1ActFreq          INTEGER,
      airFMModBlwr1Poles            INTEGER,
      airFMModBlwr1RatedHorsePower  INTEGER,
      airFMModBlwr1RatedCurrent     INTEGER,
      airFMModBlwr1ActTorq          INTEGER,
      airFMModBlwr1Current          INTEGER,
      airFMModBlwr1Vlt              INTEGER,
      airFMModBlwr1DCLinkVlt        INTEGER,
      airFMModBlwr1AccTime          INTEGER,
      airFMModBlwr1DecTime          INTEGER,
      airFMModBlwr1CapLife          INTEGER,
      airFMModBlwr1CtrlCoolFanLife  INTEGER,
      airFMModBlwr1ElOvMode         INTEGER,
      airFMModBlwr1ElOvSetting      INTEGER,
      airFMModBlwr1ElOvTimeConst    INTEGER,
      airFMModBlwr1FanPower         INTEGER,
      airFMModBlwr1HeatsinkTempC    INTEGER,
      airFMModBlwr1HeatsinkTempF    INTEGER,
      airFMModBlwr1ChokeTempC       INTEGER,
      airFMModBlwr1ChokeTempF       INTEGER,
      airFMModBlwr1InverterTempC    INTEGER,
      airFMModBlwr1InverterTempF    INTEGER
   }

airFMModBlwr1ModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModBlwr1Entry 1 }

airFMModBlwr1CtrlType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        fujiVFD         (2),
        ecController    (3),
        danfossVFD      (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of blower controller.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 2 }

airFMModBlwr1CmdFreq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The requested operating frequency for the blower.
       Measured in tenths of hertz.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
  ::= { airFMModBlwr1Entry 3 }

airFMModBlwr1ActFreq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency at which the blower controller is
       operating.  Measured in tenths of hertz.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 4 }

airFMModBlwr1Poles OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of poles of the blower motor that the
       blower controller is controlling.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 5 }

airFMModBlwr1RatedHorsePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power rating of the blower motor.  Measured in
       hundredths of horsepower.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 6 }

airFMModBlwr1RatedCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current rating of the blower motor.  Measured in
       hundredths of amps.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 7 }

airFMModBlwr1ActTorq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual torque of the blower motor.  Measured in
       hundredths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 8 }

airFMModBlwr1Current OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The percent of rated current drawn by the blower
       motor.  Measured in hundredths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 9 }

airFMModBlwr1Vlt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage supplied to the blower motor.  Measured
       in tenths of volts RMS.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 10 }

airFMModBlwr1DCLinkVlt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage of the blower controller's DC bus.
       Measured in volts DC.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 11 }

airFMModBlwr1AccTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time to accelerate the blower to the specified
       frequency.  Measured in tenths of seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 12 }

airFMModBlwr1DecTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time to decelerate the blower frequency to zero.
       Measured in tenths of seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 13 }

airFMModBlwr1CapLife OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remaining life of the main circuit capacitor.
       Measured in tenths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 14 }

airFMModBlwr1CtrlCoolFanLife OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total operation time of the blower controller
       cooling fan.  Measured in hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 15 }

airFMModBlwr1ElOvMode OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        inactive        (2),
        active          (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Enables or disables the electronic overload relay.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 16 }

airFMModBlwr1ElOvSetting OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The electronic overload relay is activated when the
       current exceeds this threshold.  Measured in
       hundredths of amps.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 17 }

airFMModBlwr1ElOvTimeConst OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The delay between the current exceeding the overload
       threshold and the activation of the electronic
       overload relay.  Measured in tenths of minutes.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 18 }

airFMModBlwr1FanPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual power of the blower motor.  Measured in
       tenths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 19 }

airFMModBlwr1HeatsinkTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the heatsink on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 20 }

airFMModBlwr1HeatsinkTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the heatsink on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 21 }

airFMModBlwr1ChokeTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the choke on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 22 }

airFMModBlwr1ChokeTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the choke on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 23 }

airFMModBlwr1InverterTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the inverter on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 24 }

airFMModBlwr1InverterTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the inverter on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr1Entry 25 }


-- airFM Module Blower 2 Table

airFMModBlwr2TableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModBlwr2Table. "
   ::= { airFMModBlower2 1 }

airFMModBlwr2Table OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModBlwr2Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModBlower2 2 }

airFMModBlwr2Entry OBJECT-TYPE
   SYNTAX AirFMModBlwr2Entry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModBlwr2ModuleIndex }
   ::= { airFMModBlwr2Table 1 }

AirFMModBlwr2Entry ::=
   SEQUENCE {
      airFMModBlwr2ModuleIndex      INTEGER,
      airFMModBlwr2CtrlType         INTEGER,
      airFMModBlwr2CmdFreq          INTEGER,
      airFMModBlwr2ActFreq          INTEGER,
      airFMModBlwr2Poles            INTEGER,
      airFMModBlwr2RatedHorsePower  INTEGER,
      airFMModBlwr2RatedCurrent     INTEGER,
      airFMModBlwr2ActTorq          INTEGER,
      airFMModBlwr2Current          INTEGER,
      airFMModBlwr2Vlt              INTEGER,
      airFMModBlwr2DCLinkVlt        INTEGER,
      airFMModBlwr2AccTime          INTEGER,
      airFMModBlwr2DecTime          INTEGER,
      airFMModBlwr2CapLife          INTEGER,
      airFMModBlwr2CtrlCoolFanLife  INTEGER,
      airFMModBlwr2ElOvMode         INTEGER,
      airFMModBlwr2ElOvSetting      INTEGER,
      airFMModBlwr2ElOvTimeConst    INTEGER,
      airFMModBlwr2FanPower         INTEGER,
      airFMModBlwr2HeatsinkTempC    INTEGER,
      airFMModBlwr2HeatsinkTempF    INTEGER,
      airFMModBlwr2ChokeTempC       INTEGER,
      airFMModBlwr2ChokeTempF       INTEGER,
      airFMModBlwr2InverterTempC    INTEGER,
      airFMModBlwr2InverterTempF    INTEGER
   }

airFMModBlwr2ModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModBlwr2Entry 1 }

airFMModBlwr2CtrlType OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        fujiVFD         (2),
        ecController    (3),
        danfossVFD      (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of blower controller.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 2 }

airFMModBlwr2CmdFreq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The requested operating frequency for the blower.
       Measured in tenths of hertz.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
  ::= { airFMModBlwr2Entry 3 }

airFMModBlwr2ActFreq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The frequency at which the blower controller is
       operating.  Measured in tenths of hertz.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 4 }

airFMModBlwr2Poles OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of poles of the blower motor that the
       blower controller is controlling.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 5 }

airFMModBlwr2RatedHorsePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power rating of the blower motor.  Measured in
       hundredths of horsepower.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 6 }

airFMModBlwr2RatedCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current rating of the blower motor.  Measured in
       hundredths of amps.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 7 }

airFMModBlwr2ActTorq OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual torque of the blower motor.  Measured in
       hundredths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 8 }

airFMModBlwr2Current OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The percent of rated current drawn by the blower
       motor.  Measured in hundredths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 9 }

airFMModBlwr2Vlt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage supplied to the blower motor.  Measured
       in tenths of volts RMS.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 10 }

airFMModBlwr2DCLinkVlt OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The voltage of the blower controller's DC bus.
       Measured in volts DC.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 11 }

airFMModBlwr2AccTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time to accelerate the blower to the specified
       frequency.  Measured in tenths of seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 12 }

airFMModBlwr2DecTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The time to decelerate the blower frequency to zero.
       Measured in tenths of seconds.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 13 }

airFMModBlwr2CapLife OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remaining life of the main circuit capacitor.
       Measured in tenths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 14 }

airFMModBlwr2CtrlCoolFanLife OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total operation time of the blower controller
       cooling fan.  Measured in hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 15 }

airFMModBlwr2ElOvMode OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        inactive        (2),
        active          (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Enables or disables the electronic overload relay.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 16 }

airFMModBlwr2ElOvSetting OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The electronic overload relay is activated when the
       current exceeds this threshold.  Measured in
       hundredths of amps.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 17 }

airFMModBlwr2ElOvTimeConst OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The delay between the current exceeding the overload
       threshold and the activation of the electronic
       overload relay.  Measured in tenths of minutes.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 18 }

airFMModBlwr2FanPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual power of the blower motor.  Measured in
       tenths of percent.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 19 }

airFMModBlwr2HeatsinkTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the heatsink on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 20 }

airFMModBlwr2HeatsinkTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the heatsink on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 21 }

airFMModBlwr2ChokeTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the choke on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 22 }

airFMModBlwr2ChokeTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the choke on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 23 }

airFMModBlwr2InverterTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the inverter on the blower
       controller.  Measured in degrees Celsius.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 24 }

airFMModBlwr2InverterTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the inverter on the blower
       controller.  Measured in degrees Fahrenheit.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModBlwr2Entry 25 }

-- airFM Module Run Hours Table

airFMModRHTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModRHTable. "
   ::= { airFMModRunHours 1 }

airFMModRHTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModRHEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModRunHours 2 }

airFMModRHEntry OBJECT-TYPE
   SYNTAX AirFMModRHEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModRHModuleIndex }
   ::= { airFMModRHTable 1 }

AirFMModRHEntry ::=
   SEQUENCE {
      airFMModRHModuleIndex INTEGER,
      airFMModRHComp1       INTEGER,
      airFMModRHComp2       INTEGER,
      airFMModRHHeater      INTEGER,
      airFMModRHHum         INTEGER,
      airFMModRHBlwr1       INTEGER,
      airFMModRHBlwr2       INTEGER,
      airFMModRHBlwrCtrl1   INTEGER,
      airFMModRHBlwrCtrl2   INTEGER,
      airFMModRHComp1Reset  INTEGER,
      airFMModRHComp2Reset  INTEGER,
      airFMModRHHeaterReset INTEGER,
      airFMModRHHumReset    INTEGER,
      airFMModRHBlwr1Reset  INTEGER,
      airFMModRHBlwr2Reset  INTEGER
   }

airFMModRHModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModRHEntry 1 }

airFMModRHComp1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Compressor 1 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 2 }

airFMModRHComp2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Compressor 2 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 3 }

airFMModRHHeater OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Heater run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 4 }

airFMModRHHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Humidifier run hours
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 5 }

airFMModRHBlwr1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Blower 1 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 6 }

airFMModRHBlwr2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Blower 2 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 7 }

airFMModRHBlwrCtrl1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Blower Controller 1 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 8 }

airFMModRHBlwrCtrl2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Blower Controller 2 run hours.
       A value of -2147483648 indicates that this OID
       does not apply to this device due to its configuration."
   ::= { airFMModRHEntry 9 }

airFMModRHComp1Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the compressor 1 run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 10 }

airFMModRHComp2Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the compressor 2 run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 11 }

airFMModRHHeaterReset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the heater run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 12 }

airFMModRHHumReset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the humidifier run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 13 }

airFMModRHBlwr1Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower 1 run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 14 }

airFMModRHBlwr2Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower 2 run hours.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModRHEntry 15 }

-- airFM Module Service Intervals

airFMModServIntComp1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for compressor 1. Values stored in increments of 100
       hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 1 }

airFMModServIntComp2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for compressor 2. Values stored in increments of 100
       hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 2 }

airFMModServIntHeater OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for the reheat components. Values stored in
       increments of 100 hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 3 }

airFMModServIntHum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for the humidifier. Values stored in increments of
       100 hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 4 }

airFMModServIntBlwr1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for blower 1. Values stored in increments of 100
       hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 5 }

airFMModServIntBlwr2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for blower 2. Values stored in increments of 100
       hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 6 }

airFMModServIntBlwrCtrl1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for blower controller 1. Values stored in increments
       of 100 hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 7 }

airFMModServIntBlwrCtrl2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The interval at which to generate a maintenance alarm
       for blower controller 2. Values stored in increments
       of 100 hours.
       A value of -2147483648 indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntervals 8 }

-- airFM Module Service Intervals Reset Table

airFMModServIntResetTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the airFMModServIntTable. "
   ::= { airFMModServIntResets 1 }

airFMModServIntResetTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirFMModServIntResetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each module in
       the system. "
   ::= { airFMModServIntResets 2 }

airFMModServIntResetEntry OBJECT-TYPE
   SYNTAX AirFMModServIntResetEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The module to get information from."
   INDEX  { airFMModServIntResetModuleIndex }
   ::= { airFMModServIntResetTable 1 }

AirFMModServIntResetEntry ::=
   SEQUENCE {
      airFMModServIntResetModuleIndex   INTEGER,
      airFMModServIntComp1Reset         INTEGER,
      airFMModServIntComp2Reset         INTEGER,
      airFMModServIntHeaterReset        INTEGER,
      airFMModServIntHumReset           INTEGER,
      airFMModServIntBlwr1Reset         INTEGER,
      airFMModServIntBlwr2Reset         INTEGER,
      airFMModServIntBlwrCtrl1Reset     INTEGER,
      airFMModServIntBlwrCtrl2Reset     INTEGER
   }

airFMModServIntResetModuleIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index of the module."
   ::= { airFMModServIntResetEntry 1 }

airFMModServIntComp1Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the compressor 1 service interval maintenance
       alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 2 }

airFMModServIntComp2Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the compressor 2 service interval maintenance
       alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 3 }

airFMModServIntHeaterReset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the heater service interval maintenance alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 4 }

airFMModServIntHumReset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the humidifier service interval maintenance
       alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 5 }

airFMModServIntBlwr1Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower 1 service interval maintenance
       alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 6 }

airFMModServIntBlwr2Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower 2 service interval maintenance
       alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 7 }

airFMModServIntBlwrCtrl1Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower controller 1 service interval
       maintenance alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 8 }

airFMModServIntBlwrCtrl2Reset OBJECT-TYPE
   SYNTAX INTEGER {
        notApplicable   (1),
        noOperation     (2),
        reset           (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Reset the blower controller 2 service interval
       maintenance alarm.
       Getting this OID will do nothing and return the
       noOperation value.
       A value of notApplicable indicates that this OID does
       not apply to this device due to its configuration."
   ::= { airFMModServIntResetEntry 9 }

-- airFM Alarms Table

airFMAlarmClearActiveGroupAlarms OBJECT-TYPE
   SYNTAX INTEGER {
        noOperation     (1),
        clearAlarms     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Clear active group alarms.  If alarm conditions are
       still present, new alarms will be generated for those
       conditions.
       Getting this OID will do nothing and return the
       noOperation value."
   ::=  {  airFMAlarms 1  }

airFMAlarmClearActiveSysModAlarms OBJECT-TYPE
   SYNTAX INTEGER {
        noOperation     (1),
        clearAlarms     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Clear active system and module alarms.  If alarm
       conditions are still present, new alarms will be
       generated for those conditions.
       Getting this OID will do nothing and return the
       noOperation value."
   ::=  {  airFMAlarms 2  }

airFMAlarmConditionsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of active alarm conditions in the
       airFMAlarmConditionTable."
   ::= { airFMAlarms 3 }

airFMAlarmConditionsTable    OBJECT-TYPE
   SYNTAX SEQUENCE  OF  AirFMAlarmConditionsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Table of active alarm conditions for the device."
   ::= { airFMAlarms 4 }

airFMAlarmConditionsEntry    OBJECT-TYPE
   SYNTAX AirFMAlarmConditionsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION "Alarm condition specification"
   INDEX {  airFMAlarmConditionsIndex  }
   ::=  { airFMAlarmConditionsTable 1 }

AirFMAlarmConditionsEntry  ::=  SEQUENCE {
        airFMAlarmConditionsIndex   INTEGER,
        airFMAlarmSeverity          INTEGER,
        airFMAlarmType              INTEGER,
        airFMEventCode              INTEGER,
        airFMAlarmDate              DisplayString,
        airFMAlarmTime              DisplayString,
        airFMAlarmDescription       DisplayString
        }

airFMAlarmConditionsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Alarm condition index."
   ::=  {  airFMAlarmConditionsEntry 1  }

airFMAlarmSeverity OBJECT-TYPE
   SYNTAX INTEGER {
        informational   (1),
        warningMinor    (2),
        criticalMajor   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Severity of the alarm."
   ::=  {  airFMAlarmConditionsEntry 2  }

airFMAlarmType OBJECT-TYPE
   SYNTAX INTEGER {
        group       (1),
        system      (2),
        mainMod     (3),
        expMod1     (4),
        expMod2     (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Type of alarm."
   ::=  {  airFMAlarmConditionsEntry 3  }

airFMEventCode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "APC event code for the alarm."
   ::=  {  airFMAlarmConditionsEntry 4  }

airFMAlarmDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Date the alarm was recorded."
   ::=  {  airFMAlarmConditionsEntry 5  }

airFMAlarmTime OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Time the alarm was recorded."
   ::=  {  airFMAlarmConditionsEntry 6  }

airFMAlarmDescription OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..64))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Description of the alarm."
   ::=  {  airFMAlarmConditionsEntry 7  }

-- airPA Portable Air Conditioner Ident

airPAIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device name."
   ::= { airPAIdent 1 }

airPAModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device model number."
   ::= { airPAIdent 2 }

airPADateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying when the device was produced."
   ::= { airPAIdent 3 }

airPASerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device serial number."
   ::= { airPAIdent 4 }

airPAFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device firmware revision."
   ::= { airPAIdent 5 }

airPAHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device hardware revision."
   ::= { airPAIdent 6 }

-- airPA Portable Air Conditioner Status

airPASystemPower OBJECT-TYPE
   SYNTAX INTEGER   {
      powerON   (1),
      powerOFF  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the unit's system power setting.

        ON(1)   The system power is turned on.
        OFF(2)  The system power is turned off. "
   ::= { airPAStatus 1 }

airPAOperatingMode OBJECT-TYPE
   SYNTAX INTEGER   {
      modeOFF       (1),
      modeVENTING   (2),
      modeCOOLING   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current operating mode of the unit.

        OFF(1)      The system is off.
        VENTING(2)  The system's venting function is active.
        COOLING(3)  The system's cooling function is active. "
   ::= { airPAStatus 2 }

airPASetpointTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature setpoint in Fahrenheit to which the unit is controlling. "
   ::= { airPAStatus 3 }

airPASetpointTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature setpoint in Celsius to which the unity is controlling. "
   ::= { airPAStatus 4 }

airPABlowerSpeed OBJECT-TYPE
   SYNTAX INTEGER   {
        speedLOW    (1),
        speedHIGH   (2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit's blower speed setting.

        LOW(1)      The blower speed is low.
        HIGH(2)     The blower speed is high. "
   ::= { airPAStatus 5 }

airPACompressor OBJECT-TYPE
   SYNTAX INTEGER   {
        statusON    (1),
        statusOFF   (2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit's compressor status.

        ON(1)   The compressor is turned on.
        OFF(2)  The compressor is turned off. "
   ::= { airPAStatus 6 }

airPACondenserFan OBJECT-TYPE
   SYNTAX INTEGER   {
        statusON    (1),
        statusOFF   (2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit's condenser fan status.

        ON(1)   The condenser fan is turned on.
        OFF(2)  The condenser fan is turned off. "
   ::= { airPAStatus 7 }

airPACondensatePump OBJECT-TYPE
   SYNTAX INTEGER   {
        statusON    (1),
        statusOFF   (2)
    }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit's condensate pump status.

        ON(1)   The condensate pump is turned on.
        OFF(2)  The condensate pump is turned off. "
   ::= { airPAStatus 8 }

airPASupplyTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The supply temperature in degrees Fahrenheit. "
   ::= { airPAStatus 9 }

airPASupplyTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The supply temperature in degrees Celsius. "
   ::= { airPAStatus 10 }

airPAReturnTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The return temperature in degrees Fahrenheit. "
   ::= { airPAStatus 11 }

airPAReturnTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The return temperature in degrees Celsius. "
   ::= { airPAStatus 12 }

airPARemoteTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remote temperature in degrees Fahrenheit. "
   ::= { airPAStatus 13 }

airPARemoteTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remote temperature in degrees Celsius. "
   ::= { airPAStatus 14 }

airPARemoteHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The remote humidity. "
   ::= { airPAStatus 15 }

--  air InRow Air Conditioners
--  airIR AIR CONDITIONER Alarm Status - shared across all IR products

airIRAlarmConditionsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of active alarm conditions in the airIRAlarmConditionTable."
   ::= { airIRAlarms 1 }

airIRAlarmConditionsTable    OBJECT-TYPE
   SYNTAX SEQUENCE  OF  AirIRAlarmConditionsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Table of active alarm conditions for the device."
   ::= { airIRAlarms 2 }

airIRAlarmConditionsEntry    OBJECT-TYPE
   SYNTAX AirIRAlarmConditionsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION  "Alarm condition specification"
   INDEX {  airIRAlarmConditionsIndex  }
   ::=  { airIRAlarmConditionsTable 1 }

AirIRAlarmConditionsEntry  ::=  SEQUENCE {
        airIRAlarmConditionsIndex   INTEGER,
        airIREventCode              INTEGER,
        airIRAlarmDescription       DisplayString
        }

airIRAlarmConditionsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Alarm condition index."
   ::=  {  airIRAlarmConditionsEntry 1  }

airIREventCode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Code for the alarm."
   ::=  {  airIRAlarmConditionsEntry 2  }

airIRAlarmDescription OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..64))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION "Description of the alarm."
   ::=  {  airIRAlarmConditionsEntry 3  }

--  airIRRC AIR CONDITIONER Group Status

airIRRCGroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant output in tenths of kW."
   ::= { airIRRCGroupStatus 1 }

airIRRCGroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant demand in tenths of kW."
   ::= { airIRRCGroupStatus 2 }

airIRRCGroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in cubic feet per minute."
   ::= { airIRRCGroupStatus 3 }

airIRRCGroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in liters per second."
   ::= { airIRRCGroupStatus 4 }

airIRRCGroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRCGroupStatus 5 }

airIRRCGroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRCGroupStatus 6 }

airIRRCGroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRCGroupStatus 7 }

airIRRCGroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRCGroupStatus 8 }

airIRRCGroupStatusActiveFlowControlStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      under         (1),
      okay          (2),
      over          (3),
      notApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Status of the active flow control
      system."
   ::= { airIRRCGroupStatus 9 }


--  airIRRC AIR CONDITIONER Group Setpoints

airIRRCGroupSetpointsCoolUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRCGroupSetpoints 1 }

airIRRCGroupSetpointsCoolMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRRCGroupSetpoints 2 }

airIRRCGroupSetpointsSupplyAirUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRCGroupSetpoints 3 }

airIRRCGroupSetpointsSupplyAirMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRRCGroupSetpoints 4 }

airIRRCGroupSetpointsFanSpeedPreference OBJECT-TYPE
   SYNTAX INTEGER   {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The preferred fan speed setting."
   ::= { airIRRCGroupSetpoints 5 }

airIRRCGroupSetpointsFanSpeedControl OBJECT-TYPE
   SYNTAX INTEGER   {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fan speed control setting.
       Automatic(1) - controller manages fan speed.
       Manual(2) - fan speed is fixed and set by the fan speed preference.
       See airIRRCGroupSetpointsFanSpeedPreference."
   ::= { airIRRCGroupSetpoints 6 }

airIRRCGroupSetpointsActiveFlowControlBias  OBJECT-TYPE
   SYNTAX INTEGER   {
      positive          (1),
      slightlyPositive    (2),
      zero              (3),
      slightlyNegative  (4),
      negative             (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The active flow control bias setting."
   ::= { airIRRCGroupSetpoints 7 }

--  airIRRC AIR CONDITIONER Group Config

airIRRCGroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units present in the group."
   ::= { airIRRCGroupConfig 1 }

airIRRCGroupConfigConfigurationType OBJECT-TYPE
   SYNTAX INTEGER   {
      racs          (1),
      hacs          (2),
      in-row        (3),
      cacs          (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type."
   ::= { airIRRCGroupConfig 2 }

airIRRCGroupConfigPctGlycol OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The glycol mixture in percent."
   ::= { airIRRCGroupConfig 3 }

airIRRCGroupConfigCoolGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the PID in hundredths."
   ::= { airIRRCGroupConfig 4 }

airIRRCGroupConfigCoolResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the PID in hundredths."
   ::= { airIRRCGroupConfig 5 }

airIRRCGroupConfigCoolDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the PID in hundredths."
   ::= { airIRRCGroupConfig 6 }

airIRRCGroupConfigMaxFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum desired fan speed setting in percent."
   ::= { airIRRCGroupConfig 7 }

airIRRCGroupConfigNumberOfActiveFlowControllers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of active flow controllers
      present in the group."
   ::= { airIRRCGroupConfig 8 }

airIRRCGroupConfigActiveFlowControllerLampTest  OBJECT-TYPE
   SYNTAX INTEGER   {
      off       (1),
      on        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Turns off/on the active flow
      controller lamp test."
   ::= { airIRRCGroupConfig 9 }

airIRRCGroupConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in feet."
   ::= { airIRRCGroupConfig 10 }

airIRRCGroupConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in meters."
   ::= { airIRRCGroupConfig 11 }

--  airIRRC AIR CONDITIONER UNIT Status

airIRRCUnitStatusOperateMode OBJECT-TYPE
   SYNTAX INTEGER  {
   standby         (1),
   on              (2),
   idle            (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling unit operating mode."
   ::= { airIRRCUnitStatus 1 }

airIRRCUnitStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling output in tenths of kW."
   ::= { airIRRCUnitStatus 2 }

airIRRCUnitStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling demand in tenths of kW."
   ::= { airIRRCUnitStatus 3 }

airIRRCUnitStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in cubic feet per minute."
   ::= { airIRRCUnitStatus 4 }

airIRRCUnitStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in hundredths of
      liters per second."
   ::= { airIRRCUnitStatus 5 }

airIRRCUnitStatusRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRCUnitStatus 6 }

airIRRCUnitStatusRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRCUnitStatus 7 }

airIRRCUnitStatusSupplyAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRCUnitStatus 8 }

airIRRCUnitStatusSupplyAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Celsius."
   ::= { airIRRCUnitStatus 9 }

airIRRCUnitStatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRCUnitStatus 10 }

airIRRCUnitStatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Celsius."
   ::= { airIRRCUnitStatus 11 }

airIRRCUnitStatusContainmtDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in
      hundredths of inches of water."
   ::= { airIRRCUnitStatus 12 }

airIRRCUnitStatusContainmtDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in Pa."
   ::= { airIRRCUnitStatus 13 }

airIRRCUnitStatusFilterDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in
      hundredths of inches of water."
   ::= { airIRRCUnitStatus 14 }

airIRRCUnitStatusFilterDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in Pa."
   ::= { airIRRCUnitStatus 15 }

airIRRCUnitStatusFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average fan speed in tenths of percent."
   ::= { airIRRCUnitStatus 16 }

airIRRCUnitStatusInputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the input contact."
   ::= { airIRRCUnitStatus 17 }

airIRRCUnitStatusOutputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the output relay."
   ::= { airIRRCUnitStatus 18 }

airIRRCUnitStatusActivePowerSource OBJECT-TYPE
   SYNTAX INTEGER {
   sourceA          (1),
   sourceB          (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power source that is powering the unit."
   ::= { airIRRCUnitStatus 19 }

airIRRCUnitStatusFluidValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid valve position in percent open."
   ::= { airIRRCUnitStatus 20 }

airIRRCUnitStatusFluidFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid flow in tenths of gallons per minute."
   ::= { airIRRCUnitStatus 21 }

airIRRCUnitStatusFluidFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid flow in hundredths of liters per second."
   ::= { airIRRCUnitStatus 22 }

airIRRCUnitStatusEnteringFluidTemperatureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the entering fluid in
       tenths of degrees Fahrenheit."
   ::= { airIRRCUnitStatus 23 }

airIRRCUnitStatusEnteringFluidTemperatureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the entering fluid in
      tenths of degrees Celsius."
   ::= { airIRRCUnitStatus 24 }

airIRRCUnitStatusLeavingFluidTemperatureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the Leaving fluid in
       tenths of degrees Fahrenheit."
   ::= { airIRRCUnitStatus 25 }

airIRRCUnitStatusLeavingFluidTemperatureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the Leaving fluid in
      tenths of degrees Celsius."
   ::= { airIRRCUnitStatus 26 }

airIRRCUnitStatusLeakSensor OBJECT-TYPE
   SYNTAX INTEGER  {
   no-leak         (1),
   leak            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (no-leak/leak) of the leak sensor."
   ::= { airIRRCUnitStatus 27 }

--  airIRRC AIR CONDITIONER UNIT Ident

airIRRCUnitIdentID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit identification number."
   ::= { airIRRCUnitIdent 1 }

airIRRCUnitIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit name."
   ::= { airIRRCUnitIdent 2 }

airIRRCUnitIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit location."
   ::= { airIRRCUnitIdent 3 }

airIRRCUnitIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit model number."
   ::= { airIRRCUnitIdent 4 }

airIRRCUnitIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit serial number."
   ::= { airIRRCUnitIdent 5 }

airIRRCUnitIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit firmware version."
   ::= { airIRRCUnitIdent 6 }

airIRRCUnitIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit controller hardware revision."
   ::= { airIRRCUnitIdent 7 }

airIRRCUnitIdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit manufacture date."
   ::= { airIRRCUnitIdent 8 }


--  airIRRC AIR CONDITIONER UNIT Runhours

airIRRCUnitRunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit air filter run hours."
   ::= { airIRRCUnitRunHours 1 }

airIRRCUnitRunHoursFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 1 run hours."
   ::= { airIRRCUnitRunHours 2 }

airIRRCUnitRunHoursFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 2 run hours."
   ::= { airIRRCUnitRunHours 3 }

airIRRCUnitRunHoursFan3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 3 run hours."
   ::= { airIRRCUnitRunHours 4 }

airIRRCUnitRunHoursFan4 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 4 run hours."
   ::= { airIRRCUnitRunHours 5 }

airIRRCUnitRunHoursFan5 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 5 run hours."
   ::= { airIRRCUnitRunHours 6 }

airIRRCUnitRunHoursFan6 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 6 run hours."
   ::= { airIRRCUnitRunHours 7 }

airIRRCUnitRunHoursFan7 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 7 run hours."
   ::= { airIRRCUnitRunHours 8}

airIRRCUnitRunHoursFan8 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 8 run hours."
   ::= { airIRRCUnitRunHours 9 }

airIRRCUnitRunHoursFanPowerSupplyLeft OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan left power supply run hours."
   ::= { airIRRCUnitRunHours 10 }

airIRRCUnitRunHoursFanPowerSupplyRight OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan right power supply run hours."
   ::= { airIRRCUnitRunHours 11 }

airIRRCUnitRunHoursCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condensate pump run hours."
   ::= { airIRRCUnitRunHours 12 }

airIRRCUnitRunHoursFanPowerSupplyFeedALeft OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan, DC power feed A, left power supply run hours.
       This is only valid for a DC input unit."
   ::= { airIRRCUnitRunHours 13 }

airIRRCUnitRunHoursFanPowerSupplyFeedARight OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan, DC power feed A, right power supply run hours.
       This is only valid for a DC input unit."
   ::= { airIRRCUnitRunHours 14 }

airIRRCUnitRunHoursFanPowerSupplyFeedBLeft OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan, DC power feed B, left power supply run hours.
       This is only valid for a DC input unit."
   ::= { airIRRCUnitRunHours 15 }

airIRRCUnitRunHoursFanPowerSupplyFeedBRight OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan, DC power feed B, right power supply run hours.
       This is only valid for a DC input unit."
   ::= { airIRRCUnitRunHours 16 }

--  airIRRC AIR CONDITIONER UNIT Service Intervals

airIRRCUnitServiceIntervalsAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Air filter service interval in weeks."
   ::= { airIRRCUnitServiceIntervals 1 }

airIRRCUnitServiceIntervalsAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The air filter service interval alarm enable/disable."
   ::= { airIRRCUnitServiceIntervals 2 }


--  airIRRC AIR CONDITIONER UNIT Thresholds

airIRRCUnitThresholdsRackInletHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRCUnitThresholds 1 }

airIRRCUnitThresholdsRackInletHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRCUnitThresholds 2 }

airIRRCUnitThresholdsSupplyAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRCUnitThresholds 3 }

airIRRCUnitThresholdsSupplyAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRCUnitThresholds 4 }

airIRRCUnitThresholdsReturnAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRCUnitThresholds 5 }

airIRRCUnitThresholdsReturnAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRCUnitThresholds 6 }

airIRRCUnitThresholdsEnteringFluidHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit entering fluid high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRCUnitThresholds 7 }

airIRRCUnitThresholdsEnteringFluidHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit incoming fluid high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRCUnitThresholds 8 }


--  airIRRC AIR CONDITIONER UNIT Config

airIRRCUnitConfigCoolCapacity OBJECT-TYPE
   SYNTAX INTEGER {
   automatic      (1),
   maximum        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The cooling capacity options setting."
   ::= { airIRRCUnitConfig 1 }

airIRRCUnitConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The startup delay in seconds."
   ::= { airIRRCUnitConfig 2 }

airIRRCUnitConfigIdleOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
   yes            (1),
   no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on leak options setting."
   ::= { airIRRCUnitConfig 3 }

airIRRCUnitConfigPowerSource OBJECT-TYPE
   SYNTAX INTEGER {
   sourceA          (1),
   sourceB          (2),
   sourceAandB      (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The configured power source of the unit."
   ::= { airIRRCUnitConfig 4 }

airIRRCUnitConfigInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the input contact."
   ::= { airIRRCUnitConfig 5 }

airIRRCUnitConfigOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the output relay."
   ::= { airIRRCUnitConfig 6 }

airIRRCUnitConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
   anyAlarm       (1),
   criticalAlarm  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The source of output relay change."
   ::= { airIRRCUnitConfig 7 }

airIRRCUnitConfigIdleOnCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
   yes            (1),
   no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on cool fail options setting.
         If yes, the system will go into idle mode
         when a cooling failure is detected.
         If no, the system will not go into idle mode
         when a cooling failure is detected. "
   ::= { airIRRCUnitConfig 8 }


--  airIRRP100 AIR CONDITIONER Group Status

airIRRP100GroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in cubic feet per minute."
   ::= { airIRRP100GroupStatus 1 }

airIRRP100GroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in liters per second."
   ::= { airIRRP100GroupStatus 2 }

airIRRP100GroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupStatus 3 }

airIRRP100GroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupStatus 4 }

airIRRP100GroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupStatus 5 }

airIRRP100GroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupStatus 6 }

airIRRP100GroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant demand in tenths of kiloWatts."
   ::= { airIRRP100GroupStatus 7 }

airIRRP100GroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant output in tenths of kiloWatts."
   ::= { airIRRP100GroupStatus 8 }

airIRRP100GroupStatusHumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of humidification the group is demanding
       from the humidifiers in percent."
   ::= { airIRRP100GroupStatus 9 }

airIRRP100GroupStatusHumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of humidification the group is
       supplying in percent."
   ::= { airIRRP100GroupStatus 10 }

airIRRP100GroupStatusDehumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of dehumidification the group is demanding
       from the electric heaters in percent."
   ::= { airIRRP100GroupStatus 11 }

airIRRP100GroupStatusDehumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of dehumidification the group is
       supplying in percent."
   ::= { airIRRP100GroupStatus 12 }

airIRRP100GroupStatusReheatDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of heating the group is demanding
       from the electric heaters in percent."
   ::= { airIRRP100GroupStatus 13 }

airIRRP100GroupStatusReheatOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of heating the group is
       supplying in percent."
   ::= { airIRRP100GroupStatus 14 }

airIRRP100GroupStatusActiveFlowControlStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      under         (1),
      okay          (2),
      over          (3),
      notApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Status of the active flow control
      system."
   ::= { airIRRP100GroupStatus 15 }

airIRRP100GroupStatusDewPointTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group average dew point temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupStatus 16 }

airIRRP100GroupStatusDewPointTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group average dew point temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupStatus 17 }


--  airIRRP100 AIR CONDITIONER Group Setpoints

airIRRP100GroupSetpointsCoolUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupSetpoints 1 }

airIRRP100GroupSetpointsCoolMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupSetpoints 2 }

airIRRP100GroupSetpointsSupplyAirUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupSetpoints 3 }

airIRRP100GroupSetpointsSupplyAirMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupSetpoints 4 }

airIRRP100GroupSetpointsHumidify OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group humidify setpoint in tenths of
      percent relative humidity."
   ::= { airIRRP100GroupSetpoints 5 }

airIRRP100GroupSetpointsDehumidify OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group dehumidify setpoint in tenths of
      percent relative humidity."
   ::= { airIRRP100GroupSetpoints 6 }

airIRRP100GroupSetpointsDehumidifyDeadband OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group dehumidify deadband in percent relative humidity."
   ::= { airIRRP100GroupSetpoints 7 }

airIRRP100GroupSetpointsReheatUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100GroupSetpoints 8 }

airIRRP100GroupSetpointsReheatMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP100GroupSetpoints 9 }

airIRRP100GroupSetpointsFanSpeedPreference OBJECT-TYPE
   SYNTAX INTEGER   {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The preferred fan speed setting."
   ::= { airIRRP100GroupSetpoints 10 }

airIRRP100GroupSetpointsFanSpeedControl OBJECT-TYPE
   SYNTAX INTEGER   {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fan speed control setting."
   ::= { airIRRP100GroupSetpoints 11 }

airIRRP100GroupSetpointsActiveFlowControlBias  OBJECT-TYPE
   SYNTAX INTEGER   {
      positive          (1),
      slightlyPositive  (2),
      zero              (3),
      slightlyNegative  (4),
      negative          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The active flow control bias setting."
   ::= { airIRRP100GroupSetpoints 12 }

--  airIRRP100 AIR CONDITIONER Group Config

airIRRP100GroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units present in the group."
   ::= { airIRRP100GroupConfig 1 }

airIRRP100GroupConfigConfigurationType OBJECT-TYPE
   SYNTAX INTEGER   {
      racs          (1),
      hacs          (2),
      in-row        (3),
      cacs          (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type."
   ::= { airIRRP100GroupConfig 2 }

airIRRP100GroupConfigCoolGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the cool PID in hundredths."
   ::= { airIRRP100GroupConfig 3 }

airIRRP100GroupConfigCoolResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the cool PID in hundredths."
   ::= { airIRRP100GroupConfig 4 }

airIRRP100GroupConfigCoolDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the cool PID in hundredths."
   ::= { airIRRP100GroupConfig 5 }

airIRRP100GroupConfigHumidifySensitivityBand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The percent relative humidity below the setpoint that
       will cause the humidifier to run at 100% capacity."
   ::= { airIRRP100GroupConfig 6 }

airIRRP100GroupConfigReheatGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the reheat PID in hundredths."
   ::= { airIRRP100GroupConfig 7 }

airIRRP100GroupConfigReheatResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the reheat PID in hundredths."
   ::= { airIRRP100GroupConfig 8 }

airIRRP100GroupConfigReheatDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the reheat PID in hundredths."
   ::= { airIRRP100GroupConfig 9 }

airIRRP100GroupConfigNumberofBackupUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of backup units."
   ::= { airIRRP100GroupConfig 10 }

airIRRP100GroupConfigRuntimeBalancingEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable runtime balancing feature."
   ::= { airIRRP100GroupConfig 11 }

airIRRP100GroupConfigLoadAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable load assist feature."
   ::= { airIRRP100GroupConfig 12 }

airIRRP100GroupConfigFullRPBackups OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of full featured RPs that can be used as backup units."
   ::= { airIRRP100GroupConfig 13 }

airIRRP100GroupConfigMaxFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum desired fan speed setting in percent."
   ::= { airIRRP100GroupConfig 14 }

airIRRP100GroupConfigNumberOfActiveFlowControllers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of active flow controllers
      present in the group."
   ::= { airIRRP100GroupConfig 15 }

airIRRP100GroupConfigActiveFlowControllerLampTest  OBJECT-TYPE
   SYNTAX INTEGER   {
      off       (1),
      on        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Turns off/on the active flow
      controller lamp test."
   ::= { airIRRP100GroupConfig 16 }

airIRRP100GroupConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in feet."
   ::= { airIRRP100GroupConfig 17 }

airIRRP100GroupConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in meters."
   ::= { airIRRP100GroupConfig 18 }

--  airIRRP100 AIR CONDITIONER UNIT Status

airIRRP100UnitStatusOperateMode OBJECT-TYPE
   SYNTAX INTEGER  {
   standby         (1),
   on              (2),
   idle            (3),
   prestart        (4),
   service         (5),
   backup          (6),
   assist          (7)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling unit operating mode."
   ::= { airIRRP100UnitStatus 1 }

airIRRP100UnitStatusRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 2 }

airIRRP100UnitStatusRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 3 }

airIRRP100UnitStatusSupplyAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 4 }

airIRRP100UnitStatusSupplyAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 5 }

airIRRP100UnitStatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 6 }

airIRRP100UnitStatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 7 }

airIRRP100UnitStatusSupplyHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity of the supply air in
       tenths of percent."
   ::= { airIRRP100UnitStatus 8 }

airIRRP100UnitStatusReturnHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity of the return air in
       tenths of percent."
   ::= { airIRRP100UnitStatus 9 }

airIRRP100UnitStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in cubic feet per minute."
   ::= { airIRRP100UnitStatus 10 }

airIRRP100UnitStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in hundredths of
      liters per second."
   ::= { airIRRP100UnitStatus 11 }

airIRRP100UnitStatusFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average fan speed in tenths of percent."
   ::= { airIRRP100UnitStatus 12 }

airIRRP100UnitStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling demand in tenths of kiloWatts."
   ::= { airIRRP100UnitStatus 13 }

airIRRP100UnitStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling output in tenths of kiloWatts."
   ::= { airIRRP100UnitStatus 14 }

airIRRP100UnitStatusHumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of humidification the unit is demanding
       from the humidifier in percent."
   ::= { airIRRP100UnitStatus 15 }

airIRRP100UnitStatusHumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual humidification output of the unit
       in percent."
   ::= { airIRRP100UnitStatus 16 }

airIRRP100UnitStatusDehumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of dehumidification the unit is
       demanding in percent."
   ::= { airIRRP100UnitStatus 17 }

airIRRP100UnitStatusDehumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual dehumidification output of the unit
       in percent."
   ::= { airIRRP100UnitStatus 18 }

airIRRP100UnitStatusReheatDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of heating the unit is demanding
       from the electric heater in percent."
   ::= { airIRRP100UnitStatus 19 }

airIRRP100UnitStatusReheatOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual heating output of the unit
       in percent."
   ::= { airIRRP100UnitStatus 20 }

airIRRP100UnitStatusInputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the input contact."
   ::= { airIRRP100UnitStatus 21 }

airIRRP100UnitStatusOutputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the output relay."
   ::= { airIRRP100UnitStatus 22 }

airIRRP100UnitStatusRackInletTemperature1US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 23 }

airIRRP100UnitStatusRackInletTemperature1Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 24 }

airIRRP100UnitStatusRackInletTemperature2US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 25 }

airIRRP100UnitStatusRackInletTemperature2Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 26 }

airIRRP100UnitStatusRackInletTemperature3US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 27 }

airIRRP100UnitStatusRackInletTemperature3Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP100UnitStatus 28 }

airIRRP100UnitStatusFilterDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in
      hundredths of inches of water."
   ::= { airIRRP100UnitStatus 29 }

airIRRP100UnitStatusFilterDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in Pa."
   ::= { airIRRP100UnitStatus 30 }

airIRRP100UnitStatusContainmtDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in
      hundredths of inches of water."
   ::= { airIRRP100UnitStatus 31 }

airIRRP100UnitStatusContainmtDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in Pa."
   ::= { airIRRP100UnitStatus 32 }

airIRRP100UnitStatusHumidifierCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidifier current of the unit
       in tenths of amperes."
   ::= { airIRRP100UnitStatus 33 }

airIRRP100UnitStatusHumidifierWaterConductivity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The water conductivity in the humidifier of the unit
       in microSiemens/cm."
   ::= { airIRRP100UnitStatus 34 }

airIRRP100UnitStatusCompressorDriveSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The compressor drive speed in hundredths of Hertz."
   ::= { airIRRP100UnitStatus 35 }

airIRRP100UnitStatusCompressorDrivePower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The compressor drive power consumption in
       tenths of kiloWatts."
   ::= { airIRRP100UnitStatus 36 }

airIRRP100UnitStatusCompressorDriveVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The compressor drive voltage consumption in
       tenths of volts."
   ::= { airIRRP100UnitStatus 37 }

airIRRP100UnitStatusCompressorDriveCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The compressor drive voltage consumption in
       tenths of amperes."
   ::= { airIRRP100UnitStatus 38 }

airIRRP100UnitStatusCompressorDriveDCLinkVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The compressor drive DC link voltage in
       tenths of volts."
   ::= { airIRRP100UnitStatus 39 }

airIRRP100UnitStatusCompressorDriveHeatSinkTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the compressor drive heatsink
       in tenths of degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 40 }

airIRRP100UnitStatusCompressorDriveHeatSinkTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the compressor drive heatsink
       in tenths of degrees Celsius."
   ::= { airIRRP100UnitStatus 41 }

airIRRP100UnitStatusCompressorDriveControlCardTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the compressor drive control card
       in tenths of degrees Fahrenheit."
   ::= { airIRRP100UnitStatus 42 }

airIRRP100UnitStatusCompressorDriveControlCardTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the compressor drive control card
       in tenths of degrees Celsius."
   ::= { airIRRP100UnitStatus 43 }

airIRRP100UnitStatusCompressorDriveWarningStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The four byte warning status of the compressor drive
       in hexadecimal."
   ::= { airIRRP100UnitStatus 44 }

airIRRP100UnitStatusCompressorDriveAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The four byte alarm status of the compressor drive
       in hexadecimal."
   ::= { airIRRP100UnitStatus 45 }

airIRRP100UnitStatusSuctionPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in pounds per square inch (PSI)."
   ::= { airIRRP100UnitStatus 46 }

airIRRP100UnitStatusSuctionPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in kiloPascals (kPa)."
   ::= { airIRRP100UnitStatus 47 }

airIRRP100UnitStatusDischargePressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in pounds per square inch (PSI)."
   ::= { airIRRP100UnitStatus 48 }

airIRRP100UnitStatusDischargePressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in kiloPascals (kPa)."
   ::= { airIRRP100UnitStatus 49 }

airIRRP100UnitStatusLeakSensor OBJECT-TYPE
   SYNTAX INTEGER  {
   no-leak         (1),
   leak            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (no-leak/leak) of the leak sensor."
   ::= { airIRRP100UnitStatus 50 }

--  airIRRP100 AIR CONDITIONER UNIT Ident

airIRRP100UnitIdentID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit identification number."
   ::= { airIRRP100UnitIdent 1 }

airIRRP100UnitIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit name."
   ::= { airIRRP100UnitIdent 2 }

airIRRP100UnitIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit location."
   ::= { airIRRP100UnitIdent 3 }

airIRRP100UnitIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit model number."
   ::= { airIRRP100UnitIdent 4 }

airIRRP100UnitIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit serial number."
   ::= { airIRRP100UnitIdent 5 }

airIRRP100UnitIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit firmware version."
   ::= { airIRRP100UnitIdent 6 }

airIRRP100UnitIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit controller hardware revision."
   ::= { airIRRP100UnitIdent 7 }

airIRRP100UnitIdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit manufacture date."
   ::= { airIRRP100UnitIdent 8 }


--  airIRRP100 AIR CONDITIONER UNIT Runhours

airIRRP100UnitRunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit air filter run hours."
   ::= { airIRRP100UnitRunHours 1 }

airIRRP100UnitRunHoursCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condensate pump run hours."
   ::= { airIRRP100UnitRunHours 2 }

airIRRP100UnitRunHoursHumidifier OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan right power supply run hours."
   ::= { airIRRP100UnitRunHours 3 }

airIRRP100UnitRunHoursFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 1 run hours."
   ::= { airIRRP100UnitRunHours 4 }

airIRRP100UnitRunHoursHeater1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit heater 1 run hours."
   ::= { airIRRP100UnitRunHours 5 }

airIRRP100UnitRunHoursFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 2 run hours."
   ::= { airIRRP100UnitRunHours 6 }

airIRRP100UnitRunHoursHeater2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit Heater 2 run hours."
   ::= { airIRRP100UnitRunHours 7 }

airIRRP100UnitRunHoursCompressor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit compressor run hours."
   ::= { airIRRP100UnitRunHours 8 }

airIRRP100UnitRunHoursSystem OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total system run hours."
   ::= { airIRRP100UnitRunHours 9 }


--  airIRRP100 AIR CONDITIONER UNIT Service Intervals

airIRRP100UnitServiceIntervalAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Air filter service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 1 }

airIRRP100UnitServiceIntervalAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The air filter service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 2 }

airIRRP100UnitServiceIntervalHumidifier OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Humidifier service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 3 }

airIRRP100UnitServiceIntervalHumidifierAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidifier service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 4 }

airIRRP100UnitServiceIntervalHeater OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Heater service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 5 }

airIRRP100UnitServiceIntervalHeaterAlarm  OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The heater service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 6 }

airIRRP100UnitServiceIntervalCompressor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Compressor service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 7 }

airIRRP100UnitServiceIntervalCompressorAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The compressor service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 8 }

airIRRP100UnitServiceIntervalCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Condensate pump service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 9 }

airIRRP100UnitServiceIntervalCondensatePumpAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The condensate pump service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 10 }

airIRRP100UnitServiceIntervalFans OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Fans service interval in weeks."
   ::= { airIRRP100UnitServiceIntervals 11 }

airIRRP100UnitServiceIntervalFansAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fans service interval alarm enable/disable."
   ::= { airIRRP100UnitServiceIntervals 12 }



--  airIRRP100 AIR CONDITIONER UNIT Thresholds

airIRRP100UnitThresholdsRackInletHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP100UnitThresholds 1 }

airIRRP100UnitThresholdsRackInletHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP100UnitThresholds 2 }

airIRRP100UnitThresholdsSupplyAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP100UnitThresholds 3 }

airIRRP100UnitThresholdsSupplyAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP100UnitThresholds 4 }

airIRRP100UnitThresholdsReturnAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP100UnitThresholds 5 }

airIRRP100UnitThresholdsReturnAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP100UnitThresholds 6 }

airIRRP100UnitThresholdsSupplyHumidityHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply humidity high threshold in
      tenths of percent relative humidity."
   ::= { airIRRP100UnitThresholds 7 }

airIRRP100UnitThresholdsSupplyHumidityLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply humidity low threshold in
      tenths of percent relative humidity."
   ::= { airIRRP100UnitThresholds 8 }


--  airIRRP100 AIR CONDITIONER UNIT Config

airIRRP100UnitConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The startup delay in seconds."
   ::= { airIRRP100UnitConfig 1 }

airIRRP100UnitConfigCoolCapacity OBJECT-TYPE
   SYNTAX INTEGER {
   automatic      (1),
   maximum        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The cooling capacity options setting."
   ::= { airIRRP100UnitConfig 2 }

airIRRP100UnitConfigIdleOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
   yes            (1),
   no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on leak options setting."
   ::= { airIRRP100UnitConfig 3 }

airIRRP100UnitConfigInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the input contact."
   ::= { airIRRP100UnitConfig 4 }

airIRRP100UnitConfigOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the output relay."
   ::= { airIRRP100UnitConfig 5 }

airIRRP100UnitConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
   anyAlarm       (1),
   criticalAlarm  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The source of output relay change."
   ::= { airIRRP100UnitConfig 6 }

airIRRP100UnitConfigHumidifyEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable/disable humidification."
   ::= { airIRRP100UnitConfig 7 }

airIRRP100UnitConfigHumidifierControl OBJECT-TYPE
   SYNTAX INTEGER {
   auto           (1),
   drainOff       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidifier drain control."
   ::= { airIRRP100UnitConfig 8 }

airIRRP100UnitConfigDehumidifyEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable dehumidification."
   ::= { airIRRP100UnitConfig 9 }

airIRRP100UnitConfigReheatEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable reheat."
   ::= { airIRRP100UnitConfig 10 }

airIRRP100UnitConfigHeatAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable heat assist."
   ::= { airIRRP100UnitConfig 11 }

airIRRP100UnitConfigPowerSourceConfig OBJECT-TYPE
   SYNTAX INTEGER {
   single         (1),
   dual           (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Configure the input power source:  (1) single feed or (2) dual feed."
   ::= { airIRRP100UnitConfig 12 }

airIRRP100UnitConfigUnitRoleOverride OBJECT-TYPE
   SYNTAX INTEGER {
      automatic      (1),
      forcedOn       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (1) automatic, the system determines
      which units are used as primary units and which units are used as backups.
      When this OID value is (2) forcedOn, the connected unit is set as a primary
      unit."
   ::= { airIRRP100UnitConfig 13 }

airIRRP100UnitConfigSecondaryPowerFeedCapability OBJECT-TYPE
   SYNTAX INTEGER {
      full        (1),
      reduced     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Available on chilled water units.  When the power source config setting
      is set to dual, setting this value to reduced (2) will inhibit the heater
      and humdifier when the unit is being powered from the secondary
      input."
   ::= { airIRRP100UnitConfig 14 }

airIRRP100UnitConfigIdleOnCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (1) enable, the unit idles if it detects that it is blowing warm
      air into the cold aisle.  The unit will attempt to restart at 5 minute intervals."
   ::= { airIRRP100UnitConfig 15 }

--  airIRRP500 AIR CONDITIONER Group Status

airIRRP500GroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in cubic feet per minute."
   ::= { airIRRP500GroupStatus 1 }

airIRRP500GroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group air flow in liters per second."
   ::= { airIRRP500GroupStatus 2 }

airIRRP500GroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupStatus 3 }

airIRRP500GroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group maximum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupStatus 4 }

airIRRP500GroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupStatus 5 }

airIRRP500GroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group minimum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupStatus 6 }

airIRRP500GroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant demand in tenths of kiloWatts."
   ::= { airIRRP500GroupStatus 7 }

airIRRP500GroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group coolant output in tenths of kiloWatts."
   ::= { airIRRP500GroupStatus 8 }

airIRRP500GroupStatusHumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of humidification the group is demanding
       from the humidifiers in percent."
   ::= { airIRRP500GroupStatus 9 }

airIRRP500GroupStatusHumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of humidification the group is
       supplying in percent."
   ::= { airIRRP500GroupStatus 10 }

airIRRP500GroupStatusDehumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of dehumidification the group is demanding
       from the electric heaters in percent."
   ::= { airIRRP500GroupStatus 11 }

airIRRP500GroupStatusDehumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of dehumidification the group is
       supplying in percent."
   ::= { airIRRP500GroupStatus 12 }

airIRRP500GroupStatusReheatDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of heating the group is demanding
       from the electric heaters in percent."
   ::= { airIRRP500GroupStatus 13 }

airIRRP500GroupStatusReheatOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual amount of heating the group is
       supplying in percent."
   ::= { airIRRP500GroupStatus 14 }


airIRRP500GroupStatusActiveFlowControlStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      under         (1),
      okay          (2),
      over          (3),
      notApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Status of the active flow control
      system."
   ::= { airIRRP500GroupStatus 15 }

airIRRP500GroupStatusDewPointTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group average dew point temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupStatus 16 }

airIRRP500GroupStatusDewPointTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Group average dew point temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupStatus 17 }


--  airIRRP500 AIR CONDITIONER Group Setpoints

airIRRP500GroupSetpointsCoolUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupSetpoints 1 }

airIRRP500GroupSetpointsCoolMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupSetpoints 2 }

airIRRP500GroupSetpointsSupplyAirUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupSetpoints 3 }

airIRRP500GroupSetpointsSupplyAirMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupSetpoints 4 }

airIRRP500GroupSetpointsHumidify OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group humidify setpoint in tenths of
      percent relative humidity."
   ::= { airIRRP500GroupSetpoints 5 }

airIRRP500GroupSetpointsDehumidify OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group dehumidify setpoint in tenths of
      percent relative humidity."
   ::= { airIRRP500GroupSetpoints 6 }

airIRRP500GroupSetpointsDehumidifyDeadband OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group dehumidify deadband in
      percent relative humidity."
   ::= { airIRRP500GroupSetpoints 7 }

airIRRP500GroupSetpointsReheatUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500GroupSetpoints 8 }

airIRRP500GroupSetpointsReheatMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRRP500GroupSetpoints 9 }

airIRRP500GroupSetpointsFanSpeedPreference OBJECT-TYPE
   SYNTAX INTEGER   {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The preferred fan speed setting."
   ::= { airIRRP500GroupSetpoints 10 }

airIRRP500GroupSetpointsFanSpeedControl OBJECT-TYPE
   SYNTAX INTEGER   {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fan speed control setting."
   ::= { airIRRP500GroupSetpoints 11 }

airIRRP500GroupSetpointsActiveFlowControlBias  OBJECT-TYPE
   SYNTAX INTEGER   {
      positive          (1),
      slightlyPositive  (2),
      zero              (3),
      slightlyNegative  (4),
      negative          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The active flow control bias setting."
   ::= { airIRRP500GroupSetpoints 12 }

--  airIRRP500 AIR CONDITIONER Group Config

airIRRP500GroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units."
   ::= { airIRRP500GroupConfig 1 }

airIRRP500GroupConfigConfigurationType OBJECT-TYPE
   SYNTAX INTEGER   {
      racs          (1),
      hacs          (2),
      in-row        (3),
      cacs          (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type."
   ::= { airIRRP500GroupConfig 2 }

airIRRP500GroupConfigPercentGlycol OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The glycol mixture in percent."
   ::= { airIRRP500GroupConfig 3 }

airIRRP500GroupConfigCoolGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the cool PID in hundredths."
   ::= { airIRRP500GroupConfig 4 }

airIRRP500GroupConfigCoolResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the cool PID in hundredths."
   ::= { airIRRP500GroupConfig 5 }

airIRRP500GroupConfigCoolDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the cool PID in hundredths."
   ::= { airIRRP500GroupConfig 6 }

airIRRP500GroupConfigHumidifySensitivityBand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The percent relative humidity below the setpoint that
       will cause the humidifier to run at 100% capacity."
   ::= { airIRRP500GroupConfig 7 }

airIRRP500GroupConfigReheatGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the reheat PID in hundredths."
   ::= { airIRRP500GroupConfig 8 }

airIRRP500GroupConfigReheatResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the reheat PID in hundredths."
   ::= { airIRRP500GroupConfig 9 }

airIRRP500GroupConfigReheatDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the reheat PID in hundredths."
   ::= { airIRRP500GroupConfig 10 }

airIRRP500GroupConfigMaxFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum desired fan speed setting in percent."
   ::= { airIRRP500GroupConfig 11 }

airIRRP500GroupConfigNumberofBackupUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of backup units."
   ::= { airIRRP500GroupConfig 12 }

airIRRP500GroupConfigRuntimeBalancingEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable runtime balancing feature."
   ::= { airIRRP500GroupConfig 13 }

airIRRP500GroupConfigLoadAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable load assist feature."
   ::= { airIRRP500GroupConfig 14 }

airIRRP500GroupConfigFullRPBackups OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of full featured RPs that can be used as backup units."
   ::= { airIRRP500GroupConfig 15 }

airIRRP500GroupConfigNumberOfActiveFlowControllers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of active flow controllers
      present in the group."
   ::= { airIRRP500GroupConfig 16 }

airIRRP500GroupConfigActiveFlowControllerLampTest  OBJECT-TYPE
   SYNTAX INTEGER   {
      off       (1),
      on        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Turns off/on the active flow
      controller lamp test."
   ::= { airIRRP500GroupConfig 17 }

airIRRP500GroupConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in feet."
   ::= { airIRRP500GroupConfig 18 }

airIRRP500GroupConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in meters."
   ::= { airIRRP500GroupConfig 19 }

--  airIRRP500 AIR CONDITIONER UNIT Status

airIRRP500UnitStatusOperateMode OBJECT-TYPE
   SYNTAX INTEGER  {
   standby         (1),
   on              (2),
   idle            (3),
   prestart        (4),
   backup          (5),
   assist          (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling unit operating mode."
   ::= { airIRRP500UnitStatus 1 }

airIRRP500UnitStatusMaximumRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum unit rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 2 }

airIRRP500UnitStatusMaximumRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The maximum unit rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 3 }

airIRRP500UnitStatusSupplyAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 4 }

airIRRP500UnitStatusSupplyAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 5 }

airIRRP500UnitStatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 6 }

airIRRP500UnitStatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 7 }

airIRRP500UnitStatusSupplyHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity of the supply air in
       tenths of percent."
   ::= { airIRRP500UnitStatus 8 }

airIRRP500UnitStatusReturnHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The relative humidity of the return air in
       tenths of percent."
   ::= { airIRRP500UnitStatus 9 }

airIRRP500UnitStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in cubic feet per minute."
   ::= { airIRRP500UnitStatus 10 }

airIRRP500UnitStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in hundredths of
      liters per second."
   ::= { airIRRP500UnitStatus 11 }

airIRRP500UnitStatusFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average fan speed in tenths of percent."
   ::= { airIRRP500UnitStatus 12 }

airIRRP500UnitStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling demand in tenths of kiloWatts."
   ::= { airIRRP500UnitStatus 13 }

airIRRP500UnitStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling output in tenths of kiloWatts."
   ::= { airIRRP500UnitStatus 14 }

airIRRP500UnitStatusHumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of humidification the unit is demanding
       from the humidifier in percent."
   ::= { airIRRP500UnitStatus 15 }

airIRRP500UnitStatusHumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual humidification output of the unit
       in percent."
   ::= { airIRRP500UnitStatus 16 }

airIRRP500UnitStatusDehumidifyDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of dehumidification the unit is
       demanding in percent."
   ::= { airIRRP500UnitStatus 17 }

airIRRP500UnitStatusDehumidifyOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual dehumidification output of the unit
       in percent."
   ::= { airIRRP500UnitStatus 18 }

airIRRP500UnitStatusReheatDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The amount of heating the unit is demanding
       from the electric heater in percent."
   ::= { airIRRP500UnitStatus 19 }

airIRRP500UnitStatusReheatOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The actual heating output of the unit
       in percent."
   ::= { airIRRP500UnitStatus 20 }

airIRRP500UnitStatusInputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the input contact."
   ::= { airIRRP500UnitStatus 21 }

airIRRP500UnitStatusOutputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the output relay."
   ::= { airIRRP500UnitStatus 22 }

airIRRP500UnitStatusRackInletTemperature1US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 23 }

airIRRP500UnitStatusRackInletTemperature1Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 24 }

airIRRP500UnitStatusRackInletTemperature2US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 25 }

airIRRP500UnitStatusRackInletTemperature2Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 26 }

airIRRP500UnitStatusRackInletTemperature3US OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 27 }

airIRRP500UnitStatusRackInletTemperature3Metric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature sensor in tenths of
      degrees Celsius."
   ::= { airIRRP500UnitStatus 28 }

airIRRP500UnitStatusContainmtDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in
      hundredths of inches of water."
   ::= { airIRRP500UnitStatus 29 }

airIRRP500UnitStatusContainmtDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in Pa."
   ::= { airIRRP500UnitStatus 30 }

airIRRP500UnitStatusFilterDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in
      hundredths of inches of water."
   ::= { airIRRP500UnitStatus 31 }

airIRRP500UnitStatusFilterDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in Pa."
   ::= { airIRRP500UnitStatus 32 }

airIRRP500UnitStatusHumidifierCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The humidifier current of the unit
       in tenths of amperes."
   ::= { airIRRP500UnitStatus 33 }

airIRRP500UnitStatusHumidifierWaterConductivity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The water conductivity in the humidifier of the unit
       in microSiemens/cm."
   ::= { airIRRP500UnitStatus 34 }

airIRRP500UnitStatusActivePowerSource OBJECT-TYPE
   SYNTAX INTEGER {
   sourceA          (1),
   sourceB          (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The power source that is powering the unit."
   ::= { airIRRP500UnitStatus 35 }

airIRRP500UnitStatusFluidValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid valve position in percent open."
   ::= { airIRRP500UnitStatus 36 }

airIRRP500UnitStatusFluidFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid flow in tenths of gallons per minute."
   ::= { airIRRP500UnitStatus 37 }

airIRRP500UnitStatusFluidFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The fluid flow in hundredths of liters per second."
   ::= { airIRRP500UnitStatus 38 }

airIRRP500UnitStatusEnteringFluidTemperatureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the entering fluid in
       tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 39 }

airIRRP500UnitStatusEnteringFluidTemperatureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the entering fluid in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitStatus 40 }

airIRRP500UnitStatusLeavingFluidTemperatureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the Leaving fluid in
       tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitStatus 41 }

airIRRP500UnitStatusLeavingFluidTemperatureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature of the Leaving fluid in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitStatus 42 }

airIRRP500UnitStatusLeakSensor OBJECT-TYPE
   SYNTAX INTEGER  {
   no-leak         (1),
   leak            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (no-leak/leak) of the leak sensor."
   ::= { airIRRP500UnitStatus 43 }


--  airIRRP500 AIR CONDITIONER UNIT Ident

airIRRP500UnitIdentID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit identification number."
   ::= { airIRRP500UnitIdent 1 }

airIRRP500UnitIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit name."
   ::= { airIRRP500UnitIdent 2 }

airIRRP500UnitIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit location."
   ::= { airIRRP500UnitIdent 3 }

airIRRP500UnitIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit model number."
   ::= { airIRRP500UnitIdent 4 }

airIRRP500UnitIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit serial number."
   ::= { airIRRP500UnitIdent 5 }

airIRRP500UnitIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit firmware version."
   ::= { airIRRP500UnitIdent 6 }

airIRRP500UnitIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit controller hardware revision."
   ::= { airIRRP500UnitIdent 7 }

airIRRP500UnitIdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit manufacture date."
   ::= { airIRRP500UnitIdent 8 }


--  airIRRP500 AIR CONDITIONER UNIT Runhours

airIRRP500UnitRunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit air filter run hours in hours."
   ::= { airIRRP500UnitRunHours 1 }

airIRRP500UnitRunHoursCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condensate pump run hours in hours."
   ::= { airIRRP500UnitRunHours 2 }

airIRRP500UnitRunHoursHumidifier OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan right power supply run hours in hours."
   ::= { airIRRP500UnitRunHours 3 }

airIRRP500UnitRunHoursFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 1 run hours in hours."
   ::= { airIRRP500UnitRunHours 4 }

airIRRP500UnitRunHoursHeater1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit heater 1 run hours in hours."
   ::= { airIRRP500UnitRunHours 5 }

airIRRP500UnitRunHoursFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 2 run hours in hours."
   ::= { airIRRP500UnitRunHours 6 }

airIRRP500UnitRunHoursHeater2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit Heater 2 run hours in hours."
   ::= { airIRRP500UnitRunHours 7 }

airIRRP500UnitRunHoursFan3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan 3 run hours in hours."
   ::= { airIRRP500UnitRunHours 8 }

airIRRP500UnitRunHoursHeater3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit heater 3 run hours in hours."
   ::= { airIRRP500UnitRunHours 9 }

airIRRP500UnitRunHoursSystem OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Total system run hours."
   ::= { airIRRP500UnitRunHours 10 }


--  airIRRP500 AIR CONDITIONER UNIT Service Intervals

airIRRP500UnitServiceIntervalAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Air filter service interval in weeks."
   ::= { airIRRP500UnitServiceIntervals 1 }

airIRRP500UnitServiceIntervalAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The air filter service interval alarm enable/disable."
   ::= { airIRRP500UnitServiceIntervals 2 }

airIRRP500UnitServiceIntervalHumidifier OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Humidifier service interval in weeks."
   ::= { airIRRP500UnitServiceIntervals 3 }

airIRRP500UnitServiceIntervalHumidifierAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidifier service interval alarm enable/disable."
   ::= { airIRRP500UnitServiceIntervals 4 }

airIRRP500UnitServiceIntervalHeater OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Heater service interval in weeks."
   ::= { airIRRP500UnitServiceIntervals 5 }

airIRRP500UnitServiceIntervalHeaterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The heater service interval alarm enable/disable."
   ::= { airIRRP500UnitServiceIntervals 6 }

airIRRP500UnitServiceIntervalCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Condensate pump service interval in weeks."
   ::= { airIRRP500UnitServiceIntervals 7 }

airIRRP500UnitServiceIntervalCondensatePumpAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The condensate pump service interval alarm enable/disable."
   ::= { airIRRP500UnitServiceIntervals 8 }

airIRRP500UnitServiceIntervalFans OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Fans service interval in weeks."
   ::= { airIRRP500UnitServiceIntervals 9 }

airIRRP500UnitServiceIntervalFansAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The fans service interval alarm enable/disable."
   ::= { airIRRP500UnitServiceIntervals 10 }


--  airIRRP500 AIR CONDITIONER UNIT Thresholds

airIRRP500UnitThresholdsRackInletHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitThresholds 1 }

airIRRP500UnitThresholdsRackInletHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitThresholds 2 }

airIRRP500UnitThresholdsSupplyAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air temperature high threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitThresholds 3 }

airIRRP500UnitThresholdsSupplyAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature high threshold in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitThresholds 4 }

airIRRP500UnitThresholdsReturnAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitThresholds 5 }

airIRRP500UnitThresholdsReturnAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitThresholds 6 }

airIRRP500UnitThresholdsReturnHumidityHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return humidity high threshold in
      tenths of percent relative humidity."
   ::= { airIRRP500UnitThresholds 7 }

airIRRP500UnitThresholdsReturnHumidityLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return humidity low threshold in
      tenths of percent relative humidity."
   ::= { airIRRP500UnitThresholds 8 }

airIRRP500UnitThresholdsEnteringFluidHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Entering fluid high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRRP500UnitThresholds 9 }

airIRRP500UnitThresholdsEnteringFluidHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Entering fluid high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRRP500UnitThresholds 10 }


--  airIRRP500 AIR CONDITIONER UNIT Config

airIRRP500UnitConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The startup delay in seconds."
   ::= { airIRRP500UnitConfig 1 }

airIRRP500UnitConfigCoolCapacity OBJECT-TYPE
   SYNTAX INTEGER {
   automatic      (1),
   maximum        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The cooling capacity options setting."
   ::= { airIRRP500UnitConfig 2 }

airIRRP500UnitConfigIdleOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
   yes            (1),
   no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on leak options setting."
   ::= { airIRRP500UnitConfig 3 }

airIRRP500UnitConfigInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the input contact."
   ::= { airIRRP500UnitConfig 4 }

airIRRP500UnitConfigOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the output relay."
   ::= { airIRRP500UnitConfig 5 }

airIRRP500UnitConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
   anyAlarm       (1),
   criticalAlarm  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The source of output relay change."
   ::= { airIRRP500UnitConfig 6 }

airIRRP500UnitConfigHumidifyEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable/disable humidification."
   ::= { airIRRP500UnitConfig 7 }

airIRRP500UnitConfigHumidifierControl OBJECT-TYPE
   SYNTAX INTEGER {
   auto           (1),
   drainOff       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The humidifier drain control."
   ::= { airIRRP500UnitConfig 8 }

airIRRP500UnitConfigDehumidifyEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable dehumidification."
   ::= { airIRRP500UnitConfig 9 }

airIRRP500UnitConfigReheatEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable reheat."
   ::= { airIRRP500UnitConfig 10 }

airIRRP500UnitConfigHeatAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Enable/disable heat assist."
   ::= { airIRRP500UnitConfig 11 }

airIRRP500UnitConfigPowerSourceConfig OBJECT-TYPE
   SYNTAX INTEGER {
   single         (1),
   dual           (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
       "Configure the input power source:  (1) single feed or (2) dual feed."
   ::= { airIRRP500UnitConfig 12 }

airIRRP500UnitConfigUnitRoleOverride OBJECT-TYPE
   SYNTAX INTEGER {
      automatic      (1),
      forcedOn       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (1) automatic, the system determines
      which units are used as primary units and which units are used as backups.
      When this OID value is (2) forcedOn, the connected unit is set as a primary
      unit."
   ::= { airIRRP500UnitConfig 13 }

airIRRP500UnitConfigSecondaryPowerFeedCapability OBJECT-TYPE
   SYNTAX INTEGER {
      full        (1),
      reduced     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Available on chilled water units.  When the power source config setting
      is set to dual, setting this value to reduced (2) will inhibit the heater
      and humdifier when the unit is being powered from the secondary
      input."
   ::= { airIRRP500UnitConfig 14 }

airIRRP500UnitConfigIdleOnCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (1) enable, the unit idles if it detects that it is blowing warm
      air into the cold aisle.  The unit will attempt to restart at 5 minute intervals."
   ::= { airIRRP500UnitConfig 15 }

--  airIRSC AIR CONDITIONER Defines

AirIRSCConfigType ::= INTEGER {
      racs          (1),
      spot          (2),
      in-row        (3)
   }

AirIRSCCapacityControlType ::= INTEGER {
      discrete      (1),
      proportional  (2)
   }

AirIRSCFanSpeedPreference ::= INTEGER {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }

AirIRSCFanSpeedControl ::= INTEGER {
      automatic     (1),
      manual        (2)
   }

--  airIRSC AIR CONDITIONER UNIT Status

airIRSCUnitStatusOperateMode OBJECT-TYPE
   SYNTAX INTEGER  {
   standby         (1),
   on              (2),
   idle            (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling unit operating mode."
   ::= { airIRSCUnitStatus 1 }

airIRSCUnitStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling output in tenths of kW."
   ::= { airIRSCUnitStatus 2 }

airIRSCUnitStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling demand in tenths of kW."
   ::= { airIRSCUnitStatus 3 }

airIRSCUnitStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in cubic feet per minute."
   ::= { airIRSCUnitStatus 4 }

airIRSCUnitStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in liters per second."
   ::= { airIRSCUnitStatus 5 }

airIRSCUnitStatusRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 6 }

airIRSCUnitStatusRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 7 }

airIRSCUnitStatusSupplyAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 8 }

airIRSCUnitStatusSupplyAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 9 }

airIRSCUnitStatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 10 }

airIRSCUnitStatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 11 }

airIRSCUnitStatusSuctionTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit suction temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 12 }

airIRSCUnitStatusSuctionTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit suction temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 13 }

airIRSCUnitStatusSuperheatTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit superheat temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 14 }

airIRSCUnitStatusSuperheatTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit superheat temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 15 }

airIRSCUnitStatusContainmtDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in
      hundredths of inches of water."
   ::= { airIRSCUnitStatus 16 }

airIRSCUnitStatusContainmtDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit containment differential pressure in Pa."
   ::= { airIRSCUnitStatus 17 }

airIRSCUnitStatusFilterDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in
      hundredths of inches of water."
   ::= { airIRSCUnitStatus 18 }

airIRSCUnitStatusFilterDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in Pa."
   ::= { airIRSCUnitStatus 19 }

airIRSCUnitStatusSuctionPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in pounds per square inch (PSI)."
   ::= { airIRSCUnitStatus 20 }

airIRSCUnitStatusSuctionPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in kiloPascals (kPa)."
   ::= { airIRSCUnitStatus 21 }

airIRSCUnitStatusDischargePressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in pounds per square inch (PSI)."
   ::= { airIRSCUnitStatus 22 }

airIRSCUnitStatusDischargePressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in kiloPascals (kPa)."
   ::= { airIRSCUnitStatus 23 }

airIRSCUnitStatusEvaporatorFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average evaporator fan speed in tenths of percent."
   ::= { airIRSCUnitStatus 24 }

airIRSCUnitStatusCondenserFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average condenser fan speed in tenths of percent."
   ::= { airIRSCUnitStatus 25 }

airIRSCUnitStatusInputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the input contact."
   ::= { airIRSCUnitStatus 26 }

airIRSCUnitStatusOutputState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the output relay."
   ::= { airIRSCUnitStatus 27 }

airIRSCUnitStatusCondOutletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit condenser outlet air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 28 }

airIRSCUnitStatusCondOutletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit condenser outlet air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 29 }

airIRSCUnitStatusCondInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit condenser inlet air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitStatus 30 }

airIRSCUnitStatusCondInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit condenser inlet air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCUnitStatus 31 }

airIRSCUnitStatusCompressor OBJECT-TYPE
   SYNTAX INTEGER {
   off           (1),
   on            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (off/on) of the compressor."
   ::= { airIRSCUnitStatus 32 }

airIRSCUnitStatusLeakSensor OBJECT-TYPE
   SYNTAX INTEGER  {
   no-leak         (1),
   leak            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (no-leak/leak) of the leak sensor."
   ::= { airIRSCUnitStatus 33 }

--  airIRSC AIR CONDITIONER UNIT Ident

airIRSCUnitIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit name."
   ::= { airIRSCUnitIdent 1 }

airIRSCUnitIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit location."
   ::= { airIRSCUnitIdent 2 }

airIRSCUnitIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit model number."
   ::= { airIRSCUnitIdent 3 }

airIRSCUnitIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit serial number."
   ::= { airIRSCUnitIdent 4 }

airIRSCUnitIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit firmware version."
   ::= { airIRSCUnitIdent 5 }

airIRSCUnitIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit controller hardware revision."
   ::= { airIRSCUnitIdent 6 }

airIRSCUnitIdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the
       unit manufacture date."
   ::= { airIRSCUnitIdent 7 }


--  airIRSC AIR CONDITIONER UNIT Runhours

airIRSCUnitRunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit air filter run hours."
   ::= { airIRSCUnitRunHours 1 }

airIRSCUnitRunHoursEvaporatorFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit evaporator fan 1 run hours."
   ::= { airIRSCUnitRunHours 2 }

airIRSCUnitRunHoursEvaporatorFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit evaporator fan 2 run hours."
   ::= { airIRSCUnitRunHours 3 }

airIRSCUnitRunHoursEvaporatorFan3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit evaporator fan 3 run hours."
   ::= { airIRSCUnitRunHours 4 }

airIRSCUnitRunHoursCondenserFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condenser fan 1 run hours."
   ::= { airIRSCUnitRunHours 5 }

airIRSCUnitRunHoursCondenserFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condenser fan 2 run hours."
   ::= { airIRSCUnitRunHours 6 }

airIRSCUnitRunHoursCondenserFan3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condenser fan 3 run hours."
   ::= { airIRSCUnitRunHours 7 }

airIRSCUnitRunHoursFanPowerSupplyLeft OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan left power supply run hours."
   ::= { airIRSCUnitRunHours 8 }

airIRSCUnitRunHoursFanPowerSupplyRight OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit fan right power supply run hours."
   ::= { airIRSCUnitRunHours 9 }

airIRSCUnitRunHoursCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condensate pump run hours."
   ::= { airIRSCUnitRunHours 10 }

airIRSCUnitRunHoursCompressor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit compressor run hours."
   ::= { airIRSCUnitRunHours 11 }


--  airIRSC AIR CONDITIONER UNIT Service Intervals

airIRSCUnitServiceIntervalsAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Air filter service interval in weeks."
   ::= { airIRSCUnitServiceIntervals 1 }

airIRSCUnitServiceIntervalsAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
   enable         (1),
   disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The air filter service interval alarm enable/disable."
   ::= { airIRSCUnitServiceIntervals 2 }


--  airIRSC AIR CONDITIONER UNIT Thresholds

airIRSCUnitThresholdsRackInletHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRSCUnitThresholds 1 }

airIRSCUnitThresholdsRackInletHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRSCUnitThresholds 2 }

airIRSCUnitThresholdsSupplyAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRSCUnitThresholds 3 }

airIRSCUnitThresholdsSupplyAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRSCUnitThresholds 4 }

airIRSCUnitThresholdsReturnAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRSCUnitThresholds 5 }

airIRSCUnitThresholdsReturnAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRSCUnitThresholds 6 }

--  airIRSC AIR CONDITIONER UNIT Setpoints

airIRSCUnitSetptsCoolSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitSetpoints 1 }

airIRSCUnitSetptsCoolSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRSCUnitSetpoints 2 }

airIRSCUnitSetptsCoolDeadbandUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit cooling deadband in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitSetpoints 3 }

airIRSCUnitSetptsCoolDeadbandMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit cooling deadband in tenths of
      degrees Celsius."
   ::= { airIRSCUnitSetpoints 4 }

airIRSCUnitSetptsFanSpeedPreference OBJECT-TYPE
   SYNTAX AirIRSCFanSpeedPreference
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The preferred fan speed setting."
   ::= { airIRSCUnitSetpoints 5 }

airIRSCUnitSetptsSupplyAirSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRSCUnitSetpoints 6 }

airIRSCUnitSetptsSupplyAirSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRSCUnitSetpoints 7 }

--  airIRSC AIR CONDITIONER UNIT Config

airIRSCUnitConfigConfigurationType OBJECT-TYPE
   SYNTAX AirIRSCConfigType
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit configuration type."
   ::= { airIRSCUnitConfig 1 }

airIRSCUnitConfigCapacityControlType OBJECT-TYPE
   SYNTAX AirIRSCCapacityControlType
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit capacity control."
   ::= { airIRSCUnitConfig 2 }

airIRSCUnitConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The startup delay in seconds."
   ::= { airIRSCUnitConfig 3 }

airIRSCUnitConfigIdleOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
   yes            (1),
   no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on leak options setting."
   ::= { airIRSCUnitConfig 4 }

airIRSCUnitConfigInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the input contact."
   ::= { airIRSCUnitConfig 5 }

airIRSCUnitConfigOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
   open           (1),
   closed         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the output relay."
   ::= { airIRSCUnitConfig 6 }

airIRSCUnitConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
   anyAlarm       (1),
   criticalAlarm  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The source of output relay change."
   ::= { airIRSCUnitConfig 7 }

airIRSCUnitConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The altitude of the unit above sea level in feet."
   ::= { airIRSCUnitConfig 8 }

airIRSCUnitConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The altitude of the unit above sea level in meters."
   ::= { airIRSCUnitConfig 9 }

airIRSCUnitConfigOpControl OBJECT-TYPE
   SYNTAX INTEGER   {
      standby       (1),
      on            (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The unit operational control."
   ::= { airIRSCUnitConfig 10 }


--  airIRSC AIR CONDITIONER GROUP Status

airIRSCGroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling output in tenths of kW."
   ::= { airIRSCGroupStatus 1 }

airIRSCGroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling demand in tenths of kW."
   ::= { airIRSCGroupStatus 2 }

airIRSCGroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in cubic feet per minute."
   ::= { airIRSCGroupStatus 3 }

airIRSCGroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in liters per second."
   ::= { airIRSCGroupStatus 4 }

airIRSCGroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupStatus 5 }

airIRSCGroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRSCGroupStatus 6 }

airIRSCGroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupStatus 7 }

airIRSCGroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRSCGroupStatus 8 }

airIRSCGroupStatusMaxReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupStatus 9 }

airIRSCGroupStatusMaxReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCGroupStatus 10 }

airIRSCGroupStatusMinReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupStatus 11 }

airIRSCGroupStatusMinReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Celsius."
   ::= { airIRSCGroupStatus 12 }

airIRSCGroupStatusActiveFlowControlStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      under         (1),
      okay          (2),
      over          (3),
      notApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Status of the active flow control
      system."
   ::= { airIRSCGroupStatus 13 }


--  airIRSC AIR CONDITIONER GROUP Setpoint

airIRSCGroupSetptsCoolSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupSetpoints 1 }

airIRSCGroupSetptsCoolSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRSCGroupSetpoints 2 }

airIRSCGroupSetptsCoolDeadbandUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupSetpoints 3 }

airIRSCGroupSetptsCoolDeadbandMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Celsius."
   ::= { airIRSCGroupSetpoints 4 }

airIRSCGroupSetptsFanSpeedPreference OBJECT-TYPE
   SYNTAX AirIRSCFanSpeedPreference
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group preferred fan speed setting."
   ::= { airIRSCGroupSetpoints 5 }

airIRSCGroupSetptsSupplyAirSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRSCGroupSetpoints 6 }

airIRSCGroupSetptsSupplyAirSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRSCGroupSetpoints 7 }

airIRSCGroupSetpointsActiveFlowControlBias  OBJECT-TYPE
   SYNTAX INTEGER   {
      positive          (1),
      slightlyPositive  (2),
      zero              (3),
      slightlyNegative  (4),
      negative          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The active flow control bias setting."
   ::= { airIRSCGroupSetpoints 8 }

--  airIRSC AIR CONDITIONER GROUP Config

airIRSCGroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units."
   ::= { airIRSCGroupConfig 1 }

airIRSCGroupConfigConfigurationType OBJECT-TYPE
   SYNTAX AirIRSCConfigType
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type."
   ::= { airIRSCGroupConfig 2 }

airIRSCGroupConfigCapacityControlType OBJECT-TYPE
   SYNTAX AirIRSCCapacityControlType
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group capacity control."
   ::= { airIRSCGroupConfig 3 }

airIRSCGroupConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in feet."
   ::= { airIRSCGroupConfig 4 }

airIRSCGroupConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in meters."
   ::= { airIRSCGroupConfig 5 }

airIRSCGroupConfigFanSpeedControl OBJECT-TYPE
   SYNTAX AirIRSCFanSpeedControl
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group fan speed control."
   ::= { airIRSCGroupConfig 6 }

airIRSCGroupConfigNumberOfActiveFlowControllers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of active flow controllers
      present in the group."
   ::= { airIRSCGroupConfig 7 }

airIRSCGroupConfigActiveFlowControllerLampTest  OBJECT-TYPE
   SYNTAX INTEGER   {
      off       (1),
      on        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Turns off/on the active flow
      controller lamp test."
   ::= { airIRSCGroupConfig 8 }

-- ******************************************************************
--  airIRG2 Ident
-- ******************************************************************

airIRG2IdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit name."
   ::= { airIRG2Ident 1 }

airIRG2IdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit location."
   ::= { airIRG2Ident 2 }

airIRG2IdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit model number."
   ::= { airIRG2Ident 3 }

airIRG2IdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit serial number."
   ::= { airIRG2Ident 4 }

airIRG2IdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit firmware version."
   ::= { airIRG2Ident 5 }

airIRG2IdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit controller hardware revision."
   ::= { airIRG2Ident 6 }

airIRG2IdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit manufacture date."
   ::= { airIRG2Ident 7 }

airIRG2IdentUnitSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the device's top level unit data."
   ::= { airIRG2Ident 8 }

airIRG2IdentGroupSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the device's top level group data."
   ::= { airIRG2Ident 9 }

-- ******************************************************************
-- airIRG2 GROUP Status
-- ******************************************************************

airIRG2GroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling output in tenths of kilowatts (kW)."
   ::= { airIRG2GroupStatus 1 }

airIRG2GroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling demand in tenths of kilowatts (kW)."
   ::= { airIRG2GroupStatus 2 }

airIRG2GroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in cubic feet per minute."
   ::= { airIRG2GroupStatus 3 }

airIRG2GroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in hundredths of
      liters per second."
   ::= { airIRG2GroupStatus 4 }

airIRG2GroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupStatus 5 }

airIRG2GroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRG2GroupStatus 6 }

airIRG2GroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupStatus 7 }

airIRG2GroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRG2GroupStatus 8 }

airIRG2GroupStatusMaxReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupStatus 9 }

airIRG2GroupStatusMaxReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Celsius."
   ::= { airIRG2GroupStatus 10 }

airIRG2GroupStatusMinReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupStatus 11 }

airIRG2GroupStatusMinReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Celsius."
   ::= { airIRG2GroupStatus 12 }

airIRG2GroupStatusActiveFlowControlStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      under         (1),
      okay          (2),
      over          (3),
      notApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Status of the active flow control
      system."
   ::= { airIRG2GroupStatus 13 }


-- ******************************************************************
--  airIRG2 GROUP Setpoint
-- ******************************************************************

airIRG2GroupSetptsCoolSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupSetpoints 1 }

airIRG2GroupSetptsCoolSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRG2GroupSetpoints 2 }

airIRG2GroupSetptsCoolDeadbandUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupSetpoints 3 }

airIRG2GroupSetptsCoolDeadbandMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Celsius."
   ::= { airIRG2GroupSetpoints 4 }

airIRG2GroupSetptsFanSpeedPreference OBJECT-TYPE
   SYNTAX INTEGER {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group preferred fan speed setting."
   ::= { airIRG2GroupSetpoints 5 }

airIRG2GroupSetptsSupplyAirSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRG2GroupSetpoints 6 }

airIRG2GroupSetptsSupplyAirSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRG2GroupSetpoints 7 }

airIRG2GroupSetpointsActiveFlowControlBias  OBJECT-TYPE
   SYNTAX INTEGER   {
      positive          (1),
      slightlyPositive  (2),
      zero              (3),
      slightlyNegative  (4),
      negative          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The active flow control bias setting."
   ::= { airIRG2GroupSetpoints 8 }

-- ******************************************************************
--  airIRG2 GROUP Config
-- ******************************************************************
airIRG2GroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units."
   ::= { airIRG2GroupConfig 1 }

airIRG2GroupConfigConfigurationType OBJECT-TYPE
   SYNTAX INTEGER {
      racs          (1),
      spot          (2),
      in-row        (3),
      hacs          (4),
      cacs          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type."
   ::= { airIRG2GroupConfig 2 }

airIRG2GroupConfigCapacityControlType OBJECT-TYPE
   SYNTAX INTEGER {
      discrete      (1),
      proportional  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group capacity control."
   ::= { airIRG2GroupConfig 3 }

airIRG2GroupConfigFanSpeedControl OBJECT-TYPE
   SYNTAX INTEGER {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group fan speed control."
   ::= { airIRG2GroupConfig 4 }

airIRG2GroupConfigCoolGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the PID in hundredths."
   ::= { airIRG2GroupConfig 5 }

airIRG2GroupConfigCoolResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the PID in hundredths."
   ::= { airIRG2GroupConfig 6 }

airIRG2GroupConfigCoolDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the PID in hundredths."
   ::= { airIRG2GroupConfig 7 }

airIRG2GroupConfigCoolPIDReset OBJECT-TYPE
   SYNTAX INTEGER {
      readBack      (1),
      reset         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Will reset the PID coefficients back to the factory defaults."
   ::= { airIRG2GroupConfig 8 }

airIRG2GroupConfigNumberofBackupUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of backup units."
   ::= { airIRG2GroupConfig 9 }

airIRG2GroupConfigRuntimeBalancingEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable runtime balancing feature."
   ::= { airIRG2GroupConfig 10 }

airIRG2GroupConfigLoadAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable load assist feature."
   ::= { airIRG2GroupConfig 11 }

airIRG2GroupConfigNumberOfActiveFlowControllers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of active flow controllers
      present in the group."
   ::= { airIRG2GroupConfig 12 }

airIRG2GroupConfigActiveFlowControllerLampTest  OBJECT-TYPE
   SYNTAX INTEGER   {
      off       (1),
      on        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Turns off/on the active flow
      controller lamp test."
   ::= { airIRG2GroupConfig 13 }

airIRG2GroupConfigAltitudeUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in feet."
   ::= { airIRG2GroupConfig 14 }

airIRG2GroupConfigAltitudeMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group altitude of the units above sea level in meters."
   ::= { airIRG2GroupConfig 15 }

-- ***************************************
--  airIRG2 Alarm Status
-- ***************************************

airIRG2AlarmsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of active alarms in the airIRG2AlarmsTable."
   ::= { airIRG2Alarms 1 }

AirIRG2AlarmsEntry ::= SEQUENCE {
   airIRG2AlarmsIndex            INTEGER,
   airIRG2AlarmsEventCode        INTEGER,
   airIRG2AlarmsDescription      DisplayString
   }

airIRG2AlarmsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG2AlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Table of active alarms for the device."
   ::= { airIRG2Alarms 2 }

airIRG2AlarmsEntry OBJECT-TYPE
   SYNTAX AirIRG2AlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Alarms specification"
   INDEX { airIRG2AlarmsIndex }
   ::=  { airIRG2AlarmsTable 1 }

airIRG2AlarmsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Alarm index."
   ::=  { airIRG2AlarmsEntry 1 }

airIRG2AlarmsEventCode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Code for the alarm."
   ::=  { airIRG2AlarmsEntry 2 }

airIRG2AlarmsDescription OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..64))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Description of the alarm."
   ::=  { airIRG2AlarmsEntry 3 }

-- ***************************************
--  airIRG2RDType2 AIR CONDITIONER Defines
-- ***************************************

AirIRG2RDType2IOState ::= INTEGER {
   open   (1),
   closed (2)
}

-- ******************************************************************
--  airIRG2RDT2 Status
-- ******************************************************************

airIRG2RDT2StatusOperateMode OBJECT-TYPE
   SYNTAX INTEGER  {
      standby         (1),
      on              (2),
      idle            (3),
      reserved        (4),
      service         (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling unit operating mode."
   ::= { airIRG2RDT2Status 1 }

airIRG2RDT2StatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling output in tenths of kilowatts (kW)."
   ::= { airIRG2RDT2Status 2 }

airIRG2RDT2StatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit cooling demand in tenths of kilowatts (kW)."
   ::= { airIRG2RDT2Status 3 }

airIRG2RDT2StatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in cubic feet per minute."
   ::= { airIRG2RDT2Status 4 }

airIRG2RDT2StatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air flow in liters per second."
   ::= { airIRG2RDT2Status 5 }

airIRG2RDT2StatusRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2RDT2Status 6 }

airIRG2RDT2StatusRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit rack inlet temperature in tenths of
      degrees Celsius."
   ::= { airIRG2RDT2Status 7 }

airIRG2RDT2StatusSupplyAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2RDT2Status 8 }

airIRG2RDT2StatusSupplyAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit supply air temperature in tenths of
      degrees Celsius."
   ::= { airIRG2RDT2Status 9 }

airIRG2RDT2StatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2RDT2Status 10 }

airIRG2RDT2StatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit return air temperature in tenths of
      degrees Celsius."
   ::= { airIRG2RDT2Status 11 }

airIRG2RDT2StatusSuctionTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit suction temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2RDT2Status 12 }

airIRG2RDT2StatusSuctionTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit suction temperature in tenths of
      degrees Celsius."
   ::= { airIRG2RDT2Status 13 }

airIRG2RDT2StatusSuperheatTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit superheat temperature in tenths of
      degrees Fahrenheit."
   ::= { airIRG2RDT2Status 14 }

airIRG2RDT2StatusSuperheatTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit superheat temperature in tenths of
      degrees Celsius."
   ::= { airIRG2RDT2Status 15 }

airIRG2RDT2StatusFilterDPUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in
      hundredths of inches of water."
   ::= { airIRG2RDT2Status 16 }

airIRG2RDT2StatusFilterDPMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit air filter differential pressure in pascals (Pa)."
   ::= { airIRG2RDT2Status 17 }

airIRG2RDT2StatusSuctionPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in pounds per square inch (PSI)."
   ::= { airIRG2RDT2Status 18 }

airIRG2RDT2StatusSuctionPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit suction pressure in kiloPascals (kPa)."
   ::= { airIRG2RDT2Status 19 }

airIRG2RDT2StatusDischargePressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in pounds per square inch (PSI)."
   ::= { airIRG2RDT2Status 20 }

airIRG2RDT2StatusDischargePressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit discharge pressure in kiloPascals (kPa)."
   ::= { airIRG2RDT2Status 21 }

airIRG2RDT2StatusEvaporatorFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The unit average evaporator fan speed in tenths of percent."
   ::= { airIRG2RDT2Status 22 }

airIRG2RDT2StatusInputState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the input contact."
   ::= { airIRG2RDT2Status 23 }

airIRG2RDT2StatusOutputState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the output relay."
   ::= { airIRG2RDT2Status 24 }

airIRG2RDT2StatusOHEInputState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the outside heat exchanger(OHE) input contact."
   ::= { airIRG2RDT2Status 25 }

airIRG2RDT2StatusOHEOutputState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of the outside heat exchanger(OHE) output relay."
   ::= { airIRG2RDT2Status 26 }

airIRG2RDT2StatusCompressor OBJECT-TYPE
   SYNTAX INTEGER {
      off           (1),
      on            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (off/on) of the compressor."
   ::= { airIRG2RDT2Status 27 }

airIRG2RDT2StatusFluidValvePos OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the fluid valve in percent. This OID is only valid
       when airIRG2RDT2ConfigUnitType indicates fluidCooled(1)."
   ::= { airIRG2RDT2Status 28 }

airIRG2RDT2StatusHotGasBypassValvePos OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The position of the hot gas bypass valve in hundredths of percent."
   ::= { airIRG2RDT2Status 29 }

airIRG2RDT2StatusLeakSensor OBJECT-TYPE
   SYNTAX INTEGER  {
   no-leak         (1),
   leak            (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state (no-leak/leak) of the leak sensor."
   ::= { airIRG2RDT2Status 30 }

-- ******************************************************************
--  airIRG2RDT2 Runhours
-- ******************************************************************

airIRG2RDT2RunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit air filter run hours."
   ::= { airIRG2RDT2RunHours 1 }

airIRG2RDT2RunHoursCondensatePump OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit condensate pump run hours."
   ::= { airIRG2RDT2RunHours 2 }

airIRG2RDT2RunHoursCompressor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit compressor run hours."
   ::= { airIRG2RDT2RunHours 3 }

-- *******************************
-- Run Hour Fan Power supply table
-- *******************************
airIRG2RDT2RunHoursFanPSTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the run hour fan power supply table
      (airIRG2RDT2RunHoursFanPSTable)."
   ::= { airIRG2RDT2RunHours 4 }

AirIRG2RDT2RunHoursFanPSEntry ::=
   SEQUENCE {
      airIRG2RDT2RunHoursFanPSIndex          INTEGER,
      airIRG2RDT2RunHoursFanPSPosition       INTEGER,
      airIRG2RDT2RunHoursFanPSHours          INTEGER
   }

airIRG2RDT2RunHoursFanPSTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG2RDT2RunHoursFanPSEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting run hour information from each power supply."
   ::= { airIRG2RDT2RunHours 5 }

airIRG2RDT2RunHoursFanPSEntry OBJECT-TYPE
   SYNTAX AirIRG2RDT2RunHoursFanPSEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The run hours fan power supply table entry."
   INDEX  { airIRG2RDT2RunHoursFanPSIndex }
   ::= { airIRG2RDT2RunHoursFanPSTable 1 }

airIRG2RDT2RunHoursFanPSIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of run hours fan power supply table."
   ::= { airIRG2RDT2RunHoursFanPSEntry 1 }

airIRG2RDT2RunHoursFanPSHours OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Fan power supply run time in hours."
   ::= { airIRG2RDT2RunHoursFanPSEntry 2 }

airIRG2RDT2RunHoursFanPSPosition OBJECT-TYPE
   SYNTAX INTEGER {
      upper         (1),
      lower         (2),
      left          (3),
      right         (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Position of fan power supply within the unit."
   ::= { airIRG2RDT2RunHoursFanPSEntry 3 }

-- *****************************
-- Run Hour Evaporator Fan table
-- *****************************
airIRG2RDT2RunHoursEvapFanTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of entries in the run hour evaporator fan table
      (airIRG2RDT2RunHoursEvapFanTable)."
   ::= { airIRG2RDT2RunHours 6 }

AirIRG2RDT2RunHoursEvapFanEntry ::=
   SEQUENCE {
      airIRG2RDT2RunHoursEvapFanIndex          INTEGER,
      airIRG2RDT2RunHoursEvapFanHours          INTEGER
   }

airIRG2RDT2RunHoursEvapFanTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG2RDT2RunHoursEvapFanEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each evaporator fan run
      hour in the system. "
   ::= { airIRG2RDT2RunHours 7 }

airIRG2RDT2RunHoursEvapFanEntry OBJECT-TYPE
   SYNTAX AirIRG2RDT2RunHoursEvapFanEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for getting information from each evaporator fan run
      hour in the system. "
   INDEX  { airIRG2RDT2RunHoursEvapFanIndex }
   ::= { airIRG2RDT2RunHoursEvapFanTable 1 }

airIRG2RDT2RunHoursEvapFanIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of run hours evaporator fan table."
   ::= { airIRG2RDT2RunHoursEvapFanEntry 1 }

airIRG2RDT2RunHoursEvapFanHours OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Evaporator fan run time in hours."
   ::= { airIRG2RDT2RunHoursEvapFanEntry 2 }

airIRG2RDT2RunHoursUnit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Unit run time in hours."
   ::= { airIRG2RDT2RunHours 8 }

-- ******************************************************************
--  airIRG2RDT2 Service Intervals
-- ******************************************************************

airIRG2RDT2ServiceIntervalsAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Air filter service interval in weeks."
   ::= { airIRG2RDT2ServiceIntervals 1 }

airIRG2RDT2ServiceIntervalsAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
      enable         (1),
      disable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The air filter service interval alarm enable/disable."
   ::= { airIRG2RDT2ServiceIntervals 2 }

-- ******************************************************************
--  airIRG2RDT2 Thresholds
-- ******************************************************************

airIRG2RDT2ThresholdsRackInletHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRG2RDT2Thresholds 1 }

airIRG2RDT2ThresholdsRackInletHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit rack inlet air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRG2RDT2Thresholds 2 }

airIRG2RDT2ThresholdsSupplyAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRG2RDT2Thresholds 3 }

airIRG2RDT2ThresholdsSupplyAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit supply air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRG2RDT2Thresholds 4 }

airIRG2RDT2ThresholdsReturnAirHighTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Fahrenheit."
   ::= { airIRG2RDT2Thresholds 5 }

airIRG2RDT2ThresholdsReturnAirHighTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Unit return air high temperature threshold in
      tenths of degrees Celsius."
   ::= { airIRG2RDT2Thresholds 6 }

-- ******************************************************************
--  airIRG2RDT2 Setpoints
-- ******************************************************************

--  There are no setpoint OIDs.  This is just a placeholder in case
--  we add some unit setpoints.

-- ******************************************************************
--  airIRG2RDT2 Config
-- ******************************************************************

airIRG2RDT2ConfigUnitType OBJECT-TYPE
   SYNTAX INTEGER {
      fluidCooled              (1),
      airCooled                (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of the unit."
   ::= { airIRG2RDT2Config 1 }

airIRG2RDT2ConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The startup delay in seconds."
   ::= { airIRG2RDT2Config 2 }

airIRG2RDT2ConfigIdleOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
      yes            (1),
      no             (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The idle on leak options setting."
   ::= { airIRG2RDT2Config 3 }

airIRG2RDT2ConfigInputNormalState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the input contact."
   ::= { airIRG2RDT2Config 4 }

airIRG2RDT2ConfigOutputNormalState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the output relay."
   ::= { airIRG2RDT2Config 5 }

airIRG2RDT2ConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
      anyAlarm       (1),
      criticalAlarm  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The source of output relay change."
   ::= { airIRG2RDT2Config 6 }

airIRG2RDT2ConfigOHEInputNormalState OBJECT-TYPE
   SYNTAX AirIRG2RDType2IOState
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The normal state of the outside heat exchanger(OHE) input relay."
   ::= { airIRG2RDT2Config 7 }

airIRG2RDT2ConfigUnitRoleOverride OBJECT-TYPE
   SYNTAX INTEGER {
      automatic      (1),
      forcedOn       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (1) automatic, the system determines
      which units are used as primary units and which units are used as backups.
      When this OID value is (2) forcedOn, the connected unit is set as a primary
      unit."
   ::= { airIRG2RDT2Config 8 }

airIRG2RDT2ConfigUnitIdleOnCoolFail OBJECT-TYPE
   SYNTAX INTEGER {
      no    (1),
      yes   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "When this OID value is (2) yes, the unit idles if it detects that it is blowing warm
      air into the cold aisle.  The unit will attempt to restart at 5 minute intervals."
   ::= { airIRG2RDT2Config 9 }

-- Beginning of AC InRoom

-- common InRoom values
AirIRmAlarmState   ::= INTEGER { ok  (1), alarm (2) }
AirIRmControlState ::= INTEGER { off (1), on    (2) }
AirIRmStopState     ::= INTEGER { maybeOn  (1), unitOff (2) }
AirIRmActivityState ::= INTEGER { inactive (1), active  (2) }


-- ***************************************
--  InRoom Ident
-- ***************************************

airIRmIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit name."
   ::= { airIRmIdent 1 }

airIRmIdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit location."
   ::= { airIRmIdent 2 }

airIRmIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit model number."
   ::= { airIRmIdent 3 }

airIRmIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit serial number."
   ::= { airIRmIdent 4 }

airIRmIdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit firmware version."
   ::= { airIRmIdent 5 }

airIRmIdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit controller hardware revision."
   ::= { airIRmIdent 6 }

airIRmIdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit manufacture date."
   ::= { airIRmIdent 7 }

airIRmIdentSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the device's top level data."
   ::= { airIRmIdent 8 }

-- ***************************************
--  InRoom Alarm Status
-- ***************************************

airIRmAlarmsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of active alarms in the airIRG2AlarmsTable."
   ::= { airIRmAlarms 1 }

AirIRmAlarmsEntry ::= SEQUENCE {
   airIRmAlarmsIndex            INTEGER,
   airIRmAlarmsEventCode        INTEGER,
   airIRmAlarmsDescription      DisplayString
   }

airIRmAlarmsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRmAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Table of active alarms for the device."
   ::= { airIRmAlarms 2 }

airIRmAlarmsEntry OBJECT-TYPE
   SYNTAX AirIRmAlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Alarms specification"
   INDEX { airIRmAlarmsIndex }
   ::=  { airIRmAlarmsTable 1 }

airIRmAlarmsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Alarm index."
   ::=  { airIRmAlarmsEntry 1 }

airIRmAlarmsEventCode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Code for the alarm."
   ::=  { airIRmAlarmsEntry 2 }

airIRmAlarmsDescription OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..64))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Description of the alarm."
   ::=  { airIRmAlarmsEntry 3 }


-- airIRmPmCommon1

airIRmPmUnitType OBJECT-TYPE
   SYNTAX INTEGER {
        mc         (1),
        dx         (2),
        cw         (3),
        ch         (4),
        ecoCool    (5),
        msc        (6),
        ge1        (7),
        ge2        (8),
        dualFluid  (9),
        cw2       (10),
        unknown   (256)   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit type (1)."
   ::= { airIRmPmCommon1 1 }

airIRmPmSwVersion OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Software version (3)."
   ::= { airIRmPmCommon1 3 }

airIRmPmBusAddress OBJECT-TYPE
    SYNTAX INTEGER (0..65535)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Bus addresss of unit (5)."
    ::= { airIRmPmCommon1 5 }

airIRmPmControllerType OBJECT-TYPE
   SYNTAX INTEGER {
        unknown   (1),
        c4000     (2),
        c1001     (3),
        c1002     (4),
        c5000     (5),
        c6000     (6),
        c1010     (7),
        c7000IOC  (8),
        c7000AT   (9),
        c7000PT  (10),
        c5MSC    (11),
        c7000PT2 (12) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Controller type (7)."
   ::= { airIRmPmCommon1 7 }

airIRmPmGeneralError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "General Error (8)"
   ::= { airIRmPmCommon1 8 }

airIRmPmErrorOnBus OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Error On Bus (9)"
   ::= { airIRmPmCommon1 9 }

-- airIRmPmCommon2

airIRmPmPCStop OBJECT-TYPE
   SYNTAX AirIRmStopState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "PC-STOP (1000)"
   ::= { airIRmPmCommon2 1 }

airIRmPmRemoteStop OBJECT-TYPE
   SYNTAX AirIRmStopState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Remote Stop (1001)"
   ::= { airIRmPmCommon2 2 }

airIRmPmLocalStop OBJECT-TYPE
   SYNTAX AirIRmStopState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Local Stop (1002)"
   ::= { airIRmPmCommon2 3}

airIRmPmTimerStop OBJECT-TYPE
   SYNTAX AirIRmStopState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Timer Stop (1003)"
   ::= { airIRmPmCommon2 4}

airIRmPmSeqStop OBJECT-TYPE
   SYNTAX AirIRmStopState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Seq. Stop (1004)"
   ::= { airIRmPmCommon2 5}

airIRmPmRemoteUPS OBJECT-TYPE
   SYNTAX INTEGER {
        off (1),
        on  (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Remote UPS (1006)"
   ::= { airIRmPmCommon2 7}

airIRmPmLocalUPS OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Local UPS (1007)"
   ::= { airIRmPmCommon2 8}

airIRmPmCommonAlarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Common alarm (1010)."
   ::= { airIRmPmCommon2 11 }

airIRmPmResetAllAlarms OBJECT-TYPE
   SYNTAX INTEGER {
        doNothing (1),
        reset     (2) }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Reset all alarms control (1011)."
   ::= { airIRmPmCommon2 12 }

airIRmPmUnitOnOff OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit running state (1013)."
   ::= { airIRmPmCommon2 14 }

airIRmPmMaintenance OBJECT-TYPE
   SYNTAX INTEGER {
        notNecessary (1),
        necessary    (2)  }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Maintenance necessary state (1014)."
   ::= { airIRmPmCommon2 15 }

airIRmPmUnitTemperatureScale OBJECT-TYPE
   SYNTAX INTEGER {
        celsius     (1),
        fahrenheit  (2)  }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Current Unit Temperature Scale (1022)."
   ::= { airIRmPmCommon2 23 }

airIRmPmUnitWinterMode OBJECT-TYPE
   SYNTAX INTEGER {
        summer  (1),
        winter  (2)  }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Winter or summer configuration mode (1023)."
   ::= { airIRmPmCommon2 24 }

airIRmPmDayNightMode OBJECT-TYPE
   SYNTAX INTEGER {
        day   (1),
        night (2)   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Day or night configuration mode (1024)."
   ::= { airIRmPmCommon2 25 }


-- airIRmPmCommon3

airIRmPmLastMaintenanceYear OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Last maintenance year (1160)."
   ::= { airIRmPmCommon3 1 }

airIRmPmLastMaintenanceMonth OBJECT-TYPE
   SYNTAX INTEGER (1..12)
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Last maintenance month (1161)."
   ::= { airIRmPmCommon3 2 }

airIRmPmLastMaintenanceDay OBJECT-TYPE
   SYNTAX INTEGER (1..31)
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Last maintenance day (1162)."
   ::= { airIRmPmCommon3 3 }

airIRmPmUnitMaintenanceInterval OBJECT-TYPE
   SYNTAX INTEGER (1..255)
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit maintenance interval in months (1163)."
   ::= { airIRmPmCommon3 4 }

airIRmPmRuntimeUnit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Runtime unit in hours (1164)."
   ::= { airIRmPmCommon3 5 }

airIRmPmStoptimeUnit OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit stoptime in hours (1165)"
   ::= { airIRmPmCommon3 6 }

airIRmPmRuntimeCooling OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Cooling runtime in hours (1166)"
   ::= { airIRmPmCommon3 7 }

airIRmPmRuntimeHeating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Heating runtime in hours (1167)"
   ::= { airIRmPmCommon3 8 }

airIRmPmRuntimeHumidification OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidification runtime in hours (1168)"
   ::= { airIRmPmCommon3 9 }

airIRmPmRuntimeDehumidification OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Dehumidification runtime in hours (1169)"
   ::= { airIRmPmCommon3 10 }

airIRmPmUnitTemperature  OBJECT IDENTIFIER ::=  { airIRmPmCommon3 11 }
airIRmPmUnitTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit temperature in tenths of degrees Celsius (1170)."
   ::= { airIRmPmUnitTemperature 1 }
airIRmPmUnitTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit temperature in tenths of degrees Fahrenheit (1170)."
   ::= { airIRmPmUnitTemperature 2 }

airIRmPmUnitHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit humidity in tenths of %RH (1171)."
   ::= { airIRmPmCommon3 12 }

airIRmPmSetpointTemperatureDay  OBJECT IDENTIFIER ::=  { airIRmPmCommon3  14 }
airIRmPmSetpointTemperatureDayC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Setpoint daytime temperature in tenths
         of degrees Celsius (1173)."
   ::= { airIRmPmSetpointTemperatureDay 1 }
airIRmPmSetpointTemperatureDayF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Setpoint daytime temperature in tenths
         of degrees Fahrenheit (1173)."
   ::= { airIRmPmSetpointTemperatureDay 2 }

airIRmPmSetpointTemperatureNight OBJECT IDENTIFIER ::=  { airIRmPmCommon3 15 }
airIRmPmSetpointTemperatureNightC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Setpoint nighttime temperature in tenths
         of degrees Celsius (1174)."
   ::= { airIRmPmSetpointTemperatureNight 1 }
airIRmPmSetpointTemperatureNightF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Setpoint nighttime temperature in tenths
         of degrees Fahrenheit (1174)."
   ::= { airIRmPmSetpointTemperatureNight 2 }

airIRmPmSetpointHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Setpoint humidity in tenths of %RH (1176)."
   ::= { airIRmPmCommon3 17 }

airIRmPmUnitControlType OBJECT-TYPE
   SYNTAX INTEGER {
        room              (1),
        supply            (2),
        room-SupplyLimit  (3),
        supply-RoomLimit  (4) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Current unit control type (1183)."
   ::= { airIRmPmCommon3 24 }

airIRmPmWinterModeStartTemp  OBJECT IDENTIFIER ::= { airIRmPmCommon3 29 }
airIRmPmWinterModeStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Winter mode start temperature in tenths of degrees Celsius (1188)."
   ::= { airIRmPmWinterModeStartTemp 1 }
airIRmPmWinterModeStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Winter mode start temperature in tenths of degrees Fahrenheit (1188)."
   ::= { airIRmPmWinterModeStartTemp 2 }

airIRmPmWinterModeHysteresis  OBJECT IDENTIFIER ::= { airIRmPmCommon3 30 }
airIRmPmWinterModeHysteresisK OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Winter mode hysteresis in tenths of Kelvins (1189)"
    ::= { airIRmPmWinterModeHysteresis 1 }
airIRmPmWinterModeHysteresisF OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Winter mode hysteresis in tenths of degrees Fahrenheit (1189)"
    ::= { airIRmPmWinterModeHysteresis 2 }

airIRmPmWaterTemperature  OBJECT IDENTIFIER ::=  { airIRmPmCommon3 32 }
airIRmPmWaterTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature in tenths of degrees Celsius (1191)."
   ::= { airIRmPmWaterTemperature 1 }
airIRmPmWaterTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature in tenths of degrees Fahrenheit (1191)."
   ::= { airIRmPmWaterTemperature 2 }

airIRmPmReturnAirTemperature     OBJECT IDENTIFIER ::=  { airIRmPmCommon3 33 }
airIRmPmReturnAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air temperature in tenths of degrees Celsius (1192)."
   ::= { airIRmPmReturnAirTemperature 1 }
airIRmPmReturnAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air temperature in tenths of degrees Fahrenheit (1192)."
   ::= { airIRmPmReturnAirTemperature 2 }

airIRmPmSupplyAirTemperature     OBJECT IDENTIFIER ::=  { airIRmPmCommon3 34 }
airIRmPmSupplyAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air temperature in tenths of degrees Celsius (1193)."
   ::= { airIRmPmSupplyAirTemperature 1 }
airIRmPmSupplyAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air temperature in tenths of degrees Fahrenheit (1193)."
   ::= { airIRmPmSupplyAirTemperature 2 }

airIRmPmReturnAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air humidity in tenths of %RH (1194)."
   ::= { airIRmPmCommon3 35 }

airIRmPmSupplyAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air humidity in tenths of %RH (1195)."
   ::= { airIRmPmCommon3 36 }

airIRmPmOutsideAirTemperature  OBJECT IDENTIFIER ::= { airIRmPmCommon3 37 }
airIRmPmOutsideAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Outside air temperature in tenths of degrees Celsius (1196)"
   ::= { airIRmPmOutsideAirTemperature 1 }
airIRmPmOutsideAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Outside air temperature in tenths of degrees Fahrenheit (1196)"
   ::= { airIRmPmOutsideAirTemperature 2 }

airIRmPmOutsideAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Outside air humidity in tenths of percent relative humidity (1197)"
   ::= { airIRmPmCommon3 38 }

airIRmPmCoolingPriority OBJECT-TYPE
   SYNTAX INTEGER {
        ge (1),
        cw (2),
        dx (3)   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Cooling priority (1198)."
   ::= { airIRmPmCommon3 39 }

airIRmPmWaterTemperature2        OBJECT IDENTIFIER ::=  { airIRmPmCommon3 43 }
airIRmPmWaterTemperature2C OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature 2 in tenths of degrees Celsius (1202)."
   ::= { airIRmPmWaterTemperature2 1 }
airIRmPmWaterTemperature2F OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature 2 in tenths of degrees Fahrenheit (1202)."
   ::= { airIRmPmWaterTemperature2 2 }

airIRmPmRuntimeFreeCooling OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Freecooling runtime in hours (1203)"
   ::= { airIRmPmCommon3 44 }

airIRmPmRuntimeMixedModeFreeCooling OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Mixed mode freecooling runtime in hours (1203)"
   ::= { airIRmPmCommon3 45 }

-- airIRmPmCommon4

airIRmPmNumberOfCompressors OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of compressors (1761)"
   ::= { airIRmPmCommon4 4 }

airIRmPmNumberOfSuctionValves OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of suction valves (1762)"
   ::= { airIRmPmCommon4 5 }

airIRmPmNumberOfDryCoolers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of drycoolers (1763)"
   ::= { airIRmPmCommon4 6 }

airIRmPmNumberOfPumps OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of pumps (1764)"
   ::= { airIRmPmCommon4 7 }

airIRmPmNumberOfElectricHeaters OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of electric heaters (1765)"
   ::= { airIRmPmCommon4 8 }

airIRmPmNumberOfHumidifiers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of humidifiers (1766)"
   ::= { airIRmPmCommon4 9 }

airIRmPmNumberOfFans OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of fans (1767)"
   ::= { airIRmPmCommon4 10 }

airIRmPmNumberOfLouvers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of louvers (1768)"
   ::= { airIRmPmCommon4 11 }

airIRmPmNumberOfSensors OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of sensors (1769)"
   ::= { airIRmPmCommon4 12 }

airIRmPmNumberOfExternalAlarmInputs OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of external alarm inputs (1770)"
   ::= { airIRmPmCommon4 13 }

airIRmPmNumberOfGECWValves OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of GE/CW valves (1771)"
   ::= { airIRmPmCommon4 14 }

airIRmPmNumberOfHotGasReheat OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of hot gas reheaters (1772)"
   ::= { airIRmPmCommon4 15 }

airIRmPmNumberOfPWWReheat OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of PWW reheaters (1773)"
   ::= { airIRmPmCommon4 16 }

airIRmPmNumberOfDehumidifiers OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of dehumidifiers (1774)"
   ::= { airIRmPmCommon4 17 }

-- airIRmPmCommon5

airIRmPmUnitEvaporationTemperature1  OBJECT IDENTIFIER ::= { airIRmPmCommon5 1 }
airIRmPmUnitEvaporationTemperature1C OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation temperature 1 in tenths
         of degrees Celsius (2232)"
   ::= { airIRmPmUnitEvaporationTemperature1 1 }
airIRmPmUnitEvaporationTemperature1F OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation temperature 1 in tenths
         of degrees Fahrenheit (2232)"
   ::= { airIRmPmUnitEvaporationTemperature1 2 }

airIRmPmUnitEvaporationPressure1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation pressure 1 in tenths
        of Bars (2233)"
   ::= { airIRmPmCommon5 2 }

airIRmPmUnitCondensationTemperature1  OBJECT IDENTIFIER ::= { airIRmPmCommon5 3 }
airIRmPmUnitCondensationTemperature1C OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation temperature 1 in tenths
         of degrees Celsius (2234)"
   ::= { airIRmPmUnitCondensationTemperature1 1 }
airIRmPmUnitCondensationTemperature1F OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation temperature 1 in tenths
         of degrees Fahrenheit (2234)"
   ::= { airIRmPmUnitCondensationTemperature1 2 }

airIRmPmUnitCondensationPressure1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation pressure 1 in tenths
        of Bars (2235)"
   ::= { airIRmPmCommon5 4 }

airIRmPmMaxLimitReturnAirTemperature OBJECT IDENTIFIER ::= { airIRmPmCommon5 8 }
airIRmPmMaxLimitReturnAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit return air temperature in tenths
         of degrees Celsius (2239)."
   ::= { airIRmPmMaxLimitReturnAirTemperature 1 }
airIRmPmMaxLimitReturnAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit return air temperature in tenths
         of degrees Fahrenheit (2239)."
   ::= { airIRmPmMaxLimitReturnAirTemperature 2 }

airIRmPmMinLimitReturnAirTemperature OBJECT IDENTIFIER ::= { airIRmPmCommon5 9 }
airIRmPmMinLimitReturnAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit return air temperature in tenths
         of degrees Celsius (2240)."
   ::= { airIRmPmMinLimitReturnAirTemperature 1 }
airIRmPmMinLimitReturnAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit return air temperature in tenths
         of degrees Fahrenheit (2240)."
   ::= { airIRmPmMinLimitReturnAirTemperature 2 }

airIRmPmMaxLimitSupplyAirTemperature  OBJECT IDENTIFIER ::= { airIRmPmCommon5 10 }
airIRmPmMaxLimitSupplyAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit supply air temperature in tenths
         of degrees Celsius (2241)."
   ::= { airIRmPmMaxLimitSupplyAirTemperature 1 }
airIRmPmMaxLimitSupplyAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit supply air temperature in tenths
         of degrees Fahrenheit (2241)."
   ::= { airIRmPmMaxLimitSupplyAirTemperature 2 }

airIRmPmMinLimitSupplyAirTemperature  OBJECT IDENTIFIER ::= { airIRmPmCommon5 11 }
airIRmPmMinLimitSupplyAirTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit supply air temperature in tenths
         of degrees Celsius (2242)."
   ::= { airIRmPmMinLimitSupplyAirTemperature 1 }
airIRmPmMinLimitSupplyAirTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit supply air temperature in tenths
         of degrees Fahrenheit (2242)."
   ::= { airIRmPmMinLimitSupplyAirTemperature 2 }

airIRmPmMaxLimitWaterTemperature      OBJECT IDENTIFIER ::= { airIRmPmCommon5 12 }
airIRmPmMaxLimitWaterTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit water temperature in tenths of degrees Celsius (2243)."
   ::= { airIRmPmMaxLimitWaterTemperature 1 }
airIRmPmMaxLimitWaterTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit water temperature in tenths
         of degrees Fahrenheit (2243)."
   ::= { airIRmPmMaxLimitWaterTemperature 2 }

airIRmPmMinLimitWaterTemperature      OBJECT IDENTIFIER ::= { airIRmPmCommon5 13 }
airIRmPmMinLimitWaterTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit water temperature in tenths
         of degrees Celsius (2244)."
   ::= { airIRmPmMinLimitWaterTemperature 1 }
airIRmPmMinLimitWaterTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit water temperature in tenths
         of degrees Fahrenheit (2244)."
   ::= { airIRmPmMinLimitWaterTemperature 2 }

airIRmPmMaxLimitReturnAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit return air humidity in tenths of %RH (2245)."
   ::= { airIRmPmCommon5 14 }

airIRmPmMinLimitReturnAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit return air humidity in tenths of %RH (2246)."
   ::= { airIRmPmCommon5 15 }

airIRmPmMaxLimitSupplyAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Maximum limit supply air humidity in tenths of %RH (2247)."
   ::= { airIRmPmCommon5 16 }

airIRmPmMinLimitSupplyAirHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Minimum limit supply air humidity in tenths of %RH (2248)."
   ::= { airIRmPmCommon5 17 }

airIRmPmLowPressureWinterDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Winter mode low pressure delay in seconds (2249)"
   ::= { airIRmPmCommon5 18 }

airIRmPmUnitCondensationPressure2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation pressure 2 in tenths of Bars (2250)"
   ::= { airIRmPmCommon5 19 }

airIRmPmUnitOverloadSwitch OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit overload switch setting in tenths of Kelvins (2251)"
   ::= { airIRmPmCommon5 20 }

airIRmPmUnitCondensationTemperature2  OBJECT IDENTIFIER ::= { airIRmPmCommon5 41 }
airIRmPmUnitCondensationTemperature2C OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation temperature 2 in tenths
        of degrees Celsius (2272)"
   ::= { airIRmPmUnitCondensationTemperature2 1 }
airIRmPmUnitCondensationTemperature2F OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit condensation temperature 2 in tenths
        of degrees Fahrenheit (2272)"
   ::= { airIRmPmUnitCondensationTemperature2 2 }

airIRmPmUnitEvaporationPressure2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation pressure 2 in tenths
        of Bars (2273)"
   ::= { airIRmPmCommon5 42 }

airIRmPmUnitEvaporationTemperature2  OBJECT IDENTIFIER ::= { airIRmPmCommon5 43 }
airIRmPmUnitEvaporationTemperature2C OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation temperature 2 in tenths
        of degrees Celsius (2274)"
   ::= { airIRmPmUnitEvaporationTemperature2 1 }
airIRmPmUnitEvaporationTemperature2F OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Unit evaporation temperature 2 in tenths
        of degrees Fahrenheit (2274)"
   ::= { airIRmPmUnitEvaporationTemperature2 2 }

-- airIRmPmCompressor1

airIRmPmCmp1ManOperationActive OBJECT-TYPE
   SYNTAX INTEGER {
        automatic (1),
        manual    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 manual operation active (4401)"
   ::= { airIRmPmCompressor1 2 }

airIRmPmCmp1ManOperationState OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 manual operation state (4402)"
   ::= { airIRmPmCompressor1 3 }

airIRmPmCmp1Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 running (4403)"
   ::= { airIRmPmCompressor1 4 }

airIRmPmCmp1StartTempSummer  OBJECT IDENTIFIER ::= { airIRmPmCompressor1 17 }
airIRmPmCmp1StartTempSummerK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 summer mode start temperature
        in tenths of Kelvins (4416)"
   ::= { airIRmPmCmp1StartTempSummer 1 }
airIRmPmCmp1StartTempSummerF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 summer mode start temperature
        in tenths of degrees Fahrenheit (4416)"
   ::= { airIRmPmCmp1StartTempSummer 2 }

airIRmPmCmp1HysteresisSummer  OBJECT IDENTIFIER ::= { airIRmPmCompressor1 18 }
airIRmPmCmp1HysteresisSummerK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 summer mode hysteresis setting
        in tenths of Kelvins (4417)"
   ::= { airIRmPmCmp1HysteresisSummer 1 }
airIRmPmCmp1HysteresisSummerF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 summer mode hysteresis setting
        in tenths of Fahrenheit (4417)"
   ::= { airIRmPmCmp1HysteresisSummer 2 }

airIRmPmCmp1StartTempWinter  OBJECT IDENTIFIER ::= { airIRmPmCompressor1 19 }
airIRmPmCmp1StartTempWinterK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 winter mode start temperature
        in tenths of Kelvins (4418)"
   ::= { airIRmPmCmp1StartTempWinter 1 }
airIRmPmCmp1StartTempWinterF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 winter mode start temperature
        in tenths of degrees Fahrenheit (4418)"
   ::= { airIRmPmCmp1StartTempWinter 2 }

airIRmPmCmp1HysteresisWinter  OBJECT IDENTIFIER ::= { airIRmPmCompressor1 20 }
airIRmPmCmp1HysteresisWinterK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 Winter mode hysteresis setting
        in tenths of Kelvins (4419)"
   ::= { airIRmPmCmp1HysteresisWinter 1 }
airIRmPmCmp1HysteresisWinterF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 Winter mode hysteresis setting
        in tenths of Fahrenheit (4419)"
   ::= { airIRmPmCmp1HysteresisWinter 2 }

airIRmPmCmp1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 1 runtime in hours (4428)"
   ::= { airIRmPmCompressor1 29 }

-- airIRmPmCompressor2

airIRmPmCmp2ManOperationActive OBJECT-TYPE
   SYNTAX INTEGER {
        automatic (1),
        manual    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 manual operation active (4501)"
   ::= { airIRmPmCompressor2 2 }

airIRmPmCmp2ManOperationState OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 manual operation state (4502)"
   ::= { airIRmPmCompressor2 3 }

airIRmPmCmp2Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 running (4503)"
   ::= { airIRmPmCompressor2 4 }

airIRmPmCmp2StartTempSummer  OBJECT IDENTIFIER ::= { airIRmPmCompressor2 17 }
airIRmPmCmp2StartTempSummerK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 summer mode start temperature
        in tenths of Kelvins (4516)"
   ::= { airIRmPmCmp2StartTempSummer 1 }
airIRmPmCmp2StartTempSummerF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 summer mode start temperature
        in tenths of degrees Fahrenheit (4516)"
   ::= { airIRmPmCmp2StartTempSummer 2 }

airIRmPmCmp2HysteresisSummer  OBJECT IDENTIFIER ::= { airIRmPmCompressor2 18 }
airIRmPmCmp2HysteresisSummerK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 summer mode hysteresis setting
        in tenths of Kelvins (4517)"
   ::= { airIRmPmCmp2HysteresisSummer 1 }
airIRmPmCmp2HysteresisSummerF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 summer mode hysteresis setting
        in tenths of Fahrenheit (4517)"
   ::= { airIRmPmCmp2HysteresisSummer 2 }

airIRmPmCmp2StartTempWinter  OBJECT IDENTIFIER ::= { airIRmPmCompressor2 19 }
airIRmPmCmp2StartTempWinterK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 winter mode start temperature
        in tenths of Kelvins (4518)"
   ::= { airIRmPmCmp2StartTempWinter 1 }
airIRmPmCmp2StartTempWinterF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 winter mode start temperature
        in tenths of degrees Fahrenheit (4518)"
   ::= { airIRmPmCmp2StartTempWinter 2 }

airIRmPmCmp2HysteresisWinter  OBJECT IDENTIFIER ::= { airIRmPmCompressor2 20 }
airIRmPmCmp2HysteresisWinterK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 Winter mode hysteresis setting
        in tenths of Kelvins (4519)"
   ::= { airIRmPmCmp2HysteresisWinter 1 }
airIRmPmCmp2HysteresisWinterF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 Winter mode hysteresis setting
        in tenths of Fahrenheit (4519)"
   ::= { airIRmPmCmp2HysteresisWinter 2 }

airIRmPmCmp2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor 2 runtime in hours (4528)"
   ::= { airIRmPmCompressor2 29 }

-- airIRmPmSuctionValve1
-- Empty

-- airIRmPmSuctionValve2
-- Empty

-- airIRmPmEheating1

airIRmPmEheating1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 manual operation enable (4801)"
   ::= { airIRmPmEheating1 2 }

airIRmPmEheating1Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 running state (4803)"
   ::= { airIRmPmEheating1 4 }

airIRmPmEheating1ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 running in manual operation mode (4804)"
   ::= { airIRmPmEheating1 5 }

airIRmPmEheating1Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct (1),
        pwm    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 type (4808)"
   ::= { airIRmPmEheating1 9 }

airIRmPmEheating1StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmEheating1 10 }
airIRmPmEheating1StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 start temperature in tenths of Kelvins (4809)"
   ::= { airIRmPmEheating1StartTemperature 1 }
airIRmPmEheating1StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 start temperature in tenths of degrees Fahrenheit (4809)"
   ::= { airIRmPmEheating1StartTemperature 2 }

airIRmPmEheating1Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmEheating1 11 }
airIRmPmEheating1HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 hysteresis in tenths of Kelvins (4810)"
   ::= { airIRmPmEheating1Hysteresis 1 }
airIRmPmEheating1HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 hysteresis in tenths of degrees Fahrenheit (4810)"
   ::= { airIRmPmEheating1Hysteresis 2 }

airIRmPmEheating1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #1 runtime in hours (4816)"
   ::= { airIRmPmEheating1 17 }

-- airIRmPmEheating2

airIRmPmEheating2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 manual operation enable (4901)"
   ::= { airIRmPmEheating2 2 }

airIRmPmEheating2Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 running state (4903)"
   ::= { airIRmPmEheating2 4 }

airIRmPmEheating2ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 running in manual operation mode (4904)"
   ::= { airIRmPmEheating2 5 }

airIRmPmEheating2Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct (1),
        pwm    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 type (4908)"
   ::= { airIRmPmEheating2 9 }

airIRmPmEheating2StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmEheating2 10 }
airIRmPmEheating2StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 start temperature in tenths of Kelvins (4909)"
   ::= { airIRmPmEheating2StartTemperature 1 }
airIRmPmEheating2StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 start temperature in tenths of degrees Fahrenheit (4909)"
   ::= { airIRmPmEheating2StartTemperature 2 }

airIRmPmEheating2Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmEheating2 11 }
airIRmPmEheating2HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 hysteresis in tenths of Kelvins (4910)"
   ::= { airIRmPmEheating2Hysteresis 1 }
airIRmPmEheating2HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 hysteresis in tenths of degrees Fahrenheit (4910)"
   ::= { airIRmPmEheating2Hysteresis 2 }

airIRmPmEheating2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #2 runtime in hours (4916)"
   ::= { airIRmPmEheating2 17 }

-- airIRmPmEheating3

airIRmPmEheating3ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 manual operation enable (5001)"
   ::= { airIRmPmEheating3 2 }

airIRmPmEheating3Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 running state (5003)"
   ::= { airIRmPmEheating3 4 }

airIRmPmEheating3ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 running in manual operation mode (5004)"
   ::= { airIRmPmEheating3 5 }

airIRmPmEheating3Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct (1),
        pwm    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 type (5008)"
   ::= { airIRmPmEheating3 9 }

airIRmPmEheating3StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmEheating3 10 }
airIRmPmEheating3StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 start temperature in tenths of Kelvins (5009)"
   ::= { airIRmPmEheating3StartTemperature 1 }
airIRmPmEheating3StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 start temperature in tenths of degrees Fahrenheit (5009)"
   ::= { airIRmPmEheating3StartTemperature 2 }

airIRmPmEheating3Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmEheating3 11 }
airIRmPmEheating3HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 hysteresis in tenths of Kelvins (5010)"
   ::= { airIRmPmEheating3Hysteresis 1 }
airIRmPmEheating3HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 hysteresis in tenths of degrees Fahrenheit (5010)"
   ::= { airIRmPmEheating3Hysteresis 2 }

airIRmPmEheating3Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #3 runtime in hours (5016)"
   ::= { airIRmPmEheating3 17 }

-- airIRmPmEheating4

airIRmPmEheating4ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 manual operation enable (5101)"
   ::= { airIRmPmEheating4 2 }

airIRmPmEheating4Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 running state (5103)"
   ::= { airIRmPmEheating4 4 }

airIRmPmEheating4ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 running in manual operation mode (5104)"
   ::= { airIRmPmEheating4 5 }

airIRmPmEheating4Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct (1),
        pwm    (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 type (5108)"
   ::= { airIRmPmEheating4 9 }

airIRmPmEheating4StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmEheating4 10 }
airIRmPmEheating4StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 start temperature in tenths of Kelvins (5109)"
   ::= { airIRmPmEheating4StartTemperature 1 }
airIRmPmEheating4StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 start temperature in tenths of degrees Fahrenheit (5109)"
   ::= { airIRmPmEheating4StartTemperature 2 }

airIRmPmEheating4Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmEheating4 11 }
airIRmPmEheating4HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 hysteresis in tenths of Kelvins (5110)"
   ::= { airIRmPmEheating4Hysteresis 1 }
airIRmPmEheating4HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 hysteresis in tenths of degrees Fahrenheit (5110)"
   ::= { airIRmPmEheating4Hysteresis 2 }

airIRmPmEheating4Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Electric heater #4 runtime in hours (5116)"
   ::= { airIRmPmEheating4 17 }

-- airIRmPmGECWvalve

airIRmPmGECWvalveManOpEnable OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve manual operation enable (5201)"
   ::= { airIRmPmGECWvalve 2 }

airIRmPmGECWvalveStartTemperature  OBJECT IDENTIFIER ::= { airIRmPmGECWvalve 9 }
airIRmPmGECWvalveStartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve start temperature in tenths of Kelvins (5208)"
   ::= { airIRmPmGECWvalveStartTemperature 1 }
airIRmPmGECWvalveStartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve start temperature in tenths of degrees Fahrenheit (5208)"
   ::= { airIRmPmGECWvalveStartTemperature 2 }

airIRmPmGECWvalveLinearRange  OBJECT IDENTIFIER ::= { airIRmPmGECWvalve 10 }
airIRmPmGECWvalveLinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve linear range in tenths of Kelvins (5209)"
   ::= { airIRmPmGECWvalveLinearRange 1 }
airIRmPmGECWvalveLinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve linear range in tenths of degrees Fahrenheit (5209)"
   ::= { airIRmPmGECWvalveLinearRange 2 }

airIRmPmGECWvalveGEOffTemp  OBJECT IDENTIFIER ::= { airIRmPmGECWvalve 12 }
airIRmPmGECWvalveGEOffTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve GE off temperature in tenths of degrees Celsius (5211)"
   ::= { airIRmPmGECWvalveGEOffTemp 1 }
airIRmPmGECWvalveGEOffTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve GE off temperature in tenths of degrees Fahrenheit (5211)"
   ::= { airIRmPmGECWvalveGEOffTemp 2 }

airIRmPmGECWvalveOpeningGrade OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve opening grade in percent (5214)"
   ::= { airIRmPmGECWvalve 15 }

airIRmPmGECWvalveManOpOpeningGrade OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "GE/CW valve manual operation opening grade in percent (5215)"
   ::= { airIRmPmGECWvalve 16 }

-- airIRmPmGvalve

airIRmPmGvalveManOperationEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "G-valve manual operation enable (5301)"
   ::= { airIRmPmGvalve 2 }

airIRmPmGvalvePreOpeningTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "G-valve pre-opening time in seconds (5310)"
   ::= { airIRmPmGvalve 11 }

airIRmPmGvalvePreOpeningGrade OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "G-valve pre-opening grade in percent (5311)"
   ::= { airIRmPmGvalve 12 }

airIRmPmGvalveOpeningGrade OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "G-valve opening grade in percent (5312)"
   ::= { airIRmPmGvalve 13 }

airIRmPmGvalveManOpOpeningGrade OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "G-valve manual operation opening grade in percent (5313)"
   ::= { airIRmPmGvalve 14 }

-- airIRmPmDrycooler1

airIRmPmDrycooler1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 manual operation enable setting (5401)"
   ::= { airIRmPmDrycooler1 2 }

airIRmPmDrycooler1Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 running (5402)"
   ::= { airIRmPmDrycooler1 3 }

airIRmPmDrycooler1ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 manual operation running (5404)"
   ::= { airIRmPmDrycooler1 5 }

airIRmPmDrycooler1WinterStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler1 9 }
airIRmPmDrycooler1WinterStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 winter mode start temperature
        in tenths of degrees Celsius (5408)"
   ::= { airIRmPmDrycooler1WinterStartTemp 1 }
airIRmPmDrycooler1WinterStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 winter mode start temperature
        in tenths of degrees Fahrenheit (5408)"
   ::= { airIRmPmDrycooler1WinterStartTemp 2 }

airIRmPmDrycooler1SummerStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler1 10 }
airIRmPmDrycooler1SummerStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 summer mode start temperature
        in tenths of degrees Celsius (5409)"
   ::= { airIRmPmDrycooler1SummerStartTemp 1 }
airIRmPmDrycooler1SummerStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 summer mode start temperature
        in tenths of degrees Fahrenheit (5409)"
   ::= { airIRmPmDrycooler1SummerStartTemp 2 }

airIRmPmDrycooler1Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmDrycooler1 11 }
airIRmPmDrycooler1HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 hysteresis in tenths of Kelvins (5410)"
   ::= { airIRmPmDrycooler1Hysteresis 1 }
airIRmPmDrycooler1HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 hysteresis in tenths of degrees Fahrenheit (5410)"
   ::= { airIRmPmDrycooler1Hysteresis 2 }

airIRmPmDrycooler1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 1 runtime in hours (5415)"
   ::= { airIRmPmDrycooler1 16 }

-- airIRmPmDrycooler2

airIRmPmDrycooler2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 manual operation enable setting (5501)"
   ::= { airIRmPmDrycooler2 2 }

airIRmPmDrycooler2Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 running (5502)"
   ::= { airIRmPmDrycooler2 3 }

airIRmPmDrycooler2ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 manual operation running (5504)"
   ::= { airIRmPmDrycooler2 5 }

airIRmPmDrycooler2WinterStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler2 9 }
airIRmPmDrycooler2WinterStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 winter mode start temperature
        in tenths of degrees Celsius (5508)"
   ::= { airIRmPmDrycooler2WinterStartTemp 1 }
airIRmPmDrycooler2WinterStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 winter mode start temperature
        in tenths of degrees Fahrenheit (5508)"
   ::= { airIRmPmDrycooler2WinterStartTemp 2 }

airIRmPmDrycooler2SummerStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler2 10 }
airIRmPmDrycooler2SummerStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 summer mode start temperature
        in tenths of degrees Celsius (5509)"
   ::= { airIRmPmDrycooler2SummerStartTemp 1 }
airIRmPmDrycooler2SummerStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 summer mode start temperature
        in tenths of degrees Fahrenheit (5509)"
   ::= { airIRmPmDrycooler2SummerStartTemp 2 }

airIRmPmDrycooler2Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmDrycooler2 11 }
airIRmPmDrycooler2HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 hysteresis in tenths of Kelvins (5510)"
   ::= { airIRmPmDrycooler2Hysteresis 1 }
airIRmPmDrycooler2HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 hysteresis in tenths of degrees Fahrenheit (5510)"
   ::= { airIRmPmDrycooler2Hysteresis 2 }

airIRmPmDrycooler2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 2 runtime in hours (5515)"
   ::= { airIRmPmDrycooler2 16 }

-- airIRmPmDrycooler3

airIRmPmDrycooler3ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 manual operation enable setting (5601)"
   ::= { airIRmPmDrycooler3 2 }

airIRmPmDrycooler3Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 running (5602)"
   ::= { airIRmPmDrycooler3 3 }

airIRmPmDrycooler3ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 manual operation running (5604)"
   ::= { airIRmPmDrycooler3 5 }

airIRmPmDrycooler3WinterStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler3 9 }
airIRmPmDrycooler3WinterStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 winter mode start temperature
        in tenths of degrees Celsius (5608)"
   ::= { airIRmPmDrycooler3WinterStartTemp 1 }
airIRmPmDrycooler3WinterStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 winter mode start temperature
        in tenths of degrees Fahrenheit (5608)"
   ::= { airIRmPmDrycooler3WinterStartTemp 2 }

airIRmPmDrycooler3SummerStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler3 10 }
airIRmPmDrycooler3SummerStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 summer mode start temperature
        in tenths of degrees Celsius (5609)"
   ::= { airIRmPmDrycooler3SummerStartTemp 1 }
airIRmPmDrycooler3SummerStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 summer mode start temperature
        in tenths of degrees Fahrenheit (5609)"
   ::= { airIRmPmDrycooler3SummerStartTemp 2 }

airIRmPmDrycooler3Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmDrycooler3 11 }
airIRmPmDrycooler3HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 hysteresis in tenths of Kelvins (5610)"
   ::= { airIRmPmDrycooler3Hysteresis 1 }
airIRmPmDrycooler3HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 hysteresis in tenths of degrees Fahrenheit (5610)"
   ::= { airIRmPmDrycooler3Hysteresis 2 }

airIRmPmDrycooler3Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 3 runtime in hours (5615)"
   ::= { airIRmPmDrycooler3 16 }

-- airIRmPmDrycooler4

airIRmPmDrycooler4ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 manual operation enable setting (5701)"
   ::= { airIRmPmDrycooler4 2 }

airIRmPmDrycooler4Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 running (5702)"
   ::= { airIRmPmDrycooler4 3 }

airIRmPmDrycooler4ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 manual operation running (5704)"
   ::= { airIRmPmDrycooler4 5 }

airIRmPmDrycooler4WinterStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler4 9 }
airIRmPmDrycooler4WinterStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 winter mode start temperature
        in tenths of degrees Celsius (5708)"
   ::= { airIRmPmDrycooler4WinterStartTemp 1 }
airIRmPmDrycooler4WinterStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 winter mode start temperature
        in tenths of degrees Fahrenheit (5708)"
   ::= { airIRmPmDrycooler4WinterStartTemp 2 }

airIRmPmDrycooler4SummerStartTemp  OBJECT IDENTIFIER ::= { airIRmPmDrycooler4 10 }
airIRmPmDrycooler4SummerStartTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 summer mode start temperature
        in tenths of degrees Celsius (5709)"
   ::= { airIRmPmDrycooler4SummerStartTemp 1 }
airIRmPmDrycooler4SummerStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 summer mode start temperature
        in tenths of degrees Fahrenheit (5709)"
   ::= { airIRmPmDrycooler4SummerStartTemp 2 }

airIRmPmDrycooler4Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmDrycooler4 11 }
airIRmPmDrycooler4HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 hysteresis in tenths of Kelvins (5710)"
   ::= { airIRmPmDrycooler4Hysteresis 1 }
airIRmPmDrycooler4HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 hysteresis in tenths of degrees Fahrenheit (5710)"
   ::= { airIRmPmDrycooler4Hysteresis 2 }

airIRmPmDrycooler4Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler 4 runtime in hours (5715)"
   ::= { airIRmPmDrycooler4 16 }

-- airIRmPmPump1

airIRmPmPump1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 1 manual operation enable state (5801)"
   ::= { airIRmPmPump1 2 }

airIRmPmPump1Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 1 running (5802)"
   ::= { airIRmPmPump1 3 }

airIRmPmPump1ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 1 manual operation running (5805)"
   ::= { airIRmPmPump1 6 }

airIRmPmPump1StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmPump1 10 }
airIRmPmPump1StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 starting temperature in tenths of Kelvins (5809)"
   ::= { airIRmPmPump1StartTemperature 1 }
airIRmPmPump1StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 starting temperature in tenths of degrees Fahrenheit (5809)"
   ::= { airIRmPmPump1StartTemperature 2 }

airIRmPmPump1Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmPump1 11 }
airIRmPmPump1HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 hysteresis in tenths of Kelvins (5810)"
   ::= { airIRmPmPump1Hysteresis 1 }
airIRmPmPump1HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 hysteresis in tenths of degrees Fahrenheit (5810)"
   ::= { airIRmPmPump1Hysteresis 2 }

airIRmPmPump1LinearRange  OBJECT IDENTIFIER ::= { airIRmPmPump1 12 }
airIRmPmPump1LinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 linear range in tenths of Kelvins (5811)"
   ::= { airIRmPmPump1LinearRange 1 }
airIRmPmPump1LinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 linear range in tenths of degrees Fahrenheit (5811)"
   ::= { airIRmPmPump1LinearRange 2 }

airIRmPmPump1PressureSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 pressure setpoint in tenths of Bars (5812)"
   ::= { airIRmPmPump1 13 }

airIRmPmPump1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 1 runtime in hours (5820)"
   ::= { airIRmPmPump1 21 }

airIRmPmPump1Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 1 speed in percent (5821)"
   ::= { airIRmPmPump1 22 }

airIRmPmPump1ControlCycle OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 control cycle length in seconds (5827)"
   ::= { airIRmPmPump1 28 }

airIRmPmPump1MaxAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 maximum adjustment in percent (5828)"
   ::= { airIRmPmPump1 29 }

airIRmPmPump1ControlFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 1 control factor setting (5829)"
   ::= { airIRmPmPump1 30 }

-- airIRmPmPump2

airIRmPmPump2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 2 manual operation enable state (5901)"
   ::= { airIRmPmPump2 2 }

airIRmPmPump2Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 2 running (5902)"
   ::= { airIRmPmPump2 3 }

airIRmPmPump2ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 2 manual operation running (5905)"
   ::= { airIRmPmPump2 6 }

airIRmPmPump2StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmPump2 10 }
airIRmPmPump2StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 starting temperature in tenths of Kelvins (5909)"
   ::= { airIRmPmPump2StartTemperature 1 }
airIRmPmPump2StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 starting temperature in tenths of degrees Fahrenheit (5909)"
   ::= { airIRmPmPump2StartTemperature 2 }

airIRmPmPump2Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmPump2 11 }
airIRmPmPump2HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 hysteresis in tenths of Kelvins (5910)"
   ::= { airIRmPmPump2Hysteresis 1 }
airIRmPmPump2HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 hysteresis in tenths of degrees Fahrenheit (5910)"
   ::= { airIRmPmPump2Hysteresis 2 }

airIRmPmPump2LinearRange  OBJECT IDENTIFIER ::= { airIRmPmPump2 12 }
airIRmPmPump2LinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 linear range in tenths of Kelvins (5911)"
   ::= { airIRmPmPump2LinearRange 1 }
airIRmPmPump2LinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 linear range in tenths of degrees Fahrenheit (5911)"
   ::= { airIRmPmPump2LinearRange 2 }

airIRmPmPump2PressureSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 pressure setpoint in tenths of Bars (5912)"
   ::= { airIRmPmPump2 13 }

airIRmPmPump2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 2 runtime in hours (5920)"
   ::= { airIRmPmPump2 21 }

airIRmPmPump2Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 2 speed in percent (5921)"
   ::= { airIRmPmPump2 22 }

airIRmPmPump2ControlCycle OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 control cycle length in seconds (5927)"
   ::= { airIRmPmPump2 28 }

airIRmPmPump2MaxAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 maximum adjustment in percent (5928)"
   ::= { airIRmPmPump2 29 }

airIRmPmPump2ControlFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 2 control factor setting (5929)"
   ::= { airIRmPmPump2 30 }

-- airIRmPmPump3

airIRmPmPump3ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 3 manual operation enable state (6001)"
   ::= { airIRmPmPump3 2 }

airIRmPmPump3Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 3 running (6002)"
   ::= { airIRmPmPump3 3 }

airIRmPmPump3ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 3 manual operation running (6005)"
   ::= { airIRmPmPump3 6 }

airIRmPmPump3StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmPump3 10 }
airIRmPmPump3StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 starting temperature in tenths of Kelvins (6009)"
   ::= { airIRmPmPump3StartTemperature 1 }
airIRmPmPump3StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 starting temperature in tenths of degrees Fahrenheit (6009)"
   ::= { airIRmPmPump3StartTemperature 2 }

airIRmPmPump3Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmPump3 11 }
airIRmPmPump3HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 hysteresis in tenths of Kelvins (6010)"
   ::= { airIRmPmPump3Hysteresis 1 }
airIRmPmPump3HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 hysteresis in tenths of degrees Fahrenheit (6010)"
   ::= { airIRmPmPump3Hysteresis 2 }

airIRmPmPump3LinearRange  OBJECT IDENTIFIER ::= { airIRmPmPump3 12 }
airIRmPmPump3LinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 linear range in tenths of Kelvins (6011)"
   ::= { airIRmPmPump3LinearRange 1 }
airIRmPmPump3LinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 linear range in tenths of degrees Fahrenheit (6011)"
   ::= { airIRmPmPump3LinearRange 2 }

airIRmPmPump3PressureSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 pressure setpoint in tenths of Bars (6012)"
   ::= { airIRmPmPump3 13 }

airIRmPmPump3Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 3 runtime in hours (6020)"
   ::= { airIRmPmPump3 21 }

airIRmPmPump3Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 3 speed in percent (6021)"
   ::= { airIRmPmPump3 22 }

airIRmPmPump3ControlCycle OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 control cycle length in seconds (6027)"
   ::= { airIRmPmPump3 28 }

airIRmPmPump3MaxAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 maximum adjustment in percent (6028)"
   ::= { airIRmPmPump3 29 }

airIRmPmPump3ControlFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 3 control factor setting (6029)"
   ::= { airIRmPmPump3 30 }

-- airIRmPmPump4

airIRmPmPump4ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 4 manual operation enable state (6101)"
   ::= { airIRmPmPump4 2 }

airIRmPmPump4Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 4 running (6102)"
   ::= { airIRmPmPump4 3 }

airIRmPmPump4ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 4 manual operation running (6105)"
   ::= { airIRmPmPump4 6 }

airIRmPmPump4StartTemperature  OBJECT IDENTIFIER ::= { airIRmPmPump4 10 }
airIRmPmPump4StartTemperatureK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 starting temperature in tenths of Kelvins (6109)"
   ::= { airIRmPmPump4StartTemperature 1 }
airIRmPmPump4StartTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 starting temperature in tenths of degrees Fahrenheit (6109)"
   ::= { airIRmPmPump4StartTemperature 2 }

airIRmPmPump4Hysteresis  OBJECT IDENTIFIER ::= { airIRmPmPump4 11 }
airIRmPmPump4HysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 hysteresis in tenths of Kelvins (6110)"
   ::= { airIRmPmPump4Hysteresis 1 }
airIRmPmPump4HysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 hysteresis in tenths of degrees Fahrenheit (6110)"
   ::= { airIRmPmPump4Hysteresis 2 }

airIRmPmPump4LinearRange  OBJECT IDENTIFIER ::= { airIRmPmPump4 12 }
airIRmPmPump4LinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 linear range in tenths of Kelvins (6111)"
   ::= { airIRmPmPump4LinearRange 1 }
airIRmPmPump4LinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 linear range in tenths of degrees Fahrenheit (6111)"
   ::= { airIRmPmPump4LinearRange 2 }

airIRmPmPump4PressureSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 pressure setpoint in tenths of Bars (6112)"
   ::= { airIRmPmPump4 13 }

airIRmPmPump4Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 4 runtime in hours (6120)"
   ::= { airIRmPmPump4 21 }

airIRmPmPump4Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump 4 speed in percent (6121)"
   ::= { airIRmPmPump4 22 }

airIRmPmPump4ControlCycle OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 control cycle length in seconds (6127)"
   ::= { airIRmPmPump4 28 }

airIRmPmPump4MaxAdjust OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 maximum adjustment in percent (6128)"
   ::= { airIRmPmPump4 29 }

airIRmPmPump4ControlFactor OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Pump 4 control factor setting (6129)"
   ::= { airIRmPmPump4 30 }

-- airIRmPmHotgasHeating

airIRmPmHotgasHeatRunning OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Hotgas heat running state. (6202)"
   ::= { airIRmPmHotgasHeating 3 }

-- airIRmPmPWWHeating

airIRmPmPWWHeatingManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "PWW-heating manual operation enable (6301)"
   ::= { airIRmPmPWWHeating 2 }

airIRmPmPWWHeatingRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "PWW-heating running (6302)"
   ::= { airIRmPmPWWHeating 3 }

airIRmPmPWWHeatingManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "PWW-heating manual operation running (6303)"
   ::= { airIRmPmPWWHeating 4 }

airIRmPmPWWHeatingType OBJECT-TYPE
   SYNTAX INTEGER {
        direct    (1),
        undefined (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "PWW-heating type (6308)"
   ::= { airIRmPmPWWHeating 9 }

airIRmPmPWWHeatingStartTemp  OBJECT IDENTIFIER ::= { airIRmPmPWWHeating 10 }
airIRmPmPWWHeatingStartTempK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating starting temperature in Kelvins (6309)"
   ::= { airIRmPmPWWHeatingStartTemp 1 }
airIRmPmPWWHeatingStartTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating starting temperature in degrees Fahrenheit (6309)"
   ::= { airIRmPmPWWHeatingStartTemp 2 }

airIRmPmPWWHeatingHysteresis  OBJECT IDENTIFIER ::= { airIRmPmPWWHeating 12 }
airIRmPmPWWHeatingHysteresisK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating hysteresis in Kelvins (6311)"
   ::= { airIRmPmPWWHeatingHysteresis 1 }
airIRmPmPWWHeatingHysteresisF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating hysteresis in degrees Fahrenheit (6311)"
   ::= { airIRmPmPWWHeatingHysteresis 2 }

airIRmPmPWWHeatingLinearRange  OBJECT IDENTIFIER ::= { airIRmPmPWWHeating 13 }
airIRmPmPWWHeatingLinearRangeK OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating linear range in Kelvins (6312)"
   ::= { airIRmPmPWWHeatingLinearRange 1 }
airIRmPmPWWHeatingLinearRangeF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating linear range in degrees Fahrenheit (6312)"
   ::= { airIRmPmPWWHeatingLinearRange 2 }

airIRmPmPWWHeatingCurrentValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating current value in percent (6315)"
   ::= { airIRmPmPWWHeating 16 }

airIRmPmPWWHeatingManOpValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "PWW-heating manual operation value in percent (6316)"
   ::= { airIRmPmPWWHeating 17 }

-- airIRmPmHumidifier1

airIRmPmHumidifier1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 manual operation enable (6401)"
   ::= { airIRmPmHumidifier1 2 }

airIRmPmHumidifier1Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 running state (6402)"
   ::= { airIRmPmHumidifier1 3 }

airIRmPmHumidifier1ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 manual operation running state (6404)"
   ::= { airIRmPmHumidifier1 5 }

airIRmPmHumidifier1Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct       (1),
        proportional (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 type (6416)"
   ::= { airIRmPmHumidifier1 17 }

airIRmPmHumidifier1StartHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 start humidity in tenths
        of percent relative humidity (6417)"
   ::= { airIRmPmHumidifier1 18 }

airIRmPmHumidifier1Hysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 hysteresis in tenths
        of percent relative humidity (6419)"
   ::= { airIRmPmHumidifier1 20 }

airIRmPmHumidifier1LinearRange OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 linear range in tenths
        of percent relative humidity per Kelvin (6420)"
   ::= { airIRmPmHumidifier1 21 }

airIRmPmHumidifier1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 runtime in hours (6426)"
   ::= { airIRmPmHumidifier1 27 }

airIRmPmHumidifier1CurrentValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 current value in percent (6427)"
   ::= { airIRmPmHumidifier1 28 }

airIRmPmHumidifier1ManOpValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 manual operation value in percent (6428)"
   ::= { airIRmPmHumidifier1 29 }

-- airIRmPmHumidifier2

airIRmPmHumidifier2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 manual operation enable (6501)"
   ::= { airIRmPmHumidifier2 2 }

airIRmPmHumidifier2Running OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 running state (6502)"
   ::= { airIRmPmHumidifier2 3 }

airIRmPmHumidifier2ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 manual operation running state (6504)"
   ::= { airIRmPmHumidifier2 5 }

airIRmPmHumidifier2Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct       (1),
        proportional (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 type (6516)"
   ::= { airIRmPmHumidifier2 17 }

airIRmPmHumidifier2StartHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 start humidity in tenths
        of percent relative humidity (6517)"
   ::= { airIRmPmHumidifier2 18 }

airIRmPmHumidifier2Hysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 hysteresis in tenths
        of percent relative humidity (6519)"
   ::= { airIRmPmHumidifier2 20 }

airIRmPmHumidifier2LinearRange OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 linear range in tenths
        of percent relative humidity per Kelvin (6520)"
   ::= { airIRmPmHumidifier2 21 }

airIRmPmHumidifier2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 runtime in hours (6526)"
   ::= { airIRmPmHumidifier2 27 }

airIRmPmHumidifier2CurrentValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 current value in percent (6527)"
   ::= { airIRmPmHumidifier2 28 }

airIRmPmHumidifier2ManOpValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 manual operation value in percent (6528)"
   ::= { airIRmPmHumidifier2 29 }

-- airIRmPmDehumidification

airIRmPmDehumidificManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier manual operation enable setting (6801)"
   ::= { airIRmPmDehumidification 2 }

airIRmPmDehumidificRunning OBJECT-TYPE
   SYNTAX AirIRmControlState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier running state (6802)"
   ::= { airIRmPmDehumidification 3 }

airIRmPmDehumidificManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier manual operation running (6804)"
   ::= { airIRmPmDehumidification 5 }

airIRmPmDehumidificStartHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier start humidity in tenths of percent relative humidity (6809)"
   ::= { airIRmPmDehumidification 10 }

airIRmPmDehumidificHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier hysteresis in tenths of percent relative humidity (6811)"
   ::= { airIRmPmDehumidification 12 }

airIRmPmDehumidificMinWaterTemp  OBJECT IDENTIFIER ::= { airIRmPmDehumidification 18 }
airIRmPmDehumidificMinWaterTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier minimum water temperature in tenths of
        degrees Celsius (6817)"
   ::= { airIRmPmDehumidificMinWaterTemp 1 }
airIRmPmDehumidificMinWaterTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier minimum water temperature in tenths of
        degrees Fahrenheit (6817)"
   ::= { airIRmPmDehumidificMinWaterTemp 2 }

airIRmPmDehumidificMaxWaterTemp  OBJECT IDENTIFIER ::= { airIRmPmDehumidification 19 }
airIRmPmDehumidificMaxWaterTempC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier maximum water temperature in tenths of
        degrees Celsius (6818)"
   ::= { airIRmPmDehumidificMaxWaterTemp 1 }
airIRmPmDehumidificMaxWaterTempF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier maximum water temperature in tenths of
        degrees Fahrenheit (6818)"
   ::= { airIRmPmDehumidificMaxWaterTemp 2 }

airIRmPmDehumidificRuntime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Dehumidifier runtime in hours (6820)"
   ::= { airIRmPmDehumidification 21 }

-- airIRmPmFan1

airIRmPmFan1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation enable (6901)"
   ::= { airIRmPmFan1 2 }

airIRmPmFan1Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 running (6902)"
   ::= { airIRmPmFan1 3 }

airIRmPmFan1ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation running (6905)"
   ::= { airIRmPmFan1 6 }

airIRmPmFan1Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct       (1),
        proportional (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 type (6908)"
   ::= { airIRmPmFan1 9 }

airIRmPmFan1Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 runtime in hours (6931)"
   ::= { airIRmPmFan1 32 }

airIRmPmFan1Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 speed in percent (6932)"
   ::= { airIRmPmFan1 33 }

airIRmPmFan1ManOpSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation speed in percent (6933)"
   ::= { airIRmPmFan1 34 }

-- airIRmPmFan2

airIRmPmFan2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation enable (7001)"
   ::= { airIRmPmFan2 2 }

airIRmPmFan2Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 running (7002)"
   ::= { airIRmPmFan2 3 }

airIRmPmFan2ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation running (7005)"
   ::= { airIRmPmFan2 6 }

airIRmPmFan2Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct       (1),
        proportional (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 2 type (7008)"
   ::= { airIRmPmFan2 9 }

airIRmPmFan2Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 runtime in hours (7031)"
   ::= { airIRmPmFan2 32 }

airIRmPmFan2Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 speed in percent (7032)"
   ::= { airIRmPmFan2 33 }

airIRmPmFan2ManOpSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation speed in percent (7033)"
   ::= { airIRmPmFan2 34 }

-- airIRmPmFan3

airIRmPmFan3ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation enable (7101)"
   ::= { airIRmPmFan3 2 }

airIRmPmFan3Running OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 running (7102)"
   ::= { airIRmPmFan3 3 }

airIRmPmFan3ManOpRunning OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation running (7105)"
   ::= { airIRmPmFan3 6 }

airIRmPmFan3Type OBJECT-TYPE
   SYNTAX INTEGER {
        direct       (1),
        proportional (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 3 type (7108)"
   ::= { airIRmPmFan3 9 }

airIRmPmFan3Runtime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 runtime in hours (7131)"
   ::= { airIRmPmFan3 32 }

airIRmPmFan3Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 speed in percent (7132)"
   ::= { airIRmPmFan3 33 }

airIRmPmFan3ManOpSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan 1 manual operation speed in percent (7133)"
   ::= { airIRmPmFan3 34 }

-- airIRmPmLouver1

airIRmPmLouver1ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 1 manual operation enable (7201)"
   ::= { airIRmPmLouver1 2 }

airIRmPmLouver1Position OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 1 position (7202)"
   ::= { airIRmPmLouver1 3 }

airIRmPmLouver1ManOpPosition OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 1 manual operation position setting (7203)"
   ::= { airIRmPmLouver1 4 }

-- airIRmPmLouver2

airIRmPmLouver2ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 2 manual operation enable (7301)"
   ::= { airIRmPmLouver2 2 }

airIRmPmLouver2Position OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 2 position (7302)"
   ::= { airIRmPmLouver2 3 }

airIRmPmLouver2ManOpPosition OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 2 manual operation position setting (7303)"
   ::= { airIRmPmLouver2 4 }

-- airIRmPmLouver3

airIRmPmLouver3ManOpEnable OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 3 manual operation enable (7401)"
   ::= { airIRmPmLouver3 2 }

airIRmPmLouver3Position OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 3 position (7402)"
   ::= { airIRmPmLouver3 3 }

airIRmPmLouver3ManOpPosition OBJECT-TYPE
   SYNTAX INTEGER {
        closed (1),
        open   (2) }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Louver 3 manual operation position setting (7403)"
   ::= { airIRmPmLouver3 4 }

-- airIRmPmAuxAlarm1
-- Empty

-- airIRmPmAuxAlarm2
-- Empty

-- airIRmPmAuxAlarm3
-- Empty

-- airIRmPmAuxAlarm4
-- Empty

-- airIRmPmAuxAlarm5
-- Empty


-- airIRmPmAlarmBits

airIRmPmFan1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #1 failure (8500)."
   ::= { airIRmPmAlarmBits 1 }

airIRmPmFan2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #2 failure (8501)."
   ::= { airIRmPmAlarmBits 2 }

airIRmPmFan3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #3 failure (8502)."
   ::= { airIRmPmAlarmBits 3 }

airIRmPmCompressor1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #1 failure (8503)."
   ::= { airIRmPmAlarmBits 4 }

airIRmPmCompressor2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #2 failure (8504)."
   ::= { airIRmPmAlarmBits 5 }

airIRmPmWaterDetector OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water detector alarm (8505)."
   ::= { airIRmPmAlarmBits 6 }

airIRmPmPhaseFailure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Phase failure (8506)."
   ::= { airIRmPmAlarmBits 7 }

airIRmPmFireSmokeDetector OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fire/smoke detector (8507)."
   ::= { airIRmPmAlarmBits 8 }

airIRmPmReturnAirTemperatureTooHigh OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air temperature too high (8508)."
   ::= { airIRmPmAlarmBits 9 }

airIRmPmReturnAirHumidityTooHigh OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air humidity too high (8509)."
   ::= { airIRmPmAlarmBits 10 }

airIRmPmSupplyAirTemperatureTooHigh OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air temperature too high (8510)."
   ::= { airIRmPmAlarmBits 11 }

airIRmPmSupplyAirHumidityTooHigh OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air humidity too high (8511)."
   ::= { airIRmPmAlarmBits 12 }

airIRmPmWaterTemperatureTooHigh OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature too high (8512)."
   ::= { airIRmPmAlarmBits 13 }

airIRmPmReturnAirTemperatureTooLow OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air temperature too low (8513)."
   ::= { airIRmPmAlarmBits 14 }

airIRmPmReturnAirHumidityTooLow OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Return air humidity too low (8514)."
   ::= { airIRmPmAlarmBits 15 }

airIRmPmSupplyAirTemperatureTooLow OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air temperature too low (8515)."
   ::= { airIRmPmAlarmBits 16 }

airIRmPmSupplyAirHumidityTooLow OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Supply air humidity too low (8516)."
   ::= { airIRmPmAlarmBits 17 }

airIRmPmWaterTemperatureTooLow OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Water temperature too low (8517)."
   ::= { airIRmPmAlarmBits 18 }

airIRmPmSensor1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #1 failure (8518)."
   ::= { airIRmPmAlarmBits 19 }

airIRmPmSensor2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #2 failure (8519)."
   ::= { airIRmPmAlarmBits 20 }

airIRmPmSensor3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #3 failure (8520)."
   ::= { airIRmPmAlarmBits 21 }

airIRmPmSensor4Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #4 failure (8521)."
   ::= { airIRmPmAlarmBits 22 }

airIRmPmSensor5Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #5 failure (8522)."
   ::= { airIRmPmAlarmBits 23 }

airIRmPmSensor6Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #6 failure (8523)."
   ::= { airIRmPmAlarmBits 24 }

airIRmPmSensor7Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #7 failure (8524)."
   ::= { airIRmPmAlarmBits 25 }

airIRmPmSensor8Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #8 failure (8525)."
   ::= { airIRmPmAlarmBits 26 }

airIRmPmSensor9Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #9 failure (8526)."
   ::= { airIRmPmAlarmBits 27 }

airIRmPmSensor10Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #10 failure (8527)."
   ::= { airIRmPmAlarmBits 28 }

airIRmPmSensor11Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #11 failure (8528)."
   ::= { airIRmPmAlarmBits 29 }

airIRmPmSensor12Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #12 failure (8529)."
   ::= { airIRmPmAlarmBits 30 }

airIRmPmSensor13Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #13 failure (8530)."
   ::= { airIRmPmAlarmBits 31 }

airIRmPmSensor14Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #14 failure (8531)."
   ::= { airIRmPmAlarmBits 32 }

airIRmPmSensor15Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #15 failure (8532)."
   ::= { airIRmPmAlarmBits 33 }

airIRmPmSensor16Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #16 failure (8533)."
   ::= { airIRmPmAlarmBits 34 }

airIRmPmSensor17Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #17 failure (8534)."
   ::= { airIRmPmAlarmBits 35 }

airIRmPmSensor18Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #18 failure (8535)."
   ::= { airIRmPmAlarmBits 36 }

airIRmPmSensor19Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #19 failure (8536)."
   ::= { airIRmPmAlarmBits 37 }

airIRmPmSensor20Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #20 failure (8537)."
   ::= { airIRmPmAlarmBits 38 }

airIRmPmSensor21Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #21 failure (8538)."
   ::= { airIRmPmAlarmBits 39 }

airIRmPmSensor1Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #1 defect (8539)."
   ::= { airIRmPmAlarmBits 40 }

airIRmPmSensor2Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #2 defect (8540)."
   ::= { airIRmPmAlarmBits 41 }

airIRmPmSensor3Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #3 defect (8541)."
   ::= { airIRmPmAlarmBits 42 }

airIRmPmSensor4Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #4 defect (8542)."
   ::= { airIRmPmAlarmBits 43 }

airIRmPmSensor5Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #5 defect (8543)."
   ::= { airIRmPmAlarmBits 44 }

airIRmPmSensor6Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #6 defect (8544)."
   ::= { airIRmPmAlarmBits 45 }

airIRmPmSensor7Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #7 defect (8545)."
   ::= { airIRmPmAlarmBits 46 }

airIRmPmSensor8Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #8 defect (8546)."
   ::= { airIRmPmAlarmBits 47 }

airIRmPmSensor9Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #9 defect (8547)."
   ::= { airIRmPmAlarmBits 48 }

airIRmPmSensor10Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #10 defect (8548)."
   ::= { airIRmPmAlarmBits 49 }

airIRmPmSensor11Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #11 defect (8549)."
   ::= { airIRmPmAlarmBits 50 }

airIRmPmSensor12Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #12 defect (8550)."
   ::= { airIRmPmAlarmBits 51 }

airIRmPmSensor13Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #13 defect (8551)."
   ::= { airIRmPmAlarmBits 52 }

airIRmPmSensor14Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #14 defect (8552)."
   ::= { airIRmPmAlarmBits 53 }

airIRmPmSensor15Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #15 defect (8553)."
   ::= { airIRmPmAlarmBits 54 }

airIRmPmSensor16Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #16 defect (8554)."
   ::= { airIRmPmAlarmBits 55 }

airIRmPmSensor17Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #17 defect (8555)."
   ::= { airIRmPmAlarmBits 56 }

airIRmPmSensor18Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #18 defect (8556)"
   ::= { airIRmPmAlarmBits 57 }

airIRmPmSensor19Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #19 defect (8557)."
   ::= { airIRmPmAlarmBits 58 }

airIRmPmSensor20Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #20 defect (8558)."
   ::= { airIRmPmAlarmBits 59 }

airIRmPmSensor21Defect OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Sensor #21 defect (8559)."
   ::= { airIRmPmAlarmBits 60 }

airIRmPmCompressor1Alarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #1 alarm (8560)."
   ::= { airIRmPmAlarmBits 61 }

airIRmPmCompressor2Alarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #2 alarm (8561)."
   ::= { airIRmPmAlarmBits 62 }

airIRmPmCompressor1LowPressure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #1 low pressure (8562)."
   ::= { airIRmPmAlarmBits 63 }

airIRmPmCompressor2LowPressure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Compressor #2 low pressure (8563)."
   ::= { airIRmPmAlarmBits 64 }

airIRmPmReheat1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Reheat #1 failure (8564)."
   ::= { airIRmPmAlarmBits 65 }

airIRmPmReheat2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Reheat #2 failure (8565)."
   ::= { airIRmPmAlarmBits 66 }

airIRmPmReheat3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Reheat #3 failure (8566)."
   ::= { airIRmPmAlarmBits 67 }

airIRmPmReheat4Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Reheat #4 failure (8567)."
   ::= { airIRmPmAlarmBits 68 }

airIRmPmDrycooler1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler #1 failure (8568)."
   ::= { airIRmPmAlarmBits 69 }

airIRmPmDrycooler2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler #2 failure (8569)."
   ::= { airIRmPmAlarmBits 70 }

airIRmPmDrycooler3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler #3 failure (8570)."
   ::= { airIRmPmAlarmBits 71 }

airIRmPmDrycooler4Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Drycooler #4 failure (8571)."
   ::= { airIRmPmAlarmBits 72 }

airIRmPmPump1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump #1 failure (8572)."
   ::= { airIRmPmAlarmBits 73 }

airIRmPmPump2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump #2 failure (8573)."
   ::= { airIRmPmAlarmBits 74 }

airIRmPmPump3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump #3 failure (8574)."
   ::= { airIRmPmAlarmBits 75 }

airIRmPmPump4Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Pump #4 failure (8575)."
   ::= { airIRmPmAlarmBits 76 }

airIRmPmHumidifier1Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 failure (8576)."
   ::= { airIRmPmAlarmBits 77 }

airIRmPmHumidifier2Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 failure (8577)."
   ::= { airIRmPmAlarmBits 78 }

airIRmPmHumidifier3Failure OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #3 failure (8578)."
   ::= { airIRmPmAlarmBits 79 }

airIRmPmHumidifier1Alarm5us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 5us alarm (8579)."
   ::= { airIRmPmAlarmBits 80 }

airIRmPmHumidifier2Alarm5us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 5us alarm (8580)."
   ::= { airIRmPmAlarmBits 81 }

airIRmPmHumidifier3Alarm5us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #3 5us alarm (8581)."
   ::= { airIRmPmAlarmBits 82 }

airIRmPmHumidifier1Alarm20us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #1 20us alarm (8582)."
   ::= { airIRmPmAlarmBits 83 }

airIRmPmHumidifier2Alarm20us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #2 20us alarm (8583)."
   ::= { airIRmPmAlarmBits 84 }

airIRmPmHumidifier3Alarm20us OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Humidifier #3 20us alarm (8584)."
   ::= { airIRmPmAlarmBits 85 }

airIRmPmFan1Alarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #1 alarm (8585)."
   ::= { airIRmPmAlarmBits 86 }

airIRmPmFan2Alarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #2 alarm (8586)."
   ::= { airIRmPmAlarmBits 87 }

airIRmPmFan3Alarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Fan #3 alarm (8587)."
   ::= { airIRmPmAlarmBits 88 }

airIRmPmFilter1Clogged OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Filter #1 clogged (8588)."
   ::= { airIRmPmAlarmBits 89 }

airIRmPmFilter2Clogged OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Filter #2 clogged (8589)."
   ::= { airIRmPmAlarmBits 90 }

airIRmPmFilter3Clogged OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Filter #3 clogged (8590)."
   ::= { airIRmPmAlarmBits 91 }

airIRmPmAuxiliaryAlarm1 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #1 alarm (8591)."
   ::= { airIRmPmAlarmBits 92 }

airIRmPmAuxiliaryAlarm2 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #2 alarm (8592)."
   ::= { airIRmPmAlarmBits 93 }

airIRmPmAuxiliaryAlarm3 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #3 alarm (8593)."
   ::= { airIRmPmAlarmBits 94 }

airIRmPmAuxiliaryAlarm4 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #4 alarm (8594)."
   ::= { airIRmPmAlarmBits 95 }

airIRmPmAuxiliaryAlarm5 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #5 alarm (8595)."
   ::= { airIRmPmAlarmBits 96 }

airIRmPmAuxiliaryAlarm6 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #6 alarm (8596)."
   ::= { airIRmPmAlarmBits 97 }

airIRmPmAuxiliaryAlarm7 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #7 alarm (8597)."
   ::= { airIRmPmAlarmBits 98 }

airIRmPmAuxiliaryAlarm8 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #8 alarm (8598)."
   ::= { airIRmPmAlarmBits 99 }

airIRmPmAuxiliaryAlarm9 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #9 alarm (8599)."
   ::= { airIRmPmAlarmBits 100 }

airIRmPmAuxiliaryAlarm10 OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Auxiliary #10 alarm (8600)."
   ::= { airIRmPmAlarmBits 101 }

airIRmPmHotGasHeatingAlarm OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Hot gas heating alarm (8601)."
   ::= { airIRmPmAlarmBits 102 }

airIRmPmEEV1PressureSensorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV1 pressure sensor error (8602)."
   ::= { airIRmPmAlarmBits 103 }

airIRmPmEEV1TemperatureSensorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV1 temperature sensor error (8603)."
   ::= { airIRmPmAlarmBits 104 }

airIRmPmEEV1StepperMotorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV1 stepper motor error (8604)."
   ::= { airIRmPmAlarmBits 105 }

airIRmPmEEV2PressureSensorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV2 pressure sensor error (8605)."
   ::= { airIRmPmAlarmBits 106 }

airIRmPmEEV2TemperatureSensorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV2 temperature sensor error (8606)."
   ::= { airIRmPmAlarmBits 107 }

airIRmPmEEV2StepperMotorError OBJECT-TYPE
   SYNTAX AirIRmAlarmState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "EEV2 stepper motor error (8607)."
   ::= { airIRmPmAlarmBits 108 }

-- airIRmPmMyZone

airIRmPmMyZoneNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone number (11700)."
   ::= { airIRmPmMyZone 1 }

airIRmPmMyZoneRoomTemperature  OBJECT IDENTIFIER ::= { airIRmPmMyZone 2 }
airIRmPmMyZoneRoomTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone room temperature in tenths of degrees Celsius (11701)."
   ::= { airIRmPmMyZoneRoomTemperature 1 }
airIRmPmMyZoneRoomTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone room temperature in tenths of degrees Fahrenheit (11701)."
   ::= { airIRmPmMyZoneRoomTemperature 2 }

airIRmPmMyZoneRoomHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone room humidity in tenths of %RH (11702)."
   ::= { airIRmPmMyZone 3 }

airIRmPmMyZoneSupplyTemperature  OBJECT IDENTIFIER ::= { airIRmPmMyZone 4 }
airIRmPmMyZoneSupplyTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone supply temperature in tenths of degrees Celsius (11703)."
   ::= { airIRmPmMyZoneSupplyTemperature 1 }
airIRmPmMyZoneSupplyTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone supply temperature in tenths
         of degrees Fahrenheit (11703)."
   ::= { airIRmPmMyZoneSupplyTemperature 2 }

airIRmPmMyZoneSupplyHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone supply humidity in tenths of %RH (11704)."
   ::= { airIRmPmMyZone 5 }

airIRmPmMyZoneSequencingTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone sequencing time in minutes (11705)."
   ::= { airIRmPmMyZone 6 }

airIRmPmMyZoneNumberOfErrorUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Number of error units in my zone (11706)."
   ::= { airIRmPmMyZone 7 }

airIRmPmMyZoneEmergencyTemperature  OBJECT IDENTIFIER ::= { airIRmPmMyZone 8 }
airIRmPmMyZoneEmergencyTemperatureC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone emergency temperature in tenths of degrees Celsius (11707)."
   ::= { airIRmPmMyZoneEmergencyTemperature 1 }
airIRmPmMyZoneEmergencyTemperatureF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone emergency temperature in tenths
         of degrees Fahrenheit (11707)."
   ::= { airIRmPmMyZoneEmergencyTemperature 2 }

airIRmPmMyZoneCWEnergySaveMode OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "My zone CW energy save mode (11708)."
   ::= { airIRmPmMyZone 9 }

-- airIRmPmGlobalZoneData

airIRmPmGlobalZoneDataEmergencyOpMode OBJECT-TYPE
   SYNTAX AirIRmActivityState
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Emergency operation mode (11800)."
   ::= { airIRmPmGlobalZoneData 1 }

-- End of AC InRoom

-- Begining of airIRGen3

-- ******************************************************************
--airIRG3 Ident Group
-- ******************************************************************

airIRG3IdentTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The ident table size."
   ::= { airIRG3Ident 1 }

AirIRG3IdentEntry ::= SEQUENCE {
    airIRG3IdentIndex              INTEGER,
    airIRG3IdentName               DisplayString,
    airIRG3IdentLocation           DisplayString,
    airIRG3IdentModelNumber           DisplayString,
    airIRG3IdentSerialNumber       DisplayString,
    airIRG3IdentFirmwareRevision   DisplayString,
    airIRG3IdentHardwareRevision   DisplayString,
    airIRG3IdentManufactureDate       DisplayString,
    airIRG3IdentRDUSysOID           OBJECT IDENTIFIER,
    airIRG3IdentCMSysOID           OBJECT IDENTIFIER,
    airIRG3IdentGroupSysOID           OBJECT IDENTIFIER
   }

airIRG3IdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3IdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to get ident information of current RDU and its assigned CM's."
   ::= { airIRG3Ident 2 }

airIRG3IdentEntry OBJECT-TYPE
   SYNTAX AirIRG3IdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The ident table entry."
   INDEX  { airIRG3IdentIndex}
   ::= { airIRG3IdentTable 1 }

airIRG3IdentIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of ident table."
   ::= { airIRG3IdentEntry 1 }

airIRG3IdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit name."
   ::= { airIRG3IdentEntry 2 }

airIRG3IdentLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit location."
   ::= { airIRG3IdentEntry 3 }

airIRG3IdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit model number."
   ::= { airIRG3IdentEntry 4 }

airIRG3IdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit serial number."
   ::= { airIRG3IdentEntry 5 }

airIRG3IdentFirmwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit firmware version."
   ::= { airIRG3IdentEntry 6 }

airIRG3IdentHardwareRevision OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit controller hardware revision."
   ::= { airIRG3IdentEntry 7 }

airIRG3IdentManufactureDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the unit manufacture date."
   ::= { airIRG3IdentEntry 8 }

airIRG3IdentRDUSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the RDU data."
   ::= { airIRG3IdentEntry 9 }

airIRG3IdentCMSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the cooling module data."
   ::= { airIRG3IdentEntry 10 }

airIRG3IdentGroupSysOID OBJECT-TYPE
   SYNTAX OBJECT IDENTIFIER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID contains an OID path to the group data."
   ::= { airIRG3IdentEntry 11 }



-- ******************************************************************
-- airIRG3 Group Status
-- ******************************************************************

airIRG3GroupTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group table size."
   ::= { airIRG3Group 1 }


AirIRG3GroupStatusEntry ::= SEQUENCE {
    airIRG3GroupStatusIndex                        INTEGER,
    airIRG3GroupStatusCoolOutput                   INTEGER,
    airIRG3GroupStatusCoolDemand                   INTEGER,
    airIRG3GroupStatusAirFlowUS                       INTEGER,
    airIRG3GroupStatusAirFlowMetric                INTEGER,
    airIRG3GroupStatusMaxRackInletTempUS        INTEGER,
    airIRG3GroupStatusMaxRackInletTempMetric    INTEGER,
    airIRG3GroupStatusMinRackInletTempUS           INTEGER,
    airIRG3GroupStatusMinRackInletTempMetric    INTEGER,
    airIRG3GroupStatusMaxReturnAirTempUS        INTEGER,
    airIRG3GroupStatusMaxReturnAirTempMetric    INTEGER,
    airIRG3GroupStatusMinReturnAirTempUS        INTEGER,
    airIRG3GroupStatusMinReturnAirTempMetric    INTEGER,
    airIRG3GroupStatusAvgSupplyTempUS             INTEGER,
    airIRG3GroupStatusAvgSupplyTempMetric        INTEGER,
    airIRG3GroupStatusAvgReturnTempUS            INTEGER,
    airIRG3GroupStatusAvgReturnTempMetric        INTEGER,
    airIRG3GroupStatusAvgFanSpeed                INTEGER,
    airIRG3GroupStatusAvgAirFlowUS                INTEGER,
    airIRG3GroupStatusAvgAirFlowMetric             INTEGER,
    airIRG3GroupStatusTotalAirFlowUS             INTEGER,
    airIRG3GroupStatusTotalAirFlowMetric         INTEGER
   }

airIRG3GroupStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3GroupStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to get group status information."
   ::= { airIRG3Group 2 }

airIRG3GroupStatusEntry OBJECT-TYPE
   SYNTAX AirIRG3GroupStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The group staus table entry."
   INDEX  { airIRG3GroupStatusIndex}
   ::= { airIRG3GroupStatusTable 1 }

airIRG3GroupStatusIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of group status table."
   ::= { airIRG3GroupStatusEntry 1 }

airIRG3GroupStatusCoolOutput OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling output in tenths of kilowatts (kW).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 2 }

airIRG3GroupStatusCoolDemand OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group cooling demand in tenths of kilowatts (kW).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 3 }

airIRG3GroupStatusAirFlowUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in cubic feet per minute (CFM).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 4 }

airIRG3GroupStatusAirFlowMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group air flow in liters per second (L/s).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 5 }

airIRG3GroupStatusMaxRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
       degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 6 }

airIRG3GroupStatusMaxRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum rack inlet temperature in tenths of
       degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 7 }

airIRG3GroupStatusMinRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
       degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 8 }

airIRG3GroupStatusMinRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum rack inlet temperature in tenths of
       degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 9 }

airIRG3GroupStatusMaxReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 10 }

airIRG3GroupStatusMaxReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group maximum return air temperature in tenths of
      degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 11 }

airIRG3GroupStatusMinReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 12 }

airIRG3GroupStatusMinReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group minimum return air temperature in tenths of
      degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 13 }

airIRG3GroupStatusAvgSupplyTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average supply air temperature in tenths of
      degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 14 }

airIRG3GroupStatusAvgSupplyTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average supply air temperature in tenths of
       degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 15 }

airIRG3GroupStatusAvgReturnTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average return air temperature in tenths of
      degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 16 }

airIRG3GroupStatusAvgReturnTempMetric  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average return air temperature in tenths of
      degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 17 }

airIRG3GroupStatusAvgFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average fan speed in revolutions per minute (RPM).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 18 }

airIRG3GroupStatusAvgAirFlowUS  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average air flow in cubic feet per minute (CFM).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 19 }

airIRG3GroupStatusAvgAirFlowMetric  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group average air flow in liters per second (L/s).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 20 }

airIRG3GroupStatusTotalAirFlowUS  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group total air flow in cubic feet per minute (CFM).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 21 }

airIRG3GroupStatusTotalAirFlowMetric  OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The group total air flow in liters per second (L/s).
       Returns (-1) if not supported."
   ::= { airIRG3GroupStatusEntry 22 }



-- ******************************************************************
--airIRG3 Group Setpoints
-- ******************************************************************

AirIRG3GroupSetpointsEntry ::= SEQUENCE {
    airIRG3GroupSetpointsIndex                      INTEGER,
    airIRG3GroupSetpointsCoolSetpointUS             INTEGER,
    airIRG3GroupSetpointsCoolSetpointMetric         INTEGER,
    airIRG3GroupSetpointsCoolDeadbandUS             INTEGER,
    airIRG3GroupSetpointsCoolDeadbandMetric         INTEGER,
    airIRG3GroupSetpointsFanSpeedPreference         INTEGER,
    airIRG3GroupSetpointsSupplyAirSetpointUS        INTEGER,
    airIRG3GroupSetpointsSupplyAirSetpointMetric    INTEGER,
    airIRG3GroupSetpointsAirFlowControl                INTEGER,
    airIRG3GroupSetpointsLightingOnTime                INTEGER
   }

airIRG3GroupSetpointsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3GroupSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access the group setpoints."
   ::= { airIRG3Group 3 }

airIRG3GroupSetpointsEntry OBJECT-TYPE
   SYNTAX AirIRG3GroupSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The group setpoints table entry."
   INDEX  { airIRG3GroupSetpointsIndex}
   ::= { airIRG3GroupSetpointsTable 1 }

airIRG3GroupSetpointsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of group setpoints table."
   ::= { airIRG3GroupSetpointsEntry 1 }

airIRG3GroupSetpointsCoolSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRG3GroupSetpointsEntry 2 }

airIRG3GroupSetpointsCoolSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling setpoint in tenths of
      degrees Celsius."
   ::= { airIRG3GroupSetpointsEntry 3 }

airIRG3GroupSetpointsCoolDeadbandUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Fahrenheit. Returns (-1) if not supported."
   ::= { airIRG3GroupSetpointsEntry 4 }

airIRG3GroupSetpointsCoolDeadbandMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group cooling deadband in tenths of
      degrees Celsius. Returns (-1) if not supported."
   ::= { airIRG3GroupSetpointsEntry 5 }

airIRG3GroupSetpointsFanSpeedPreference OBJECT-TYPE
   SYNTAX INTEGER {
      low           (1),
      med-low       (2),
      med           (3),
      med-high      (4),
      high          (5)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group preferred fan speed setting."
   ::= { airIRG3GroupSetpointsEntry 6 }

airIRG3GroupSetpointsSupplyAirSetpointUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Fahrenheit."
   ::= { airIRG3GroupSetpointsEntry 7 }

airIRG3GroupSetpointsSupplyAirSetpointMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Group supply air setpoint in tenths of
      degrees Celsius."
   ::= { airIRG3GroupSetpointsEntry 8 }

airIRG3GroupSetpointsAirFlowControl    OBJECT-TYPE
   SYNTAX INTEGER {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group air flow control."
   ::= { airIRG3GroupSetpointsEntry 9 }

airIRG3GroupSetpointsLightingOnTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group lighting on time in minutes."
   ::= { airIRG3GroupSetpointsEntry 10 }


-- ******************************************************************
--airIRG3 Group Config
-- ******************************************************************

AirIRG3GroupConfigEntry ::= SEQUENCE {
    airIRG3GroupConfigIndex                     INTEGER,
    airIRG3GroupConfigNumberofCoolingUnits      INTEGER,
    airIRG3GroupConfigConfigurationType         INTEGER,
    airIRG3GroupConfigCapacityControlType       INTEGER,
    airIRG3GroupConfigFanSpeedControl           INTEGER,
    airIRG3GroupConfigCoolGainP                 INTEGER,
    airIRG3GroupConfigCoolResetRateI            INTEGER,
    airIRG3GroupConfigCoolDerivativeD            INTEGER,
    airIRG3GroupConfigCoolPIDReset                INTEGER,
    airIRG3GroupConfigNumberofBackupUnits        INTEGER,
    airIRG3GroupConfigRuntimeBalancingEnable    INTEGER,
    airIRG3GroupConfigLoadAssistEnable          INTEGER
    }

airIRG3GroupConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3GroupConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access group configuration table."
   ::= { airIRG3Group 4 }

airIRG3GroupConfigEntry OBJECT-TYPE
   SYNTAX AirIRG3GroupConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The group config table entry."
   INDEX  { airIRG3GroupConfigIndex}
   ::= { airIRG3GroupConfigTable 1 }

airIRG3GroupConfigIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of group config table."
   ::= { airIRG3GroupConfigEntry 1 }

airIRG3GroupConfigNumberofCoolingUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of cooling units."
   ::= { airIRG3GroupConfigEntry 2 }

airIRG3GroupConfigConfigurationType OBJECT-TYPE
   SYNTAX INTEGER {
      racs          (1),
      spot          (2),
      in-row        (3),
      hacs          (4)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group configuration type.
       The spot configuration type is not supported.
       Returns (-1) if not supported."
   ::= { airIRG3GroupConfigEntry 3 }

airIRG3GroupConfigCapacityControlType OBJECT-TYPE
   SYNTAX INTEGER {
      discrete      (1),
      proportional  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group capacity control. Returns (-1) if not supported."
   ::= { airIRG3GroupConfigEntry 4 }

airIRG3GroupConfigFanSpeedControl OBJECT-TYPE
   SYNTAX INTEGER {
      automatic     (1),
      manual        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The group fan speed control."
   ::= { airIRG3GroupConfigEntry 5 }

airIRG3GroupConfigCoolGainP OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The gain component of the PID in hundredths."
   ::= { airIRG3GroupConfigEntry 6 }

airIRG3GroupConfigCoolResetRateI OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The integral component of the PID in hundredths."
   ::= { airIRG3GroupConfigEntry 7 }

airIRG3GroupConfigCoolDerivativeD OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The derivative component of the PID in hundredths."
   ::= { airIRG3GroupConfigEntry 8 }

airIRG3GroupConfigCoolPIDReset OBJECT-TYPE
   SYNTAX INTEGER {
      readBack      (1),
      reset         (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Will reset the PID coefficients back to the factory defaults.
       Readback is not supported, returns -1."
   ::= { airIRG3GroupConfigEntry 9 }

airIRG3GroupConfigNumberofBackupUnits OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of backup units."
   ::= { airIRG3GroupConfigEntry 10 }

airIRG3GroupConfigRuntimeBalancingEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable runtime balancing feature."
   ::= { airIRG3GroupConfigEntry 11 }

airIRG3GroupConfigLoadAssistEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disable       (1),
      enable        (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable or disable load assist feature."
   ::= { airIRG3GroupConfigEntry 12 }


-- ***************************************
--  airIRG3 Alarm Status
-- ***************************************

airIRG3AlarmsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of active alarms in the airIRG3AlarmsTable."
   ::= { airIRG3Alarms 1 }

AirIRG3AlarmsEntry ::= SEQUENCE {
   airIRG3AlarmsIndex            INTEGER,
   airIRG3AlarmsEventCode        INTEGER,
   airIRG3AlarmsDescription      DisplayString
   }

airIRG3AlarmsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3AlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Table of active alarms for the device."
   ::= { airIRG3Alarms 2 }

airIRG3AlarmsEntry OBJECT-TYPE
   SYNTAX AirIRG3AlarmsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Alarms specification"
   INDEX { airIRG3AlarmsIndex }
   ::=  { airIRG3AlarmsTable 1 }

airIRG3AlarmsIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Alarm index."
   ::=  { airIRG3AlarmsEntry 1 }

airIRG3AlarmsEventCode OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Event Code for the alarm. Returns (-1) if not supported."
   ::=  { airIRG3AlarmsEntry 2 }

airIRG3AlarmsDescription OBJECT-TYPE
   SYNTAX DisplayString (SIZE (0..64))
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Description of the alarm. Returns (-1) if not supported."
   ::=  { airIRG3AlarmsEntry 3 }

-- ***************************************
--  airIRG3    RDU Status
-- ***************************************

airIRG3RDUTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU table size."
   ::= { airIRG3RDU 1 }


AirIRG3RDUStatusEntry ::= SEQUENCE {
    airIRG3RDUStatusDeviceIndex                       INTEGER,
    airIRG3RDUID                                      DisplayString,
    airIRG3RDUStatusOnReadyStandby                      INTEGER,
    airIRG3RDUStatusOperatingMode                      INTEGER,
    airIRG3RDUStatusLeadPump                          INTEGER,
    airIRG3RDUStatusStartupDelay                      INTEGER,
    airIRG3RDUStatusPumpChangeOverInterval            INTEGER,
    airIRG3RDUStatusStopOnLeakDetect                  INTEGER,
    airIRG3RDUStatusPowerSource                          INTEGER,
    airIRG3RDUStatusTotalRDUOutputPower                  INTEGER,
    airIRG3RDUStatusInletWaterTempUS                  INTEGER,
    airIRG3RDUStatusInletWaterTempMetric              INTEGER,
    airIRG3RDUStatusOutletWaterTempUS                  INTEGER,
    airIRG3RDUStatusOutletWaterTempMetric              INTEGER,
    airIRG3RDUStatusCondenserSaturationTempUS          INTEGER,
    airIRG3RDUStatusCondenserSaturationTempMetric      INTEGER,
    airIRG3RDUStatusDewPointTempUS                      INTEGER,
    airIRG3RDUStatusDewPointTempMetric                  INTEGER,
    airIRG3RDUStatusPumpOutletTempUS                  INTEGER,
    airIRG3RDUStatusPumpOutletTempMetric              INTEGER,
    airIRG3RDUStatusSubcoolerOutletTempUS              INTEGER,
    airIRG3RDUStatusSubcoolerOutletTempMetric          INTEGER,
    airIRG3RDUStatusCondenserOutletTempUS              INTEGER,
    airIRG3RDUStatusCondenserOutletTempMetric          INTEGER,
    airIRG3RDUStatusCondenserInletTempUS              INTEGER,
    airIRG3RDUStatusCondenserInletTempMetric           INTEGER,
    airIRG3RDUStatusCondenserOutletPressureUS         INTEGER,
    airIRG3RDUStatusCondenserOutletPressureMetric       INTEGER,
    airIRG3RDUStatusPump1HeadPressureUS                INTEGER,
    airIRG3RDUStatusPump1HeadPressureMetric           INTEGER,
    airIRG3RDUStatusPump2HeadPressureUS               INTEGER,
    airIRG3RDUStatusPump2HeadPressureMetric              INTEGER,
    airIRG3RDUStatusPump1Speed                          INTEGER,
    airIRG3RDUStatusPump2Speed                          INTEGER,
    airIRG3RDUStatusCWValvePosition                      INTEGER,
    airIRG3RDUStatusReceiverLiquidLevel                  INTEGER,
    airIRG3RDUStatusDCPowerSupply1Current              INTEGER,
    airIRG3RDUStatusDCPowerSupply2Current              INTEGER,
    airIRG3RDUStatusTotalDCPowerSupplyCurrent          INTEGER,
    airIRG3RDUStatusInputState                        INTEGER,
    airIRG3RDUStatusOutputState                       INTEGER,
    airIRG3RDUStatusByPassValvePosition               INTEGER,
    airIRG3RDUStatusRefrigerantLeakDetector              INTEGER
   }

airIRG3RDUStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDUStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU status table."
   ::= { airIRG3RDU 2 }

airIRG3RDUStatusEntry OBJECT-TYPE
   SYNTAX AirIRG3RDUStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The RDU status table entry."
   INDEX  { airIRG3RDUStatusDeviceIndex}
   ::= { airIRG3RDUStatusTable 1 }

airIRG3RDUStatusDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of RDU status table."
   ::= { airIRG3RDUStatusEntry 1 }


airIRG3RDUID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current RDU ID (1 to F).
       Configured RDU only shall display ID, else return -1. "
   ::= { airIRG3RDUStatusEntry 2 }


airIRG3RDUStatusOnReadyStandby OBJECT-TYPE
   SYNTAX INTEGER {
      standby       (1),
      ready         (2),
      on            (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU current status."
   ::= { airIRG3RDUStatusEntry 3 }


airIRG3RDUStatusOperatingMode OBJECT-TYPE
   SYNTAX INTEGER {
      standby           (1),
      ready             (2),
      on                (3),
      stop              (4),
      maintenancemode   (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU actual operating mode."
   ::= { airIRG3RDUStatusEntry 4 }


airIRG3RDUStatusLeadPump OBJECT-TYPE
   SYNTAX INTEGER {
      pump1         (1),
      pump2         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU lead pump."
   ::= { airIRG3RDUStatusEntry 5 }


airIRG3RDUStatusStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU start up delay in seconds."
   ::= { airIRG3RDUStatusEntry 6 }


airIRG3RDUStatusPumpChangeOverInterval OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU pump change over interval in days."
   ::= { airIRG3RDUStatusEntry 7 }


airIRG3RDUStatusStopOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
      no            (1),
      yes           (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU status of stop on leak detect."
   ::= { airIRG3RDUStatusEntry 8 }


airIRG3RDUStatusPowerSource OBJECT-TYPE
   SYNTAX INTEGER {
      singleFeed    (1),
      dualFeed      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU power source status."
   ::= { airIRG3RDUStatusEntry 9 }


airIRG3RDUStatusTotalRDUOutputPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU output power in tenths of kilowatts (kW)."
   ::= { airIRG3RDUStatusEntry 10 }


airIRG3RDUStatusInletWaterTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU inlet water temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 11 }


airIRG3RDUStatusInletWaterTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU inlet water temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 12 }


airIRG3RDUStatusOutletWaterTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU outlet water temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 13 }


airIRG3RDUStatusOutletWaterTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU outlet water temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 14 }


airIRG3RDUStatusCondenserSaturationTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser saturation temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 15 }


airIRG3RDUStatusCondenserSaturationTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser saturation temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 16 }


airIRG3RDUStatusDewPointTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU dew point temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 17 }


airIRG3RDUStatusDewPointTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU dew point temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 18 }


airIRG3RDUStatusPumpOutletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU pump outlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 19 }


airIRG3RDUStatusPumpOutletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU pump outlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 20 }


airIRG3RDUStatusSubcoolerOutletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU sub cooler outlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 21 }


airIRG3RDUStatusSubcoolerOutletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU sub cooler outlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 22 }


airIRG3RDUStatusCondenserOutletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser outlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 23 }


airIRG3RDUStatusCondenserOutletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser outlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 24 }


airIRG3RDUStatusCondenserInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser inlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUStatusEntry 25 }


airIRG3RDUStatusCondenserInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser inlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUStatusEntry 26 }


airIRG3RDUStatusCondenserOutletPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser outlet pressure in
       pounds per square inch (PSI)."
   ::= { airIRG3RDUStatusEntry 27 }

airIRG3RDUStatusCondenserOutletPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU condenser outlet pressure in kiloPascals (KPa)."
   ::= { airIRG3RDUStatusEntry 28 }


airIRG3RDUStatusPump1HeadPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 1 head pressure in pounds per square inch (PSI)."
   ::= { airIRG3RDUStatusEntry 29 }

airIRG3RDUStatusPump1HeadPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 1 head pressure in kiloPascals (KPa)."
   ::= { airIRG3RDUStatusEntry 30 }

airIRG3RDUStatusPump2HeadPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 2 head pressure in pounds per square inch (PSI)."
   ::= { airIRG3RDUStatusEntry 31 }

airIRG3RDUStatusPump2HeadPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 2 head pressure in kiloPascals (KPa)."
   ::= { airIRG3RDUStatusEntry 32 }

airIRG3RDUStatusPump1Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 1 speed in revolutions per minute (RPM)."
   ::= { airIRG3RDUStatusEntry 33 }


airIRG3RDUStatusPump2Speed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Pump 2 speed in revolutions per minute (RPM)."
   ::= { airIRG3RDUStatusEntry 34 }


airIRG3RDUStatusCWValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU CW Valve position in % open"
   ::= { airIRG3RDUStatusEntry 35 }


airIRG3RDUStatusReceiverLiquidLevel OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU receiver liquid level in % Full"
   ::= { airIRG3RDUStatusEntry 36 }


airIRG3RDUStatusDCPowerSupply1Current OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU DC Power Supply 1 Current in Amps"
   ::= { airIRG3RDUStatusEntry 37 }


airIRG3RDUStatusDCPowerSupply2Current OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU DC Power Supply 2 Current in Amps"
   ::= { airIRG3RDUStatusEntry 38 }


airIRG3RDUStatusTotalDCPowerSupplyCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Total DC Power Supply Current in Amps"
   ::= { airIRG3RDUStatusEntry 39 }


airIRG3RDUStatusInputState OBJECT-TYPE
   SYNTAX INTEGER {
      open        (1),
      closed      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Input state."
   ::= { airIRG3RDUStatusEntry 40 }


airIRG3RDUStatusOutputState OBJECT-TYPE
   SYNTAX INTEGER {
      open        (1),
      closed      (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU Output state"
   ::= { airIRG3RDUStatusEntry 41 }

airIRG3RDUStatusByPassValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU By Pass Valve position in % open"
   ::= { airIRG3RDUStatusEntry 42 }

airIRG3RDUStatusRefrigerantLeakDetector OBJECT-TYPE
   SYNTAX INTEGER {
      suspended   (1),
      calibrating (2),
      operating   (3),
      disabled    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU refrigerant leak detector status."
   ::= { airIRG3RDUStatusEntry 43 }


-- ***************************************
--  airIRG3    RDU Run Hours
-- ***************************************

AirIRG3RDURunHoursEntry ::= SEQUENCE {
    airIRG3RDURunHoursDeviceIndex                 INTEGER,
    airIRG3RDURunHoursRDUID                     DisplayString,
    airIRG3RDURunHoursPump1                        INTEGER,
    airIRG3RDURunHoursPump2                        INTEGER,
    airIRG3RDURunHoursPowerSupply1                INTEGER,
    airIRG3RDURunHoursPowerSupply2                 INTEGER
   }

airIRG3RDURunHoursTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDURunHoursEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU run hours table."
   ::= { airIRG3RDU 3 }

airIRG3RDURunHoursEntry OBJECT-TYPE
   SYNTAX AirIRG3RDURunHoursEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The RDU run hours table entry."
   INDEX  { airIRG3RDURunHoursDeviceIndex}
   ::= { airIRG3RDURunHoursTable 1 }

airIRG3RDURunHoursDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of RDU run hours table."
   ::= { airIRG3RDURunHoursEntry 1 }

airIRG3RDURunHoursRDUID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current RDU ID (1 to F).
       Configured RDU only shall display ID, else return -1. "
   ::= { airIRG3RDURunHoursEntry 2 }

airIRG3RDURunHoursPump1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU run hours of Pump 1."
   ::= { airIRG3RDURunHoursEntry 3 }

airIRG3RDURunHoursPump2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU run hours of Pump 2."
   ::= { airIRG3RDURunHoursEntry 4 }

airIRG3RDURunHoursPowerSupply1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU run hours of power supply 1."
   ::= { airIRG3RDURunHoursEntry 5 }

airIRG3RDURunHoursPowerSupply2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The RDU run hours of power supply 2."
   ::= { airIRG3RDURunHoursEntry 6 }


-- ***************************************
--  airIRG3    RDU Service Intervals
-- ***************************************

AirIRG3RDUServiceIntervalsEntry ::= SEQUENCE {
    airIRG3RDUServiceIntervalsDeviceIndex        INTEGER,
    airIRG3RDUServiceIntervalsRDUID              DisplayString,
    airIRG3RDUServiceIntervalsAirFilterInterval     INTEGER,
    airIRG3RDUServiceIntervalsAirFilterAlarm     INTEGER
   }

airIRG3RDUServiceIntervalsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDUServiceIntervalsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU service intervals table."
   ::= { airIRG3RDU 4 }

airIRG3RDUServiceIntervalsEntry OBJECT-TYPE
   SYNTAX AirIRG3RDUServiceIntervalsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The service interval table entry."
   INDEX  { airIRG3RDUServiceIntervalsDeviceIndex}
   ::= { airIRG3RDUServiceIntervalsTable 1 }

airIRG3RDUServiceIntervalsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of service interval table."
   ::= { airIRG3RDUServiceIntervalsEntry 1 }

airIRG3RDUServiceIntervalsRDUID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current RDU ID (1 to F).
       Configured RDU only shall display ID, else return -1. "
   ::= { airIRG3RDUServiceIntervalsEntry 2 }

airIRG3RDUServiceIntervalsAirFilterInterval OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU service interval for air filter in hours.
       Returns -1 if not supported."
   ::= { airIRG3RDUServiceIntervalsEntry 3 }


airIRG3RDUServiceIntervalsAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER {
      enable        (1),
      disable       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU service interval air filter alarm status.
       Returns -1 if not supported."
   ::= { airIRG3RDUServiceIntervalsEntry 4 }



-- *******************************************
--  airIRG3    RDU Thresholds
-- Currently there are no thresholds for RDU
-- *******************************************

AirIRG3RDUThresholdsEntry ::= SEQUENCE {
    airIRG3RDUThresholdsDeviceIndex                   INTEGER,
    airIRG3RDUThresholdsRDUID                         DisplayString,
    airIRG3RDUThresholdsEnteringFluidTempHighUS       INTEGER,
    airIRG3RDUThresholdsEnteringFluidTempHighMetric   INTEGER
   }

airIRG3RDUThresholdsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDUThresholdsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU thresholds table."
   ::= { airIRG3RDU 5 }

airIRG3RDUThresholdsEntry OBJECT-TYPE
   SYNTAX AirIRG3RDUThresholdsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The RDU thresholds table entry."
   INDEX  { airIRG3RDUThresholdsDeviceIndex}
   ::= { airIRG3RDUThresholdsTable 1 }

airIRG3RDUThresholdsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of RDU thresholds table."
   ::= { airIRG3RDUThresholdsEntry 1 }

airIRG3RDUThresholdsRDUID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current RDU ID (1 to F).
       Configured RDU only shall display ID, else return -1. "
   ::= { airIRG3RDUThresholdsEntry 2 }

airIRG3RDUThresholdsEnteringFluidTempHighUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU threshold for entering fluid temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3RDUThresholdsEntry 3 }


airIRG3RDUThresholdsEnteringFluidTempHighMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU threshold for entering fluid temperature in tenths of
       degrees Celsius."
   ::= { airIRG3RDUThresholdsEntry 4 }


-- ***************************************
--  airIRG3    RDU Setpoints
-- ***************************************

AirIRG3RDUSetpointsEntry ::= SEQUENCE {
    airIRG3RDUSetpointsDeviceIndex        INTEGER
   }

airIRG3RDUSetpointsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDUSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU set points table."
   ::= { airIRG3RDU 6 }

airIRG3RDUSetpointsEntry OBJECT-TYPE
   SYNTAX AirIRG3RDUSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The RDU set points table entry."
   INDEX  { airIRG3RDUSetpointsDeviceIndex}
   ::= { airIRG3RDUSetpointsTable 1 }

airIRG3RDUSetpointsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of RDU set points table."
   ::= { airIRG3RDUSetpointsEntry 1 }



-- ***************************************
--  airIRG3    RDU Config
-- ***************************************

AirIRG3RDUConfigEntry ::= SEQUENCE {
    airIRG3RDUConfigDeviceIndex                       INTEGER,
    airIRG3RDUConfigRDUID                             DisplayString,
    airIRG3RDUConfigStopOnLeakDetect                  INTEGER,
    airIRG3RDUConfigStartupDelay                      INTEGER,
    airIRG3RDUConfigPumpChangeOverInterval            INTEGER,
    airIRG3RDUConfigPowerSource                          INTEGER,
    airIRG3RDUConfigOutputSource                      INTEGER,
    airIRG3RDUConfigInputNormalState                  INTEGER,
    airIRG3RDUConfigOutputNormalState                  INTEGER,
    airIRG3RDUConfigByPassValveEnabled                INTEGER,
    airIRG3RDUConfigRefrigerantLeakDetectorEnabled     INTEGER,
    airIRG3RDUConfigCalibrateRefrigerantLeakDetector INTEGER,
    airIRG3RDUConfigOnReadyStandby                     INTEGER
    }

airIRG3RDUConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3RDUConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access RDU configuration table."
   ::= { airIRG3RDU 7 }

airIRG3RDUConfigEntry OBJECT-TYPE
   SYNTAX AirIRG3RDUConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The RDU configuration table entry."
   INDEX  { airIRG3RDUConfigDeviceIndex}
   ::= { airIRG3RDUConfigTable 1 }

airIRG3RDUConfigDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of RDU configuration table."
   ::= { airIRG3RDUConfigEntry 1 }

airIRG3RDUConfigRDUID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current RDU ID (1 to F).
       Configured RDU only shall display ID, else return -1. "
   ::= { airIRG3RDUConfigEntry 2 }

airIRG3RDUConfigStopOnLeakDetect OBJECT-TYPE
   SYNTAX INTEGER {
      no            (1),
      yes           (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU stop on leak detect set."
   ::= { airIRG3RDUConfigEntry 3 }


airIRG3RDUConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU start up delay in seconds."
   ::= { airIRG3RDUConfigEntry 4 }


airIRG3RDUConfigPumpChangeOverInterval OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU pump change over interval in days."
   ::= { airIRG3RDUConfigEntry 5 }


airIRG3RDUConfigPowerSource OBJECT-TYPE
   SYNTAX INTEGER {
      singleFeed    (1),
      dualFeed      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU power source."
   ::= { airIRG3RDUConfigEntry 6 }


airIRG3RDUConfigOutputSource OBJECT-TYPE
   SYNTAX INTEGER {
      anyalarm                (1),
      onlycriticalalarms      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU output source."
   ::= { airIRG3RDUConfigEntry 7 }


airIRG3RDUConfigInputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open        (1),
      closed      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU Input Normal State."
   ::= { airIRG3RDUConfigEntry 8 }


airIRG3RDUConfigOutputNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      open        (1),
      closed      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU Output Normal State."
   ::= { airIRG3RDUConfigEntry 9 }


airIRG3RDUConfigByPassValveEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      no        (1),
      yes       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU By Pass Valve Enabled State."
   ::= { airIRG3RDUConfigEntry 10 }

airIRG3RDUConfigRefrigerantLeakDetectorEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      no        (1),
      yes       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The RDU Refrigerant Leak Detector Enabled State."
   ::= { airIRG3RDUConfigEntry 11 }

airIRG3RDUConfigCalibrateRefrigerantLeakDetector OBJECT-TYPE
   SYNTAX INTEGER {
      no        (1),
      yes       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This parameter allows to calibrate the RDU Refrigerant Leak Detector and is write only.
       The read returns -1. Only 'yes' is supported."
   ::= { airIRG3RDUConfigEntry 12 }

airIRG3RDUConfigOnReadyStandby OBJECT-TYPE
   SYNTAX INTEGER {
      standby   (1),
      ready     (2),
      on        (3)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This parameter allows to configure RDU on/standby parameter.
       Ready is currently not supported. If unsupported returns -1. "
   ::= { airIRG3RDUConfigEntry 13 }


-- ***************************************
--  airIRG3    CMStatus
-- ***************************************

airIRG3CMTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The cooling module table size."
   ::= { airIRG3CM 1 }


AirIRG3CMStatusEntry ::= SEQUENCE {
    airIRG3CMStatusDeviceIndex                         INTEGER,
    airIRG3CMStatusCMID                             DisplayString,
    airIRG3CMStatusOperatingMode                       INTEGER,
    airIRG3CMStatusUnitType                               INTEGER,
    airIRG3CMStatusRackInletTempUS                       INTEGER,
    airIRG3CMStatusRackInletTempMetric                   INTEGER,
    airIRG3CMStatusReturnAirTempUS                       INTEGER,
    airIRG3CMStatusReturnAirTempMetric                   INTEGER,
    airIRG3CMStatusLiquidTempUS                           INTEGER,
    airIRG3CMStatusLiquidTempMetric                       INTEGER,
    airIRG3CMStatusVaporTempUS                           INTEGER,
    airIRG3CMStatusVaporTempMetric                       INTEGER,
    airIRG3CMStatusEvaporatorTempUS                       INTEGER,
    airIRG3CMStatusEvaporatorTempMetric                   INTEGER,
    airIRG3CMStatusLiquidInletPressureUS              INTEGER,
    airIRG3CMStatusLiquidInletPressureMetric        INTEGER,
    airIRG3CMStatusVaporOutletPressureUS             INTEGER,
    airIRG3CMStatusVaporOutletPressureMetric        INTEGER,
    airIRG3CMStatusExpansionValvePosition               INTEGER,
    airIRG3CMStatusEPRValvePosition                       INTEGER,
    airIRG3CMStatusLocalDisplayOnOffEnabled         INTEGER,
    airIRG3CMStatusAverageFanSpeed                  INTEGER
   }

airIRG3CMStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM status table."
   ::= { airIRG3CM 2 }

airIRG3CMStatusEntry OBJECT-TYPE
   SYNTAX AirIRG3CMStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM status table entry."
   INDEX  { airIRG3CMStatusDeviceIndex}
   ::= { airIRG3CMStatusTable 1 }

airIRG3CMStatusDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of CM status table."
   ::= { airIRG3CMStatusEntry 1 }

airIRG3CMStatusCMID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM ID (RDU Number - Group Number - CM Unit Number)."
   ::= { airIRG3CMStatusEntry 2 }

airIRG3CMStatusOperatingMode OBJECT-TYPE
   SYNTAX INTEGER {
      standBy       (1),
      on            (2),
      idle          (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current operating mode of the CM."
   ::= { airIRG3CMStatusEntry 3 }


airIRG3CMStatusUnitType OBJECT-TYPE
   SYNTAX INTEGER{
      unconfigured   (1),
      oa             (2),
      ra             (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current CM unit type."
   ::= { airIRG3CMStatusEntry 4 }


airIRG3CMStatusRackInletTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM rack inlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMStatusEntry 5 }


airIRG3CMStatusRackInletTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM rack inlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMStatusEntry 6 }


airIRG3CMStatusReturnAirTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM return air temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMStatusEntry 7 }


airIRG3CMStatusReturnAirTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM return air temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMStatusEntry 8 }


airIRG3CMStatusLiquidTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM liquid temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMStatusEntry 9 }


airIRG3CMStatusLiquidTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM liquid temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMStatusEntry 10 }


airIRG3CMStatusVaporTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM vapor temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMStatusEntry 11 }


airIRG3CMStatusVaporTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM vapor temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMStatusEntry 12 }


airIRG3CMStatusEvaporatorTempUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM saturation temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMStatusEntry 13 }


airIRG3CMStatusEvaporatorTempMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM saturation temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMStatusEntry 14 }

airIRG3CMStatusLiquidInletPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Liquid Inlet pressure in pounds per square inch (PSI)."
   ::= { airIRG3CMStatusEntry 15 }

airIRG3CMStatusLiquidInletPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Liquid Inlet pressure in kiloPascals (kPa)."
   ::= { airIRG3CMStatusEntry 16 }

airIRG3CMStatusVaporOutletPressureUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Vapor Outlet pressure in pounds per square inch (PSI)."
   ::= { airIRG3CMStatusEntry 17 }

airIRG3CMStatusVaporOutletPressureMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Vapor Outlet pressure in kiloPascals (kPa)."
   ::= { airIRG3CMStatusEntry 18 }

airIRG3CMStatusExpansionValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM expansion valve position in % open"
   ::= { airIRG3CMStatusEntry 19 }


airIRG3CMStatusEPRValvePosition OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Evaporator Pressure Regulator Valve Position
       in tenths of percent open"
   ::= { airIRG3CMStatusEntry 20 }


airIRG3CMStatusLocalDisplayOnOffEnabled OBJECT-TYPE
   SYNTAX INTEGER {
      no          (1),
      yes         (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The status of the on/off control on the CM local display."
   ::= { airIRG3CMStatusEntry 21 }


airIRG3CMStatusAverageFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM Average Fan Speed."
   ::= { airIRG3CMStatusEntry 22 }


-- ***************************************
--  airIRG3    CM Run Hours
-- ***************************************

AirIRG3CMRunHoursEntry ::= SEQUENCE {
    airIRG3CMRunHoursDeviceIndex      INTEGER,
    airIRG3CMRunHoursCMID            DisplayString,
    airIRG3CMRunHoursFan1             INTEGER,
    airIRG3CMRunHoursFan2             INTEGER,
    airIRG3CMRunHoursFan3             INTEGER,
    airIRG3CMRunHoursFan4             INTEGER,
    airIRG3CMRunHoursFan5             INTEGER,
    airIRG3CMRunHoursAirFilter         INTEGER
   }

airIRG3CMRunHoursTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMRunHoursEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM run hours table."
   ::= { airIRG3CM 3 }

airIRG3CMRunHoursEntry OBJECT-TYPE
   SYNTAX AirIRG3CMRunHoursEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM run hours table entry."
   INDEX  { airIRG3CMRunHoursDeviceIndex}
   ::= { airIRG3CMRunHoursTable 1 }

airIRG3CMRunHoursDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of CM run hours table."
   ::= { airIRG3CMRunHoursEntry 1 }

airIRG3CMRunHoursCMID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM ID (RDU Number - Group Number - CM Unit Number)."
   ::= { airIRG3CMRunHoursEntry 2 }

airIRG3CMRunHoursFan1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for Fan1.
       Returns (-1) if not appilcable."
   ::= { airIRG3CMRunHoursEntry 3 }

airIRG3CMRunHoursFan2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for Fan2.
       Returns (-1) if not appilcable."
   ::= { airIRG3CMRunHoursEntry 4 }

airIRG3CMRunHoursFan3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for Fan3.
       Returns (-1) if not appilcable."
   ::= { airIRG3CMRunHoursEntry 5 }

airIRG3CMRunHoursFan4 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for Fan4.
       Returns (-1) if not appilcable."
   ::= { airIRG3CMRunHoursEntry 6 }

airIRG3CMRunHoursFan5 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for Fan5.
       Returns (-1) if not appilcable."
   ::= { airIRG3CMRunHoursEntry 7 }

airIRG3CMRunHoursAirFilter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM run hours for air filter."
   ::= { airIRG3CMRunHoursEntry 8 }



-- ***************************************
--  airIRG3    CM Service Intervals
-- ***************************************

AirIRG3CMServiceIntervalsEntry ::= SEQUENCE {
    airIRG3CMServiceIntervalsDeviceIndex        INTEGER,
    airIRG3CMServiceIntervalsCMID               DisplayString,
    airIRG3CMServiceIntervalsAirFilterInterval    INTEGER,
    airIRG3CMServiceIntervalsAirFilterAlarm        INTEGER
   }

airIRG3CMServiceIntervalsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMServiceIntervalsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM service intervals table."
   ::= { airIRG3CM 4 }

airIRG3CMServiceIntervalsEntry OBJECT-TYPE
   SYNTAX AirIRG3CMServiceIntervalsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM service interval table entry."
   INDEX  { airIRG3CMServiceIntervalsDeviceIndex}
   ::= { airIRG3CMServiceIntervalsTable 1 }

airIRG3CMServiceIntervalsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of CM service intervals table."
   ::= { airIRG3CMServiceIntervalsEntry 1 }

airIRG3CMServiceIntervalsCMID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM ID (RDU Number - Group Number - CM Unit Number)."
   ::= { airIRG3CMServiceIntervalsEntry 2 }

airIRG3CMServiceIntervalsAirFilterInterval OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM service interval for air filter in weeks.
       Supported only for RA. Returns -1 if not supported."
   ::= { airIRG3CMServiceIntervalsEntry 3 }

airIRG3CMServiceIntervalsAirFilterAlarm OBJECT-TYPE
   SYNTAX INTEGER{
      disable      (1),
      enable       (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM service interval air filter alarm status.
       Supported only for RA. Returns -1 if not supported."
   ::= { airIRG3CMServiceIntervalsEntry 4 }


-- ***************************************
--  airIRG3    CM Thresholds
-- ***************************************

AirIRG3CMThresholdsEntry ::= SEQUENCE {
    airIRG3CMThresholdsDeviceIndex              INTEGER,
    airIRG3CMThresholdsCMID                     DisplayString,
    airIRG3CMThresholdsRackInletTempHighUS        INTEGER,
    airIRG3CMThresholdsRackInletTempHighMetric    INTEGER,
    airIRG3CMThresholdsSupplyAirTempHighUS        INTEGER,
    airIRG3CMThresholdsSupplyAirTempHighMetric    INTEGER,
    airIRG3CMThresholdsReturnAirTempHighUS        INTEGER,
    airIRG3CMThresholdsReturnAirTempHighMetric    INTEGER
   }

airIRG3CMThresholdsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMThresholdsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM thresholds table."
   ::= { airIRG3CM 5 }

airIRG3CMThresholdsEntry OBJECT-TYPE
   SYNTAX AirIRG3CMThresholdsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM thresholds table entry."
   INDEX  { airIRG3CMThresholdsDeviceIndex}
   ::= { airIRG3CMThresholdsTable 1 }

airIRG3CMThresholdsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index for CM thresholds table."
   ::= { airIRG3CMThresholdsEntry 1 }

airIRG3CMThresholdsCMID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM ID (RDU Number - Group Number - CM Unit Number)."
   ::= { airIRG3CMThresholdsEntry 2 }

airIRG3CMThresholdsRackInletTempHighUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for rack inlet temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMThresholdsEntry 3 }


airIRG3CMThresholdsRackInletTempHighMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for rack inlet temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMThresholdsEntry 4 }


airIRG3CMThresholdsSupplyAirTempHighUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for supply air temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMThresholdsEntry 5 }


airIRG3CMThresholdsSupplyAirTempHighMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for supply air temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMThresholdsEntry 6 }


airIRG3CMThresholdsReturnAirTempHighUS OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for return air temperature in tenths of
       degrees Fahrenheit."
   ::= { airIRG3CMThresholdsEntry 7 }


airIRG3CMThresholdsReturnAirTempHighMetric OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM high threshold for return air temperature in tenths of
       degrees Celsius."
   ::= { airIRG3CMThresholdsEntry 8 }


-- ***************************************
--  airIRG3    CM Setpoints
-- ***************************************

AirIRG3CMSetpointsEntry ::= SEQUENCE {
    airIRG3CMSetpointsDeviceIndex        INTEGER
   }

airIRG3CMSetpointsTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM set points table."
   ::= { airIRG3CM 6 }

airIRG3CMSetpointsEntry OBJECT-TYPE
   SYNTAX AirIRG3CMSetpointsEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM set points table entry."
   INDEX  { airIRG3CMSetpointsDeviceIndex}
   ::= { airIRG3CMSetpointsTable 1 }

airIRG3CMSetpointsDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of CM set points table."
   ::= { airIRG3CMSetpointsEntry 1 }



-- ***************************************
--  airIRG3    CM Config
-- ***************************************

AirIRG3CMConfigEntry ::= SEQUENCE {
    airIRG3CMConfigDeviceIndex            INTEGER,
    airIRG3CMConfigCMID                 DisplayString,
    airIRG3CMConfigStopOnCoolFail          INTEGER,
    airIRG3CMConfigStartupDelay         INTEGER,
    airIRG3CMConfigRemoteOnStandby        INTEGER,
    airIRG3CMConfigPowerSource            INTEGER
   }

airIRG3CMConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF AirIRG3CMConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows to access CM configuration table."
   ::= { airIRG3CM 7 }

airIRG3CMConfigEntry OBJECT-TYPE
   SYNTAX AirIRG3CMConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The CM configuration table entry."
   INDEX  { airIRG3CMConfigDeviceIndex}
   ::= { airIRG3CMConfigTable 1 }

airIRG3CMConfigDeviceIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Index of CM configuration table."
   ::= { airIRG3CMConfigEntry 1 }

airIRG3CMConfigCMID OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The CM ID (RDU Number - Group Number - CM Unit Number)."
   ::= { airIRG3CMConfigEntry 2 }

airIRG3CMConfigStopOnCoolFail OBJECT-TYPE
   SYNTAX INTEGER{
      no            (1),
      yes           (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Enable/Disable Stop On cool fail. When enabled, stops the unit
       if it detects that it is blowing warm air into the cold aisle."
   ::= { airIRG3CMConfigEntry 3 }


airIRG3CMConfigStartupDelay OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM start up delay in seconds."
   ::= { airIRG3CMConfigEntry 4 }


airIRG3CMConfigRemoteOnStandby OBJECT-TYPE
   SYNTAX INTEGER{
      standBy       (1),
      on            (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM configuration for operating mode."
   ::= { airIRG3CMConfigEntry 5 }


airIRG3CMConfigPowerSource OBJECT-TYPE
   SYNTAX INTEGER{
      singleFeed    (1),
      dualFeed      (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The CM power source."
   ::= { airIRG3CMConfigEntry 6 }


-- End of airIRGen3


--  RACK AIR REMOVAL UNIT IDENT

rARUIdentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual devices.
       The number of entries is contained in the
       rARUStatusAruDeviceCount OID."
   ::= { rARUIdent 1 }

rARUIdentEntry OBJECT-TYPE
   SYNTAX RARUIdentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The device to query."
   INDEX  { rARUIdentAruIndex}
   ::= { rARUIdentTable 1 }

RARUIdentEntry ::=
   SEQUENCE {
      rARUIdentAruIndex        INTEGER,
      rARUIdentName            DisplayString
   }

rARUIdentAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUIdentEntry 1 }

rARUIdentName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the device. "
   ::= { rARUIdentEntry 2 }

-- RACK AIR REMOVAL UNIT CONFIGURATION

rARUConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for configuration of the individual ARU devices accessible from this IP address.
       The number of entries is contained in the rARUStatusAruDeviceCount OID."
   ::= { rARUConfig 1 }

rARUConfigEntry OBJECT-TYPE
   SYNTAX RARUConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The ARUs to configure."
   INDEX  { rARUConfigAruIndex }
   ::= { rARUConfigTable 1 }

RARUConfigEntry ::=
   SEQUENCE {
      rARUConfigAruIndex                  INTEGER,
      rARUConfigAruName                   DisplayString,
      rARUConfigAruRemoteSetpoint         INTEGER,
      rARUConfigAruTempOvrdEnableDisable  INTEGER,
      rARUConfigAruTempOvrdSetpoint       INTEGER,
      rARUConfigAruMasterControl          INTEGER
   }

rARUConfigAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUConfigEntry 1 }

rARUConfigAruName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-write
   STATUS  mandatory
   DESCRIPTION
      "The name of the ARU."
   ::= { rARUConfigEntry 2 }

rARUConfigAruRemoteSetpoint OBJECT-TYPE
   SYNTAX INTEGER       {
      aruOff          (1),
      aru85F-29C      (2),
      aru90F-32C      (3),
      aru95F-35C      (4),
      aru100F-38C     (5),
      aru7kW-1200cfm  (6),
      aru5kW-800cfm   (7),
      aru3kW-500cfm   (8),
      aru2kW-300cfm   (9),
      aru400cfm       (10),
      aru600cfm       (11),
      aru700cfm       (12),
      aru900cfm       (13),
      aru1000cfm      (14),
      aru1400cfm      (15),
      aru1600cfm      (16),
      aru1800cfm      (17),
      aru2000cfm      (18)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID defines the desired base airflow of the ARU, and sets the
       speed of the ARU fans when the temperature override is inactive.

       Values specified in cfm (cubic feet per minute) can be converted
       to metric values using the conversion factor:

          1 cfm = 1.70 m^3/hr (cubic meters per hour).

       Values (1) through (9) are for support of legacy (1st generation) ARUs.
       Writing these values to a 2nd generation ARU will result in the following:
       A value greater than (9) will be ignored by a 1st generation ARU.

          aruOff      (1) - Ignored
          aru85F-29C  (2) - 1200 cfm
          aru90F-32C  (3) - 800 cfm
          aru95F-35C  (4) - 500 cfm
          aru100F-38C (5) - 400 cfm
          aru7kW      (6) - 1200 cfm
          aru5kW      (7) - 800 cfm
          aru3kW      (8) - 500 cfm
          aru2kW      (9) - 400 cfm

       NOTE: -1 will be returned if the ARU is not communicating."
   ::= { rARUConfigEntry 3 }

rARUConfigAruTempOvrdEnableDisable OBJECT-TYPE
   SYNTAX INTEGER       {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID is used to enable/disable the remote temperature override setting of the ARU.

       If this OID is set to 1, the remote setting for temperature override is disabled.
       If this OID is set to 2, the remote setting for temperature override is enabled."
   ::= { rARUConfigEntry 4 }

rARUConfigAruTempOvrdSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This OID is the Temperature Override setpoint of the ARU.

       NOTE: -1 will be returned if the ARU is not communicating.

       Values are represented in whole number degrees using the
       units specified in the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { rARUConfigEntry 5 }

rARUConfigAruMasterControl OBJECT-TYPE
   SYNTAX INTEGER   {
      aruOn      (1),
      aruOff     (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "This is the master on/off control for the ARU."
   ::= { rARUConfigEntry 6 }

-- RACK AIR REMOVAL UNIT STATUS

rARUStatusAruDeviceCount OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total number of ARUs accessible from this IP."
   ::= { rARUStatus 1 }

rARUStatusSysTempUnits OBJECT-TYPE
   SYNTAX INTEGER {
      celsius(1),
      fahrenheit(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The temperature scale used to display the temperature
       in the system, Celsius(1) or Fahrenheit(2).
       This setting is based on the system preferences
       configuration in the agent."
   ::= { rARUStatus 2 }

rARUStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual ARUs accessible from this IP address.
       The number of entries is contained in the rARUStatusAruDeviceCount OID."
   ::= { rARUStatus 3 }

rARUStatusEntry OBJECT-TYPE
   SYNTAX RARUStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The ARUs to access."
   INDEX  { rARUStatusAruIndex }
   ::= { rARUStatusTable 1 }

RARUStatusEntry ::=
   SEQUENCE {
      rARUStatusAruIndex                 INTEGER,
      rARUStatusAruName                  DisplayString,
      rARUStatusAruRemoteSetpoint        INTEGER,
      rARUStatusAruManualSetpoint        INTEGER,
      rARUStatusAruTemp1                 INTEGER,
      rARUStatusAruTemp2                 INTEGER,
      rARUStatusAruTemp3                 INTEGER,
      rARUStatusAruTempOvrdEnableDisable INTEGER,
      rARUStatusAruTempOvrdSetpoint      INTEGER,
      rARUStatusAruAlarmState            DisplayString,
      rARUStatusAruCommStatus            INTEGER,
      rARUStatusAruTempOvrdStatus        INTEGER,
      rARUStatusAruMasterControl         INTEGER,
      rARUStatusAruTotalAirflow          INTEGER
   }

rARUStatusAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUStatusEntry 1 }

rARUStatusAruName   OBJECT-TYPE
   SYNTAX  DisplayString
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The name of the ARU."
   ::= { rARUStatusEntry 2 }

rARUStatusAruRemoteSetpoint OBJECT-TYPE
   SYNTAX INTEGER       {
      aruOff          (1),
      aru85F-29C      (2),
      aru90F-32C      (3),
      aru95F-35C      (4),
      aru100F-38C     (5),
      aru7kW-1200cfm  (6),
      aru5kW-800cfm   (7),
      aru3kW-500cfm   (8),
      aru2kW-300cfm   (9),
      aru400cfm       (10),
      aru600cfm       (11),
      aru700cfm       (12),
      aru900cfm       (13),
      aru1000cfm      (14),
      aru1400cfm      (15),
      aru1600cfm      (16),
      aru1800cfm      (17),
      aru2000cfm      (18)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID defines the desired base airflow of the ARU, or the
       speed of the ARU fans when the temperature override is inactive.

       See also the rARUConfigAruRemoteSetpoint OID.

       NOTE: -1 will be returned if the ARU is not communicating."
   ::= { rARUStatusEntry 3 }

rARUStatusAruManualSetpoint OBJECT-TYPE
   SYNTAX INTEGER       {
      aruOff          (1),
      aru85F-29C      (2),
      aru90F-32C      (3),
      aru95F-35C      (4),
      aru100F-38C     (5),
      aru7kW          (6),
      aru5kW          (7),
      aru3kW          (8),
      aru2kW          (9),
      aruRem          (10)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Manual operating setpoint of the ARU, which is set on the
       panel of the ARU. If the ARU doesn't have a manual ,
       the OID will always return a value of aruRem (10).

       NOTE: -1 will be returned if the ARU is not communicating.

       Values are represented in whole number degrees or kW.
       If the manual setpoint is set to Remote, or if the ARU doesn't
       have a manual switch, this OID will return aruRem."
   ::= { rARUStatusEntry 4 }

rARUStatusAruTemp1 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "ARU temperature probe #1 reading.
       The summary exhaust temperature on 2nd generation ARUs.

       NOTE: -1 will be returned if the ARU is not communicating.

       Values are represented in whole number degrees.
       Units are displayed in the scale shown in
       the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { rARUStatusEntry 5 }

rARUStatusAruTemp2 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "ARU temperature probe #2 reading.
       The exhaust temperature in the upper plenum on 2nd generation ARUs.

       NOTE: -1 will be returned if the ARU is not communicating.

       Values are represented in whole number degrees.
       Units are displayed in the scale shown in
       the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { rARUStatusEntry 6 }

rARUStatusAruTemp3 OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "ARU temperature probe #3 reading.
       The exhaust temperature in the lower plenum on 2nd generation ARUs.

      NOTE: -1 will be returned if the ARU is not communicating.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { rARUStatusEntry 7 }

rARUStatusAruTempOvrdEnableDisable OBJECT-TYPE
   SYNTAX INTEGER       {
      disabled(1),
      enabled(2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This OID indicates whether the ARU remote temperature override is enabled or disabled.
       If this OID is a 1, the remote setting for temperature override is disabled.
       If this OID is a 2, the remote setting for temperature override is enabled."
   ::= { rARUStatusEntry 8 }

rARUStatusAruTempOvrdSetpoint OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "ARU remote temperature override setpoint setting.

      NOTE: -1 will be returned if the ARU is not communicating.

      Values are represented in whole number degrees.
      Units are displayed in the scale shown in
      the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
   ::= { rARUStatusEntry 9 }

rARUStatusAruAlarmState OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ASCII string containing the 8 flags representing
       the current alarm state of the ARU. If the state of
       the ARU is unknown, this variable is set to 'UNKNOWN'.

       The flags are numbered 1 to 8, read from left to
       right. The flags are defined as follows:

       Flag  1: Fan Fail 1
       Flag  2: Fan Fail 2
       Flag  3: Fan Fail 3
       Flag  4: Smoke (if ARU is equipped with smoke detector)

       Flag  5: High Temp (Out of Thermal Control)
       Flag  6: Over Temp (Exhaust Temp. Exceeds Override Setpoint)
       Flag  7: Fan Fail 4 (Gen 2 ARU only)
       Flag  8: Reserved"
   ::= { rARUStatusEntry 10 }

rARUStatusAruCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      commsNeverDiscovered(1),
      commsEstablished(2),
      commsLost(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The state of communications to the device.
      commNeverDiscovered(1) indicates there has never been communications with this device.
      commsEstablished(2) indicates communication is normal and active with this device.
      commsLost(3) indicates communication had been established, but is no device."
   ::= { rARUStatusEntry 11 }

rARUStatusAruTempOvrdStatus OBJECT-TYPE
   SYNTAX INTEGER   {
      inactive   (1),
      active     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Specifies whether the ARU is increasing airflow because
       exhaust air temperature has exceeded the setting specified in the
       rARUConfigAruTempOvrdSetpoint OID."
   ::= { rARUStatusEntry 12 }

rARUStatusAruMasterControl OBJECT-TYPE
   SYNTAX INTEGER   {
      aruOn      (1),
      aruOff     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "This is the master on/off control for the ARU."
   ::= { rARUStatusEntry 13 }

rARUStatusAruTotalAirflow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total airflow provided by the aru. Specified in cfm (cubic feet per minute).
       Can be converted to metric values using the conversion factor:
       1 cfm = 1.70 m^3/hr (cubic meters per hour)."
   ::= { rARUStatusEntry 14 }

-- RACK AIR REMOVAL UNIT FAN STATUS

rARUFanStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUFanStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual devices.
       The number of entries is contained in the
       rARUStatusAruDeviceCount OID."
   ::= { rARUFanStatus 1 }

rARUFanStatusEntry OBJECT-TYPE
   SYNTAX RARUFanStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The device to query."
   INDEX  { rARUFanStatusAruIndex, rARUFanStatusFanIndex}
   ::= { rARUFanStatusTable 1 }

RARUFanStatusEntry ::=
   SEQUENCE {
      rARUFanStatusAruIndex              INTEGER,
      rARUFanStatusNominalFanSpeed       INTEGER,
      rARUFanStatusSelectedFanLevel      INTEGER,
      rARUFanStatusReplacementThreshold  INTEGER,
      rARUFanStatusFanIndex              INTEGER,
      rARUFanStatusFanOperatingStatus    INTEGER,
      rARUFanStatusFanRpmSpeed           INTEGER,
      rARUFanStatusFanFlowRate           INTEGER,
      rARUFanStatusFanInServiceDate      DisplayString,
      rARUFanStatusFanRunhourCounter     INTEGER,
      rARUFanStatusFanRunhourReset       INTEGER
   }

rARUFanStatusAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUFanStatusEntry 1 }

rARUFanStatusNominalFanSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal rotational speed (RPM) of the fans when they are
       operating at the 100% level."
   ::= { rARUFanStatusEntry 2 }

rARUFanStatusSelectedFanLevel OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The currently selected ARU speed level,
       specified in percent of full capacity."
   ::= { rARUFanStatusEntry 3 }

rARUFanStatusReplacementThreshold OBJECT-TYPE
   SYNTAX INTEGER       {
      disabled  (1),
      khr20     (2),
      khr25     (3),
      khr30     (4),
      khr35     (5),
      khr40     (6),
      khr50     (7)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Threshold above which a run hour alarm will exist, indicating
       that it might be time to proactively replace a fan."
   ::= { rARUFanStatusEntry 4 }

rARUFanStatusFanIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to an individual fan table entry."
   ::= { rARUFanStatusEntry 5 }

rARUFanStatusFanOperatingStatus OBJECT-TYPE
   SYNTAX INTEGER       {
      unknown      (1),
      off          (2),
      onOk         (3),
      onDegraded   (4),
      offFailed    (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current operating state of the fan."
   ::= { rARUFanStatusEntry 6 }

rARUFanStatusFanRpmSpeed OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The current rotational speed of the fan,
       specified in rotations per minute (RPM)."
   ::= { rARUFanStatusEntry 7 }

rARUFanStatusFanFlowRate OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The flow rate provided by the fan, based on its measured rotational speed.
       Specified in cfm (cubic feet per minute). Can be converted to metric values
       using the conversion factor: 1 cfm = 1.70 m^3/hr (cubic meters per hour)."
   ::= { rARUFanStatusEntry 8 }

rARUFanStatusFanInServiceDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The installation/replacement date of the fan."
   ::= { rARUFanStatusEntry 9 }

rARUFanStatusFanRunhourCounter OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The total time for which the fan has been running.
       Specified in 10ths of hours."
   ::= { rARUFanStatusEntry 10 }

rARUFanStatusFanRunhourReset OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Writing yes to this This OID will reset a fan's total run hour counter,
       which is shown in the rARUFanStatusFanRunhourCounter OID."
   ::= { rARUFanStatusEntry 11 }

-- RACK AIR REMOVAL UNIT INPUT POWER STATUS

rARUPowerStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUPowerStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "Allows for query of the individual ARUs accessible from this IP address.
       The number of entries is contained in the rARUStatusAruDeviceCount OID."
   ::= { rARUPower 1 }

rARUPowerStatusEntry OBJECT-TYPE
   SYNTAX RARUPowerStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The device to query."
   INDEX  { rARUPowerStatusAruIndex}
   ::= { rARUPowerStatusTable 1 }

RARUPowerStatusEntry ::=
   SEQUENCE {
      rARUPowerStatusAruIndex           INTEGER,
      rARUPowerStatusPrimaryAcPresent   INTEGER,
      rARUPowerStatusAuxiliaryAcPresent INTEGER,
      rARUPowerStatusRedundantAcConfig  INTEGER
   }

rARUPowerStatusAruIndex   OBJECT-TYPE
   SYNTAX  INTEGER
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUPowerStatusEntry 1 }

rARUPowerStatusPrimaryAcPresent OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not line voltage is present on AC input 1."
   ::= { rARUPowerStatusEntry 2 }

rARUPowerStatusAuxiliaryAcPresent OBJECT-TYPE
   SYNTAX INTEGER {
      yes (1),
      no  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not line voltage is present on AC input 2."
   ::= { rARUPowerStatusEntry 3 }

rARUPowerStatusRedundantAcConfig OBJECT-TYPE
   SYNTAX INTEGER {
      singleCord (1),
      dualCord   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not a dual cord is in use.
       When this setting is set to dualCord (2), aruRedundantPowerLostAlarm
       traps will be generated when either primary or auxiliary input
       voltage is not present. When this setting is set to singleCord (1),
       aruRedundantPowerLostAlarm traps will not be generated."
   ::= { rARUPowerStatusEntry 4 }

-- RACK AIR REMOVAL UNIT SENSOR STATUS

rARUSensorsStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the rARUSensorsStatusTable."
   ::= { rARUSensors 1 }

rARUSensorsStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUSensorsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting environmental sensor status information."
   ::= { rARUSensors 2 }

rARUSensorsStatusEntry OBJECT-TYPE
   SYNTAX RARUSensorsStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { rARUSensorsStatusAruIndex, rARUSensorsStatusSensorNumber }
   ::= { rARUSensorsStatusTable 1 }

RARUSensorsStatusEntry ::=
   SEQUENCE {
      rARUSensorsStatusAruIndex       INTEGER,
      rARUSensorsStatusSensorNumber   INTEGER,
      rARUSensorsTemperature          INTEGER
   }

rARUSensorsStatusAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUSensorsStatusEntry 1 }

rARUSensorsStatusSensorNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the sensor on the device."
   ::= { rARUSensorsStatusEntry 2 }

rARUSensorsTemperature OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor's current temperature reading. The temperature scale
         is based on the system preferences configuration."
   ::= { rARUSensorsStatusEntry 3 }


-- RACK AIR REMOVAL UNIT CONFIG STATUS

rARUSensorsConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the rARUSensorsConfigTable."
   ::= { rARUSensors 3 }

rARUSensorsConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF RARUSensorsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting configuration information from
        environmental sensors attached to the device."
   ::= { rARUSensors 4 }

rARUSensorsConfigEntry OBJECT-TYPE
   SYNTAX RARUSensorsConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit to get data from."
   INDEX { rARUSensorsConfigAruIndex, rARUSensorsConfigSensorNumber }
   ::= { rARUSensorsConfigTable 1 }

RARUSensorsConfigEntry ::=
   SEQUENCE {
      rARUSensorsConfigAruIndex               INTEGER,
      rARUSensorsConfigSensorNumber           INTEGER,
      rARUSensorsName                         DisplayString,
      rARUSensorsLocation                     DisplayString,
      rARUSensorsTempMaxThresh                INTEGER,
      rARUSensorsTempHighThresh               INTEGER,
      rARUSensorsTempLowThresh                INTEGER,
      rARUSensorsTempMinThresh                INTEGER,
      rARUSensorsTempThreshHysteresis         INTEGER,
      rARUSensorsTempShortDecRateThreshValue  INTEGER,
      rARUSensorsTempShortDecRateThreshTime   INTEGER,
      rARUSensorsTempShortIncRateThreshValue  INTEGER,
      rARUSensorsTempShortIncRateThreshTime   INTEGER,
      rARUSensorsTempLongDecRateThreshValue   INTEGER,
      rARUSensorsTempLongDecRateThreshTime    INTEGER,
      rARUSensorsTempLongIncRateThreshValue   INTEGER,
      rARUSensorsTempLongIncRateThreshTime    INTEGER
   }

rARUSensorsConfigAruIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to the ARU entry."
   ::= { rARUSensorsConfigEntry 1 }

rARUSensorsConfigSensorNumber OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the sensor on the device."
   ::= { rARUSensorsConfigEntry 2 }

rARUSensorsName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A descriptive name for the sensor."
   ::= { rARUSensorsConfigEntry 3 }

rARUSensorsLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the sensor."
   ::= { rARUSensorsConfigEntry 4 }

rARUSensorsTempMaxThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which a maximum temperature threshold
         violation alarm will be generated for this sensor.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 5 }

rARUSensorsTempHighThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which a high temperature threshold
         violation alarm will be generated for this sensor.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 6 }

rARUSensorsTempLowThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which a low temperature threshold
         violation alarm will be generated for this sensor.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 7 }

rARUSensorsTempMinThresh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The temperature at which a min temperature threshold
         violation alarm will be generated for this sensor.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 8 }

rARUSensorsTempThreshHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The change in temperature required to cause a
         temperature alarm to change from an active to an
         inactive state. The temperature scale is based on
         the system preferences configuration."
   ::= { rARUSensorsConfigEntry 9 }

rARUSensorsTempShortDecRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature short-term decreasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 10 }

rARUSensorsTempShortDecRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not decrease
         beyond the value specified by the temperature short-term
         decreasing rate threshold value."
   ::= { rARUSensorsConfigEntry 11 }

rARUSensorsTempShortIncRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature short-term increasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 12 }

rARUSensorsTempShortIncRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not increase
         beyond the value specified by the temperature short-term
         increasing rate threshold value."
   ::= { rARUSensorsConfigEntry 13 }

rARUSensorsTempLongDecRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature long-term decreasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 14 }

rARUSensorsTempLongDecRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not decrease
         beyond the value specified by the temperature long-term
         decreasing rate threshold value."
   ::= { rARUSensorsConfigEntry 15 }

rARUSensorsTempLongIncRateThreshValue OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The value of the temperature long-term increasing rate
         time that will cause an alarm to be generated.
         The temperature scale is based on the system preferences
         configuration."
   ::= { rARUSensorsConfigEntry 16 }

rARUSensorsTempLongIncRateThreshTime OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time over which the temperature may not increase
         beyond the value specified by the temperature long-term
         increasing rate threshold value."
   ::= { rARUSensorsConfigEntry 17 }

-- MODULAR DISTRIBUTION SYSTEM

-- Modular Information

isxModularDistInfoTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistInfoTable."
   ::= { isxModularDistInfo 1 }

isxModularDistInfoTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting information about the modular
        distribution metering equipment."
   ::= { isxModularDistInfo 2 }

isxModularDistInfoEntry OBJECT-TYPE
   SYNTAX IsxModularDistInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "An entry containing information about an individual metering segment."
   INDEX { isxModularDistInfoSegmentIndex }
   ::= { isxModularDistInfoTable 1 }

IsxModularDistInfoEntry ::=
   SEQUENCE {
       isxModularDistInfoSegmentIndex             INTEGER,
       isxModularDistInfoMeterModelNumber         DisplayString,
       isxModularDistInfoMeterSerialNumber        DisplayString,
       isxModularDistInfoMeterDateOfManufacture   DisplayString,
       isxModularDistInfoMeterFirmwareRev         DisplayString,
       isxModularDistInfoMeterHardwareRev         DisplayString
   }

isxModularDistInfoSegmentIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The index of the metering segment."
   ::= { isxModularDistInfoEntry 1 }

isxModularDistInfoMeterModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The model number of the metering board for this segment."
   ::= { isxModularDistInfoEntry 2 }

isxModularDistInfoMeterSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The serial number of the metering board for this segment."
   ::= { isxModularDistInfoEntry 3 }

isxModularDistInfoMeterDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The date of manufacture for the metering board for this segment,
         in the format mm/dd/yyyy."
   ::= { isxModularDistInfoEntry 4 }

isxModularDistInfoMeterFirmwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The firmware revision number of the metering board for this segment."
   ::= { isxModularDistInfoEntry 5 }

isxModularDistInfoMeterHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The hardware revision number of the metering board for this segment."
   ::= { isxModularDistInfoEntry 6 }

-- Distribution Modules

isxModularDistModuleInfoTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistModuleInfoTable."
   ::= { isxModularDistModules 1 }

isxModularDistModuleInfoTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistModuleInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting basic information about the distribution modules
        installed in the system."
   ::= { isxModularDistModules 2 }

isxModularDistModuleInfoEntry OBJECT-TYPE
   SYNTAX IsxModularDistModuleInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information about a specific distribution module."
   INDEX { isxModularDistModuleInfoModIndex }
   ::= { isxModularDistModuleInfoTable 1 }

IsxModularDistModuleInfoEntry ::=
   SEQUENCE {
      isxModularDistModuleInfoModIndex            INTEGER,
      isxModularDistModuleInfoAlarmStatus         INTEGER,
      isxModularDistModuleInfoModelNumber         DisplayString,
      isxModularDistModuleInfoSerialNumber        DisplayString,
      isxModularDistModuleInfoDateOfManufacture   DisplayString,
      isxModularDistModuleInfoNumCables           INTEGER
   }

isxModularDistModuleInfoModIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the distribution module."
   ::= { isxModularDistModuleInfoEntry 1 }

isxModularDistModuleInfoAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      normal     (1),
      warning    (2),
      critical   (3),
      notPresent (4),
      unknown    (5)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The status of this module. This reflects the indicator lamp(s) on the front of the module.
         A value of notPresent indicates that the module is not installed.
         A value of unknown indicates that there is no communication with the
         metering segment for this module."
   ::= { isxModularDistModuleInfoEntry 2 }

isxModularDistModuleInfoModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The model number of the distribution module."
   ::= { isxModularDistModuleInfoEntry 3 }

isxModularDistModuleInfoSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The serial number of the distribution module."
   ::= { isxModularDistModuleInfoEntry 4 }

isxModularDistModuleInfoDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The date that the distribution module was manufactured."
   ::= { isxModularDistModuleInfoEntry 5 }

isxModularDistModuleInfoNumCables OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The number of cables provided by this distribution module."
   ::= { isxModularDistModuleInfoEntry 6 }

isxModularDistModuleBreakerTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistModuleBreakerTable."
   ::= { isxModularDistModules 3 }

isxModularDistModuleBreakerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistModuleBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting operational information about the distribution modules."
   ::= { isxModularDistModules 4 }

isxModularDistModuleBreakerEntry OBJECT-TYPE
   SYNTAX IsxModularDistModuleBreakerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information about a specific distribution modules and circuit breakers."
   INDEX { isxModularDistModuleBreakerModIndex, isxModularDistModuleBreakerPhaseIndex}
   ::= { isxModularDistModuleBreakerTable 1 }

IsxModularDistModuleBreakerEntry ::=
   SEQUENCE {
      isxModularDistModuleBreakerModIndex        INTEGER,
      isxModularDistModuleBreakerPhaseIndex      INTEGER,
      isxModularDistModuleBreakerAlarmStatus     INTEGER,
      isxModularDistModuleBreakerRating          INTEGER,
      isxModularDistModuleBreakerPhysicalGroup   INTEGER,
      isxModularDistModuleBreakerCableNum        INTEGER,
      isxModularDistModuleBreakerPosition        INTEGER,
      isxModularDistModuleBreakerPositionAlarms  INTEGER,
      isxModularDistModuleBreakerCurrent         INTEGER,
      isxModularDistModuleBreakerPercent         INTEGER,
      isxModularDistModuleBreakerPower           INTEGER
   }

isxModularDistModuleBreakerModIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The distribution module number."
   ::= { isxModularDistModuleBreakerEntry 1 }

isxModularDistModuleBreakerPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER{
      phaseL1(1),
      phaseL2(2),
      phaseL3(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The index to an individual breaker in the distribution module. The index also corresponds
       to the system phase to  which the breaker is attached."
   ::= { isxModularDistModuleBreakerEntry 2 }

isxModularDistModuleBreakerAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the active alarms for this breaker:

           b0 - Minimum current threshold exceeded (critical)
           b1 - Low current threshold exceeded (warning)
           b2 - High current threshold exceeded (warning)
           b3 - Maximum current threshold exceeded (critical)
           b4 - Breaker is open (critical)

         If a bit is set, the corresponding alarm is active."
   ::= { isxModularDistModuleBreakerEntry 3 }

isxModularDistModuleBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current rating of the breaker."
   ::= { isxModularDistModuleBreakerEntry 4 }

isxModularDistModuleBreakerPhysicalGroup OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Numeric value used to indicate that a breaker is a part of a multi-pole breaker.
         Breakers within a distribution module, with equivalent physical group numbers,
         may have their handles physically tied together.
         A value of 1 indicates breakers that are physically tied together as part of a
         multi-pole breaker.
         A value of 0 indicates a single-handle breaker that is not physically tied to
         another breaker."
   ::= { isxModularDistModuleBreakerEntry 5 }

isxModularDistModuleBreakerCableNum OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Numeric value used to indicate the distribution cable to which
         this breaker is connected. These distribution cables are described
         in the table isxModularDistModuleOutputTable,
         and indexed by the OID isxModularDistModuleOutputCordIndex."
   ::= { isxModularDistModuleBreakerEntry 6 }

isxModularDistModuleBreakerPosition OBJECT-TYPE
   SYNTAX INTEGER {
      open   (1),
      closed (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The physical status of this breaker pole, either closed or open (including tripped)."
   ::= { isxModularDistModuleBreakerEntry 7 }

isxModularDistModuleBreakerPositionAlarms OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable breaker position alarms for this circuit breaker."
   ::= { isxModularDistModuleBreakerEntry 8 }

isxModularDistModuleBreakerCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current flowing though this breaker. Measured in tenths of amps."
   ::= { isxModularDistModuleBreakerEntry 9 }

isxModularDistModuleBreakerPercent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The loading on this breaker as a percentage of the breaker's current rating.
         Expressed in tenths of percent."
   ::= { isxModularDistModuleBreakerEntry 10 }

isxModularDistModuleBreakerPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The power being supplied through this breaker. Measured in tenths of kW."
   ::= { isxModularDistModuleBreakerEntry 11 }

isxModularDistModuleOutputsTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistModuleOutputTable."
   ::= { isxModularDistModules 5 }

isxModularDistModuleOutputTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistModuleOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting and setting information related to the
        load equipment being fed by the distribution modules in the ISX
        Modular Distribution System."
   ::= { isxModularDistModules 6 }

isxModularDistModuleOutputEntry OBJECT-TYPE
   SYNTAX IsxModularDistModuleOutputEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information about a specific distribution module
       and its output distribution cables."
   INDEX { isxModularDistModuleOutputModIndex, isxModularDistModuleOutputCordIndex }
   ::= { isxModularDistModuleOutputTable 1 }

IsxModularDistModuleOutputEntry ::=
   SEQUENCE {
      isxModularDistModuleOutputModIndex             INTEGER,
      isxModularDistModuleOutputNumCables            INTEGER,
      isxModularDistModuleOutputCordIndex            INTEGER,
      isxModularDistModuleOutputName                 DisplayString,
      isxModularDistModuleOutputLocation             DisplayString,
      isxModularDistModuleOutputStatus               INTEGER,
      isxModularDistModuleOutputAlarmGeneration      INTEGER,
      isxModularDistModuleOutputBreakerMap           INTEGER,
      isxModularDistModuleOutputThresholdMin         INTEGER,
      isxModularDistModuleOutputThresholdLow         INTEGER,
      isxModularDistModuleOutputThresholdHigh        INTEGER,
      isxModularDistModuleOutputThresholdMax         INTEGER,
      isxModularDistModuleOutputAlarmMinEnable       INTEGER,
      isxModularDistModuleOutputAlarmLowEnable       INTEGER,
      isxModularDistModuleOutputAlarmHighEnable      INTEGER,
      isxModularDistModuleOutputAlarmMaxEnable       INTEGER,
      isxModularDistModuleOutputCableLength          INTEGER,
      isxModularDistModuleOutputConnectorType        DisplayString,
      isxModularDistModuleOutputAvailableVoltages    INTEGER,
      isxModularDistModuleOutputTotalPower           INTEGER,
      isxModularDistModuleOutputKwhUsage             INTEGER,
      isxModularDistModuleOutputKwhReset             INTEGER,
      isxModularDistModuleOutputKwhResetDate         DisplayString
   }

isxModularDistModuleOutputModIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of the distribution module supplying power to the load equipment."
   ::= { isxModularDistModuleOutputEntry 1 }

isxModularDistModuleOutputNumCables OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The number of distribution cables provided by this module."
   ::= { isxModularDistModuleOutputEntry 2 }

isxModularDistModuleOutputCordIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The index of an individual distribution cable supplied by this module."
   ::= { isxModularDistModuleOutputEntry 3 }

isxModularDistModuleOutputName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A string describing the load equipment being supplied by this distribution cable."
   ::= { isxModularDistModuleOutputEntry 4 }

isxModularDistModuleOutputLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A string describing the location of equipment being supplied by distribution cable."
   ::= { isxModularDistModuleOutputEntry 5 }

isxModularDistModuleOutputStatus OBJECT-TYPE
   SYNTAX INTEGER {
      normal     (1),
      warning    (2),
      critical   (3),
      notPresent (4),
      unknown    (6)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This reflects the worse case severity for alarms associated with this distribution cable.
         A value of notPresent indicates that the cable does not exist for this module.
         A value of unknown indicates that the there is no communication with the
         metering segment for this distribution cable's module."
   ::= { isxModularDistModuleOutputEntry 6 }

isxModularDistModuleOutputAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable all alarm generation related to this distribution cable."
   ::= { isxModularDistModuleOutputEntry 7 }

isxModularDistModuleOutputBreakerMap OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the breaker poles within the
         module that are associated with this distribution cable.
         The following 3 bits are used to indicate the indices of
         the breakers feeding the cable:

           b0 - Module breaker L1
           b1 - Module breaker L2
           b2 - Module breaker L3

         If a bit is set, the breaker is used to feed this distribution cable.
         These breakers are described in the table isxModularDistModuleBreakerTable,
         and indexed by the OID isxModularDistModuleBreakerPhaseIndex."
   ::= { isxModularDistModuleOutputEntry 8 }

isxModularDistModuleOutputThresholdMin OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current drops below this value a critical alarm will exist."
   ::= { isxModularDistModuleOutputEntry 9 }

isxModularDistModuleOutputThresholdLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current drops below this value a warning alarm will exist."
   ::= { isxModularDistModuleOutputEntry 10 }

isxModularDistModuleOutputThresholdHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current exceeds this value a warning alarm will exist."
   ::= { isxModularDistModuleOutputEntry 11 }

isxModularDistModuleOutputThresholdMax OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current exceeds this value a critical alarm will exist."
   ::= { isxModularDistModuleOutputEntry 12 }

isxModularDistModuleOutputAlarmMinEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable minimum current alarm generation for this distribution cable."
   ::= { isxModularDistModuleOutputEntry 13 }

isxModularDistModuleOutputAlarmLowEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable low current alarm generation for this distribution cable."
   ::= { isxModularDistModuleOutputEntry 14 }

isxModularDistModuleOutputAlarmHighEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable high current alarm generation for this distribution cable."
   ::= { isxModularDistModuleOutputEntry 15 }

isxModularDistModuleOutputAlarmMaxEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable maximum current alarm generation for this distribution cable."
   ::= { isxModularDistModuleOutputEntry 16 }

isxModularDistModuleOutputCableLength OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The length of this distribution cable. Specified in tenths of meters."
   ::= { isxModularDistModuleOutputEntry 17 }

isxModularDistModuleOutputConnectorType OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "A string describing the connector on the end of this distribution cable."
   ::= { isxModularDistModuleOutputEntry 18 }

isxModularDistModuleOutputAvailableVoltages OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the voltages that are available at the connector.
         6 bits are used to indicate the following:

           b0 - L1
           b1 - L2
           b2 - L3
           b3 - L1-2
           b4 - L2-3
           b5 - L3-1"
   ::= { isxModularDistModuleOutputEntry 19 }

isxModularDistModuleOutputTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total power being consumed by the load equipment supplied by this distribution cable.
         Measured in tenths of kW."
   ::= { isxModularDistModuleOutputEntry 20 }

isxModularDistModuleOutputKwhUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total energy consumed by the load equipment fed by this distribution cable.
         This is the total since the date specified in the isxModularDistModuleOutputKwhResetDate
         OID, and may be cleared using the isxModularDistModuleOutputKwhReset OID.
         Measured in tenths of kWh."
   ::= { isxModularDistModuleOutputEntry 21 }

isxModularDistModuleOutputKwhReset OBJECT-TYPE
   SYNTAX INTEGER {
      no  (1),
      yes (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Writing yes to this OID will reset the total kWh usage shown
       in the isxModularDistModuleOutputKwhUsage OID."
   ::= { isxModularDistModuleOutputEntry 22 }

isxModularDistModuleOutputKwhResetDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The date that the kWh usage was reset, in the format mm/dd/yyyy. Example: 01/01/2000."
   ::= { isxModularDistModuleOutputEntry 23 }

-- Distribution Subfeeds

isxModularDistSubFeedInfoTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistSubFeedInfoTable."
   ::= { isxModularDistSubFeeds 1 }

isxModularDistSubFeedInfoTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistSubFeedInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting information about distribution subfeed breakers."
   ::= { isxModularDistSubFeeds 2 }

isxModularDistSubFeedInfoEntry OBJECT-TYPE
   SYNTAX IsxModularDistSubFeedInfoEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing information about a specific distribution subfeed."
   INDEX { isxModularDistSubFeedInfoSubIndex }
   ::= { isxModularDistSubFeedInfoTable 1 }

IsxModularDistSubFeedInfoEntry ::=
   SEQUENCE {
      isxModularDistSubFeedInfoSubIndex            INTEGER,
      isxModularDistSubFeedInfoName                DisplayString,
      isxModularDistSubFeedInfoLocation            DisplayString,
      isxModularDistSubFeedInfoBreakerRating       INTEGER,
      isxModularDistSubFeedInfoBreakerPosition     INTEGER,
      isxModularDistSubFeedInfoAlarmStatus         INTEGER,
      isxModularDistSubFeedInfoAlarmGeneration     INTEGER,
      isxModularDistSubFeedInfoThresholdMin        INTEGER,
      isxModularDistSubFeedInfoThresholdLow        INTEGER,
      isxModularDistSubFeedInfoThresholdHigh       INTEGER,
      isxModularDistSubFeedInfoThresholdMax        INTEGER,
      isxModularDistSubFeedInfoAlarmMinEnable      INTEGER,
      isxModularDistSubFeedInfoAlarmLowEnable      INTEGER,
      isxModularDistSubFeedInfoAlarmHighEnable     INTEGER,
      isxModularDistSubFeedInfoAlarmMaxEnable      INTEGER,
      isxModularDistSubFeedInfoBreakerAlarmEnable  INTEGER,
      isxModularDistSubFeedInfoTotalPower          INTEGER,
      isxModularDistSubFeedInfoKwhUsage            INTEGER,
      isxModularDistSubFeedInfoKwhReset            INTEGER,
      isxModularDistSubFeedInfoKwhResetDate        DisplayString
   }

isxModularDistSubFeedInfoSubIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The index of an individual subfeed."
   ::= { isxModularDistSubFeedInfoEntry 1 }

isxModularDistSubFeedInfoName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A string describing the load equipment being supplied by this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 2 }

isxModularDistSubFeedInfoLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "A string describing the location of the equipment being supplied by this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 3 }

isxModularDistSubFeedInfoBreakerRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current rating of this subfeed breaker."
   ::= { isxModularDistSubFeedInfoEntry 4 }

isxModularDistSubFeedInfoBreakerPosition OBJECT-TYPE
   SYNTAX INTEGER {
      open   (1),
      closed (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The operational status of this breaker, either closed or open (including tripped)."
   ::= { isxModularDistSubFeedInfoEntry 5 }

isxModularDistSubFeedInfoAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      normal     (1),
      warning    (2),
      critical   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The worst case alarm status for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 6 }

isxModularDistSubFeedInfoAlarmGeneration OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable all alarm generation related to this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 7 }

isxModularDistSubFeedInfoThresholdMin OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current drops below this value a critical alarm will exist."
   ::= { isxModularDistSubFeedInfoEntry 8 }

isxModularDistSubFeedInfoThresholdLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current drops below this value a warning alarm will exist."
   ::= { isxModularDistSubFeedInfoEntry 9 }

isxModularDistSubFeedInfoThresholdHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current exceeds this value a warning alarm will exist."
   ::= { isxModularDistSubFeedInfoEntry 10 }

isxModularDistSubFeedInfoThresholdMax OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the current exceeds this value a critical alarm will exist."
   ::= { isxModularDistSubFeedInfoEntry 11 }

isxModularDistSubFeedInfoAlarmMinEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable minimum current alarm generation for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 12 }

isxModularDistSubFeedInfoAlarmLowEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable low current alarm generation for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 13 }

isxModularDistSubFeedInfoAlarmHighEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable high current alarm generation for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 14 }

isxModularDistSubFeedInfoAlarmMaxEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable maximum current alarm generation for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 15 }

isxModularDistSubFeedInfoBreakerAlarmEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable breaker position alarms for this subfeed."
   ::= { isxModularDistSubFeedInfoEntry 16 }

isxModularDistSubFeedInfoTotalPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total power being supplied by this subfeed. Measured in tenths of kW."
   ::= { isxModularDistSubFeedInfoEntry 17 }

isxModularDistSubFeedInfoKwhUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total energy consumed by the load equipment fed by this subfeed.
         This is the total since the date specified in the isxModularDistSubFeedInfoKwhResetDate
         OID, and may be cleared using the isxModularDistSubFeedInfoKwhReset OID.
         Measured in tenths of kWh."
   ::= { isxModularDistSubFeedInfoEntry 18 }

isxModularDistSubFeedInfoKwhReset OBJECT-TYPE
   SYNTAX INTEGER {
      no  (1),
      yes (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Writing yes to this OID will reset the total kWh usage shown
       in the isxModularDistSubFeedInfoKwhUsage OID."
   ::= { isxModularDistSubFeedInfoEntry 19 }

isxModularDistSubFeedInfoKwhResetDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The date that the kWh usage was reset, in the format mm/dd/yyyy. Example: 01/01/2000."
   ::= { isxModularDistSubFeedInfoEntry 20 }

isxModularDistSubFeedLoadingTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the isxModularDistSubFeedLoadingTable."
   ::= { isxModularDistSubFeeds 3 }

isxModularDistSubFeedLoadingTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistSubFeedLoadingEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting subfeed phase loading information."
   ::= { isxModularDistSubFeeds 4 }

isxModularDistSubFeedLoadingEntry OBJECT-TYPE
   SYNTAX IsxModularDistSubFeedLoadingEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing data for an individual subfeed."
   INDEX { isxModularDistSubFeedLoadingSubIndex, isxModularDistSubFeedLoadingPhaseIndex }
   ::= { isxModularDistSubFeedLoadingTable 1 }

IsxModularDistSubFeedLoadingEntry ::= SEQUENCE {
      isxModularDistSubFeedLoadingSubIndex       INTEGER,
      isxModularDistSubFeedLoadingPhaseIndex     INTEGER,
      isxModularDistSubFeedLoadingAlarmStatus    INTEGER,
      isxModularDistSubFeedLoadingCurrent        INTEGER,
      isxModularDistSubFeedLoadingPercent        INTEGER,
      isxModularDistSubFeedLoadingPower          INTEGER
   }

isxModularDistSubFeedLoadingSubIndex OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The index of an individual subfeed."
   ::= { isxModularDistSubFeedLoadingEntry 1 }

isxModularDistSubFeedLoadingPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER{
      phase1(1),
      phase2(2),
      phase3(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Description of each input phase entry in the table."
   ::= { isxModularDistSubFeedLoadingEntry 2 }

isxModularDistSubFeedLoadingAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the active alarms for this subfeed:

           b0 - Minimum current threshold exceeded (critical)
           b1 - Low current threshold exceeded (warning)
           b2 - High current threshold exceeded (warning)
           b3 - Maximum current threshold exceeded (critical)
           b4 - Breaker is open (critical)

         If a bit is set, the corresponding alarm is active."
   ::= { isxModularDistSubFeedLoadingEntry 3 }

isxModularDistSubFeedLoadingCurrent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current flowing though this subfeed phase. Measured in tenths of amps."
   ::= { isxModularDistSubFeedLoadingEntry 4 }

isxModularDistSubFeedLoadingPercent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The loading on this subfeed phase as a percentage of the subfeed's current rating.
         Expressed in tenths of percent."
   ::= { isxModularDistSubFeedLoadingEntry 5 }

isxModularDistSubFeedLoadingPower OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The power being supplied by this subfeed phase. Measured in tenths of kW."
   ::= { isxModularDistSubFeedLoadingEntry 6 }

-- Distribution System Output Voltage

isxModularDistSysOutputVoltageNominalLineToNeutral OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The nominal line-to-neutral voltage available at the distribution panel."
   ::= { isxModularDistSysVoltage 1 }

isxModularDistSysOutputVoltageNominalLineToLine OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The nominal line-to-line voltage available at the distribution panel."
   ::= { isxModularDistSysVoltage 2 }

isxModularDistSysOutputNominalFrequency OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The nominal system output frequency. Measured in tenths of Hertz."
   ::= { isxModularDistSysVoltage 3 }

isxModularDistSysOutputFrequency OBJECT-TYPE
   SYNTAX     INTEGER
   ACCESS     read-only
   STATUS     mandatory
   DESCRIPTION
      "The system output frequency in tenths of Hertz.
      -1 if not available."
   ::= { isxModularDistSysVoltage 4 }

isxModularDistSysOutputVoltageMonitoring OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent (1),
        present    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not output voltage alarm generation is present."
   ::= { isxModularDistSysVoltage 5 }

isxModularDistSysOutputVoltageThresholdMin OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the line-to-neutral voltage of any phase drops below this value a critical alarm will exist.
         Specified as a percent of the nominal voltage, isxModularDistSysOutputVoltageNominalLineToNeutral.
         This value is returned as a positive number which represents a negative percentage.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysVoltage 6 }

isxModularDistSysOutputVoltageThresholdLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the line-to-neutral voltage of any phase drops below this value a warning alarm will exist.
         Specified as a percent of the nominal voltage, isxModularDistSysOutputVoltageNominalLineToNeutral.
         This value is returned as a positive number which represents a negative percentage.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysVoltage 7 }

isxModularDistSysOutputVoltageThresholdHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the line-to-neutral voltage of any phase exceeds this value a warning alarm will exist.
         Specified as a percent of the nominal voltage, isxModularDistSysOutputVoltageNominalLineToNeutral.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysVoltage 8 }

isxModularDistSysOutputVoltageThresholdMax OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When the line-to-neutral voltage of any phase exceeds this value a critical alarm will exist.
         Specified as a percent of the nominal voltage, isxModularDistSysOutputVoltageNominalLineToNeutral.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysVoltage 9 }

isxModularDistSysOutputVoltageAlarmMinEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable minimum voltage alarm generation for the distribution panel."
   ::= { isxModularDistSysVoltage 10 }

isxModularDistSysOutputVoltageAlarmLowEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable low voltage alarm generation for the distribution panel."
   ::= { isxModularDistSysVoltage 11 }

isxModularDistSysOutputVoltageAlarmHighEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable high voltage alarm generation for the distribution panel."
   ::= { isxModularDistSysVoltage 12 }

isxModularDistSysOutputVoltageAlarmMaxEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable maximum voltage alarm generation for the distribution panel."
   ::= { isxModularDistSysVoltage 13 }

isxModularDistSysOutputVoltageFrequencyTolerance OBJECT-TYPE
   SYNTAX     INTEGER{
      freqToleranceOff              (1),
      freqTolerancePointTwo         (2),
      freqTolerancePointFive        (3),
      freqToleranceOne              (4),
      freqToleranceOnePointFive     (5),
      freqToleranceTwo              (6),
      freqToleranceThree            (7),
      freqToleranceFour             (8),
      freqToleranceFive             (9),
      freqToleranceNine             (10),
      freqToleranceNotAvailable     (11)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The circuit panel output frequency tolerance in Hertz.
      When the system output frequency deviates from the nominal by more than this range,
      a critical alarm will be generated."
   ::= { isxModularDistSysVoltage 14 }

isxModularDistSysVoltageTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistSysVoltageEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting the system output voltage information."
   ::= { isxModularDistSysVoltage 15 }

isxModularDistSysVoltageEntry OBJECT-TYPE
   SYNTAX IsxModularDistSysVoltageEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing data for an individual system output phase."
   INDEX { isxModularDistSysVoltagePhaseIndex }
   ::= { isxModularDistSysVoltageTable 1 }

IsxModularDistSysVoltageEntry ::=
   SEQUENCE {
      isxModularDistSysVoltagePhaseIndex     INTEGER,
      isxModularDistSysVoltageAlarmStatus    INTEGER,
      isxModularDistSysVoltageLtoN           INTEGER,
      isxModularDistSysVoltageLtoL           INTEGER
   }

isxModularDistSysVoltagePhaseIndex OBJECT-TYPE
   SYNTAX INTEGER{
      phase1(1),
      phase2(2),
      phase3(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Description of each phase entry in the table."
   ::= { isxModularDistSysVoltageEntry 1 }

isxModularDistSysVoltageAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the active alarms for this output phase:

           b0 - Minimum voltage threshold exceeded (critical)
           b1 - Low voltage threshold exceeded (warning)
           b2 - High voltage threshold exceeded (warning)
           b3 - Maximum voltage threshold exceeded (critical)

         If a bit is set, the corresponding alarm is active."
   ::= { isxModularDistSysVoltageEntry 2 }

isxModularDistSysVoltageLtoN OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Line-to-neutral system output voltage available at the distribution panel.
        Measured in tenths of Volts."
   ::= { isxModularDistSysVoltageEntry 3 }

isxModularDistSysVoltageLtoL OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "Line-to-line system output voltage available at the distribution panel.
        Measured in tenths of Volts."
   ::= { isxModularDistSysVoltageEntry 4 }


-- Distribution System Total Output Current

isxModularDistSysCurrentRating OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The 100 percent current rating of the distribution panel."
   ::= { isxModularDistSysCurrent 1 }

isxModularDistSysCurrentMonitoring OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent (1),
        present    (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not total output current measurements and alarm generation are present."
   ::= { isxModularDistSysCurrent 2 }

isxModularDistSysCurrentThresholdMin OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When total system current in any phase drops below this value a critical alarm will exist.
         Specified as a percent of the panel rating, isxModularDistSysCurrentRating.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysCurrent 3 }

isxModularDistSysCurrentThresholdLow OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When total system current in any phase drops below this value a warning alarm will exist.
         Specified as a percent of the panel rating, isxModularDistSysCurrentRating.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysCurrent 4 }

isxModularDistSysCurrentThresholdHigh OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When total system current in any phase exceeds this value a warning alarm will exist.
         Specified as a percent of the panel rating, isxModularDistSysCurrentRating.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysCurrent 5 }

isxModularDistSysCurrentThresholdMax OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "When total system current in any phase exceeds this value a critical alarm will exist.
         Specified as a percent of the panel rating, isxModularDistSysCurrentRating.
         A value of -1 indicates that the threshold is not available in the device."
   ::= { isxModularDistSysCurrent 6 }

isxModularDistSysCurrentAlarmMinEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable minimum total output current alarm generation."
   ::= { isxModularDistSysCurrent 7 }

isxModularDistSysCurrentAlarmLowEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable low total output current alarm generation."
   ::= { isxModularDistSysCurrent 8 }

isxModularDistSysCurrentAlarmHighEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable high total output current alarm generation."
   ::= { isxModularDistSysCurrent 9 }

isxModularDistSysCurrentAlarmMaxEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled         (1),
      enabled          (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable maximum total output current alarm generation."
   ::= { isxModularDistSysCurrent 10 }

isxModularDistSysCurrentTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistSysCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting the total system phase current information."
   ::= { isxModularDistSysCurrent 11 }

isxModularDistSysCurrentEntry OBJECT-TYPE
   SYNTAX IsxModularDistSysCurrentEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing data for an individual system output phase."
   INDEX { isxModularDistSysCurrentPhaseIndex }
   ::= { isxModularDistSysCurrentTable 1 }

IsxModularDistSysCurrentEntry ::=
   SEQUENCE {
      isxModularDistSysCurrentPhaseIndex     INTEGER,
      isxModularDistSysCurrentAlarmStatus    INTEGER,
      isxModularDistSysCurrentAmps           INTEGER,
      isxModularDistSysCurrentPercent        INTEGER
   }

isxModularDistSysCurrentPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER{
      phase1(1),
      phase2(2),
      phase3(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Description of each phase entry in the table."
   ::= { isxModularDistSysCurrentEntry 1 }

isxModularDistSysCurrentAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "This is a bit map representing the active alarms for this output phase:

           b0 - Minimum current threshold exceeded (critical)
           b1 - Low current threshold exceeded (warning)
           b2 - High current threshold exceeded (warning)
           b3 - Maximum current threshold exceeded (critical)

         If a bit is set, the corresponding alarm is active."
   ::= { isxModularDistSysCurrentEntry 2 }

isxModularDistSysCurrentAmps OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current flowing though this system output phase. Measured in tenths of amps."
   ::= { isxModularDistSysCurrentEntry 3 }

isxModularDistSysCurrentPercent OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The loading on this system output phase as a percentage of the panel current rating.
         Expressed in tenths of percent."
   ::= { isxModularDistSysCurrentEntry 4 }

-- Distribution System Total Output Power

isxModularDistSysPowerTotal OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total system power being supplied. Measured in tenths of kW."
   ::= { isxModularDistSysPower 1 }

isxModularDistSysPowerKwhUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The total system energy consumed by the load equipment.
         This is the total since the date specified in the isxModularDistSysOutputKwhResetDate
         OID, and may be cleared using the isxModularDistSysOutputKwhReset OID.
         Measured in tenths of kWh."
   ::= { isxModularDistSysPower 2 }

isxModularDistSysPowerKwhReset OBJECT-TYPE
   SYNTAX INTEGER {
      no  (1),
      yes (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "Writing yes to this OID will reset the total kWh usage shown
       in the isxModularDistSysPowerKwhUsage OID."
   ::= { isxModularDistSysPower 3 }

isxModularDistSysPowerKwhResetDate OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The date that the kWh usage was reset, in the format mm/dd/yyyy. Example: 01/01/2000."
   ::= { isxModularDistSysPower 4 }

isxModularDistSysPowerTable OBJECT-TYPE
   SYNTAX SEQUENCE OF IsxModularDistSysPowerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting the total system phase power loading information."
   ::= { isxModularDistSysPower 5 }

isxModularDistSysPowerEntry OBJECT-TYPE
   SYNTAX IsxModularDistSysPowerEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "An entry containing data for an individual system output phase."
   INDEX { isxModularDistSysPowerPhaseIndex }
   ::= { isxModularDistSysPowerTable 1 }

IsxModularDistSysPowerEntry ::=
   SEQUENCE {
      isxModularDistSysPowerPhaseIndex     INTEGER,
      isxModularDistSysPowerKw             INTEGER,
      isxModularDistSysPowerKwhPhaseUsage  INTEGER
   }

isxModularDistSysPowerPhaseIndex OBJECT-TYPE
   SYNTAX INTEGER{
      phase1(1),
      phase2(2),
      phase3(3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "Description of each phase entry in the table."
   ::= { isxModularDistSysPowerEntry 1 }

isxModularDistSysPowerKw OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The power being supplied by this system output phase. Measured in tenths of kW."
   ::= { isxModularDistSysPowerEntry 2 }

isxModularDistSysPowerKwhPhaseUsage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The energy consumed by the load equipment on this system output phase.
         This is the total since the date specified in the isxModularDistSysPowerKwhResetDate
         OID, and may be cleared using the isxModularDistSysPowerKwhReset OID.
         Measured in tenths of kWh."
   ::= { isxModularDistSysPowerEntry 3 }

--  the isxModularPduIdent group

isxModularPduIdentModelNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the model number of the PDU.
      This value is set at the factory."
   ::= { isxModularPduIdent 1 }

isxModularPduIdentSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of the PDU.
       This value is set at the factory."
   ::= { isxModularPduIdent 2 }

isxModularPduIdentDateOfManufacture OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The date when the PDU was manufactured in mm/dd/yyyy format.
       This value is set at the factory."
   ::= { isxModularPduIdent 3 }

isxModularPduIdentMonitorCardSerialNumber OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "A character string identifying the serial number of the PDU monitor card.
       This value is set at the factory."
   ::= { isxModularPduIdent 4 }

isxModularPduIdentMonitorCardHardwareRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The hardware revision of the PDU monitor card.
       This value is set at the factory."
   ::= { isxModularPduIdent 5 }

isxModularPduIdentMonitorCardFirmwareAppRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application firmware revision of the
      PDU monitor card."
   ::= {  isxModularPduIdent 6 }

isxModularPduIdentMonitorCardFirmwareAppOSRev OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "An ID string identifying the application operating system firmware revision of the
      PDU monitor card."
   ::= {  isxModularPduIdent 7 }

--  the isxModularPduDevice group

isxModularPduDeviceTransformerPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent      (1),
        isoXfmrPresent  (2),
        autoXfmrPresent (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates the type of transformer present in this PDU."
   ::= { isxModularPduDevice 1 }

isxModularPduDeviceServiceType OBJECT-TYPE
    SYNTAX INTEGER  {
        threeWire (1),
        fourWire  (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The type of utility input to the PDU. Either 3 wires (delta), or 4 wires (wye)."
   ::= { isxModularPduDevice 2 }

isxModularPduDeviceFansPresent OBJECT-TYPE
    SYNTAX INTEGER  {
        notPresent  (1),
        present     (2)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates whether or not cooling fans are installed in the PDU."
   ::= { isxModularPduDevice 3 }

isxModularPduDeviceNominalMainInputVoltage OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The nominal main input voltage to the system. Measured in Volts,
       line-to-line for a 3-wire (delta) service or line-to-neutral for a
       4-wire (wye) service. -1 if main input voltage is not being measured."
   ::= { isxModularPduDevice 4 }

isxModularPduAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      normal     (1),
      warning    (2),
      critical   (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The overall status (worst case) of this PDU."
   ::= { isxModularPduStatus 1 }

isxModularPduTransformerTempStatus OBJECT-TYPE
    SYNTAX INTEGER  {
        normal               (1),
        overtemp             (2),
        noTransformerPresent (3),
        unknown              (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates if the PDU isolation transformer is over temperature."
   ::= { isxModularPduStatus 2 }

isxModularPduFanStatus OBJECT-TYPE
    SYNTAX INTEGER  {
        normal                (1),
        failed                (2),
        noCoolingFansPresent  (3),
        unknown               (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "Indicates if one or more of the PDU's cooling fans have failed."
   ::= { isxModularPduStatus 3 }


-- Universal Input / Output (uio)

-- uio Sensor Status Table

uioSensorStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioSensorStatusTable."
   ::= { uioSensor 1 }

uioSensorStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting sensor status information."
   ::= { uioSensor 2 }

uioSensorStatusEntry OBJECT-TYPE
   SYNTAX UIOSensorStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit from which to get data."
   INDEX { uioSensorStatusPortID, uioSensorStatusSensorID }
   ::= { uioSensorStatusTable 1 }

UIOSensorStatusEntry ::=
   SEQUENCE {
      uioSensorStatusPortID             INTEGER,
      uioSensorStatusSensorID           INTEGER,
      uioSensorStatusSensorName         DisplayString,
      uioSensorStatusSensorLocation     DisplayString,
      uioSensorStatusTemperatureDegF    INTEGER,
      uioSensorStatusTemperatureDegC    INTEGER,
      uioSensorStatusHumidity           INTEGER,
      uioSensorStatusViolationStatus    INTEGER,
      uioSensorStatusAlarmStatus        INTEGER,
      uioSensorStatusCommStatus         INTEGER
   }

uioSensorStatusPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the sensor is attached."
   ::= { uioSensorStatusEntry 1 }

uioSensorStatusSensorID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the sensor."
   ::= { uioSensorStatusEntry 2 }

uioSensorStatusSensorName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor name."
   ::= { uioSensorStatusEntry 3 }

uioSensorStatusSensorLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the sensor."
   ::= { uioSensorStatusEntry 4 }

uioSensorStatusTemperatureDegF OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor's current temperature reading in degrees Fahrenheit.
         -1 indicates an invalid reading due to lost communications."
   ::= { uioSensorStatusEntry 5 }

uioSensorStatusTemperatureDegC OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor's current temperature reading in degrees Celsius.
         -1 indicates an invalid reading due to lost communications."
   ::= { uioSensorStatusEntry 6 }

uioSensorStatusHumidity OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The sensor's current humidity reading in percent relative
         humidity. -1 indicates an invalid reading due to either a
         sensor that doesn't read humidity or lost communications."
   ::= { uioSensorStatusEntry 7 }

uioSensorStatusViolationStatus OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
      "The violation status of the sensor.  This integer should be interpreted
       as a bit map, with each bit representing the presence or absence of
       the specific alarm conditions listed below.  The bit will be '1' if
       the condition is present, and '0' if the condition is not present.

       Bit  Hex. Value  Description
       1    0x0001      Maximum temperature exceeded.
       2    0x0002      High temperature exceeded.
       3    0x0004      Low temperature exceeded.
       4    0x0008      Minimum temperature exceeded.
       5    0x0010      Short-term increasing temperature rate exceeded (Not used).
       6    0x0020      Short-term decreasing temperature rate exceeded (Not used).
       7    0x0040      Long-term increasing temperature rate exceeded (Not used).
       8    0x0080      Long-term decreasing temperature rate exceeded (Not used).
       9    0x0100      Maximum humidity exceeded.
       10   0x0200      High humidity exceeded.
       11   0x0400      Low humidity exceeded.
       12   0x0800      Minimum humidity exceeded."
   ::= { uioSensorStatusEntry 8 }

uioSensorStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      uioNormal                 (1),
      uioWarning                (2),
      uioCritical               (3),
      sensorStatusNotApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the sensor."
   ::= { uioSensorStatusEntry 9 }

uioSensorStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled (1),
      commsOK      (2),
      commsLost    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The communications status of the sensor."
   ::= { uioSensorStatusEntry 10 }


-- uio Sensor Config Table

uioSensorConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioSensorConfigTable."
   ::= { uioSensor 3 }

uioSensorConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for configuring the sensor."
   ::= { uioSensor 4 }

uioSensorConfigEntry OBJECT-TYPE
   SYNTAX UIOSensorConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The sensor from which to get configuration."
   INDEX { uioSensorConfigPortID, uioSensorConfigSensorID }
   ::= { uioSensorConfigTable 1 }

UIOSensorConfigEntry ::=
   SEQUENCE {
      uioSensorConfigPortID                     INTEGER,
      uioSensorConfigSensorID                   INTEGER,
      uioSensorConfigSensorName                 DisplayString,
      uioSensorConfigSensorLocation             DisplayString,
      uioSensorConfigMinTemperatureThreshold    INTEGER,
      uioSensorConfigLowTemperatureThreshold    INTEGER,
      uioSensorConfigHighTemperatureThreshold   INTEGER,
      uioSensorConfigMaxTemperatureThreshold    INTEGER,
      uioSensorConfigTemperatureHysteresis      INTEGER,
      uioSensorConfigMinTemperatureEnable       INTEGER,
      uioSensorConfigLowTemperatureEnable       INTEGER,
      uioSensorConfigHighTemperatureEnable      INTEGER,
      uioSensorConfigMaxTemperatureEnable       INTEGER,
      uioSensorConfigMinHumidityThreshold       INTEGER,
      uioSensorConfigLowHumidityThreshold       INTEGER,
      uioSensorConfigHighHumidityThreshold      INTEGER,
      uioSensorConfigMaxHumidityThreshold       INTEGER,
      uioSensorConfigHumidityHysteresis         INTEGER,
      uioSensorConfigMinHumidityEnable          INTEGER,
      uioSensorConfigLowHumidityEnable          INTEGER,
      uioSensorConfigHighHumidityEnable         INTEGER,
      uioSensorConfigMaxHumidityEnable          INTEGER
   }

uioSensorConfigPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the sensor is attached."
   ::= { uioSensorConfigEntry 1 }

uioSensorConfigSensorID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the sensor."
   ::= { uioSensorConfigEntry 2 }

uioSensorConfigSensorName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The sensor name."
   ::= { uioSensorConfigEntry 3 }

uioSensorConfigSensorLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the sensor."
   ::= { uioSensorConfigEntry 4 }

uioSensorConfigMinTemperatureThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The minimum (critical) temperature alarm threshold for the
         probe in degrees C. Must be lower than the low threshold to
         ensure proper sensor alarm behavior."
   ::= { uioSensorConfigEntry 5 }

uioSensorConfigLowTemperatureThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The low (warning) temperature alarm threshold for the probe
         in degrees C. Must be higher than the minimum threshold and
         lower than the high threshold to ensure proper sensor alarm
         behavior."
   ::= { uioSensorConfigEntry 6 }

uioSensorConfigHighTemperatureThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The high (warning) temperature alarm threshold for the probe
         in degrees C. Must be lower than the maximum threshold and
         higher than the low threshold to ensure proper sensor alarm
         behavior."
   ::= { uioSensorConfigEntry 7 }

uioSensorConfigMaxTemperatureThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The maximum (critical) temperature alarm threshold for the
         probe in degrees C. Must be higher than the high threshold
         to ensure proper sensor alarm behavior."
   ::= { uioSensorConfigEntry 8 }

uioSensorConfigTemperatureHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of degrees C beyond the temperature thresholds at
       which an active temperature alarm will be cleared. This value
       applies to all temperature thresholds."
   ::= { uioSensorConfigEntry 9 }

uioSensorConfigMinTemperatureEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum temperature alarm enable/disable for the sensor.
       1 - disabled
       2 - enabled"
   ::= { uioSensorConfigEntry 10 }

uioSensorConfigLowTemperatureEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low temperature alarm enable/disable for the sensor.
       1 - disabled
       2 - enabled"
   ::= { uioSensorConfigEntry 11 }

uioSensorConfigHighTemperatureEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high temperature alarm enable/disable for the sensor.
       1 - disabled
       2 - enabled"
   ::= { uioSensorConfigEntry 12 }

uioSensorConfigMaxTemperatureEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum temperature alarm enable/disable for the sensor.
       1 - disabled
       2 - enabled"
   ::= { uioSensorConfigEntry 13 }

uioSensorConfigMinHumidityThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The minimum (critical) humidity alarm threshold for the
         probe in percent relative humidity. Must be lower than the
         low threshold to ensure proper sensor alarm behavior. -1 if
         the sensor doesn't read humidity."
   ::= { uioSensorConfigEntry 14 }

uioSensorConfigLowHumidityThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The low (warning) humidity alarm threshold for the probe in
         percent relative humidity. Must be higher than the minimum
         threshold and lower than the high threshold to ensure proper
         sensor alarm behavior. -1 if the sensor doesn't read
         humidity."
   ::= { uioSensorConfigEntry 15 }

uioSensorConfigHighHumidityThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The high (warning) humidity alarm threshold for the probe in
         percent relative humidity. Must be lower than the maximum
         threshold and higher than the low threshold to ensure proper
         sensor alarm behavior. -1 if the sensor doesn't read
         humidity."
   ::= { uioSensorConfigEntry 16 }

uioSensorConfigMaxHumidityThreshold OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The maximum (critical) humidity alarm threshold for the
         probe in percent relative humidity. Must be higher than the
         high threshold to ensure proper sensor alarm behavior. -1 if
         the sensor doesn't read humidity."
   ::= { uioSensorConfigEntry 17 }

uioSensorConfigHumidityHysteresis OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The number of percent relative humidity beyond the humidity
       thresholds at which an active humidity alarm will be cleared.
       This value applies to all humidity thresholds. -1 if the
       sensor doesn't read humidity."
   ::= { uioSensorConfigEntry 18 }

uioSensorConfigMinHumidityEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The minimum humidity alarm enable/disable for the sensor.
       1 - disabled (always set if the sensor doesn't read humidity)
       2 - enabled"
   ::= { uioSensorConfigEntry 19 }

uioSensorConfigLowHumidityEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The low humidity alarm enable/disable for the sensor.
       1 - disabled (always set if the sensor doesn't read humidity)
       2 - enabled"
   ::= { uioSensorConfigEntry 20 }

uioSensorConfigHighHumidityEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The high humidity alarm enable/disable for the sensor.
       1 - disabled (always set if the sensor doesn't read humidity)
       2 - enabled"
   ::= { uioSensorConfigEntry 21 }

uioSensorConfigMaxHumidityEnable OBJECT-TYPE
   SYNTAX INTEGER {
      disabled(1),
      enabled(2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
      "The maximum humidity alarm enable/disable for the sensor.
       1 - disabled (always set if the sensor doesn't read humidity)
       2 - enabled"
   ::= { uioSensorConfigEntry 22 }


-- uio Input Contact Status Table

uioInputContactStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioInputContactStatusTable."
   ::= { uioInputContact 1 }

uioInputContactStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting input contact status information."
   ::= { uioInputContact 2 }

uioInputContactStatusEntry OBJECT-TYPE
   SYNTAX UIOInputContactStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contact from which to get data."
   INDEX { uioInputContactStatusPortID, uioInputContactStatusContactID }
   ::= { uioInputContactStatusTable 1 }

UIOInputContactStatusEntry ::=
   SEQUENCE {
      uioInputContactStatusPortID                 INTEGER,
      uioInputContactStatusContactID              INTEGER,
      uioInputContactStatusContactName            DisplayString,
      uioInputContactStatusContactLocation        DisplayString,
      uioInputContactStatusCurrentState           INTEGER,
      uioInputContactStatusAlarmStatus            INTEGER,
      uioInputContactStatusCommStatus             INTEGER
   }

uioInputContactStatusPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the input contact is attached."
   ::= { uioInputContactStatusEntry 1 }

uioInputContactStatusContactID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the input contact on the module."
   ::= { uioInputContactStatusEntry 2 }

uioInputContactStatusContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The input contact name."
   ::= { uioInputContactStatusEntry 3 }

uioInputContactStatusContactLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the input contact."
   ::= { uioInputContactStatusEntry 4 }

uioInputContactStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      uioInputClosed             (1),
      uioInputOpen               (2),
      uioInputDisabled           (3),
      inputStateNotApplicable    (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current state of the input contact. "
   ::= { uioInputContactStatusEntry 5 }

uioInputContactStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      uioNormal                (1),
      uioWarning               (2),
      uioCritical              (3),
      inputStatusNotApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the input contact."
   ::= { uioInputContactStatusEntry 6 }

uioInputContactStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled  (1),
      commsOK       (2),
      commsLost     (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The communications status of the input contact."
   ::= { uioInputContactStatusEntry 7 }


-- uio Input Contact Config Table

uioInputContactConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioInputContactConfigTable."
   ::= { uioInputContact 3 }

uioInputContactConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for configuring the input contacts."
   ::= { uioInputContact 4 }

uioInputContactConfigEntry OBJECT-TYPE
   SYNTAX UIOInputContactConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The input contact from which to get configuration."
   INDEX { uioInputContactConfigPortID, uioInputContactConfigContactID }
   ::= { uioInputContactConfigTable 1 }

UIOInputContactConfigEntry ::=
   SEQUENCE {
      uioInputContactConfigPortID                 INTEGER,
      uioInputContactConfigContactID              INTEGER,
      uioInputContactConfigContactName            DisplayString,
      uioInputContactConfigContactLocation        DisplayString,
      uioInputContactConfigEnable                 INTEGER,
      uioInputContactConfigNormalState            INTEGER,
      uioInputContactConfigSeverity               INTEGER
   }

uioInputContactConfigPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the input contact is attached."
   ::= { uioInputContactConfigEntry 1 }

uioInputContactConfigContactID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the input contact on the module."
   ::= { uioInputContactConfigEntry 2 }

uioInputContactConfigContactName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The input contact name."
   ::= { uioInputContactConfigEntry 3 }

uioInputContactConfigContactLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the input contact."
   ::= { uioInputContactConfigEntry 4 }

uioInputContactConfigEnable OBJECT-TYPE
   SYNTAX INTEGER {
      uioInputContactDisabled   (1),
      uioInputContactEnabled    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Enable or disable this input contact.
         1 - disabled
         2 - enabled"
   ::= { uioInputContactConfigEntry 5 }

uioInputContactConfigNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      uioInputNormallyOpen      (1),
      uioInputNormallyClosed    (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The normal (non-alarm) state of the input contact.
         1 - normally open
         2 - normally closed"
   ::= { uioInputContactConfigEntry 6 }

uioInputContactConfigSeverity OBJECT-TYPE
   SYNTAX INTEGER {
      uioInputCriticalSeverity  (1),
      uioInputWarningSeverity   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The severity of the alarm that this input contact will
         generate in the abnormal state.
         1 - critical severity
         2 - warning severity"
   ::= { uioInputContactConfigEntry 7 }


-- uio Output Relay Status Table

uioOutputRelayStatusTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioOutputRelayStatusTable."
   ::= { uioOutputRelay 1 }

uioOutputRelayStatusTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for getting output relay status information."
   ::= { uioOutputRelay 2 }

uioOutputRelayStatusEntry OBJECT-TYPE
   SYNTAX UIOOutputRelayStatusEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit from which to get data."
   INDEX { uioOutputRelayStatusPortID, uioOutputRelayStatusRelayID }
   ::= { uioOutputRelayStatusTable 1 }

UIOOutputRelayStatusEntry ::=
   SEQUENCE {
      uioOutputRelayStatusPortID                 INTEGER,
      uioOutputRelayStatusRelayID                INTEGER,
      uioOutputRelayStatusRelayName              DisplayString,
      uioOutputRelayStatusRelayLocation          DisplayString,
      uioOutputRelayStatusCurrentState           INTEGER,
      uioOutputRelayStatusAlarmStatus            INTEGER,
      uioOutputRelayStatusCommStatus             INTEGER
   }

uioOutputRelayStatusPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the output relay is attached."
   ::= { uioOutputRelayStatusEntry 1 }

uioOutputRelayStatusRelayID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the output relay on the module."
   ::= { uioOutputRelayStatusEntry 2 }

uioOutputRelayStatusRelayName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The output relay name."
   ::= { uioOutputRelayStatusEntry 3 }

uioOutputRelayStatusRelayLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The location of the output relay."
   ::= { uioOutputRelayStatusEntry 4 }

uioOutputRelayStatusCurrentState OBJECT-TYPE
   SYNTAX INTEGER {
      uioOutputClosed           (1),
      uioOutputOpen             (2),
      outputStateNotApplicable  (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The current state of the output relay."
   ::= { uioOutputRelayStatusEntry 5 }

uioOutputRelayStatusAlarmStatus OBJECT-TYPE
   SYNTAX INTEGER {
      uioNormal                (1),
      uioWarning               (2),
      uioCritical              (3),
      inputStatusNotApplicable (4)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The alarm status of the output relay."
   ::= { uioOutputRelayStatusEntry 6 }

uioOutputRelayStatusCommStatus OBJECT-TYPE
   SYNTAX INTEGER {
      notInstalled (1),
      commsOK      (2),
      commsLost    (3)
   }
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The communications status of the output relay."
   ::= { uioOutputRelayStatusEntry 7 }


-- uio Output Relay Config Table

uioOutputRelayConfigTableSize OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
       "The number of entries in the uioOutputRelayConfigTable."
   ::= { uioOutputRelay 3 }

uioOutputRelayConfigTable OBJECT-TYPE
   SYNTAX SEQUENCE OF UIOOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
       "Allows for configuring the output relay."
   ::= { uioOutputRelay 4 }

uioOutputRelayConfigEntry OBJECT-TYPE
   SYNTAX UIOOutputRelayConfigEntry
   ACCESS not-accessible
   STATUS mandatory
   DESCRIPTION
      "The unit from which to get configuration."
   INDEX { uioOutputRelayConfigPortID, uioOutputRelayConfigRelayID }
   ::= { uioOutputRelayConfigTable 1 }

UIOOutputRelayConfigEntry ::=
   SEQUENCE {
      uioOutputRelayConfigPortID                 INTEGER,
      uioOutputRelayConfigRelayID                INTEGER,
      uioOutputRelayConfigRelayName              DisplayString,
      uioOutputRelayConfigRelayLocation          DisplayString,
      uioOutputRelayConfigNormalState            INTEGER,
      uioOutputRelayConfigControlState           INTEGER,
      uioOutputRelayConfigDelay                  TimeTicks,
      uioOutputRelayConfigHold                   TimeTicks
   }

uioOutputRelayConfigPortID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the port to which the output relay is attached."
   ::= { uioOutputRelayConfigEntry 1 }

uioOutputRelayConfigRelayID OBJECT-TYPE
   SYNTAX INTEGER
   ACCESS read-only
   STATUS mandatory
   DESCRIPTION
        "The ID of the output relay on the module."
   ::= { uioOutputRelayConfigEntry 2 }

uioOutputRelayConfigRelayName OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The output relay name."
   ::= { uioOutputRelayConfigEntry 3 }

uioOutputRelayConfigRelayLocation OBJECT-TYPE
   SYNTAX DisplayString
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The location of the output relay."
   ::= { uioOutputRelayConfigEntry 4 }

uioOutputRelayConfigNormalState OBJECT-TYPE
   SYNTAX INTEGER {
      uioOutputNormallyOpen     (1),
      uioOutputNormallyClosed   (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The normal state of the output relay.
         1 - normally open
         2 - normally closed"
   ::= { uioOutputRelayConfigEntry 5 }

uioOutputRelayConfigControlState OBJECT-TYPE
   SYNTAX INTEGER {
      uioOutputClose           (1),
      uioOutputOpen            (2)
   }
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "Close or open the output relay for testing purposes. Always
         returns 1 when read.
         1 - close output relay
         2 - open output relay"
   ::= { uioOutputRelayConfigEntry 6 }

uioOutputRelayConfigDelay OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The time a selected alarm condition must exist before the
         output relay is activated. Valid values are whole seconds
         from 0 to 65535."
   ::= { uioOutputRelayConfigEntry 7 }

uioOutputRelayConfigHold OBJECT-TYPE
   SYNTAX TimeTicks
   ACCESS read-write
   STATUS mandatory
   DESCRIPTION
        "The minimum time the output relay remains activated after the
         alarm occurs. Valid values are whole seconds from 0 to 65535."
   ::= { uioOutputRelayConfigEntry 8 }


-- Traps
-- Annotations are provided for Novell's NMS product
--
-- Each trap has at least one variable (mtrapargsString) which always appears
-- as the last variable in the list. This variable contains either a static
-- or dynamically-constructed string which provides an enhanced description of
-- the trap's purpose and any pertinent information about the trap.

communicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "SEVERE: Communication to the UPS has been lost.  Steps
        to reestablish communication are in progress."
   --#TYPE "APC UPS: Communication lost"
   --#SUMMARY "Communication lost between the agent and the UPS."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 1

upsOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The UPS has sensed a load greater than 100 percent
       of its rated capacity."
   --#TYPE "APC UPS: Overload"
   --#SUMMARY "The UPS has sensed a load greater than 100 percent of its rated capacity."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 2

upsDiagnosticsFailed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The UPS failed its internal diagnostic self-test."
   --#TYPE "APC UPS: Failed self-test"
   --#SUMMARY "The UPS has failed its internal self-test."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 3

upsDischarged TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The UPS batteries are discharged; if utility power fails
       an immediate low battery condition will exist.  Sufficient runtime
       for necessary action cannot be guaranteed."
   --#TYPE "APC UPS: batteries are discharged"
   --#SUMMARY "The UPS batteries are discharged."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 4

upsOnBattery TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS has switched to battery backup power."
   --#TYPE "APC UPS: On battery"
   --#SUMMARY "The UPS has switched to battery backup power."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 5

smartBoostOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS has enabled SmartBoost(TM)."
   --#TYPE "APC UPS: SmartBoost(TM)"
   --#SUMMARY "The UPS has enabled SmartBoost(TM); low incoming line voltage."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 6

lowBattery TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The UPS batteries are low and will soon be exhausted.
       If utility power is not restored the UPS will put itself
       to 'sleep' and immediately cut power to the load."
   --#TYPE "APC UPS: Low battery"
   --#SUMMARY "The UPS system's batteries are low and will soon be exhausted."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 7

communicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication with the UPS has been established."
   --#TYPE "APC UPS: Communication established"
   --#SUMMARY "UPS communication has been established."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 8

powerRestored TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Utility power has been restored."
   --#TYPE "APC UPS: Utility power restored"
   --#SUMMARY "Returned from battery backup power; utility power restored."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 9

upsDiagnosticsPassed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS passed its internal self-test."
   --#TYPE "APC UPS: Passed self-test"
   --#SUMMARY "The UPS passed internal self-test."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 10

returnFromLowBattery TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS has returned from a low battery
       condition."
   --#TYPE "APC UPS: Returned from Low-Battery condition"
   --#SUMMARY "The UPS has returned from a Low-Battery condition."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 11

upsTurnedOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS has been turned 'off' by the management station."
   --#TYPE "APC UPS: Turned off"
   --#SUMMARY "The UPS has been switched off by a management station."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 12

upsSleeping   TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS is entering 'sleep' mode.  Power
       to the load will be cut off."
   --#TYPE "APC UPS: Entered sleep mode"
   --#SUMMARY "The UPS entered sleep mode. Power to the load will be cut off."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 13

upsWokeUp TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATION: The UPS has returned from 'sleep' mode.  Power
       to the load has been restored."
   --#TYPE "APC UPS: Wake up"
   --#SUMMARY "The UPS has returned from sleep mode. Power to the load has been restored."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 14

upsRebootStarted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS has started its reboot sequence.
       The UPS will reboot itself at this time."
   --#TYPE "APC UPS: Starting reboot"
   --#SUMMARY "The UPS has started its reboot sequence."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 15

upsDipSwitchChanged TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The dip switch settings on the UPS have been
       changed, possibly altering UPS performance."
   --#TYPE "APC UPS: DIP switch altered"
   --#SUMMARY "The DIP switch settings on the UPS have been changed."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 16

upsBatteryNeedsReplacement TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The batteries of the UPS need immediate replacement."
   --#TYPE "APC UPS: UPS batteries need replacement"
   --#SUMMARY "The UPS batteries require immediate replacement."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 17


-- the Environmental Monitor traps

contactFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: One of the contacts on the Environmental Monitor has
       changed from its default position. The first variable is
       the contact number that is faulted."
   --#TYPE "APC Environment: Contact fault"
   --#SUMMARY "An Environment contact closure has faulted."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 18

contactFaultResolved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A fault on one of the Environmental Monitor contacts
       has been resolved. The first variable is
       the contact number that has been resolved."
   --#TYPE "APC Environment: Contact fault cleared."
   --#SUMMARY "A Environment contact closure has returned to it's default state."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 19

-- the Matrix-UPS traps

hardwareFailureBypass TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: UPS on bypass due to internal fault"
   --#TYPE "APC UPS: On bypass due to internal fault"
   --#SUMMARY "The UPS is on bypass due to an internal fault."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 20

softwareBypass TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: UPS on bypass - user set via software or panel"
   --#TYPE "APC UPS: On bypass by user via software or panel"
   --#SUMMARY "UPS put on bypass by user via software or front UPS panel."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 21

switchedBypass TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: UPS on bypass - initiated by user"
   --#TYPE "APC UPS: On bypass initiated by user"
   --#SUMMARY "UPS put on bypass by user."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 22

returnFromBypass TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS has returned from bypass"
   --#TYPE "APC UPS: UPS has returned from bypass"
   --#SUMMARY "The UPS has returned from bypass mode."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 23

bypassPowerSupplyFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Base module bypass power supply needs repair"
   --#TYPE "APC UPS: Base module bypass power supply needs repair"
   --#SUMMARY "The base module bypass power supply needs repair."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 24

baseFanFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Base module fan needs repair"
   --#TYPE "APC UPS: Base module fan needs repair"
   --#SUMMARY "The base module fan needs repair."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 25

batteryPackCommLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Check installation of external battery packs signal cable"
   --#TYPE "APC UPS: Communication lost with battery packs"
   --#SUMMARY "Communication lost with external battery packs, check battery signal cable."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 26

batteryPackCommEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS is communicating with the external battery packs."
   --#TYPE "APC UPS: Communication established with battery packs"
   --#SUMMARY "Communication established with external battery packs."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 27

calibrationStart TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A battery calibration test has been initiated on the UPS."
   --#TYPE "APC UPS: Calibration initiated"
   --#SUMMARY "A battery run time calibration test has been initiated."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 28

-- Misc. Traps

restartAgent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Agent restarting as commanded by manager."
   --#TYPE "APC SNMP Agent: Agent restarting"
   --#SUMMARY "Agent restarting as commanded by manager."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 29

upsTurnedOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS is turned on."
   --#TYPE "APC UPS: A UPS is turned on."
   --#SUMMARY " A UPS is turned on."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 30

smartAvrReducing TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The UPS is reducing the line voltage via SmartTrim(TM)."
   --#TYPE "APC UPS: SmartTrim(TM) reducing"
   --#SUMMARY "The UPS has enabled SmartTrim(TM) voltage reduction."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 31

codeAuthenticationDone TRAP-TYPE
   ENTERPRISE apc
   VARIABLES   { mconfigTFTPServerIP, newCodeAuthentViaTFTP }
   DESCRIPTION
      "INFORMATIONAL: Authentication on agent code image is done."
   --#TYPE "APC CODE: Authentication on agent code image is done."
   --#SUMMARY "Authentication on agent code image is done."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 32

upsOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The overload condition has been cleared."
   --#TYPE "APC UPS: Overload cleared."
   --#SUMMARY "The overload condition has been cleared. ."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 33

smartBoostOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS has returned from SmartBoost(TM)."
   --#TYPE "APC UPS: SmartBoost(TM) off."
   --#SUMMARY "The UPS has returned from SmartBoost(TM)."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 34

smartAvrReducingOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS has returned from SmartTrim(TM)."
   --#TYPE "APC UPS: SmartTrim(TM) reducing off"
   --#SUMMARY "The UPS has returned from SmartTrim(TM) voltage reduction."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 35

upsBatteryReplaced TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A bad battery fault has been cleared."
   --#TYPE "APC UPS: Bad battery replaced"
   --#SUMMARY "The UPS has returned from a bad battery fault."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 36

calibrationEnd TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS has finished calibrating."
   --#TYPE "APC UPS: Calibration end"
   --#SUMMARY "The UPS has finished calibrating"
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 37

dischargeCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS discharge condition has been cleared."
   --#TYPE "APC UPS: Discharge cleared."
   --#SUMMARY "The UPS discharge condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 38

gracefulShutdown TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A graceful shutdown has been initiated."
   --#TYPE "APC UPS: A graceful shutdown has been initiated."
   --#SUMMARY "A graceful shutdown has been initiated."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 39


outletOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUOutletControlIndex }
   DESCRIPTION
       "WARNING: The specified PDU outlet has turned on.
       If sPDUOutletControlIndex equals zero, then all outlets have
       turned on."
   --#TYPE "APC PDU: Outlet has been turned on."
   --#SUMMARY "Outlet has been turned on"
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 41


outletOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUOutletControlIndex }
   DESCRIPTION
       "WARNING: The specified PDU outlet has turned off.
       If sPDUOutletControlIndex equals zero, then all outlets
       have turned off."
   --#TYPE "APC PDU: Outlet has turned off."
   --#SUMMARY "Outlet has turned off."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 42

outletReboot TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUOutletControlIndex }
   DESCRIPTION
       "WARNING: The specified PDU outlet has rebooted.
       If sPDUOutletControlIndex equals zero, then all outlets
       have rebooted."
   --#TYPE "APC PDU: Outlet has rebooted."
   --#SUMMARY "Outlet has rebooted."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 43

configChangeSNMP TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The SNMP configuration has been changed."
   --#TYPE "APC: The SNMP configuration has been changed."
   --#SUMMARY "The SNMP configuration has been changed."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 44


configChangeOutlet TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUOutletConfigIndex }
   DESCRIPTION
       "WARNING: The specified PDU outlet has changed configuration.
       If sPDUOutletConfigIndex equals zero, then the Master outlet
       has changed configuration."
   --#TYPE "APC PDU: Outlet configuration has been changed."
   --#SUMMARY "Outlet configuration has been changed."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 45

accessViolationConsole TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: Someone has attempted to login via the console with the incorrect password."
   --#TYPE "APC: Access violation via the console."
   --#SUMMARY "Three unsuccessful logins have been attempted via the console."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 46

accessViolationHTTP TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: Someone has attempted to login via HTTP with the incorrect password."
   --#TYPE "APC: Access violation via HTTP."
   --#SUMMARY "An unsuccessful attempt to login via HTTP."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 47

passwordChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The password for the device has been changed."
   --#TYPE "APC: Password change for the device."
   --#SUMMARY "Someone has changed the password on the device."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 48

badVoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The output voltage is not within acceptable range."
   --#TYPE "APC UPS: Bad output voltage."
   --#SUMMARY "The output voltage is not within acceptable range."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 49

badVoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The output voltage has returned to an acceptable level."
   --#TYPE "APC UPS: The bad voltage output condition has been cleared."
   --#SUMMARY "The output voltage has returned to an acceptable level."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 50

chargerFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The battery charger has failed."
   --#TYPE "APC UPS: The battery charger has failed."
   --#SUMMARY "The battery charger has failed."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 51

chargerFailureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The battery charger failure condition has been cleared."
   --#TYPE "APC UPS: The battery charger failure condition cleared"
   --#SUMMARY "The battery charger failure condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 52

batteryOverTemperature TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The battery temperature threshold has been violated."
   --#TYPE "APC UPS: The battery temperature threshold has been violated."
   --#SUMMARY "The battery temperature threshold has been violated."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 53

batteryOverTemperatureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The battery over temperature has been cleared."
   --#TYPE "APC UPS: The battery over temperature has been cleared."
   --#SUMMARY "The battery over temperature has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 54

 smartRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: SmartBoost(TM) or SmartTrim(TM) relay fault."
   --#TYPE "APC UPS: SmartBoost(TM) or SmartTrim(TM) relay fault."
   --#SUMMARY "SmartBoost(TM) or SmartTrim(TM) relay fault."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 55

smartRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: SmartBoost(TM) or SmartTrim(TM) relay fault has been cleared."
   --#TYPE "APC UPS: SmartBoost(TM) or SmartTrim(TM) relay fault cleared."
   --#SUMMARY "SmartBoost(TM) or SmartTrim(TM) relay fault has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 56

humidityThresholdViolation1 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "SEVERE: Probe 1 humidity threshold violated. The
       first variable is the current humidity."
   --#TYPE "APC Environmental Monitor: Probe 1 humidity threshold violation"
   --#SUMMARY "A humidity threshold has been violated on probe 1."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 57

humidityThresholdViolationCleared1 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Environmental Monitor humidity threshold violation has been cleared on probe 1."
   --#TYPE "APC Environmental Monitor: Probe 1 humidity violation cleared"
   --#SUMMARY "A humidity threshold violation has been cleared on probe 1."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 58

temperatureThresholdViolation1 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An Environmental Monitor temperature threshold has been violated on probe 1.
      The first variable is the current temperature."
   --#TYPE "APC Environmental Monitor: Probe 1 temperature violation"
   --#SUMMARY "A temperature threshold has been violated on probe 1."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 59

temperatureThresholdViolationCleared1 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Environmental Monitor temperature threshold violation has been cleared on probe 1."
   --#TYPE "APC Environmental Monitor: Probe 1 temperature violation cleared"
   --#SUMMARY "A temperature threshold violation has been cleared on probe 1."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 60

humidityThresholdViolation2 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An Environmental Monitor humidity threshold has been violated on probe 2.
      The first variable is the current humidity."
   --#TYPE "APC Environmental Monitor: Probe 2 humidity violation"
   --#SUMMARY "A humidity threshold has been violated on probe 2."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 61

humidityThresholdViolationCleared2 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Environmental Monitor humidity threshold violation has been cleared on probe 2."
   --#TYPE "APC Environmental Monitor: Probe 2 humidity violation cleared"
   --#SUMMARY "A humidity threshold violation has been cleared on probe 2."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 62

temperatureThresholdViolation2 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An Environmental Monitor temperature threshold has been violated on probe 2.
       The first variable is the current temperature."
   --#TYPE "APC Environmental Monitor: Probe 2 temperature violation"
   --#SUMMARY "A temperature threshold has been violated on probe 2."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 63

temperatureThresholdViolationCleared2 TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Environmental Monitor temperature threshold violation has been cleared on probe 2."
   --#TYPE "APC Environmental Monitor: Probe 2 temperature violation cleared"
   --#SUMMARY "A temperature threshold violation has been cleared on probe 2."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 64

mupsCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication with the Environmental Monitor has been established."
   --#TYPE "APC Environmental Monitor: Communication established"
   --#SUMMARY "Communication established between the agent and the Environmental Monitor."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 65

mupsCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "SEVERE: Communication to the Environmental Monitor has been lost.  Steps
        to reestablish communication are in progress."
   --#TYPE "APC Environmental Monitor: Communication failure"
   --#SUMMARY "Communication lost between the agent and the Environmental Monitor."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 66

batteryIncrease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of batteries has increased."
   --#TYPE "APC UPS: The number of batteries has increased."
   --#SUMMARY "The number of batteries has increased."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 67

batteryDecrease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of batteries has decreased."
   --#TYPE "APC UPS: The number of batteries has decreased."
   --#SUMMARY "The number of batteries has decreased."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 68

powerModuleIncrease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of power modules has increased."
   --#TYPE "APC UPS: The number of power modules has increased."
   --#SUMMARY "The number of power modules has increased."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 69

powerModuleDecrease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of power modules has decreased."
   --#TYPE "APC UPS: The number of power modules has decreased."
   --#SUMMARY "The number of power modules has decreased."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 70

intelligenceModuleInserted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An intelligence module has been inserted."
   --#TYPE "APC UPS: An intelligence module has been inserted."
   --#SUMMARY "An intelligence module has been inserted."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 71

intelligenceModuleRemoved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An intelligence module has been removed."
   --#TYPE "APC UPS: An intelligence module has been removed."
   --#SUMMARY "An intelligence module has been removed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 72

rintelligenceModuleInserted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A redundant intelligence module has been inserted."
   --#TYPE "APC UPS: A redundant intelligence module has been inserted."
   --#SUMMARY "A redundant intelligence module has been inserted."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 73

rintelligenceModuleRemoved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A redundant intelligence module has been removed."
   --#TYPE "APC UPS: A redundant intelligence module has been removed."
   --#SUMMARY "A redundant intelligence module has been removed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 74

extBatteryFrameIncease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An external battery frame has been added."
   --#TYPE "APC UPS: An external battery frame has been added."
   --#SUMMARY "An external battery frame has been added."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 75

extBatteryFrameDecrease TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An external battery frame has been removed."
   --#TYPE "APC UPS: An external battery frame has been removed."
   --#SUMMARY "An external battery frame has been removed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 76

abnormalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An abnormal condition has been detected.
       The first variable is the fault condition."
   --#TYPE "APC: An abnormal condition has been detected."
   --#SUMMARY "An abnormal condition has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 77

abnormalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An abnormal condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "APC: An abnormal condition has been cleared."
   --#SUMMARY "An abnormal condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 78

deviceStatusChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: The status of the device being monitored has changed."
   --#TYPE "APC : The status of the device being monitored has changed."
   --#SUMMARY "The status of the device being monitored has changed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 79

noBatteries TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The UPS has no batteries attached."
   --#TYPE "APC UPS: No batteries attached."
   --#SUMMARY "The UPS has no batteries attached."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 80

noBatteriesCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS's batteries have been attached."
   --#TYPE "APC UPS: The no batteries attached condition has been cleared."
   --#SUMMARY "The UPS's batteries have been attached."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 81

userAdded TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A new user has been added."
   --#TYPE "APC: A new user has been added."
   --#SUMMARY "A new user has been added."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 82

userDeleted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A user has been deleted."
   --#TYPE "APC: A user has been deleted."
   --#SUMMARY "A user has been deleted."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 83

userModified TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A user has been modified."
   --#TYPE "APC: A user has been modified."
   --#SUMMARY "A user has been modified."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 84

-- MasterSwitch Vm Traps

msvmCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communications with the MasterSwitch VM has been established."
   --#TYPE "APC: Communications established with the MasterSwitch VM."
   --#SUMMARY "Communications with the MasterSwitch VM has been established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 85

msvmCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communications with the MasterSwitch VM has been lost."
   --#TYPE "APC: Communications lost with the MasterSwitch VM."
   --#SUMMARY "Communications with the MasterSwitch VM has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 86

msvmOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The MasterSwitch VM in an overload condition."
   --#TYPE "APC: The MasterSwitch VM is near or at an overload condition."
   --#SUMMARY "The MasterSwitch VM is near or at an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 87

msvmOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The overload condition on the MasterSwitch VM has been cleared."
   --#TYPE "APC: The overload condition cleared on the MasterSwitch VM."
   --#SUMMARY "The overload condition on the MasterSwitch VM has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 88

msvmOutletOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName,
               sPDUOutletControlVMOutletIndex, sPDUOutletControlVMOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the MasterSwitch VM has turned on."
   --#TYPE "APC: An outlet on the MasterSwitch VM has turned on."
   --#SUMMARY "An outlet on the MasterSwitch VM has turned on."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 89

msvmOutletOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName,
               sPDUOutletControlVMOutletIndex, sPDUOutletControlVMOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the MasterSwitch VM has turned off."
   --#TYPE "APC: An outlet on the MasterSwitch VM has turned off."
   --#SUMMARY "An outlet on the MasterSwitch VM has turned off."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 90

msvmDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device configuration change has been made on a MasterSwitch VM."
   --#TYPE "APC: A device configuration change on a MasterSwitch VM."
   --#SUMMARY "A device configuration change has been made on a MasterSwitch VM."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 91

msvmOutletConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName,
               sPDUOutletControlVMOutletIndex, sPDUOutletControlVMOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet configuration change has been made on a MasterSwitch VM."
   --#TYPE "APC: An outlet configuration change on a MasterSwitch VM."
   --#SUMMARY "An outlet configuration change has been made on a MasterSwitch VM."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 92

msvmLowLoad TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The MasterSwitch VM has violated the low load threshold."
   --#TYPE "APC: The MasterSwitch VM has violated the low load threshold."
   --#SUMMARY "The MasterSwitch VM has violated the low load threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 93

msvmLowLoadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The low load condition on the MasterSwitch VM has been cleared."
   --#TYPE "APC: The low load condition cleared on the MasterSwitch VM."
   --#SUMMARY "The low load condition on the MasterSwitch VM has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 94

msvmNearOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The MasterSwitch VM is approaching an overload condition."
   --#TYPE "APC: The MasterSwitch VM is near or at an overload condition."
   --#SUMMARY "The MasterSwitch VM is near or at an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 95

msvmNearOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The near overload condition on the MasterSwitch VM has been cleared."
   --#TYPE "APC: The overload condition cleared on the MasterSwitch VM."
   --#SUMMARY "The overload condition on the MasterSwitch VM has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 96

msvmPowerSupplyStatusChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlVMIndex, sPDUMasterControlVMName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The power supply status of the MasterSwitch VM has changed."
   --#TYPE "APC: The power supply status changed on MasterSwitch VM"
   --#SUMMARY "The power supply status of the MasterSwitch VM has changed."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 97

-- MasterSwitch plus (MSP) Traps

mspCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communications with the MasterSwitch plus has been established."
   --#TYPE "APC: Communications established with the MasterSwitch plus."
   --#SUMMARY "Communications with the MasterSwitch plus has been established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 98

mspCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communications with the MasterSwitch plus has been lost."
   --#TYPE "APC: Communications lost with the MasterSwitch plus."
   --#SUMMARY "Communications with the MasterSwitch plus has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 99

mspOutletOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName,
               sPDUOutletControlMSPOutletIndex, sPDUOutletControlMSPOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the MasterSwitch plus has turned on."
   --#TYPE "APC: An outlet on the MasterSwitch plus has turned on."
   --#SUMMARY "An outlet on the MasterSwitch plus has turned on."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 100

mspOutletOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName,
               sPDUOutletControlMSPOutletIndex, sPDUOutletControlMSPOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the MasterSwitch plus has turned off."
   --#TYPE "APC: An outlet on the MasterSwitch plus has turned off."
   --#SUMMARY "An outlet on the MasterSwitch plus has turned off."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 101

mspDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device configuration change has been made on a MasterSwitch plus."
   --#TYPE "APC: A device configuration change on a MasterSwitch plus."
   --#SUMMARY "A device configuration change has been made on a MasterSwitch plus."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 102

mspOutletConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { sPDUMasterControlMSPIndex, sPDUMasterControlMSPName, sPDUOutletControlMSPOutletIndex, sPDUOutletControlMSPOutletName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet configuration change has been made on a MasterSwitch plus."
   --#TYPE "APC: An outlet configuration change on a MasterSwitch plus."
   --#SUMMARY "An outlet configuration change has been made on a MasterSwitch plus."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 103

rsSourceSwitched TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger02, mtrapargsString03, mtrapargsInteger, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The Redundant Switch has switched source.
       The first variable is an integer representing the current source: 0=A, 1=B.
       The second variable is the 32-character name of the current source.
       The third variable is an integer representing the transfer cause:
        0=No Transfers Recorded, 1=Due to user action or preferred switching,
        3=Due to line notch or spike, 5=Due to low line voltage,
        7=Transfer due to high line voltage,
        9=Transfer due to frequency out of range.
       The fourth variable is a character string listing the transfer cause."
   --#TYPE "APC Redundant Switch: The Redundant Switch has switched source"
   --#SUMMARY "The Redundant Switch has switched source."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 104

rsLostRedundancy TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The Redundant Switch has lost redundancy.
       The first variable is an integer representing the source which is no longer available: 0=A, 1=B.
       The second variable is the 32-character name of the source which is no longer available."
   --#TYPE "APC Redundant Switch: The Redundant Switch has lost redundancy"
   --#SUMMARY "The Redundant Switch has lost redundancy."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 105

rsRedundancyRestored TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString02,  mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Redundancy has been restored to the Redundant Switch .
       The first variable is an integer representing the source which has been restored: 0=A, 1=B.
       The second variable is the 32-character name of the source which has been restored."
   --#TYPE "APC Redundant Switch: Redundancy has been restored."
   --#SUMMARY "Redundancy has been restored to the Redundant Switch ."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 106

rsConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A configuration change has been made on a Redundant Switch."
   --#TYPE "APC: A configuration change on a Redundant Switch."
   --#SUMMARY "A configuration change has been made on a Redundant Switch."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 107

rsCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communications with the Redundant Switch has been established."
   --#TYPE "APC: Communications established with the Redundant Switch."
   --#SUMMARY "Communications with the Redundant Switch has been established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 108

rsCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Communications with the Redundant Switch has been lost."
   --#TYPE "APC: Communications lost with the Redundant Switch."
   --#SUMMARY "Communications with the Redundant Switch has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 109

dcCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communications with the DC power plant has been established."
   --#TYPE "APC: Communications established with the DC power plant."
   --#SUMMARY "Communications with the DC power plant has been established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 110

dcCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Communications with the DC power plant has been lost."
   --#TYPE "APC: Communications lost with the DC power plant."
   --#SUMMARY "Communications with the DC power plant has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 111

dcPINChanged TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The active PIN on the DC controller has been changed."
   --#TYPE "APC: The active PIN on the DC controller has been changed."
   --#SUMMARY "The active PIN on the DC controller has been changed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 112

dcMajorAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: A Major alarm is active in the DC power plant."
   --#TYPE "APC: A Major alarm is active in the DC power plant."
   --#SUMMARY "A Major alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 113

dcMajorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Major alarm is no longer active in the DC power plant."
   --#TYPE "APC: A Major alarm is no longer active in the DC power plant."
   --#SUMMARY "A Major alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 114

dcMinorAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Minor alarm is active in the DC power plant."
   --#TYPE "APC: A Minor alarm is active in the DC power plant."
   --#SUMMARY "A Minor alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 115

dcMinorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Minor alarm is no longer active in the DC power plant."
   --#TYPE "APC: A Minor alarm is no longer active in the DC power plant."
   --#SUMMARY "A Minor alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 116

dcOutputRelayOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES {  dm3StatusOutRlyIndex, dm3StatusOutRlyName, mtrapargsString }
   DESCRIPTION
      "WARNING: An output relay for the powerplant has been activated (state changed to on).
       The first variable is an integer representing the output relay number that has gone on.
       The second variable is the 16-character name of the output relay."
   --#TYPE "APC: An output relay has gone on."
   --#SUMMARY "An output relay has gone on in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 117

dcOutputRelayOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES {  dm3StatusOutRlyIndex, dm3StatusOutRlyName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An output relay for the powerplant has been deactivated (state changed to off).
       The first variable is an integer representing the output relay number that has gone off.
       The second variable is the 16-character name of the output relay."
   --#TYPE "APC: An output relay has gone off."
   --#SUMMARY "An output relay has gone off in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 118

dcInputRelayOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES {  dm3StatusInRlyIndex, dm3StatusInRlyName, mtrapargsString }
   DESCRIPTION
      "WARNING: An input relay for the powerplant has been activated (state changed to on).
       The first variable is an integer representing the input relay number that has gone on.
       The second variable is the 16-character name of the input relay."
   --#TYPE "APC: An input relay has gone on."
   --#SUMMARY "An input relay has gone on in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 119

dcInputRelayOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES {  dm3StatusInRlyIndex, dm3StatusInRlyName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An input relay for the powerplant has been deactivated (state changed to off).
       The first variable is an integer representing the input relay number that has gone off.
       The second variable is the 16-character name of the input relay."
   --#TYPE "APC: An input relay has gone off."
   --#SUMMARY "An input relay has gone off in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 120

logicPowerSuppliesIncreased TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of system power supplies has increased."
   --#TYPE "APC UPS: The number of system power supplies has increased."
   --#SUMMARY "The number of system power supplies has increased."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 121

logicPowerSuppliesDecreased TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The number of system power supplies has decreased."
   --#TYPE "APC UPS: The number of system power supplies has decreased."
   --#SUMMARY "The number of system power supplies has decreased."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 122

externalSwitchGearClosed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: External Switch Gear closed."
   --#TYPE "APC UPS: External Switch Gear closed."
   --#SUMMARY "External Switch Gear closed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 123

externalSwitchGearOpened TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: External Switch Gear opened."
   --#TYPE "APC UPS: External Switch Gear opened."
   --#SUMMARY "External Switch Gear opened."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 124

generalDeviceEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: APC Device event."
   --#TYPE "APC Device event"
   --#SUMMARY "APC Device event."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 125

atsSourceSwitched TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The Automatic Transfer Switch has switched source.
       The first variable is an integer representing the current source: 0=A, 1=B.
       The second variable is the 32-character name of the current source."
   --#TYPE "APC Automatic Transfer Switch: The ATS has switched source"
   --#SUMMARY "The Automatic Transfer Switch has switched source."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
  ::= 126

atsLostRedundancy TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The Automatic Transfer Switch has lost redundancy.
       The first variable is an integer representing the source which is no longer available: 0=A, 1=B.
       The second variable is the 32-character name of the source which is no longer available."
   --#TYPE "APC Automatic Transfer Switch: The ATS has lost redundancy. "
   --#SUMMARY "The Automatic Transfer Switch has lost redundancy."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 127

atsRedundancyRestored TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString02,  mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Redundancy has been restored to the Automatic Transfer Switch .
       The first variable is an integer representing the source which has been restored: 0=A, 1=B.
       The second variable is the 32-character name of the source which has been restored."
   --#TYPE "APC Automatic Transfer Switch: Redundancy has been restored."
   --#SUMMARY "Redundancy has been restored to the Automatic Transfer Switch ."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 128

atsConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A configuration change has been made on the Automatic Transfer Switch.
       The first variable is an integer representing the configuration setting which changed:
           0=Transfer Voltage Range, 1=Sensitivity, 2=Preferred Source
           3=Front Panel Lockout, 4=Current Limit, 5=Reset XA Processor,
           6=Reset to defaults, 7=Product Name, 8=Nominal Voltage, 9=Nominal Line Frequency,
           10=Narrow VRMS, 11=Medium VRMS, 12=Wide VRMS,13=Frequency Deviation,
           14=ColdStart ATS, 15=Events Count Cleared, 16=Phase or Bank Threshold. "
   --#TYPE "APC Automatic Transfer Switch: ATS configuration changed."
   --#SUMMARY "A configuration change has been made on a Automatic Transfer Switch."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 129

atsCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communications with the Automatic Transfer Switch has been established."
   --#TYPE "APC Automatic Transfer Switch: Communications established."
   --#SUMMARY "Communications with the Automatic Transfer Switch has been established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 130

atsCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Communications with the Automatic Transfer Switch has been lost."
   --#TYPE "APC Automatic Transfer Switch: Communications lost."
   --#SUMMARY "Communications with the Automatic Transfer Switch has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 131

atsOverCurrent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Output Current has exceeded threshold. This is same as atsOverload Trap
               for phase or total in case banked units"

   --#TYPE "APC Automatic Transfer Switch: Output Current exceeded threshold"
   --#SUMMARY "Output Current has exceeded Threshold. "
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 132

atsOverCurrentCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Output Current has returned below threshold.This is same as atsOverloadCleared Trap
                      for phase or total in case banked units"
   --#TYPE "APC Automatic Transfer Switch: Output Current below threshold."
   --#SUMMARY "Output Current has returned below threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 133

atsPowerSupplyFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The Automatic Transfer Switch Power Supply has failed.
      The first variable is an integer representing the Power Supply which
      has failed: 0 = Source A 24V,
                  1 = 12V,
                  2 = 5V,
                  3 = Source B 24V."
   --#TYPE "APC Automatic Transfer Switch: The ATS Power Supply has failed."
   --#SUMMARY "The Automatic Transfer Switch Power Supply has failed."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 134

atsPowerSupplyFailureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The Automatic Transfer Power Supply Failure Cleared.
       The first variable is an integer representing the Power Supply which
       has cleared: 0 = Source A 24V,
                    1 = 12V,
                    2 = 5V,
                    3 = Source B 24V."
   --#TYPE "APC Automatic Transfer Switch: Power Supply Failure Cleared."
   --#SUMMARY "The Automatic Transfer Switch Power Supply Failure Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 135

dcMainsFailAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Mains Fail alarm is active in the DC power plant."
   --#TYPE "APC: A Mains Fail alarm is active in the DC power plant."
   --#SUMMARY "A Mains Fail alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 136

dcMainsFailAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Mains Fail alarm is no longer active in the DC power plant."
   --#TYPE "APC: Mains Fail alarm is no longer active in the DC power plant."
   --#SUMMARY "Mains Fail alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 137

dcFanFailAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Fan Fail alarm is active in the DC power plant."
   --#TYPE "APC: A Fan Fail alarm is active in the DC power plant."
   --#SUMMARY "A Fan Fail alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 138

dcFanFailAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Fan Fail alarm is no longer active in the DC power plant."
   --#TYPE "APC: A Fan Fail alarm is no longer active in the DC power plant."
   --#SUMMARY "A Fan Fail alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 139

dcRectifierOvertempAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: Rect. Overtemp alarm is active in the power plant."
   --#TYPE "APC: Rect. Overtemp alarm is active in the power plant."
   --#SUMMARY "Rect. Overtemp alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 140

dcRectifierOvertempAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Rect. Overtemp alarm is no longer active in the power plant."
   --#TYPE "APC: Rect. Overtmp alarm is no longer active in the power plant."
   --#SUMMARY "Rect. Overtemp alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 141

dcCurrentLimitAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Current Limit alarm is active in the power plant."
   --#TYPE "APC: A Current Limit alarm is active in the power plant."
   --#SUMMARY "A Current Limit alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 142

dcCurrentLimitAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Current Limit alarm is no longer active in the power plant."
   --#TYPE "APC: Current Limit alarm is no longer active in the power plant."
   --#SUMMARY "Current Limit alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 143

dcRectifierFailAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Rect. Fail alarm is active in the power plant."
   --#TYPE "APC: A Rect. Fail alarm is active in the power plant."
   --#SUMMARY "A Rect. Fail alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 144

dcRectifierFailAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Rect. Fail alarm is no longer active in the power plant."
   --#TYPE "APC: Rect. Fail alarm is no longer active in the power plant."
   --#SUMMARY "Rect. Fail alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 145

dcMultRectFailAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: Multiple Rect. Fail alarm is active in the powerplant."
   --#TYPE "APC: Multiple Rect. Fail alarm is active in the powerplant."
   --#SUMMARY "Multiple Rect. Fail alarm is active in the powerplant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 146

dcMultRectFailAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Multiple Rect Fail alarm is no longer active in the powerplant."
   --#TYPE "APC: Multiple Rect Fail alarm is no longer active in powerplant."
   --#SUMMARY "Multiple Rect Fail alarm is no longer active in the powerplant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 147

dcBatteryBreakerAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: Batt. Breaker alarm is active in the power plant."
   --#TYPE "APC: Batt. Breaker alarm is active in the power plant."
   --#SUMMARY "Batt. Breaker alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 148

dcBatteryBreakerAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Batt. Breaker alarm is no longer active in the power plant."
   --#TYPE "APC: Batt. Breaker alarm is no longer active in the power plant."
   --#SUMMARY "Batt. Breaker alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 149

dcRectifierOVPAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Rect. OVP alarm is active in the power plant."
   --#TYPE "APC: A Rect. OVP alarm is active in the power plant."
   --#SUMMARY "A Rect. OVP alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 150

dcRectifierOVPAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Rect. OVP alarm is no longer active in the power plant."
   --#TYPE "APC: A Rect. OVP alarm is no longer active in the power plant."
   --#SUMMARY "A Rect. OVP alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 151

dcLVDImminentAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A LVD Imminent alarm is active in the powerplant."
   --#TYPE "APC: A LVD Imminent alarm is active in the powerplant."
   --#SUMMARY "A LVD Imminent alarm is active in the powerplant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 152

dcLVDImminentAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A LVD Imminent alarm is no longer active in the powerplant."
   --#TYPE "APC: A LVD Imminent alarm is no longer active in the powerplant."
   --#SUMMARY "A LVD Imminent alarm is no longer active in the powerplant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 153

dcFuseCBAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Fuse/CB alarm is active in the DC power plant."
   --#TYPE "APC: A Fuse/CB alarm is active in the DC power plant."
   --#SUMMARY "A Fuse/CB alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 154

dcFuseCBAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Fuse/CB alarm is no longer active in the DC power plant."
   --#TYPE "APC: A Fuse/CB alarm is no longer active in the DC power plant."
   --#SUMMARY "A Fuse/CB alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 155

dcBatteryTestFail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Battery Test failed in the DC power plant."
   --#TYPE "APC: A Battery Test failed in the DC power plant."
   --#SUMMARY "A Battery Test failed in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 156

dcTemperatureAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Temperature is active in the power plant."
   --#TYPE "APC: A Temperature alarm is active in the power plant."
   --#SUMMARY "A Temperature alarm is active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 157

dcTemperatureAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Temperature alarm is no longer active in the power plant."
   --#TYPE "APC: A Temperature alarm is no longer active in the power plant."
   --#SUMMARY "A Temperature alarm is no longer active in the power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 158

dcHumidityAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A Humidity alarm is active in the DC power plant."
   --#TYPE "APC: A Humidity alarm is active in the DC power plant."
   --#SUMMARY "A Humidity alarm is active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 159

dcHumidityAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Humidity alarm is no longer active in the DC power plant."
   --#TYPE "APC: A Humidity alarm is no longer active in the DC power plant."
   --#SUMMARY "A Humidity alarm is no longer active in the DC power plant."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 160

dcBBCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Power plant bridging board communications established."
   --#TYPE "APC: Power plant bridging board communications established."
   --#SUMMARY "Power plant bridging board communications established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 161

dcBBCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Power plant bridging board communications lost."
   --#TYPE "APC: Power plant bridging board communications lost."
   --#SUMMARY "Power plant bridging board communications lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 162

iemHighTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeCurrentTemp, iemStatusProbeTempUnits, iemStatusProbeNumber,
               iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: High temperature threshold violated on Integrated
        Environmental Monitor probe. The first variable is the
        current temperature. The second variable is the temperature
        scale. The third variable is the probe number. The fourth
        variable is the probe name."
   --#TYPE "APC IEM: High temperature threshold violation."
   --#SUMMARY "High temperature threshold violation."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 163

iemHighTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeNumber, iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High temperature threshold violated on Integrated
        Environmental Monitor probe has been cleared. The first variable
        is the probe number. The second variable is the probe name."
   --#TYPE "APC IEM: High temperature threshold violation cleared."
   --#SUMMARY "High temperature threshold violation has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 164

iemLowTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeCurrentTemp, iemStatusProbeTempUnits, iemStatusProbeNumber,
               iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Low temperature threshold violated on integrated
        probe. The first variable is the current temperature. The
        second variable is the temperature scale. The third
        variable is the probe number. The fourth variable is the
        probe name."
   --#TYPE "APC IEM: Low temperature threshold violation."
   --#SUMMARY "Low temperature threshold violation."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 165

iemLowTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeNumber, iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low temperature threshold violated on integrated
        probe has been cleared. The first variable is the probe number.
        The second variable is the probe name."
   --#TYPE "APC IEM: Low temperature threshold violation cleared."
   --#SUMMARY "Low temperature threshold violation has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 166

iemHighHumidThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeCurrentHumid, iemStatusProbeNumber, iemStatusProbeName,
               mtrapargsString }
   DESCRIPTION
       "SEVERE: High humidity threshold violated on integrated
        probe. The first variable is the current humidity. The
        second variable is the probe number. The third variable
        is the probe name."
   --#TYPE "APC IEM: High humidity threshold violation."
   --#SUMMARY "High humidity threshold violation."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 167

iemHighHumidThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeNumber, iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High humidity threshold violated on integrated
        probe cleared. The first variable is the probe number. The second
        variable is the probe name."
   --#TYPE "APC IEM: High humidity threshold violation cleared."
   --#SUMMARY "High humidity threshold violation has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 168

iemLowHumidThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeCurrentHumid, iemStatusProbeNumber, iemStatusProbeName,
               mtrapargsString }
   DESCRIPTION
       "SEVERE: Low humidity threshold violated on integrated
        probe. The first variable is the current humidity. The
        second variable is the probe number. The third variable
        is the probe name."
   --#TYPE "APC IEM: Low humidity threshold violation."
   --#SUMMARY "Low humidity threshold violation."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 169

iemLowHumidThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusProbeNumber, iemStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low humidity threshold violated on integrated
        probe cleared. The first variable is the probe number. The second
        variable is the probe name."
   --#TYPE "APC IEM: Low humidity threshold violation cleared."
   --#SUMMARY "Low humidity threshold violation has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 170

iemProbeDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: The temperature/humidity probe on the Integrated
       Environmental Monitor has been disconnected. This trap is
       generated when a probe that has been in communication with
       the Environmental Monitor has been disconnected or can no
       longer communicate."
   --#TYPE "APC IEM: Probe disconnected."
   --#SUMMARY "Probe has been disconnected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 171

iemProbeConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The temperature/humidity probe on the Integrated
       Environmental Monitor has been connected. This trap is generated
       when the Environmental Monitor establishes communication with a
       probe that had previously not been connected."
   --#TYPE "APC IEM: Probe Connected."
   --#SUMMARY "Probe has been connected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 172

iemContactFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusContactNumber, iemStatusContactName, mtrapargsString }
   DESCRIPTION
      "SEVERE: There is a contact fault on the Integrated
       Environmental Monitor. The first argument is the number
       of the contact. The second argument is the name of the
       contact."
   --#TYPE "APC IEM: Contact fault."
   --#SUMMARY "Contact fault."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 173

iemContactFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusContactNumber, iemStatusContactName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The contact fault on the Integrated
       Environmental Monitor has been cleared. The first
       argument is the number of the contact. The second
       argument is the name of the contact."
   --#TYPE "APC IEM: Contact fault."
   --#SUMMARY "Contact fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 174

iemRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusRelayNumber, iemStatusRelayName, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The output relay on the Integrated Environmental
       Monitor has switched to the fault state. The first
       argument is the number of the output relay. The second
       argument is the name of the output relay. The third
       argument is the event that caused the fault."
   --#TYPE "APC IEM: Output relay fault."
   --#SUMMARY "Output relay has faulted."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 175

iemRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { iemStatusRelayNumber, iemStatusRelayName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The fault condition on the output relay on the
       Integrated Environmental Monitor has cleared. The first
       argument is the number of the output relay. The second
       argument is the name of the output relay."
   --#TYPE "APC IEM: Output relay fault condition cleared."
   --#SUMMARY "Output relay fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 176

bmBatManCommEstab TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Serial Communications Established with Battery Manager."
   --#TYPE "BatMan : Communications Established."
   --#SUMMARY "Communications Established."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 177

bmBatManCommLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Serial Communications Lost with Battery Manager."
   --#TYPE "BatMan : Communications Lost."
   --#SUMMARY "Communications Lost."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 178

bmBatManKneeAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Battery Voltage Knee Threshold Alarm Detected."
   --#TYPE "BatMan : Knee Alarm Detected."
   --#SUMMARY "Knee Alarm Detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 179

bmBatManKneeAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Battery Voltage Knee Threshold Alarm Cleared."
   --#TYPE "BatMan : Knee Alarm Cleared."
   --#SUMMARY "Knee Alarm Cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 180

bmBatManChargerAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Charger Alarm Detected."
   --#TYPE "BatMan : Charger Alarm Detected."
   --#SUMMARY "Charger Alarm Detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 181

bmBatManChargerAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Charger Alarm Cleared."
   --#TYPE "BatMan : Charger Alarm Cleared."
   --#SUMMARY "Charger Alarm Cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 182

bmBatManBatteryAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Battery Alarm Detected."
   --#TYPE "BatMan : Battery Alarm Detected."
   --#SUMMARY "Battery Alarm Detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 183

bmBatManBatteryAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Battery Alarm Cleared."
   --#TYPE "BatMan : Battery Alarm Cleared."
   --#SUMMARY "Battery Alarm Cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 184

bmBatManEnvironmentAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Environment Alarm Detected."
   --#TYPE "BatMan : Environment Alarm Detected."
   --#SUMMARY "Environment Alarm Detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 185

bmBatManEnvironmentAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Environment Alarm Cleared."
   --#TYPE "BatMan : Environment Alarm Cleared."
   --#SUMMARY "Environment Alarm Cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 186

bmBatManMaintenanceAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Maintenance Alarm Detected."
   --#TYPE "BatMan : Maintenance Due Alarm Detected."
   --#SUMMARY "Maintenance Due Alarm Detected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 187

bmBatManMaintenanceAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Maintenance Alarm Cleared."
   --#TYPE "BatMan : Maintenance Due Alarm Cleared."
   --#SUMMARY "Maintenance Due Alarm Cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 188

pduCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication Established.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Communication Established."
   --#SUMMARY "Communication Established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 189

pduCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communication Lost.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Communication Lost."
   --#SUMMARY "Communication Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 190

pduUtilityLineUndervoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Utility Line Undervoltage.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Utility Line Undervoltage."
   --#SUMMARY "Utility Line Undervoltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 191

pduUtilityLineUndervoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Utility Line Undervoltage Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Utility Line Undervoltage Cleared."
   --#SUMMARY "Utility Line Undervoltage Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 192

pduUtilityLineOvervoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Utility Line Overvoltage.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Utility Line Overvoltage."
   --#SUMMARY "Utility Line Overvoltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 193

pduUtilityLineOvervoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Utility Line Overvoltage Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Utility Line Overvoltage Cleared."
   --#SUMMARY "Utility Line Overvoltage Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 194

pduGroundOvercurrent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Ground Overcurrent.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Ground Overcurrent."
   --#SUMMARY "Ground Overcurrent."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 195

pduGroundOvercurrentCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Ground Overcurrent Cleared.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Ground Overcurrent Cleared."
   --#SUMMARY "Ground Overcurrent Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 196

pduCircuitPanelInputUndervoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Undervoltage.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Undervoltage."
   --#SUMMARY "Circuit Panel Input Undervoltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 197

pduCircuitPanelInputUndervoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Undervoltage Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Undervoltage Cleared."
   --#SUMMARY "Circuit Panel Input Undervoltage Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 198

pduCircuitPanelInputOvervoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Overvoltage.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Overvoltage."
   --#SUMMARY "Circuit Panel Input Overvoltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 199

pduCircuitPanelInputOvervoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Overvoltage Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Overvoltage Cleared."
   --#SUMMARY "Circuit Panel Input Overvoltage Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 200

pduCircuitPanelInputUndercurrent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Undercurrent.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Undercurrent."
   --#SUMMARY "Circuit Panel Input Undercurrent."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 201

pduCircuitPanelInputUndercurrentCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Undercurrent Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Undercurrent Cleared."
   --#SUMMARY "Circuit Panel Input Undercurrent Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 202

pduCircuitPanelInputOvercurrent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Overcurrent.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Overcurrent."
   --#SUMMARY "Circuit Panel Input Overcurrent."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 203

pduCircuitPanelInputOvercurrentCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Overcurrent Cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: Circuit Panel Input Overcurrent Cleared."
   --#SUMMARY "Circuit Panel Input Overcurrent Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 204

pduCircuitPanelFrequencyOutOfRange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Frequency Out Of Range.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Circuit Panel Input Frequency Out Of Range."
   --#SUMMARY "Circuit Panel Input Frequency Out Of Range."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 205

pduCircuitPanelFrequencyOutofRangeCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Frequency No Longer Out Of Range.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Circuit Panel Input Frequency No Longer Out Of Range."
   --#SUMMARY "Circuit Panel Input Frequency No Longer Out Of Range."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 206

pduCircuitPanelNeutralOvercurrent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Circuit Panel Input Neutral Overcurrent.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Circuit Panel Input Neutral Overcurrent."
   --#SUMMARY "Circuit Panel Input Neutral Overcurrent."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 207

pduCircuitPanelNeutralOvercurrentCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Circuit Panel Input Neutral Overcurrent Cleared.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Circuit Panel Input Neutral Overcurrent Cleared."
   --#SUMMARY "Circuit Panel Input Neutral Overcurrent Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 208

pduSystemOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: PDU System Off.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: System Off."
   --#SUMMARY "PDU System Off."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 209

pduOnBatteryMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: PDU is in On Battery Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: On Battery Mode."
   --#SUMMARY "PDU is in On Battery Mode."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 210

pduMaintenanceBypassMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PDU is in Maintenance Bypass Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Maintenance Bypass Mode."
   --#SUMMARY "PDU is in Maintenance Bypass Mode."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 211

pduAtypicalBypassMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "WARNING: PDU is in Atypical Bypass Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Atypical Bypass Mode."
   --#SUMMARY "PDU is in Atypical Bypass Mode."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 212

pduNoPanelFeedMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: PDU is in No Panel Feed Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: No Panel Feed Mode."
   --#SUMMARY "PDU is in No Panel Feed Mode."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 213

pduUpsOperationMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PDU is in Ups Operation Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Ups Operation Mode."
   --#SUMMARY "PDU is in Ups Operation Mode."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 214

pduForcedBypassMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "WARNING: PDU is in Forced Bypass Mode.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Forced Bypass Mode."
   --#SUMMARY "PDU is in Forced Bypass Mode."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 215

pduInputTransformerOverTemperature TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Input Transformer Over Temperature.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Input Transformer Over Temperature."
   --#SUMMARY "Input Transformer Over Temperature."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 216

pduInputTransformerOverTemperatureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Input Transformer Over Temperature Cleared.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC PDU: Input Transformer Over Temperature Cleared."
   --#SUMMARY "Input Transformer Over Temperature Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 217

pduUPSInputVoltageLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: UPS Input Voltage phase-N Lost.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: UPS Input Voltage phase-N Lost."
   --#SUMMARY "UPS Input Voltage phase-N Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 218

pduUPSInputVoltageRestored TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS Input Voltage phase-N Restored.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC PDU: UPS Input Voltage phase-N Restored."
   --#SUMMARY "UPS Input Voltage phase-N Restored."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 219

pduContactFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: A contact closure in the PDU is in an abnormal position.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the number of the contact."
   --#TYPE "APC PDU: Contact Abnormal."
   --#SUMMARY "Contact Abnormal."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 220

pduContactFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A contact closure in the PDU is in a normal position.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the number of the contact."
   --#TYPE "APC PDU: Contact Normal."
   --#SUMMARY "Contact Normal."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 221

rPDUBankPhaseLowLoad TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "WARNING: A bank or phase on the Rack PDU has violated the low load threshold.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Violation of bank or phase low load threshold."
   --#SUMMARY "A bank or phase on the Rack PDU has violated the low load threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 222

rPDUBankPhaseLowLoadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase low load condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Bank or phase low load condition cleared."
   --#SUMMARY "The bank or phase low load condition on a Rack PDU has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 223

rPDUBankPhaseNearOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "WARNING: A bank or phase of the Rack PDU is near an overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Bank or phase near an overload condition."
   --#SUMMARY "A bank or phase of the Rack PDU is near an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 224

rPDUBankPhaseNearOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase near overload condition on a Rack PDU has
       been cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Bank or phase near overload condition has cleared."
   --#SUMMARY "Rack PDU bank or phase near overload condition has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 225

rPDUBankPhaseOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "SEVERE: A bank or phase of the Rack PDU is in an overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Bank or phase overload condition."
   --#SUMMARY "A bank or phase of the Rack PDU is in an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 226

rPDUBankPhaseOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusBankNumber, rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase overload condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the bank number (0 if this is phase data).
       The fourth argument is the phase number (0 if this is bank data)."
   --#TYPE "APC Rack PDU: Bank or phase overload condition has cleared."
   --#SUMMARY "The bank or phase overload condition on a Rack PDU has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 227

aruDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote ARU Device Configuration change.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: ARU Device configuration change."
   --#SUMMARY "ARU device configuration change."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 228

rmPDUCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString03, mtrapargsString02, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communication Lost.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC RM PDU: Communication Lost."
   --#SUMMARY "Communication Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 229

emsCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication Established.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC EMS: Communication Established."
   --#SUMMARY "Communication Established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 230

emsCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communication Lost.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC EMS: Communication Lost."
   --#SUMMARY "Communication Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 231

emsProbeConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A probe has been connected to the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the probe number.
        The fourth argument is the probe name."
   --#TYPE "APC EMS: Probe Connected."
   --#SUMMARY "Probe Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 232

emsProbeDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A probe has been disconnected from the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the probe number.
        The fourth argument is the probe name."
   --#TYPE "APC EMS: Probe Disconnected."
   --#SUMMARY "Probe Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 233

emsSensorConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsSensorStatusSensorIndex, emsSensorStatusSensorName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A sensor has been connected to the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the sensor number.
        The fourth argument is the sensor name."
   --#TYPE "APC EMS: Sensor Connected."
   --#SUMMARY "Sensor Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 234

emsSensorDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsSensorStatusSensorIndex, emsSensorStatusSensorName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A sensor has been disconnected from the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the sensor number.
        The fourth argument is the sensor name."
   --#TYPE "APC EMS: Sensor Disconnected."
   --#SUMMARY "Sensor Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 235

emsSensorFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsSensorStatusSensorIndex, emsSensorStatusSensorName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A EMS sensor is in the fault condition.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the sensor number.
        The fourth argument is the sensor name."
   --#TYPE "APC EMS: Sensor Fault."
   --#SUMMARY "Sensor Fault."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 236

emsSensorFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsSensorStatusSensorIndex, emsSensorStatusSensorName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A EMS sensor fault condition has cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the sensor number.
        The fourth argument is the sensor name."
   --#TYPE "APC EMS: Sensor Fault Cleared."
   --#SUMMARY "Sensor Fault Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 237

emsBeaconConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A beacon has been connected to the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Beacon Connected."
   --#SUMMARY "Beacon Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 238

emsBeaconDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A beacon has been disconnected from the EMS.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Beacon Disconnected."
   --#SUMMARY "Beacon Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 239

emsBeaconOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A EMS beacon has gone on.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Beacon On."
   --#SUMMARY "Beacon On."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 240

emsBeaconOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A EMS beacon has gone off.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Beacon Off."
   --#SUMMARY "Beacon Off."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 241

emsMajorAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Major Alarm is present in the EMS.
        The first argument is the EMS serial number.
        The second argument is the EMS name."
   --#TYPE "APC EMS: Major Alarm."
   --#SUMMARY "Major Alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 242

emsMajorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Major Alarm condition has been cleared in the EMS.
        The first argument is the EMS serial number.
        The second argument is the EMS name."
   --#TYPE "APC EMS: Major Alarm Cleared."
   --#SUMMARY "Major Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 243

emsMinorAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Minor Alarm is present in the EMS.
        The first argument is the EMS serial number.
        The second argument is the EMS name."
   --#TYPE "APC EMS: Minor Alarm."
   --#SUMMARY "Minor Alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 244

emsMinorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Minor Alarm condition has been cleared in the EMS.
        The first argument is the EMS serial number.
        The second argument is the EMS name."
   --#TYPE "APC EMS: Minor Alarm Cleared."
   --#SUMMARY "Minor Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 245

emsOutletStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsOutletStatusOutletIndex, emsOutletStatusOutletName,
               emsOutletStatusOutletState, emsOutletStatusOutletNormalState, mtrapargsString }
   DESCRIPTION
      "WARNING: An outlet on the EMS has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the outlet number.
        The fourth argument is the outlet name.
        The fifth argument is the current outlet state (1=ON, 2=OFF).
        The sixth argument is the configured normal outlet state (1=ON, 2=OFF)."
   --#TYPE "APC EMS: Outlet has changed to its abnormal state."
   --#SUMMARY "Outlet has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 246

emsOutletStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsOutletStatusOutletIndex, emsOutletStatusOutletName,
               emsOutletStatusOutletState, emsOutletStatusOutletNormalState, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the EMS has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the outlet number.
        The fourth argument is the outlet name.
        The fifth argument is the current outlet state (1=ON, 2=OFF).
        The sixth argument is the configured normal outlet state (1=ON, 2=OFF)."
   --#TYPE "APC EMS: Outlet has changed to its normal state."
   --#SUMMARY "Outlet has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 247

emsInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsInputContactStatusInputContactIndex,
               emsInputContactStatusInputContactName, emsInputContactStatusInputContactState,
               emsInputContactStatusInputContactNormalState, mtrapargsString }
   DESCRIPTION
      "WARNING: An input contact on the EMS has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=CLOSED, 2=OPEN).
        The sixth argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC EMS: Input contact has changed to its abnormal state."
   --#SUMMARY "Input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 248

emsInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsInputContactStatusInputContactIndex,
               emsInputContactStatusInputContactName, emsInputContactStatusInputContactState,
               emsInputContactStatusInputContactNormalState, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An input contact on the EMS has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=CLOSED, 2=OPEN).
        The sixth argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC EMS: Input contact has changed to its normal state."
   --#SUMMARY "Input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 249

emsOutputRelayStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsOutputRelayStatusOutputRelayIndex,
               emsOutputRelayStatusOutputRelayName, emsOutputRelayStatusOutputRelayState,
               emsOutputRelayStatusOutputRelayNormalState, mtrapargsString }
   DESCRIPTION
      "WARNING: An output relay on the EMS has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the output relay number.
        The fourth argument is the output relay name.
        The fifth argument is the current output relay state (1=CLOSED, 2=OPEN).
        The sixth argument is the configured normal output relay state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC EMS: Output Relay has changed to its abnormal state."
   --#SUMMARY "Output Relay has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 250

emsOutputRelayStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsOutputRelayStatusOutputRelayIndex,
               emsOutputRelayStatusOutputRelayName, emsOutputRelayStatusOutputRelayState,
               emsOutputRelayStatusOutputRelayNormalState, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An output relay on the EMS has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the output relay number.
        The fourth argument is the output relay name.
        The fifth argument is the current output relay state (1=CLOSED, 2=OPEN).
        The sixth argument is the configured normal output relay state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC EMS: Output Relay has changed to its normal state."
   --#SUMMARY "Output Relay has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 251

emsDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device configuration change has been made on the EMS.
        The first argument is the EMS serial number.
        The second argument is the EMS name."
   --#TYPE "APC: A device configuration change on a EMS."
   --#SUMMARY "A device configuration change has been made on a EMS."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 252

envHighTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: High temperature threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: High temperature threshold violation."
   --#SUMMARY "High temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 253

envHighTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High temperature threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: High temperature threshold violation cleared."
   --#SUMMARY "High temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 254

envLowTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Low temperature threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Low temperature threshold violation."
   --#SUMMARY "Low temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 255

envLowTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low temperature threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Low temperature threshold violation cleared."
   --#SUMMARY "Low temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 256

envHighHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: High humidity threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: High humidity threshold violation."
   --#SUMMARY "High humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 257

envHighHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High humidity threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity.
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: High humidity threshold violation cleared."
   --#SUMMARY "High humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 258

envLowHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Low humidity threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Low humidity threshold violation."
   --#SUMMARY "Low humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 259

envLowHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low humidity threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity.
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Low humidity threshold violation cleared."
   --#SUMMARY "Low humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 260


-- Switched and Metered Rack PDU Traps

rPDUCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication with a Rack PDU has been established.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Communication established."
   --#SUMMARY "Communication with a Rack PDU established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 266

rPDUCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communication with a Rack PDU has been lost.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Communication lost."
   --#SUMMARY "Communication with a Rack PDU has been lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 267

rPDUOutletOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletControlIndex, rPDUOutletControlOutletName,
               mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on a Switched Rack PDU has turned on.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet index number.
       The fourth argument is the outlet name."
   --#TYPE "APC Switched Rack PDU: An outlet has turned on."
   --#SUMMARY "An outlet on a Switched Rack PDU has turned on."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 268

rPDUOutletOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletControlIndex, rPDUOutletControlOutletName,
               mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on a Switched Rack PDU has turned off.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet index number.
       The fourth argument is the outlet name."
   --#TYPE "APC Switched Rack PDU: An outlet has turned off."
   --#SUMMARY "An outlet on a Switched Rack PDU has turned off."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 269

rPDUDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device configuration change has been made on a
       Rack PDU.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Device configuration change made."
   --#SUMMARY "Device configuration change has been made on a Rack PDU."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 270

rPDUOutletConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletControlIndex, rPDUOutletControlOutletName,
               mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet configuration change has been made on a
       Switched Rack PDU.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet index number.
       The fourth argument is the outlet name."
   --#TYPE "APC Switched Rack PDU: Outlet configuration change made."
   --#SUMMARY "Outlet configuration change has been made on a Switched Rack PDU."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 271

rPDULowLoad TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "WARNING: A Rack PDU has violated the low load threshold.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Violation of low load threshold."
   --#SUMMARY "A Rack PDU has violated the low load threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 272

rPDULowLoadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The low load condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Low load condition cleared."
   --#SUMMARY "The low load condition on a Rack PDU has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 273

rPDUNearOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "WARNING: A Rack PDU is near an overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Near an overload condition."
   --#SUMMARY "A Rack PDU is near an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 274

rPDUNearOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The near overload condition on a Rack PDU has
       been cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Near overload condition has cleared."
   --#SUMMARY "Rack PDU near overload condition has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 275

rPDUOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Rack PDU is in an overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Overload condition."
   --#SUMMARY "A Rack PDU is in an overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 276

rPDUOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadStatusPhaseNumber, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The overload condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase number."
   --#TYPE "APC Rack PDU: Overload condition has cleared."
   --#SUMMARY "The overload condition on a Rack PDU has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 277

rPDUPowerSupply1Fail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Power Supply 1 on Rack PDU is in FAIL state.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Power Supply 1 is in FAIL state."
   --#SUMMARY "Power Supply 1 on Rack PDU is in FAIL state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 278

rPDUPowerSupply1Ok TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Power Supply 1 on Rack PDU is operating normally.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Power Supply 1 is operating normally."
   --#SUMMARY "Power Supply 1 on Rack PDU is operating normally."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 279

rPDUPowerSupply2Fail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Power Supply 2 on Rack PDU is in FAIL state.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Power Supply 2 is in FAIL state."
   --#SUMMARY "Power Supply 2 on Rack PDU is in FAIL state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 280

rPDUPowerSupply2Ok TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Power Supply 2 on Rack PDU is operating normally.
       The first argument is the serial number.
       The second argument is the device name."
   --#TYPE "APC Rack PDU: Power Supply 2 is operating normally."
   --#SUMMARY "Power Supply 2 on Rack PDU is operating normally."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 281

rPDUPhaseConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDULoadPhaseConfigIndex, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A phase configuration change has been made on a
       Rack PDU.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the phase index number."
   --#TYPE "APC Rack PDU: Phase configuration change made."
   --#SUMMARY "Phase configuration change has been made on a Rack PDU."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 282

rPDUCancelPendingCommand TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletControlIndex, rPDUOutletControlOutletName,
               mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A cancel pending command has been made on a
       Switched Rack PDU.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet index number (0 indicates all outlets).
       The fourth argument is the outlet name (or device name if all outlets)."
   --#TYPE "APC Switched Rack PDU: Cancel Pending Command made."
   --#SUMMARY "A Cancel Pending Command has been made on a Switched Rack PDU."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 283

aruAlinkCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote ARU Communication Established.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Communication Established."
   --#SUMMARY "Communication Established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 284

aruAlinkCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Remote ARU Communication Lost.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Communication Lost."
   --#SUMMARY "Communication Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 285

aruFanFail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Remote ARU Fan Fail.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Fan Failure."
   --#SUMMARY "Fan Fail."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 286

aruFanFailCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote ARU Fan Fail Cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Fan Fail Cleared."
   --#SUMMARY "Fan Fail Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 287

aruSmokeAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Remote ARU Smoke Alarm.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Smoke Alarm."
   --#SUMMARY "Smoke Alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 288

aruSmokeAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote ARU Smoke Alarm Cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Smoke Alarm Cleared."
   --#SUMMARY "Smoke Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 289

aruHighTemperatureAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "WARNING: ARU Exhaust temperature has exceeded the override
         threshold and the ARU has increased fan speed to
         maintain a safe environment in the rack.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: High Temperature Alarm."
   --#SUMMARY "High Temperature Alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 290

aruHighTemperatureAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: ARU temperature override state has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: High Temperature Alarm Cleared."
   --#SUMMARY "High Temperature Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 291

aruExhaustTemperatureAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "SEVERE: ARU Extreme Exhaust Temperature Alarm.
        The ARU is unable to control the temperature within the rack
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Exhaust Temperature Alarm."
   --#SUMMARY "Exhaust Temperature Alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 292

aruExhaustTemperatureAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote ARU Exhaust Temperature Alarm Cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Exhaust Temperature Alarm Cleared."
   --#SUMMARY "Exhaust Temperature Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 293

envAlinkCommunicationEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Remote Probe Communication Established.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the probe number.
        The fourth argument is the probe name."
   --#TYPE "APC ENV: Communication Established."
   --#SUMMARY "Communication Established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 294

envAlinkCommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Remote Probe Communication Lost.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the probe number.
        The fourth argument is the probe name."
   --#TYPE "APC ENV: Communication Lost."
   --#SUMMARY "Communication Lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 295

emsAlinkPowerOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Alink Power Overload.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Alink Power Overload."
   --#SUMMARY "Alink Power Overload."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 296

emsAlinkPowerOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Alink Power Overload Cleared.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC EMS: Alink Power Overload Cleared."
   --#SUMMARY "Alink Power Overload Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 297

upsOutletGroupTurnedOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { upsOutletGroupControlIndex, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The specified Outlet Group turned on."
   --#TYPE "APC UPS: Outlet Group turned on."
   --#SUMMARY "Outlet Group turned on"
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 298

upsOutletGroupTurnedOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { upsOutletGroupControlIndex, mtrapargsString }
   DESCRIPTION
       "WARNING: The specified Outlet Group turned off."
   --#TYPE "APC UPS: Outlet Group turned off."
   --#SUMMARY "Outlet Group turned off."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 299

smwCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Symmetra MW UPS critical condition has been detected.
       The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: A critical condition has been detected."
   --#SUMMARY "A critical condition has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 300

smwCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Symmetra MW UPS critical condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: A critical condition has been cleared."
   --#SUMMARY "A critical condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 301

smwWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "WARNING: A Symmetra MW UPS warning condition has been detected.
       The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: A warning condition has been detected."
   --#SUMMARY "A warning condition has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 302

smwWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "WARNING: A Symmetra MW UPS warning condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: A warning condition has been cleared."
   --#SUMMARY "A warning condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 303

smwInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Symmetra MW UPS informational condition has been detected.
       The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: Informational condition detected."
   --#SUMMARY "An informational condition has been detected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 304

smwInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsGauge, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Symmetra MW UPS informational condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "APC Symmetra MW UPS: Informational condition cleared."
   --#SUMMARY "An informational condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 305

airCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An Air critical condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: A critical condition was detected. "
   --#SUMMARY "A critical condition was detected. "
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 306

airCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Air critical condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: A critical condition was cleared. "
   --#SUMMARY "A critical condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 307

airWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: An Air warning condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: A warning condition was detected. "
   --#SUMMARY "A warning condition was detected. "
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 308

airWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: An Air warning condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: A warning condition was cleared. "
   --#SUMMARY "A warning condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 309

airInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Air informational condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: Informational condition detected. "
   --#SUMMARY "An informational condition was detected. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 310

airInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An Air informational condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC Air: Informational condition was cleared. "
   --#SUMMARY "An informational condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 311

-- xPDU Traps (part 1)

xPDUInputVoltageLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: Three-phase input voltage to the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC XPDU: Main input low voltage alarm."
   --#SUMMARY "Input voltage is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 312

xPDUInputVoltageLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Three-phase input voltage to the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Main input low voltage alarm cleared."
   --#SUMMARY "Main input low voltage cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 313


xPDUInputVoltageHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: Three-phase input voltage to the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, above which the alarm was generated."
   --#TYPE "APC XPDU: Main input high voltage alarm."
   --#SUMMARY "Main input voltage is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 314

xPDUInputVoltageHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Three-phase input voltage to the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Main input high voltage alarm cleared."
   --#SUMMARY "Main input high voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 315

xPDUBypassVoltageLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: Three-phase bypass input voltage to the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC XPDU: Bypass input low voltage alarm."
   --#SUMMARY "Bypass input voltage is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 316

xPDUBypassVoltageLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Three-phase bypass input voltage to the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Bypass input low voltage alarm cleared."
   --#SUMMARY "Bypass input low voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 317

xPDUBypassVoltageHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: Three-phase bypass input voltage to the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, above which the alarm was generated."
   --#TYPE "APC XPDU: Bypass input high voltage alarm."
   --#SUMMARY "Bypass input voltage is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 318

xPDUBypassVoltageHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Three-phase bypass input voltage to the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Bypass input high voltage alarm cleared."
   --#SUMMARY "Bypass input voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 319

xPDUOutputVoltageLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase output voltage of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC XPDU:  Output low voltage alarm."
   --#SUMMARY "Output voltage is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 320

xPDUOutputVoltageLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase output voltage of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Output low voltage alarm cleared."
   --#SUMMARY "Output low voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 321

xPDUOutputVoltageHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase output voltage of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, above which the alarm was generated."
   --#TYPE "APC XPDU:  Output high voltage alarm."
   --#SUMMARY "Output voltage is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 322

xPDUOutputVoltageHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase output voltage of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XPDU: Output high voltage alarm cleared."
   --#SUMMARY "Output high voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 323

xPDUOutputCurrentLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase output load current of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC XPDU: Output low current alarm."
   --#SUMMARY "Output current is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 324

xPDUOutputCurrentLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase output load current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Output low current alarm cleared."
   --#SUMMARY "Output low current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 325

xPDUOutputCurrentHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase load current of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, above which the alarm was generated."
   --#TYPE "APC XPDU: Output high current alarm."
   --#SUMMARY "Output current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 326

xPDUOutputCurrentHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase output current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Output high current alarm cleared."
   --#SUMMARY "Output high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 327

xPDUOutputFrequencyAlarm TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The devices output frequency is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the frequency deviation from the nominal in tenths of Hertz."
   --#TYPE "APC XPDU: Output frequency out-of-range alarm."
   --#SUMMARY "Output frequency is out-of-range."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 328

xPDUOutputFrequencyAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The devices output frequency is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Output frequency back in range."
   --#SUMMARY "Output frequency in range."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 329

xPDUSystemGroundCurrentAlarm TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The earth ground current of the device is over the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured current in tenths of Amps.
        The fourth argument is the threshold, in tenths of Amps, above which the alarm was generated."
   --#TYPE "APC XPDU: Earth ground high current alarm."
   --#SUMMARY "Earth ground current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 330

xPDUSystemGroundCurrentAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The earth ground current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Earth ground high current alarm cleared."
   --#SUMMARY "Earth ground high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 331

xPDUInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsString02, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: A user input contact on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=OPEN, 2=CLOSED).
        The sixth argument is the configured normal input contact state (1=OPEN, 2=CLOSED)."
   --#TYPE "APC XPDU: Input contact has changed to its abnormal state."
   --#SUMMARY "Input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 332

xPDUInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsString02, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A user input contact on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=CLOSED, 2=OPEN).
        The sixth argument is the configured normal input contact state (1=OPEN, 2=CLOSED)."
   --#TYPE "APC XPDU: Input contact has changed to its normal state."
   --#SUMMARY "Input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 333

xPDUOutputNeutralCurrentHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "WARNING: The three-phase neutral current of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured current in tenths of Amps.
        The fourth argument is the threshold, in tenths of Amps, above which the alarm was generated."
   --#TYPE "APC XPDU: Output high neutral current alarm."
   --#SUMMARY "Output neutral current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 334

xPDUOutputNeutralCurrentHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The output neutral current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Output neutral high current alarm cleared."
   --#SUMMARY "Output neutral high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 335

xPDUCoolingFanAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's internal cooling fans have failed.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Cooling fan failure alarm."
   --#SUMMARY "Cooling fan failure."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 336

xPDUCoolingFanAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's cooling fans are now functioning properly.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Cooling fan alarm cleared."
   --#SUMMARY "Cooling fan alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 337

xPDUTransformerTempAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's isolation transformer is over temperature.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Isolation transformer over temperature alarm."
   --#SUMMARY "Transformer temp alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 338

xPDUTransformerTempAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's isolation transformer is no longer over temperature.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Isolation transformer over temperature alarm cleared."
   --#SUMMARY "Transformer temp alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 339

xPDUBranchCurrentLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: The current in a branch circuit is outside the limits specified for that
        branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC XPDU: Branch circuit low current alarm."
   --#SUMMARY "Branch circuit current is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 340

xPDUBranchCurrentLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The current in a branch circuit is back within the limits
        specified for that branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Branch circuit low current alarm cleared."
   --#SUMMARY "Branch circuit low current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 341

xPDUBranchCurrentHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: The current in a branch circuit is outside the limits specified for that
        branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, above which the alarm was generated."
   --#TYPE "APC XPDU: Branch circuit high current alarm."
   --#SUMMARY "Branch circuit current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 342

xPDUBranchCurrentHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The current in a branch circuit is back within the limits
        specified for that branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Branch circuit high current alarm cleared."
   --#SUMMARY "Branch circuit high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 343


xPDUInternalCommError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: There is an internal communication error in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Internal communication error."
   --#SUMMARY "Internal communication error."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 344

emsHardwareStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's hardware is improperly configured and operating outside
        normal bounds for the hardware.  This can be caused by improper devices being
        connected to the EMS ports or Alink Current limit detection."
   --#TYPE "APC EMS: Hardware is in an abnormal state."
   --#SUMMARY "Hardware is in an abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 345

emsHardwareStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's hardware is in its normal operational state.
        The first argument is the host device serial number."
   --#TYPE "APC EMS: Hardware is in a normal state."
   --#SUMMARY "Hardware is in its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 346

ceSevereCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Custom Event severe condition was detected.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: A severe condition was detected. "
   --#SUMMARY "A severe condition was detected. "
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 347

ceSevereConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Custom Event severe condition was cleared.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: A severe condition was cleared. "
   --#SUMMARY "A severe condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 348

ceWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: A Custom Event warning condition was detected.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: A warning condition was detected. "
   --#SUMMARY "A warning condition was detected. "
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 349

ceWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Custom Event warning condition was cleared.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: A warning condition was cleared. "
   --#SUMMARY "A warning condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 350

ceInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Custom Event informational condition was detected.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: Informational condition detected. "
   --#SUMMARY "An informational condition was detected. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 351

ceInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Custom Event informational condition was cleared.
       The first variable is the custom event text message.
       The second variable is the custom event number."
   --#TYPE "APC Custom Event: Informational condition was cleared. "
   --#SUMMARY "An informational condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 352

upsInternalOverTemperature TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The internal over temperature condition exists."
   --#TYPE "APC UPS: The internal over temperature condition exists."
   --#SUMMARY "The internal over temperature condition exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 353

upsInternalOverTemperatureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The internal over temperature condition cleared."
   --#TYPE "APC UPS: The internal over temperature condition cleared."
   --#SUMMARY "The internal over temperature condition cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 354

upsMpuReset TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The MPU has been reset."
   --#TYPE "APC UPS: The MPU has been reset."
   --#SUMMARY "The MPU has been reset."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 355

upsOutputSwitchClosed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The Output Switch is closed."
   --#TYPE "APC UPS: The Output Switch is closed."
   --#SUMMARY "The Output Switch is closed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 356

upsOutputSwitchOpened TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The Output Switch is open."
   --#TYPE "APC UPS: The Output Switch is open."
   --#SUMMARY "The Output Switch is open."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 357

upsCalibrationStackChanged TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: A calibration value in the stack was changed."
   --#TYPE "APC UPS: A calibration value in the stack was changed."
   --#SUMMARY "A calibration value in the stack was changed."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 358


-- Upgraded EMS now has more env traps

envMaxTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Max temperature threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Max temperature threshold violation."
   --#SUMMARY "Max temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 359

envMaxTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Max temperature threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Max temperature threshold violation cleared."
   --#SUMMARY "Max temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 360

envMinTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Min temperature threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Min temperature threshold violation."
   --#SUMMARY "Min temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 361

envMinTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Min temperature threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Min temperature threshold violation cleared."
   --#SUMMARY "Min temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 362

envMaxHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Max humidity threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Max humidity threshold violation."
   --#SUMMARY "Max humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 363

envMaxHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Max humidity threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity.
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Max humidity threshold violation cleared."
   --#SUMMARY "Max humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 364

envMinHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Min humidity threshold violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Min humidity threshold violation."
   --#SUMMARY "Min humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 365

envMinHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeHumidity,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Min humidity threshold violation cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current humidity.
        The fourth argument is the probe number.
        The fifth argument is the probe name."
   --#TYPE "APC ENV: Min humidity threshold violation cleared."
   --#SUMMARY "Min humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 366

envSTIncTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Short-term increasing temperature rate violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Short-term inc. temp rate violation."
   --#SUMMARY "Short-term inc. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 367

envSTIncTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Short-term increasing temperature rate cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Short-term inc. temp rate violation cleared."
   --#SUMMARY "Short-term inc. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 368

envSTDecTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Short-term decreasing temperature rate violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Short-term dec. temp rate violation."
   --#SUMMARY "Short-term dec. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 369

envSTDecTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Short-term decreasing temperature rate cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Short-term dec. temp rate violation cleared."
   --#SUMMARY "Short-term dec. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 370

envLTIncTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Long-term increasing temperature rate violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Long-term inc. temp rate violation."
   --#SUMMARY "Long-term inc. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 371

envLTIncTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Long-term increasing temperature rate cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Long-term inc. temp rate violation cleared."
   --#SUMMARY "Long-term inc. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 372

envLTDecTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "SEVERE: Long-term decreasing temperature rate violated on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Long-term dec. temp rate violation."
   --#SUMMARY "Long-term dec. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 373

envLTDecTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName, emsProbeStatusProbeTemperature, emsStatusSysTempUnits,
               emsProbeStatusProbeIndex, emsProbeStatusProbeName, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Long-term decreasing temperature rate cleared on the probe.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the current temperature.
        The fourth argument is the temperature scale.
        The fifth argument is the probe number.
        The sixth argument is the probe name."
   --#TYPE "APC ENV: Long-term dec. temp rate violation cleared."
   --#SUMMARY "Long-term dec. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 374

-- Battery Management System Traps

bmsCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Battery Management System critical condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: A critical condition was detected. "
   --#SUMMARY "A critical condition was detected. "
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 375

bmsCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Battery Management System critical condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: A critical condition was cleared. "
   --#SUMMARY "A critical condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 376

bmsWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: A Battery Management System warning condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: A warning condition was detected. "
   --#SUMMARY "A warning condition was detected. "
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 377

bmsWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: A Battery Management System warning condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: A warning condition was cleared. "
   --#SUMMARY "A warning condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 378

bmsInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Battery Management System informational condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: Informational condition detected. "
   --#SUMMARY "An informational condition was detected. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 379

bmsInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A Battery Management System informational condition was cleared.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "APC BMS: Informational condition was cleared. "
   --#SUMMARY "An informational condition was cleared. "
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 380

-- xATS Traps

xATSOutputVoltageLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device three-phase output voltage of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC XATS:  Output low voltage alarm."
   --#SUMMARY "Output voltage is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 381

xATSOutputVoltageLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The devices three-phase output voltage is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XATS: Output low voltage alarm cleared."
   --#SUMMARY "Output low voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 382

xATSOutputVoltageHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device three-phase output voltage of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts.
        The fifth argument is the threshold, in tenths of Volts, above which the alarm is generated."
   --#TYPE "APC XATS: Output high voltage alarm."
   --#SUMMARY "Output voltage is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 383

xATSOutputVoltageHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The devices three-phase output voltage is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1-N, 2=L2-N, 3=L3-N, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
        The fourth argument is the measured voltage in tenths of Volts."
   --#TYPE "APC XATS: Output high voltage alarm cleared."
   --#SUMMARY "Output high voltage alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 384

xATSOutputCurrentLowAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase load current of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in Amps.
        The fifth argument is the threshold, in Amps, from which the alarm was generated."
   --#TYPE "APC XATS: Output low current alarm."
   --#SUMMARY "Output current is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 385

xATSOutputCurrentLowAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase load current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in Amps."
   --#TYPE "APC XATS: Output low current alarm cleared."
   --#SUMMARY "Output low current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 386

xATSOutputCurrentHighAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The three-phase output load current of the device is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in Amps.
        The fifth argument is the threshold, in Amps, from which the alarm was generated."
   --#TYPE "APC XATS: Output high current alarm."
   --#SUMMARY "Output current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 387

xATSOutputCurrentHighAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The three-phase output load current of the device is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3).
        The fourth argument is the measured current in Amps."
   --#TYPE "APC XATS: Output high current alarm cleared."
   --#SUMMARY "Output high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 388


xATSOutputFrequencyAlarm TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The devices output frequency is outside the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the frequency deviation from the nominal in tenths of Hertz.
        The fourth argument is the frequency deviation threshold in tenths of Hertz,
        from which the alarm was generated."
   --#TYPE "APC XATS: Output frequency out-of-range alarm."
   --#SUMMARY "Output frequency is out-of-range."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 389

xATSOutputFrequencyAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The devices output frequency is back within the specified limits.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Output frequency back in range."
   --#SUMMARY "Output frequency in range."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 390

xATSInternalCommError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: There is an internal communication error in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Internal communication error."
   --#SUMMARY "Internal communication error."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 391

xATSInternalCommErrorCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Internal communication has been restored.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Internal Communication error cleared."
   --#SUMMARY "ATS Communication error cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 392

xATSDataCommMismatchError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A data incompatibility exists within the device.  This
        is typically the result of mismatches between firmware revisions
        of the transfer switch controller and the Network Management interface.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Data mismatch error."
   --#SUMMARY "ATS data mismatch error."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 393

xATSDataCommMismatchErrorCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The internal data incompatibility has been resolved.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: data mismatch error cleared."
   --#SUMMARY "ATS data mismatch error cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 394

xATSGenCommLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The XATS cannot communicate with the generator.
        This will make unavailable all the xATSGenerator OIDs.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: No communication with generator."
   --#SUMMARY "ATS/Generator communication lost."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 395

xATSGenCommEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The XATS has established communication with the generator.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Communication with generator established."
   --#SUMMARY "ATS/generator communication established."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 396

xATSNeutralPosition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
                mtrapargsString }
   DESCRIPTION
      "WARNING: XATS has transferred to neutral position.
        In this position neither Source 1 nor Source 2 is selected,
        and the XATS will have no output voltage.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the mode in which the switch is operating
        (1=Auto, 2=Not-in-Auto, Abnormal Condition  3=Not-in-Auto, manual)."
   --#TYPE "APC XATS: Transferred to the neutral (no output power) position."
   --#SUMMARY "Transferred to neutral."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 397

xATSSwitchTransferEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
                mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: XATS has transferred from one source to the other.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the mode in which the switch is operating.
        (1=Auto, 2=Not-in-Auto, Abnormal Condition  3=Not-in-Auto, manual).
        The fourth argument is the input source selected (1=Source 1, 2=Source 2).
        The fifth argument is type of transfer that took place. (1=Closed, 2=Open, 3=Unknown)"
   --#TYPE "APC XATS: Transferred from Source-X to Source-Y."
   --#SUMMARY "Source-to-Source transfer."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 398

xATSInternalATSFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: An internal XATS fault has been detected.
        The XATS may have forced itself to not-in-auto mode (abnormal condition),
        as indicated by the xATSSwitchStatusAutoSwitchOperationalMode OID.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument indicates the detected fault.

           1=Cannot Close S1
           2=Cannot Close S2
           3=Cannot Open S1
           4=Cannot Open S2
           5=Cannot Trip Open S1
           6=Cannot Trip Open S2
           7=Start Contact Failure
           8=Voltage Sensing Failure"

   --#TYPE "APC XATS: Internal fault detected."
   --#SUMMARY "ATS internal fault detected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 399

xATSInternalATSFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected internal XATS fault has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument indicates the detected fault.

           1=Cannot Close S1
           2=Cannot Close S2
           3=Cannot Open S1
           4=Cannot Open S2
           5=Cannot Trip Open S1
           6=Cannot Trip Open S2
           7=Start Contact Failure
           8=Voltage Sensing Failure"

   --#TYPE "APC XATS: Internal fault cleared."
   --#SUMMARY "ATS internal fault cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 400

xATSEngineStartAsserted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The XATS has asserted the Engine Start contact.
        This should result in the generator producing output voltage.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument indicates the reason that the start signal was asserted
        1=Unknown, 2=S1 Low Voltage, 3=S1 High Voltage, 4=S1 Line Imbalance,
        5=S1 Freq Range, 6=S1 Bad Rotation."
   --#TYPE "APC XATS: Engine Start signal asserted."
   --#SUMMARY "Engine Start asserted."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 401

xATSEngineStopAsserted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The XATS has de-asserted the Engine Start contact.
        This should result in the generator shutting down, and producing no output voltage.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Engine Stop signal asserted."
   --#SUMMARY "Engine Stop asserted."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 402

xATSStartFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator failed to start. After assertion of the
        Engine Start signal, the quality of Source 2 was not seen as good.
        This alarm can be cleared using the xATSSwitchStatusClearLatchedAlarms OID.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument indicates the line quality at S2
         1=Unknown, 2=S2 Low Voltage, 3=S2 High Voltage, 4=S2 Line Imbalance,
         4=S2 Freq Range, 5=S2 Bad Rotation."
   --#TYPE "APC XATS: Generator failed to start alarm."
   --#SUMMARY "Generator failed to start."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 403

xATSStopFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The generator failed to stop. After de-assertion of the
        Engine Start signal, the quality of Source 2 continued to be seen as good.
        This alarm can be cleared using the xATSSwitchStatusClearLatchedAlarms OID.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Generator failed to stop alarm."
   --#SUMMARY "Generator failed to stop."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 404

xATSNotInAutomaticMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: Automatic Transfer Switch is not in automatic mode.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The xATSSwitchStatusAutoSwitchStatus OID and the
        xATSSwitchStatusAutoSwitchOperationalMode OID
        can provide more information about the state of the XATS."
   --#TYPE "APC XATS: XATS is not-in-automatic mode."
   --#SUMMARY "ATS not in auto."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 405

xATSNotInAutomaticModeCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Automatic Transfer Switch is in automatic mode.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: XATS in auto mode."
   --#SUMMARY "ATS in auto mode."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 406

xATSEpoTripped TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's Emergency Power Off (EPO) circuit is tripped.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Emergency Power Off (EPO) tripped."
   --#SUMMARY "EPO tripped."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 407

xATSEpoReset TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's Emergency Power Off (EPO) circuit has been
        reset to the armed position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Emergency Power Off (EPO) reset."
   --#SUMMARY "EPO armed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 408

xATSEpoTestMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The device's Emergency Power Off (EPO) circuit has been
        switched back to the test position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Emergency Power Off (EPO) in test mode."
   --#SUMMARY "EPO disabled."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 409

xATSEpoArmed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's Emergency Power Off (EPO) circuit has been
        switched back to the armed position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Emergency Power Off (EPO) enabled."
   --#SUMMARY "EPO armed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 410

xATSTestInitiated TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A scheduled test has been initiated.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the type of test initiated (1=scheduled, 2=manual)."
   --#TYPE "APC XATS: Test initiated."
   --#SUMMARY "Test initiated."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 411

xATSTestCanceled TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The scheduled test has been canceled
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the type of test initiated (1=scheduled, 2=manual)."
   --#TYPE "APC XATS: Test canceled."
   --#SUMMARY "Test canceled."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 412

xATSTestFailed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The initiated test has failed.
        This alarm can be cleared using the xATSSwitchStatusClearLatchedAlarms OID.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Initiated test failed."
   --#SUMMARY "Initiated test failed."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 413

xATSTestPassed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The initiated test has passed
        switched back to the armed position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Initiated test passed."
   --#SUMMARY "Initiated test passed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 414

xATSInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsString02, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: A user input contact on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=OPEN, 2=CLOSED).
        The sixth argument is the configured normal input contact state (1=OPEN, 2=CLOSED)."
   --#TYPE "APC XATS: Input contact has changed to its abnormal state."
   --#SUMMARY "Input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 415

xATSInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsString02, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A user input contact on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the input contact number.
        The fourth argument is the input contact name.
        The fifth argument is the input contact state (1=OPEN, 2=CLOSED).
        The sixth argument is the configured normal input contact state (1=OPEN, 2=CLOSED)."
   --#TYPE "APC XATS: Input contact has changed to its normal state."
   --#SUMMARY "Input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 416

xATSRemoteStartContactMismatch TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The state of the generator's Remote Start input
        and the ATS's Engine Start output do not match.
        This indicates something wrong in the Engine Start wiring,
        which must be corrected. This condition will prevent the
        generator from being started when needed.

          (See also: xATSGeneratorStatusRemoteStart
           and xATSSwitchStatusEngineStartSignal OIDs)

        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Generator/ATS start contact mismatch."
   --#SUMMARY "Generator/ATS start contact mismatch."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 417

xATSRemoteStartContactMismatchCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Mismatch in the state of the generator's
        Remote Start input and the ATS's Engine Start output as been resolved.
        This indicates something wrong in the Engine Start wiring,
        which must be corrected. This condition will prevent the
        generator from being started when needed.

          (See also: xATSGeneratorStatusRemoteStart
           and xATSSwitchStatusEngineStartSignal OIDs)

        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Generator/ATS start contact mismatch cleared."
   --#SUMMARY "Generator/ATS start contact mismatch cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 418

xATSDoorOpenAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The XATS exterior panel door is open.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Panel door is open alarm."
   --#SUMMARY "Panel door open alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 419

xATSDoorOpenAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The external door to the device is closed.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Panel door open alarm cleared."
   --#SUMMARY "Panel door open alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 420

xATSDCBackupAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The XATS's DC backup has been lost. The XATS will lose power
        on Source 1 failure, causing the Engine Start signal to be asserted.
        The XATS will then restart from Source 2.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: DC backup failure."
   --#SUMMARY "ATS DC backup failure."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 421

xATSDCBackupAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: DC backup alarm has been cleared in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: DC backup alarm cleared."
   --#SUMMARY "DC backup alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 422

-- xATS Generator Traps

xATSGeneratorLowCoolantLevelAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Low coolant level has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low coolant level alarm."
   --#SUMMARY "Generator low coolant level alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 423

xATSGeneratorLowCoolantLevelAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low coolant level has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low coolant level alarm cleared."
   --#SUMMARY "Generator low coolant level alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 424

xATSGeneratorVeryLowCoolantLevelAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Very low coolant level has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator very low coolant level alarm."
   --#SUMMARY "Generator very low coolant level alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 425

xATSGeneratorVeryLowCoolantLevelAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected Very low coolant level has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator very low coolant level alarm cleared."
   --#SUMMARY "Generator very low coolant level alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 426

xATSGeneratorHighCoolantTempAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: High coolant temperature has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator high coolant temperature alarm."
   --#SUMMARY "Generator high coolant temperature alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 427

xATSGeneratorHighCoolantTempAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected high coolant temperature has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator high coolant temperature alarm cleared."
   --#SUMMARY "Generator high coolant temperature alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 428

xATSGeneratorVeryHighCoolantTempAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Very high coolant temperature has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator very high coolant temperature alarm."
   --#SUMMARY "Generator very high coolant temperature alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 429

xATSGeneratorVeryHighCoolantTempAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The Very high coolant temperature condition has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator very high coolant temperature alarm cleared."
   --#SUMMARY "Generator very high coolant temperature alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 430

xATSGeneratorLowCoolantTempAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Low coolant temperature has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low coolant temperature alarm."
   --#SUMMARY "Generator low coolant temperature alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 431

xATSGeneratorLowCoolantTempAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The low coolant temperature condition has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low coolant temperature alarm cleared."
   --#SUMMARY "Generator low coolant temperature alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 432

xATSGeneratorLowOilLevelAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Low oil level has been detected in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low oil level alarm."
   --#SUMMARY "Generator low oil level alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 433

xATSGeneratorLowOilLevelAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Low oil level alarm has been cleared in the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low oil level alarm cleared."
   --#SUMMARY "Generator low oil level alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 434

xATSGeneratorLowBatteryVoltDuringCrankAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's battery voltage has been detected
        as low while cranking the engine.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Low batt. voltage while cranking alarm."
   --#SUMMARY "Generator low battery volts while cranking alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 435

xATSGeneratorLowBatteryVoltDuringCrankAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator's low battery voltage while
        cranking condition has been cleared.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "XGEN: Generator low batt. voltage while cranking alarm cleared."
   --#SUMMARY "Generator low battery volts while cranking alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 436

xATSGeneratorVeryLowBatteryVoltDuringCrankAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's battery voltage has been detected
        as very low while cranking the engine.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "XGEN: Generator v.low battery voltage while cranking alarm."
   --#SUMMARY "Generator v.low battery volts while cranking alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 437

xATSGeneratorVeryLowBatteryVoltDuringCrankAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator's high battery voltage while
        cranking condition has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "XGEN: Generator v.low batt volt, while cranking alarm cleared."
   --#SUMMARY "Generator v.low battery volts while cranking alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 438

xATSGeneratorEStop TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's emergency stop input has been activated.
        After the emergency stop signal has been removed, the E-Stop condition
        must be cleared before the generator can be started again.
        E-Stop conditions can only be cleared via the generator front panel.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code.
        The fourth argument is the type of E-Stop (1=LOCAL, 2=REMOTE)."
   --#TYPE "APC XGEN: Generator emergency stop engaged."
   --#SUMMARY "Generator emergency stop engaged."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 439

xATSGeneratorEStopCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator's emergency stop condition has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code.
        The fourth argument is the type of E-Stop (1=LOCAL, 2=REMOTE)."
   --#TYPE "APC XGEN: Generator emergency stop condition cleared."
   --#SUMMARY "Generator emergency stop condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 440

xATSGeneratorHighBatteryVolt TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The generator's battery voltage has been detected as high.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator high battery voltage."
   --#SUMMARY "Generator high battery volts."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 441

xATSGeneratorHighBatteryVoltCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected high battery voltage has been cleared, on the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator high battery voltage condition cleared."
   --#SUMMARY "Generator high battery volts condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 442

xATSGeneratorLowBatteryVolt TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's battery voltage has been detected as low.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low battery voltage."
   --#SUMMARY "Generator low battery volts."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 443

xATSGeneratorLowBatteryVoltCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low battery voltage has been cleared, on the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low battery voltage condition cleared."
   --#SUMMARY "Generator low battery volts condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 444

xATSGeneratorControlSwitchNotAuto TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The control switch on the generator is not in auto position.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator not-in-automatic mode."
   --#SUMMARY "Generator not-in-auto."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 445

xATSGeneratorControlSwitchNotAutoCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The control switch on the generator is in auto position.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator automatic mode restored."
   --#SUMMARY "Generator not-in-auto cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 446

xATSGeneratorLowOilPressure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's oil pressure has been detected as low.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low oil pressure."
   --#SUMMARY "Generator low oil pressure."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 447

xATSGeneratorLowOilPressureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low oil pressure has been cleared, on the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator low oil pressure condition cleared."
   --#SUMMARY "Generator low oil pressure condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 448

xATSGeneratorVeryLowOilPressure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator's oil pressure has been detected as very low.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator v.low oil pressure."
   --#SUMMARY "Generator v.low oil pressure."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 449

xATSGeneratorVeryLowOilPressureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected v.low oil pressure has been cleared, on the generator.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator v.low oil pressure condition cleared."
   --#SUMMARY "Generator v.low oil pressure condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 450

xATSGeneratorOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator is overloaded.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator is in overload event."
   --#SUMMARY "Generator on overload event."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 451

xATSGeneratorOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator is running within loading limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator is in overload event cleared."
   --#SUMMARY "Generator on overload event cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 452

xATSGeneratorLowACVEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator AC voltage is outside the acceptable bounds.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: State of the Generator AC voltage."
   --#SUMMARY " State of the Generator AC voltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 453

xATSGeneratorLowACVEventCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator AC voltage is within normal bounds.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: State of the Generator AC voltage cleared."
   --#SUMMARY "State of the Generator AC voltage cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 454

xATSGeneratorHighACVEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator AC voltage is outside the acceptable bounds.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: State of the Generator AC voltage."
   --#SUMMARY " State of the Generator AC voltage."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 455

xATSGeneratorHighACVEventCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator AC voltage is within normal bounds.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: State of the Generator AC voltage cleared."
   --#SUMMARY "State of the Generator AC voltage cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 456

xATSGeneratorOverspeed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator is running over the acceptable RPM.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator overspeed condition."
   --#SUMMARY "Generator overspeed condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 457

xATSGeneratorOverspeedCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator overspeed shutdown has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator overspeed condition cleared."
   --#SUMMARY "Generator overspeed condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 458

xATSGeneratorEngineCold TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator engine is cold, may not start.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator engine is cold, may not start."
   --#SUMMARY "Generator engine is cold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 459

xATSGeneratorEngineColdCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The engine is not cold to start.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Engine is cold to start condition cleared."
   --#SUMMARY "Engine is cold to start condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 460

xATSGeneratorOutputBreakerOpen TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generators output breaker has been detected as open.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator output breaker open alarm."
   --#SUMMARY "Generator output breaker open."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 461

xATSGeneratorOutputBreakerOpenCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The engine is not cold to start.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator output breaker open alarm cleared."
   --#SUMMARY "Generator output breaker open cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 462

xATSGeneratorLowFuelLevelAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The tank fuel level is below the limits specified
        in the xATSGeneratorFuelSystemLowFuelLevelThreshold OID.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured fuel level in percent of full."
   --#TYPE "APC XGEN: Low fuel level alarm."
   --#SUMMARY "Generator low fuel level alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 463

xATSGeneratorLowFuelLevelAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The tank fuel level is back above the specified limit.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XGEN: Low fuel level alarm cleared."
   --#SUMMARY "Generator low fuel level alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 464

xATSGeneratorVeryLowFuelLevelAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The tank fuel level is below the low threshold limits.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the measured tank fuel level in percent of full."
   --#TYPE "APC XGEN: Very Low fuel level alarm."
   --#SUMMARY "Generator very low fuel level alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 465

xATSGeneratorVeryLowFuelLevelAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low tank level has been cleared in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XGEN: Very low fuel level alarm cleared."
   --#SUMMARY "Generator very low fuel level alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 466

xATSGeneratorLowRunTimeAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The estimated runtime is below the limits specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the estimated runtime in hours."
   --#TYPE "APC XGEN: Low run time alarm."
   --#SUMMARY "Generator low run time alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 467

xATSGeneratorLowRunTimeAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low runtime has been cleared in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XGEN: Low run time alarm cleared."
   --#SUMMARY "Generator low run time alarm."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 468

xATSGeneratorVeryLowRunTimeAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The estimated runtime is below the limits specified
        in the xATSGeneratorFuelSystemVeryLowRunTimeThreshold OID.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the estimated runtime in hours."
   --#TYPE "APC XGEN: Very low run time alarm."
   --#SUMMARY "Generator very low run time alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 469

xATSGeneratorVeryLowRunTimeAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The detected low runtime has been cleared in the device.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XGEN: Very low run time alarm cleared."
   --#SUMMARY "Generator very low run time alarm."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 470

xATSGeneratorServiceDueAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The generator is due for scheduled service.
        Generation of this alarm is based on calendar days since
        and/or actual generator run-hours since last service.
        This alarm is cleared using the xATSGeneratorServiceResetRecord OID.

          (See also: xATSGeneratorServiceCalendarIntervalThreshold
           and xATSGeneratorServiceRunHoursThreshold OIDs)

        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Generator scheduled maintenance is due."
   --#SUMMARY "Generator maintenance due."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 471

xATSGeneratorServiceDueAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator's service registers have been reset.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: Generator service due alarm is cleared."
   --#SUMMARY "Generator service alarm is cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 472

xATSGeneratorShutdown TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator is shutdown.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator shutdown."
   --#SUMMARY "Generator shutdown"
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 473

xATSGeneratorShutdownCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The generator shutdown alarm is cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator shutdown is cleared."
   --#SUMMARY "Generator shutdown is cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 474

xATSGeneratorBatteryCharger TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The generator battery charger is nonfunctional.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator batt. charger is nonfunctional."
   --#SUMMARY "Generator battery charger is nonfunctional"
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 475

xATSGeneratorBatteryChargerCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Fault in the generator battery charger is cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Fault in the generator battery charger is cleared."
   --#SUMMARY "Fault in the generator battery charger is cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 476

xATSGeneratorGenericEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Any generic generator event.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator generic event."
   --#SUMMARY "Generator generic event."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 477

xATSGeneratorGenericEventCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Generated generic generator event is cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generic generator event is cleared."
   --#SUMMARY "Generic generator event is cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 478

-- xPDU Traps (part 2)

xPDUInternalCommErrorCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Internal communication has been restored.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Internal Communication error cleared."
   --#SUMMARY "Communication error cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 479


xPDUSystemStateAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The PDU's breakers (Q1, Q2 & Q3) are in a configuration that might lead
        to system unavailability.  it may signify a temporary condition, when the breakers
        are placed in an atypical manner as the user transitions to (UPS OPERATION or MAINTENANCE BYPASS)
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the type of state change (1=NO UPS INPUT, 2=NO PANEL FEED, 3=ATYPICAL BYPASS MODE).
         note: The NO_PANEL_FEED alarm is applicable only for PDUs with system bypass."
   --#TYPE "APC XPDU: System state change alarm."
   --#SUMMARY "PDU state change alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 480

xPDUSystemStateAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The PDU's breakers (Q1, Q2 & Q3) are set in a configuration
        that is a non-alarm state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the type of state change (1=NO UPS INPUT, 2=NO PANEL FEED, 3=ATYPICAL BYPASS MODE).
         note: The NO_PANEL_FEED alarm is applicable only for PDUs with system bypass."
   --#TYPE "APC XPDU: Normal system state change."
   --#SUMMARY "PDU normal state change."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 481

xPDUEpoTestMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The device's Emergency Power Off (EPO) circuit has been
        switched back to the test position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Emergency Power Off (EPO) in test mode."
   --#SUMMARY "EPO disabled."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 482

xPDUEpoArmed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's Emergency Power Off (EPO) circuit has been
        switched back to the armed position.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Emergency Power Off (EPO) enabled."
   --#SUMMARY "EPO armed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 483

xPDUFuseBlownAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: One or more fuses in this PDU have been detected as open.
        These fuses are in the feed to the UPS associated with this PDU.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC XPDU: Check fuse alarm."
   --#SUMMARY "Fuse detected opened."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 484

xPDUFuseBlownAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A previous check fuse alarm in this PDU has cleared.
        These fuses are in the feed to the UPS associated with this PDU.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC XPDU: Check fuse alarm cleared."
   --#SUMMARY "Fuse alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 485

xPDUBreakerPositionAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "SEVERE: A PDU breaker is in a state that compromises system availability.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the breaker (1=MAIN INPUT, 2=BYPASS INPUT, 3=CROSS TIE, 4=OUTPUT).
         note: The OUTPUT breaker position alarm is applicable only for PDUs with no system bypass.
        The fourth argument is the breaker position (1=OPEN, 2=CLOSED)."
   --#TYPE "APC XPDU: Breaker position alarm."
   --#SUMMARY "Breaker position alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 486

xPDUBreakerPositionAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A PDU breaker is no longer in a state that compromises system availability.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the breaker (1=MAIN INPUT, 2=BYPASS INPUT, 3=CROSS TIE, 4=OUTPUT).
         note: The OUTPUT breaker position alarm cleared is applicable only for PDUs with no system bypass."
   --#TYPE "APC XPDU: Breaker position alarm cleared."
   --#SUMMARY "Breaker alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 487

xPDUBreakerChangeEvent TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A system breaker or switch within the device has changed state.
        They are generated when any of the Q1, Q2 or Q3 breakers have changed states.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the breaker that has changed
        (1=UPS FEED (Q1), 2=UPS OUTPUT(Q2), 3=MAINTENANCE BYPASS (Q3).
        The fourth argument is the state of the breaker that has changed (1=OPEN, 2=CLOSED).
        The fifth argument is a 8-bit field representing the state of all breakers in the system,
        when any of one of the Q1, Q2 or Q3 breakers have changed state.

        The bit map is represented in the following manner (b7, b6 ... b0)
        b0 - UPS FEED (Q1)
        b1 - MAINTENANCE BYPASS (Q3)
        b2 - UPS OUTPUT (Q2)
        b3 - MAIN INPUT
        b4 - BYPASS INPUT
        b5 - CROSS-TIE OUTPUT

        Example:  value of 60 (0x3C) indicates that the CROSS_TIE, BYPASS and MAIN INPUT, and Q2 breakers
        are CLOSED and Q3, Q1 breakers are OPEN."
   --#TYPE "APC XPDU: Breaker/switch change event."
   --#SUMMARY "Breaker/switch change event."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 488

xPDUDataCommMismatchError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: A data incompatibility exists within the device.  This
        is typically the result of mismatches between firmware revisions
        of the transfer switch controller and the Network Management interface.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: Data mismatch error."
   --#SUMMARY "XPDU data mismatch error."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 489

xPDUDataCommMismatchErrorCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The internal data incompatibility has been resolved.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: data mismatch error cleared."
   --#SUMMARY "XPDU data mismatch error cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 490

xPDUSystemInMaintenanceBypassMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "WARNING: The PDU state has changed to maintenance bypass mode.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: System state changed to maintenance bypass."
   --#SUMMARY "PDU state changed to maintenance bypass."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 491

xPDUSystemInUPSOperationalMode TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The PDU state has changed to UPS operational mode.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XPDU: System state changed to UPS operational."
   --#SUMMARY "PDU state changed to UPS operational."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 492

xATSGeneratorFuelTankRuptureAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Detected a rupture in the inner wall of the generator fuel tank.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator inner wall rupture alarm."
   --#SUMMARY "Generator inner wall rupture alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 493

xATSGeneratorFuelTankRuptureAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The rupture in the inner wall of the generator is not detected.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator inner wall rupture alarm cleared."
   --#SUMMARY "Generator inner wall rupture alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 494

xATSGeneratorGroundFaultAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName,  mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Generator ground fault alarm.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator ground fault alarm."
   --#SUMMARY "Generator ground fault alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 495

xATSGeneratorGroundFaultAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Generator ground fault alarm cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the OEM's fault/event code."
   --#TYPE "APC XGEN: Generator ground fault alarm cleared."
   --#SUMMARY "Generator ground fault alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 496

xATSOutputLoadPoweredByGeneratorAlarm TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The system load on the output of the ATS is being powered by source 2 (generator).
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument indicates if the load is powered by the generator,
        when 'load testing' the generator (1 = LIVE, 2 = TEST)."
   --#TYPE "APC XATS: System load powered by generator alarm."
   --#SUMMARY "System load powered by generator."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 497

xATSOutputLoadPoweredByGeneratorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The system load on the output of the ATS is no longer being powered by source 2 (generator).
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: System load powered by generator alarm cleared."
   --#SUMMARY "System load powered by generator alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 498

xAPCControllerFirmwareUpdateTransferStart TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString05, mtrapargsString04, mtrapargsString02, mtrapargsString03,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Start controller firmware transfer in the device.
        The first argument is the host device serial number.
        The second argument is the host model name that initiated the transfer.
        The third argument is the name of the file that is transferred.
        The fourth argument is the updated revision of the file, if available
        The fifth argument is the reason for the update, if available
         (1=User request, 2=Automatic upgrade by NMC, 3=Unknown)."
   --#TYPE "APC: Start update transfer."
   --#SUMMARY "Start update transfer."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 499

xAPCControllerFirmwareUpdateTransferComplete TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString05, mtrapargsString04, mtrapargsString02,
               mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Transfer of controller firmware was completed in the device.
        The first argument is the host device serial number.
        The second argument is the host device model name that completed the transfer.
        The third argument is the name of the file that was transferred.
        The fourth argument is the revision of the file that was transferred, if available."
   --#TYPE "APC : Update transfer complete."
   --#SUMMARY "Update transfer complete."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 500


xAPCControllerFirmwareUpdateTransferFailed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString05, mtrapargsString04, mtrapargsString02,
               mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "SEVERE: Transfer of controller firmware failed.
        The first argument is the host device serial number.
        The second argument is the host device model name that failed to transfer.
        The third argument is the name of the file that failed the transfer, if available.
        The fourth argument is the reason for failure."
   --#TYPE "APC: Update transfer failed."
   --#SUMMARY "Update transfer failed."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 501

upsPfcInputRelayFailure TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The PFC (Power Factor Correction) input relay failure exists."
   --#TYPE "APC UPS: The PFC input relay failure exists."
   --#SUMMARY "The PFC (Power Factor Correction) input relay failure exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 502

upsPfcInputRelayFailureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The PFC (Power Factor Correction) input relay failure cleared."
   --#TYPE "APC UPS: The PFC input relay failure cleared."
   --#SUMMARY "The PFC (Power Factor Correction) input relay failure cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 503

upsInverterOverTemperature TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The inverter over temperature condition exists."
   --#TYPE "APC UPS: The inverter over temperature condition exists."
   --#SUMMARY "The inverter over temperature condition exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 504

upsInverterOverTemperatureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The inverter over temperature condition cleared."
   --#TYPE "APC UPS: The inverter over temperature condition cleared."
   --#SUMMARY "The inverter over temperature condition cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 505

upsBatteryOverVoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The battery over voltage condition exists."
   --#TYPE "APC UPS: The battery over voltage condition exists."
   --#SUMMARY "The battery over voltage condition exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 506

upsBatteryOverVoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The battery over voltage condition cleared."
   --#TYPE "APC UPS: The battery over voltage condition cleared."
   --#SUMMARY "The battery over voltage condition cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 507

upsEepromFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The EEPROM fault exists."
   --#TYPE "APC UPS: The EEPROM fault exists."
   --#SUMMARY "The EEPROM fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 508

upsEepromFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The EEPROM fault cleared."
   --#TYPE "APC UPS: The EEPROM fault cleared."
   --#SUMMARY "The EEPROM fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 509

-- rARU Traps (part 2)

aruFanRuntimeAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: The total running hours for a fan has exceeded
        the run hour threshold.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name.
        The fifth argument indicates which fan in the ARU."
   --#TYPE "APC ARU: Fan Runhour Warning."
   --#SUMMARY "Fan Runhour Alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 510

aruFanRuntimeAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The total running hours for a fan is no longer
        above the fan runhour threshold.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name.
        The fifth argument indicates which fan in the ARU."
   --#TYPE "APC ARU: Fan Runhour Alarm Cleared."
   --#SUMMARY "Fan Runhour Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 511


aruFanPoorPerformanceAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: Poor fan performance has been detected in the ARU,
        indicating that the fan may be close to failing.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name.
        The fifth argument indicates which fan in the ARU."
   --#TYPE "APC ARU: Poor Fan Performance Warning."
   --#SUMMARY "Fan Health Alarm."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 512

aruFanPoorPerformanceAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Fan performance is no longer degraded.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name.
        The fifth argument indicates which fan in the ARU."
   --#TYPE "APC ARU: Poor Fan Performance Warning Cleared."
   --#SUMMARY "Fan Health Alarm Cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 513

aruRedundantPowerLostAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "WARNING: One of the redundant line cords on the ARU is no longer receiving AC power.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Redundant AC Input is not Present."
   --#SUMMARY "AC Redundancy Lost."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 514

aruRedundantPowerLostAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
               rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Line-cord redundancy has been restored to the ARU.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the ARU number.
        The fourth argument is the ARU name."
   --#TYPE "APC ARU: Redundant AC Input is Present."
   --#SUMMARY "AC Redundancy Restored."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 515

apcDeviceConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device configuration change has been made on the device.
        The first argument is the device serial number.
        The second argument is the device name.
        The third argument is a secondary device id number."
   --#TYPE "APC: A device configuration change on a device."
   --#SUMMARY "A device configuration change has been made on a device."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 516

apcEnvSensorConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A sensor has been connected to the host device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Sensor Connected."
   --#SUMMARY "Sensor Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 517

apcEnvSensorDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "SEVERE: A sensor has been disconnected from the device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Sensor Disconnected."
   --#SUMMARY "Sensor Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 518

apcEnvMaxTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Max temperature threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Max temperature threshold violation."
   --#SUMMARY "Max temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 519

apcEnvMaxTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Max temperature threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Max temperature threshold violation cleared."
   --#SUMMARY "Max temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 520

apcEnvHighTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: High temperature threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: High temperature threshold violation."
   --#SUMMARY "High temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 521

apcEnvHighTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High temperature threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: High temperature threshold violation cleared."
   --#SUMMARY "High temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 522

apcEnvLowTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: Low temperature threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Low temperature threshold violation."
   --#SUMMARY "Low temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 523

apcEnvLowTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low temperature threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Low temperature threshold violation cleared."
   --#SUMMARY "Low temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 524

apcEnvMinTempThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Min temperature threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Min temperature threshold violation."
   --#SUMMARY "Min temperature threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 525

apcEnvMinTempThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Min temperature threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The sixth argument is the sensor number.
        The seventh argument is the sensor name."
   --#TYPE "APC ENV: Min temperature threshold violation cleared."
   --#SUMMARY "Min temperature threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 526

apcEnvSTIncTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Short-term increasing temperature rate violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Short-term inc. temp rate violation."
   --#SUMMARY "Short-term inc. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 527

apcEnvSTIncTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Short-term increasing temperature rate cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Short-term inc. temp rate violation cleared."
   --#SUMMARY "Short-term inc. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 528

apcEnvSTDecTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Short-term decreasing temperature rate violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Short-term dec. temp rate violation."
   --#SUMMARY "Short-term dec. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 529

apcEnvSTDecTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Short-term decreasing temperature rate cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Short-term dec. temp rate violation cleared."
   --#SUMMARY "Short-term dec. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 530

apcEnvLTIncTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Long-term increasing temperature rate violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Long-term inc. temp rate violation."
   --#SUMMARY "Long-term inc. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 531

apcEnvLTIncTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Long-term increasing temperature rate cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Long-term inc. temp rate violation cleared."
   --#SUMMARY "Long-term inc. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 532

apcEnvLTDecTempRateViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Long-term decreasing temperature rate violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Long-term dec. temp rate violation."
   --#SUMMARY "Long-term dec. temp rate violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 533

apcEnvLTDecTempRateViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Long-term decreasing temperature rate cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Long-term dec. temp rate violation cleared."
   --#SUMMARY "Long-term dec. temp rate violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 534

apcEnvMaxHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Max humidity threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Max humidity threshold violation."
   --#SUMMARY "Max humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 535

apcEnvMaxHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Max humidity threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Max humidity threshold violation cleared."
   --#SUMMARY "Max humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 536

apcEnvHighHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: High humidity threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: High humidity threshold violation."
   --#SUMMARY "High humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 537

apcEnvHighHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High humidity threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: High humidity threshold violation cleared."
   --#SUMMARY "High humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 538

apcEnvLowHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: Low humidity threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Low humidity threshold violation."
   --#SUMMARY "Low humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 539

apcEnvLowHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low humidity threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Low humidity threshold violation cleared."
   --#SUMMARY "Low humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 540

apcEnvMinHumidityThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Min humidity threshold violated on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Min humidity threshold violation."
   --#SUMMARY "Min humidity threshold violation."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 541

apcEnvMinHumidityThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Min humidity threshold violation cleared on the sensor.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the sensor number.
        The fifth argument is the sensor name."
   --#TYPE "APC ENV: Min humidity threshold violation cleared."
   --#SUMMARY "Min humidity threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 542

apcBeaconConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A beacon has been connected to the device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number."
   --#TYPE "APC: Beacon Connected."
   --#SUMMARY "Beacon Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 543

apcBeaconDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "SEVERE: A beacon has been disconnected from the device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number. "
   --#TYPE "APC: Beacon Disconnected."
   --#SUMMARY "Beacon Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 544

apcBeaconOn TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A beacon has gone on (activated).
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number. "
   --#TYPE "APC: Beacon On."
   --#SUMMARY "Beacon On."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 545

apcBeaconOff TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A beacon has gone off (deactivated).
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number. "
   --#TYPE "APC: Beacon Off."
   --#SUMMARY "Beacon Off."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 546

apcOutletStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger, mtrapargsString04,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: An outlet on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the outlet number.
        The fifth argument is the outlet name.
        The sixth argument is the current outlet state (1=ON, 2=OFF).
        The seventh argument is the configured normal outlet state (1=ON, 2=OFF)."
   --#TYPE "APC: Outlet has changed to its abnormal state."
   --#SUMMARY "Outlet has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 547

apcOutletStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger, mtrapargsString04,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An outlet on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the outlet number.
        The fifth argument is the outlet name.
        The sixth argument is the current outlet state (1=ON, 2=OFF).
        The seventh argument is the configured normal outlet state (1=ON, 2=OFF)."
   --#TYPE "APC: Outlet has changed to its normal state."
   --#SUMMARY "Outlet has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 548

apcOutputRelayStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: An output relay on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the output relay number.
        The fifth argument is the output relay name.
        The sixth argument is the current output relay state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal output relay state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Output Relay has changed to its abnormal state."
   --#SUMMARY "Output Relay has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 549

apcOutputRelayStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An output relay on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the output relay number.
        The fifth argument is the output relay name.
        The sixth argument is the current output relay state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal output relay state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Output Relay has changed to its normal state."
   --#SUMMARY "Output Relay has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 550

apcHardwareStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION

      "SEVERE: The device's hardware is improperly configured and operating outside
        normal bounds for the hardware.  This can be caused by improper devices being
        connected to device ports or Alink Current limit detection.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is a hardware specific state code."

   --#TYPE "APC: Hardware is in an abnormal state."
   --#SUMMARY "Hardware is in an abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 551

apcHardwareStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's hardware is in its normal operational state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number."
   --#TYPE "APC EMS: Hardware is in a normal state."
   --#SUMMARY "Hardware is in its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 552

apcCriticalDiscreteInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: A discrete input contact on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its abnormal state."
   --#SUMMARY "Discrete input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 553

apcCriticalDiscreteInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A discrete input contact on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its normal state."
   --#SUMMARY "Discrete input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 554

apcWarningDiscreteInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: A discrete input contact on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its abnormal state."
   --#SUMMARY "Discrete input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 555

apcWarningDiscreteInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A discrete input contact on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its normal state."
   --#SUMMARY "Discrete input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 556

apcInformationalDiscreteInputContactStateAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A discrete input contact on the device has changed to its abnormal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its abnormal state."
   --#SUMMARY "Discrete input contact has changed to its abnormal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 557

apcInformationalDiscreteInputContactStateNormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsInteger,
               mtrapargsString04, mtrapargsInteger02,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A discrete input contact on the device has changed to its normal state.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input contact number.
        The fifth argument is the input contact name.
        The sixth argument is the input contact state (1=CLOSED, 2=OPEN).
        The seventh argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
   --#TYPE "APC: Discrete input contact has changed to its normal state."
   --#SUMMARY "Discrete input contact has changed to its normal state."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 558

apcAnalogInputMaxThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Maximum threshold violated on an analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Maximum threshold violation on analog input."
   --#SUMMARY "Max threshold violation on input."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 559

apcAnalogInputMaxThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Maximum threshold violation cleared on the analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Max threshold violation cleared."
   --#SUMMARY "Max threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 560

apcAnalogInputHighThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: High threshold violated on an analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: High threshold violation on analog input."
   --#SUMMARY "High threshold violation on input."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 561

apcAnalogInputHighThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: High threshold violation cleared on the analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: High threshold violation cleared."
   --#SUMMARY "High threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 562

apcAnalogInputLowThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: Low threshold violated on an analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Low threshold violation on analog input."
   --#SUMMARY "Low threshold violation on input."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 563

apcAnalogInputLowThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Low threshold violation cleared on the analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Low threshold violation cleared."
   --#SUMMARY "Low threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 564

apcAnalogInputMinThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: Minimum threshold violated on an analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Min threshold violation on analog input."
   --#SUMMARY "Min threshold violation on input."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 565

apcAnalogInputMinThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: Minimum threshold violation cleared on the analog input.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is a secondary device id number.
        The fourth argument is the input number.
        The fifth argument is the input name."
   --#TYPE "APC: Min threshold violation cleared."
   --#SUMMARY "Min threshold violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 566

apcDeviceClearLostComms TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Lost communications reset command has been issued.
        The first argument is the device serial number.
        The second argument is the device name.
        The third argument is a secondary device id number."
   --#TYPE "APC: Lost communications reset command has been issued."
   --#SUMMARY "Lost communications reset command has been issued."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL

   ::= 567

apcDeviceConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A device has been connected to the host.
        The first argument is the host serial number.
        The second argument is the host name.
        The third argument is the device number.
        The fourth argument is the device name."
   --#TYPE "APC: Device Connected."
   --#SUMMARY "Device Connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 568

apcDeviceDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "SEVERE: A device has been disconnected from the host.
        The first argument is the host serial number.
        The second argument is the host name.
        The third argument is the device number.
        The fourth argument is the device name."
   --#TYPE "APC: Device Disconnected."
   --#SUMMARY "Device Disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 569

apcUnregisteredUserAccessDenied TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString04,
               mtrapargsInteger, mtrapargsString05, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: An unregistered user has tried to access the device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argumant is the door identifier.
        The fifth argument is the unregistered user's RFID."
   --#TYPE "APC: Unregistered user."
   --#SUMMARY "Unregistered user."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 570


apcRegisteredUserAccessDenied TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString04,
               mtrapargsInteger, mtrapargsString05, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A registered user has been denied access to the device.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argumant is the door identifier.
        The fifth argument is the user name."
   --#TYPE "APC: Access denied."
   --#SUMMARY "Access denied."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 571

apcRegisteredUserConfigChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsString05, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: Registered user configuration change.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the user name."
   --#TYPE "APC: Registered user configuration change."
   --#SUMMARY "Registered user configuration change."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 572

apcDoorUnlocked TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString04,
               mtrapargsInteger, mtrapargsString05, mtrapargsInteger02, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door has been unlocked.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier.
        The fifth argument is the door access user.
        The sixth argument is the door access type."
   --#TYPE "APC: Door unlocked."
   --#SUMMARY "Door unlocked."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 573

apcDoorLocked TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString04,
               mtrapargsInteger, mtrapargsString05, mtrapargsInteger02, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door has been locked.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier.
        The fifth argument is the door access user.
        The sixth argument is the door access type."
   --#TYPE "APC: Door locked."
   --#SUMMARY "Door locked."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 574

apcHandleOpened TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door handle has been opened.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door handle opened."
   --#SUMMARY "Door handle opened."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 575

apcHandleClosed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door handle has been closed.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door handle closed."
   --#SUMMARY "Door handle closed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 576


apcDoorOpened TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door has been opened.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door opened."
   --#SUMMARY "Door opened."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 577

apcDoorClosed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door has been closed.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door closed."
   --#SUMMARY "Door closed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 578

   -- trap number 579 available


apcKeyOverrideUnlocked TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: Key override unlock has occurred.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Key override unlock has occurred."
   --#SUMMARY "Key override unlock has occurred."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 580


apcKeyOverrideLocked TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: Key override lock has occurred.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Key override lock has occurred."
   --#SUMMARY "Key override lock has occurred."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 581

apcForcedEntry TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: A forced entry condition has occurred.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A forced entry condition has occurred."
   --#SUMMARY "A forced entry has occurred."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 582

apcForcedEntryCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A forced entry condition has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A forced entry condition has been cleared."
   --#SUMMARY "A forced entry has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 583


apcRelockTimeout TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: A relock timout has occurred.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Relock timout."
   --#SUMMARY "Relock timeout."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 584

apcRelockTimeoutCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A relock timout has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: relock timout has been cleared."
   --#SUMMARY "Relock timout has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 585

apcDoorSenseDisconnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: A door sensor was disconnected.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A door sensor was disconnected."
   --#SUMMARY "A door sensor was disconnected."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 586

apcDoorSenseConnected TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A forced entry condition has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A door sensor was connected."
   --#SUMMARY "A door sensor was connected."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 587


apcDoorLostComms TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: Communications have been lost with the door.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A door has lost communications."
   --#SUMMARY "A door has lost communications."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 588

apcDoorEstablishedComms TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: Communications have been established with the door.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: A door has established communications."
   --#SUMMARY "A door has established communications."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 589



apcRegisteredUserAccessChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsString05, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: Registered user access changed.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the user name."
   --#TYPE "APC: Registered user access change."
   --#SUMMARY "Registered user access change."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 590


apcUnregisteredUserStatusChange TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsString05, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: Unregistered user status changed.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the user name."
   --#TYPE "APC: Unregistered user status change."
   --#SUMMARY "Unregistered user status change."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 591

apcDeviceClearUserConfigs TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: User configurations reset command has been issued.
        The first argument is the device serial number.
        The second argument is the device name.
        The third argument is a secondary device id number."
   --#TYPE "APC: User configurations reset command has been issued."
   --#SUMMARY "User configurations reset command has been issued."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 592

-- Add more events starting at 600 for UPS Devices

upsBatteryTempSensorFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The battery temperature sensor fault exists."
   --#TYPE "APC UPS: The battery temperature sensor fault exists."
   --#SUMMARY "The battery temperature sensor fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 600

upsBatteryTempSensorFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The battery temperature sensor fault cleared."
   --#TYPE "APC UPS: The battery temperature sensor fault cleared."
   --#SUMMARY "The battery temperature sensor fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 601

upsBatterySoftBusStartFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: A battery bus soft start fault exists."
   --#TYPE "APC UPS: A battery bus soft start fault exists."
   --#SUMMARY "A battery bus soft start fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 602

upsBatterySoftBusStartFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: A battery bus soft start fault exists cleared."
   --#TYPE "APC UPS: A battery bus soft start fault exists cleared."
   --#SUMMARY "A battery bus soft start fault exists cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 603

apcOutputShortCircuit TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: An output short circuit condition exists."
   --#TYPE "APC Device: An output short circuit condition exists."
   --#SUMMARY "An output short circuit condition exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 604

apcOutputShortCircuitCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An output short circuit condition cleared."
   --#TYPE "APC Device: An output short circuit condition cleared."
   --#SUMMARY "An output short circuit condition cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 605

apcOutputRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: An output relay (or its driver) fault exists."
   --#TYPE "APC Device: An output relay (or its driver) fault exists."
   --#SUMMARY "An output relay (or its driver) fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 606

apcOutputRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An output relay (or its driver) fault cleared."
   --#TYPE "APC Device: An output relay (or its driver) fault cleared."
   --#SUMMARY "An output relay (or its driver) fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 607

upsPfcFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: A PFC fault exists."
   --#TYPE "APC UPS: A PFC fault exists."
   --#SUMMARY "A PFC fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 608

upsPfcFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The PFC fault cleared."
   --#TYPE "APC UPS: The PFC fault cleared."
   --#SUMMARY "The PFC fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 609

apcDcBusOverVoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The DC bus voltage is too high."
   --#TYPE "APC Devcie: DC bus voltage is too high."
   --#SUMMARY "The DC bus voltage is too high."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 610

apcDcBusOverVoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The DC bus voltage is too high cleared."
   --#TYPE "APC Device: The DC bus voltage is too high cleared."
   --#SUMMARY "The DC bus voltage is too high cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 611

upsInverterFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The inverter fault exists."
   --#TYPE "APC UPS: The inverter fault exists."
   --#SUMMARY "The inverter fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 612

upsInverterFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The inverter fault cleared."
   --#TYPE "APC UPS: The inverter fault cleared."
   --#SUMMARY "The inverter fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 613

apcAdConverterFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The A/D converter fault exists."
   --#TYPE "APC Device: The A/D converter fault exists."
   --#SUMMARY "The A/D converter fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 614

apcAdConverterFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The A/D converter fault cleared."
   --#TYPE "APC Device: The A/D converter fault cleared."
   --#SUMMARY "The A/D converter fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 615

apcLogicPowerSupplyFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: A logic power supply fault exists."
   --#TYPE "APC Device: A logic power supply fault exists."
   --#SUMMARY "A logic power supply fault exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 616

apcLogicPowerSupplyFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: A logic power supply fault cleared."
   --#TYPE "APC Device: A logic power supply fault cleared."
   --#SUMMARY "A logic power supply fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 617

apcTransformerDCImbalanceFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The DC component of the transformer's current is too high."
   --#TYPE "APC Device: The DC component of the tformer's curr is too high."
   --#SUMMARY "The DC component of the transformer's current is too high."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 618

apcTransformerDCImbalanceFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The DC component of the transformer's current is normal."
   --#TYPE "APC Device: The DC component of the tformer's curr is normal."
   --#SUMMARY "The DC component of the transformer's current is normal."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 619

upsBackfeedRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The backfeed relay (or its driver) has a fault."
   --#TYPE "UPS Device: The backfeed relay (or its driver) has a fault."
   --#SUMMARY "The backfeed relay (or its driver) has a fault."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 620

upsBackfeedRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: The backfeed relay (or its driver) has a fault cleared."
   --#TYPE "UPS Device: The bfeed rly (or its drver) has a flt cleared."
   --#SUMMARY "The backfeed relay (or its driver) has a fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 621

upsBypassRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: A bypass relay (or its driver) has a fault."
   --#TYPE "APC Device: A bypass relay (or its driver) has a fault."
   --#SUMMARY "A bypass relay (or its driver) has a fault."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 622

upsBypassRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "WARNING: A bypass relay (or its driver) has a fault cleared."
   --#TYPE "APC Device: A bypass relay (or its driver) has a fault cleared."
   --#SUMMARY "A bypass relay (or its driver) has a fault cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 623


xPDUBranchCurrentMinAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The current in a branch circuit is outside the limits specified for that
        branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC XPDU: Branch circuit minimum current alarm."
   --#SUMMARY "Branch circuit current is below threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 626

xPDUBranchCurrentMinAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The current in a branch circuit is back within the limits
        specified for that branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Branch circuit minimum current alarm cleared."
   --#SUMMARY "Branch circuit low current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 627

xPDUBranchCurrentMaxAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The current in a branch circuit is outside the limits specified for that
        branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps.
        The fifth argument is the threshold, in tenths of Amps, above which the alarm was generated."
   --#TYPE "APC XPDU: Branch circuit maximum current alarm."
   --#SUMMARY "Branch circuit current is above threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 628

xPDUBranchCurrentMaxAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
               mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The current in a branch circuit is back within the limits
        specified for that branch circuit.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the panel position of the branch circuit (1-based index).
        The fourth argument is the measured current in tenths of Amps."
   --#TYPE "APC XPDU: Branch circuit maximum current alarm cleared."
   --#SUMMARY "Branch circuit high current alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 629


rPDUOutletLowLoad TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "WARNING: A Rack PDU has violated the outlet low load threshold.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Violation of outlet low load threshold."
   --#SUMMARY "A Rack PDU has violated the outlet low load threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 630

rPDUOutletLowLoadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The outlet low load condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Low load condition cleared."
   --#SUMMARY "The low load condition on a Rack PDU has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 631

rPDUOutletNearOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "WARNING: A Rack PDU is near an outlet overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Near an overload condition."
   --#SUMMARY "A Rack PDU is near an outlet overload condition."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 632

rPDUOutletNearOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The outlet near overload condition on a Rack PDU has
       been cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Outlet Near overload condition has cleared."
   --#SUMMARY "Rack PDU outlet near overload condition has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 633

rPDUOutletOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "SEVERE: A Rack PDU is in an overload condition.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Outlet Overload condition."
   --#SUMMARY "A Rack PDU is in an outlet overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 634

rPDUOutletOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
               rPDUOutletStatusIndex, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The outlet overload condition on a Rack PDU has been
       cleared.
       The first argument is the serial number.
       The second argument is the device name.
       The third argument is the outlet number."
   --#TYPE "APC Rack PDU: Overload condition has cleared."
   --#SUMMARY "The outlet overload condition on a Rack PDU has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 635

apcTestTrap TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Trap used to test SNMP trap functionality.
       The first argument is a place holder for test variables."
   --#TYPE "APC: Test trap."
   --#SUMMARY "Test Trap."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 636

baseFanFailureCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Base module fan has been repaired"
   --#TYPE "APC UPS: Base module fan has been repaired"
   --#SUMMARY "The base module fan has been repaired."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 637



atsLowLoad TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "WARNING: ATS has violated the bank or phase low load threshold.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Violation of bank or phase low load threshold."
   --#SUMMARY "ATS has violated the bank or phase low load threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 638

atsLowLoadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase low load condition on an ATS has been
       cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Low load condition cleared."
   --#SUMMARY "The low load condition on an ATS has been cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 639

atsNearOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "WARNING: ATS has violated the bank or phase near overload threshold.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Near an overload condition."
   --#SUMMARY "ATS is near a bank or phase overload condition."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 640

atsNearOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase near overload condition on an ATS has
       been cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Bank or phase near overload condition has cleared."
   --#SUMMARY "ATS bank or phase near overload condition has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 641

atsOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "SEVERE: ATS is in an overload condition.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number.
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Bank or Phase Overload condition."
   --#SUMMARY "ATS is in overload condition."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 642

atsOverloadCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               atsOutputPhaseIndex, atsOutputBank, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The bank or phase overload condition on an ATS has been
       cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is the phase number.
       The fourth argument is the bank number. -1 is returned if bank does not exist."
   --#TYPE "APC ATS: Overload condition has cleared."
   --#SUMMARY "The bank or phase overload condition on an ATS has cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 643

atsRMSOverVoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Overvoltage condition violated.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: Overvoltage condition violated."
   --#SUMMARY "Overvoltage condition violated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 644

atsRMSOverVoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Overvoltage condition cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: Overvoltage condition cleared."
   --#SUMMARY "Overvoltage condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 645

atsRMSUnderVoltage TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: Undervoltage condition violated.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: Undervoltage condition violated."
   --#SUMMARY "Undervoltage condition violated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 646

atsRMSUnderVoltageCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Undervoltage condition cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: Undervoltage condition cleared."
   --#SUMMARY "Undervoltage condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 647

atsRMSOverFrequency TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: OverFrequency condition violated.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: OverFrequency condition violated."
   --#SUMMARY "OverFrequency condition violated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 648

atsRMSOverFrequencyCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: OverFrequency condition cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: OverFrequency condition cleared."
   --#SUMMARY "OverFrequency condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 649

atsRMSUnderFrequency TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: UnderFrequency condition violated.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: UnderFrequency condition violated."
   --#SUMMARY "UnderFrequency condition violated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 650

atsRMSUnderFrequencyCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UnderFrequency condition cleared.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: UnderFrequency condition cleared."
   --#SUMMARY "UnderFrequency condition cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 651



-- MODULAR POWER DISTRIBUTION SYSTEM

isxModularDistributionCommLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "SEVERE: Communication with a metering segment of the modular
        distribution system has been lost.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the segment number.
        The fourth argument describes the modules served by this metering segment."
   --#TYPE "APC MDS: Com lost in modular distribution system."
   --#SUMMARY "Modular distribution communication lost."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 652

isxModularDistributionCommEstablished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsString04, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication with a metering segment of the modular
        distribution system has been restored.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the segment number.
        The fourth argument describes the modules served by this metering segment."
   --#TYPE "APC MDS: Com restored in modular distribution system."
   --#SUMMARY "Modular distribution communication restored."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 653

isxModularDistributionModuleInserted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: A distribution module has been inserted into the system.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module location number."
   --#TYPE "APC MDS: Distribution module inserted."
   --#SUMMARY "Distribution module inserted."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 654

isxModularDistributionModuleRemoved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: A distribution module has been removed from the system.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module location number."
   --#TYPE "APC MDS: Distribution module removed."
   --#SUMMARY "Distribution module removed."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 655

isxModularBreakerOpenAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: A distribution module breaker is open and in an alarm condition.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the module breaker(s) (1=L1, 2=L2, 3=L3, 4=L12, 5=L23, 6=L123).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution breaker open alarm."
   --#SUMMARY "Distribution breaker open alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 656

isxModularBreakerOpenAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An alarm caused by a distribution breaker being open has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker(s) (1=L1, 2=L2, 3=L3, 4=L12, 5=L23, 6=L123).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution breaker open alarm cleared."
   --#SUMMARY "Distribution breaker open alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 657

isxModularMinCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: The current in a distribution module is below the minimum/critical
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution minimum current alarm."
   --#SUMMARY "Distribution current is below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 658

isxModularMinCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution module is no longer below the minimum/critical
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution minimum current alarm cleared."
   --#SUMMARY "Distribution current no longer below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 659

isxModularLowCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: The current in a distribution module is below the low/warning
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution low current alarm."
   --#SUMMARY "Distribution current is below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 660

isxModularLowCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution module is no longer below the low/warning
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution low current alarm cleared."
   --#SUMMARY "Distribution current no longer below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 661

isxModularHighCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: The current in a distribution module is above the high/warning
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution high current alarm."
   --#SUMMARY "Distribution current is above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 662

isxModularHighCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution module is no longer above the high/warning
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution high current alarm cleared."
   --#SUMMARY "Distribution current no longer above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 663

isxModularMaxCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: The current in a distribution module is above the maximum/critical
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution maximum current alarm."
   --#SUMMARY "Distribution current is above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 664

isxModularMaxCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution module is no longer above the maximum/critical
        limit specified for the circuit/cable.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the module number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the circuit/cable fed by this breaker."
   --#TYPE "APC MDS: Distribution maximum current alarm cleared."
   --#SUMMARY "Distribution current no longer above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 665

isxModularSubfeedBreakerOpenAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: A distribution subfeed breaker is open and in an alarm condition.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed breaker open alarm."
   --#SUMMARY "Distribution subfeed breaker open alarm."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 666

isxModularSubfeedBreakerOpenAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An alarm caused by a distribution subfeed breaker being open has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed breaker open alarm cleared."
   --#SUMMARY "Distribution subfeed breaker open alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 667

isxModularSubfeedMinCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: The current in a distribution subfeed is below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed minimum current alarm."
   --#SUMMARY "Distribution subfeed current is below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 668

isxModularSubfeedMinCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution subfeed is no longer below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed minimum current alarm cleared."
   --#SUMMARY "Distribution subfeed current no longer below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 669

isxModularSubfeedLowCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: The current in a distribution subfeed is below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed low current alarm."
   --#SUMMARY "Distribution subfeed current is below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 670

isxModularSubfeedLowCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution subfeed is no longer below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed low current alarm cleared."
   --#SUMMARY "Distribution subfeed current is no longer below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 671

isxModularSubfeedHighCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "WARNING: The current in a distribution subfeed is above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed high current alarm."
   --#SUMMARY "Distribution subfeed current is above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 672

isxModularSubfeedHighCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution subfeed is no longer above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed high current alarm cleared."
   --#SUMMARY "Distribution subfeed current no longer above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 673

isxModularSubfeedMaxCurrentThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsInteger02, mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "SEVERE: The current in a distribution subfeed is above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the threshold, in tenths of Amps, from which the alarm was generated.
        The sixth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed maximum current alarm."
   --#SUMMARY "Distribution subfeed current is above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 674

isxModularSubfeedMaxCurrentThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,  mtrapargsInteger03,
               mtrapargsString04, mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The current in a distribution subfeed is no longer above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the subfeed number.
        The fourth argument is the breaker/phase index (1=L1, 2=L2, 3=L3).
        The fifth argument is the load name associated with the subfeed."
   --#TYPE "APC MDS: Distribution subfeed maximum current alarm cleared."
   --#SUMMARY "Distribution subfeed current no longer above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 675

isxModularTotalOutputCurrentMinThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "SEVERE: The total output current of the distribution is below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC MDS: Total distribution output minimum current alarm."
   --#SUMMARY "Distribution total current is below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 676

isxModularTotalOutputCurrentMinThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The total output current of the distribution is no longer below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Total output minimum current alarm cleared."
   --#SUMMARY "Distribution total current no longer below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 677

isxModularTotalOutputCurrentLowThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "WARNING: The total output current of the distribution is below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC MDS: Total output low current alarm."
   --#SUMMARY "Distribution total current is below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 678

isxModularTotalOutputCurrentLowThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The total output current of the distribution is no longer below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Total output low current alarm cleared."
   --#SUMMARY "Distribution total current no longer below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 679

isxModularTotalOutputCurrentHighThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "WARNING: The total output current of the distribution is above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC MDS: Total output high current alarm."
   --#SUMMARY "Distribution total current is above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 680

isxModularTotalOutputCurrentHighThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The total output current of the distribution is no longer above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Total output high current alarm cleared."
   --#SUMMARY "Distribution total current no longer above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 681

isxModularTotalOutputCurrentMaxThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "SEVERE: The total output current of the distribution is above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Amps, from which the alarm was generated."
   --#TYPE "APC MDS: Total output maximum current alarm."
   --#SUMMARY "Distribution total current is above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 682

isxModularTotalOutputCurrentMaxThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The total output current of the distribution is no longer above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Total output maximum current alarm cleared."
   --#SUMMARY "Distribution total current no longer above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 683

isxModularOutputVoltageMinThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "SEVERE: The distribution output voltage is below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC MDS: Distribution minimum output voltage alarm."
   --#SUMMARY "Distribution output voltage is below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 684

isxModularOutputVoltageMinThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The distribution output voltage is no longer below the minimum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Distribution minimum output voltage alarm cleared."
   --#SUMMARY "Distribution output voltage no longer below the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 685

isxModularOutputVoltageLowThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "WARNING: The distribution output voltage is below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC MDS: Distribution low output voltage alarm."
   --#SUMMARY "Distribution output voltage is below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 686

isxModularOutputVoltageLowThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The distribution output voltage is no longer below the low/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Distribution low output voltage alarm cleared."
   --#SUMMARY "Distribution output voltage no longer below the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 687

isxModularOutputVoltageHighThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "WARNING: The distribution output voltage is above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC MDS: Distribution high output voltage alarm."
   --#SUMMARY "Distribution output voltage is above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 688

isxModularOutputVoltageHighThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The distribution output voltage is no longer above the high/warning limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Distribution high output voltage alarm cleared."
   --#SUMMARY "Distribution output voltage no longer above the warning threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 689

isxModularOutputVoltageMaxThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
       "SEVERE: The distribution output voltage is above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3).
        The fourth argument is the threshold, in tenths of Volts, from which the alarm was generated."
   --#TYPE "APC MDS: Distribution maximum output voltage alarm."
   --#SUMMARY "Distribution output voltage is above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 690

isxModularOutputVoltageMaxThresholdViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: The distribution output voltage is no longer above the maximum/critical limit specified.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the phase index (1=L1, 2=L2, 3=L3)."
   --#TYPE "APC MDS: Distribution maximum output voltage alarm cleared."
   --#SUMMARY "Distribution output voltage no longer above the critical threshold."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 691

apcDoorClosedImproperly TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: A door has been closed improperly.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door closed improperly."
   --#SUMMARY "Door closed improperly."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 692

apcDoorClosedImproperlyCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: A door is no longer closed improperly.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: Door no longer closed improperly."
   --#SUMMARY "Door no longer closed improperly."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 693

apcUserScheduleViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "SEVERE: A user has had a door opened past the scheduled access period.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: User schedule violated."
   --#SUMMARY "User schedule violated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 694

apcUserScheduleViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03,
               mtrapargsString04, mtrapargsInteger, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: User schedule violation has been cleared.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the host device location.
        The fourth argument is the door identifier, (1=front, 2=rear)."
   --#TYPE "APC: User schedule violation cleared."
   --#SUMMARY "User schedule violation cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 695

isxModularOutputFrequencyThresholdViolation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: The distribution output frequency is outside of the operating range specified.
       The first argument is the host device serial number.
       The second argument is the host device name.
       The third argument is the threshold, in tenths of Hertz, from which the alarm was generated."
   --#TYPE "APC MDS: Distribution output frequency out of range."
   --#SUMMARY "Distribution output frequency out of range."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 696

isxModularOutputFrequencyViolationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The distribution output frequency is no longer out of range.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC MDS: Distribution output frequency no longer out of range."
   --#SUMMARY "Distribution output frequency no longer out of range."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 697

atsSourceStatusFail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: ATS Source failed.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: ATS Source failed."
   --#SUMMARY "ATS Source failed."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 698

atsSourceStatusOk TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: ATS Source OK.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the source: 0=A, 1=B."
   --#TYPE "APC ATS: ATS Source OK."
   --#SUMMARY "ATS Source OK."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 699

atsHardwareStatusFail TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: ATS display board hardware failed.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the failed hardware:
       0= Phase LEDs/Push-button hardware failure
       1= Seven-segment display hardware failure."
   --#TYPE "APC ATS: ATS display board hardware failed."
   --#SUMMARY "ATS display board hardware failed."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 700

atsHardwareStatusOk TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { atsIdentSerialNumber, atsConfigProductName,
               mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: ATS display board hardware ok.
       The first argument is the serial number.
       The second argument is the product name.
       The third argument is an integer representing the hardware:
       0= Phase LEDs/Push-button hardware failure
       1= Seven-segment display hardware failure."
   --#TYPE "APC ATS: ATS display board hardware ok."
   --#SUMMARY "ATS display board hardware ok."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 701

atsControllerRestart TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: ATS Controller restarted."
   --#TYPE "APC ATS: ATS Controller restarted."
   --#SUMMARY "ATS Controller restarted."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 702



inputWarningError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "WARNING: Input warning error has been detected.
        The first variable is the fault condition."
   --#TYPE "APC UPS: Input warning error has been detected."
   --#SUMMARY "UPS Input warning error has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 703

inputOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Input warning error has been cleared.
       The first variable is the fault condition."
   --#TYPE "APC UPS: Input warning error has been cleared."
   --#SUMMARY "UPS Input warning error has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 704

bypassWarningError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "WARNING: Bypass warning error has been detected.
        The first variable is the fault condition."
   --#TYPE "APC UPS: Bypass warning error has been detected."
   --#SUMMARY "UPS Bypass warning error has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 705

bypassOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Bypass warning error has been cleared.
       The first variable is the fault condition."
   --#TYPE "APC UPS: Bypass warning error has been cleared."
   --#SUMMARY "UPS Bypass warning error has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 706

communicationWarningError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "WARNING: Communication warning error has been detected.
        The first variable is the fault condition."
   --#TYPE "APC UPS: Communication warning error has been detected."
   --#SUMMARY "UPS Communication warning error has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 707

communicationOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Communication warning error has been cleared.
       The first variable is the fault condition."
   --#TYPE "APC UPS: Communication warning error has been cleared."
   --#SUMMARY "UPS Communication warning error has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 708

powerModuleSevereError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
       "SEVERE: Power module severe error has been detected.
        The first variable is the fault condition."
   --#TYPE "APC UPS: Power module severe error has been detected."
   --#SUMMARY "UPS Power module severe error has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 709

powerModuleOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Power module severe error has been cleared.
       The first variable is the fault condition."
   --#TYPE "APC UPS: Power module severe error has been cleared."
   --#SUMMARY "UPS Power module severe error has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 710

outputVoltageWaveformError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Output voltage waveform error has been detected."
   --#TYPE "APC UPS: Output voltage waveform error has been detected."
   --#SUMMARY "UPS output voltage waveform error has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 711

outputVoltageWaveformOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Output voltage waveform is OK."
   --#TYPE "APC UPS: Output voltage waveform is OK"
   --#SUMMARY "UPS output voltage waveform is OK."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 712

bypassStaticSwitchOverload TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Overload on bypass static switch has been detected."
   --#TYPE "APC UPS: Overload on bypass static switch has been detected."
   --#SUMMARY "Overload on bypass static switch has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 713

noOverloadOnBypassStaticSwitch TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Overload on static bypass switch no longer present."
   --#TYPE "APC UPS: Overload on static bypass switch no longer present."
   --#SUMMARY "Overload on static bypass switch no longer present."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 714

batteryVoltageCollapse TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Battery voltage collapse has been detected."
   --#TYPE "APC UPS: Battery voltage collapse has been detected."
   --#SUMMARY "Battery voltage collapse has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 715

batteryVoltageOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Battery voltage OK."
   --#TYPE "APC UPS: Battery voltage OK."
   --#SUMMARY "Battery voltage OK."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 716

overloadOnInstallation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Overload on installation has been detected."
   --#TYPE "APC UPS: Overload on installation has been detected."
   --#SUMMARY "Overload on installation has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 717

noOverloadOnInstallation TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Overload on installation no longer present."
   --#TYPE "APC UPS: Overload on installation no longer present."
   --#SUMMARY "Overload on installation no longer present."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 718

bypassStaticSwitchError TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Bypass static switch error, module has critical error."
   --#TYPE "APC UPS: Bypass static switch error, module has critical error."
   --#SUMMARY "Bypass static switch error, module has critical error."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 719

bypassStaticSwitchOK TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Bypass static switch OK."
   --#TYPE "APC UPS: Bypass static switch OK."
   --#SUMMARY "Bypass static switch OK."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 720

forcedBypassSwitchActivated TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Forced bypass switch has been activated."
   --#TYPE "APC UPS: Forced bypass switch has been activated."
   --#SUMMARY "Forced bypass switch has been activated."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 721

forcedBypassSwitchReleased TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Forced bypass switch has been released."
   --#TYPE "APC UPS: Forced bypass switch has been released."
   --#SUMMARY "Forced bypass switch has been released."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 722

epoActivated TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Emergency Power Off (EPO) switch has been activated."
   --#TYPE "APC Emergency Power Off (EPO) switch has been activated."
   --#SUMMARY "Emergency Power Off (EPO) switch has been activated."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 723
   

xATSS1BadPhaseRotation TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's source 1 phase rotation is bad.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: S1 bad phase rotation alarm."
   --#SUMMARY "Phase rotation on source 1 is bad."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 724

xATSS1BadPhaseRotationCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: The device's source 1 phase rotation is back to normal.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: S1 phase rotation back to normal."
   --#SUMMARY "S1 phase rotation back to normal."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 725

xATSS1BadPhaseBalance TRAP-TYPE
  ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsInteger,
               mtrapargsString}
   DESCRIPTION
      "SEVERE: The device's source 1 phase balance is out of bounds.
        The first argument is the host device serial number.
        The second argument is the host device name.
        The third argument is the minimum phase balance as a percentage."
   --#TYPE "APC XATS: S1 phase imbalance exceeds threshold alarm."
   --#SUMMARY "Phase imbalance on source 1 exceeds threshold."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 726

xATSS1BadPhaseBalanceCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { xATSIdentSerialNumber, xATSIdentProductName, mtrapargsString}
   DESCRIPTION
      "INFORMATIONAL: The device's source 1 phase balance is back to normal.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC XATS: S1 phase balance back to normal."
   --#SUMMARY "S1 phase balance back to normal."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 727

isxModularTransformerOverheating TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The distribution transformer temperature is too hot.
       The first argument is the host device serial number.
       The second argument is the host device name."
   --#TYPE "APC MDS: Transformer overheating."
   --#SUMMARY "Distribution transformer temperature is too hot."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 728

isxModularTransformerOverheatingCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The distribution transformer temperature has returned to normal.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC MDS: Transformer temperature has returned to normal."
   --#SUMMARY "Distribution transformer temperature has returned to normal."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 729

apcInternalCommunicationFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "SEVERE: An internal UPS communication fault exists."
   --#TYPE "APC Device: An internal UPS communication fault exists."
   --#SUMMARY "An internal UPS communication fault exists."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 730

apcInternalCommunicationFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An internal UPS communication fault no longer exists."
   --#TYPE "APC Device:An internal UPS communication fault no longer exists."
   --#SUMMARY "An internal UPS communication fault no longer exists."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 731

upsOutletGroupCommand TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { upsOutletGroupControlIndex, mtrapargsString }
   DESCRIPTION
       "WARNING: The specified Outlet Group command has been issued."
   --#TYPE "APC UPS: Outlet Group command issued."
   --#SUMMARY "Outlet Group command issued."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 732

onbatterycommunicationLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
       "SEVERE: Communication to the UPS when the UPS is on Battery. Steps
        to reestablish communication are in progress."
   --#TYPE "APC UPS: Communication lost"
   --#SUMMARY "Communication lost between the agent and the UPS when UPS is on Battery."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 733

upsCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "SEVERE: A UPS critical condition was detected.
       The first variable is the error condition text message.
       The second variable is the error number."
   --#TYPE "UPS: A critical condition has been detected."
   --#SUMMARY "A critical condition has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 734

upsCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS critical condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "UPS: A critical condition has been cleared."
   --#SUMMARY "A critical condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 735

upsWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: A UPS warning condition has been detected.
       The first variable is the fault condition."
   --#TYPE "UPS: A warning condition has been detected."
   --#SUMMARY "A warning condition has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 736

upsWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "WARNING: A UPS warning condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "UPS: A warning condition has been cleared."
   --#SUMMARY "A warning condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 737

upsInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS informational condition has been detected.
       The first variable is the fault condition."
   --#TYPE "UPS: Informational condition detected."
   --#SUMMARY "An informational condition has been detected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 738

upsInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsInteger, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS informational condition has been cleared.
      The first variable is the fault condition."
   --#TYPE "UPS: Informational condition cleared."
   --#SUMMARY "An informational condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 739

isxcInformationalAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An ISXC Alarm exists.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Informational Alarm exists."
   --#SUMMARY "An ISXC Informational Alarm exists."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 740

isxcInformationalAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "INFORMATIONAL: An ISXC Alarm has been cleared.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Informational Alarm has been cleared."
   --#SUMMARY "An ISXC Informational Alarm has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 741

isxcWarningAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "WARNING: An ISXC Alarm exists.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Warning Alarm exists."
   --#SUMMARY "An ISXC Warning Alarm exists."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 742

isxcWarningAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "WARNING: An ISXC Alarm has been cleared.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Warning Alarm has been cleared."
   --#SUMMARY "An ISXC Warning Alarm has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 743

isxcErrorAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "ERROR: An ISXC Alarm exists.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Error Alarm exists."
   --#SUMMARY "An ISXC Error Alarm exists."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 744

isxcErrorAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "ERROR: An ISXC Alarm has been cleared.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Error Alarm has been cleared."
   --#SUMMARY "An ISXC Error Alarm has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 745

isxcCriticalAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "CRITICAL: An ISXC Alarm exists.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Critical Alarm exists."
   --#SUMMARY "An ISXC Critical Alarm exists."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 746

isxcCriticalAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "CRITICAL: An ISXC Alarm has been cleared.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Critical Alarm has been cleared."
   --#SUMMARY "An ISXC Critical Alarm has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 747

isxcFailureAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "FAILURE: An ISXC Alarm exists.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Failure Alarm exists."
   --#SUMMARY "An ISXC Failure Alarm exists."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 748

isxcFailureAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02,
               mtrapargsOctetString,
               mtrapargsInteger,
               mtrapargsString03,
               mtrapargsOctetString02,
               mtrapargsString04,
               mtrapargsOctetString03,
               mtrapargsString05,
               mtrapargsString06,
               mtrapargsString07,
               mtrapargsOctetString04,
               mtrapargsOctetString05,
               mtrapargsString08,
               mtrapargsOctetString06,
               mtrapargsOctetString07,
               mtrapargsInteger02,
               mtrapargsInteger03,
               mtrapargsOctetString08,
               mtrapargsString }
   DESCRIPTION
       "FAILURE: An ISXC Alarm has been cleared.
         The first argument is the unique ISXC alarm ID.
         The second argument is the ISXC alarm label as a UTF8 string.
         The third argument is the ISXC alarm code.
         The fourth argument is the unique ISXC device ID.
         The fifth argument is the ISXC device label as a UTF8 string.
         The sixth argument is the ISXC parent host.
         The seventh argument is the ISXC device type as a UTF8 string.
         The eighth argument is the device serial number.
         The ninth argument is the device model number.
         The tenth argument is the device host.
         The eleventh argument is the device location as a UTF8 string.
         The twelfth argument is the device contact as a UTF8 string.
         The thirteenth argument is the unique ISXC sensor ID.
         The fourteenth argument is the ISXC sensor label as a UTF8 string.
         The fifteenth argument is the sensor value as a UTF8 string.
         The sixteenth argument is the ISXC alarm start time.
         The seventeenth argument is the ISXC alarm resolution time.
         The eighteenth argument is the description as a UTF8 string."
   --#TYPE "APC ISXC: An ISXC Failure Alarm has been cleared."
   --#SUMMARY "An ISXC Failure Alarm has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 749

-- rPDU2g Trap Section

rpduCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "SEVERE: A RPDU critical condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: A critical condition has been detected."
   --#SUMMARY "A critical condition has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 750

rpduCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A RPDU critical condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: A critical condition has been cleared."
   --#SUMMARY "A critical condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 751

rpduWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: A RPDU warning condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: A warning condition has been detected."
   --#SUMMARY "A warning condition has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 752

rpduWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "WARNING: A RPDU warning condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: A warning condition has been cleared."
   --#SUMMARY "A warning condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 753

rpduInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A RPDU informational condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: Informational condition detected."
   --#SUMMARY "An informational condition has been detected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 754

rpduInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A RPDU informational condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the error number.
       The fourth variable is the device number.
       The fifth variable is the instance number.
       The sixth variable is the trap text message."
   --#TYPE "RPDU: Informational condition cleared."
   --#SUMMARY "An informational condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 755

isxModularCoolingFanAlarm TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "SEVERE: The device's internal cooling fans have failed.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC MDS: Cooling fan failure."
   --#SUMMARY "Cooling fan failure."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 756

isxModularCoolingFanAlarmCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The device's internal cooling fans are now functioning properly.
        The first argument is the host device serial number.
        The second argument is the host device name."
   --#TYPE "APC MDS: Cooling fan alarm cleared."
   --#SUMMARY "Cooling fan alarm cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 757

upsFirmwareUpdateStarted TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: Updating UPS firmware."
   --#TYPE "APC UPS: Updating firmware"
   --#SUMMARY "The UPS has started a firmware update."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 758

upsFirmwareUpdateFinished TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Finished updating UPS firmware."
   --#TYPE "APC UPS: Finished firmware update"
   --#SUMMARY "The UPS has finished the firmware update."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 759

upsFirmwareUpdateSucceeded TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS firmware update succeeded."
   --#TYPE "APC UPS: Firmware update succeeded"
   --#SUMMARY "The UPS has successfully completed a firmware update."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 760

upsFirmwareUpdateFailed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: UPS firmware update failed."
   --#TYPE "APC UPS: Firmware update failed"
   --#SUMMARY "The UPS failed to complete a firmware update."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 761

upsHasNoValidFirmware TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: UPS has no valid firmware."
   --#TYPE "APC UPS: No firmware"
   --#SUMMARY "The UPS does not have a valid firmware."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 762

upsHasNoValidFirmwareCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS now has a valid firmware."
   --#TYPE "APC UPS: Now has valid firmware"
   --#SUMMARY "The UPS now has a valid firmware."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 763


upsLocalDisplayButtonFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A local display button fault exists."
   --#TYPE "APC UPS: A local display button fault exists."
   --#SUMMARY "The UPS has detected a local display button error. The button may be stuck in the closed position."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 767

upsLocalDisplayButtonFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A local display button fault no longer exists."
   --#TYPE "APC UPS: A local display button fault no longer exists."
   --#SUMMARY "The UPS no longer detects a local display button error."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 768

upsNeedsFactorySetupFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: UPS needs factory setup."
   --#TYPE "APC UPS: needs factory setup."
   --#SUMMARY "The UPS is missing factory configuration information. The UPS needs to be set up by the factory."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 769

upsNeedsFactorySetupFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS no longer needs factory setup."
   --#TYPE "APC UPS: no longer needs factory setup."
   --#SUMMARY "The UPS now has the required factory configuration information."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 770

upsEPOActive TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Emergency Power Off (EPO) active."
   --#TYPE "APC UPS: Emergency Power Off (EPO) active."
   --#SUMMARY "The EPO contact on the UPS was activated causing the UPS to turn off."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 771

upsEPOActiveCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Emergency Power Off (EPO) now inactive."
   --#TYPE "APC UPS: Emergency Power Off (EPO) now inactive."
   --#SUMMARY "The EPO contact on the UPS is no longer activated. The UPS may be turned on."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 772

upsFirmwareMismatch TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: A firmware mismatch error exists."
   --#TYPE "APC UPS: A firmware mismatch error exists."
   --#SUMMARY "Parts of the system are running firmware versions not designed to work together. This may be due to an incomplete firmware update."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 773

upsFirmwareMismatchCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A firmware mismatch error no longer exists."
   --#TYPE "APC UPS: A firmware mismatch error no longer exists."
   --#SUMMARY "The firmware versions on the system are now compatible."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 774

upsOscillatorFailed TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: An oscillator error exists."
   --#TYPE "APC UPS: An oscillator error exists."
   --#SUMMARY "One or more system clocks no longer keeps time due to a failed oscillator. Depending on the failure, this may result in a loss of time keeping, or render parts of the system inoperable."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE NONOPERATIONAL
   ::= 775

upsOscillatorFailedCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: An oscillator error no longer exists."
   --#TYPE "APC UPS: An oscillator error no longer exists."
   --#SUMMARY "The oscillator error no longer exists."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 776

upsOnBatteryDueToFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: The UPS is on battery due to an error.

      Symmetra UPSes: Intelligence module has reported being in self-test for
      too long. When this happens, the UPS is not usually in self-test, but the
      batteries are draining slowly. If left uncorrected, the batteries will
      become depleted and the UPS will not be able to turn on. If UPS has at
      least N+1 redundancy, check power modules one by one to determine which
      keeps the UPS in self-test. Once identified, replace the module."
   --#TYPE "APC UPS: The UPS is on battery due to an error."
   --#SUMMARY "The UPS is on battery due to an error."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 777

upsOnBatteryDueToFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: The UPS is no longer on battery due to an error."
   --#TYPE "APC UPS: The UPS is no longer on battery due to an error."
   --#SUMMARY "The UPS is no longer on battery due to an error."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 778


pcnsCriticalEventActive TRAP-TYPE
   ENTERPRISE apc
      VARIABLES { mtrapargsString }
    DESCRIPTION
      "SEVERE: PowerChute Network Shutdown has begun a safe shutdown of the host."
   --#TYPE "APC CODE: PowerChute Network Shutdown has begun a safe shutdown of the host."
   --#SUMMARY "Safe Shutdown of host initiated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 779

pcnsCriticalEventResolved TRAP-TYPE
   ENTERPRISE apc
      VARIABLES { mtrapargsString }
    DESCRIPTION
      "INFORMATIONAL: PowerChute Network Shutdown critical event resolved.  Safe shutdown will continue."
   --#TYPE "APC CODE: PowerChute Network Shutdown critical event resolved.  Safe shutdown will continue."
   --#SUMMARY "Critical event resolved."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 780

pcnsNetworkComsLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: PowerChute cannot communicate with NMC"
   --#TYPE "APC CODE: PowerChute cannot communicate with NMC"
   --#SUMMARY "PowerChute cannot communicate with NMC"
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 781

pcnsNetworkComsLostResolved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute can communicate with NMC again."
   --#TYPE "APC CODE: PowerChute can communicate with NMC again."
   --#SUMMARY "PowerChute can communicate with NMC again."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 782

pcnsNMCComsLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: NMC cannot communicate with UPS."
   --#TYPE "APC CODE: NMC cannot communicate with UPS."
   --#SUMMARY "NMC cannot communicate with UPS."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 783

pcnsNMCComsLostResolved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: NMC can communicate with UPS again."
   --#TYPE "APC CODE: NMC can communicate with UPS again."
   --#SUMMARY "NMC can communicate with UPS again."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 784

pcnsTest TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute has sent a test trap."
   --#TYPE "APC CODE: PowerChute has sent a test trap."
   --#SUMMARY "PowerChute has sent a test trap."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 785

pcnsUpdateAvailable TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute has detected that a newer version is available."
   --#TYPE "APC CODE: PowerChute has detected that a newer version is available."
   --#SUMMARY "PowerChute has detected that a newer version is available."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 786

temporaryBypass TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: UPS on temporary bypass"
   --#TYPE "APC UPS: On temporary bypass"
   --#SUMMARY "The UPS is on temporary bypass."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 787




pcbeCriticalEventActive TRAP-TYPE
   ENTERPRISE apc
      VARIABLES { mtrapargsString }
    DESCRIPTION
      "SEVERE: PowerChute Business Edition has begun a safe shutdown of the host."
   --#TYPE "APC CODE: PowerChute Business Edition has begun a safe shutdown of the host."
   --#SUMMARY "Safe shutdown of host initiated."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 790

pcbeCriticalEventResolved TRAP-TYPE
   ENTERPRISE apc
      VARIABLES { mtrapargsString }
    DESCRIPTION
      "INFORMATIONAL: PowerChute Business Edition critical event resolved.  Safe shutdown will continue."
   --#TYPE "APC CODE: PowerChute Business Edition critical event resolved.  Safe shutdown will continue."
   --#SUMMARY "Critical event resolved."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 791

pcbeComsLost TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: PowerChute cannot communicate with UPS"
   --#TYPE "APC CODE: PowerChute cannot communicate with UPS"
   --#SUMMARY "PowerChute cannot communicate with UPS"
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 792

pcbeComsLostResolved TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute can communicate with UPS again."
   --#TYPE "APC CODE: PowerChute can communicate with UPS again."
   --#SUMMARY "PowerChute can communicate with UPS again."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 793

pcbeTest TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute has sent a test trap."
   --#TYPE "APC CODE: PowerChute has sent a test trap."
   --#SUMMARY "PowerChute has sent a test trap."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 794

pcbeUpdateAvailable TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: PowerChute has detected that a newer version is available."
   --#TYPE "APC CODE: PowerChute has detected that a newer version is available."
   --#SUMMARY "PowerChute has detected that a newer version is available."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 795
-- pMM Trap Section

pmmCriticalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "SEVERE: A PMM critical condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: A critical condition has been detected."
   --#SUMMARY "A critical condition has been detected."
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 796

pmmCriticalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A PMM critical condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: A critical condition has been cleared."
   --#SUMMARY "A critical condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 797

pmmWarningCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "WARNING: A PMM warning condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: A warning condition has been detected."
   --#SUMMARY "A warning condition has been detected."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 798

pmmWarningConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "WARNING: A PMM warning condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: A warning condition has been cleared."
   --#SUMMARY "A warning condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 799

pmmInformationalCondition TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A PMM informational condition has been detected.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: Informational condition detected."
   --#SUMMARY "An informational condition has been detected."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 800

pmmInformationalConditionCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString02, mtrapargsString03, mtrapargsInteger, mtrapargsInteger02, mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A PMM informational condition has been cleared.
       The first variable is the serial number.
       The second variable is the device name.
       The third variable is the event ID.
       The fourth variable is the instance number.
       The fifth variable is the trap text message."
   --#TYPE "PMM: Informational condition cleared."
   --#SUMMARY "An informational condition has been cleared."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 801

upsInputContactOutputRelayFault TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: A fault exists in the UPS input contact / output relay hardware."
   --#TYPE "APC UPS: Input contact / output relay fault."
   --#SUMMARY "Input contact / output relay fault."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 802

upsInputContactOutputRelayFaultCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Fault no longer exists in the UPS input contact / output relay hardware."
   --#TYPE "APC UPS: Input contact / output relay fault cleared."
   --#SUMMARY "Input contact / output relay fault cleared."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 803

upsAirFilterWarning TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: Air filter requires service."
   --#TYPE "APC UPS: Air filter requires service."
   --#SUMMARY "Air filter requires service."
   --#ARGUMENTS { }
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 804

upsAirFilterWarningCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Air filter no longer requires service."
   --#TYPE "APC UPS: Air filter no longer requires service."
   --#SUMMARY "Air filter no longer requires service."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 805
   
upsBatteryPackIncompatible TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "SEVERE: Incompatible battery pack."
   --#TYPE "APC UPS: Incompatible battery pack."
   --#SUMMARY "Incompatible battery pack."
   --#ARGUMENTS { }
   --#SEVERITY SEVERE
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE DEGRADED
   ::= 806

upsBatteryPackIncompatibleCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: Incompatible battery pack no longer present."
   --#TYPE "APC UPS: Incompatible battery pack no longer present."
   --#SUMMARY "Incompatible battery pack no longer present."
   --#ARGUMENTS { }
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 807

upsInputContactAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: UPS input contact is in the abnormal state."
   --#TYPE "APC UPS: Input contact in abnormal state."
   --#SUMMARY "UPS input contact in abnormal state."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 808

upsInputContactAbnormalCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: UPS input contact has returned to its normal 
       state."
   --#TYPE "APC UPS: Input contact has returned to the normal state."
   --#SUMMARY "UPS input contact has returned to the normal state."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 809

upsOutputRelayAbnormal TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "WARNING: A UPS output relay has switched to the abnormal state."
   --#TYPE "APC UPS: Output relay in abnormal state."
   --#SUMMARY "UPS output relay in abnormal state."
   --#SEVERITY WARNING
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 810

upsOutputRelayAbnormalCleared TRAP-TYPE
   ENTERPRISE apc
   VARIABLES { mtrapargsString }
   DESCRIPTION
      "INFORMATIONAL: A UPS output relay has returned to its normal 
       state."
   --#TYPE "APC UPS: Output relay back in normal state."
   --#SUMMARY "UPS output relay back in normal state."
   --#SEVERITY INFORMATIONAL
   --#TIMEINDEX 1
   --#HELP ""
   --#HELPTAG 0
   --#STATE OPERATIONAL
   ::= 811

END
