-- *************************************************************************
-- AMERICAN POWER CONVERSION PowerNet-MIB
-- *************************************************************************
-- Copyright (c) 2004 American Power Conversion, Inc.
-- PowerNet is a Trademark of American Power Conversion Corp.
--
-- Title: APC TOP LEVEL PowerNet MIB
--
-- Version : 3.6.8
--
-- Generated by script: tomib.awk
--
-- Input File: powernetPS.mib
--
-- Created: Monday, November, 22, 2004
--
-- 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
-- 06/18/02 - v3.5.0a Sync Control Group support
-- 08/06/02 - v3.5.0a Environmental Management System branch/traps
-- 09/16/02 - v3.5.0b Fixed some odds/ends ... going to RM-PDU for MS additions
-- 09/25/02 - v3.5.0c MS3 additions
-- 11/05/02 - v3.5.0e More Environmental Management System/A-Link devices(ARU)
-- 11/22/02 - v3.5.0g Added General APC device status OID
-- 11/27/02 - v3.5.0h Wrapped up MS3 ((Controlled or Metered) Rack PDU) changes
-- 12/26/02 - v3.5.1a Changed MS3 name again, Controlled to Switched Rack PDU
-- 01/07/03 - v3.6.0a Added OIDs/Traps for UPS Switchable Outlet Groups.
-- 01/09/03 -         Adding the General APC device discovery OIDs (hidden)
-- 01/28/03 - v3.6.0c Made some small trap pair fixes for Switched Rack PDU (MS3)
-- 02/13/03 - v3.6.0d Mods from the review and some EMS fixes.
--                    Added OID for the new 20kVA Symmetra 3 Phase type.
--                    Added OIDs to upsAdvConfig for Symmetra type UPSs.
--                    Added upsDiagnostics branch OID for Symmetra module information.
-- 04/05/03 - v3.6.2  Added OID for the new Smart-UPS 7500 and 10000 types.
-- 06/04/03 - v3.6.3  Added OIDs/Traps for AirFM.
-- 06/24/03 - v3.6.4  Moved some AirFM temps and humidities from system level to module level.
-- 10/24/03 - v3.6.4a Added OIDs/Traps for xPDU.
-- 10/27/03 - v3.6.4f Added AirPA OIDs.
-- 11/03/03 - v3.6.4g Merge of 3.6.4e and 3.6.4f
-- 11/07/03 - v3.6.4h Additional review corrections
-- 12/01/03 - v3.6.5a Added group OIDs for Air FM.  Added C & F OIDs for Air PA setpoint.
-- 12/19/03 - v3.6.5b Review corrections.
-- 02/23/04 - v3.6.5c Added Modbus to experimental and multiple CB(bank) rPDU support
-- 05/05/04 - v3.6.6  Adding EMS status OID and trap for H/W issues, redefined duplicate
--                     trap #228 (to ARU Device config change) and minor clean-up
-- 05/12/04 - v3.6.7a Added Air FM alarm status OIDs.
-- 06/03/04 - v3.6.7b Added UPS Config for Simple Signal Shutdowns and Number of External
--                    batteries.  Added Mute option to the UPS Config Audible Alarm.
-- 07/12/04 - v3.6.7d Removed Air FM alarm status OIDs due to delay in release.
-- 07/14/04 - v3.6.7d Added a detailed description to the UPSAdvConfigAlarm OID
-- 07/14/04 - v3.6.7e Added Custom Event traps
-- 08/04/04 - v3.6.7  Tag for final builds, see v3.6.7 beta build notes for changes
-- 08/26/04 - v3.6.8a Added new traps for UPS internal over temperature fault and cleared.
-- 09/01/04 - v3.6.8b Adding new thresholds for EMS probe config & status
-- 09/08/04 - v3.6.8c Corrections from MIB review.
-- 09/30/04 - v3.6.8d Added new traps for AIS ^F Message events.
-- 10/21/04 - v3.6.8e EMS.  Added missing traps and new Rate functionality.
-- 10/22/04 - v3.6.8f Added resetNetworkLeaveModeAndRestart option to the mcontrolRestartAgent OID.
-- 10/28/04 - v3.6.8g Updated EMS sections from mib committee review.
-- 11/22/04 - v3.6.8  Tag for final build.
-- *************************************************************************
-- *************************************************************************
-- 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;

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 }

powerNetSubAgent               OBJECT IDENTIFIER ::=  { software 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 }
infraXurePDU                   OBJECT IDENTIFIER ::=  { system  15 }
ais5000UPS                     OBJECT IDENTIFIER ::=  { system  16 }
smartUPS3Phase                 OBJECT IDENTIFIER ::=  { system  17 }

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 }


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 }

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}

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 }

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 }

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 }

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 }

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

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

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

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

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 }

upsDiagSwitchGear              OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 1 }
upsDiagMCCBBox                 OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 2 }
upsDiagTransformer             OBJECT IDENTIFIER ::=  { upsDiagnosticExternalDevices 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 }

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 }

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 }

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 }

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

