more general fail behaviour