changeset 8:cb4aeec93d49 draft

planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit 7e1748612a9f9dce11a9e54ff36752b600e7aea3
author computational-metabolomics
date Wed, 12 Jun 2024 16:08:23 +0000
parents e9fbb65451f6
children 174a523cb1da
files README.rst averageFragSpectra.R combineAnnotations.R createDatabase.R createMSP.R dimsPredictPuritySingle.R filterFragSpectra.R flagRemove.R frag4feature.R macros.xml purityA.R purityX.R test-data/combineAnnotations_combined_annotations.sqlite test-data/combineAnnotations_combined_annotations.tsv test-data/purityX_output.RData test-data/purityX_output.Rdata test-data/purityX_output.tsv
diffstat 16 files changed, 673 insertions(+), 604 deletions(-) [+]
line wrap: on
line diff
--- a/README.rst	Tue Feb 08 14:04:07 2022 +0000
+++ b/README.rst	Wed Jun 12 16:08:23 2024 +0000
@@ -1,15 +1,15 @@
 msPurity for Galaxy
 ========================
-|Build Status (Travis)| |Git| |Bioconda| |License|
+|Git| |Bioconda| |License|
 
 
-Version v1.16.2+galaxy1
+Version v1.16.2+galaxy2
 ------------------------
 
   - msPurity
      - bioconductor-mspurity v1.16.2
   - Galaxy tools
-     - v1
+     - v2
 
 About
 ------
@@ -54,6 +54,13 @@
 
 Changes
 -------------------------
+v1.16.2-galaxy2 
+  - Fix for purityX galaxy tool (https://github.com/computational-metabolomics/mspurity-galaxy/issues/53) 
+  - Cleanup of xml based on updated lint requirements
+  - Fix combineAnnotation tests
+  - Cleanup of repository folders
+  - github actions temp update (lintr removed)
+
 v1.16.2-galaxy1
   - Fix for "scan" option for spectral matching
   - Add allfrag option for filterFragSpectra
--- a/averageFragSpectra.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/averageFragSpectra.R	Wed Jun 12 16:08:23 2024 +0000
@@ -5,30 +5,28 @@
 
 
 get_av_spectra <- function(x) {
-
   if (length(x$av_intra) > 0) {
     av_intra_df <- plyr::ldply(x$av_intra)
 
     if (nrow(av_intra_df) == 0) {
       av_intra_df <- NULL
-    }else{
+    } else {
       av_intra_df$method <- "intra"
     }
-
-  }else{
+  } else {
     av_intra_df <- NULL
   }
 
   if ((is.null(x$av_inter)) || (nrow(x$av_inter) == 0)) {
     av_inter_df <- NULL
-  }else{
+  } else {
     av_inter_df <- x$av_inter
     av_inter_df$method <- "inter"
   }
 
   if ((is.null(x$av_all)) || (nrow(x$av_all) == 0)) {
     av_all_df <- NULL
-  }else{
+  } else {
     av_all_df <- x$av_all
     av_all_df$method <- "all"
   }
@@ -60,9 +58,9 @@
 
 
 load_r_data <- function(rdata_path, name) {
-    #loads an RData file, and returns the named xset object if it is there
-    load(rdata_path)
-    return(get(ls()[ls() %in% name]))
+  # loads an RData file, and returns the named xset object if it is there
+  load(rdata_path)
+  return(get(ls()[ls() %in% name]))
 }
 
 # Requires
@@ -72,59 +70,58 @@
 
 if (is.null(opt$rmp)) {
   rmp <- FALSE
-}else{
+} else {
   rmp <- TRUE
 }
 
 if (is.null(opt$sumi)) {
   sumi <- FALSE
-}else{
+} else {
   sumi <- TRUE
 }
 
 if (opt$av_level == "intra") {
   pa <- msPurity::averageIntraFragSpectra(pa,
-                                          minfrac = opt$minfrac,
-                                          minnum = opt$minnum,
-                                          ppm = opt$ppm,
-                                          snr = opt$snr,
-                                          ra = opt$ra,
-                                          av = opt$av,
-                                          sumi = sumi,
-                                          rmp = rmp,
-                                          cores = opt$cores)
-
+    minfrac = opt$minfrac,
+    minnum = opt$minnum,
+    ppm = opt$ppm,
+    snr = opt$snr,
+    ra = opt$ra,
+    av = opt$av,
+    sumi = sumi,
+    rmp = rmp,
+    cores = opt$cores
+  )
 } else if (opt$av_level == "inter") {
-
   pa <- msPurity::averageInterFragSpectra(pa,
-                                          minfrac = opt$minfrac,
-                                          minnum = opt$minnum,
-                                          ppm = opt$ppm,
-                                          snr = opt$snr,
-                                          ra = opt$ra,
-                                          av = opt$av,
-                                          sumi = sumi,
-                                          rmp = rmp,
-                                          cores = opt$cores)
+    minfrac = opt$minfrac,
+    minnum = opt$minnum,
+    ppm = opt$ppm,
+    snr = opt$snr,
+    ra = opt$ra,
+    av = opt$av,
+    sumi = sumi,
+    rmp = rmp,
+    cores = opt$cores
+  )
 } else if (opt$av_level == "all") {
-
   pa <- msPurity::averageAllFragSpectra(pa,
-                                        minfrac = opt$minfrac,
-                                        minnum = opt$minnum,
-                                        ppm = opt$ppm,
-                                        snr = opt$snr,
-                                        ra = opt$ra,
-                                        av = opt$av,
-                                        sumi = sumi,
-                                        rmp = rmp,
-                                        cores = opt$cores)
+    minfrac = opt$minfrac,
+    minnum = opt$minnum,
+    ppm = opt$ppm,
+    snr = opt$snr,
+    ra = opt$ra,
+    av = opt$av,
+    sumi = sumi,
+    rmp = rmp,
+    cores = opt$cores
+  )
 }
 
 print(pa)
 save(pa, file = opt$out_rdata)
 
 if (length(pa) > 0) {
-
   av_spectra <- plyr::ldply(pa@av_spectra, get_av_spectra)
 
   if (nrow(av_spectra) == 0) {
@@ -138,18 +135,20 @@
       colnames(av_spectra)[2] <- "fileid"
       av_spectra$avid <- seq_len(nrow(av_spectra))
 
-      filenames <- sapply(av_spectra$fileid,
-                          function(x) names(pa@fileList)[as.integer(x)])
+      filenames <- sapply(
+        av_spectra$fileid,
+        function(x) names(pa@fileList)[as.integer(x)]
+      )
       # filenames_galaxy <- sapply(
       #    av_spectra$fileid, function(x) basename(pa@fileList[as.integer(x)]))
 
-        av_spectra <- as.data.frame(
-          append(av_spectra, list(filename = filenames), after = 2))
+      av_spectra <- as.data.frame(
+        append(av_spectra, list(filename = filenames), after = 2)
+      )
     }
 
 
     print(head(av_spectra))
     write.table(av_spectra, opt$out_peaklist, row.names = FALSE, sep = "\t")
-
   }
 }
--- a/combineAnnotations.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/combineAnnotations.R	Wed Jun 12 16:08:23 2024 +0000
@@ -9,23 +9,18 @@
   make_option(c("-c", "--sirius_csi_resultPth"), type = "character"),
   make_option(c("-p", "--probmetab_resultPth"), type = "character"),
   make_option(c("-l", "--ms1_lookup_resultPth"), type = "character"),
-
   make_option("--ms1_lookup_checkAdducts", action = "store_true"),
   make_option("--ms1_lookup_keepAdducts", type = "character", default = NA),
   make_option("--ms1_lookup_dbSource", type = "character", default = "hmdb"),
-
   make_option("--sm_weight", type = "numeric"),
   make_option("--metfrag_weight", type = "numeric"),
   make_option("--sirius_csi_weight", type = "numeric"),
   make_option("--probmetab_weight", type = "numeric"),
   make_option("--ms1_lookup_weight", type = "numeric"),
   make_option("--biosim_weight", type = "numeric"),
-
   make_option("--summaryOutput", action = "store_true"),
-
   make_option("--create_new_database", action = "store_true"),
   make_option("--outdir", type = "character", default = "."),
-
   make_option("--compoundDbType", type = "character", default = "sqlite"),
   make_option("--compoundDbPth", type = "character", default = NA),
   make_option("--compoundDbHost", type = "character", default = NA)
@@ -37,7 +32,7 @@
 if (!is.null(opt$create_new_database)) {
   sm_resultPth <- file.path(opt$outdir, "combined_annotations.sqlite")
   file.copy(opt$sm_resultPth, sm_resultPth)
-}else{
+} else {
   sm_resultPth <- opt$sm_resultPth
 }
 
@@ -45,18 +40,19 @@
   opt$ms1_lookup_checkAdducts <- FALSE
 }
 if (!is.null(opt$ms1_lookup_keepAdducts)) {
-    opt$ms1_lookup_keepAdducts <- gsub("__ob__", "[", opt$ms1_lookup_keepAdducts)
-    opt$ms1_lookup_keepAdducts <- gsub("__cb__", "]", opt$ms1_lookup_keepAdducts)
-    ms1_lookup_keepAdducts <- strsplit(opt$ms1_lookup_keepAdducts, ",")[[1]]
+  opt$ms1_lookup_keepAdducts <- gsub("__ob__", "[", opt$ms1_lookup_keepAdducts)
+  opt$ms1_lookup_keepAdducts <- gsub("__cb__", "]", opt$ms1_lookup_keepAdducts)
+  ms1_lookup_keepAdducts <- strsplit(opt$ms1_lookup_keepAdducts, ",")[[1]]
 }
 
-weights <- list("sm" = opt$sm_weight,
-               "metfrag" = opt$metfrag_weight,
-               "sirius_csifingerid" = opt$sirius_csi_weight,
-               "probmetab" = opt$probmetab_weight,
-               "ms1_lookup" = opt$ms1_lookup_weight,
-               "biosim" = opt$biosim_weight
-               )
+weights <- list(
+  "sm" = opt$sm_weight,
+  "metfrag" = opt$metfrag_weight,
+  "sirius_csifingerid" = opt$sirius_csi_weight,
+  "probmetab" = opt$probmetab_weight,
+  "ms1_lookup" = opt$ms1_lookup_weight,
+  "biosim" = opt$biosim_weight
+)
 print(weights)
 
 if (is.null(opt$probmetab_resultPth)) {
@@ -69,8 +65,8 @@
 
 if (is.null(opt$summaryOutput)) {
   summaryOutput <- FALSE
-}else{
- summaryOutput <- TRUE
+} else {
+  summaryOutput <- TRUE
 }
 
 if (opt$compoundDbType == "local_config") {
@@ -82,7 +78,7 @@
     source(paste(base_dir, fname, sep = "/"))
   }
   source_local("dbconfig.R")
-}else{
+} else {
   compoundDbPth <- opt$compoundDbPth
   compoundDbType <- opt$compoundDbType
   compoundDbName <- NA
@@ -93,31 +89,33 @@
 }
 
 summary_output <- msPurity::combineAnnotations(
-                          sm_resultPth = sm_resultPth,
-                          compoundDbPth = compoundDbPth,
-                          metfrag_resultPth = opt$metfrag_resultPth,
-                          sirius_csi_resultPth = opt$sirius_csi_resultPth,
-                          probmetab_resultPth = opt$probmetab_resultPth,
-                          ms1_lookup_resultPth = opt$ms1_lookup_resultPth,
-                          ms1_lookup_keepAdducts = ms1_lookup_keepAdducts,
-                          ms1_lookup_checkAdducts = opt$ms1_lookup_checkAdducts,
-
-                         compoundDbType = compoundDbType,
-                         compoundDbName = compoundDbName,
-                         compoundDbHost = compoundDbHost,
-                         compoundDbPort = compoundDbPort,
-                         compoundDbUser = compoundDbUser,
-                         compoundDbPass = compoundDbPass,
-                         weights = weights,
-                         summaryOutput = summaryOutput)
+  sm_resultPth = sm_resultPth,
+  compoundDbPth = compoundDbPth,
+  metfrag_resultPth = opt$metfrag_resultPth,
+  sirius_csi_resultPth = opt$sirius_csi_resultPth,
+  probmetab_resultPth = opt$probmetab_resultPth,
+  ms1_lookup_resultPth = opt$ms1_lookup_resultPth,
+  ms1_lookup_keepAdducts = ms1_lookup_keepAdducts,
+  ms1_lookup_checkAdducts = opt$ms1_lookup_checkAdducts,
+  compoundDbType = compoundDbType,
+  compoundDbName = compoundDbName,
+  compoundDbHost = compoundDbHost,
+  compoundDbPort = compoundDbPort,
+  compoundDbUser = compoundDbUser,
+  compoundDbPass = compoundDbPass,
+  weights = weights,
+  summaryOutput = summaryOutput
+)
 if (summaryOutput) {
   write.table(summary_output,
-              file.path(opt$outdir, "combined_annotations.tsv"),
-              sep = "\t", row.names = FALSE)
+    file.path(opt$outdir, "combined_annotations.tsv"),
+    sep = "\t", row.names = FALSE
+  )
 }
 
 write.table(summary_output,
-            file.path(opt$outdir, "combined_annotations.tsv"),
-            sep = "\t", row.names = FALSE)
+  file.path(opt$outdir, "combined_annotations.tsv"),
+  sep = "\t", row.names = FALSE
+)
 
 closeAllConnections()
--- a/createDatabase.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/createDatabase.R	Wed Jun 12 16:08:23 2024 +0000
@@ -6,7 +6,6 @@
 print("CREATING DATABASE")
 
 xset_pa_filename_fix <- function(opt, pa, xset) {
-
   if (!is.null(opt$mzML_files) && !is.null(opt$galaxy_names)) {
     # NOTE: Relies on the pa@fileList having the names of files given as 'names' of the variables
     # needs to be done due to Galaxy moving the files around and screwing up any links to files
@@ -18,7 +17,7 @@
     galaxy_names <- galaxy_names[galaxy_names != ""]
 
     nsave <- names(pa@fileList)
-    old_filenames  <- basename(pa@fileList)
+    old_filenames <- basename(pa@fileList)
     pa@fileList <- filepaths[match(names(pa@fileList), galaxy_names)]
     names(pa@fileList) <- nsave
 
@@ -27,12 +26,12 @@
   }
 
 
- if (!all(basename(pa@fileList) == basename(xset@filepaths))) {
+  if (!all(basename(pa@fileList) == basename(xset@filepaths))) {
     if (!all(names(pa@fileList) == basename(xset@filepaths))) {
-       print("FILELISTS DO NOT MATCH")
-       message("FILELISTS DO NOT MATCH")
-       quit(status = 1)
-    }else{
+      print("FILELISTS DO NOT MATCH")
+      message("FILELISTS DO NOT MATCH")
+      quit(status = 1)
+    } else {
       xset@filepaths <- unname(pa@fileList)
     }
   }
@@ -64,22 +63,23 @@
 print(opt)
 
 loadRData <- function(rdata_path, name) {
-#loads an RData file, and returns the named xset object if it is there
-    load(rdata_path)
-    return(get(ls()[ls() %in% name]))
+  # loads an RData file, and returns the named xset object if it is there
+  load(rdata_path)
+  return(get(ls()[ls() %in% name]))
 }
 
 getxcmsSetObject <- function(xobject) {
-    # XCMS 1.x
-    if (class(xobject) == "xcmsSet")
-        return(xobject)
-    # XCMS 3.x
-    if (class(xobject) == "XCMSnExp") {
-        # Get the legacy xcmsSet object
-        suppressWarnings(xset <- as(xobject, "xcmsSet"))
-        xcms::sampclass(xset) <- xset@phenoData$sample_group
-        return(xset)
-    }
+  # XCMS 1.x
+  if (class(xobject) == "xcmsSet") {
+    return(xobject)
+  }
+  # XCMS 3.x
+  if (class(xobject) == "XCMSnExp") {
+    # Get the legacy xcmsSet object
+    suppressWarnings(xset <- as(xobject, "xcmsSet"))
+    xcms::sampclass(xset) <- xset@phenoData$sample_group
+    return(xset)
+  }
 }
 
 
@@ -96,19 +96,17 @@
 # Missing list element causes failures (should be updated
 # in msPurity R package for future releases)
 if (!exists("allfrag", where = pa@filter_frag_params)) {
-    pa@filter_frag_params$allfrag <- FALSE
+  pa@filter_frag_params$allfrag <- FALSE
 }
 
 if (opt$xcms_camera_option == "xcms") {
-
   xset <- loadRData(opt$xset, c("xset", "xdata"))
   xset <- getxcmsSetObject(xset)
   fix <- xset_pa_filename_fix(opt, pa, xset)
   pa <- fix[[1]]
   xset <- fix[[2]]
   xa <- NULL
-}else{
-
+} else {
   xa <- loadRData(opt$xset, "xa")
   fix <- xset_pa_filename_fix(opt, pa, xa@xcmsSet)
   pa <- fix[[1]]
@@ -119,16 +117,16 @@
 
 if (is.null(opt$grpPeaklist)) {
   grpPeaklist <- NA
-}else{
+} else {
   grpPeaklist <- opt$grpPeaklist
 }
 
 dbPth <- msPurity::createDatabase(pa,
-                                   xset = xset,
-                                   xsa = xa,
-                                   outDir = opt$outDir,
-                                   grpPeaklist = grpPeaklist,
-                                   dbName = "createDatabase_output.sqlite"
+  xset = xset,
+  xsa = xa,
+  outDir = opt$outDir,
+  grpPeaklist = grpPeaklist,
+  dbName = "createDatabase_output.sqlite"
 )
 
 
@@ -136,9 +134,8 @@
 
 
 if (!is.null(opt$eic)) {
-
   if (is.null(xset)) {
-      xset <- xa@xcmsSet
+    xset <- xa@xcmsSet
   }
   # previous check should have matched filelists together
   xset@filepaths <- unname(pa@fileList)
@@ -150,19 +147,19 @@
     x$rtmin_raw <- xset@rt$raw[[sid]][match(x$rtmin, xset@rt$corrected[[sid]])]
     x$rtmax_raw <- xset@rt$raw[[sid]][match(x$rtmax, xset@rt$corrected[[sid]])]
     return(x)
-
   }
 
   xset@peaks <- as.matrix(
-    plyr::ddply(data.frame(xset@peaks), ~ sample, convert2Raw, xset = xset))
+    plyr::ddply(data.frame(xset@peaks), ~sample, convert2Raw, xset = xset)
+  )
 
   # Saves the EICS into the previously created database
   px <- msPurity::purityX(xset,
-                          saveEIC = TRUE,
-                          cores = 1,
-                          sqlitePth = dbPth,
-                          rtrawColumns = TRUE)
-
+    saveEIC = TRUE,
+    cores = 1,
+    sqlitePth = dbPth,
+    rtrawColumns = TRUE
+  )
 }
 
 closeAllConnections()
