{%
local st = string.format

local is_multihost = HostType == 'Multihost'
local line =
    st(
    '%-10s | %-16s %s| %-10s | %-12s | %-6s | %-10s | %-10s | %-10s | %-8s | %-10s | %-10s | %-6s | %-6s',
    'sensor id',
    'sensor name',
    is_multihost and st('| %-10s ', 'system id') or '',
    'value',
    'unit',
    'status',
    'lnr',
    'lc',
    'lnc',
    'unc',
    'uc',
    'unr',
    'phys',
    'nhys'
)
echo(line)

for _, sensor in ipairs(SensorList) do
    local slot = tonumber(string.match(sensor.SensorName, 'Power(%d*)'))
    local work_mode = ''
    for _, onepower in ipairs(OnePowerList) do
        if onepower.SlotNumber == slot then
            work_mode = onepower.WorkMode
        end
    end
    if DeepSleep == 'Enabled' and PowerState == 'OFF' and work_mode == 'StandbySpare' then
        sensor.SensorReading = 'na'
    end
    local host_id = sensor.SystemId == 0 and 'na' or sensor.SystemId
    line =
        st(
        '\n%-10s | %-16s %s| %-10s | %-12s | %-6s | %-10s | %-10s | %-10s | %-8s | %-10s | %-10s | %-6s | %-6s',
        st('0x%x', sensor.SensorNumber),
        sensor.SensorName,
        is_multihost and st('| %-10s ', host_id) or '',
        sensor.SensorReading,
        sensor.SensorUnit,
        sensor.SensorStatus,
        sensor.LowerFatal == 'null' and 'na' or sensor.LowerFatal,
        sensor.LowerCritical == 'null' and 'na' or sensor.LowerCritical,
        sensor.LowerNonCritical == 'null' and 'na' or sensor.LowerNonCritical,
        sensor.UpperNonCritical == 'null' and 'na' or sensor.UpperNonCritical,
        sensor.UpperCritical == 'null' and 'na' or sensor.UpperCritical,
        sensor.UpperFatal == 'null' and 'na' or sensor.UpperFatal,
        sensor.PosHysteresis == 'null' and 'na' or sensor.PosHysteresis,
        sensor.NegHysteresis == 'null' and 'na' or sensor.NegHysteresis
    )
    echo(line)
end
%}