anchor.diff:    obj: TObject;
     AValue, lEnumerator: TValue;
     bCreated: Boolean;
  -  lEnumMethod, lClearMethod, lGetEnumMethod, lGetCurrentMethod: TRttiMethod;
  +  lEnumMethod, lClearMethod: TRttiMethod;
     AParams: TArray<TRttiParameter>;
  -  lEnumType: TRttiType;
  -  lCurrentProp: TRttiProperty;
   begin
     bCreated := False;
     AValue := TValue.Empty;
  
positive.code: 
          if Assigned(AJsonVal) and (AJsonVal is TJSONObject) then
          begin
            FMainObj := TJSONObject(AJsonVal);
          end;
        end;
        
  
negative.code:             else
              begin
                SetLength(arrVal, AJsonArray.Size);
  
                for i := 0 to Length(arrVal)-1 do
                begin
  