Bit = {}
function Bit.bit(p)
return 2 ^ p
end
function Bit.hasBit(x, p)
return x % (p + p) >= p
function Bit.setbit(x, p)
return Bit.hasBit(x, p) and x or x + p
function Bit.clearbit(x, p)
return Bit.hasBit(x, p) and x - p or x