simpler interface: just return a boolean