rARUIdent                      OBJECT IDENTIFIER ::=  { rARU 1 }
rARUConfig                     OBJECT IDENTIFIER ::=  { rARU 2 }
rARUStatus                     OBJECT IDENTIFIER ::=  { rARU 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.
     Maximum number of Trap Receivers is four."
  ::= { 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
     "An entry will become active if yes, and will
      be deleted if no."
  ::= { mconfigTrapReceiverEntry 5 }


receiveTrapType OBJECT-TYPE
  SYNTAX INTEGER   {
     powernet (1),
     ietf     (2),
     both     (3)
  }
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "The node in this entry will receive traps defined in APC
      PowerNet MIB, if this OID is set to yes."
  ::= { 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 AP9605, AP9205,
      and AP9603 PowerNet SNMP Adapters."
  ::= { 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 AP9605, AP9205, and AP9603 PowerNet SNMP Adapters."

  ::= { 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 AP9605, AP9205, and AP9603 PowerNet SNMP Adapters. 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 }

-- 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 mandatory
  DESCRIPTION
     "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  mandatory
  DESCRIPTION
     "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  mandatory
  DESCRIPTION
     "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  mandatory
  DESCRIPTION
     "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  mandatory
  DESCRIPTION
     "The user identification for logging into the FTP server specified with mfiletransferConfigFTPServerAddress."

  ::= { mfiletransferConfigFTP 2 }

mfiletransferConfigFTPServerPassword     OBJECT-TYPE
  SYNTAX  DisplayString
  ACCESS  read-write
  STATUS  mandatory
  DESCRIPTION
     "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 mandatory
  DESCRIPTION
     "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 xPDUIdent group

xPDUIdentProductName OBJECT-TYPE
  SYNTAX  DisplayString
  ACCESS  read-write
  STATUS  mandatory
  DESCRIPTION
     "The name of the PDU. Maximum size is dependent on device.
      An error will be returned if the set request exceeds the max size."
  ::= { 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 }

xPDUIdentFirmwareRev OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "An ID string identifying the PDU firmware revision.
      This value is set at the factory."
  ::= {  xPDUIdent 3 }

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

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

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

--  the xPDUDevice group

xPDUDeviceNominalMainInputVoltage OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The Nominal Main Input Voltage to the PDU.
      Measured in VRMS,  line-to-line for a delta service or
      line-to-neutral for a wye service."
  ::= { xPDUDevice 1 }

xPDUDeviceServiceType OBJECT-TYPE
   SYNTAX INTEGER  {
       delta(1),
       wye(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 VRMS."
  ::= { xPDUDevice 3 }

xPDUDeviceMainInputBreakerRating OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The rating of the Main Input Breaker measured in ARMS."
  ::= { xPDUDevice 4 }

xPDUDevicePanelBreakerRating OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The rating of the Panel Breaker measured in ARMS."
  ::= { 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 }

xPDUIdentCallibrationDate OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The date when the PDU was last callibrated in mm/dd/yyyy format."
  ::= { xPDUDevice 7 }

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

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

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

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

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

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

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

xPDUDeviceInfraXureType 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 15 }

-- 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."
  ::= { xPDUMainInput 2 }

-- Main Input Voltage Table

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

xPDUMainInputVoltageTable OBJECT-TYPE
      SYNTAX     SEQUENCE OF XPDUMainInputVoltagePhaseEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
         "A list of input voltage table entries. The number of
          entries is the sum of phases.
          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 }
      ::= { xPDUMainInputVoltageTable 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 each input phase utilized in this device."
      ::= { 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 0.1 VRMS"
      ::= { 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 0.1 VRMS"
  ::= { 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."
  ::= { xPDUBypassInput 2 }

-- Bypass Input  Voltage Table

xPDUBypassInputVoltageTableSize OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of Bypass Input voltage records."
  ::= { xPDUBypassInput 3 }

xPDUBypassInputVoltageTable OBJECT-TYPE
      SYNTAX     SEQUENCE OF XPDUBypassInputVoltagePhaseEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
         "A list of output table entries.  The number of
          entries is given by the sum of phases.
          The number of entries is contained in the
          xPDUBypassInputVoltageTableSize 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 }
      ::= { xPDUBypassInputVoltageTable 1 }

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

  xPDUBypassInputVoltagePhaseIndex OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
         "Index of each 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 0.1 VRMS"
      ::= { 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 0.1 VRMS"
      ::= { xPDUBypassInputVoltagePhaseEntry 3 }

-- UPS Input Table

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

xPDUUPSInputVoltageTable OBJECT-TYPE
      SYNTAX     SEQUENCE OF XPDUUPSInputVoltagePhaseEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
         "A list of UPS input table entries.  The number of
          entries is given by the sum the phases.
          The number of entries is contained in the
          xPDUUPSInputVoltageTableSize 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 }
      ::= { xPDUUPSInputVoltageTable 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 each input phase utilized in this device."
      ::= { xPDUUPSInputVoltagePhaseEntry 1 }

 xPDUUPSInputVoltageLtoNPresent OBJECT-TYPE
   SYNTAX INTEGER  {
       notPresent(1),
       present(2)
  }
  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 0.1 Hertz."
  ::= { xPDUSystemOutput 1 }

xPDUSystemOutputNeutralCurrent OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "Shows the Neutral Current measured at the System Output in 0.1 ARMS."
  ::= { xPDUSystemOutput 2 }

xPDUSystemOutputTotalPower OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "Shows the Total System Output Power in 1000 Watts (KW)."
  ::= { xPDUSystemOutput 3 }

xPDUSystemOutputTotalVoltAmps OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "Shows the Total System Output Power in 1000 Volt-Amps (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)"
  ::= { xPDUSystemOutput 5 }

xPDUSystemOutputFrequencyTolerance OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "Shows the Circuit Panel Output Frequency Tolerance (Hz)."
  ::= { xPDUSystemOutput 6 }

xPDUSystemOutputMaxKWPower OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "Defines 100% load in 1000 Watts (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."
  ::= { xPDUSystemOutput 9 }


xPDUSystemOutputOverCurrentThreshold 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 Panel Breaker rating."
  ::= { xPDUSystemOutput 10 }

xPDUSystemOutputOverCurrentNeutralThreshold OBJECT-TYPE
  SYNTAX INTEGER (0..100)
  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."
  ::= { 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."
  ::= { xPDUSystemOutput 12 }

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

xPDUSystemOutputTable 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 }
      ::= { xPDUSystemOutputTable 1 }

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

  xPDUSystemOutputPhaseIndex 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."
      ::= { xPDUSystemOutputPhaseEntry 1 }

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

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


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

  xPDUSystemOutputPower OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
         "System Output Power per phase. Measured in 1000 Watts (KW)."
      ::= { xPDUSystemOutputPhaseEntry 5 }

  xPDUSystemOutputVoltAmps OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
         "System Output Power per phase. Measured in 1000 Volt-Amps (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)"
      ::= { xPDUSystemOutputPhaseEntry 7 }

xPDUGroundCurrent OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "Shows the current measured in the earth ground conductor in 0.1 ARMS."
  ::= { xPDUGroundMonitorPoint 1 }

xPDUGroundCurrentThreshold OBJECT-TYPE
  SYNTAX INTEGER (0..100)
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "Threshold above which a Ground Current Over current
      condition will be generated. Measured in 0.1 ARMS."
  ::= { xPDUGroundMonitorPoint 2 }

-- System Breakers

xPDUSystemBreakerTableSize OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of System Breaker records."
  ::= { xPDUSystemBreakers 1 }

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

  xPDUSystemBreakerTableEntry OBJECT-TYPE
      SYNTAX     XPDUSystemBreakerTableEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
         "An entry containing information applicable to a
          particular System Breaker."
      INDEX { xPDUSystemBreakerTableIndex }
      ::= { xPDUSystemBreakerTable 1 }

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

  xPDUSystemBreakerTableIndex OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
         "Description of each system breaker utilized in this device."
      ::= { xPDUSystemBreakerTableEntry 1 }

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

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

-- Branch Breakers (Breaker Panel)

xPDUNumOfBranchBreakers OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number Branch Breakers in the Panel."
  ::= { xPDUBranchBreakers 1 }

-- Branch Breakers Table

xPDUBranchBreakerTableSize OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of Branch Breaker records."
  ::= { 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."
      INDEX { xPDUBranchBreakerTableIndex }
      ::= { xPDUBranchBreakerTable 1 }

  XPDUBranchBreakerEntry ::= SEQUENCE {
      xPDUBranchBreakerTableIndex             INTEGER,
      xPDUBranchBreakerRating                 INTEGER,
      xPDUBranchBreakerRDPFeed                INTEGER,
      xPDUBranchBreakerTieIndicator           INTEGER,
      xPDUBranchBreakerCurrent                INTEGER,
      xPDUBranchBreakerOverCurrentThreshold   INTEGER,
      xPDUBranchBreakerUnderCurrentThreshold  INTEGER
      }

  xPDUBranchBreakerTableIndex OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
         "Description of each each branch circuit utilized in this device."
      ::= { xPDUBranchBreakerEntry 1 }

  xPDUBranchBreakerRating OBJECT-TYPE
      SYNTAX INTEGER (0..100)
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "Indicates current rating of this breaker.
          0=Breaker is not present.
          1=Earth breaker.
          A value greater than 2 indicates breaker current rating."
      ::= { xPDUBranchBreakerEntry 2 }

  xPDUBranchBreakerRDPFeed OBJECT-TYPE
      SYNTAX INTEGER  {
         remoteDistribution(1),
         noRemoteDistribution(2)
      }
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "Indicates that a breaker position is feeding a Remote
          Distribution Panel"
      ::= { xPDUBranchBreakerEntry 3 }

  xPDUBranchBreakerTieIndicator OBJECT-TYPE
      SYNTAX INTEGER  {
         breakerTied(1),
         breakerUntied(2)
      }
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "Indicates whether or not the breaker pole is physically
          connected to the breaker immediately below."
      ::= { xPDUBranchBreakerEntry 4 }

   xPDUBranchBreakerCurrent OBJECT-TYPE
      SYNTAX INTEGER
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Indicates the Branch Current in 0.1 ARMS 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 Over Current
          condition will be generated.
          Specified as a percent of the Branch Breaker rating."
      ::= { xPDUBranchBreakerEntry 6 }

   xPDUBranchBreakerUnderCurrentThreshold OBJECT-TYPE
      SYNTAX INTEGER (0..100)
      ACCESS read-write
      STATUS mandatory
      DESCRIPTION
         "Threshold below which a Branch Circuit Under Current
          condition will be generated.
          Specified as a percent of the Branch Breaker rating."
      ::= { xPDUBranchBreakerEntry 7 }

-- 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 records."
  ::= { xPDUInputContacts 2 }

xPDUInputContactTable OBJECT-TYPE
  SYNTAX SEQUENCE OF XPDUContactEntry
  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 XPDUContactEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "A contact entry containing information for a given contact."
  INDEX  { xPDUInputContactNumber }
  ::= { xPDUInputContactTable 1 }

XPDUContactEntry ::=
  SEQUENCE {
     xPDUInputContactNumber    INTEGER,
     xPDUInputContactName      DisplayString,
     xPDUNormalState      INTEGER,
     xPDUCurrentState    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 }

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

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

-- the xPDUOutputRelays group

xPDUOutputRelaysNumContacts 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 records."
  ::= { 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,
     xPDUOutputNormalState      INTEGER,
     xPDUOutputCurrentState    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 Oudescription of the purpose/use of the Output Relay."
  ::= { xPDUOutputRelayEntry 2 }

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

xPDUOutputCurrentState OBJECT-TYPE
  SYNTAX INTEGER {
     open(1),
     closed(2)
  }
  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)
  }
  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)
  }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "Indicates if the PDU's isolation transformer is over temperature,
      or -1 if no transformer is present in this PDU."
  ::= { xPDUMiscGroup 2 }

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

-- 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 SoftwareEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "A list of the software monitoring the UPS."
  ::= { powerNetSoftwareConfig 2 }

powerNetSoftwareEntry OBJECT-TYPE
  SYNTAX SoftwareEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "An entry containing information on a software module."
  INDEX { moduleNumber }
  ::= { powerNetSoftwareTable 1 }

SoftwareEntry ::=
  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 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 }


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



-- the upsBattery group
-- the upsBasicBattery group

upsBasicBatteryStatus OBJECT-TYPE
  SYNTAX INTEGER  {
     unknown(1),
     batteryNormal(2),
     batteryLow(3)
  }
  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."
  ::= { 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 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."
  ::= { 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."
  ::= { 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 }


-- 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),
     rateOfVoltageChnage(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 }


-- 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)
  }
  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)."
  ::= { upsBasicOutput 1 }

upsBasicOutputPhase OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The current output phase."
  ::= { upsBasicOutput 2 }


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


-- the upsBasicConfig group

upsBasicConfigNumDevices OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of devices that are plugged into the UPS."
  ::= { 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 0"
  ::= { upsAdvConfig 12 }

upsAdvConfigDipSwitchSetting 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 }
  ::= { upsAdvConfigDipSwitchSetting 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 ApcUpsConfigEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The table listing the allowed values for all discrete
      configurable UPS variables."
  ::= { upsAdvConfig 16 }

apcUpsConfigEntry OBJECT-TYPE
  SYNTAX ApcUpsConfigEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The table entry for a configurable UPS variable."
  INDEX  { apcUpsConfigFieldIndex }
  ::= { upsAdvConfigAllowedSetTable 1 }

ApcUpsConfigEntry ::= 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."
  ::= { apcUpsConfigEntry 1 }

apcUpsConfigFieldOID OBJECT-TYPE
  SYNTAX OBJECT IDENTIFIER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The OID of the current configurable value."
  ::= { apcUpsConfigEntry 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."
  ::= { apcUpsConfigEntry 3 }

upsAdvConfigBattCabAmpHour OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "Configure settings of UPS battery cabinet amp hour setting."
  ::= { 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)
  }
  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"
  ::= { 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 -1 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 scalling.
      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 }


-- 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 Initiators 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 Initiators 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 Followers battery must be charged for it to complete a
       reboot.  For example, if the Initiators RBC is 50% and the Initiators RBCO is
       5% then a Followers 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: Self Test In Progress
      Flag 28: Low Battery / On Battery

      Flag 29: Graceful Shutdown Issued by Upstream Device
      Flag 30: Graceful Shutdown Issued by Downstream Device
      Flag 31: No Batteries Attached*
      Flag 32: Synchronized command is in progress

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

  ::= { upsBasicState 1 }

-- 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 notin 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 Maintanence 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 Circiut 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: <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 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 Avtive
     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: <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 3 }


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

upsAdvControlRebootUps OBJECT-TYPE
  SYNTAX INTEGER  {
     noRebootUps(1),
     rebootUps(2),
     rebootUpsGracefully(3),
     rebootSyncGroupUps(4),
     rebootSyncGroupUpsGracefully(5)
  }
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "Setting this variable to rebootUps(2) causes the
      UPS to shut off and turn back on.

      Setting this variable to rebootUpsGracefully(3) causes the
      UPS to shut off and turn back on 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 rebootSyncGroupUps(4) command will perform
      a Synchronized Reboot of all active Group members regardless
      of their current AC output status.  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
      rebootSyncGroupUpsGracefully(5) command will perform a
      Synchronized Reboot of all active Group members regardless
      of their current AC output status.  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 noRebootUps(1) has no effect.

      The value noRebootUps(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)
  }
  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.

      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 }


-- the upsTest group

-- the upsBasicTest group

-- the upsAdvTest group

upsAdvTestDiagnosticSchedule OBJECT-TYPE
  SYNTAX INTEGER  {
     unknown(1),
     biweekly(2),
     weekly(3),
     atTurnOn(4),
     never(5)
  }
  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)
  }
  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. "
  ::= { 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 }

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


