allow subclasses to override 404 behavior