anchor.diff:  function AppVariant(const Value: string): TAppVariant;
   begin
     FillChar(Result, SizeOf(Result), 0);
  -  if Length(Value)>SizeOf(Result.Str)-1 then
  -    raise Exception.Create('Too long str in AppVariant');
     Result.Typ:= avrStr;
     Result.Str:= Value;
   end;
  
positive.code:     );
  
    TAppVariantItem = record
      KeyName: string[15];
      case Typ: TAppVariantItemTypeId of
        avdBool: (Bool: boolean);
        avdInt: (Int: Int64);
        avdRect: (Rect: TRect);
        avdStr: (Str: string[10]);
    end;
  
    TAppVariant = record
      case Typ: TAppVariantTypeId of
        avrBool: (Bool: boolean);
        avrInt: (Int: Int64);
        avrStr: (Str: string[100]);
        avrDict: (Len: integer; Items: array[0..6] of TAppVariantItem);
    end;
  
    TAppVariantArray = array of TAppVariant;
  
negative.code: const
    AppVariantNil: TAppVariant = (
      Typ: avrNil;
      Str: '';
      Int: 0
      );
  
  