use error, not string