ensure on/off only work in output mode