The priority of `==` is highter than `and`, therefore "`a and b == 0`" means "`(a) and (b == 0)`" while `(a and b) == 0` does what you expect.
- confusing behavior do to overloading of and for binary and,... solomonthewise
- confusing behavior do to overloading of and for binary... sls1005