We continue exploring if() statements by looking at the “not” (!) operator, which lets us invert evaluations, operators, and operands in order to check for false values. We also look at adding complexity within conditional evaluations by using the binary “and” (&&) and “or” (||) operators. And, finally, we see how the “not” operator can be used as a unary operator on bools themselves to flip their values.