anchor.diff:  
           if Assigned(AJsonVal) and (AJsonVal is TJSONObject) then
           begin
  -          FMainObj := TJSONObject(AJsonVal);
  +          FMainObj := TJSONObject(AJsonVal);          
           end;
         end;
         
  
positive.code: 
                  {TODO -oLinas -cGeneral : fix arguments}
                  //AParams[0].ParamType.AsInstance.
                {  if Assigned(lCurrentProp) then
                  begin
                    if lCurrentProp.PropertyType.IsInstance then
                    begin
                      lEnumerator := TSvSerializer.CreateType(lCurrentProp.PropertyType.Handle);
                      Result := SetValue(AJsonValue, lEnumerator, lCurrentProp, lCurrentProp.PropertyType, ASkip);
                    end;
                  //  AValue := SetValue(AJsonValue, AValue, lCurrentProp, lCurrentProp.PropertyType, ASkip);
                  end;}
  
               //   arrVal[i] := Result;
                  arrVal[i] := SetValue(AJsonValue, AObj, nil, AParams[0].ParamType, ASkip);
  
  
  
negative.code:             else
              begin
                SetLength(arrVal, AJsonArray.Size);
  
                for i := 0 to Length(arrVal)-1 do
                begin
  