don't expose err