even more easily diffable
properly deal with undefined errors