--- a/createMSP.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/createMSP.R	Wed Jun 12 16:08:23 2024 +0000
@@ -26,59 +26,58 @@
 
 if (is.null(opt$metadata)) {
   metadata <- NULL
-}else{
-  metadata <- read.table(opt$metadata,  header = TRUE, sep = "\t",
-                         stringsAsFactors = FALSE, check.names = FALSE)
+} else {
+  metadata <- read.table(opt$metadata,
+    header = TRUE, sep = "\t",
+    stringsAsFactors = FALSE, check.names = FALSE
+  )
 
   if (!opt$metadata_cols_filter == "") {
-     metadata_cols_filter <- strsplit(opt$metadata_cols_filter, ",")[[1]]
+    metadata_cols_filter <- strsplit(opt$metadata_cols_filter, ",")[[1]]
 
-     metadata <- metadata[, metadata_cols_filter, drop = FALSE]
-     print(metadata)
+    metadata <- metadata[, metadata_cols_filter, drop = FALSE]
+    print(metadata)
 
-     if (!"grpid" %in% colnames(metadata)) {
-       metadata$grpid <- seq_len(nrow(metadata))
-     }
+    if (!"grpid" %in% colnames(metadata)) {
+      metadata$grpid <- seq_len(nrow(metadata))
+    }
 
-     print(metadata)
-
+    print(metadata)
   }
-
 }
 
 
 
 if (is.null(opt$metadata_cols) || opt$metadata_cols == "") {
-    metadata_cols <- NULL
-}else{
-    metadata_cols <- opt$metadata_cols
-
+  metadata_cols <- NULL
+} else {
+  metadata_cols <- opt$metadata_cols
 }
 
 
 if (is.null(opt$adduct_split)) {
   adduct_split <- FALSE
-}else{
+} else {
   adduct_split <- TRUE
 }
 
 if (is.null(opt$xcms_groupids)) {
   xcms_groupids <- NULL
-}else{
+} else {
   xcms_groupids <- trimws(strsplit(opt$xcms_groupids, ",")[[1]])
 }
 
 
 if (is.null(opt$include_adducts_custom)) {
   include_adducts_custom <- ""
-}else{
+} else {
   include_adducts_custom <- opt$include_adducts_custom
 }
 
 
 if (opt$include_adducts == "None") {
   include_adducts <- ""
-}else{
+} else {
   include_adducts <- opt$include_adducts
 }
 
@@ -96,22 +95,23 @@
 
 if (is.null(opt$filter)) {
   filter <- FALSE
-}else{
+} else {
   filter <- TRUE
 }
 
 
 
 msPurity::createMSP(pa,
-                    msp_file_pth = file.path(opt$out_dir, "lcmsms_spectra.msp"),
-                    metadata = metadata,
-                    metadata_cols = metadata_cols,
-                    method = opt$method,
-                    adduct_split = adduct_split,
-                    xcms_groupids = xcms_groupids,
-                    filter = filter,
-                    intensity_ra = opt$intensity_ra,
-                    include_adducts = include_adducts_all,
-                    msp_schema = opt$msp_schema)
+  msp_file_pth = file.path(opt$out_dir, "lcmsms_spectra.msp"),
+  metadata = metadata,
+  metadata_cols = metadata_cols,
+  method = opt$method,
+  adduct_split = adduct_split,
+  xcms_groupids = xcms_groupids,
+  filter = filter,
+  intensity_ra = opt$intensity_ra,
+  include_adducts = include_adducts_all,
+  msp_schema = opt$msp_schema
+)
 
-print("msp created")
+print("msp created")
\ No newline at end of file
--- a/dimsPredictPuritySingle.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/dimsPredictPuritySingle.R	Wed Jun 12 16:08:23 2024 +0000
@@ -3,23 +3,23 @@
 print(sessionInfo())
 
 option_list <- list(
-  make_option(c("--mzML_file"), type = "character"),
-  make_option(c("--mzML_files"), type = "character"),
-  make_option(c("--mzML_filename"), type = "character", default = ""),
-  make_option(c("--mzML_galaxy_names"), type = "character", default = ""),
-  make_option(c("--peaks_file"), type = "character"),
-  make_option(c("-o", "--out_dir"), type = "character"),
-  make_option("--minoffset", default = 0.5),
-  make_option("--maxoffset", default = 0.5),
-  make_option("--ilim", default = 0.05),
-  make_option("--ppm", default = 4),
-  make_option("--dimspy", action = "store_true"),
-  make_option("--sim", action = "store_true"),
-  make_option("--remove_nas", action = "store_true"),
-  make_option("--iwNorm", default = "none", type = "character"),
-  make_option("--file_num_dimspy", default = 1),
-  make_option("--exclude_isotopes", action = "store_true"),
-  make_option("--isotope_matrix", type = "character")
+    make_option(c("--mzML_file"), type = "character"),
+    make_option(c("--mzML_files"), type = "character"),
+    make_option(c("--mzML_filename"), type = "character", default = ""),
+    make_option(c("--mzML_galaxy_names"), type = "character", default = ""),
+    make_option(c("--peaks_file"), type = "character"),
+    make_option(c("-o", "--out_dir"), type = "character"),
+    make_option("--minoffset", default = 0.5),
+    make_option("--maxoffset", default = 0.5),
+    make_option("--ilim", default = 0.05),
+    make_option("--ppm", default = 4),
+    make_option("--dimspy", action = "store_true"),
+    make_option("--sim", action = "store_true"),
+    make_option("--remove_nas", action = "store_true"),
+    make_option("--iwNorm", default = "none", type = "character"),
+    make_option("--file_num_dimspy", default = 1),
+    make_option("--exclude_isotopes", action = "store_true"),
+    make_option("--isotope_matrix", type = "character")
 )
 
 # store options
@@ -43,7 +43,7 @@
     galaxy_names <- str_to_vec(galaxy_names)
     if (mzML_filename %in% galaxy_names) {
         return(mzML_files[galaxy_names == mzML_filename])
-    }else{
+    } else {
         stop(paste("mzML file not found - ", mzML_filename))
     }
 }
@@ -53,15 +53,18 @@
     df <- read.table(opt$peaks_file, header = TRUE, sep = "\t")
     if (file.exists(opt$mzML_file)) {
         mzML_file <- opt$mzML_file
-    }else if (!is.null(opt$mzML_files)) {
-        mzML_file <- find_mzml_file(opt$mzML_files, opt$mzML_galaxy_names,
-                                    opt$mzML_filename)
-    }else{
+    } else if (!is.null(opt$mzML_files)) {
+        mzML_file <- find_mzml_file(
+            opt$mzML_files, opt$mzML_galaxy_names,
+            opt$mzML_filename
+        )
+    } else {
         mzML_file <- file.path(opt$mzML_file, filename)
     }
-}else{
+} else {
     indf <- read.table(opt$peaks_file,
-                       header = TRUE, sep = "\t", stringsAsFactors = FALSE)
+        header = TRUE, sep = "\t", stringsAsFactors = FALSE
+    )
 
     filename <- colnames(indf)[8:ncol(indf)][opt$file_num_dimspy]
     print(filename)
@@ -75,9 +78,9 @@
 
     if (file.exists(opt$mzML_file)) {
         mzML_file <- opt$mzML_file
-    }else if (!is.null(opt$mzML_files)) {
+    } else if (!is.null(opt$mzML_files)) {
         mzML_file <- find_mzml_file(opt$mzML_files, opt$mzML_galaxy_names, filename)
-    }else{
+    } else {
         mzML_file <- file.path(opt$mzML_file, filename)
     }
 
@@ -95,25 +98,26 @@
 }
 
 if (!is.null(opt$remove_nas)) {
-  df <- df[!is.na(df$mz), ]
+    df <- df[!is.na(df$mz), ]
 }
 
 if (is.null(opt$isotope_matrix)) {
     im <- NULL
-}else{
+} else {
     im <- read.table(opt$isotope_matrix,
-                     header = TRUE, sep = "\t", stringsAsFactors = FALSE)
+        header = TRUE, sep = "\t", stringsAsFactors = FALSE
+    )
 }
 
 if (is.null(opt$exclude_isotopes)) {
     isotopes <- FALSE
-}else{
+} else {
     isotopes <- TRUE
 }
 
 if (is.null(opt$sim)) {
     sim <- FALSE
-}else{
+} else {
     sim <- TRUE
 }
 
@@ -123,13 +127,13 @@
 if (opt$iwNorm == "none") {
     iwNorm <- FALSE
     iwNormFun <- NULL
-}else if (opt$iwNorm == "gauss") {
+} else if (opt$iwNorm == "gauss") {
     iwNorm <- TRUE
     iwNormFun <- msPurity::iwNormGauss(minOff = -minOffset, maxOff = maxOffset)
-}else if (opt$iwNorm == "rcosine") {
+} else if (opt$iwNorm == "rcosine") {
     iwNorm <- TRUE
     iwNormFun <- msPurity::iwNormRcosine(minOff = -minOffset, maxOff = maxOffset)
-}else if (opt$iwNorm == "QE5") {
+} else if (opt$iwNorm == "QE5") {
     iwNorm <- TRUE
     iwNormFun <- msPurity::iwNormQE.5()
 }
@@ -138,23 +142,24 @@
 print(head(df))
 print(mzML_file)
 predicted <- msPurity::dimsPredictPuritySingle(df$mz,
-                                     filepth = mzML_file,
-                                     minOffset = minOffset,
-                                     maxOffset = maxOffset,
-                                     ppm = opt$ppm,
-                                     mzML = TRUE,
-                                     sim = sim,
-                                     ilim = opt$ilim,
-                                     isotopes = isotopes,
-                                     im = im,
-                                     iwNorm = iwNorm,
-                                     iwNormFun = iwNormFun
-                                     )
+    filepth = mzML_file,
+    minOffset = minOffset,
+    maxOffset = maxOffset,
+    ppm = opt$ppm,
+    mzML = TRUE,
+    sim = sim,
+    ilim = opt$ilim,
+    isotopes = isotopes,
+    im = im,
+    iwNorm = iwNorm,
+    iwNormFun = iwNormFun
+)
 predicted <- cbind(df, predicted)
 
 print(head(predicted))
 print(file.path(opt$out_dir, "dimsPredictPuritySingle_output.tsv"))
 
 write.table(predicted,
-            file.path(opt$out_dir, "dimsPredictPuritySingle_output.tsv"),
-            row.names = FALSE, sep = "\t")
+    file.path(opt$out_dir, "dimsPredictPuritySingle_output.tsv"),
+    row.names = FALSE, sep = "\t"
+)
--- a/filterFragSpectra.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/filterFragSpectra.R	Wed Jun 12 16:08:23 2024 +0000
@@ -9,13 +9,10 @@
   make_option("--out_peaklist_prec", type = "character"),
   make_option("--out_peaklist_frag", type = "character"),
   make_option("--pa", type = "character"),
-
   make_option("--ilim", default = 0.0),
   make_option("--plim", default = 0.0),
-
   make_option("--ra", default = 0.0),
   make_option("--snr", default = 0.0),
-
   make_option("--rmp", action = "store_true"),
   make_option("--snmeth", default = "median", type = "character"),
   make_option("--allfrag", action = "store_true")
@@ -26,9 +23,9 @@
 
 
 loadRData <- function(rdata_path, name) {
-    #loads an RData file, and returns the named xset object if it is there
-    load(rdata_path)
-    return(get(ls()[ls() %in% name]))
+  # loads an RData file, and returns the named xset object if it is there
+  load(rdata_path)
+  return(get(ls()[ls() %in% name]))
 }
 
 # Requires
@@ -36,24 +33,25 @@
 
 if (is.null(opt$rmp)) {
   opt$rmp <- FALSE
-}else{
+} else {
   opt$rmp <- TRUE
 }
 
 if (is.null(opt$allfrag)) {
   opt$allfrag <- FALSE
-}else{
+} else {
   opt$allfrag <- TRUE
 }
 
 pa <- filterFragSpectra(pa,
-                        ilim = opt$ilim,
-                        plim = opt$plim,
-                        ra = opt$ra,
-                        snr = opt$snr,
-                        rmp = opt$rmp,
-                        allfrag = opt$allfrag,
-                        snmeth = opt$snmeth)
+  ilim = opt$ilim,
+  plim = opt$plim,
+  ra = opt$ra,
+  snr = opt$snr,
+  rmp = opt$rmp,
+  allfrag = opt$allfrag,
+  snmeth = opt$snmeth
+)
 
 print(pa)
 save(pa, file = opt$out_rdata)
