explicitly require true or false return values for `Year.leap?`