changeset 12:4d5c06b46c2f draft default tip

Uploaded
author marie-tremblay-metatoul
date Thu, 10 Aug 2017 05:21:09 -0400
parents ed40bbda7959
children
files nmr_bucketing/.Rhistory nmr_bucketing/NmrBucketing_script.R nmr_bucketing/NmrBucketing_wrapper.R nmr_bucketing/NmrBucketing_xml.xml nmr_bucketing/README.rst nmr_bucketing/planemo_test.sh nmr_bucketing/test-data/MTBLS1_bucketedData.tabular nmr_bucketing/test-data/MTBLS1_variableMetadata.tabular
diffstat 7 files changed, 902 insertions(+), 325 deletions(-) [+]
line wrap: on
line diff
--- a/nmr_bucketing/NmrBucketing_script.R	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/NmrBucketing_script.R	Thu Aug 10 05:21:09 2017 -0400
@@ -251,8 +251,13 @@
   rownames(variableMetadata) <- rownames(bucketedSpectra)
   colnames(variableMetadata) <- "VariableOrder"
 
-
-  return(list(bucketedSpectra,sampleMetadata,variableMetadata,ppm)) # ,truncatedSpectrum_matrice
+  if (fileType=="zip")
+  {
+    return(list(bucketedSpectra,sampleMetadata,variableMetadata,ppm))
+  } else 
+  {
+    return(list(bucketedSpectra,variableMetadata,ppm))
+  }
 }
 
 
--- a/nmr_bucketing/NmrBucketing_wrapper.R	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/NmrBucketing_wrapper.R	Thu Aug 10 05:21:09 2017 -0400
@@ -39,7 +39,7 @@
 ## Libraries laoding
 ##------------------------------
 # For parseCommandArgs function
-library(batch) 
+library(batch)
 # For cumtrapz function
 library(pracma)
 
@@ -81,14 +81,7 @@
 	zipfile= argLs[["zipfile"]]
 	directory=unzip(zipfile, list=F)
 	directory=paste(getwd(),strsplit(directory[1],"/")[[1]][2],sep="/")