-- 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 ContactEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "A list of contacts supported by the Measure-UPS."
  ::= { mUpsContact 2 }

mUpsContactEntry OBJECT-TYPE
  SYNTAX ContactEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "A contact entry containing information for a given contact."
  INDEX  { contactNumber }
  ::= { mUpsContactTable 1 }

ContactEntry ::=
  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 Phase2.
              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 Phase3 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
  }

  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 }

  --
  -- 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 Phase2.
              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 Phase3 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
  }

  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 }

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

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 }

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

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 (in seconds) the outlet group will delay
      powering on when the delayed on or reboot command is applied.
      Allowed values are -1 (for Never) or 0 to 600 seconds."
  ::= { upsOutletGroupConfigEntry 3 }

upsOutletGroupConfigPowerOffDelay OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "The amount of time (in seconds) the outlet group will delay
      powering off when the delayed off command is applied.
      Allowed values are 0 to 600 seconds."
  ::= { 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,
      in seconds, after turning the power off, at the start
      of the sequence, before initiating the power on sequence.
      Allowed values are 0 to 600 seconds."
  ::= { upsOutletGroupConfigEntry 5 }

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

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),
       upsOutletGroupImmediateReboot      (3),
       upsOutletGroupDelayedOn            (4),
       upsOutletGroupDelayedOff           (5),
       upsOutletGroupDelayedReboot        (6),
       upsOutletGroupCancelPendingCommand (7),
       upsOutletGroupControlUnknown       (8)
  }
  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.

      Setting this variable to upsOutletGroupImmediateOff (2) will turn the
      outlet group off.

      Setting this variable to upsOutletGroupImmediateReboot (3) will turn the outlet
      group off, wait the upsOutletGroupConfigRebootDuration OID time, wait the
      upsOutletGroupConfigPowerOnDelay OID, and then turn the outlet group on.

      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 upsOutletGroupDelayedReboot (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.

      Setting this variable to upsOutletGroupCancelPendingCommand (7) will
      cause any pending command to this outlet group to be canceled."
  ::= { upsOutletGroupControlEntry 3 }

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

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 }

-- the upsDiagnosticPowerModules group

upsDiagPMTableSize OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of Power Modules in or attached to 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
  }

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 }

