anchor.diff:      if (this == double.infinity) return "Infinity";
       if (this == -double.infinity) return "-Infinity";
   
  -    return _toStringAsPrecision(precision);
  +    String result = _toStringAsPrecision(precision);
  +    if (this == 0 && isNegative) return '-$result';
  +    return result;
     }
   
     String _toStringAsPrecision(int fractionDigits) =>
  
positive.code: 
      // Step 4.
      if (isNaN) return "NaN";
  
      // Step 5 and 6 skipped. Will be dealt with by native function.
  
  
negative.code:     if (this == double.infinity) return "Infinity";
      if (this == -double.infinity) return "-Infinity";
  
      String result = _toStringAsExponential(fractionDigits);
      if (this == 0 && isNegative) return '-$result';
      return result;
    }
  
    String _toStringAsExponential(int? fractionDigits) {
  