# HG changeset patch # User galaxyp # Date 1630222221 0 # Node ID 23d0394b59082f1ef47ab2566921a323ae0941d7 # Parent 5a35e3a8d0138cf167b79b9305ab348bb1ca5743 "planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/cardinal commit c8d3adac445b4e08e2724e22d7201bfc38bbf40f" diff -r 5a35e3a8d013 -r 23d0394b5908 macros.xml --- a/macros.xml Wed Dec 23 22:36:04 2020 +0000 +++ b/macros.xml Sun Aug 29 07:30:21 2021 +0000 @@ -1,5 +1,5 @@ - 2.6.0 + 2.10.0 diff -r 5a35e3a8d013 -r 23d0394b5908 quality_report.xml --- a/quality_report.xml Wed Dec 23 22:36:04 2020 +0000 +++ b/quality_report.xml Sun Aug 29 07:30:21 2021 +0000 @@ -1,4 +1,4 @@ - + mass spectrometry imaging QC @@ -7,9 +7,9 @@ r-gridextra - r-ggplot2 + r-ggplot2 r-rcolorbrewer - r-kernsmooth + r-kernsmooth r-scales r-pheatmap @@ -359,24 +359,29 @@ #end if #################### 4) m/z heatmaps ####################################### - par(mfrow=c(1,1), mar=c(5.1, 4.1, 4.1, 2.1), mgp=c(3, 1, 0), las=0) - if (length(inputcalibrants[,1]) != 0){ - for (mass in 1:length(inputcalibrants[,1])){ - par(oma=c(0,0,0,1))## margin for image legend + + #if $report_depth: + + par(mfrow=c(1,1), mar=c(5.1, 4.1, 4.1, 2.1), mgp=c(3, 1, 0), las=0) + if (length(inputcalibrants[,1]) != 0){ + for (mass in 1:length(inputcalibrants[,1])){ + par(oma=c(0,0,0,1))## margin for image legend - tryCatch( - { - print(image(msidata, mz=inputcalibrants[,1][mass], plusminus=plusminusvalues[mass], - main= paste0(inputcalibrants[,2][mass], ": ", round(inputcalibrants[,1][mass], digits = 2)," (±",$plusminus_ppm, " ppm)"), - contrast.enhance = "histogram", strip=FALSE, ylim= c(maximumy,minimumy))) - }, - error=function(cond) { - ## if there are not enough intensities in the mz range skip creating an image - print(paste0("Not enough intensities > 0 for m/z ", inputcalibrants[,1][mass])) - } - ) - } - } else {print("4) The input peptide and calibrant m/z were not provided or outside the m/z range")} + tryCatch( + { + print(image(msidata, mz=inputcalibrants[,1][mass], plusminus=plusminusvalues[mass], + main= paste0(inputcalibrants[,2][mass], ": ", round(inputcalibrants[,1][mass], digits = 2)," (±",$plusminus_ppm, " ppm)"), + contrast.enhance = "histogram", strip=FALSE, ylim= c(maximumy,minimumy))) + }, + error=function(cond) { + ## if there are not enough intensities in the mz range skip creating an image + print(paste0("Not enough intensities > 0 for m/z ", inputcalibrants[,1][mass])) + } + ) + } + } else {print("4) The input peptide and calibrant m/z were not provided or outside the m/z range")} + + #end if #################### 5) Number of peaks per pixel - image ################## @@ -419,72 +424,75 @@ ############################### 6b) median int image ############################### - median_int = pixelApply(msidata, median, na.rm=TRUE) + #if $report_depth: + + median_int = pixelApply(msidata, median, na.rm=TRUE) - median_coordarray=data.frame(coord(msidata)\$x, coord(msidata)\$y, median_int) - colnames(median_coordarray) = c("x", "y", "median_int") - print(ggplot(median_coordarray, aes(x=x, y=y, fill=median_int))+ - geom_tile() + coord_fixed() + - ggtitle("Median intensity per spectrum")+ - theme_bw() + - theme(plot.title = element_text(hjust = 0.5))+ - theme(text=element_text(family="ArialMT", face="bold", size=12))+ - scale_fill_gradientn(colours = c("blue", "purple" , "red","orange") - ,space = "Lab", na.value = "black", name = "median\nintensity")) + median_coordarray=data.frame(coord(msidata)\$x, coord(msidata)\$y, median_int) + colnames(median_coordarray) = c("x", "y", "median_int") + print(ggplot(median_coordarray, aes(x=x, y=y, fill=median_int))+ + geom_tile() + coord_fixed() + + ggtitle("Median intensity per spectrum")+ + theme_bw() + + theme(plot.title = element_text(hjust = 0.5))+ + theme(text=element_text(family="ArialMT", face="bold", size=12))+ + scale_fill_gradientn(colours = c("blue", "purple" , "red","orange") + ,space = "Lab", na.value = "black", name = "median\nintensity")) - ## remove median_coordarray to clean up RAM space - rm(median_coordarray) - gc() + ## remove median_coordarray to clean up RAM space + rm(median_coordarray) + gc() - ############################### 6c) max int image ############################### - - max_int = pixelApply(msidata, max, na.rm=TRUE) + ############################### 6c) max int image ############################### + + max_int = pixelApply(msidata, max, na.rm=TRUE) - max_coordarray=data.frame(coord(msidata)\$x, coord(msidata)\$y, max_int) - colnames(max_coordarray) = c("x", "y", "max_int") - print(ggplot(max_coordarray, aes(x=x, y=y, fill=max_int))+ - geom_tile() + coord_fixed() + - ggtitle("Maximum intensity per spectrum")+ - theme_bw() + - theme(plot.title = element_text(hjust = 0.5))+ - theme(text=element_text(family="ArialMT", face="bold", size=12))+ - scale_fill_gradientn(colours = c("blue", "purple" , "red","orange") - ,space = "Lab", na.value = "black", name = "max\nintensity")) + max_coordarray=data.frame(coord(msidata)\$x, coord(msidata)\$y, max_int) + colnames(max_coordarray) = c("x", "y", "max_int") + print(ggplot(max_coordarray, aes(x=x, y=y, fill=max_int))+ + geom_tile() + coord_fixed() + + ggtitle("Maximum intensity per spectrum")+ + theme_bw() + + theme(plot.title = element_text(hjust = 0.5))+ + theme(text=element_text(family="ArialMT", face="bold", size=12))+ + scale_fill_gradientn(colours = c("blue", "purple" , "red","orange") + ,space = "Lab", na.value = "black", name = "max\nintensity")) - ## remove median_coordarray to clean up RAM space - rm(max_coordarray) - gc() + ## remove median_coordarray to clean up RAM space + rm(max_coordarray) + gc() + + ############################### 7) Most abundant m/z image ################# + + ## for each spectrum find the row (m/z) with the highest intensity + highestmz = pixelApply(msidata, which.max) - ############################### 7) Most abundant m/z image ################# - - ## for each spectrum find the row (m/z) with the highest intensity - highestmz = pixelApply(msidata, which.max) + ## in case for some spectra max returns integer(0), highestmz is a list and integer(0) have to be replaced with NA and unlisted + if (class(highestmz) == "list"){ + ##find zero-length values + zero_entry <- !(sapply(highestmz, length)) + ### replace these values with NA + highestmz[zero_entry] <- NA + ### unlist list to get a vector + highestmz = unlist(highestmz)} - ## in case for some spectra max returns integer(0), highestmz is a list and integer(0) have to be replaced with NA and unlisted - if (class(highestmz) == "list"){ - ##find zero-length values - zero_entry <- !(sapply(highestmz, length)) - ### replace these values with NA - highestmz[zero_entry] <- NA - ### unlist list to get a vector - highestmz = unlist(highestmz)} - - highestmz_matrix = data.frame(coord(msidata)\$x, coord(msidata)\$y,mz(msidata)[highestmz]) - colnames(highestmz_matrix) = c("x", "y", "highestmzinDa") + highestmz_matrix = data.frame(coord(msidata)\$x, coord(msidata)\$y,mz(msidata)[highestmz]) + colnames(highestmz_matrix) = c("x", "y", "highestmzinDa") - print(ggplot(highestmz_matrix, aes(x=x, y=y, fill=highestmzinDa))+ - geom_tile() + coord_fixed() + - ggtitle("Most abundant m/z in each spectrum")+ - theme_bw() + - theme(plot.title = element_text(hjust = 0.5))+ - scale_fill_gradientn(colours = c("blue", "purple" , "red","orange"), space = "Lab", na.value = "black", name = "m/z", - limits=c(min(highestmz_matrix\$highestmzinDa), max(highestmz_matrix\$highestmzinDa)))+ - theme(text=element_text(family="ArialMT", face="bold", size=12))) + print(ggplot(highestmz_matrix, aes(x=x, y=y, fill=highestmzinDa))+ + geom_tile() + coord_fixed() + + ggtitle("Most abundant m/z in each spectrum")+ + theme_bw() + + theme(plot.title = element_text(hjust = 0.5))+ + scale_fill_gradientn(colours = c("blue", "purple" , "red","orange"), space = "Lab", na.value = "black", name = "m/z", + limits=c(min(highestmz_matrix\$highestmzinDa), max(highestmz_matrix\$highestmzinDa)))+ + theme(text=element_text(family="ArialMT", face="bold", size=12))) - ## remove highestmz_matrix to clean up RAM space - rm(highestmz_matrix) - gc() + ## remove highestmz_matrix to clean up RAM space + rm(highestmz_matrix) + gc() + #end if ########################## 8) optional pca image for two components ################# @@ -513,38 +521,44 @@ ########################## 9) number of peaks per spectrum ################# ## 9a) scatterplot + + #if $report_depth: - plot_colorByDensity(pixels(msidata), peaksperpixel, ylab = "", xlab = "", main="Number of peaks per spectrum") - title(xlab="Spectra index", line=3) - title(ylab="Number of peaks", line=4) + plot_colorByDensity(pixels(msidata), peaksperpixel, ylab = "", xlab = "", main="Number of peaks per spectrum") + title(xlab="Spectra index", line=3) + title(ylab="Number of peaks", line=4) - if (!is.null(unique(msidata\$annotation))){ - abline(v=abline_vector, lty = 3)} - - ## 9b) histogram + if (!is.null(unique(msidata\$annotation))){ + abline(v=abline_vector, lty = 3)} + + ## 9b) histogram + - hist(peaksperpixel, main="", las=1, xlab = "Number of peaks per spectrum", ylab="") - title(main="Number of peaks per spectrum", line=2) - title(ylab="Frequency = # spectra", line=4) - abline(v=median(peaksperpixel), col="blue") + + hist(peaksperpixel, main="", las=1, xlab = "Number of peaks per spectrum", ylab="") + title(main="Number of peaks per spectrum", line=2) + title(ylab="Frequency = # spectra", line=4) + abline(v=median(peaksperpixel), col="blue") - ## 9c) additional histogram to show contribution of annotation groups + ## 9c) additional histogram to show contribution of annotation groups - if (!is.null(unique(msidata\$annotation))){ + if (!is.null(unique(msidata\$annotation))){ - df_9 = data.frame(peaksperpixel, msidata\$annotation) - colnames(df_9) = c("Npeaks", "annotation") - - hist_9 = ggplot(df_9, aes(x=Npeaks, fill=annotation)) + - geom_histogram()+ theme_bw()+ - theme(text=element_text(family="ArialMT", face="bold", size=12))+ - theme(plot.title = element_text(hjust = 0.5))+ - theme(legend.key.size = unit(0.2, "line"), legend.text = element_text(size = 8))+ - theme(legend.position="bottom",legend.direction="vertical")+ - labs(title="Number of peaks per spectrum and annotation group", x="Number of peaks per spectrum", y = "Frequency = # spectra") + - guides(fill=guide_legend(ncol=5,byrow=TRUE))+ - geom_vline(xintercept = median(peaksperpixel), size = 1, colour = "black",linetype = "dashed") - print(hist_9)} + df_9 = data.frame(peaksperpixel, msidata\$annotation) + colnames(df_9) = c("Npeaks", "annotation") + + hist_9 = ggplot(df_9, aes(x=Npeaks, fill=annotation)) + + geom_histogram()+ theme_bw()+ + theme(text=element_text(family="ArialMT", face="bold", size=12))+ + theme(plot.title = element_text(hjust = 0.5))+ + theme(legend.key.size = unit(0.2, "line"), legend.text = element_text(size = 8))+ + theme(legend.position="bottom",legend.direction="vertical")+ + labs(title="Number of peaks per spectrum and annotation group", x="Number of peaks per spectrum", y = "Frequency = # spectra") + + guides(fill=guide_legend(ncol=5,byrow=TRUE))+ + geom_vline(xintercept = median(peaksperpixel), size = 1, colour = "black",linetype = "dashed") + print(hist_9)} + + #end if ########################## 10) TIC per spectrum ########################### @@ -596,61 +610,64 @@ ########################## 12) Number of peaks per m/z ##################### - peakspermz = rowSums(spectra(msidata) > 0, na.rm=TRUE) + #if $report_depth: + + peakspermz = rowSums(spectra(msidata) > 0, na.rm=TRUE) - par(mfrow = c(2,1), mar=c(5,6,4,4.5)) - ## 12a) scatterplot - plot_colorByDensity(mz(msidata),peakspermz, main= "Number of peaks per m/z", ylab ="") - title(xlab="m/z", line=2.5) - title(ylab = "Number of peaks", line=4) - axis(4, at=pretty(peakspermz),labels=as.character(round((pretty(peakspermz)/pixelcount*100), digits=1)), las=1) - mtext("Coverage of spectra [%]", 4, line=3, adj=1) + par(mfrow = c(2,1), mar=c(5,6,4,4.5)) + ## 12a) scatterplot + plot_colorByDensity(mz(msidata),peakspermz, main= "Number of peaks per m/z", ylab ="") + title(xlab="m/z", line=2.5) + title(ylab = "Number of peaks", line=4) + axis(4, at=pretty(peakspermz),labels=as.character(round((pretty(peakspermz)/pixelcount*100), digits=1)), las=1) + mtext("Coverage of spectra [%]", 4, line=3, adj=1) - ## 12b) histogram - hist(peakspermz, main="", las=1, ylab="", xlab="") - title(ylab = "Frequency", line=4) - title(main="Number of peaks per m/z", xlab = "Number of peaks per m/z", line=2) - abline(v=median(peakspermz), col="blue") + ## 12b) histogram + hist(peakspermz, main="", las=1, ylab="", xlab="") + title(ylab = "Frequency", line=4) + title(main="Number of peaks per m/z", xlab = "Number of peaks per m/z", line=2) + abline(v=median(peakspermz), col="blue") - ########################## 13) Sum of intensities per m/z ################## + ########################## 13) Sum of intensities per m/z ################## - ## Sum of all intensities for each m/z (like TIC, but for m/z instead of pixel) - mzTIC = featureApply(msidata, sum, na.rm=TRUE) ## calculate intensity sum for each m/z + ## Sum of all intensities for each m/z (like TIC, but for m/z instead of pixel) + mzTIC = featureApply(msidata, sum, na.rm=TRUE) ## calculate intensity sum for each m/z - par(mfrow = c(2,1), mar=c(5,6,4,2)) - ## 13a) scatterplot - plot_colorByDensity(mz(msidata),mzTIC, main= "Sum of intensities per m/z", ylab ="") - title(xlab="m/z", line=2.5) - title(ylab="Intensity sum", line=4) + par(mfrow = c(2,1), mar=c(5,6,4,2)) + ## 13a) scatterplot + plot_colorByDensity(mz(msidata),mzTIC, main= "Sum of intensities per m/z", ylab ="") + title(xlab="m/z", line=2.5) + title(ylab="Intensity sum", line=4) - ## 13b) histogram - hist(mzTIC, main="", xlab = "", las=1, ylab="") - title(main="Sum of intensities per m/z", line=2, ylab="") - title(xlab = "sum of intensities per m/z") - title(ylab = "Frequency", line=4) - abline(v=median(mzTIC[mzTIC>0]), col="blue") + ## 13b) histogram + hist(mzTIC, main="", xlab = "", las=1, ylab="") + title(main="Sum of intensities per m/z", line=2, ylab="") + title(xlab = "sum of intensities per m/z") + title(ylab = "Frequency", line=4) + abline(v=median(mzTIC[mzTIC>0]), col="blue") - ################################## V) intensity plots ######################## - ############################################################################ - print("intensity plots") - ########################## 14) Intensity distribution ###################### + ################################## V) intensity plots ######################## + ############################################################################ + print("intensity plots") + ########################## 14) Intensity distribution ###################### - par(mfrow = c(2,1), mar=c(5,6,4,2)) + par(mfrow = c(2,1), mar=c(5,6,4,2)) - ## 14a) Median intensity over spectra - medianint_spectra = pixelApply(msidata, median, na.rm=TRUE) - plot(medianint_spectra, main="Median intensity per spectrum",las=1, xlab="Spectra index", ylab="") - title(ylab="Median spectrum intensity", line=4) - if (!is.null(unique(msidata\$annotation))){ - abline(v=abline_vector, lty = 3)} + ## 14a) Median intensity over spectra + medianint_spectra = pixelApply(msidata, median, na.rm=TRUE) + plot(medianint_spectra, main="Median intensity per spectrum",las=1, xlab="Spectra index", ylab="") + title(ylab="Median spectrum intensity", line=4) + if (!is.null(unique(msidata\$annotation))){ + abline(v=abline_vector, lty = 3)} - ## 14b) histogram: - hist(int_matrix, main="", xlab = "", ylab="", las=1) - title(main="Intensity histogram", line=2) - title(xlab="intensities") - title(ylab="Frequency", line=4) - abline(v=median(int_matrix)[(as.matrix(spectra(msidata))>0)], col="blue") + ## 14b) histogram: + hist(int_matrix, main="", xlab = "", ylab="", las=1) + title(main="Intensity histogram", line=2) + title(xlab="intensities") + title(ylab="Frequency", line=4) + abline(v=median(int_matrix)[(as.matrix(spectra(msidata))>0)], col="blue") + #end if ## 14c) histogram to show contribution of annotation groups @@ -719,36 +736,40 @@ ############################ 15) Mass spectra ############################## + ## replace any NA with 0, otherwise plot function will not work at all msidata_no_NA = msidata + + #if $report_depth: - ## find three equal m/z ranges for the average mass spectra plots: - third_mz_range = round(nrow(msidata_no_NA)/3,0) + ## find three equal m/z ranges for the average mass spectra plots: + third_mz_range = round(nrow(msidata_no_NA)/3,0) - par(cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) - print(plot(msidata_no_NA, run="infile", layout=c(2,2), strip=FALSE, main= "Average spectrum", col="black")) - print(plot(msidata_no_NA[1:third_mz_range,], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) - print(plot(msidata_no_NA[third_mz_range:(2*third_mz_range),], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) - print(plot(msidata_no_NA[(2*third_mz_range):nrow(msidata_no_NA),], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) + par(cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) + print(plot(msidata_no_NA, run="infile", layout=c(2,2), strip=FALSE, main= "Average spectrum", col="black")) + print(plot(msidata_no_NA[1:third_mz_range,], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) + print(plot(msidata_no_NA[third_mz_range:(2*third_mz_range),], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) + print(plot(msidata_no_NA[(2*third_mz_range):nrow(msidata_no_NA),], layout=FALSE, run="infile", strip=FALSE, main="Zoomed average spectrum", col="black")) - ## plot one average mass spectrum for each pixel annotation group + ## plot one average mass spectrum for each pixel annotation group - if (!is.null(unique(msidata\$annotation))){ - ## print legend only for less than 10 samples - if (length(unique(msidata\$annotation)) < 10){ - key_legend = TRUE - }else{key_legend = FALSE} - par(mfrow = c(1,1), cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) - print(plot(msidata, run="infile", pixel.groups=msidata\$annotation, key=key_legend, col=hue_pal()(length(unique(msidata\$annotation))),superpose=TRUE, main="Average mass spectra for annotation groups")) - } + if (!is.null(unique(msidata\$annotation))){ + ## print legend only for less than 10 samples + if (length(unique(msidata\$annotation)) < 10){ + key_legend = TRUE + }else{key_legend = FALSE} + par(mfrow = c(1,1), cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) + print(plot(msidata, run="infile", pixel.groups=msidata\$annotation, key=key_legend, col=hue_pal()(length(unique(msidata\$annotation))),superpose=TRUE, main="Average mass spectra for annotation groups")) + } - ## plot 4 random mass spectra - ## find four random, not empty pixel to plot their spectra in the following plots: - pixel_vector = sample(which(TICs != 0),4) + ## plot 4 random mass spectra + ## find four random, not empty pixel to plot their spectra in the following plots: + pixel_vector = sample(which(TICs != 0),4) - par(mfrow = c(2, 2), cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) - print(plot(msidata_no_NA, pixel = pixel_vector, col="black")) + par(mfrow = c(2, 2), cex.axis=1, cex.lab=1, mar=c(5.1,4.1,4.1,2.1)) + print(plot(msidata_no_NA, pixel = pixel_vector, col="black")) + #end if ################### 16) Zoomed in mass spectra for calibrants ############## @@ -848,6 +869,8 @@ ######### 17) ppm difference input calibrant m/z and m/z with max intensity in given m/z range######### + #if $report_depth: + par(mfrow = c(1,1)) ### plot the ppm difference calculated above: theor. m/z value to highest m/z value: @@ -885,6 +908,8 @@ theme(axis.text.x = element_text(angle = 90, hjust = 1, size=14)) print(diff_plot2) + + #end if #################### 19) ppm difference over pixels ##################### @@ -934,6 +959,7 @@ ### make x-y-images for mz accuracy + #if $report_depth: ppm_dataframe = data.frame(coord(msidata)\$x, coord(msidata)\$y, ppm_df) colnames(ppm_dataframe) = c("x", "y", "ppm_df") @@ -950,6 +976,7 @@ theme(text=element_text(family="ArialMT", face="bold", size=12))+ scale_fill_gradient2(low = "navy", mid = "grey", high = "red", midpoint = 0 ,space = "Lab", na.value = "black", name = "ppm\nerror"))} + #end if }else{print("plot 16+17+18+19) The inputcalibrant m/z were not provided or outside the m/z range")} }else{ @@ -976,6 +1003,7 @@ + @@ -1021,7 +1049,6 @@ - @@ -1031,7 +1058,6 @@ - @@ -1062,6 +1088,25 @@ + + + + + + + + + + + + + + + + + + + - - + + @@ -42,7 +42,7 @@ - + diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/preprocessing_results4.imzml.txt --- a/test-data/preprocessing_results4.imzml.txt Wed Dec 23 22:36:04 2020 +0000 +++ b/test-data/preprocessing_results4.imzml.txt Sun Aug 29 07:30:21 2021 +0000 @@ -1,4 +1,4 @@ imzML file: total 84 --rw-rw-r-- 1 meli meli 62696 Oct 5 19:58 ibd --rw-rw-r-- 1 meli meli 18199 Oct 5 19:58 imzml +-rw-rw-r-- 1 meli meli 62696 Aug 28 16:41 ibd +-rw-rw-r-- 1 meli meli 18200 Aug 28 16:41 imzml diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/preprocessing_results4.pdf Binary file test-data/preprocessing_results4.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test1.pdf Binary file test-data/test1.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test2.pdf Binary file test-data/test2.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test3.pdf Binary file test-data/test3.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test4.pdf Binary file test-data/test4.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test5.pdf Binary file test-data/test5.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test6.pdf Binary file test-data/test6.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test6.rdata Binary file test-data/test6.rdata has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test7.pdf Binary file test-data/test7.pdf has changed diff -r 5a35e3a8d013 -r 23d0394b5908 test-data/test7.rdata Binary file test-data/test7.rdata has changed