@@ -82,11 +80,9 @@
 
 
 if (length(pa) > 0) {
-
   if (length(pa@grped_ms2) == 0) {
     message("No spectra available")
   } else {
-
     # get group ids
     grpids <- unique(as.character(pa@grped_df$grpid))
 
@@ -94,7 +90,7 @@
     df_fragments <- plyr::adply(grpids, 1, msmsgrp, pa = pa)
     df_fragments <- merge(df_fragments, pa@puritydf[, c("pid", "acquisitionNum", "precursorScanNum")], by = "pid")
     df_fragments <- df_fragments[order(df_fragments$grpid, df_fragments$pid, df_fragments$mz), ]
-    #select and reorder columns
+    # select and reorder columns
     df_fragments <- df_fragments[, c("grpid", "pid", "precursorScanNum", "acquisitionNum", "fileid", "mz", "i", "snr", "ra", "purity_pass_flag", "intensity_pass_flag", "ra_pass_flag", "snr_pass_flag", "pass_flag")]
 
     pa@grped_df$filename <- sapply(pa@grped_df$fileid, function(x) names(pa@fileList)[as.integer(x)])
--- a/flagRemove.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/flagRemove.R	Wed Jun 12 16:08:23 2024 +0000
@@ -2,77 +2,93 @@
 library(optparse)
 print(sessionInfo())
 option_list <- list(
-  make_option(c("-o", "--out_dir"), type = "character", default = getwd(),
-              help = "Output folder for resulting files [default = %default]"
-  ),
-  make_option(c("-x", "--xset_path"), type = "character", default = file.path(getwd(), "xset.rds"),
-              help = "The path to the xcmsSet object [default = %default]"
-  ),
-  make_option("--polarity", default = NA,
-              help = "polarity (just used for naming purpose for files being saved) [positive, negative, NA] [default %default]"
-  ),
-  make_option("--rsd_i_blank", default = 100,
-              help = "RSD threshold for the blank [default = %default]"
-  ),
-  make_option("--minfrac_blank", default = 0.5,
-              help = "minimum fraction of files for features needed for the blank [default = %default]"
-  ),
-  make_option("--rsd_rt_blank", default = 100,
-              help = "RSD threshold for the RT of the blank [default = %default]"
-  ),
-
-  make_option("--ithres_blank", default = 0,
-              help = "Intensity threshold for the blank [default = %default]"
-  ),
-  make_option("--s2b", default = 10,
-              help = "fold change (sample/blank) needed for sample peak to be allowed. e.g.
+    make_option(c("-o", "--out_dir"),
+        type = "character", default = getwd(),
+        help = "Output folder for resulting files [default = %default]"
+    ),
+    make_option(c("-x", "--xset_path"),
+        type = "character", default = file.path(getwd(), "xset.rds"),
+        help = "The path to the xcmsSet object [default = %default]"
+    ),
+    make_option("--polarity",
+        default = NA,
+        help = "polarity (just used for naming purpose for files being saved) [positive, negative, NA] [default %default]"
+    ),
+    make_option("--rsd_i_blank",
+        default = 100,
+        help = "RSD threshold for the blank [default = %default]"
+    ),
+    make_option("--minfrac_blank",
+        default = 0.5,
+        help = "minimum fraction of files for features needed for the blank [default = %default]"
+    ),
+    make_option("--rsd_rt_blank",
+        default = 100,
+        help = "RSD threshold for the RT of the blank [default = %default]"
+    ),
+    make_option("--ithres_blank",
+        default = 0,
+        help = "Intensity threshold for the blank [default = %default]"
+    ),
+    make_option("--s2b",
+        default = 10,
+        help = "fold change (sample/blank) needed for sample peak to be allowed. e.g.
                     if s2b set to 10 and the recorded sample 'intensity' value was 100 and blank was 10.
                     1000/10 = 100, so sample has fold change higher than the threshold and the peak
                     is not considered a blank [default = %default]"
-  ),
-  make_option("--blank_class", default = "blank", type = "character",
-              help = "A string representing the class that will be used for the blank.[default = %default]"
-  ),
-  make_option("--egauss_thr", default = NA,
-              help = "Threshold for filtering out non gaussian shaped peaks. Note this only works
+    ),
+    make_option("--blank_class",
+        default = "blank", type = "character",
+        help = "A string representing the class that will be used for the blank.[default = %default]"
+    ),
+    make_option("--egauss_thr",
+        default = NA,
+        help = "Threshold for filtering out non gaussian shaped peaks. Note this only works
                             if the 'verbose columns' and 'fit gauss' was used with xcms
                             [default = %default]"
-  ),
-  make_option("--rsd_i_sample", default = 100,
-              help = "RSD threshold for the samples [default = %default]"
-  ),
-  make_option("--minfrac_sample", default = 0.8,
-              help = "minimum fraction of files for features needed for the samples [default = %default]"
-  ),
-  make_option("--rsd_rt_sample", default = 100,
-              help = "RSD threshold for the RT of the samples [default = %default]"
-  ),
-  make_option("--ithres_sample", default = 5000,
-              help = "Intensity threshold for the sample [default = %default]"
-  ),
-  make_option("--grp_rm_ids", default = NA,
-              help = "vector of grouped_xcms peaks to remove (corresponds to the row from xcms::group output)
+    ),
+    make_option("--rsd_i_sample",
+        default = 100,
+        help = "RSD threshold for the samples [default = %default]"
+    ),
+    make_option("--minfrac_sample",
+        default = 0.8,
+        help = "minimum fraction of files for features needed for the samples [default = %default]"
+    ),
+    make_option("--rsd_rt_sample",
+        default = 100,
+        help = "RSD threshold for the RT of the samples [default = %default]"
+    ),
+    make_option("--ithres_sample",
+        default = 5000,
+        help = "Intensity threshold for the sample [default = %default]"
+    ),
+    make_option("--grp_rm_ids",
+        default = NA,
+        help = "vector of grouped_xcms peaks to remove (corresponds to the row from xcms::group output)
               [default = %default]"
-  ),
-  make_option("--remove_spectra",  action = "store_true",
-              help = "TRUE if flagged spectra is to be removed [default = %default]"
-  ),
-  make_option("--minfrac_xcms", default = 0.5,
-              help = "minfrac for xcms  grouping [default = %default]"
-  ),
-  make_option("--mzwid", default = 0.001,
-              help = "mzwid for xcms  grouping [default = %default]"
-  ),
-  make_option("--bw", default = 5,
-              help = "bw for xcms  grouping [default = %default]"
-  ),
-
-  make_option("--temp_save",  action = "store_true",
-              help = "Assign True if files for each step saved (for testing purposes) [default = %default]"
-  ),
-
-  make_option("--samplelist",  type = "character", help = "Sample list to determine the blank class")
-
+    ),
+    make_option("--remove_spectra",
+        action = "store_true",
+        help = "TRUE if flagged spectra is to be removed [default = %default]"
+    ),
+    make_option("--minfrac_xcms",
+        default = 0.5,
+        help = "minfrac for xcms  grouping [default = %default]"
+    ),
+    make_option("--mzwid",
+        default = 0.001,
+        help = "mzwid for xcms  grouping [default = %default]"
+    ),
+    make_option("--bw",
+        default = 5,
+        help = "bw for xcms  grouping [default = %default]"
+    ),
+    make_option("--temp_save",
+        action = "store_true",
+        help = "Assign True if files for each step saved (for testing purposes) [default = %default]"
+    ),
+    make_option("--samplelist", type = "character", help = "Sample list to determine the blank class")
 )
 
 # nolint start
@@ -88,13 +104,13 @@
 
 if (is.null(opt$temp_save)) {
     temp_save <- FALSE
-}else{
+} else {
     temp_save <- TRUE
 }
 
 if (is.null(opt$remove_spectra)) {
     remove_spectra <- FALSE
-}else{
+} else {
     remove_spectra <- TRUE
 }
 
@@ -103,8 +119,9 @@
 
 getxcmsSetObject <- function(xobject) {
     # XCMS 1.x
-    if (class(xobject) == "xcmsSet")
+    if (class(xobject) == "xcmsSet") {
         return(xobject)
+    }
     # XCMS 3.x
     if (class(xobject) == "XCMSnExp") {
         # Get the legacy xcmsSet object
@@ -116,7 +133,7 @@
 
 
 loadRData <- function(rdata_path, name) {
-#loads an RData file, and returns the named xset object if it is there
+    # loads an RData file, and returns the named xset object if it is there
     load(rdata_path)
     return(get(ls()[ls() %in% name]))
 }
@@ -126,7 +143,7 @@
 print(xset)
 if (is.null(opt$samplelist)) {
     blank_class <- opt$blank_class
-}else{
+} else {
     samplelist <- read.table(opt$samplelist, sep = "\t", header = TRUE)
     samplelist_blank <- unique(samplelist$sample_class[samplelist$blank == "yes"])
 
@@ -142,25 +159,26 @@
 
 if (is.null(opt$multilist)) {
     ffrm_out <- flag_remove(xset,
-                        pol = opt$polarity,
-                        rsd_i_blank = opt$rsd_i_blank,
-                        minfrac_blank = opt$minfrac_blank,
-                        rsd_rt_blank = opt$rsd_rt_blank,
-                        ithres_blank = opt$ithres_blank,
-                        s2b = opt$s2b,
-                        ref.class = blank_class,
-                        egauss_thr = opt$egauss_thr,
-                        rsd_i_sample = opt$rsd_i_sample,
-                        minfrac_sample = opt$minfrac_sample,
-                        rsd_rt_sample = opt$rsd_rt_sample,
-                        ithres_sample = opt$ithres_sample,
-                        minfrac_xcms = opt$minfrac_xcms,
-                        mzwid = opt$mzwid,
-                        bw = opt$bw,
-                        out_dir = opt$out_dir,
-                        temp_save = temp_save,
-                        remove_spectra = remove_spectra,
-                        grp_rm_ids = unlist(strsplit(as.character(opt$grp_rm_ids), split = ", "))[[1]])
+        pol = opt$polarity,
+        rsd_i_blank = opt$rsd_i_blank,
+        minfrac_blank = opt$minfrac_blank,
+        rsd_rt_blank = opt$rsd_rt_blank,
+        ithres_blank = opt$ithres_blank,
+        s2b = opt$s2b,
+        ref.class = blank_class,
+        egauss_thr = opt$egauss_thr,
+        rsd_i_sample = opt$rsd_i_sample,
+        minfrac_sample = opt$minfrac_sample,
+        rsd_rt_sample = opt$rsd_rt_sample,
+        ithres_sample = opt$ithres_sample,
+        minfrac_xcms = opt$minfrac_xcms,
+        mzwid = opt$mzwid,
+        bw = opt$bw,
+        out_dir = opt$out_dir,
+        temp_save = temp_save,
+        remove_spectra = remove_spectra,
+        grp_rm_ids = unlist(strsplit(as.character(opt$grp_rm_ids), split = ", "))[[1]]
+    )
     print("flag remove finished")
     xset <- ffrm_out[[1]]
     grp_peaklist <- ffrm_out[[2]]
@@ -172,26 +190,26 @@
     peak_pth <- file.path(opt$out_dir, "peaklist_filtered.tsv")
     print(peak_pth)
     write.table(data.frame("grpid" = rownames(grp_peaklist), "ID" = rownames(grp_peaklist), grp_peaklist),
-                peak_pth, row.names = FALSE, sep = "\t")
+        peak_pth,
+        row.names = FALSE, sep = "\t"
+    )
 
     removed_peaks <- data.frame(removed_peaks)
     write.table(data.frame("ID" = rownames(removed_peaks), removed_peaks),
-        file.path(opt$out_dir, "removed_peaks.tsv"), row.names = FALSE, sep = "\t")
-
-}else{
-
-   # nolint start
-   # TODO
-   #xsets <- split(xset, multilist_df$multlist)
-   #
-   #mult_grps <- unique(multilist_df$multlist)
-   #
-   #for (mgrp in mult_grps){
-   #   xset_i <- xsets[mgrp]
-   #   xcms::group(xset_i,
-   #
-   # }
-   # nolint end
-
-
+        file.path(opt$out_dir, "removed_peaks.tsv"),
+        row.names = FALSE, sep = "\t"
+    )
+} else {
+    # nolint start
+    # TODO
+    # xsets <- split(xset, multilist_df$multlist)
+    #
+    # mult_grps <- unique(multilist_df$multlist)
+    #
+    # for (mgrp in mult_grps){
+    #   xset_i <- xsets[mgrp]
+    #   xcms::group(xset_i,
+    #
+    # }
+    # nolint end
 }
--- a/frag4feature.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/frag4feature.R	Wed Jun 12 16:08:23 2024 +0000
@@ -3,64 +3,61 @@
 library(xcms)
 print(sessionInfo())
 
-xset_pa_filename_fix <- function(opt, pa, xset=NULL) {
-
+xset_pa_filename_fix <- function(opt, pa, xset = NULL) {
+    if (!is.null(opt$mzML_files) && !is.null(opt$galaxy_names)) {
+        # NOTE: Relies on the pa@fileList having the names of files given as 'names' of the variables
+        # needs to be done due to Galaxy moving the files around and screwing up any links to files
 
-  if (!is.null(opt$mzML_files) && !is.null(opt$galaxy_names)) {
-    # NOTE: Relies on the pa@fileList having the names of files given as 'names' of the variables
-    # needs to be done due to Galaxy moving the files around and screwing up any links to files
+        filepaths <- trimws(strsplit(opt$mzML_files, ",")[[1]]) # nolint
 
-    filepaths <- trimws(strsplit(opt$mzML_files, ",")[[1]]) # nolint
+        filepaths <- filepaths[filepaths != ""]
 
-    filepaths <- filepaths[filepaths != ""]
-
-    galaxy_names <- trimws(strsplit(opt$galaxy_names, ",")[[1]])
-    galaxy_names <- galaxy_names[galaxy_names != ""]
+        galaxy_names <- trimws(strsplit(opt$galaxy_names, ",")[[1]])
+        galaxy_names <- galaxy_names[galaxy_names != ""]
 
-    nsave <- names(pa@fileList)
-    old_filenames  <- basename(pa@fileList)
+        nsave <- names(pa@fileList)
+        old_filenames <- basename(pa@fileList)
 
-    pa@fileList <- filepaths[match(names(pa@fileList), galaxy_names)]
-    names(pa@fileList) <- nsave
+        pa@fileList <- filepaths[match(names(pa@fileList), galaxy_names)]
+        names(pa@fileList) <- nsave
 
-    pa@puritydf$filename <- basename(pa@fileList[match(pa@puritydf$filename, old_filenames)])
-    pa@grped_df$filename <- basename(pa@fileList[match(pa@grped_df$filename, old_filenames)])
-  }
-  print(pa@fileList)
+        pa@puritydf$filename <- basename(pa@fileList[match(pa@puritydf$filename, old_filenames)])
+        pa@grped_df$filename <- basename(pa@fileList[match(pa@grped_df$filename, old_filenames)])
+    }
+    print(pa@fileList)
 
-  if (!is.null(xset)) {
-
-    print(xset@filepaths)
+    if (!is.null(xset)) {
+        print(xset@filepaths)
 
-    if (!all(basename(pa@fileList) == basename(xset@filepaths))) {
-       if (!all(names(pa@fileList) == basename(xset@filepaths))) {
-          print("FILELISTS DO NOT MATCH")
-          message("FILELISTS DO NOT MATCH")
-          quit(status = 1)
-       }else{
-          xset@filepaths <- unname(pa@fileList)
-       }
-   }
- }
+        if (!all(basename(pa@fileList) == basename(xset@filepaths))) {
+            if (!all(names(pa@fileList) == basename(xset@filepaths))) {
+                print("FILELISTS DO NOT MATCH")
+                message("FILELISTS DO NOT MATCH")
+                quit(status = 1)
+            } else {
+                xset@filepaths <- unname(pa@fileList)
+            }
+        }
+    }
 
-  return(list(pa, xset))
+    return(list(pa, xset))
 }
 
 
 option_list <- list(
-  make_option(c("-o", "--out_dir"), type = "character"),
-  make_option("--pa", type = "character"),
-  make_option("--xset", type = "character"),
-  make_option("--ppm", default = 10),
-  make_option("--plim", default = 0.0),
-  make_option("--convert2RawRT", action = "store_true"),
-  make_option("--intense", action = "store_true"),
-  make_option("--createDB", action = "store_true"),
-  make_option("--cores", default = 4),
-  make_option("--mzML_files", type = "character"),
-  make_option("--galaxy_names", type = "character"),
-  make_option("--grp_peaklist", type = "character"),
-  make_option("--useGroup", action = "store_true")
+    make_option(c("-o", "--out_dir"), type = "character"),
+    make_option("--pa", type = "character"),
+    make_option("--xset", type = "character"),
+    make_option("--ppm", default = 10),
+    make_option("--plim", default = 0.0),
+    make_option("--convert2RawRT", action = "store_true"),
+    make_option("--intense", action = "store_true"),
+    make_option("--createDB", action = "store_true"),
+    make_option("--cores", default = 4),
+    make_option("--mzML_files", type = "character"),
+    make_option("--galaxy_names", type = "character"),
+    make_option("--grp_peaklist", type = "character"),
+    make_option("--useGroup", action = "store_true")
 )
 
 # store options
@@ -68,17 +65,18 @@
 print(opt)
 
 loadRData <- function(rdata_path, name) {
-#loads an RData file, and returns the named xset object if it is there
+    # loads an RData file, and returns the named xset object if it is there
     load(rdata_path)
     return(get(ls()[ls() %in% name]))
 }
 
 # This function retrieve a xset like object
-#@author Gildas Le Corguille lecorguille@sb-roscoff.fr
+# @author Gildas Le Corguille lecorguille@sb-roscoff.fr
 getxcmsSetObject <- function(xobject) {
     # XCMS 1.x
-    if (class(xobject) == "xcmsSet")
+    if (class(xobject) == "xcmsSet") {
         return(xobject)
+    }
     # XCMS 3.x
     if (class(xobject) == "XCMSnExp") {
         # Get the legacy xcmsSet object
@@ -99,20 +97,20 @@
 print(xset@filepaths)
 
 if (is.null(opt$intense)) {
-  intense <- FALSE
-}else{
-  intense <- TRUE
+    intense <- FALSE
+} else {
+    intense <- TRUE
 }
 
 if (is.null(opt$convert2RawRT)) {
     convert2RawRT <- FALSE
-}else{
+} else {
     convert2RawRT <- TRUE
 }
 
 if (is.null(opt$createDB)) {
     createDB <- FALSE
-}else{
+} else {
     createDB <- TRUE
 }
 
@@ -121,7 +119,7 @@
     pa <- fix[[1]]
     xset <- fix[[2]]
     useGroup <- FALSE
-}else{
+} else {
     # if are only aligning to the group not eah file we do not need to align the files between the xset and pa object
     print("useGroup")
     fix <- xset_pa_filename_fix(opt, pa)
@@ -132,22 +130,24 @@
 
 if (is.null(opt$grp_peaklist)) {
     grp_peaklist <- NA
-}else{
+} else {
     grp_peaklist <- opt$grp_peaklist
 }
 print(useGroup)
 
-pa <- msPurity::frag4feature(pa = pa,
-                             xset = xset,
-                             ppm = opt$ppm,
-                             plim = opt$plim,
-                             intense = intense,
-                             convert2RawRT = convert2RawRT,
-                             db_name = "alldata.sqlite",
-                             out_dir = opt$out_dir,
-                             grp_peaklist = grp_peaklist,
-                             create_db = createDB,
-                             use_group = useGroup)
+pa <- msPurity::frag4feature(
+    pa = pa,
+    xset = xset,
+    ppm = opt$ppm,
+    plim = opt$plim,
+    intense = intense,
+    convert2RawRT = convert2RawRT,
+    db_name = "alldata.sqlite",
+    out_dir = opt$out_dir,
+    grp_peaklist = grp_peaklist,
+    create_db = createDB,
+    use_group = useGroup
+)
 print(pa)
 save(pa, file = file.path(opt$out_dir, "frag4feature_output.RData"))
 
--- a/macros.xml	Tue Feb 08 14:04:07 2022 +0000
+++ b/macros.xml	Wed Jun 12 16:08:23 2024 +0000
@@ -1,14 +1,14 @@
 <?xml version="1.0"?>
 <macros>
     <token name="@TOOL_VERSION@">1.16.2</token>
-    <token name="@GALAXY_TOOL_VERSION@">1</token>
+    <token name="@GALAXY_TOOL_VERSION@">2</token>
 
     <xml name="requirements">
         <requirements>
            <requirement type="package" version="@TOOL_VERSION@" >bioconductor-mspurity</requirement>
            <requirement type="package" version="1.46.0" >bioconductor-camera</requirement>
            <requirement type="package" version="3.12.0" >bioconductor-xcms</requirement>
-           <requirement type="package" version="1.16.0" >bioconductor-mspuritydata</requirement>
+           <requirement type="package" version="1.18.0" >bioconductor-mspuritydata</requirement>
            <requirement type="package" version="1.6.6">r-optparse</requirement>
            <requirement type="package" version="1.3.1">r-rpostgres</requirement>
            <requirement type="package" version="0.10.21">r-rmysql</requirement>
--- a/purityA.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/purityA.R	Wed Jun 12 16:08:23 2024 +0000
@@ -3,20 +3,20 @@
 print(sessionInfo())
 
 option_list <- list(
-  make_option(c("-o", "--out_dir"), type = "character"),
-  make_option("--mzML_files", type = "character"),
-  make_option("--galaxy_names", type = "character"),
-  make_option("--minOffset", type = "numeric"),
-  make_option("--maxOffset", type = "numeric"),
-  make_option("--ilim", type = "numeric"),
-  make_option("--iwNorm", default = "none", type = "character"),
-  make_option("--exclude_isotopes", action = "store_true"),
-  make_option("--isotope_matrix", type = "character"),
-  make_option("--mostIntense", action = "store_true"),
-  make_option("--plotP", action = "store_true"),
-  make_option("--nearest", action = "store_true"),
-  make_option("--cores", default = 4),
-  make_option("--ppmInterp", default = 7)
+    make_option(c("-o", "--out_dir"), type = "character"),
+    make_option("--mzML_files", type = "character"),
+    make_option("--galaxy_names", type = "character"),
+    make_option("--minOffset", type = "numeric"),
+    make_option("--maxOffset", type = "numeric"),
+    make_option("--ilim", type = "numeric"),
+    make_option("--iwNorm", default = "none", type = "character"),
+    make_option("--exclude_isotopes", action = "store_true"),
+    make_option("--isotope_matrix", type = "character"),
+    make_option("--mostIntense", action = "store_true"),
+    make_option("--plotP", action = "store_true"),
+    make_option("--nearest", action = "store_true"),
+    make_option("--cores", default = 4),
+    make_option("--ppmInterp", default = 7)
 )
 
 opt <- parse_args(OptionParser(option_list = option_list))
@@ -25,23 +25,27 @@
 if (opt$iwNorm == "none") {
     iwNorm <- FALSE
     iwNormFun <- NULL
-}else if (opt$iwNorm == "gauss") {
+} else if (opt$iwNorm == "gauss") {
     iwNorm <- TRUE
     if (is.null(opt$minOffset) || is.null(opt$maxOffset)) {
-      print("User has to define offsets if using Gaussian normalisation")
-    }else{
-      iwNormFun <- msPurity::iwNormGauss(minOff = -as.numeric(opt$minOffset),
-                                         maxOff = as.numeric(opt$maxOffset))
+        print("User has to define offsets if using Gaussian normalisation")
+    } else {
+        iwNormFun <- msPurity::iwNormGauss(
+            minOff = -as.numeric(opt$minOffset),
+            maxOff = as.numeric(opt$maxOffset)
+        )
     }
-}else if (opt$iwNorm == "rcosine") {
+} else if (opt$iwNorm == "rcosine") {
     iwNorm <- TRUE
     if (is.null(opt$minOffset) || is.null(opt$maxOffset)) {
-      print("User has to define offsets if using R-cosine normalisation")
-    }else{
-      iwNormFun <- msPurity::iwNormRcosine(minOff = -as.numeric(opt$minOffset),
-                                           maxOff = as.numeric(opt$maxOffset))
+        print("User has to define offsets if using R-cosine normalisation")
+    } else {
+        iwNormFun <- msPurity::iwNormRcosine(
+            minOff = -as.numeric(opt$minOffset),
+            maxOff = as.numeric(opt$maxOffset)
+        )
     }
-}else if (opt$iwNorm == "QE5") {
+} else if (opt$iwNorm == "QE5") {
     iwNorm <- TRUE
     iwNormFun <- msPurity::iwNormQE.5()
 }
@@ -53,27 +57,27 @@
 
 if (is.null(opt$minOffset) || is.null(opt$maxOffset)) {
     offsets <- NA
-}else{
+} else {
     offsets <- as.numeric(c(opt$minOffset, opt$maxOffset))
 }
 
 
 if (is.null(opt$mostIntense)) {
     mostIntense <- FALSE
-}else{
+} else {
     mostIntense <- TRUE
 }
 
 if (is.null(opt$nearest)) {
     nearest <- FALSE
-}else{
+} else {
     nearest <- TRUE
 }
 
 if (is.null(opt$plotP)) {
     plotP <- FALSE
     plotdir <- NULL
-}else{
+} else {
     plotP <- TRUE
     plotdir <- opt$out_dir
 }
@@ -81,32 +85,34 @@
 
 if (is.null(opt$isotope_matrix)) {
     im <- NULL
-}else{
+} else {
     im <- read.table(opt$isotope_matrix,
-                     header = TRUE, sep = "\t", stringsAsFactors = FALSE)
+        header = TRUE, sep = "\t", stringsAsFactors = FALSE
+    )
 }
 
 if (is.null(opt$exclude_isotopes)) {
     isotopes <- FALSE
-}else{
+} else {
     isotopes <- TRUE
 }
 
 pa <- msPurity::purityA(filepaths,
-                        cores = opt$cores,
-                        mostIntense = mostIntense,
-                        nearest = nearest,
-                        offsets = offsets,
-                        plotP = plotP,
-                        plotdir = plotdir,
-                        interpol = "linear",
-                        iwNorm = iwNorm,
-                        iwNormFun = iwNormFun,
-                        ilim = opt$ilim,
-                        mzRback = "pwiz",
-                        isotopes = isotopes,
-                        im = im,
-                        ppmInterp = opt$ppmInterp)
+    cores = opt$cores,
+    mostIntense = mostIntense,
+    nearest = nearest,
+    offsets = offsets,
+    plotP = plotP,
+    plotdir = plotdir,
+    interpol = "linear",
+    iwNorm = iwNorm,
+    iwNormFun = iwNormFun,
+    ilim = opt$ilim,
+    mzRback = "pwiz",
+    isotopes = isotopes,
+    im = im,
+    ppmInterp = opt$ppmInterp
+)
 
 
 if (!is.null(opt$galaxy_names)) {
--- a/purityX.R	Tue Feb 08 14:04:07 2022 +0000
+++ b/purityX.R	Wed Jun 12 16:08:23 2024 +0000
@@ -22,7 +22,7 @@
   make_option("--galaxy_files", type = "character"),
   make_option("--choose_class", type = "character"),
   make_option("--ignore_files", type = "character"),
-  make_option("--rtraw_columns",  action = "store_true")
+  make_option("--rtraw_columns", action = "store_true")
 )
 
 
@@ -31,9 +31,9 @@
 
 
 if (!is.null(opt$xgroups)) {
-    xgroups <- as.numeric(strsplit(opt$xgroups, ",")[[1]])
-}else{
-    xgroups <- NULL
+  xgroups <- as.numeric(strsplit(opt$xgroups, ",")[[1]])
+} else {
+  xgroups <- NULL
 }
 
 
@@ -44,55 +44,75 @@
 }
 
 if (is.null(opt$isotope_matrix)) {
-    im <- NULL
-}else{
-    im <- read.table(opt$isotope_matrix,
-                     header = TRUE, sep = "\t", stringsAsFactors = FALSE)
+  im <- NULL
+} else {
+  im <- read.table(opt$isotope_matrix,
+    header = TRUE, sep = "\t", stringsAsFactors = FALSE
+  )
 }
 
 if (is.null(opt$exclude_isotopes)) {
-    isotopes <- FALSE
-}else{
-    isotopes <- TRUE
+  isotopes <- FALSE
+} else {
+  isotopes <- TRUE
 }
 
 if (is.null(opt$rtraw_columns)) {
-    rtraw_columns <- FALSE
-}else{
-    rtraw_columns <- TRUE
+  rtraw_columns <- FALSE
+} else {
+  rtraw_columns <- TRUE
 }
 
 loadRData <- function(rdata_path, xset_name) {
-#loads an RData file, and returns the named xset object if it is there
-    load(rdata_path)
-    return(get(ls()[ls() == xset_name]))
+  # loads an RData file, and returns the named xset object if it is there
+  load(rdata_path)
+  return(get(ls()[ls() == xset_name]))
+}
+
+
+
+
+getxcmsSetObject <- function(xobject) {
+  # XCMS 1.x
+  if (class(xobject) == "xcmsSet") {
+    return(xobject)
+  }
+  # XCMS 3.x
+  if (class(xobject) == "XCMSnExp") {
+    # Get the legacy xcmsSet object
+    suppressWarnings(xset <- as(xobject, "xcmsSet"))
+    sampclass(xset) <- xset@phenoData$sample_group
+    return(xset)
+  }
 }
 
 target_obj <- loadRData(opt$xset_path, opt$rdata_name)
 
 if (opt$camera_xcms == "camera") {
-    xset <- target_obj@xcmsSet
-}else{
-    xset <- target_obj
+  xset <- target_obj@xcmsSet
+} else {
+  xset <- target_obj
 }
 
+xset <- getxcmsSetObject(xset)
+
 print(xset)
 
 minOffset <- as.numeric(opt$minOffset)
 maxOffset <- as.numeric(opt$maxOffset)
 
 if (opt$iwNorm == "none") {
-    iwNorm <- FALSE
-    iwNormFun <- NULL
-}else if (opt$iwNorm == "gauss") {
-    iwNorm <- TRUE
-    iwNormFun <- msPurity::iwNormGauss(minOff = -minOffset, maxOff = maxOffset)
-}else if (opt$iwNorm == "rcosine") {
-    iwNorm <- TRUE
-    iwNormFun <- msPurity::iwNormRcosine(minOff = -minOffset, maxOff = maxOffset)
-}else if (opt$iwNorm == "QE5") {
-    iwNorm <- TRUE
-    iwNormFun <- msPurity::iwNormQE.5()
+  iwNorm <- FALSE
+  iwNormFun <- NULL
+} else if (opt$iwNorm == "gauss") {
+  iwNorm <- TRUE
+  iwNormFun <- msPurity::iwNormGauss(minOff = -minOffset, maxOff = maxOffset)
+} else if (opt$iwNorm == "rcosine") {
+  iwNorm <- TRUE
+  iwNormFun <- msPurity::iwNormRcosine(minOff = -minOffset, maxOff = maxOffset)
+} else if (opt$iwNorm == "QE5") {
+  iwNorm <- TRUE
+  iwNormFun <- msPurity::iwNormQE.5()
 }
 
 print(xset@filepaths)
@@ -105,13 +125,13 @@
   original_filenames <- basename(xset@filepaths)
   update_idx <- match(updated_filenames, original_filenames)
 
-    if (!is.null(opt$galaxy_files)) {
-        galaxy_files <- trimws(strsplit(opt$galaxy_files, ",")[[1]])
-        galaxy_files <- galaxy_files[galaxy_files != ""]
-        xset@filepaths <- galaxy_files[update_idx]
-    }else{
-        xset@filepaths <- updated_filepaths[update_idx]
-    }
+  if (!is.null(opt$galaxy_files)) {
+    galaxy_files <- trimws(strsplit(opt$galaxy_files, ",")[[1]])
+    galaxy_files <- galaxy_files[galaxy_files != ""]
+    xset@filepaths <- galaxy_files[update_idx]
+  } else {
+    xset@filepaths <- updated_filepaths[update_idx]
+  }
 }
 
 if (!is.null(opt$choose_class)) {
@@ -121,7 +141,7 @@
 
   print("choose class")
   print(ignore_files_class)
-}else{
+} else {
   ignore_files_class <- NA
 }
 
@@ -132,37 +152,40 @@
 
   ignore_files <- unique(c(ignore_files, ignore_files_class))
   ignore_files <- ignore_files[ignore_files != ""]
-}else{
+} else {
   if (anyNA(ignore_files_class)) {
     ignore_files <- NULL
-  }else{
+  } else {
     ignore_files <- ignore_files_class
   }
-
 }
 
 print("ignore_files")
 print(ignore_files)
 
 
