old_contents: Elm.Native.Bitwise = {};
  Elm.Native.Bitwise.make = function(elm) {
      elm.Native = elm.Native || {};
      elm.Native.Bitwise = elm.Native.Bitwise || {};
      if (elm.Native.Bitwise.values) return elm.Native.Bitwise.values;
  
      function and(a,b) { return a & b; }
      function or (a,b) { return a | b; }
      function xor(a,b) { return a ^ b; }
      function not(a) { return ~a; }
      function sll(a,offset) { return a << offset; }
      function sra(a,offset) { return a >> offset; }
      function srl(a,offset) { return a >>> offset; }
  
      return elm.Native.Bitwise.values = {
          and: A2(and),
          or : A2(or ),
          xor: A2(xor),
          complement: not,
          shiftLeft           : A2(sll),
          shiftRightArithmatic: A2(sra),
          shiftRightLogical   : A2(srl),
      };
      
  };
  
new_contents: Elm.Native.Bitwise = {};
  Elm.Native.Bitwise.make = function(elm) {
      elm.Native = elm.Native || {};
      elm.Native.Bitwise = elm.Native.Bitwise || {};
      if (elm.Native.Bitwise.values) return elm.Native.Bitwise.values;
  
      function and(a,b) { return a & b; }
      function or (a,b) { return a | b; }
      function xor(a,b) { return a ^ b; }
      function not(a) { return ~a; }
      function sll(a,offset) { return a << offset; }
      function sra(a,offset) { return a >> offset; }
      function srl(a,offset) { return a >>> offset; }
  
      return elm.Native.Bitwise.values = {
          and: F2(and),
          or : F2(or ),
          xor: F2(xor),
          complement: not,
          shiftLeft           : F2(sll),
          shiftRightArithmatic: F2(sra),
          shiftRightLogical   : F2(srl),
      };
      
  };
  
subject: Fix stupid error in Bitwise library