boolean logic is hard... apparently