-ppLCMS <- msPurity::purityX(xset = xset,
-                            offsets = c(minOffset, maxOffset),
-                            cores = opt$cores,
-                            xgroups = xgroups,
-                            purityType = opt$purityType,
-                            ilim = opt$ilim,
-                            isotopes = isotopes,
-                            im = im,
-                            iwNorm = iwNorm,
-                            iwNormFun = iwNormFun,
-                            singleFile = opt$singleFile,
-                            fileignore = ignore_files,
-                            rtrawColumns = rtraw_columns)
+ppLCMS <- msPurity::purityX(
+  xset = xset,
+  offsets = c(minOffset, maxOffset),
+  cores = opt$cores,
+  xgroups = xgroups,
+  purityType = opt$purityType,
+  ilim = opt$ilim,
+  isotopes = isotopes,
+  im = im,
+  iwNorm = iwNorm,
+  iwNormFun = iwNormFun,
+  singleFile = opt$singleFile,
+  fileignore = ignore_files,
+  rtrawColumns = rtraw_columns
+)
 
 dfp <- ppLCMS@predictions
 
 # to make compatable with deconrank
-colnames(dfp)[colnames(dfp) == "grpid"] <- "peakID"
+# (keep grpid for other compatibility)
+dfp <- data.frame("peakID"=dfp$grpid, dfp)
+
 colnames(dfp)[colnames(dfp) == "median"] <- "medianPurity"
 colnames(dfp)[colnames(dfp) == "mean"] <- "meanPurity"
 colnames(dfp)[colnames(dfp) == "sd"] <- "sdPurity"
