clean use of systemExit