can use some sorting of the definitions in this trait. e.g. group `isFoo` together.