-} else if (!is.null(argLs[["library"]])){
-	fileType="zip"
-	directory=argLs[["library"]]
-    	if(!file.exists(directory)){
-		error_message=paste("Cannot access the directory :",directory,".Please verify if the directory exists or not.")
-		print(error_message)
-		stop(error_message)
-	}
+    sampleMetadataOut <- argLs[["sampleOut"]]
 } else if (!is.null(argLs[["tsvfile"]])){
 	fileType="tsv"
 	directory <- read.table(argLs[["tsvfile"]],check.names=FALSE,header=TRUE,sep="\t")
@@ -114,11 +107,19 @@
 nomGraphe <- argLs[["graphOut"]]
 dataMatrixOut <- argLs[["dataMatrixOut"]]
 logFile <- argLs[["logOut"]]
-if (fileType=="zip")
-{
-  sampleMetadataOut <- argLs[["sampleOut"]]
-  variableMetadataOut <- argLs[["variableOut"]]
+variableMetadataOut <- argLs[["variableOut"]]
+
+## Checking R packages
+##--------------------
+sink(logFile)
+cat("\t PACKAGE INFO \n")
+pkgs=c("batch","pracma")
+for(pkg in pkgs) {
+    suppressPackageStartupMessages( stopifnot( library(pkg, quietly=TRUE, logical.return=TRUE, character.only=TRUE)))
+    cat(pkg,"\t",as.character(packageVersion(pkg)),"\n",sep="")
 }
+cat("\n")
+
 
 ## Checking arguments
 ##-------------------
@@ -126,18 +127,25 @@
 
 if(length(error.stock) > 1)
   stop(error.stock)
-  
-  
+
+
 ## Computation
 ##------------
-outputs <- NmrBucketing(fileType=fileType, fileName=directory, leftBorder=leftBorder, rightBorder=rightBorder, bucketSize=bucketSize, 
-						exclusionZones=exclusionZones, exclusionZonesBorders=exclusionZonesBorders, graph=graphique, nomFichier=nomGraphe, 
+outputs <- NmrBucketing(fileType=fileType, fileName=directory, leftBorder=leftBorder, rightBorder=rightBorder, bucketSize=bucketSize,
+						exclusionZones=exclusionZones, exclusionZonesBorders=exclusionZonesBorders, graph=graphique, nomFichier=nomGraphe,
 						savLog.txtC=logFile)
 data_bucket <- outputs[[1]]
-data_sample <- outputs[[2]]
-data_variable <- outputs[[3]]
-ppm <- outputs[[4]]
-ppm <- round(ppm,2)
+if (fileType=="zip")
+{
+	data_sample <- outputs[[2]]
+	data_variable <- outputs[[3]]
+	ppm <- outputs[[4]]
+} else
+{	
+	data_variable <- outputs[[2]]
+	ppm <- outputs[[3]]
+}
+ppm <- round(ppm,1)
 
 ## Graphical outputs
 ##------------------
@@ -154,20 +162,33 @@
   
   # Graphic Device opening
   pdf(nomGraphe,onefile=TRUE)
-  
+  graphical.zone.length <- length(exclusionZonesBorders)  
   if (graphique == "Overlay")
   {
     # Global spectral window
     spectra <- data.frame(t(data_bucket))
     drawSpec(spectra,xlab="", ylab="Intensity", main="")
     
+    ## Zoomed spectral window depending on exclusion zone(s)
+    if (nbZones != 0)
+    {
+	  n <- length(excludedZone)
+	  drawSpec(spectra[,1:which(ppm == round(excludedZone[n],1))[1]],xlab="", ylab="spectra", main="")
 
+	  n <- n - 1
+	  while (n >= nbZones & nbZones > 1)
+	  {
+		drawSpec(spectra[,(which(ppm == round(excludedZone[n],1)[1])):(which(ppm == round(excludedZone[n-1],1)[1]))],xlab="", ylab="spectra", main="")
+		n <- n - 2
+	  }
+	  drawSpec(spectra[,(which(ppm == round(excludedZone[1])[1],1)):ncol(spectra)],xlab="", ylab="spectra", main="")
+    }
   }
   else
   {
     for (i in 1:ncol(data_bucket))
     {
-##       par(mfrow=c((nbZones+2),1))
+      par(mfrow=c((graphical.zone.length+2),1))
       n <- length(excludedZone)
       spectra <- t(data_bucket[,i])
 	  names(spectra) <- rownames(data_bucket)
@@ -181,10 +202,54 @@
 	  xPos = c(0:nAxisPos) * tempVal
 	  axis(1, at = xPos, labels = rownames(data_bucket)[xPos + startP])
      
-
-    }
+      ## Zoomed spectral window depending on exclusion zone(s)
+	  for (g in 1:graphical.zone.length)
+	  {
+		spectra <- t(data_bucket[,i])
+		names(spectra) <- rownames(data_bucket)
+		if (g==1)
+		{
+			plot(1:length(spectra[1:(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1])]), 
+				 spectra[1:(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1])], type='l', xlab="", ylab="Intensity", main="", xaxt = "n")
+			xPos <- 1
+			nAxisPos <- 4
+			startP <- length(nAxisPos) 
+			endP <- length(1:(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1]))
+			GraphRange <- c(startP:endP)
+			tempVal = trunc(length(GraphRange)/nAxisPos)
+			xPos = c(0:nAxisPos) * tempVal
+			axis(1, at = xPos, labels = rownames(data_bucket)[xPos + startP])
+		} else 
+		{
+			plot(1:length(spectra[(which(ppm == round(exclusionZonesBorders[[g-1]][2],1))[1]):(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1])]), 
+				 spectra[(which(ppm == round(exclusionZonesBorders[[g-1]][2],1))[1]):(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1])], 
+				 type='l', xlab="", ylab="Intensity", main="", xaxt = "n")
+			xPos <- 1
+			nAxisPos <- 4
+			startP <- length(nAxisPos) 
+			endP <- length(spectra[(which(ppm == round(exclusionZonesBorders[[g-1]][2],1))[1]):(which(ppm == round(exclusionZonesBorders[[g]][1],1))[1])])
+			GraphRange <- c(startP:endP)
+			tempVal = trunc(length(GraphRange)/nAxisPos)
+			xPos = c(0:nAxisPos) * tempVal
+			noms <- rownames(data_bucket)[xPos + which(ppm == round(exclusionZonesBorders[[g-1]][2],1))[1]]
+			axis(1, at = xPos, labels = noms)
+		}
+	  }
+		plot(1:length(spectra[(which(ppm == round(exclusionZonesBorders[[g]][2],1))[1]):nrow(data_bucket)]), 
+			 spectra[(which(ppm == round(exclusionZonesBorders[[g]][2],1))[1]):nrow(data_bucket)], type='l', xlab="", ylab="Intensity", main="", xaxt = "n")
+		xPos <- 1
+		nAxisPos <- 4
+		startP <- length(nAxisPos) 
+		endP <- length((which(ppm == round(exclusionZonesBorders[[g]][2],1))[1]):nrow(data_bucket))
+		GraphRange <- c(startP:endP)
+		tempVal = trunc(length(GraphRange)/nAxisPos)
+		xPos = c(0:nAxisPos) * tempVal
+		noms <- c(rownames(data_bucket)[xPos[-5] + which(ppm == round(exclusionZonesBorders[[g]][2],1))[1]], rownames(data_bucket)[which(ppm == rightBorder)[1]])
+		print(noms)
+		axis(1, at = xPos, labels = noms)
+	}
   }
-  dev.off()
+    invisible(dev.off())
 }
 
 ## Saving
@@ -193,25 +258,22 @@
 data_bucket <- cbind(rownames(data_bucket),data_bucket)
 colnames(data_bucket) <- c("Bucket",colnames(data_bucket)[-1])
 write.table(data_bucket,file=argLs$dataMatrixOut,quote=FALSE,row.names=FALSE,sep="\t")
