dont use sys.exit(1)