DO not call Sys.exit