replaced dumb works with util.abort