use error() and not os.exit()