-- the upsDiagnosticBatteries group

upsDiagBatteryTableSize OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The number of batteries in or attached to 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
  }

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 }

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

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 }

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
  }

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 }

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
  }

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 }

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
  }

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 }

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 }

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

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 }

-- 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 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 inconsistancy
         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 inconsistancy
         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. The maximum value is 20 characters."
  ::= { 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 OutletControlEntry
  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 OutletControlEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to control."
  INDEX  { sPDUOutletControlIndex}
  ::= { sPDUOutletControlTable 1 }

OutletControlEntry ::=
  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 IdentVMEntry
  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 IdentVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch VMs to query."
  INDEX  { sPDUIdentVMIndex}
  ::= { sPDUIdentVMTable 1 }

IdentVMEntry ::=
  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 MasterControlVMEntry
  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 MasterControlVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch VMs to control."
  INDEX  { sPDUMasterControlVMIndex}
  ::= { sPDUMasterControlVMTable 1 }

MasterControlVMEntry ::=
  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 MasterConfigVMEntry
  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 MasterConfigVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch VMs to configure."
  INDEX  { sPDUMasterConfigVMIndex}
  ::= { sPDUMasterConfigVMTable 1 }

MasterConfigVMEntry ::=
  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 MasterStatusVMEntry
  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 MasterStatusVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch VMs to gather status from."
  INDEX  { sPDUMasterStatusVMIndex}
  ::= { sPDUMasterStatusVMTable 1 }

MasterStatusVMEntry ::=
  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 OutletControlVMEntry
  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 OutletControlVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to control."
  INDEX  { sPDUOutletControlVMIndex, sPDUOutletControlVMOutletIndex }
  ::= { sPDUOutletControlVMTable 1 }

OutletControlVMEntry ::=
  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 OutletConfigVMEntry
  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 OutletConfigVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to configure."
  INDEX  { sPDUOutletConfigVMIndex, sPDUOutletConfigVMOutletIndex }
  ::= { sPDUOutletConfigVMTable 1 }

OutletConfigVMEntry ::=
  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 OutletStatusVMEntry
  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 OutletStatusVMEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to gather status from."
  INDEX  { sPDUOutletStatusVMIndex, sPDUOutletStatusVMOutletIndex }
  ::= { sPDUOutletStatusVMTable 1 }

OutletStatusVMEntry ::=
  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 IdentMSPEntry
  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 IdentMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch pluses to query."
  INDEX  { sPDUIdentMSPIndex}
  ::= { sPDUIdentMSPTable 1 }

IdentMSPEntry ::=
  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 MasterControlMSPEntry
  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 MasterControlMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch pluses to control."
  INDEX  { sPDUMasterControlMSPIndex}
  ::= { sPDUMasterControlMSPTable 1 }

MasterControlMSPEntry ::=
  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 MasterConfigMSPEntry
  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 MasterConfigMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch pluses to configure."
  INDEX  { sPDUMasterConfigMSPIndex}
  ::= { sPDUMasterConfigMSPTable 1 }

MasterConfigMSPEntry ::=
  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 MasterStatusMSPEntry
  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 MasterStatusMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The MasterSwitch pluses to gather status from."
  INDEX  { sPDUMasterStatusMSPIndex}
  ::= { sPDUMasterStatusMSPTable 1 }

MasterStatusMSPEntry ::=
  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 OutletControlMSPEntry
  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 OutletControlMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to control."
  INDEX  { sPDUOutletControlMSPIndex, sPDUOutletControlMSPOutletIndex }
  ::= { sPDUOutletControlMSPTable 1 }

OutletControlMSPEntry ::=
  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 OutletConfigMSPallEntry
  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 OutletConfigMSPallEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to configure."
  INDEX  { sPDUOutletConfigMSPallIndex, sPDUOutletConfigMSPallOutletIndex }
  ::= { sPDUOutletConfigMSPallTable 1 }

OutletConfigMSPallEntry ::=
  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 OutletConfigMSPgsEntry
  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 OutletConfigMSPgsEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to configure."
  INDEX  { sPDUOutletConfigMSPgsIndex, sPDUOutletConfigMSPgsOutletIndex }
  ::= { sPDUOutletConfigMSPgsTable 1 }

OutletConfigMSPgsEntry ::=
  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 OutletConfigMSPannunEntry
  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 OutletConfigMSPannunEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to configure."
  INDEX  { sPDUOutletConfigMSPannunIndex, sPDUOutletConfigMSPannunOutletIndex }
  ::= { sPDUOutletConfigMSPannunTable 1 }

OutletConfigMSPannunEntry ::=
  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 OutletConfigMSPmupsEntry
  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 OutletConfigMSPmupsEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to configure."
  INDEX  { sPDUOutletConfigMSPmupsIndex, sPDUOutletConfigMSPmupsOutletIndex }
  ::= { sPDUOutletConfigMSPmupsTable 1 }

OutletConfigMSPmupsEntry ::=
  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 OutletStatusMSPEntry
  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 OutletStatusMSPEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to gather status from."
  INDEX  { sPDUOutletStatusMSPIndex, sPDUOutletStatusMSPOutletIndex }
  ::= { sPDUOutletStatusMSPTable 1 }

OutletStatusMSPEntry ::=
  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/yy 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."

  ::= { 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."

  ::= { 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 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)
  }
  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:
      Otlts1-8::(3-1),Otlts9-16::(2-3),Otlts17-24::(1-2)."
  ::= { rPDUIdent 13 }



-- 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."
  ::= { 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 each 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."
  ::= { rPDULoadDevice 4 }

-- the rPDULoadPhaseConfig group

rPDULoadPhaseConfigTable OBJECT-TYPE
  SYNTAX SEQUENCE OF LoadPhaseConfigEntry
  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 LoadPhaseConfigEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The Rack PDU phase to configure."
  INDEX  { rPDULoadPhaseConfigIndex}
  ::= { rPDULoadPhaseConfigTable 1 }

LoadPhaseConfigEntry ::=
  SEQUENCE {
     rPDULoadPhaseConfigIndex                    INTEGER,
     rPDULoadPhaseConfigLowLoadThreshold         INTEGER,
     rPDULoadPhaseConfigNearOverloadThreshold    INTEGER,
     rPDULoadPhaseConfigOverloadThreshold        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 }


-- the rPDULoadStatus group

rPDULoadStatusTable OBJECT-TYPE
  SYNTAX SEQUENCE OF LoadStatusEntry
  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 preceed the bank information."
  ::= { rPDULoadStatus 1 }

rPDULoadStatusEntry OBJECT-TYPE
  SYNTAX LoadStatusEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The Rack PDU phase/bank to gather status from."
  INDEX  { rPDULoadStatusIndex}
  ::= { rPDULoadStatusTable 1 }

LoadStatusEntry ::=
  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 preceed
      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.  A value of 0 will be returned if
      this is bank related information."
  ::= { 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
      this is phase related information."
  ::= { rPDULoadStatusEntry 5 }

-- the rPDULoadBankConfig group

rPDULoadBankConfigTable OBJECT-TYPE
  SYNTAX SEQUENCE OF LoadBankConfigEntry
  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 LoadBankConfigEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The Rack PDU bank to configure."
  INDEX  { rPDULoadBankConfigIndex}
  ::= { rPDULoadBankConfigTable 1 }

LoadBankConfigEntry ::=
  SEQUENCE {
     rPDULoadBankConfigIndex                    INTEGER,
     rPDULoadBankConfigLowLoadThreshold         INTEGER,
     rPDULoadBankConfigNearOverloadThreshold    INTEGER,
     rPDULoadBankConfigOverloadThreshold        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.

      -1 will be returned if the device has no banks."

  ::= { 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.

      -1 will be returned if the device has no banks."

  ::= { 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.

      -1 will be returned if the device has no banks."

  ::= { rPDULoadBankConfigEntry 4 }


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


-- the rPDUOutletPhase group

rPDUOutletPhaseTable OBJECT-TYPE
  SYNTAX SEQUENCE OF OutletPhaseEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "Allows for management of outlets on a per phase basis."
  ::= { rPDUOutletPhase 1 }

rPDUOutletPhaseEntry OBJECT-TYPE
  SYNTAX OutletPhaseEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The phase to manage."
  INDEX  { rPDUOutletPhaseIndex}
  ::= { rPDUOutletPhaseTable 1 }

OutletPhaseEntry ::=
  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. Maximum size is dependent on device.
      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. Maximum size is dependent on device.
      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 300 - power on up to 300 seconds (5 minutes) 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 300 - power off up to 300 seconds (5 minutes) 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 }


-- 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."
  ::= { 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
  }

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. Maximum size is dependent on device.
      An error will be returned if the set request exceeds the max size.
      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 }


-- the rPDUOutletBank group

rPDUOutletBankTable OBJECT-TYPE
  SYNTAX SEQUENCE OF OutletBankEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "Allows for management of outlets on a per bank basis."
  ::= { rPDUOutletBank 1 }

rPDUOutletBankEntry OBJECT-TYPE
  SYNTAX OutletBankEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The bank to manage."
  INDEX  { rPDUOutletBankIndex}
  ::= { rPDUOutletBankTable 1 }

OutletBankEntry ::=
  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
      rPDULoadConfigNearOverloadThreshold OID is exceeded.

      Setting this OID to restrictOnOverload (3) will not allow
      outlets on the corresponding bank to turn on if the
      rPDULoadConfigOverloadThreshold OID is exceeded."
  ::= { rPDUOutletBankEntry 2 }

-- the rPDUPowerSupplyDevice group

rPDUPowerSupply1Status   OBJECT-TYPE
  SYNTAX INTEGER       {
     powerSupply1Ok             (1),
     powerSupply1Failed         (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       {
     powerSupply2Ok             (1),
     powerSupply2Failed         (2)
  }
  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)."
  ::= { rPDUPowerSupplyDevice 2 }



-- 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 IdentSysDescriptionEntry
  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 IdentSysDescriptionEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The powerplant description record to reference."
  INDEX { dm3IdentSysDescriptionIndex }
  ::= { dm3IdentSysDescriptionTable 1 }

IdentSysDescriptionEntry ::=
  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 ConfigSysDescriptionEntry
  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 ConfigSysDescriptionEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The powerplant description record to reference."
  INDEX { dm3ConfigSysDescriptionIndex }
  ::= { dm3ConfigSysDescriptionTable 1 }

ConfigSysDescriptionEntry ::=
  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 ConfigLVDEntry
  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 ConfigLVDEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The LVD to configure."
  INDEX { dm3ConfigLVDIndex }
  ::= { dm3ConfigLVDTable 1 }

ConfigLVDEntry ::=
  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 Celcius.
     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 Celcius.
     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 ConfigOutRlyEntry
  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 ConfigOutRlyEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The output relay to configure."
  INDEX { dm3ConfigOutRlyIndex }
  ::= { dm3ConfigOutRlyTable 1 }

ConfigOutRlyEntry ::=
  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 ConfigInRlyEntry
  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 ConfigInRlyEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The input relay to configure."
  INDEX { dm3ConfigInRlyIndex }
  ::= { dm3ConfigInRlyTable 1 }

ConfigInRlyEntry ::=
  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 ConfigBreakersEntry
  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 ConfigBreakersEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The circuit breaker to configure."
  INDEX { dm3ConfigBreakersIndex }
  ::= { dm3ConfigBreakersTable 1 }

ConfigBreakersEntry ::=
  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 ConfigFusesEntry
  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 ConfigFusesEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The fuse to configure."
  INDEX { dm3ConfigFusesIndex }
  ::= { dm3ConfigFusesTable 1 }

ConfigFusesEntry ::=
  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 StatusAlarmsEntry
  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 StatusAlarmsEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The alarm to display."
  INDEX { dm3StatusAlarmsIndex }
  ::= { dm3StatusAlarmsTable 1 }

StatusAlarmsEntry ::=
  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 StatusLVDEntry
  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 StatusLVDEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The LVD to gather status from."
  INDEX { dm3StatusLVDIndex }
  ::= { dm3StatusLVDTable 1 }

StatusLVDEntry ::=
  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 StatusRectEntry
  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 StatusRectEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The rectifier to gather status from."
  INDEX { dm3StatusRectIndex }
  ::= { dm3StatusRectTable 1 }

StatusRectEntry ::=
  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 StatusConvEntry
  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 StatusConvEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The converter to gather status from."
  INDEX { dm3StatusConvIndex }
  ::= { dm3StatusConvTable 1 }

StatusConvEntry ::=
  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 StatusOutRlyEntry
  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 StatusOutRlyEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The output relay to gather status from."
  INDEX { dm3StatusOutRlyIndex }
  ::= { dm3StatusOutRlyTable 1 }

StatusOutRlyEntry ::=
  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 StatusInRlyEntry
  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 StatusInRlyEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The input relays to gather status from."
  INDEX { dm3StatusInRlyIndex }
  ::= { dm3StatusInRlyTable 1 }

StatusInRlyEntry ::=
  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 StatusBreakersEntry
  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 StatusBreakersEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The circuit breaker to gather status from."
  INDEX { dm3StatusBreakersIndex }
  ::= { dm3StatusBreakersTable 1 }

StatusBreakersEntry ::=
  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 StatusFusesEntry
  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 StatusFusesEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The fuse to gather status from."
  INDEX { dm3StatusFusesIndex }
  ::= { dm3StatusFusesTable 1 }

StatusFusesEntry ::=
  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 version 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 version."
  ::= {  atsIdent 2 }

atsIdentFirmwareDate OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The date of release for this Automatic Transfer Switch
      firmware version. "
  ::= {  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 V."
      ::= { atsIdent 7 }

atsIdentNominalLineFrequency OBJECT-TYPE
      SYNTAX     INTEGER
      ACCESS     read-only
      STATUS     mandatory
      DESCRIPTION
              "Utility Power Frequency measured in Hz."
      ::= { atsIdent 8 }

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

  atsCalibrationInputTable 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 }
      ::= { atsCalibrationInputTable 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. There is one entry per
               supported voltage: 24V, 12V and 5V"
      ::= { 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.
           Three power supply voltages are supported by the ATS:
            24V , 12V and 5V .
           The value of this index indicates the power supply voltage:
            1 = 24V
            2 = 12V
            3 = 5V"
      ::= { atsCalibrationPowerSupplyVoltageEntry 1 }

 atsCalibrationPowerSupplyVoltage OBJECT-TYPE
   SYNTAX INTEGER  {
     powerSupply24V(1),
     powerSupply12V(2),
     powerSupply(3)
  }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "This value describes the power supply voltage."
  ::= { 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 }

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


--  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."
  ::= { 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."
  ::= { 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) will disallow source
      preference configuration of the Automatic Transfer Switch via the
      Front Panel. Once this value is set, it can only be re-enabled through
      the serial interface of the ATS.
      When this variable is set to enableFrontPanel(2), source preference
      configuration of the Automatic Transfer Switch via the Front Panel
      is allowed."
  ::= { 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."

  ::= { 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."

  ::= { atsConfig 7 }

-- 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."
  ::= { atsStatusDeviceStatus 4 }

 atsStatus5VPowerSupply OBJECT-TYPE
   SYNTAX INTEGER {
       atsPowerSupplyFailure(1),
       atsPowerSupplyOK(2)
  }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "This variable returns the current state of the ATS 5-volt power supply.
      atsPowerSupplyFailure(1) indicates the 5-volt power supply has failed
      and that the ATS serial port Configuration Menu is not accessible .
      atsPowerSupplyOK(2) indicates that the ATS 5-volt power supply
      is operating within tolerance."
  ::= { atsStatusDeviceStatus 5 }

 atsStatus24VPowerSupply OBJECT-TYPE
   SYNTAX INTEGER  {
       atsPowerSupplyFailure(1),
       atsPowerSupplyOK(2)
  }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "This variable returns the current state of the ATS 24-volt power supply.
      atsPowerSupplyFailure(1) indicates the 24-volt 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 24-volt power supply
      is operating within tolerance."
  ::= { atsStatusDeviceStatus 6 }

  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 ATSPhaseInputEntry
      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     ATSPhaseInputEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
              "An entry containing information applicable to a
              particular input."
      INDEX { atsInputTableIndex }
      ::= { atsInputTable 1 }

  ATSPhaseInputEntry ::= 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 Phase2.
              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 Phase3 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 ATSPhaseInputPhaseEntry
      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     ATSPhaseInputPhaseEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
              "An entry containing information applicable to a
              particular input phase."
      INDEX { atsInputPhaseTableIndex, atsInputPhaseIndex }
      ::= { atsInputPhaseTable 1 }

  ATSPhaseInputPhaseEntry ::= 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 ATSPhaseOutputEntry
      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     ATSPhaseOutputEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
              "An entry containing information applicable to a
              particular output."
      INDEX { atsOutputTableIndex }
      ::= { atsOutputTable 1 }

  ATSPhaseOutputEntry ::= 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 Phase2.
              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 Phase3 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 ATSPhaseOutputPhaseEntry
      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     ATSPhaseOutputPhaseEntry
      ACCESS     not-accessible
      STATUS     mandatory
      DESCRIPTION
              "An entry containing information applicable to a
              particular output phase."
      INDEX { atsOutputPhaseTableIndex, atsOutputPhaseIndex }
      ::= { atsOutputPhaseTable 1 }

  ATSPhaseOutputPhaseEntry ::= 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
  }

  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 Watts, 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 Watts 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 Watts 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 Watts 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 Watts 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 Watts 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 }

-- 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 DC2ConfigLVDEntry
  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 DC2ConfigLVDEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The LVD to configure."
  INDEX { dcmim2ConfigLVDIndex }
  ::= { dcmim2ConfigLVDTable 1 }

DC2ConfigLVDEntry ::=
  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 DC2StatusRectEntry
  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 DC2StatusRectEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The rectifier to gather status from."
  INDEX { dcmim2StatusRectIndex }
  ::= { dcmim2StatusRectTable 1 }

DC2StatusRectEntry ::=
  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 DC2StatusLVDEntry
  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 DC2StatusLVDEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The LVD to access."
  INDEX { dcmim2StatusLVDIndex }
  ::= { dcmim2StatusLVDTable 1 }

DC2StatusLVDEntry ::=
  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 DC2StatusAlarmsEntry
  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 DC2StatusAlarmsEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The alarm to display."
  INDEX { dcmim2StatusAlarmsIndex }
  ::= { dcmim2StatusAlarmsTable 1 }

DC2StatusAlarmsEntry ::=
  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
  }

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 }

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
  }

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 }

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
  }

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 }

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 }

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

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 }

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
  }

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 }


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
  }

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,
      denoting its location or purpose."
  ::= { 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 }

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 OutputRelayControlEMSEntry
  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 OutputRelayControlEMSEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The output relays to control."
  INDEX  { emsOutputRelayControlOutputRelayIndex }
  ::= { emsOutputRelayControlTable 1 }