Binary file test-data/combineAnnotations_combined_annotations.sqlite has changed
--- a/test-data/combineAnnotations_combined_annotations.tsv	Tue Feb 08 14:04:07 2022 +0000
+++ b/test-data/combineAnnotations_combined_annotations.tsv	Wed Jun 12 16:08:23 2024 +0000
@@ -1,102 +1,106 @@
 "grpid"	"grp_name"	"mz"	"rt"	"inchikey"	"inchi"	"inchikey"	"inchikey1"	"inchikey2"	"inchikey3"	"name"	"exact_mass"	"molecular_formula"	"pubchem_cids"	"kegg_cids"	"kegg_brite"	"kegg_drugs"	"hmdb_ids"	"hmdb_bio_custom_flag"	"hmdb_drug_flag"	"biosim_max_count"	"biosim_hmdb_ids"	"fragmentation_acquistion_num"	"mean_precursor_ion_purity"	"accession"	"sirius_score"	"sirius_wscore"	"metfrag_score"	"metfrag_wscore"	"sm_score"	"sm_wscore"	"probmetab_score"	"probmetab_wscore"	"ms1_lookup_score"	"ms1_lookup_wscore"	"biosim_max_score"	"biosim_wscore"	"wscore"	"rank"	"adduct_overall"
 12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UHFFFAOYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)"	"ONIBWKKTOPOVIA-UHFFFAOYSA-N"	"ONIBWKKTOPOVIA"	"UHFFFAOYSA"	"N"	"DL-Proline"	115.063328534	"C5H9NO2"	"614,25246272"	"C16435"	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	"CCMSLIB00000577898"	"1.0"	0.2	0.9	0.18	0.87867085623127	0.263601256869381	0	0	0	0	1	0.25	0.893601256869381	1	"[M+H]+,M+H"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-AZXPZELESA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4+1"	"ONIBWKKTOPOVIA-AZXPZELESA-N"	"ONIBWKKTOPOVIA"	"AZXPZELESA"	"N"	""	116.066683369	"C5H9NO2"	"10290769"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-N"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"N"	"L-Pro"	115.063328534	"C5H9NO2"	"145742,6971047"	"C00148"	"Compounds with biological roles [BR:br08001]"	"D00035"	"HMDB0000162"	"True"	"False"	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GIZBTRSZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+2,2+2,3+2,4+2,5+2"	"ONIBWKKTOPOVIA-GIZBTRSZSA-N"	"ONIBWKKTOPOVIA"	"GIZBTRSZSA"	"N"	"L-PROLINE, [U-14C]"	125.0795385	"C5H9NO2"	"12210869"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GTTLGWSSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,4+1,6+1/t1?,4-"	"ONIBWKKTOPOVIA-GTTLGWSSSA-N"	"ONIBWKKTOPOVIA"	"GTTLGWSSSA"	"N"	"SCHEMBL16945363"	119.07334984	"C5H9NO2"	"118264374"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-HOSYLAQJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5+1"	"ONIBWKKTOPOVIA-HOSYLAQJSA-N"	"ONIBWKKTOPOVIA"	"HOSYLAQJSA"	"N"	"DL-Proline-1-13C"	116.066683369	"C5H9NO2"	"59340910"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IDEBNGHGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-IDEBNGHGSA-N"	"ONIBWKKTOPOVIA"	"IDEBNGHGSA"	"N"	"SCHEMBL18875607"	121.0771376	"C5H9NO2"	"129148531"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IXBOUXNVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i4+1"	"ONIBWKKTOPOVIA-IXBOUXNVSA-N"	"ONIBWKKTOPOVIA"	"IXBOUXNVSA"	"N"	""	116.066683369	"C5H9NO2"	"100915807"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JGTYJTGKSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i6+1"	"ONIBWKKTOPOVIA-JGTYJTGKSA-N"	"ONIBWKKTOPOVIA"	"JGTYJTGKSA"	"N"	"L-Proline-15N"	116.06036343	"C5H9NO2"	"71310239"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JRGPAWSWSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1,2+1,3+1,4+1,5+1"	"ONIBWKKTOPOVIA-JRGPAWSWSA-N"	"ONIBWKKTOPOVIA"	"JRGPAWSWSA"	"N"	"L-Proline-13C5"	120.08010271	"C5H9NO2"	"71309553"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-LCBCNYHZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i4+1"	"ONIBWKKTOPOVIA-LCBCNYHZSA-N"	"ONIBWKKTOPOVIA"	"LCBCNYHZSA"	"N"	""	116.066683369	"C5H9NO2"	"76973027"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OUBTZVSYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1"	"ONIBWKKTOPOVIA-OUBTZVSYSA-N"	"ONIBWKKTOPOVIA"	"OUBTZVSYSA"	"N"	"DL-Proline-4-13C"	116.066683369	"C5H9NO2"	"16217530"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OZJLVGIFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-OZJLVGIFSA-N"	"ONIBWKKTOPOVIA"	"OZJLVGIFSA"	"N"	""	118.0670731	"C5H9NO2"	"16054089"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PEPZRWDSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-PEPZRWDSSA-N"	"ONIBWKKTOPOVIA"	"PEPZRWDSSA"	"N"	""	118.0670731	"C5H9NO2"	"10701817"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PMCDIQQISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1T/t1?,4-"	"ONIBWKKTOPOVIA-PMCDIQQISA-N"	"ONIBWKKTOPOVIA"	"PMCDIQQISA"	"N"	""	117.072	"C5H9NO2"	"101592209"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PTQBSOBMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i6+1"	"ONIBWKKTOPOVIA-PTQBSOBMSA-N"	"ONIBWKKTOPOVIA"	"PTQBSOBMSA"	"N"	"SCHEMBL10141185"	116.06036343	"C5H9NO2"	"59340908"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QRTGCQPVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i5+2"	"ONIBWKKTOPOVIA-QRTGCQPVSA-N"	"ONIBWKKTOPOVIA"	"QRTGCQPVSA"	"N"	"SCHEMBL3091437"	117.06657052	"C5H9NO2"	"12210872"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-RHRFEJLCSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5+2"	"ONIBWKKTOPOVIA-RHRFEJLCSA-N"	"ONIBWKKTOPOVIA"	"RHRFEJLCSA"	"N"	"L-Proline-UL-14C hydrochloride, >=98% (Radiochemical Purity, HPLC), aqueous ethanol solution"	117.06657052	"C5H9NO2"	"16219853"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-N"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"N"	"(2R)-pyrrolidin-1-ium-2-carboxylate"	115.063	"C5H9NO2"	"8988,6971012"	"C00763"	"Compounds with biological roles [BR:br08001]"	""	"HMDB0003411"	"True"	"False"	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SETFFETJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2+1,5+1"	"ONIBWKKTOPOVIA-SETFFETJSA-N"	"ONIBWKKTOPOVIA"	"SETFFETJSA"	"N"	""	117.0700382	"C5H9NO2"	"44557099"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SFIIULIVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5-1"	"ONIBWKKTOPOVIA-SFIIULIVSA-N"	"ONIBWKKTOPOVIA"	"SFIIULIVSA"	"N"	"AC1L9P11"	114.0747611	"C5H9NO2"	"450588"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-TXZHAAMZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i5+1"	"ONIBWKKTOPOVIA-TXZHAAMZSA-N"	"ONIBWKKTOPOVIA"	"TXZHAAMZSA"	"N"	"L-Proline-1-13C"	116.066683369	"C5H9NO2"	"16217408"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VMGGCIAMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-VMGGCIAMSA-N"	"ONIBWKKTOPOVIA"	"VMGGCIAMSA"	"N"	"SCHEMBL18875489"	118.0670731	"C5H9NO2"	"129148415"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VNFUZYCESA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i5+1"	"ONIBWKKTOPOVIA-VNFUZYCESA-N"	"ONIBWKKTOPOVIA"	"VNFUZYCESA"	"N"	"D-Proline-1-13C"	116.066683369	"C5H9NO2"	"71309447"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WAPLMMNXSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-WAPLMMNXSA-N"	"ONIBWKKTOPOVIA"	"WAPLMMNXSA"	"N"	"D-Proline-13C5,15N"	121.0771376	"C5H9NO2"	"71751801"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WGGUOBTBSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i7+2"	"ONIBWKKTOPOVIA-WGGUOBTBSA-N"	"ONIBWKKTOPOVIA"	"WGGUOBTBSA"	"N"	""	117.06757353	"C5H9NO2"	"58083591,123600984"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-XAFSXMPTSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-XAFSXMPTSA-N"	"ONIBWKKTOPOVIA"	"XAFSXMPTSA"	"N"	"L-Proline-13C5,15N"	121.0771376	"C5H9NO2"	"71310238"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	2	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-O"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"O"	""	116.071153566	"C5H10NO2+"	"5460775,68326741,135040994"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-ITEPJMEFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D/t3-,4+/m1"	"ONIBWKKTOPOVIA-ITEPJMEFSA-N"	"ONIBWKKTOPOVIA"	"ITEPJMEFSA"	"N"	""	116.06960528	"C5H9NO2"	"10630463"	""	""	""	""	""	""	32	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KRGXXEMVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D/t2?,4-"	"ONIBWKKTOPOVIA-KRGXXEMVSA-N"	"ONIBWKKTOPOVIA"	"KRGXXEMVSA"	"N"	""	116.07	"C5H9NO2"	"25240454"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OFHXNXSMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D/t2-,4-"	"ONIBWKKTOPOVIA-OFHXNXSMSA-N"	"ONIBWKKTOPOVIA"	"OFHXNXSMSA"	"N"	""	116.06960528	"C5H9NO2"	"10855425"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QOOYSLLASA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D/t3?,4-"	"ONIBWKKTOPOVIA-QOOYSLLASA-N"	"ONIBWKKTOPOVIA"	"QOOYSLLASA"	"N"	""	116.07	"C5H9NO2"	"42621034"	""	""	""	""	""	""	32	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QYKNYGDISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4D"	"ONIBWKKTOPOVIA-QYKNYGDISA-N"	"ONIBWKKTOPOVIA"	"QYKNYGDISA"	"N"	"DL-Proline-2-d1"	116.06960528	"C5H9NO2"	"59340909"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UHFFFAOYSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1"	"ONIBWKKTOPOVIA-UHFFFAOYSA-O"	"ONIBWKKTOPOVIA"	"UHFFFAOYSA"	"O"	"SCHEMBL20723608"	116.071153566	"C5H10NO2+"	"5231966,77479960"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	3	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GDYNRSRVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1T,2T/t1?,2?,4-"	"ONIBWKKTOPOVIA-GDYNRSRVSA-N"	"ONIBWKKTOPOVIA"	"GDYNRSRVSA"	"N"	"3,4-bistritioproline"	119.079777033	"C5H9NO2"	"12210873"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-HRCSTIOUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/t2-,4+/m1"	"ONIBWKKTOPOVIA-HRCSTIOUSA-N"	"ONIBWKKTOPOVIA"	"HRCSTIOUSA"	"N"	""	117.075882026	"C5H9NO2"	"11499207"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JQZHSJCGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2T,4T/t2?,4-"	"ONIBWKKTOPOVIA-JQZHSJCGSA-N"	"ONIBWKKTOPOVIA"	"JQZHSJCGSA"	"N"	""	119.079777033	"C5H9NO2"	"12210870"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PEPZRWDSSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m0/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-PEPZRWDSSA-O"	"ONIBWKKTOPOVIA"	"PEPZRWDSSA"	"O"	""	119.07489813	"C5H10NO2+"	"10701816"	""	""	""	""	""	""	27	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QDNHWIQGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D,2D"	"ONIBWKKTOPOVIA-QDNHWIQGSA-N"	"ONIBWKKTOPOVIA"	"QDNHWIQGSA"	"N"	"SCHEMBL11723704"	117.075882026	"C5H9NO2"	"88822950"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-RVQWGROCSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1T,2T"	"ONIBWKKTOPOVIA-RVQWGROCSA-N"	"ONIBWKKTOPOVIA"	"RVQWGROCSA"	"N"	"SCHEMBL11719819"	119.079777033	"C5H9NO2"	"88822544"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-O"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"O"	"D-prolinium"	116.071153566	"C5H10NO2+"	"5460772"	""	""	""	""	""	""	27	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SRVZCWNMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/t2?,4-"	"ONIBWKKTOPOVIA-SRVZCWNMSA-N"	"ONIBWKKTOPOVIA"	"SRVZCWNMSA"	"N"	""	117.076	"C5H9NO2"	"25240677"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WRHOHBQNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D/t1?,2?,4-"	"ONIBWKKTOPOVIA-WRHOHBQNSA-N"	"ONIBWKKTOPOVIA"	"WRHOHBQNSA"	"N"	"SCHEMBL11723699"	117.076	"C5H9NO2"	"12210862"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	4	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DGLZGNQDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1-,2+,3-,4+/m1"	"ONIBWKKTOPOVIA-DGLZGNQDSA-N"	"ONIBWKKTOPOVIA"	"DGLZGNQDSA"	"N"	""	118.082158771	"C5H9NO2"	"11051626"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FMMSUUDPSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D2"	"ONIBWKKTOPOVIA-FMMSUUDPSA-N"	"ONIBWKKTOPOVIA"	"FMMSUUDPSA"	"N"	"3,3-dideuteroproline"	117.075882026	"C5H9NO2"	"102187625"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KIZNEYSQSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D2,4D"	"ONIBWKKTOPOVIA-KIZNEYSQSA-N"	"ONIBWKKTOPOVIA"	"KIZNEYSQSA"	"N"	"L-Proline-2,5,5-d3"	118.082158771	"C5H9NO2"	"89872831"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-LTDLRDEHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i3D2,4D"	"ONIBWKKTOPOVIA-LTDLRDEHSA-N"	"ONIBWKKTOPOVIA"	"LTDLRDEHSA"	"N"	"L-Proline-2,5,5-d3, 98 atom % D, 97%"	118.082158771	"C5H9NO2"	"124202871"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OHMILCFJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1-,2+,3+,4+/m1"	"ONIBWKKTOPOVIA-OHMILCFJSA-N"	"ONIBWKKTOPOVIA"	"OHMILCFJSA"	"N"	""	118.082158771	"C5H9NO2"	"25241136"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PPHVBSBQSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3+1D2"	"ONIBWKKTOPOVIA-PPHVBSBQSA-N"	"ONIBWKKTOPOVIA"	"PPHVBSBQSA"	"N"	""	118.079236861	"C5H9NO2"	"101255034"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VSDVZINISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1?,2?,3?,4-"	"ONIBWKKTOPOVIA-VSDVZINISA-N"	"ONIBWKKTOPOVIA"	"VSDVZINISA"	"N"	""	118.082	"C5H9NO2"	"25240827"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	5	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DYCDLGHISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i/hD"	"ONIBWKKTOPOVIA-DYCDLGHISA-N"	"ONIBWKKTOPOVIA"	"DYCDLGHISA"	"N"	"SCHEMBL2756286"	116.06960528	"C5H9NO2"	"87431337"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	6	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FQXRHUMFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i/hD"	"ONIBWKKTOPOVIA-FQXRHUMFSA-N"	"ONIBWKKTOPOVIA"	"FQXRHUMFSA"	"N"	"deutero-d-proline"	116.06960528	"C5H9NO2"	"129689560"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	6	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FVSUZMELSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hT"	"ONIBWKKTOPOVIA-FVSUZMELSA-N"	"ONIBWKKTOPOVIA"	"FVSUZMELSA"	"N"	""	117.071552784	"C5H9NO2"	"54159348"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	6	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-YZRVCBOHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hD"	"ONIBWKKTOPOVIA-YZRVCBOHSA-N"	"ONIBWKKTOPOVIA"	"YZRVCBOHSA"	"N"	"deuteroproline"	116.06960528	"C5H9NO2"	"12210865"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	6	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-M"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"M"	"L-prolinate"	114.055503502	"C5H8NO2-"	"5460776"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	7	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-M"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"M"	"(2R)-pyrrolidine-2-carboxylate"	114.055503502	"C5H8NO2-"	"5460773"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	7	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UHFFFAOYSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1"	"ONIBWKKTOPOVIA-UHFFFAOYSA-M"	"ONIBWKKTOPOVIA"	"UHFFFAOYSA"	"M"	"pyrrolidine-2-carboxylate"	114.055503502	"C5H8NO2-"	"5460770"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	7	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BFEYZEMLSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-BFEYZEMLSA-N"	"ONIBWKKTOPOVIA"	"BFEYZEMLSA"	"N"	""	122.107265755	"C5H9NO2"	"102351655"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BQNZLWMBSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/hD/t2?,4-"	"ONIBWKKTOPOVIA-BQNZLWMBSA-N"	"ONIBWKKTOPOVIA"	"BQNZLWMBSA"	"N"	"d3-proline"	118.082158771	"C5H9NO2"	"134818146"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BWEKNVLDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1D2,2+1D2,3+1D2,4+1D,5+1,6+1"	"ONIBWKKTOPOVIA-BWEKNVLDSA-N"	"ONIBWKKTOPOVIA"	"BWEKNVLDSA"	"N"	"SCHEMBL18875490"	128.12107483	"C5H9NO2"	"129148416"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DHWWSWJHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D2,2+1D2,3+1D2,4+1D,5+1"	"ONIBWKKTOPOVIA-DHWWSWJHSA-N"	"ONIBWKKTOPOVIA"	"DHWWSWJHSA"	"N"	""	127.12403993	"C5H9NO2"	"101520009"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IJDGHPMYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D,3D/t2?,3?,4-"	"ONIBWKKTOPOVIA-IJDGHPMYSA-N"	"ONIBWKKTOPOVIA"	"IJDGHPMYSA"	"N"	""	119.088435517	"C5H9NO2"	"57616909"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JUYFNQAYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hTD"	"ONIBWKKTOPOVIA-JUYFNQAYSA-N"	"ONIBWKKTOPOVIA"	"JUYFNQAYSA"	"N"	"SCHEMBL13117730"	118.077829529	"C5H9NO2"	"59539825"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KICNZHNUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hD2"	"ONIBWKKTOPOVIA-KICNZHNUSA-N"	"ONIBWKKTOPOVIA"	"KICNZHNUSA"	"N"	""	117.075882026	"C5H9NO2"	"102018542"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OHXCBXKRSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D,3D/t2-,3+,4-"	"ONIBWKKTOPOVIA-OHXCBXKRSA-N"	"ONIBWKKTOPOVIA"	"OHXCBXKRSA"	"N"	"SCHEMBL12305730"	119.088435517	"C5H9NO2"	"88901888"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OXZJVQSUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D2,2+1D2,3+1D2,4+1D,5+1,6+1"	"ONIBWKKTOPOVIA-OXZJVQSUSA-N"	"ONIBWKKTOPOVIA"	"OXZJVQSUSA"	"N"	"L-Proline-13C5,15N,2,3,3,4,4,5,5-d7, 98 atom % D, 98 atom % 15N, 99 atom % 13C, 95% (CP)"	128.12107483	"C5H9NO2"	"124202790"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OYYOGNGZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D2,3D2/t1-,4-"	"ONIBWKKTOPOVIA-OYYOGNGZSA-N"	"ONIBWKKTOPOVIA"	"OYYOGNGZSA"	"N"	"SCHEMBL16945378"	120.094712263	"C5H9NO2"	"118264386"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PJDIGCCDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-PJDIGCCDSA-N"	"ONIBWKKTOPOVIA"	"PJDIGCCDSA"	"N"	""	122.107265755	"C5H9NO2"	"76974064"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QQTTXZKSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+0D2,2+1D,3+1D,4+1,5+1,6+1/t2-,3+,4-"	"ONIBWKKTOPOVIA-QQTTXZKSSA-N"	"ONIBWKKTOPOVIA"	"QQTTXZKSSA"	"N"	"SCHEMBL12305746"	124.09888975	"C5H9NO2"	"88901902"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QSBWZAQZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+0D2,2+1D,3+1D,4+1,5+1,6+1/t2?,3?,4-"	"ONIBWKKTOPOVIA-QSBWZAQZSA-N"	"ONIBWKKTOPOVIA"	"QSBWZAQZSA"	"N"	""	124.099	"C5H9NO2"	"57616916"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SLJODTCNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D2/t1-,2+,4+/m1"	"ONIBWKKTOPOVIA-SLJODTCNSA-N"	"ONIBWKKTOPOVIA"	"SLJODTCNSA"	"N"	"SCHEMBL12305738"	119.088435517	"C5H9NO2"	"88901895"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UBBKNGMPSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D2/t1?,2?,4-"	"ONIBWKKTOPOVIA-UBBKNGMPSA-N"	"ONIBWKKTOPOVIA"	"UBBKNGMPSA"	"N"	""	119.088435517	"C5H9NO2"	"57616954"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VNEWRNQKSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-VNEWRNQKSA-N"	"ONIBWKKTOPOVIA"	"VNEWRNQKSA"	"N"	""	122.107265755	"C5H9NO2"	"122164811"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-XQRIOMIJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,2+1D,3+1D2,4+1,5+1,6+1/t1?,2-,4-"	"ONIBWKKTOPOVIA-XQRIOMIJSA-N"	"ONIBWKKTOPOVIA"	"XQRIOMIJSA"	"N"	"SCHEMBL12305778"	125.10224459	"C5H9NO2"	"88901909"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-ZYXKZDFDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,2+1D,3+1D2,4+1,5+1,6+1/t1?,2?,4-"	"ONIBWKKTOPOVIA-ZYXKZDFDSA-N"	"ONIBWKKTOPOVIA"	"ZYXKZDFDSA"	"N"	""	125.102	"C5H9NO2"	"57616951"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	8	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"IAZDPXIOMUYVGZ-UHFFFAOYSA-N"	"InChI=1S/C2H6OS/c1-4(2)3/h1-2H3"	"IAZDPXIOMUYVGZ-UHFFFAOYSA-N"	"IAZDPXIOMUYVGZ"	"UHFFFAOYSA"	"N"	"dimethyl sulfoxide"	78.01393599	"C2H6OS"	"679"	"C11143"	"Anatomical Therapeutic Chemical (ATC) classification [BR:br08303]"	"D01043"	"HMDB0002151"	"True"	"True"	2	"HMDB0002151"	"277,343,409,410"	0.99	NA	"0"	0	0.8	0.16	0	0	0	0	0	0	1	0.25	0.41	9	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BBKVAIMGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D2,2D2,3D,4D/hD"	"ONIBWKKTOPOVIA-BBKVAIMGSA-N"	"ONIBWKKTOPOVIA"	"BBKVAIMGSA"	"N"	""	122.107	"C5H9NO2"	"131698612"	""	""	""	""	""	""	17	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.7778	0.19445	0.39445	10	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-YIKKUXJFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D2,3D,4D/hD/t3?,4-"	"ONIBWKKTOPOVIA-YIKKUXJFSA-N"	"ONIBWKKTOPOVIA"	"YIKKUXJFSA"	"N"	"d7-proline"	122.107265755	"C5H9NO2"	"129844038"	""	""	""	""	""	""	17	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.7778	0.19445	0.39445	10	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"DHMQDGOQFOQNFH-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c3-1-2(4)5/h1,3H2,(H,4,5)"	"DHMQDGOQFOQNFH-UHFFFAOYSA-N"	"DHMQDGOQFOQNFH"	"UHFFFAOYSA"	"N"	"2-azaniumylacetate"	75.032	"C2H5NO2"	"750,5257127"	"C00037"	"Compounds with biological roles [BR:br08001]"	"D00011"	"HMDB0000123"	"True"	"False"	7	"HMDB0000123"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"HNJBEVLQSNELDL-UHFFFAOYSA-N"	"InChI=1S/C4H7NO/c6-4-2-1-3-5-4/h1-3H2,(H,5,6)"	"HNJBEVLQSNELDL-UHFFFAOYSA-N"	"HNJBEVLQSNELDL"	"UHFFFAOYSA"	"N"	"2-Pyrrolidinone"	85.05276385	"C4H7NO"	"12025"	""	""	""	"HMDB0002039"	"True"	"False"	2	"HMDB0002039"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"QQZWEECEMNQSTG-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c1-2-5-3-4/h2H2,1H3"	"QQZWEECEMNQSTG-UHFFFAOYSA-N"	"QQZWEECEMNQSTG"	"UHFFFAOYSA"	"N"	"ETHYL NITRITE"	75.032028405	"C2H5NO2"	"8026"	""	""	""	"HMDB0031239"	"True"	"False"	2	"HMDB0031239"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-CNRUNOGKSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1T"	"RWRDLPDLKQPQOW-CNRUNOGKSA-N"	"RWRDLPDLKQPQOW"	"CNRUNOGKSA"	"N"	""	73.081723544	"C4H9N"	"18440991"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-LBPDFUHNSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3+1"	"RWRDLPDLKQPQOW-LBPDFUHNSA-N"	"RWRDLPDLKQPQOW"	"LBPDFUHNSA"	"N"	""	72.077	"C4H9N"	"11062297"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-MICDWDOJSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D"	"RWRDLPDLKQPQOW-MICDWDOJSA-N"	"RWRDLPDLKQPQOW"	"MICDWDOJSA"	"N"	""	72.08	"C4H9N"	"12196046"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-UHFFFAOYSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2"	"RWRDLPDLKQPQOW-UHFFFAOYSA-N"	"RWRDLPDLKQPQOW"	"UHFFFAOYSA"	"N"	"PYRROLIDINE"	71.073499295	"C4H9N"	"31268"	""	""	""	"HMDB0031641"	"True"	"False"	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-YZRHJBSPSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3+2"	"RWRDLPDLKQPQOW-YZRHJBSPSA-N"	"RWRDLPDLKQPQOW"	"YZRHJBSPSA"	"N"	""	73.077	"C4H9N"	"53660610"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	11	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-UHFFFAOYSA-O"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/p+1"	"RWRDLPDLKQPQOW-UHFFFAOYSA-O"	"RWRDLPDLKQPQOW"	"UHFFFAOYSA"	"O"	""	72.081324327	"C4H10N+"	"3613359,20463768"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9524	0.2381	0.2381	12	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-WFVSFCRTSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D"	"RWRDLPDLKQPQOW-WFVSFCRTSA-N"	"RWRDLPDLKQPQOW"	"WFVSFCRTSA"	"N"	""	72.07977604	"C4H9N"	"91312985"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9524	0.2381	0.2381	12	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-DICFDUPASA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2"	"RWRDLPDLKQPQOW-DICFDUPASA-N"	"RWRDLPDLKQPQOW"	"DICFDUPASA"	"N"	""	73.086052786	"C4H9N"	"57608708"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9091	0.227275	0.227275	13	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-DYCDLGHISA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i/hD"	"RWRDLPDLKQPQOW-DYCDLGHISA-N"	"RWRDLPDLKQPQOW"	"DYCDLGHISA"	"N"	"N-deuteropyrrolidine"	72.07977604	"C4H9N"	"12196050"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	14	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-KHORGVISSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D2,4D2"	"RWRDLPDLKQPQOW-KHORGVISSA-N"	"RWRDLPDLKQPQOW"	"KHORGVISSA"	"N"	"ACM42403258"	75.098606278	"C4H9N"	"12196049"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	14	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-MNYXATJNSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i/hT"	"RWRDLPDLKQPQOW-MNYXATJNSA-N"	"RWRDLPDLKQPQOW"	"MNYXATJNSA"	"N"	""	73.081723544	"C4H9N"	"57750053"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	14	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-SMZGMGDZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D2"	"RWRDLPDLKQPQOW-SMZGMGDZSA-N"	"RWRDLPDLKQPQOW"	"SMZGMGDZSA"	"N"	""	73.086052786	"C4H9N"	"57608710"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	14	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-LNLMKGTHSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2"	"RWRDLPDLKQPQOW-LNLMKGTHSA-N"	"RWRDLPDLKQPQOW"	"LNLMKGTHSA"	"N"	""	75.098606278	"C4H9N"	"57608709"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8333	0.208325	0.208325	15	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-QAOQSSEZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D,3D2"	"RWRDLPDLKQPQOW-QAOQSSEZSA-N"	"RWRDLPDLKQPQOW"	"QAOQSSEZSA"	"N"	""	74.092329532	"C4H9N"	"90927493"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8	0.2	0.2	16	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-SVYQBANQSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D2,4D2"	"RWRDLPDLKQPQOW-SVYQBANQSA-N"	"RWRDLPDLKQPQOW"	"SVYQBANQSA"	"N"	"Pyrrolidine-2,2,3,3,4,4,5,5-d8"	79.123713262	"C4H9N"	"12196044"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8	0.2	0.2	16	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-HJOWPTDZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D,4D2/hD"	"RWRDLPDLKQPQOW-HJOWPTDZSA-N"	"RWRDLPDLKQPQOW"	"HJOWPTDZSA"	"N"	"pyrrolidine-d8"	79.123713262	"C4H9N"	"129715569"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.7143	0.178575	0.178575	17	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-KLRAWXKOSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D2,4D2/hD"	"RWRDLPDLKQPQOW-KLRAWXKOSA-N"	"RWRDLPDLKQPQOW"	"KLRAWXKOSA"	"N"	""	80.12999001	"C4H9N"	"60135501"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.7143	0.178575	0.178575	17	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"MWFMGBPGAXYFAR-UHFFFAOYSA-N"	"InChI=1S/C4H7NO/c1-4(2,6)3-5/h6H,1-2H3"	"MWFMGBPGAXYFAR-UHFFFAOYSA-N"	"MWFMGBPGAXYFAR"	"UHFFFAOYSA"	"N"	"ACETONE CYANOHYDRIN"	85.05276385	"C4H7NO"	"6406"	"C02659"	""	""	"HMDB0060427"	"False"	"False"	0	"HMDB0031456"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	0.6923	0.173075	0.173075	18	"[M+H]+"
