anchor.diff:  //  Multiplication is the easiest: multiply the unscaled values and add the scales.  //
   //                                                                                   //
   ///////////////////////////////////////////////////////////////////////////////////////
  -///
  +
   class function BigDecimal.Multiply(const Left, Right: BigDecimal): BigDecimal;
   begin
     Result.Init;
  
positive.code: var
    NewScale: Integer;
  begin
    NewScale := Scale + Digits;
    if NewScale > MaxScale then
      Error(ecUnderflow, []);
    Result := BigDecimal.Create(FValue, NewScale);
    if Result.FScale < 0 then
      Result.FScale := 0;
  
negative.code: var
    NewScale: Integer;
  begin
    NewScale := RangeCheckedScale(Scale - Digits);
    Result := BigDecimal.Create(FValue, NewScale);
    if Result.FScale < 0 then
      Result.FScale := 0;
  