code: function bnpBitwiseTo(a,op,r) {
  var i, f, m = Math.min(a.t,this.t);
  for(i = 0; i < m; ++i) r.data[i] = op(this.data[i],a.data[i]);
  if(a.t < this.t) {
   f = a.s&this.DM;
   for(i = m; i < this.t; ++i) r.data[i] = op(this.data[i],f);
   r.t = this.t;
  } else {
   f = this.s&this.DM;
   for(i = m; i < a.t; ++i) r.data[i] = op(f,a.data[i]);
   r.t = a.t;
  }
  r.s = op(this.s,a.s);
  r.clamp();
  }
docs: (protected) r = this op a (bitwise)