DEFINITIONS
   // A library of Bit Manipulation functions
   BNOT(x) == x;
   EXTERNAL_FUNCTION_BNOT == INTEGER --> INTEGER;
   BAND(x,y) == x;
   EXTERNAL_FUNCTION_BAND == INTEGER * INTEGER --> INTEGER;
   BOR(x,y) == x;
   EXTERNAL_FUNCTION_BOR == INTEGER * INTEGER --> INTEGER;
   BXOR(x,y) == x;
   EXTERNAL_FUNCTION_BXOR == INTEGER * INTEGER --> INTEGER;
   BLSHIFT(x,y) == x; // example BLSHIFT(16,2) = 64
   EXTERNAL_FUNCTION_BLSHIFT == INTEGER * INTEGER --> INTEGER;
   BRSHIFT(x,y) == x; // example BRSHIFT(16,2) = 4
   EXTERNAL_FUNCTION_BRSHIFT == INTEGER * INTEGER --> INTEGER;
