Another problem here in the boolean case. If you want to put a condition on x alone, y is blocked as well. So the boolean should be for either / or x __or__ y, not x __and__ y