better error assumptions