wrap errors with eval
return empty hash