OutputRelayControlEMSEntry ::=
  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 OutletControlEMSEntry
  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 OutletControlEMSEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The outlets to control."
  INDEX  { emsOutletControlOutletIndex }
  ::= { emsOutletControlTable 1 }

OutletControlEMSEntry ::=
  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 AlarmDeviceControlEMSEntry
  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 AlarmDeviceControlEMSEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The alarm devices to control."
  INDEX  { emsAlarmDeviceControlDeviceIndex }
  ::= { emsAlarmDeviceControlTable 1 }

AlarmDeviceControlEMSEntry ::=
  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 }



--  airFM AIR CONDITIONER IDENT

airFMIdentName OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  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 AirFMIdentTableEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "Allows for getting identification information
      from each module in the system. "
  ::= { airFMIdent 3 }

airFMIdentTableEntry OBJECT-TYPE
  SYNTAX AirFMIdentTableEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The module to get information from."
  INDEX  { airFMIdentModuleIndex }
  ::= { airFMIdentTable 1 }

AirFMIdentTableEntry ::=
  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."
  ::= { airFMIdentTableEntry 1 }

airFMIdentModuleModelNumber OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "A character string identifying the
      model number. "
  ::= { airFMIdentTableEntry 2 }

airFMIdentModuleDateOfMfg OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "A character string identifying the
      manufacture date. "
  ::= { airFMIdentTableEntry 3 }

