updated to use system monitor without psutil