+  # Sample
 if (fileType=="zip")
 {
-  # Sample
-  data_sample <- cbind(rownames(data_sample),data_sample)
-  colnames(data_sample) <- c("Sample",colnames(data_sample)[-1])
-  write.table(data_sample,file=argLs$sampleOut,quote=FALSE,row.names=FALSE,sep="\t")
-    # Variable
-  data_variable <- cbind(rownames(data_variable),data_variable)
-  colnames(data_variable) <- c("Bucket",colnames(data_variable)[-1])
-  write.table(data_variable,file=argLs$variableOut,quote=FALSE,row.names=FALSE,sep="\t")
+	data_sample <- cbind(rownames(data_sample),data_sample)
+	colnames(data_sample) <- c("Sample",colnames(data_sample)[-1])
+	write.table(data_sample,file=argLs$sampleOut,quote=FALSE,row.names=FALSE,sep="\t")
 }
+  # Variable
+data_variable <- cbind(rownames(data_variable),data_variable)
+colnames(data_variable) <- c("Bucket",colnames(data_variable)[-1])
+write.table(data_variable,file=argLs$variableOut,quote=FALSE,row.names=FALSE,sep="\t")
+
 
 ## Ending
 ##---------------------
-
 cat("\nEnd of 'NMR bucketing' Galaxy module call: ", as.character(Sys.time()), sep = "")
-
-## sink(NULL)
-
+sink()
 options(stringsAsFactors = strAsFacL)
-
 rm(list = ls())
--- a/nmr_bucketing/NmrBucketing_xml.xml	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/NmrBucketing_xml.xml	Thu Aug 10 05:21:09 2017 -0400
@@ -1,4 +1,4 @@
-<tool id="NmrBucketing" name="NMR_Bucketing" version="1.0.3">
+<tool id="NmrBucketing" name="NMR_Bucketing" version="2.0.3">
 
     <description> Bucketing and integration of NMR Bruker raw data</description>
 
@@ -20,7 +20,6 @@
             zipfile '$inputs.zip_file'
         #end if
 
-
         ## Bucket width
         bucket_width $bucket_width
 
@@ -28,10 +27,6 @@
         left_border $left_border
         right_border $right_border
 
-
-        ## Spectra representation
-        graphType $graphType
-
         ## Exclusion zone
         zone_exclusion_choices.choice ${zone_exclusion_choices.choice}
         #if str($zone_exclusion_choices.choice) == 'yes':
@@ -41,12 +36,15 @@
             #end for
         #end if
 
+        ## Spectra representation
+        graphType $graphType
+
         ## Outputs
-        logOut log.log
+        logOut $logOut
         dataMatrixOut '$dataMatrixOut'
         sampleOut '$sampleOut'
         variableOut '$variableOut'
-        graphOut '$graphOut'; cat log.log
+        graphOut '$graphOut'
     </command>
 
     <inputs>
@@ -92,6 +90,7 @@
     </inputs>
 
     <outputs>
+		<data format="txt" name="logOut" label="${tool.name}_log" />
         <data format="tabular" name="sampleOut" label="${tool.name}_sampleMetadata" />
         <data format="tabular" name="variableOut" label="${tool.name}_variableMetadata" />
         <data format="tabular" name="dataMatrixOut" label="${tool.name}_bucketedData" />
@@ -270,6 +269,13 @@
 
 Changelog/News
 --------------
+**Version 2.0.3 - 10/08/2017**
+
+- BUG CORRECTION: “zoomed” representations: x-axis labels + sampleMetadata output: empty
+
+**Version 2.0.2 - 21/04/2017**
+
+- IMPROVEMENT: Add “zoomed” representations of bucketed spectra, depending on exclusion zone borders
 
 **Version 1.0.3 - 24/10/2016**
 
--- a/nmr_bucketing/README.rst	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/README.rst	Thu Aug 10 05:21:09 2017 -0400
@@ -2,6 +2,10 @@
 Changelog/News
 --------------
 
+**Version 2.0.2 - 21/04/2017**
+
+- IMPROVEMENT: Add “zoomed” representations of bucketed spectra, depending on exclusion zone borders
+
 **Version 1.0.3 - 24/10/2016**
 
 - ENHANCEMENT: add possibility of bucketing processed files (upstream tools)