airFMIdentModuleSerialNumber OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "A character string identifying the
      unit serial number. "
  ::= { airFMIdentTableEntry 4 }

airFMIdentModuleFirmwareRev OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "A character string identifying the
      firmware revision. "
  ::= { airFMIdentTableEntry 5 }

airFMIdentModuleHardwareRev OBJECT-TYPE
  SYNTAX DisplayString
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "A character string identifying the
      hardware revision. "
  ::= { airFMIdentTableEntry 6 }

--  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. "
  ::= { airFMStatus 1 }

airFMStatusSystemAverageRetTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system average return air
      temperature in tenths of degrees Celsius. "
  ::= { airFMStatus 2 }

airFMStatusSystemAverageRetTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system average return air
      temperature in tenths of degrees Fahrenheit. "
  ::= { airFMStatus 3 }

airFMStatusSystemAverageRetHum OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system average return air
      humidity. "
  ::= { airFMStatus 4 }

airFMStatusSystemActionTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system action air
      temperature in tenths of degrees Celsius. "
  ::= { airFMStatus 5 }

airFMStatusSystemActionTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system action air
      temperature in tenths of degrees Fahrenheit. "
  ::= { airFMStatus 6 }

airFMStatusSystemActionHum OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system action air humidity. "
  ::= { airFMStatus 7 }

airFMStatusSystemRemoteHighTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote high air
      temperature in tenths of degrees Celsius. "
  ::= { airFMStatus 8 }

airFMStatusSystemRemoteHighTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote high air
      temperature in tenths of degrees Fahrenheit. "
  ::= { airFMStatus 9 }

airFMStatusSystemRemoteAvgTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote average air
      temperature in tenths of degrees Celsius. "
  ::= { airFMStatus 10 }

airFMStatusSystemRemoteAvgTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote average air
      temperature in tenths of degrees Fahrenheit. "
  ::= { airFMStatus 11 }

airFMStatusSystemRemoteAvgHum OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote average air
      humidity. "
  ::= { airFMStatus 12 }

airFMStatusSystemRemoteLowTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote low air
      temperature in tenths of degrees Celsius. "
  ::= { airFMStatus 13 }

airFMStatusSystemRemoteLowTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The system remote low air
      temperature in tenths of degrees Fahrenheit. "
  ::= { 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. "
  ::= { 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. "
  ::= { 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. "
  ::= { 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. "
  ::= { 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."
  ::= { airFMStatusModuleEntry 2 }

airFMStatusModuleSupplyTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module supply air temperature in
      tenths of degrees Celsius. "
  ::= { airFMStatusModuleEntry 3 }

airFMStatusModuleSupplyTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module supply air temperature in
      tenths of degrees Fahrenheit. "
  ::= { airFMStatusModuleEntry 4 }

airFMStatusModuleSupplyHum OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module supply air humidity. "
  ::= { airFMStatusModuleEntry 5 }

airFMStatusModuleReturnTempC OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module return air temperature in
      tenths of degrees Celsius. "
  ::= { airFMStatusModuleEntry 6 }

airFMStatusModuleReturnTempF OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module return air temperature in
      tenths of degrees Fahrenheit. "
  ::= { airFMStatusModuleEntry 7 }

airFMStatusModuleReturnHum OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The module return air humidity. "
  ::= { airFMStatusModuleEntry 8 }

-- airFM AIR CONDITIONER GROUP DATA

airFMGroupSysStatus OBJECT-TYPE
  SYNTAX INTEGER {
       statusOnLine    (1),
       statusIdle      (2),
       statusLoadShare (3),
       statusOffLine   (4),
       statusFailed    (5)
  }
  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 }

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

--  RACK AIR REMOVAL UNIT IDENT

rARUIdentTable OBJECT-TYPE
  SYNTAX SEQUENCE OF IdentRARUEntry
  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 IdentRARUEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The device to query."
  INDEX  { rARUIdentIndex}
  ::= { rARUIdentTable 1 }

IdentRARUEntry ::=
  SEQUENCE {
     rARUIdentIndex                 INTEGER,
     rARUIdentName                  DisplayString
  }

rARUIdentIndex OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The index to the device 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 ConfigRARUEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "Allows for configuration of individual ARUs. The number of
      entries is contained in the rARUStatusAruDeviceCount OID."
  ::= { rARUConfig 1 }

rARUConfigEntry OBJECT-TYPE
  SYNTAX ConfigRARUEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The ARUs to configure."
  INDEX  { rARUConfigAruIndex }
  ::= { rARUConfigTable 1 }

ConfigRARUEntry ::=
  SEQUENCE {
     rARUConfigAruIndex                  INTEGER,
     rARUConfigAruName                   DisplayString,
     rARUConfigAruRemoteSetpoint         INTEGER,
     rARUConfigAruTempOvrdEnableDisable  INTEGER,
     rARUConfigAruTempOvrdSetpoint       INTEGER
  }

rARUConfigAruIndex OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "The index to the device 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          (6),
     aru5kW          (7),
     aru3kW          (8),
     aru2kW          (9)
  }
  ACCESS read-write
  STATUS mandatory
  DESCRIPTION
     "This OID is the Remote setpoint of the ARU.
      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."

  ::= { rARUConfigEntry 5 }

-- 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 StatusRARUEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "Allows for access of individual ARUs. The number of
      entries is contained in the rARUStatusAruDeviceCount OID."
  ::= { rARUStatus 3 }

rARUStatusEntry OBJECT-TYPE
  SYNTAX StatusRARUEntry
  ACCESS not-accessible
  STATUS mandatory
  DESCRIPTION
     "The ARUs to access."
  INDEX  { rARUStatusAruIndex }
  ::= { rARUStatusTable 1 }

StatusRARUEntry ::=
  SEQUENCE {
     rARUStatusAruIndex                 INTEGER,
     rARUStatusAruName                  DisplayString,
     rARUStatusAruRemoteSetpoint        INTEGER,
     rARUStatusAruManualSetpoint        INTEGER,
     rARUStatusAruTemp1                 INTEGER,
     rARUStatusAruTemp2                 INTEGER,
     rARUStatusAruTemp3                 INTEGER,
     rARUStatusAruTempOvrdEnableDisable INTEGER,
     rARUStatusAruTempOvrdSetpoint      INTEGER,
     rARUStatusAruAlarmState            DisplayString,
     rARUStatusAruCommStatus            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          (6),
     aru5kW          (7),
     aru3kW          (8),
     aru2kW          (9)
  }
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "ARU remote setpoint temperature 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 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
     "ARU manual setpoint temperature setting.

     NOTE: -1 will be returned if the ARU is not communicating.

     Values are represented in whole number degrees.
     If the manual setpoint is set to Remote, this OID will return 0.
     Units are displayed in the scale shown in
     the rARUStatusSysTempUnits OID (Celsius or Fahrenheit)."
  ::= { rARUStatusEntry 4 }

rARUStatusAruTemp1 OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS mandatory
  DESCRIPTION
     "ARU temperature probe #1 reading.

     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.

     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.

     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

      Flag  5: High Temp (Out of Thermal Control)
      Flag  6: Over Temp (Exhaust Temp. Exceeds Override Setpoint)
      Flag  7: Reserved
      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 }

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

gracefullShutdown 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 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 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"
  --#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."
  --#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."
  --#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=24V, 1=12V 2=5V."
  --#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=24V, 1=12V 2=5V."
  --#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. Overtmp 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: Mult Rect Fail alarm is no longer active in the powerplant."
  --#TYPE "APC: Mult Rect Fail alarm is no longer active in the powerplant."
  --#SUMMARY "Mult 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 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

rPDUBankLowLoad TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "WARNING: A bank 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."
  --#TYPE "APC Rack PDU: Violation of bank low load threshold."
  --#SUMMARY "A bank on the Rack PDU has violated the low load threshold."
  --#ARGUMENTS { }
  --#SEVERITY WARNING
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 222

rPDUBankLowLoadCleared TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: The bank 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."
  --#TYPE "APC Rack PDU: Bank low load condition cleared."
  --#SUMMARY "The bank low load condition on a Rack PDU has been cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 223

rPDUBankNearOverload TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "WARNING: A bank 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."
  --#TYPE "APC Rack PDU: Bank near an overload condition."
  --#SUMMARY "A bank of the Rack PDU is near an overload condition."
  --#ARGUMENTS { }
  --#SEVERITY WARNING
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 224

rPDUBankNearOverloadCleared TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: The bank 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."
  --#TYPE "APC Rack PDU: Bank near overload condition has cleared."
  --#SUMMARY "Rack PDU bank near overload condition has cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 225

rPDUBankOverload TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "SEVERE: A bank 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."
  --#TYPE "APC Rack PDU: Bank overload condition."
  --#SUMMARY "A bank of the Rack PDU is in an overload condition."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 226

rPDUBankOverloadCleared TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { rPDUIdentSerialNumber, rPDUIdentName,
              rPDULoadStatusBankNumber, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: The bank 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."
  --#TYPE "APC Rack PDU: Bank overload condition has cleared."
  --#SUMMARY "The bank 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 Configurtion 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 Fail."
  --#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
     "SEVERE: Remote ARU High Temperature 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: High Temperature Alarm."
  --#SUMMARY "High Temperature Alarm."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 290

aruHighTemperatureAlarmCleared TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { emsIdentSerialNumber, emsIdentEMSName,
              rARUStatusAruIndex, rARUStatusAruName, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: Remote ARU High 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: 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: Remote ARU Exhaust Temperature 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: 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

xPDUThreePhaseInputVoltageAlarm TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
  DESCRIPTION
     "WARNING: 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 0.1 VRMS.
       The fifth argument is the type of alarm (1=HIGH, 2=LOW)."
  --#TYPE "APC PDU: Main input voltage out-of-range alarm."
  --#SUMMARY "Input voltage is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 312

xPDUThreePhaseInputVoltageNormal 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 0.1 VRMS."
  --#TYPE "APC PDU: Main input voltage back in range."
  --#SUMMARY "Input voltage in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 313

xPDUThreePhaseBypassVoltageAlarm TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
  DESCRIPTION
     "WARNING: 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, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
       The fourth argument is the measured voltage in 0.1 VRMS.
       The fifth argument is the type of alarm (1=HIGH, 2=LOW)."
  --#TYPE "APC PDU: Bypass input voltage out-of-range alarm."
  --#SUMMARY "Bypass input voltage is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 314

xPDUThreePhaseBypassVoltageNormal 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, 4=unused, 5=L1-L2, 6=L2-L3, 7=L3-L1).
       The fourth argument is the measured voltage in 0.1 VRMS."
  --#TYPE "APC PDU: Bypass input voltage back in range."
  --#SUMMARY "Bypass input voltage in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 315
xPDUThreePhaseOutputVoltageAlarm TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
  DESCRIPTION
     "WARNING: 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 0.1 VRMS.
       The fifth argument is the type of alarm (1=HIGH, 2=LOW)."
  --#TYPE "APC PDU:  Output voltage out-of-range alarm."
  --#SUMMARY "Output voltage is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 316

xPDUThreePhaseOutputVoltageNormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, 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 0.1 VRMS."
  --#TYPE "APC PDU: Output voltage back in range."
  --#SUMMARY "Output voltage in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 317


xPDUThreePhaseOutputCurrentAlarm TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
  DESCRIPTION
     "SEVERE: The devices three-phase load current 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, 4=Neutral).
       The fourth argument is the measured current in 0.1 ARMS.
       The fifth argument is the type of alarm (1=HIGH, 2=LOW)."
  --#TYPE "APC PDU: Output (load) current out-of-range alarm."
  --#SUMMARY "Output current is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 318

xPDUThreePhaseOutputCurrentNormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: The devices three-phase output current 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, 4=Neutral).
       The fourth argument is the measured current in 0.1 ARMS."
  --#TYPE "APC PDU: Output (load) current back in range."
  --#SUMMARY "Output current in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 319


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 in Hz."
  --#TYPE "APC PDU: Output frequency out-of-range alarm."
  --#SUMMARY "Output frequency is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 320

xPDUOutputFrequencyNormal 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 PDU: Output frequency back in range."
  --#SUMMARY "Output frequency in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 321

xPDUSystemGroundCurrentAlarm TRAP-TYPE
 ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger, mtrapargsString }
  DESCRIPTION
     "SEVERE: The devices earth ground current 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 0.1 ARMS."
  --#TYPE "APC PDU: Earth ground current over range alarm."
  --#SUMMARY "Earth ground current is over limit."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 322

xPDUSystemGroundCurrentNormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: The devices earth ground current 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 0.1 ARMS."
  --#TYPE "APC PDU: Earth ground current back in range."
  --#SUMMARY "Earth ground current in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 323

xPDUInputContactStateAbnormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsString02, mtrapargsInteger02, mtrapargsInteger03, mtrapargsString }
  DESCRIPTION
     "WARNING: 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=CLOSED, 2=OPEN).
       The sixth argument is the configured normal input contact state (1=CLOSED, 2=OPEN)."
  --#TYPE "APC PDU: 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
  ::= 324

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=CLOSED, 2=OPEN)."
  --#TYPE "APC PDU: 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
  ::= 325

xPDUOutputRelayStateAbnormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsString02, 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 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 PDU: 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
  ::= 326

xPDUOutputRelayStateNormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsString02, 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 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 PDU: 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
  ::= 327


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 PDU: Cooling fan failure alarm."
  --#SUMMARY "Cooling fan failure."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 328

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 PDU: Cooling fan alarm cleared."
  --#SUMMARY "Cooling fan alarm cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 329

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 PDU: Isolation transformer over temperature alarm."
  --#SUMMARY "Transformer temp alarm."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 330

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 PDU: Isolation transformer over temperature alarm cleared."
  --#SUMMARY "Transformer temp alarm cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 331


xPDUBranchCurrentAlarm 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 0.1 ARMS.
       The fifth argument is the type of alarm (1=HIGH, 2=LOW)."
  --#TYPE "APC PDU: Branch circuit current out-of-range alarm."
  --#SUMMARY "Branch circuit current is out-of-range."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 332

xPDUBranchCurrentNormal TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsInteger,
              mtrapargsInteger02, mtrapargsInteger03, 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 0.1 ARMS."
  --#TYPE "APC PDU: Branch circuit current back in range."
  --#SUMMARY "Branch circuit current in range."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 333


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.
       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=MAIN INPUT, 2=UPS FEED (Q1), 3=UPS OUTPUT(Q2), 4=MAINTENANCE BYPASS (Q3),
        5=BYPASS INPUT, 6=CROSS-TIE OUTPUT).
       The fourth argument is the state of the breaker that has changed (1=OPEN, 2=CLOSED).
       The fifth argument is a bit field representing the state of all breakers in the system,
       with a bit ordering as specified in the third argument description (b0, b1 ... b5).
       Example:  222211 indicates that the CROSS_TIE, BYPASS and MAIN INPUT, and Q3 breakers
       are CLOSED and Q2, Q1 breakers are OPEN."
  --#TYPE "APC PDU: Breaker/switch change event."
  --#SUMMARY "Breaker/switch change event."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 334


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 PDU: Internal communication error."
  --#SUMMARY "Internal communication error."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 335

xPDUInternalCommEstablished TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName, mtrapargsString }
  DESCRIPTION
     "INFORMATIONAL: Internal communication has been established.
       The first argument is the host device serial number.
       The second argument is the host device name."
  --#TYPE "APC PDU: Internal Communication established."
  --#SUMMARY "Communication established."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 336

xPDUSystemStateAlarm TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
              mtrapargsInteger, mtrapargsString }
  DESCRIPTION
     "WARNING: The PDU's breakers (Q1, Q2 & Q3) are set in a configuration
       that is detrimental to system availablity.
       The first argument is the host device serial number.
       The second argument is the host device name.
       The third argument is the type of alarm
       (1=NO UPS INPUT, 2=NO PANEL FEED, 3=ATYPICAL BYPASS MODE)."
  --#TYPE "APC PDU: System state alarm ."
  --#SUMMARY "PDU state alarm."
  --#ARGUMENTS { }
  --#SEVERITY WARNING
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 337

xPDUSystemStateNormal 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 alarm (1=UPS OPERATION, 2=MAINTENANCE BYPASS)."
  --#TYPE "APC PDU: System state returned to normal."
  --#SUMMARY "PDU state normal."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 338

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 PDU: Emergency Power Off (EPO) in test mode."
  --#SUMMARY "EPO disabled."
  --#ARGUMENTS { }
  --#SEVERITY WARNING
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 339

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 PDU: Emergency Power Off (EPO) enabled."
  --#SUMMARY "EPO armed."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 340



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 PDU: Check fuse alarm."
  --#SUMMARY "Fuse detected opened."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 341


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 PDU: Check fuse alarm cleared."
  --#SUMMARY "Fuse alarm cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 342


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).
       The fourth argument is the breaker position (1=OPEN, 2=CLOSED)."
  --#TYPE "APC PDU: Breaker position alarm."
  --#SUMMARY "Breaker position alarm."
  --#ARGUMENTS { }
  --#SEVERITY SEVERE
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE DEGRADED
  ::= 343

xPDUBreakerPositionAlarmCleared TRAP-TYPE
  ENTERPRISE apc
  VARIABLES { xPDUIdentSerialNumber, xPDUIdentProductName,
              mtrapargsInteger, mtrapargsInteger02, 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)."
  --#TYPE "APC PDU: Breaker position alarm cleared."
  --#SUMMARY "Breaker alarm cleared."
  --#ARGUMENTS { }
  --#SEVERITY INFORMATIONAL
  --#TIMEINDEX 1
  --#HELP ""
  --#HELPTAG 0
  --#STATE OPERATIONAL
  ::= 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 CustomEvent: 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 CustomEvent: 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 CustomEvent: 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 CustomEvent: 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 CustomEvent: 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 CustomEvent: 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

END