implemented suspend_level() and resume_level()