--- a/nmr_bucketing/planemo_test.sh	Fri May 05 07:08:14 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-planemo conda_init
-planemo conda_install .
-planemo test --install_galaxy --conda_dependency_resolution --galaxy_branch "dev"
-
-#All 1 test(s) executed passed.
-#nmr_bucketing[0]: passed
-
-
-planemo shed_test -t testtoolshed --install_galaxy --galaxy_branch "dev"
-
-#All 1 test(s) executed passed.
-#testtoolshed.g2.bx.psu.edu/repos/marie-tremblay-metatoul/nmr_bucketing/NmrBucketing/1.0.1[0]: passed
--- a/nmr_bucketing/test-data/MTBLS1_bucketedData.tabular	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/test-data/MTBLS1_bucketedData.tabular	Thu Aug 10 05:21:09 2017 -0400
@@ -329,6 +329,182 @@
 B6.026	0.000159319062283075	0.000446721409572097	0.000382633919227815	0.000126942645667836	0.000166313059734916	8.94758281061922e-05	0.000385838304457983	2.87763377558405e-05	0.000360994039934173	0.000144325493649279	0.000361987046197092	0.000483733340109536	0.000297916109701254	0.00053237165368555	0.000472963510270079	0.000780680118728634	0.00048247577268934	0.000479026836151301	0.000622055982981826	0.000302910238854912	0.000343759407196818	0.000314304432305254	0.000481969249797228
 B6.016	0.000205982599932515	0.00039803027868312	0.000331140965056563	0.000138075073133353	0.000217185180911849	0.000104037016792196	0.000398311763845808	1.16037245322327e-05	0.000447143055443722	0.000159497854969022	0.000371762570375265	0.000465691083996931	0.000299910086232853	0.00061280087605037	0.000557513875257174	0.000980090773824587	0.000530141243540867	0.00053568835872767	0.000630570161986447	0.000290758769268749	0.000305567744411625	0.000346585584205536	0.000473120994151219
 B6.006	0.000232459376259715	0.000461718129259159	0.000334235417600277	0.00015417147012816	0.000280538916555807	0.000127453841913459	0.000463489454263623	3.55521723100418e-06	0.000435178821173875	0.000127193955611512	0.00043096911173487	0.00053027228506661	0.000342325570632658	0.000677227900457431	0.000567599655082813	0.000894296306076175	0.000436863790820561	0.000531758256112441	0.000705485193834934	0.000315880862281865	0.000312791778660212	0.000497797035112305	0.000491336230689585
+B5.995	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.986	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.976	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.966	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.955	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.946	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.936	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.926	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.915	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.906	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.896	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.886	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.875	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.865	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.856	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.846	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.835	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.825	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.816	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.806	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.795	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.785	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.776	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.766	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.755	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.745	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.736	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.726	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.715	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.705	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.696	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.686	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.675	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.665	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.656	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.645	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.635	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.625	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.616	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.605	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.595	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.585	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.576	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.565	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.555	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.545	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.536	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.525	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.515	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.505	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.496	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.485	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.475	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.466	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.456	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.445	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.435	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.425	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.416	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.405	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.395	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.386	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.376	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.365	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.355	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.346	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.336	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.325	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.315	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.305	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.296	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.285	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.275	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.265	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.256	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.245	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.235	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.225	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.216	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.205	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.195	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.185	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.176	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.165	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.155	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.145	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.136	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.125	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.115	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.105	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.096	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.085	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.075	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.065	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.056	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.045	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.035	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.025	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.016	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B5.005	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.995	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.985	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.976	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.965	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.955	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.945	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.936	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.925	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.915	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.905	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.896	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.885	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.875	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.865	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.856	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.845	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.836	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.826	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.816	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.805	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.796	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.786	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.776	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.765	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.756	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.746	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.736	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.725	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.716	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.706	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.696	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.685	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.676	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.666	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.656	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.645	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.636	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.626	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.616	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.605	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.596	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.586	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.576	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.565	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.556	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.546	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.536	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.525	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.516	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.506	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.496	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.485	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.476	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.466	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.456	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.445	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.436	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.426	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.416	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.405	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.396	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.386	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.376	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.365	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.356	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.346	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.336	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.325	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.316	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.306	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.296	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.285	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.276	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.266	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.256	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B4.245	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
 B4.236	0.00117532231637243	0.0018667666295052	0.00175999534119716	0.00066902487106746	0.00069124656782209	0.0010324976005782	0.00180258252580708	0.000530379842566436	0.000860761540425773	0.000122881563605482	0.00126915675349965	0.0016142828841522	0.00134259452843748	0.0013946250261179	0.000726573886330935	0.00164574606179597	0.00209952885508623	0.00242139499757558	0.00199435626864982	0.0020166895076023	0.00179134583813773	0.00191899097186911	0.0033820639614577
 B4.226	0.0013129801045015	0.00225764693695088	0.0021056786943322	0.000773330387886132	0.000724819620121457	0.00116784958838961	0.00194063380715593	0.000510807931755068	0.000823325850878354	0.000110824830757777	0.00124736501625794	0.00171324391590195	0.00141593314542957	0.00141651144661672	0.000704786634059005	0.00159854359256263	0.00209814226911207	0.00255860406932761	0.00203707319185035	0.00223276139424951	0.00196449848235522	0.00190198739003431	0.00346428382009631
 B4.216	0.00190084888969336	0.00275215111027454	0.0025759634484351	0.000906802628602182	0.00125999519235375	0.00195621592045612	0.00315405750437412	0.000512645727873845	0.00102954718116227	8.6270598723359e-05	0.00163320488352421	0.00232952022244702	0.0017025114565242	0.00214983564327201	0.00101645215630212	0.00210696822259903	0.0035070523616557	0.00295037788010098	0.00265718798177779	0.00277722836321253	0.00248220047415979	0.00220450520323759	0.00351591370572453
