boilerplate stuff, reverse boolean tests