-12	"M116T48"	116.070597631071	47.7346706134597	"RRUDCFGSUDOHDG-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c1-2(4)3-5/h5H,1H3,(H,3,4)"	"RRUDCFGSUDOHDG-UHFFFAOYSA-N"	"RRUDCFGSUDOHDG"	"UHFFFAOYSA"	"N"	"acetohydroxamic acid"	75.032028405	"C2H5NO2"	"1990"	"C06808"	"Anatomical Therapeutic Chemical (ATC) classification [BR:br08303]"	"D00220"	"HMDB0014691"	"False"	"True"	0	"HMDB0003338"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	0.5455	0.136375	0.136375	19	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-N"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"N"	"L-Pro"	115.063328534	"C5H9NO2"	"145742,6971047"	"C00148"	"Compounds with biological roles [BR:br08001]"	"D00035"	"HMDB0000162"	"True"	"False"	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	1	0.05	1	0.25	0.5	2	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-N"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"N"	"(2R)-pyrrolidin-1-ium-2-carboxylate"	115.063	"C5H9NO2"	"8988,6971012"	"C00763"	"Compounds with biological roles [BR:br08001]"	""	"HMDB0003411"	"True"	"False"	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	1	0.05	1	0.25	0.5	2	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-AZXPZELESA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4+1"	"ONIBWKKTOPOVIA-AZXPZELESA-N"	"ONIBWKKTOPOVIA"	"AZXPZELESA"	"N"	""	116.066683369	"C5H9NO2"	"10290769"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GIZBTRSZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+2,2+2,3+2,4+2,5+2"	"ONIBWKKTOPOVIA-GIZBTRSZSA-N"	"ONIBWKKTOPOVIA"	"GIZBTRSZSA"	"N"	"L-PROLINE, [U-14C]"	125.0795385	"C5H9NO2"	"12210869"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GTTLGWSSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,4+1,6+1/t1?,4-"	"ONIBWKKTOPOVIA-GTTLGWSSSA-N"	"ONIBWKKTOPOVIA"	"GTTLGWSSSA"	"N"	"SCHEMBL16945363"	119.07334984	"C5H9NO2"	"118264374"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-HOSYLAQJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5+1"	"ONIBWKKTOPOVIA-HOSYLAQJSA-N"	"ONIBWKKTOPOVIA"	"HOSYLAQJSA"	"N"	"DL-Proline-1-13C"	116.066683369	"C5H9NO2"	"59340910"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IDEBNGHGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-IDEBNGHGSA-N"	"ONIBWKKTOPOVIA"	"IDEBNGHGSA"	"N"	"SCHEMBL18875607"	121.0771376	"C5H9NO2"	"129148531"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IXBOUXNVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i4+1"	"ONIBWKKTOPOVIA-IXBOUXNVSA-N"	"ONIBWKKTOPOVIA"	"IXBOUXNVSA"	"N"	""	116.066683369	"C5H9NO2"	"100915807"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JGTYJTGKSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i6+1"	"ONIBWKKTOPOVIA-JGTYJTGKSA-N"	"ONIBWKKTOPOVIA"	"JGTYJTGKSA"	"N"	"L-Proline-15N"	116.06036343	"C5H9NO2"	"71310239"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JRGPAWSWSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1,2+1,3+1,4+1,5+1"	"ONIBWKKTOPOVIA-JRGPAWSWSA-N"	"ONIBWKKTOPOVIA"	"JRGPAWSWSA"	"N"	"L-Proline-13C5"	120.08010271	"C5H9NO2"	"71309553"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-LCBCNYHZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i4+1"	"ONIBWKKTOPOVIA-LCBCNYHZSA-N"	"ONIBWKKTOPOVIA"	"LCBCNYHZSA"	"N"	""	116.066683369	"C5H9NO2"	"76973027"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OUBTZVSYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1"	"ONIBWKKTOPOVIA-OUBTZVSYSA-N"	"ONIBWKKTOPOVIA"	"OUBTZVSYSA"	"N"	"DL-Proline-4-13C"	116.066683369	"C5H9NO2"	"16217530"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OZJLVGIFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-OZJLVGIFSA-N"	"ONIBWKKTOPOVIA"	"OZJLVGIFSA"	"N"	""	118.0670731	"C5H9NO2"	"16054089"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PEPZRWDSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-PEPZRWDSSA-N"	"ONIBWKKTOPOVIA"	"PEPZRWDSSA"	"N"	""	118.0670731	"C5H9NO2"	"10701817"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PMCDIQQISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1T/t1?,4-"	"ONIBWKKTOPOVIA-PMCDIQQISA-N"	"ONIBWKKTOPOVIA"	"PMCDIQQISA"	"N"	""	117.072	"C5H9NO2"	"101592209"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PTQBSOBMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i6+1"	"ONIBWKKTOPOVIA-PTQBSOBMSA-N"	"ONIBWKKTOPOVIA"	"PTQBSOBMSA"	"N"	"SCHEMBL10141185"	116.06036343	"C5H9NO2"	"59340908"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QRTGCQPVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i5+2"	"ONIBWKKTOPOVIA-QRTGCQPVSA-N"	"ONIBWKKTOPOVIA"	"QRTGCQPVSA"	"N"	"SCHEMBL3091437"	117.06657052	"C5H9NO2"	"12210872"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-RHRFEJLCSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5+2"	"ONIBWKKTOPOVIA-RHRFEJLCSA-N"	"ONIBWKKTOPOVIA"	"RHRFEJLCSA"	"N"	"L-Proline-UL-14C hydrochloride, >=98% (Radiochemical Purity, HPLC), aqueous ethanol solution"	117.06657052	"C5H9NO2"	"16219853"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SETFFETJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2+1,5+1"	"ONIBWKKTOPOVIA-SETFFETJSA-N"	"ONIBWKKTOPOVIA"	"SETFFETJSA"	"N"	""	117.0700382	"C5H9NO2"	"44557099"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SFIIULIVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5-1"	"ONIBWKKTOPOVIA-SFIIULIVSA-N"	"ONIBWKKTOPOVIA"	"SFIIULIVSA"	"N"	"AC1L9P11"	114.0747611	"C5H9NO2"	"450588"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-TXZHAAMZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i5+1"	"ONIBWKKTOPOVIA-TXZHAAMZSA-N"	"ONIBWKKTOPOVIA"	"TXZHAAMZSA"	"N"	"L-Proline-1-13C"	116.066683369	"C5H9NO2"	"16217408"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VMGGCIAMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-VMGGCIAMSA-N"	"ONIBWKKTOPOVIA"	"VMGGCIAMSA"	"N"	"SCHEMBL18875489"	118.0670731	"C5H9NO2"	"129148415"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VNFUZYCESA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i5+1"	"ONIBWKKTOPOVIA-VNFUZYCESA-N"	"ONIBWKKTOPOVIA"	"VNFUZYCESA"	"N"	"D-Proline-1-13C"	116.066683369	"C5H9NO2"	"71309447"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WAPLMMNXSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-WAPLMMNXSA-N"	"ONIBWKKTOPOVIA"	"WAPLMMNXSA"	"N"	"D-Proline-13C5,15N"	121.0771376	"C5H9NO2"	"71751801"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WGGUOBTBSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i7+2"	"ONIBWKKTOPOVIA-WGGUOBTBSA-N"	"ONIBWKKTOPOVIA"	"WGGUOBTBSA"	"N"	""	117.06757353	"C5H9NO2"	"58083591,123600984"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-XAFSXMPTSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1,2+1,3+1,4+1,5+1,6+1"	"ONIBWKKTOPOVIA-XAFSXMPTSA-N"	"ONIBWKKTOPOVIA"	"XAFSXMPTSA"	"N"	"L-Proline-13C5,15N"	121.0771376	"C5H9NO2"	"71310238"	""	""	""	""	""	""	33	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	1	0.25	0.45	3	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-O"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"O"	""	116.071153566	"C5H10NO2+"	"5460775,68326741,135040994"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-ITEPJMEFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D/t3-,4+/m1"	"ONIBWKKTOPOVIA-ITEPJMEFSA-N"	"ONIBWKKTOPOVIA"	"ITEPJMEFSA"	"N"	""	116.06960528	"C5H9NO2"	"10630463"	""	""	""	""	""	""	32	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KRGXXEMVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D/t2?,4-"	"ONIBWKKTOPOVIA-KRGXXEMVSA-N"	"ONIBWKKTOPOVIA"	"KRGXXEMVSA"	"N"	""	116.07	"C5H9NO2"	"25240454"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OFHXNXSMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D/t2-,4-"	"ONIBWKKTOPOVIA-OFHXNXSMSA-N"	"ONIBWKKTOPOVIA"	"OFHXNXSMSA"	"N"	""	116.06960528	"C5H9NO2"	"10855425"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QOOYSLLASA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D/t3?,4-"	"ONIBWKKTOPOVIA-QOOYSLLASA-N"	"ONIBWKKTOPOVIA"	"QOOYSLLASA"	"N"	""	116.07	"C5H9NO2"	"42621034"	""	""	""	""	""	""	32	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QYKNYGDISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4D"	"ONIBWKKTOPOVIA-QYKNYGDISA-N"	"ONIBWKKTOPOVIA"	"QYKNYGDISA"	"N"	"DL-Proline-2-d1"	116.06960528	"C5H9NO2"	"59340909"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UHFFFAOYSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1"	"ONIBWKKTOPOVIA-UHFFFAOYSA-O"	"ONIBWKKTOPOVIA"	"UHFFFAOYSA"	"O"	"SCHEMBL20723608"	116.071153566	"C5H10NO2+"	"5231966,77479960"	""	""	""	""	""	""	28	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9655	0.241375	0.441375	4	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-GDYNRSRVSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1T,2T/t1?,2?,4-"	"ONIBWKKTOPOVIA-GDYNRSRVSA-N"	"ONIBWKKTOPOVIA"	"GDYNRSRVSA"	"N"	"3,4-bistritioproline"	119.079777033	"C5H9NO2"	"12210873"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-HRCSTIOUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/t2-,4+/m1"	"ONIBWKKTOPOVIA-HRCSTIOUSA-N"	"ONIBWKKTOPOVIA"	"HRCSTIOUSA"	"N"	""	117.075882026	"C5H9NO2"	"11499207"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JQZHSJCGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2T,4T/t2?,4-"	"ONIBWKKTOPOVIA-JQZHSJCGSA-N"	"ONIBWKKTOPOVIA"	"JQZHSJCGSA"	"N"	""	119.079777033	"C5H9NO2"	"12210870"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PEPZRWDSSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m0/s1/i4+1,5+1,6+1"	"ONIBWKKTOPOVIA-PEPZRWDSSA-O"	"ONIBWKKTOPOVIA"	"PEPZRWDSSA"	"O"	""	119.07489813	"C5H10NO2+"	"10701816"	""	""	""	""	""	""	27	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QDNHWIQGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D,2D"	"ONIBWKKTOPOVIA-QDNHWIQGSA-N"	"ONIBWKKTOPOVIA"	"QDNHWIQGSA"	"N"	"SCHEMBL11723704"	117.075882026	"C5H9NO2"	"88822950"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-RVQWGROCSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1T,2T"	"ONIBWKKTOPOVIA-RVQWGROCSA-N"	"ONIBWKKTOPOVIA"	"RVQWGROCSA"	"N"	"SCHEMBL11719819"	119.079777033	"C5H9NO2"	"88822544"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-O"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p+1/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-O"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"O"	"D-prolinium"	116.071153566	"C5H10NO2+"	"5460772"	""	""	""	""	""	""	27	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SRVZCWNMSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/t2?,4-"	"ONIBWKKTOPOVIA-SRVZCWNMSA-N"	"ONIBWKKTOPOVIA"	"SRVZCWNMSA"	"N"	""	117.076	"C5H9NO2"	"25240677"	""	""	""	""	""	""	20	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-WRHOHBQNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D/t1?,2?,4-"	"ONIBWKKTOPOVIA-WRHOHBQNSA-N"	"ONIBWKKTOPOVIA"	"WRHOHBQNSA"	"N"	"SCHEMBL11723699"	117.076	"C5H9NO2"	"12210862"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9333	0.233325	0.433325	5	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DGLZGNQDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1-,2+,3-,4+/m1"	"ONIBWKKTOPOVIA-DGLZGNQDSA-N"	"ONIBWKKTOPOVIA"	"DGLZGNQDSA"	"N"	""	118.082158771	"C5H9NO2"	"11051626"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FMMSUUDPSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D2"	"ONIBWKKTOPOVIA-FMMSUUDPSA-N"	"ONIBWKKTOPOVIA"	"FMMSUUDPSA"	"N"	"3,3-dideuteroproline"	117.075882026	"C5H9NO2"	"102187625"	""	""	""	""	""	""	23	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KIZNEYSQSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3D2,4D"	"ONIBWKKTOPOVIA-KIZNEYSQSA-N"	"ONIBWKKTOPOVIA"	"KIZNEYSQSA"	"N"	"L-Proline-2,5,5-d3"	118.082158771	"C5H9NO2"	"89872831"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-LTDLRDEHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i3D2,4D"	"ONIBWKKTOPOVIA-LTDLRDEHSA-N"	"ONIBWKKTOPOVIA"	"LTDLRDEHSA"	"N"	"L-Proline-2,5,5-d3, 98 atom % D, 97%"	118.082158771	"C5H9NO2"	"124202871"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OHMILCFJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1-,2+,3+,4+/m1"	"ONIBWKKTOPOVIA-OHMILCFJSA-N"	"ONIBWKKTOPOVIA"	"OHMILCFJSA"	"N"	""	118.082158771	"C5H9NO2"	"25241136"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PPHVBSBQSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i3+1D2"	"ONIBWKKTOPOVIA-PPHVBSBQSA-N"	"ONIBWKKTOPOVIA"	"PPHVBSBQSA"	"N"	""	118.079236861	"C5H9NO2"	"101255034"	""	""	""	""	""	""	25	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VSDVZINISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D/t1?,2?,3?,4-"	"ONIBWKKTOPOVIA-VSDVZINISA-N"	"ONIBWKKTOPOVIA"	"VSDVZINISA"	"N"	""	118.082	"C5H9NO2"	"25240827"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.9032	0.2258	0.4258	6	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DYCDLGHISA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i/hD"	"ONIBWKKTOPOVIA-DYCDLGHISA-N"	"ONIBWKKTOPOVIA"	"DYCDLGHISA"	"N"	"SCHEMBL2756286"	116.06960528	"C5H9NO2"	"87431337"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	7	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FQXRHUMFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i/hD"	"ONIBWKKTOPOVIA-FQXRHUMFSA-N"	"ONIBWKKTOPOVIA"	"FQXRHUMFSA"	"N"	"deutero-d-proline"	116.06960528	"C5H9NO2"	"129689560"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	7	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-FVSUZMELSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hT"	"ONIBWKKTOPOVIA-FVSUZMELSA-N"	"ONIBWKKTOPOVIA"	"FVSUZMELSA"	"N"	""	117.071552784	"C5H9NO2"	"54159348"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	7	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-YZRVCBOHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hD"	"ONIBWKKTOPOVIA-YZRVCBOHSA-N"	"ONIBWKKTOPOVIA"	"YZRVCBOHSA"	"N"	"deuteroproline"	116.06960528	"C5H9NO2"	"12210865"	""	""	""	""	""	""	19	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.875	0.21875	0.41875	7	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BYPYZUCNSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1/t4-/m0/s1"	"ONIBWKKTOPOVIA-BYPYZUCNSA-M"	"ONIBWKKTOPOVIA"	"BYPYZUCNSA"	"M"	"L-prolinate"	114.055503502	"C5H8NO2-"	"5460776"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	8	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SCSAIBSYSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1/t4-/m1/s1"	"ONIBWKKTOPOVIA-SCSAIBSYSA-M"	"ONIBWKKTOPOVIA"	"SCSAIBSYSA"	"M"	"(2R)-pyrrolidine-2-carboxylate"	114.055503502	"C5H8NO2-"	"5460773"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	8	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UHFFFAOYSA-M"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/p-1"	"ONIBWKKTOPOVIA-UHFFFAOYSA-M"	"ONIBWKKTOPOVIA"	"UHFFFAOYSA"	"M"	"pyrrolidine-2-carboxylate"	114.055503502	"C5H8NO2-"	"5460770"	""	""	""	""	""	""	10	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8621	0.215525	0.415525	8	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BFEYZEMLSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-BFEYZEMLSA-N"	"ONIBWKKTOPOVIA"	"BFEYZEMLSA"	"N"	""	122.107265755	"C5H9NO2"	"102351655"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BQNZLWMBSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i2D,4D/hD/t2?,4-"	"ONIBWKKTOPOVIA-BQNZLWMBSA-N"	"ONIBWKKTOPOVIA"	"BQNZLWMBSA"	"N"	"d3-proline"	118.082158771	"C5H9NO2"	"134818146"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BWEKNVLDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1D2,2+1D2,3+1D2,4+1D,5+1,6+1"	"ONIBWKKTOPOVIA-BWEKNVLDSA-N"	"ONIBWKKTOPOVIA"	"BWEKNVLDSA"	"N"	"SCHEMBL18875490"	128.12107483	"C5H9NO2"	"129148416"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-DHWWSWJHSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D2,2+1D2,3+1D2,4+1D,5+1"	"ONIBWKKTOPOVIA-DHWWSWJHSA-N"	"ONIBWKKTOPOVIA"	"DHWWSWJHSA"	"N"	""	127.12403993	"C5H9NO2"	"101520009"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-IJDGHPMYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D,3D/t2?,3?,4-"	"ONIBWKKTOPOVIA-IJDGHPMYSA-N"	"ONIBWKKTOPOVIA"	"IJDGHPMYSA"	"N"	""	119.088435517	"C5H9NO2"	"57616909"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-JUYFNQAYSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hTD"	"ONIBWKKTOPOVIA-JUYFNQAYSA-N"	"ONIBWKKTOPOVIA"	"JUYFNQAYSA"	"N"	"SCHEMBL13117730"	118.077829529	"C5H9NO2"	"59539825"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-KICNZHNUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i/hD2"	"ONIBWKKTOPOVIA-KICNZHNUSA-N"	"ONIBWKKTOPOVIA"	"KICNZHNUSA"	"N"	""	117.075882026	"C5H9NO2"	"102018542"	""	""	""	""	""	""	12	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OHXCBXKRSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D,3D/t2-,3+,4-"	"ONIBWKKTOPOVIA-OHXCBXKRSA-N"	"ONIBWKKTOPOVIA"	"OHXCBXKRSA"	"N"	"SCHEMBL12305730"	119.088435517	"C5H9NO2"	"88901888"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OXZJVQSUSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D2,2+1D2,3+1D2,4+1D,5+1,6+1"	"ONIBWKKTOPOVIA-OXZJVQSUSA-N"	"ONIBWKKTOPOVIA"	"OXZJVQSUSA"	"N"	"L-Proline-13C5,15N,2,3,3,4,4,5,5-d7, 98 atom % D, 98 atom % 15N, 99 atom % 13C, 95% (CP)"	128.12107483	"C5H9NO2"	"124202790"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-OYYOGNGZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D2,3D2/t1-,4-"	"ONIBWKKTOPOVIA-OYYOGNGZSA-N"	"ONIBWKKTOPOVIA"	"OYYOGNGZSA"	"N"	"SCHEMBL16945378"	120.094712263	"C5H9NO2"	"118264386"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-PJDIGCCDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m1/s1/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-PJDIGCCDSA-N"	"ONIBWKKTOPOVIA"	"PJDIGCCDSA"	"N"	""	122.107265755	"C5H9NO2"	"76974064"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QQTTXZKSSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+0D2,2+1D,3+1D,4+1,5+1,6+1/t2-,3+,4-"	"ONIBWKKTOPOVIA-QQTTXZKSSA-N"	"ONIBWKKTOPOVIA"	"QQTTXZKSSA"	"N"	"SCHEMBL12305746"	124.09888975	"C5H9NO2"	"88901902"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-QSBWZAQZSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+0D2,2+1D,3+1D,4+1,5+1,6+1/t2?,3?,4-"	"ONIBWKKTOPOVIA-QSBWZAQZSA-N"	"ONIBWKKTOPOVIA"	"QSBWZAQZSA"	"N"	""	124.099	"C5H9NO2"	"57616916"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-SLJODTCNSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D2/t1-,2+,4+/m1"	"ONIBWKKTOPOVIA-SLJODTCNSA-N"	"ONIBWKKTOPOVIA"	"SLJODTCNSA"	"N"	"SCHEMBL12305738"	119.088435517	"C5H9NO2"	"88901895"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-UBBKNGMPSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D,2D,3D2/t1?,2?,4-"	"ONIBWKKTOPOVIA-UBBKNGMPSA-N"	"ONIBWKKTOPOVIA"	"UBBKNGMPSA"	"N"	""	119.088435517	"C5H9NO2"	"57616954"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-VNEWRNQKSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D2,2D2,3D2,4D"	"ONIBWKKTOPOVIA-VNEWRNQKSA-N"	"ONIBWKKTOPOVIA"	"VNEWRNQKSA"	"N"	""	122.107265755	"C5H9NO2"	"122164811"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-XQRIOMIJSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,2+1D,3+1D2,4+1,5+1,6+1/t1?,2-,4-"	"ONIBWKKTOPOVIA-XQRIOMIJSA-N"	"ONIBWKKTOPOVIA"	"XQRIOMIJSA"	"N"	"SCHEMBL12305778"	125.10224459	"C5H9NO2"	"88901909"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-ZYXKZDFDSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,2+1D,3+1D2,4+1,5+1,6+1/t1?,2?,4-"	"ONIBWKKTOPOVIA-ZYXKZDFDSA-N"	"ONIBWKKTOPOVIA"	"ZYXKZDFDSA"	"N"	""	125.102	"C5H9NO2"	"57616951"	""	""	""	""	""	""	16	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.8485	0.212125	0.412125	9	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"IAZDPXIOMUYVGZ-UHFFFAOYSA-N"	"InChI=1S/C2H6OS/c1-4(2)3/h1-2H3"	"IAZDPXIOMUYVGZ-UHFFFAOYSA-N"	"IAZDPXIOMUYVGZ"	"UHFFFAOYSA"	"N"	"dimethyl sulfoxide"	78.01393599	"C2H6OS"	"679"	"C11143"	"Anatomical Therapeutic Chemical (ATC) classification [BR:br08303]"	"D01043"	"HMDB0002151"	"True"	"True"	2	"HMDB0002151"	"277,343,409,410"	0.99	NA	"0"	0	0.8	0.16	0	0	0	0	0	0	1	0.25	0.41	10	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-BBKVAIMGSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1D2,2D2,3D,4D/hD"	"ONIBWKKTOPOVIA-BBKVAIMGSA-N"	"ONIBWKKTOPOVIA"	"BBKVAIMGSA"	"N"	""	122.107	"C5H9NO2"	"131698612"	""	""	""	""	""	""	17	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.7778	0.19445	0.39445	11	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ONIBWKKTOPOVIA-YIKKUXJFSA-N"	"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1D2,2D2,3D,4D/hD/t3?,4-"	"ONIBWKKTOPOVIA-YIKKUXJFSA-N"	"ONIBWKKTOPOVIA"	"YIKKUXJFSA"	"N"	"d7-proline"	122.107265755	"C5H9NO2"	"129844038"	""	""	""	""	""	""	17	"HMDB0000162"	"277,343,409,410"	0.99	NA	"1.0"	0.2	0	0	0	0	0	0	0	0	0.7778	0.19445	0.39445	11	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"ARJPPNFIEQKVBB-UHFFFAOYSA-N"	"InChI=1S/C5H9NO2/c1-5(8)6-3-2-4-7/h4H,2-3H2,1H3,(H,6,8)"	"ARJPPNFIEQKVBB-UHFFFAOYSA-N"	"ARJPPNFIEQKVBB"	"UHFFFAOYSA"	"N"	"3-acetamidopropanal"	115.063328534	"C5H9NO2"	"5460495"	"C18170"	""	""	"HMDB0012880"	"True"	"False"	5	"HMDB0012880"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	1	0.05	1	0.25	0.3	12	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"FTWHFXMUJQRNBK-UHFFFAOYSA-N"	"InChI=1S/C5H9NO2/c1-4(2-3-6)5(7)8/h1-3,6H2,(H,7,8)"	"FTWHFXMUJQRNBK-UHFFFAOYSA-N"	"FTWHFXMUJQRNBK"	"UHFFFAOYSA"	"N"	"4-amino-2-methylenebutanoic acid"	115.063328534	"C5H9NO2"	"5318003"	""	""	""	"HMDB0030409"	"True"	"False"	11	"HMDB0030409"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	1	0.05	1	0.25	0.3	12	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"OAICVXFJPJFONN-UHFFFAOYSA-N"	"InChI=1S/P"	"OAICVXFJPJFONN-UHFFFAOYSA-N"	"OAICVXFJPJFONN"	"UHFFFAOYSA"	"N"	"phosphorus"	30.973761999	"P"	"5462309"	"C06262"	""	""	"HMDB0001315"	"True"	"True"	2	"HMDB0001315"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	1	0.05	1	0.25	0.3	12	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"VULIHENHKGDFAB-UHFFFAOYSA-N"	"InChI=1S/C5H9NO2/c1-8-5-3-2-4(7)6-5/h5H,2-3H2,1H3,(H,6,7)"	"VULIHENHKGDFAB-UHFFFAOYSA-N"	"VULIHENHKGDFAB"	"UHFFFAOYSA"	"N"	"5-Methoxypyrrolidin-2-one"	115.063328534	"C5H9NO2"	"181561"	""	""	""	"HMDB0034208"	"True"	"False"	1	"HMDB0034208"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	1	0.05	1	0.25	0.3	12	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"DHMQDGOQFOQNFH-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c3-1-2(4)5/h1,3H2,(H,4,5)"	"DHMQDGOQFOQNFH-UHFFFAOYSA-N"	"DHMQDGOQFOQNFH"	"UHFFFAOYSA"	"N"	"2-azaniumylacetate"	75.032	"C2H5NO2"	"750,5257127"	"C00037"	"Compounds with biological roles [BR:br08001]"	"D00011"	"HMDB0000123"	"True"	"False"	7	"HMDB0000123"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"HNJBEVLQSNELDL-UHFFFAOYSA-N"	"InChI=1S/C4H7NO/c6-4-2-1-3-5-4/h1-3H2,(H,5,6)"	"HNJBEVLQSNELDL-UHFFFAOYSA-N"	"HNJBEVLQSNELDL"	"UHFFFAOYSA"	"N"	"2-Pyrrolidinone"	85.05276385	"C4H7NO"	"12025"	""	""	""	"HMDB0002039"	"True"	"False"	2	"HMDB0002039"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"QQZWEECEMNQSTG-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c1-2-5-3-4/h2H2,1H3"	"QQZWEECEMNQSTG-UHFFFAOYSA-N"	"QQZWEECEMNQSTG"	"UHFFFAOYSA"	"N"	"ETHYL NITRITE"	75.032028405	"C2H5NO2"	"8026"	""	""	""	"HMDB0031239"	"True"	"False"	2	"HMDB0031239"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-CNRUNOGKSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1T"	"RWRDLPDLKQPQOW-CNRUNOGKSA-N"	"RWRDLPDLKQPQOW"	"CNRUNOGKSA"	"N"	""	73.081723544	"C4H9N"	"18440991"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-LBPDFUHNSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3+1"	"RWRDLPDLKQPQOW-LBPDFUHNSA-N"	"RWRDLPDLKQPQOW"	"LBPDFUHNSA"	"N"	""	72.077	"C4H9N"	"11062297"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-MICDWDOJSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D"	"RWRDLPDLKQPQOW-MICDWDOJSA-N"	"RWRDLPDLKQPQOW"	"MICDWDOJSA"	"N"	""	72.08	"C4H9N"	"12196046"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-UHFFFAOYSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2"	"RWRDLPDLKQPQOW-UHFFFAOYSA-N"	"RWRDLPDLKQPQOW"	"UHFFFAOYSA"	"N"	"PYRROLIDINE"	71.073499295	"C4H9N"	"31268"	""	""	""	"HMDB0031641"	"True"	"False"	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-YZRHJBSPSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3+2"	"RWRDLPDLKQPQOW-YZRHJBSPSA-N"	"RWRDLPDLKQPQOW"	"YZRHJBSPSA"	"N"	""	73.077	"C4H9N"	"53660610"	""	""	""	""	""	""	3	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	1	0.25	0.25	13	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-UHFFFAOYSA-O"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/p+1"	"RWRDLPDLKQPQOW-UHFFFAOYSA-O"	"RWRDLPDLKQPQOW"	"UHFFFAOYSA"	"O"	""	72.081324327	"C4H10N+"	"3613359,20463768"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9524	0.2381	0.2381	14	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-WFVSFCRTSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D"	"RWRDLPDLKQPQOW-WFVSFCRTSA-N"	"RWRDLPDLKQPQOW"	"WFVSFCRTSA"	"N"	""	72.07977604	"C4H9N"	"91312985"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9524	0.2381	0.2381	14	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-DICFDUPASA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2"	"RWRDLPDLKQPQOW-DICFDUPASA-N"	"RWRDLPDLKQPQOW"	"DICFDUPASA"	"N"	""	73.086052786	"C4H9N"	"57608708"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.9091	0.227275	0.227275	15	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-DYCDLGHISA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i/hD"	"RWRDLPDLKQPQOW-DYCDLGHISA-N"	"RWRDLPDLKQPQOW"	"DYCDLGHISA"	"N"	"N-deuteropyrrolidine"	72.07977604	"C4H9N"	"12196050"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	16	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-KHORGVISSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D2,4D2"	"RWRDLPDLKQPQOW-KHORGVISSA-N"	"RWRDLPDLKQPQOW"	"KHORGVISSA"	"N"	"ACM42403258"	75.098606278	"C4H9N"	"12196049"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	16	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-MNYXATJNSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i/hT"	"RWRDLPDLKQPQOW-MNYXATJNSA-N"	"RWRDLPDLKQPQOW"	"MNYXATJNSA"	"N"	""	73.081723544	"C4H9N"	"57750053"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	16	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-SMZGMGDZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i3D2"	"RWRDLPDLKQPQOW-SMZGMGDZSA-N"	"RWRDLPDLKQPQOW"	"SMZGMGDZSA"	"N"	""	73.086052786	"C4H9N"	"57608710"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8696	0.2174	0.2174	16	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-LNLMKGTHSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2"	"RWRDLPDLKQPQOW-LNLMKGTHSA-N"	"RWRDLPDLKQPQOW"	"LNLMKGTHSA"	"N"	""	75.098606278	"C4H9N"	"57608709"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8333	0.208325	0.208325	17	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-QAOQSSEZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D,3D2"	"RWRDLPDLKQPQOW-QAOQSSEZSA-N"	"RWRDLPDLKQPQOW"	"QAOQSSEZSA"	"N"	""	74.092329532	"C4H9N"	"90927493"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8	0.2	0.2	18	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-SVYQBANQSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D2,4D2"	"RWRDLPDLKQPQOW-SVYQBANQSA-N"	"RWRDLPDLKQPQOW"	"SVYQBANQSA"	"N"	"Pyrrolidine-2,2,3,3,4,4,5,5-d8"	79.123713262	"C4H9N"	"12196044"	""	""	""	""	""	""	2	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.8	0.2	0.2	18	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-HJOWPTDZSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D,4D2/hD"	"RWRDLPDLKQPQOW-HJOWPTDZSA-N"	"RWRDLPDLKQPQOW"	"HJOWPTDZSA"	"N"	"pyrrolidine-d8"	79.123713262	"C4H9N"	"129715569"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.7143	0.178575	0.178575	19	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RWRDLPDLKQPQOW-KLRAWXKOSA-N"	"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D2,4D2/hD"	"RWRDLPDLKQPQOW-KLRAWXKOSA-N"	"RWRDLPDLKQPQOW"	"KLRAWXKOSA"	"N"	""	80.12999001	"C4H9N"	"60135501"	""	""	""	""	""	""	1	"HMDB0031641"	"277,343,409,410"	0.99	NA	"0.0"	0	0	0	0	0	0	0	0	0	0.7143	0.178575	0.178575	19	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"MWFMGBPGAXYFAR-UHFFFAOYSA-N"	"InChI=1S/C4H7NO/c1-4(2,6)3-5/h6H,1-2H3"	"MWFMGBPGAXYFAR-UHFFFAOYSA-N"	"MWFMGBPGAXYFAR"	"UHFFFAOYSA"	"N"	"ACETONE CYANOHYDRIN"	85.05276385	"C4H7NO"	"6406"	"C02659"	""	""	"HMDB0060427"	"False"	"False"	0	"HMDB0031456"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	0.6923	0.173075	0.173075	20	"[M+H]+"
+12	"M116T48"	116.070597631071	47.7346706134597	"RRUDCFGSUDOHDG-UHFFFAOYSA-N"	"InChI=1S/C2H5NO2/c1-2(4)3-5/h5H,1H3,(H,3,4)"	"RRUDCFGSUDOHDG-UHFFFAOYSA-N"	"RRUDCFGSUDOHDG"	"UHFFFAOYSA"	"N"	"acetohydroxamic acid"	75.032028405	"C2H5NO2"	"1990"	"C06808"	"Anatomical Therapeutic Chemical (ATC) classification [BR:br08303]"	"D00220"	"HMDB0014691"	"False"	"True"	0	"HMDB0003338"	"277,343,409,410"	0.99	NA	"0"	0	0	0	0	0	0	0	0	0	0.5455	0.136375	0.136375	21	"[M+H]+"
 27	"M132T74"	132.101827517612	73.554846736017	"AGPKZVBTJJNPAG-UHFFFAOYSA-N"	"InChI=1S/C6H13NO2/c1-3-4(2)5(7)6(8)9/h4-5H,3,7H2,1-2H3,(H,8,9)"	"AGPKZVBTJJNPAG-UHFFFAOYSA-N"	"AGPKZVBTJJNPAG"	"UHFFFAOYSA"	"N"	"2-ammonio-3-methylpentanoate"	131.09462866	"C6H13NO2"	"791,57397079"	"C16434"	""	""	"HMDB0033923"	"True"	"False"	18	"HMDB0000172"	"478,547,616,475,541,607"	1	"CE000616"	"0"	0	0	0	0.940890528192141	0.282267158457642	0	0	0	0	1	0.25	0.532267158457642	1	"[M+H]+"