@@ -354,6 +530,86 @@
 B4.015	0.00400716347834736	0.0101423475222839	0.00938985234288078	0.00289338732723399	0.00366114583327396	0.00650397965125701	0.0091956875702685	0.00137288419434121	0.0030493300724778	0.00053334179695091	0.00621205845301629	0.0097597172636062	0.0115147777172288	0.00728018575647996	0.00287445947987281	0.00725624961633651	0.00893147984808513	0.00907624578115228	0.00917201827212462	0.0180530942720467	0.013019113435372	0.0111775989851375	0.023598217270422
 B4.005	0.00296254488977089	0.0164423382555773	0.0130170700132705	0.00364445838099894	0.00471867978542428	0.00616610400555116	0.00885151318407249	0.00121249973131333	0.00349496386237122	0.000477119332696057	0.0084001988782063	0.0119554412074038	0.0118043205669261	0.00797533151499372	0.00374014441746032	0.00851024397349168	0.00911498265333144	0.00991603512656697	0.0158364649832643	0.0180993232427793	0.014257303768286	0.00887388703258983	0.00981345751146254
 B3.995	0.00450942096886721	0.016849905134715	0.0101917456187262	0.00533658012159501	0.00621742319443513	0.00696615649683696	0.00925481356140165	0.0020117936102462	0.00463581595726491	0.000826074926989723	0.00908768518246344	0.0127983615745036	0.00973198171855689	0.00729038908232296	0.00505803525923804	0.00906432141142744	0.0103204665288435	0.0108774658387273	0.0150562301743736	0.0121726913640427	0.0140622961741314	0.0200991092519287	0.0168679014023359
+B3.986	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.975	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.965	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.955	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.946	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.935	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.925	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.915	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.906	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.895	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.885	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.876	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.866	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.855	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.845	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.836	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.826	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.815	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.805	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.796	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.786	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.775	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.765	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.756	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.746	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.735	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.725	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.716	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.706	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.695	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.685	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.675	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.666	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.655	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.645	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.635	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.626	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.615	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.605	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.595	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.586	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.575	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.565	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.555	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.546	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.535	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.525	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.515	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.506	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.495	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.485	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.475	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.466	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.455	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.445	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.435	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.426	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.415	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.405	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.395	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.386	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.375	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.365	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.355	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.346	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.335	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.325	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.315	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.306	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.295	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.285	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.275	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.266	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.255	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.245	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.235	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.226	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.215	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.206	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
+B3.196	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0
 B3.186	0.00201144349061277	0.00511672037422703	0.00674372379556355	0.00151261394154303	0.00277381893931782	0.00364368121419522	0.00597854377479009	0.00126422902619491	0.00228330556912456	0.000592834720808707	0.00409756948177746	0.00858495065383133	0.00555645039812487	0.00531570118698859	0.00261400429832047	0.00434695027640667	0.00522282836963602	0.0056577622741263	0.00637764246269668	0.00747538063145599	0.0077928119950562	0.00601279982707526	0.00511387337977165
 B3.175	0.00271933639260247	0.00444723479769846	0.00545010249625092	0.00155169299393345	0.00314947135138621	0.00322658452372139	0.00652060628475486	0.000964652386371574	0.0024960825999393	0.000426190059370256	0.00466079876301094	0.00535515067839509	0.00334321604691847	0.00672375535131703	0.00288327435749545	0.0037110204500203	0.00573264560272066	0.00564868279892462	0.0114159294554811	0.00740880297991976	0.00854867898860106	0.00483235702158968	0.00564666831502778
 B3.166	0.0033738157127105	0.00908146849391229	0.00656013183500732	0.00112337476520255	0.00297405204131381	0.00472234315951998	0.00662671866565088	0.00085232375651865	0.00380943225185647	0.000339194817058512	0.00626504143039219	0.00742313954850819	0.00533575611465142	0.00570474608592227	0.00321374617495607	0.00827938408720738	0.00566144772521832	0.00495277906541919	0.0128711668738587	0.00723306673585474	0.00869104188775517	0.00605036300415423	0.00540113831614767
--- a/nmr_bucketing/test-data/MTBLS1_variableMetadata.tabular	Fri May 05 07:08:14 2017 -0400
+++ b/nmr_bucketing/test-data/MTBLS1_variableMetadata.tabular	Thu Aug 10 05:21:09 2017 -0400
@@ -329,267 +329,523 @@
 B6.026	328
 B6.016	329
 B6.006	330
