anchor.diff:    FIsNull := False;
   end;
   
  -
  -class function TNullableUnicodeString.CreateNew(aValue: UnicodeString): TNullableUnicodeString;
  -var
  -  tmp : TNullableUnicodeString;
  -begin
  -  tmp := TNullableUnicodeString.Create();
  -  tmp.Value := aValue;
  -  Result := tmp;
  -end;
  -
  -class function TNullableUnicodeString.CreateNew: TNullableUnicodeString;
  -begin
  -  Result := TNullableUnicodeString.Create();
  +constructor TNullableUnicodeString.Create;
  +begin
  +  inherited Create;
  +end;
  +
  +constructor TNullableUnicodeString.Create(aValue: UnicodeString);
  +begin
  +  inherited Create;
  +  FValue := aValue;
   end;
   
   procedure TNullableUnicodeString.Assign(aSource: TNullableUnicodeString);
  
positive.code:       function GetValue: UnicodeString;
        procedure SetValue(AValue: UnicodeString);
      public
        class function CreateNew(aValue: UnicodeString): TNullableUnicodeString; overload;
        class function CreateNew(): TNullableUnicodeString; overload;
  
        procedure Assign(aSource : TNullableUnicodeString); overload;
        procedure Assign(aSourceField : TField); override; overload;
  
negative.code:   FIsNull := false;
  end;
  
  constructor TNullableBoolean.Create;
  begin
    inherited Create;
  end;
  
  constructor TNullableBoolean.Create(aValue: Boolean);
  begin
    inherited Create;
    FValue := aValue;
  end;
  
  procedure TNullableBoolean.Assign(aSource: TNullableBoolean);
  