BITWISE
x & y
// AND
x | y
// OR
~x
// NOT
x ^ y
// XOR
x << NumBitShifted
// shifts bits to the left - equiverlent to x * 2^n
x >> NumBitShifted
// shifts bits to the right - equiverlent to x / 2^n
x & y
// AND
x | y
// OR
~x
// NOT
x ^ y
// XOR
x << NumBitShifted
// shifts bits to the left - equiverlent to x * 2^n
x >> NumBitShifted
// shifts bits to the right - equiverlent to x / 2^n