improve error gen