code: function negate() {
    var set;
    if (negate.arguments.length == 1)
     {
      set = negate.arguments[0];
     }
    else if (negate.arguments.length == 0)
     {
      set = this.plainMC;
     }
    else
     {
      throw "negate(): " + negate.arguments.length + " arguments given; expected 0 or 1";
     }
    //--com.ibm.icu.math.BigDecimal res;
    var res;
    // Originally called minus(), changed to matched Java precedents
    // This simply clones, flips the sign, and possibly rounds
    if (set.lostDigits)
     this.checkdigits(null,set.digits);
    res=this.clone(this); // safe copy
    res.ind=-res.ind;
    return res.finish(set,false);
    }
docs: Returns a <code>BigDecimal</code> whose value is <code>-this</code>.
  <p>
  Implements the negation (Prefix <b><code>-</code></b>) operator
  (as defined in the decimal documentation, see {@link BigDecimal
  class header}),
  and returns the result as a <code>BigDecimal</code> object.
  
  @param  set The <code>MathContext</code> arithmetic settings.
  @return A <code>BigDecimal</code> whose value is
  <code>-this</code>.
  @stable ICU 2.0
   public com.ibm.icu.math.BigDecimal negate(com.ibm.icu.math.MathContext set){