typedef struct _SYSTEM_POWER_POLICY
{
    unsigned long Revision;
    POWER_ACTION_POLICY PowerButton;
    POWER_ACTION_POLICY SleepButton;
    POWER_ACTION_POLICY LidClose;
    SYSTEM_POWER_STATE LidOpenWake;
    unsigned long Reserved;
    POWER_ACTION_POLICY Idle;
    unsigned long IdleTimeout;
    unsigned char IdleSensitivity;
    unsigned char DynamicThrottle;
    unsigned char Spare2[2];
    SYSTEM_POWER_STATE MinSleep;
    SYSTEM_POWER_STATE MaxSleep;
    SYSTEM_POWER_STATE ReducedLatencySleep;
    unsigned long WinLogonFlags;
    unsigned long Spare3;
    unsigned long DozeS4Timeout;
    unsigned long BroadcastCapacityResolution;
    SYSTEM_POWER_LEVEL DischargePolicy[4];
    unsigned long VideoTimeout;
    unsigned char VideoDimDisplay;
    unsigned long VideoReserved[3];
    unsigned long SpindownTimeout;
    unsigned char OptimizeForPower;
    unsigned char FanThrottleTolerance;
    unsigned char ForcedThrottle;
    unsigned char MinThrottle;
    POWER_ACTION_POLICY OverThrottled;
} SYSTEM_POWER_POLICY, *PSYSTEM_POWER_POLICY;