Binary file test-data/purityX_output.RData has changed
--- a/test-data/purityX_output.tsv	Tue Feb 08 14:04:07 2022 +0000
+++ b/test-data/purityX_output.tsv	Wed Jun 12 16:08:23 2024 +0000
@@ -0,0 +1,16 @@
+"peakID"	"grpid"	"meanPurity"	"medianPurity"	"sdPurity"	"sdePurity"	"cvPurity"	"pknmPurity"	"i"	"mz"
+1	1	1	1	0	0	0	1	61925043.3566382	102.091560881174
+2	2	1	1	0	0	0	1	25719001.4822415	103.054435681307
+3	3	1	1	0	0	0	1	3791623.64689146	103.094714179046
+4	4	1	1	0	0	0	1	701844279.87476	104.107044269271
+5	5	0.753862395887935	1	0.49227520822413	0.246137604112065	65.3004064016622	1	79111202.7215235	105.051698129502
+6	6	0.849777173964078	0.846538530688927	0.0251183222605269	0.0125591611302635	2.95587161318465	2	5735625.74118929	106.062931911485
+7	7	0.846273037079121	0.84212559075998	0.0578505242577427	0.0289252621288714	6.83591721856241	2.25	2124533.28227443	107.050950030548
+8	8	1	1	0	0	0	1	1965138.01789635	108.006429726299
+9	9	1	1	0	0	0	1	362848.770317471	108.055140508271
+10	10	1	1	0	0	0	1	25053032.2987587	110.071444659587
+11	11	0.657159557553984	0.66469615675609	0.396069303079897	0.198034651539948	60.269884007182	3	8168571.28564153	111.020205687498
+12	12	0.986752431352875	0.987973697141727	0.0154264299310987	0.00771321496554933	1.56335362761138	1.25	21655562.9118763	112.043935634745
+13	13	0.969931320369093	0.973488648484343	0.035202929071034	0.017601464535517	3.6294249223376	1.5	16160213.3493717	112.923083776231
+14	14	1	1	0	0	0	1	82880594.6142923	113.035283604395
+15	15	0.613847507731082	0.613847507731082	0.00533923101597845	0.0037754064577199	0.869797620538273	4	3386134.01927015	114.037770729384