-B4.236	331
-B4.226	332
-B4.216	333
-B4.205	334
-B4.196	335
-B4.186	336
-B4.176	337
-B4.165	338
-B4.155	339
-B4.146	340
-B4.136	341
-B4.125	342
-B4.115	343
-B4.106	344
-B4.096	345
-B4.085	346
-B4.075	347
-B4.066	348
-B4.056	349
-B4.045	350
-B4.035	351
-B4.026	352
-B4.015	353
-B4.005	354
-B3.995	355
-B3.186	356
-B3.175	357
-B3.166	358
-B3.156	359
-B3.146	360
-B3.135	361
-B3.126	362
-B3.116	363
-B3.106	364
-B3.095	365
-B3.086	366
-B3.076	367
-B3.066	368
-B3.055	369
-B3.046	370
-B3.036	371
-B3.026	372
-B3.015	373
-B3.006	374
-B2.996	375
-B2.986	376
-B2.975	377
-B2.966	378
-B2.956	379
-B2.946	380
-B2.935	381
-B2.926	382
-B2.916	383
-B2.906	384
-B2.895	385
-B2.886	386
-B2.876	387
-B2.866	388
-B2.855	389
-B2.846	390
-B2.836	391
-B2.826	392
-B2.815	393
-B2.806	394
-B2.796	395
-B2.786	396
-B2.775	397
-B2.766	398
-B2.756	399
-B2.746	400
-B2.735	401
-B2.726	402
-B2.716	403
-B2.706	404
-B2.695	405
-B2.686	406
-B2.676	407
-B2.666	408
-B2.655	409
-B2.646	410
-B2.636	411
-B2.626	412
-B2.615	413
-B2.606	414
-B2.596	415
-B2.586	416
-B2.575	417
-B2.566	418
-B2.556	419
-B2.546	420
-B2.535	421
-B2.526	422
-B2.516	423
-B2.506	424
-B2.495	425
-B2.486	426
-B2.476	427
-B2.466	428
-B2.455	429
-B2.446	430
-B2.436	431
-B2.426	432
-B2.415	433
-B2.406	434
-B2.396	435
-B2.385	436
-B2.375	437
-B2.365	438
-B2.356	439
-B2.345	440
-B2.335	441
-B2.325	442
-B2.316	443
-B2.305	444
-B2.295	445
-B2.285	446
-B2.276	447
-B2.265	448
-B2.255	449
-B2.245	450
-B2.236	451
-B2.225	452
-B2.215	453
-B2.205	454
-B2.196	455
-B2.185	456
-B2.175	457
-B2.165	458
-B2.156	459
-B2.145	460
-B2.135	461
-B2.126	462
-B2.116	463
-B2.105	464
-B2.095	465
-B2.086	466
-B2.076	467
-B2.065	468
-B2.055	469
-B2.045	470
-B2.036	471
-B2.025	472
-B2.015	473
-B2.005	474
-B1.994	475
-B1.985	476
-B1.974	477
-B1.964	478
-B1.954	479
-B1.945	480
-B1.934	481
-B1.924	482
-B1.914	483
-B1.905	484
-B1.894	485
-B1.884	486
-B1.874	487
-B1.865	488
-B1.854	489
-B1.844	490
-B1.834	491
-B1.825	492
-B1.814	493
-B1.804	494
-B1.794	495
-B1.785	496
-B1.774	497
-B1.764	498
-B1.754	499
-B1.743	500
-B1.734	501
-B1.723	502
-B1.713	503
-B1.703	504
-B1.694	505
-B1.683	506
-B1.673	507
-B1.663	508
-B1.654	509
-B1.643	510
-B1.633	511
-B1.623	512
-B1.612	513
-B1.603	514
-B1.592	515
-B1.582	516
-B1.572	517
-B1.563	518
-B1.552	519
-B1.542	520
-B1.532	521
-B1.523	522
-B1.512	523
-B1.502	524
-B1.491	525
-B1.482	526
-B1.472	527
-B1.461	528
-B1.451	529
-B1.442	530
-B1.432	531
-B1.421	532
-B1.411	533
-B1.401	534
-B1.392	535
-B1.381	536
-B1.371	537
-B1.36	538
-B1.351	539
-B1.341	540
-B1.33	541
-B1.32	542
-B1.31	543
-B1.301	544
-B1.29	545
-B1.28	546
-B1.27	547
-B1.261	548
-B1.25	549
-B1.239	550
-B1.229	551
-B1.22	552
-B1.21	553
-B1.199	554
-B1.189	555
-B1.18	556
-B1.17	557
-B1.159	558
-B1.149	559
-B1.139	560
-B1.129	561
-B1.119	562
-B1.108	563
-B1.098	564
-B1.089	565
-B1.079	566
-B1.068	567
-B1.058	568
-B1.048	569
-B1.039	570
-B1.028	571
-B1.018	572
-B1.008	573
-B0.998	574
-B0.988	575
-B0.977	576
-B0.967	577
-B0.958	578
-B0.948	579
-B0.937	580
-B0.926	581
-B0.916	582
-B0.907	583
-B0.897	584
-B0.886	585
-B0.876	586
-B0.866	587
-B0.857	588
-B0.846	589
-B0.836	590
-B0.826	591
-B0.816	592
-B0.806	593
-B0.8	594
+B5.995	331
+B5.986	332
+B5.976	333
+B5.966	334
+B5.955	335
+B5.946	336
+B5.936	337
+B5.926	338
+B5.915	339
+B5.906	340
+B5.896	341
+B5.886	342
+B5.875	343
+B5.865	344
+B5.856	345
+B5.846	346
+B5.835	347
+B5.825	348
+B5.816	349
+B5.806	350
+B5.795	351
+B5.785	352
+B5.776	353
+B5.766	354
+B5.755	355
+B5.745	356
+B5.736	357
+B5.726	358
+B5.715	359
+B5.705	360
+B5.696	361
+B5.686	362
+B5.675	363
+B5.665	364
+B5.656	365
+B5.645	366
+B5.635	367
+B5.625	368
+B5.616	369
+B5.605	370
+B5.595	371
+B5.585	372
+B5.576	373
+B5.565	374
+B5.555	375
+B5.545	376
+B5.536	377
+B5.525	378
+B5.515	379
+B5.505	380
+B5.496	381
+B5.485	382
+B5.475	383
+B5.466	384
+B5.456	385
+B5.445	386
+B5.435	387
+B5.425	388
+B5.416	389
+B5.405	390
+B5.395	391
+B5.386	392
+B5.376	393
+B5.365	394
+B5.355	395
+B5.346	396
+B5.336	397
+B5.325	398
+B5.315	399
+B5.305	400
+B5.296	401
+B5.285	402
+B5.275	403
+B5.265	404
+B5.256	405
+B5.245	406
+B5.235	407
+B5.225	408
+B5.216	409
+B5.205	410
+B5.195	411
+B5.185	412
+B5.176	413
+B5.165	414
+B5.155	415
+B5.145	416
+B5.136	417
+B5.125	418
+B5.115	419
+B5.105	420
+B5.096	421
+B5.085	422
+B5.075	423
+B5.065	424
+B5.056	425
+B5.045	426
+B5.035	427
+B5.025	428
+B5.016	429
+B5.005	430
+B4.995	431
+B4.985	432
+B4.976	433
+B4.965	434
+B4.955	435
+B4.945	436
+B4.936	437
+B4.925	438
+B4.915	439
+B4.905	440
+B4.896	441
+B4.885	442
+B4.875	443
+B4.865	444
+B4.856	445
+B4.845	446
+B4.836	447
+B4.826	448
+B4.816	449
+B4.805	450
+B4.796	451
+B4.786	452
+B4.776	453
+B4.765	454
+B4.756	455
+B4.746	456
+B4.736	457
+B4.725	458
+B4.716	459
+B4.706	460
+B4.696	461
+B4.685	462
+B4.676	463
+B4.666	464
+B4.656	465
+B4.645	466
+B4.636	467
+B4.626	468
+B4.616	469
+B4.605	470
+B4.596	471
+B4.586	472
+B4.576	473
+B4.565	474
+B4.556	475
+B4.546	476
+B4.536	477
+B4.525	478
+B4.516	479
+B4.506	480
+B4.496	481
+B4.485	482
+B4.476	483
+B4.466	484
+B4.456	485
+B4.445	486
+B4.436	487
+B4.426	488
+B4.416	489
+B4.405	490
+B4.396	491
+B4.386	492
+B4.376	493
+B4.365	494
+B4.356	495
+B4.346	496
+B4.336	497
+B4.325	498
+B4.316	499
+B4.306	500
+B4.296	501
+B4.285	502
+B4.276	503
+B4.266	504
+B4.256	505
+B4.245	506
+B4.236	507
+B4.226	508
+B4.216	509
+B4.205	510
+B4.196	511
+B4.186	512
+B4.176	513
+B4.165	514
+B4.155	515
+B4.146	516
+B4.136	517
+B4.125	518
+B4.115	519
+B4.106	520
+B4.096	521
+B4.085	522
+B4.075	523
+B4.066	524
+B4.056	525
+B4.045	526
+B4.035	527
+B4.026	528
+B4.015	529
+B4.005	530
+B3.995	531
+B3.986	532
+B3.975	533
+B3.965	534
+B3.955	535
+B3.946	536
+B3.935	537
+B3.925	538
+B3.915	539
+B3.906	540
+B3.895	541
+B3.885	542
+B3.876	543
+B3.866	544
+B3.855	545
+B3.845	546
+B3.836	547
+B3.826	548
+B3.815	549
+B3.805	550
+B3.796	551
+B3.786	552
+B3.775	553
+B3.765	554
+B3.756	555
+B3.746	556
+B3.735	557
+B3.725	558
+B3.716	559
+B3.706	560
+B3.695	561
+B3.685	562
+B3.675	563
+B3.666	564
+B3.655	565
+B3.645	566
+B3.635	567
+B3.626	568
+B3.615	569
+B3.605	570
+B3.595	571
+B3.586	572
+B3.575	573
+B3.565	574
+B3.555	575
+B3.546	576
+B3.535	577
+B3.525	578
+B3.515	579
+B3.506	580
+B3.495	581
+B3.485	582
+B3.475	583
+B3.466	584
+B3.455	585
+B3.445	586
+B3.435	587
+B3.426	588
+B3.415	589
+B3.405	590
+B3.395	591
+B3.386	592
+B3.375	593
+B3.365	594
+B3.355	595
+B3.346	596
+B3.335	597
+B3.325	598
+B3.315	599
+B3.306	600
+B3.295	601
+B3.285	602
+B3.275	603
+B3.266	604
+B3.255	605
+B3.245	606
+B3.235	607
+B3.226	608
+B3.215	609
+B3.206	610
+B3.196	611
+B3.186	612
+B3.175	613
+B3.166	614
+B3.156	615
+B3.146	616
+B3.135	617
+B3.126	618
+B3.116	619
+B3.106	620
+B3.095	621
+B3.086	622
+B3.076	623
+B3.066	624
+B3.055	625
+B3.046	626
+B3.036	627
+B3.026	628
+B3.015	629
+B3.006	630
+B2.996	631
+B2.986	632
+B2.975	633
+B2.966	634
+B2.956	635
+B2.946	636
+B2.935	637
+B2.926	638
+B2.916	639
+B2.906	640
+B2.895	641
+B2.886	642
+B2.876	643
+B2.866	644
+B2.855	645
+B2.846	646
+B2.836	647
+B2.826	648
+B2.815	649
+B2.806	650
+B2.796	651
+B2.786	652
+B2.775	653
+B2.766	654
+B2.756	655
+B2.746	656
+B2.735	657
+B2.726	658
+B2.716	659
+B2.706	660
+B2.695	661
+B2.686	662
+B2.676	663
+B2.666	664
+B2.655	665
+B2.646	666
+B2.636	667
+B2.626	668
+B2.615	669
+B2.606	670
+B2.596	671
+B2.586	672
+B2.575	673
+B2.566	674
+B2.556	675
+B2.546	676
+B2.535	677
+B2.526	678
+B2.516	679
+B2.506	680
+B2.495	681
+B2.486	682
+B2.476	683
+B2.466	684
+B2.455	685
+B2.446	686
+B2.436	687
+B2.426	688
+B2.415	689
+B2.406	690
+B2.396	691
+B2.385	692
+B2.375	693
+B2.365	694
+B2.356	695
+B2.345	696
+B2.335	697
+B2.325	698
+B2.316	699
+B2.305	700
+B2.295	701
+B2.285	702
+B2.276	703
+B2.265	704
+B2.255	705
+B2.245	706
+B2.236	707
+B2.225	708
+B2.215	709
+B2.205	710
+B2.196	711
+B2.185	712
+B2.175	713
+B2.165	714
+B2.156	715
+B2.145	716
+B2.135	717
+B2.126	718
+B2.116	719
+B2.105	720
+B2.095	721
+B2.086	722
+B2.076	723
+B2.065	724
+B2.055	725
+B2.045	726
+B2.036	727
+B2.025	728
+B2.015	729
+B2.005	730
+B1.994	731
+B1.985	732
+B1.974	733
+B1.964	734
+B1.954	735
+B1.945	736
+B1.934	737
+B1.924	738
+B1.914	739
+B1.905	740
+B1.894	741
+B1.884	742
+B1.874	743
+B1.865	744
+B1.854	745
+B1.844	746
+B1.834	747
+B1.825	748
+B1.814	749
+B1.804	750
+B1.794	751
+B1.785	752
+B1.774	753
+B1.764	754
+B1.754	755
+B1.743	756
+B1.734	757
+B1.723	758
+B1.713	759
+B1.703	760
+B1.694	761
+B1.683	762
+B1.673	763
+B1.663	764
+B1.654	765
+B1.643	766
+B1.633	767
+B1.623	768
+B1.612	769
+B1.603	770
+B1.592	771
+B1.582	772
+B1.572	773
+B1.563	774
+B1.552	775
+B1.542	776
+B1.532	777
+B1.523	778
+B1.512	779
+B1.502	780
+B1.491	781
+B1.482	782
+B1.472	783
+B1.461	784
+B1.451	785
+B1.442	786
+B1.432	787
+B1.421	788
+B1.411	789
+B1.401	790
+B1.392	791
+B1.381	792
+B1.371	793
+B1.36	794
+B1.351	795
+B1.341	796
+B1.33	797
+B1.32	798
+B1.31	799
+B1.301	800
+B1.29	801
+B1.28	802
+B1.27	803
+B1.261	804
+B1.25	805
+B1.239	806
+B1.229	807
+B1.22	808
+B1.21	809
+B1.199	810
+B1.189	811
+B1.18	812
+B1.17	813
+B1.159	814
+B1.149	815
+B1.139	816
+B1.129	817
+B1.119	818
+B1.108	819
+B1.098	820
+B1.089	821
+B1.079	822
+B1.068	823
+B1.058	824
+B1.048	825
+B1.039	826
+B1.028	827
+B1.018	828
+B1.008	829
+B0.998	830
+B0.988	831
+B0.977	832
+B0.967	833
+B0.958	834
+B0.948	835
+B0.937	836
+B0.926	837
+B0.916	838
+B0.907	839
+B0.897	840
+B0.886	841
+B0.876	842
+B0.866	843
+B0.857	844
+B0.846	845
+B0.836	846
+B0.826	847
+B0.816	848
+B0.806	849
+B0.8	850