function bnCompareTo(a) {
  var this_array = this.array;
  var a_array = a.array;

  var r = this.s-a.s;
  if(r != 0) return r;
  var i = this.t;
  r = i-a.t;
  if(r != 0) return r;
  while(--i >= 0) if((r=this_array[i]-a_array[i]) != 0) return r;
  return 0;
}
function bnCompareTo(a) {
  var this_array = this.array;
  var a_array = a.array;

  var r = this.s-a.s;
  if(r != 0) return r;
  var i = this.t;
  r = i-a.t;
  if(r != 0) return r;
  while(--i >= 0) if((r=this_array[i]-a_array[i]) != 0) return r;
  return 0;
}
function bnCompareTo ( a ) { var this_array = this . array ; var a_array = a . array ; var r = this . s - a . s ; if ( r != 0 ) return r ; var i = this . t ; r = i - a . t ; if ( r != 0 ) return r ; while ( -- i >= 0 ) if ( ( r = this_array [ i ] - a_array [ i ] ) != 0 ) return r ; return 0 ; }
(public) return + if this > a, - if this < a, 0 if equal
( public ) return + if this > a - if this < a 0 if equal