thought val would be nice here; the definition site of this is an abstract def