short-circuiting: and added; combination with if needs work