Just a little aside: the symbol "^" (carriage or stroke symbol) has a different meaning when used as a binary operator:
a ^ b
means XOR b. XOR (aka exclusive OR) is a binary arithmetic operation in which the result has 1 at any bit position, where either a or b has 1, but not both.
Matt gallagher
source share