anchor.diff:  interface
   
   uses
  -  db, Graphics, variants, math, Classes,
  +  db, Graphics, variants, Classes,
     mUtility, mMathUtility, mFloatsManagement;
   
   type
  
positive.code:   TNullableDouble = class (TAbstractNullable)
    private
      FValue: Double;
      FDigits: byte;
      function GetValue : Double;
      procedure SetDigits(AValue: byte);
      procedure SetValue (AValue : Double);
    public
      constructor Create(); override; overload;
  
negative.code:   Result := FValue;
  end;
  
  procedure TNullableDouble.SetDisplayFormat(AValue: String);
  begin
    if FDisplayFormat=AValue then Exit;
    FDisplayFormat:=AValue;
  end;
  
  procedure TNullableDouble.SetFractionalPartDigits(AValue: byte);
  begin
    if FFractionalPartDigits=AValue then Exit;
    FFractionalPartDigits:=AValue;
    if Self.NotNull then
      Self.SetValue(FValue);
  end;
  
  procedure TNullableDouble.SetValue(AValue: Double);
  begin
    if FFractionalPartDigits > 0 then
      FValue:= RoundToExt(AValue, FRoundingMethod, FFractionalPartDigits)
    else
      FValue:= aValue;
    FIsNull := false;
  