# HG changeset patch
# User iuc
# Date 1606556744 0
# Node ID 382518f24d6d33be8739e0c59568c8865ebd51d3
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ena_upload commit 57b434bcf493554d060a99b65e66f274d5c00e0a"
diff -r 000000000000 -r 382518f24d6d README.md
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/README.md Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,31 @@
+# ena-upload-wrapper
+Galaxy wrapper for ena-cli-upload
+
+This tool is shipped in a ready to use Galaxy container found [here](https://github.com/ELIXIR-Belgium/ena-upload-container).
+
+## Setting up credentials on Galaxy
+
+The admin of the server can set up global credentials through a file with the format:
+```
+username: webin_id
+password: webin_password
+```
+
+The path to this file must be exported as an environment variable called $GALAXY_ENA_SECRETS
+
+Alternatively, the admin can enable users to set their own credentials for this tool.
+To enable it, make sure the file `config/user_preferences_extra_conf.yml` has the following section:
+
+```
+ ena_webin_account:
+ description: Your ENA Webin account details
+ inputs:
+ - name: webin_id
+ label: ENA Webin ID
+ type: text
+ required: False
+ - name: password
+ label: Password
+ type: password
+ required: False
+```
diff -r 000000000000 -r 382518f24d6d ena_upload.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ena_upload.xml Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,549 @@
+
+
+ 0.2.4
+ samples_macros.xml
+
+
+ ena-upload-cli
+ xlrd
+
+ Preferences -> Manage Information";
+ exit 1;
+ fi;
+ #else:
+ echo "No ENA credentials defined. Set your credentials via: User -> Preferences -> Manage Information";
+ exit 1;
+ #end if
+ else
+ credentials_path='$credentials';
+ fi;
+#end if
+
+#if $action_options.test_submit == "True":
+ credentials_path='test_fake_path';
+#end if
+
+## create the list of files to upload and make the symlinks
+#import re
+#set $files_to_upload = list()
+#if $action_options.input_format_conditional.input_format == "build_tables":
+ #for $study in $action_options.input_format_conditional.conditional_viral_metadata.rep_study:
+ #for $sample in $study.rep_sample:
+ #for $experiment in $sample.rep_experiment:
+ #for $run in $experiment.rep_runs:
+ #for $file in $run.upload_files:
+ #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier)
+ ln -s '$file' $safename_reads_file &&
+ $files_to_upload.append(str($safename_reads_file))
+ #end for
+ #end for
+ #end for
+ #end for
+ #end for
+#else:
+ #for $file in $action_options.input_format_conditional.data:
+ #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier)
+ ln -s '$file' $safename_reads_file &&
+ $files_to_upload.append(str($safename_reads_file))
+ #end for
+#end if
+
+
+#if $dry_run_option == "False":
+ena-upload-cli
+ --tool 'ena-upload-cli v@VERSION@ @ Galaxy'
+ --action '$action_options.action'
+ --center '$action_options.center'
+ --secret \${credentials_path}
+ --data
+ #for $dataset in $files_to_upload:
+ '$dataset'
+ #end for
+#if $action_options.input_format_conditional.input_format == "user_generated_tables":
+ --experiment '$action_options.input_format_conditional.experiments_users_table'
+ --study '$action_options.input_format_conditional.studies_users_table'
+ --run '$action_options.input_format_conditional.runs_users_table'
+ --sample '$action_options.input_format_conditional.samples_users_table'
+ #if "$action_options.input_format_conditional.viral_submission" == "true":
+ --vir
+ #end if
+#else:
+ --experiment '$experiments_table_path'
+ --study '$studies_table_path'
+ --run '$runs_table_path'
+ --sample '$samples_table_path'
+ #if $action_options.input_format_conditional.input_format == "build_tables":
+ #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "true":
+ --vir
+ #end if
+ #else:
+ #if $action_options.input_format_conditional.viral_submission == "true":
+ --vir
+ #end if
+ #end if
+#end if
+
+#if $action_options.submit_dev == "true":
+ -d
+#end if
+ > '$output'
+#else:
+ echo ""
+ exit 0;
+#end if
+
+]]>
+
+
+
+#import json
+#import re
+#if $action_options.input_format_conditional.input_format == "build_tables":
+ #set $files_to_upload = list()
+ #set $studies = list()
+ #for $study in $action_options.input_format_conditional.conditional_viral_metadata.rep_study:
+ #set samples = list()
+ #for $sample in $study.rep_sample:
+ #set experiments = list()
+ #for $experiment in $sample.rep_experiment:
+ #set runs = list()
+ #for $run in $experiment.rep_runs:
+ #set run_files = list()
+ #for $file in $run.upload_files:
+ #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier)
+ $run_files.append(str($safename_reads_file))
+ #end for
+ $runs.append($run_files)
+ #end for
+
+$experiments.append({'title':str($experiment.experiment_title),'experiment_design':str($experiment.experiment_design),'library_strategy':str($experiment.library_strategy),'library_source':str($experiment.library_source),'library_selection':str($experiment.library_selection),'library_layout':str($experiment.library_layout),'insert_size':str($experiment.insert_size),'library_construction_protocol':str($experiment.library_construction_protocol),'platform':str($experiment.platform),'instrument_model':str($experiment.instrument_model),'runs':$runs})
+ #end for
+ #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "true":
+
+$samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'collection_date':str($sample.collection_date),'geo_location':str($sample.geo_location_country),'host_common_name':str($sample.host_common_name),'host_subject_id':str($sample.host_subject_id),'host_health_state':str($sample.host_health_state),'host_sex':str($sample.host_sex),'host_scientific_name':str($sample.host_scientific_name),'collector_name':str($sample.collector_name),'collecting_institution':str($sample.collecting_institution),'isolate':str($sample.isolate),'experiments':$experiments})
+ #else:
+
+$samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'experiments':$experiments})
+ #end if
+ #end for
+ $studies.append({'title':str($study.study_title),'type':str($study.study_type),'abstract':str($study.study_abstract),'pubmed_id':str($study.study_pubmed_id),'samples':$samples})
+ #end for
+ #echo $json.dumps($studies)
+#end if
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"
+
+
+ action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"
+
+
+ action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"
+
+
+ action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -r 000000000000 -r 382518f24d6d extract_tables.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extract_tables.py Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,93 @@
+import argparse
+import json
+import pathlib
+from datetime import datetime
+
+FILE_FORMAT = 'fastq'
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--studies', dest='studies_json_path', required=True)
+parser.add_argument('--out_dir', dest='out_path', required=True)
+parser.add_argument('--action', dest='action', required=True)
+args = parser.parse_args()
+
+with open(args.studies_json_path, 'r') as studies_json_file:
+ studies_dict = json.load(studies_json_file)
+studies_table = open(pathlib.Path(args.out_path) / 'studies.tsv', 'w')
+studies_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'study_type',
+ 'study_abstract', 'pubmed_id', 'submission_date']) + '\n')
+samples_table = open(pathlib.Path(args.out_path) / 'samples.tsv', 'w')
+experiments_table = open(pathlib.Path(args.out_path) / 'experiments.tsv', 'w')
+experiments_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'study_alias',
+ 'sample_alias', 'design_description', 'library_name',
+ 'library_strategy', 'library_source', 'library_selection',
+ 'library_layout', 'insert_size',
+ 'library_construction_protocol', 'platform', 'instrument_model',
+ 'submission_date']) + '\n')
+runs_table = open(pathlib.Path(args.out_path) / 'runs.tsv', 'w')
+runs_table.write('\t'.join(['alias', 'status', 'accession', 'experiment_alias', 'file_name',
+ 'file_format', 'file_checksum', 'submission_date']) + '\n')
+
+action = args.action
+
+dt_oobj = datetime.now(tz=None)
+timestamp = dt_oobj.strftime("%Y%m%d_%H:%M:%S")
+for study_index, study in enumerate(studies_dict):
+ study_alias = 'study_' + str(study_index) + '_' + timestamp
+ studies_table.write('\t'.join([study_alias, action, 'ENA_accession', study['title'],
+ study['type'], study['abstract'], study['pubmed_id'],
+ 'ENA_submission_data']))
+ if "geo_location" in study['samples'][0].keys(): # sample belongs to a viral sample
+ samples_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'scientific_name',
+ 'taxon_id', 'sample_description', 'collection_date',
+ 'geographic_location', 'host_common_name', 'host_subject_id',
+ 'host_health_state', 'host_sex', 'host_scientific_name',
+ 'collector_name', 'collecting_institution', 'isolate',
+ 'submission_date']) + '\n')
+ else:
+ samples_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'scientific_name',
+ 'taxon_id', 'sample_description', 'submission_date']) + '\n')
+ for sample_index, sample in enumerate(study['samples']):
+ sample_alias = 'sample_' + str(sample_index) + '_' + timestamp
+ if "geo_location" in sample.keys(): # sample belongs to a viral sample
+ if sample['collector_name'] == '':
+ sample['collector_name'] = 'unknown'
+ samples_table.write('\t'.join([sample_alias, action, 'ena_accession', sample['title'],
+ sample['tax_name'], sample['tax_id'],
+ sample['description'], sample['collection_date'],
+ sample['geo_location'], sample['host_common_name'],
+ sample['host_subject_id'], sample['host_health_state'],
+ sample['host_sex'], sample['host_scientific_name'],
+ sample['collector_name'],
+ sample['collecting_institution'], sample['isolate'],
+ 'ENA_submission_date']) + '\n')
+ else:
+ samples_table.write('\t'.join([sample_alias, action, 'ena_accession', sample['title'],
+ sample['tax_name'], sample['tax_id'],
+ sample['description'], 'ENA_submission_date']) + '\n')
+ for exp_index, exp in enumerate(sample['experiments']):
+ exp_alias = 'experiment_' + str(exp_index) + '.' + str(sample_index) + '_' + timestamp
+ lib_alias = 'library_' + str(exp_index) + '_' + str(sample_index)
+ experiments_table.write('\t'.join([exp_alias, action, 'accession_ena', exp['title'],
+ study_alias, sample_alias, exp['experiment_design'],
+ lib_alias, exp['library_strategy'],
+ exp['library_source'], exp['library_selection'],
+ exp['library_layout'].lower(), exp['insert_size'],
+ exp['library_construction_protocol'],
+ exp['platform'], exp['instrument_model'],
+ 'submission_date_ENA']) + '\n')
+ run_index = 0
+ # exp['runs'] is a list of lists
+ for run in exp['runs']:
+ run_index += 1
+ run_alias = '.'.join(['run_' + str(run_index), str(exp_index), str(sample_index)]) \
+ + '_' + timestamp
+ for file_entry in run:
+ runs_table.write('\t'.join([run_alias, action, 'ena_run_accession', exp_alias,
+ file_entry, FILE_FORMAT, 'file_checksum',
+ 'submission_date_ENA']) + '\n')
+
+studies_table.close()
+samples_table.close()
+experiments_table.close()
+runs_table.close()
diff -r 000000000000 -r 382518f24d6d process_xlsx.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/process_xlsx.py Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,173 @@
+import argparse
+import pathlib
+import sys
+
+import xlrd
+
+
+FILE_FORMAT = 'fastq'
+
+
+def extract_data(xl_sheet, expected_columns):
+ """
+ 1. Check that the columns I expect are present in the sheet
+ (any order and mixed with others, it's just a verification that
+ the user filled the correct template)
+ 2. Fill a dictionary with the rows data indexed by first column in list"""
+ sheet_columns = {}
+ for sh_col in range(xl_sheet.ncols):
+ if xl_sheet.cell(0, sh_col).value in expected_columns:
+ if xl_sheet.cell(0, sh_col).value in sheet_columns.keys():
+ sys.exit("Duplicated columns")
+ else:
+ sheet_columns[xl_sheet.cell(0, sh_col).value] = sh_col
+ for col in range(len(expected_columns)):
+ assert expected_columns[col] in sheet_columns.keys(), \
+ "Expected column %s not found" % expected_columns[col]
+
+ # fetch rows in a dict
+ data_dict = {}
+ # the first of the expected columns will be the index
+ index_col = sheet_columns[expected_columns[0]]
+ # skip first 2 rows: column names + comments rows
+ for row_id in range(2, xl_sheet.nrows):
+ row_dict = {}
+ for col in range(1, len(expected_columns)):
+ sheet_col_index = sheet_columns[expected_columns[col]]
+ row_dict[expected_columns[col]] = xl_sheet.cell(row_id, sheet_col_index).value
+ # should check for duplicate alias/ids?
+ data_dict[xl_sheet.cell(row_id, index_col).value] = row_dict
+ return data_dict
+
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--form', dest='xlsx_path', required=True)
+parser.add_argument('--out_dir', dest='out_path', required=True)
+parser.add_argument('--action', dest='action', required=True)
+parser.add_argument('--vir', dest='viral_submission', required=False, action='store_true')
+args = parser.parse_args()
+
+xl_workbook = xlrd.open_workbook(args.xlsx_path)
+
+# PARSE STUDIES
+#################
+xl_sheet = xl_workbook.sheet_by_name('ENA_study')
+if xl_sheet.nrows < 3:
+ raise ValueError('No entries found in studies sheet')
+studies_dict = {}
+studies_col = ['alias', 'title', 'study_type', 'study_abstract']
+studies_dict = extract_data(xl_sheet, studies_col)
+
+# PARSE SAMPLES
+#################
+xl_sheet = xl_workbook.sheet_by_name('ENA_sample')
+if xl_sheet.nrows < 3:
+ raise ValueError('No entries found in samples')
+if args.viral_submission:
+ samples_cols = ['alias', 'title', 'scientific_name', 'sample_description',
+ 'geographic location (country and/or sea)', 'host common name',
+ 'host health state', 'host sex', 'host scientific name', 'collector name',
+ 'collection date', 'collecting institution', 'isolate']
+else:
+ samples_cols = ['alias', 'title', 'scientific_name', 'sample_description']
+samples_dict = extract_data(xl_sheet, samples_cols)
+
+# PARSE EXPERIMENTS
+#################
+xl_sheet = xl_workbook.sheet_by_name('ENA_experiment')
+if xl_sheet.nrows < 3:
+ raise ValueError('No experiments found in experiments sheet')
+exp_columns = ['alias', 'title', 'study_alias', 'sample_alias', 'design_description', 'library_name',
+ 'library_strategy', 'library_source', 'library_selection', 'library_layout',
+ 'insert_size', 'library_construction_protocol', 'platform', 'instrument_model']
+experiments_dict = extract_data(xl_sheet, exp_columns)
+
+# PARSE RUNS SHEET
+#################
+xl_sheet = xl_workbook.sheet_by_name('ENA_run')
+if xl_sheet.nrows < 3:
+ raise ValueError('No entries found in runs sheet')
+run_cols = ['alias', 'experiment_alias', 'file_name', 'file_format']
+runs_dict = extract_data(xl_sheet, run_cols)
+
+# WRITE HEADERS TO TABLES
+studies_table = open(pathlib.Path(args.out_path) / 'studies.tsv', 'w')
+studies_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'study_type',
+ 'study_abstract', 'pubmed_id', 'submission_date']) + '\n')
+samples_table = open(pathlib.Path(args.out_path) / 'samples.tsv', 'w')
+if args.viral_submission:
+ samples_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'scientific_name',
+ 'taxon_id', 'sample_description', 'collection_date',
+ 'geographic_location', 'host_common_name', 'host_subject_id',
+ 'host_health_state', 'host_sex', 'host_scientific_name',
+ 'collector_name', 'collecting_institution', 'isolate',
+ 'submission_date']) + '\n')
+else:
+ samples_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'scientific_name',
+ 'taxon_id', 'sample_description', 'submission_date']) + '\n')
+
+experiments_table = open(pathlib.Path(args.out_path) / 'experiments.tsv', 'w')
+experiments_table.write('\t'.join(['alias', 'status', 'accession', 'title', 'study_alias',
+ 'sample_alias', 'design_description', 'library_name',
+ 'library_strategy', 'library_source', 'library_selection',
+ 'library_layout', 'insert_size', 'library_construction_protocol',
+ 'platform', 'instrument_model', 'submission_date']) + '\n')
+
+runs_table = open(pathlib.Path(args.out_path) / 'runs.tsv', 'w')
+runs_table.write('\t'.join(['alias', 'status', 'accession', 'experiment_alias', 'file_name',
+ 'file_format', 'file_checksum', 'submission_date']) + '\n')
+action = args.action
+
+# WRITE DICTIONARIES TO TABLE FILES
+
+# ADD A TIMESTAMP TO THE ALIAS? SEEMS LIKE ENA REQUIRES ALL ENTRIES FOR A WEBIN TO HAVE UNIQUE IDS?
+# dt_oobj = datetime.now(tz=None)
+# timestamp = dt_oobj.strftime("%Y%m%d_%H:%M:%S")
+for study_alias, study in studies_dict.items():
+ # study_alias = study_alias + '_' + timestamp
+ studies_table.write('\t'.join([study_alias, action, 'ENA_accession', study['title'],
+ study['study_type'], study['study_abstract'], '',
+ 'ENA_submission_data']) + '\n') # assuming no pubmed_id
+for sample_alias, sample in samples_dict.items():
+ # sample_alias = sample_alias + '_' + timestamp
+ if args.viral_submission:
+ if sample['collector name'] == '':
+ sample['collector name'] = 'unknown'
+ samples_table.write('\t'.join([sample_alias, action, 'ena_accession', sample['title'],
+ sample['scientific_name'], 'tax_id_updated_by_ENA',
+ sample['sample_description'], sample['collection date'],
+ sample['geographic location (country and/or sea)'],
+ sample['host common name'], 'host subject id',
+ sample['host health state'], sample['host sex'],
+ sample['host scientific name'], sample['collector name'],
+ sample['collecting institution'], sample['isolate'],
+ 'ENA_submission_date']) + '\n')
+ else:
+ samples_table.write('\t'.join([sample_alias, action, 'ena_accession', sample['title'],
+ sample['scientific_name'], 'tax_id_updated_by_ENA',
+ sample['sample_description']]) + '\n')
+ for exp_alias, exp in experiments_dict.items():
+ # should I check here if any experiment has a study or sample alias that is incorrect?
+ # (not listed in the samples or study dict)
+ # process the experiments for this sample
+ if exp['sample_alias'] == sample_alias:
+ lib_alias = 'library_' + exp_alias + '_' + exp['sample_alias']
+ experiments_table.write('\t'.join([exp_alias, action, 'accession_ena', exp['title'],
+ exp['study_alias'], sample_alias,
+ exp['design_description'], lib_alias,
+ exp['library_strategy'], exp['library_source'],
+ exp['library_selection'],
+ exp['library_layout'].lower(),
+ str(int(exp['insert_size'])),
+ exp['library_construction_protocol'],
+ exp['platform'], exp['instrument_model'],
+ 'submission_date_ENA']) + '\n')
+ for run_alias, run in runs_dict.items():
+ if run['experiment_alias'] == exp_alias:
+ runs_table.write('\t'.join([run_alias, action, 'ena_run_accession', exp_alias,
+ run['file_name'], FILE_FORMAT, 'file_checksum',
+ 'submission_date_ENA']) + '\n')
+studies_table.close()
+samples_table.close()
+experiments_table.close()
+runs_table.close()
diff -r 000000000000 -r 382518f24d6d samples_macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/samples_macros.xml Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,191 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ (^[0-9]{4}(-[0-9]{2}(-[0-9]{2}(T[0-9]{2}:[0-9]{2}(:[0-9]{2})?Z?([+-][0-9]{1,2})?)?)?)?(/[0-9]{4}(-[0-9]{2}(-[0-9]{2}(T[0-9]{2}:[0-9]{2}(:[0-9]{2})?Z?([+-][0-9]{1,2})?)?)?)?)?$)|(^not colected$)|(^not provided$)|(^restricted access$)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -r 000000000000 -r 382518f24d6d test-data/1.fastqsanger.gz
Binary file test-data/1.fastqsanger.gz has changed
diff -r 000000000000 -r 382518f24d6d test-data/metadata_test_nonviral.xlsx
Binary file test-data/metadata_test_nonviral.xlsx has changed
diff -r 000000000000 -r 382518f24d6d test-data/metadata_test_viral.xlsx
Binary file test-data/metadata_test_viral.xlsx has changed
diff -r 000000000000 -r 382518f24d6d test-data/sample.fq
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/sample.fq Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,400 @@
+@M01368:8:000000000-A3GHV:1:1101:6911:8255/1
+ATCTGGTTCCTACTTCAGGGCCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATT
++
+BCCCCFFFFFFFGGGGGGGGGGGHHHHGHGHHHHHHHHHGGGGGGHHHHGHHHHHHHHHHGHHHHHHGGHGGHHHGHHHHFHHGHHHHHHHHHGHEHEFFGHHEGGCEFGGFHHHBGHHGHHHHGHFHHHGHGHGHGGCDFDDACGGGGGGGAAFFFFFFFFFBAFFFFFB;FFFFFFADDFFFFFFFFFFEFFFFFFFFFFBFFFFFFFFFFFFFFEFFFFFFFFBFEFFFFEFE;DFFFDFBFF/9BFB
+@M01368:8:000000000-A3GHV:1:1101:14518:9998/1
+GTTATTATTATGTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGGGATAGACCTGTGATCCATCGTGAT
++
+AAAAAFFFFFFFGGGGGGGGGGHGGHHHHGHHHHHHHGCGHHHHHHHHHHHHHHHGGGGGHHHHHHHHHGHHGFHFE5BGEEHFGGGHHHHHHHHFBHHGGGGFHGHHFGHHHHGHHHHHHGEGGGGFHFHGEGHHGGCDGDGHGGGDGGHGGCGGGHGHHH/ACDG?.1FGCDCCGCA.CC@CDCHFHGFFGGGEBFGAB//CEFBFGG.:;D;;A0AFFFFFB..:@ABFF//;BFFFFFBF/9D:A//
+@M01368:8:000000000-A3GHV:1:1101:18422:19051/1
+GTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACG
++
+CCCCCFDDDDDFGGGGGGGGGGHHHHHHHHHHHHHHHHGHHHHHHFHHHHGGGGHHHHHHHHHGHHHHHHHHHHHHGGHGGHHHHHHHHHHHHHHHHHHHHHHHHHHHGHHHHHGCGGGHHHHHHHHHHHHHHHHHHHHHHGFDHGFHCFGGGGFGGFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;FFFFFFFFFFFFFFFFFFFFFFFFFFFFEFBFFFFFFFFFF:FFF.
+@M01368:8:000000000-A3GHV:1:1101:25545:21098/1
+ATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATAAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGGCTTATTTAAGGGGAACGGGTGGGG
++
+33AA?DFD5BDFGGGFEBDGEGHEGHGEGHCEGGHHCHGHHFFHHGFGAGE53FF2FAFFGDE5FFFE5GFBFGAEE1GHHHGHHHEHE3FGHF@GEGEGGHHGG3FAGFFDE?EEE3GFEGFGFGGCG?GHHHFHGGGC@DHFFHD/AA@AAAAD2ADDFFGGGGGFGGHA?EAEFBEAGHFABFGG5FDF5DB1EEGAFDFB53FF5FH@G5FFEHGHEFHFFHBE333GF43GCGGGGE@0?BFGGB0B?FHGFDGGHHHBFFDEGGHGFFFDFE@<1>@FFFGHHHHFHEFGDABFFGG/@DCE---;--..;.../9
+@M01368:8:000000000-A3GHV:1:1103:25519:6301/1
+AAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGCATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATTTCGT
++
+3A3AAFFFFBFFGGG2CF?4FGHGHHCHGGHHBHGFFAGGHHFFHHCGHFEGCECEGHFFFHGHHGFGHFGDAFDGFFEEFEGGBECC/;>=EF?AEFFFF;9;=DAFFFFBBFFFBFFF//;BFB.:FBFFBB/BFFFF/BFFE?EFAFEF9
+@M01368:8:000000000-A3GHV:1:1104:11928:24197/1
+ACGTAGGTGCGATAAATAATGGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATGTCGGATA
++
+CDDCCFCFFFBCGGGGGGGGGGHHHGHHHGGGGGHHHHHHHHHHHHHHHHHHGGGGGHHHHGGGHHHGGGGGGHHHGGGGHHGGGGHHHHHHGGGGGGHHHHGGGGGGGHGGGGGGHHHHHHHHHGHHHHGHHGHHHHGGHGEEGGGGFHHFHHHGHGEHHHHHHHHHHHHHHHHHGGGGGGFGGGGGGGGFFGGGFGFGAEFEFGFEAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF@D9
+@M01368:8:000000000-A3GHV:1:1104:12288:20635/1
+CACTTGGGGGTAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGCCGCAGCATCTGTCTTTGATTCCTGCCT
++
+ABA?AFBAB2>AFGGGGFFGD5GGHGFFHGHEGGGGHHHHFFHH5FHGHHHFFHEFHHHHHHGGHHHHHGFHGGHGGGGFHGGGFBHHHFGEGHHHHGHGGGGECEHHFHHGHHFFHFGGGHHHEGHDGHHGHGHFHHHECGCBCHHGFHHFHD1GFHEFHEF?GDCFFEFE0A@;@>BD/9BFBBBBFDFFFF99D=?>DDBFF-AFFEBB9BBEFEFAFFF//-@---;;FBBFBFB///;99999BA9
+@M01368:8:000000000-A3GHV:1:1104:13832:4398/1
+CACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATCTCGTATGCCGTCTTCTGCTTGACAAAAAAAAACACACAACAACCAACACCCAGTAGACTAGTGCGTC
++
+AAABABCAFFFFGGGGGGGGGGHFHHHHHHHHHGFFHHGGHGGGGGHHHHHHHHHHFHHHHGHHHHHGGHGHGGHGGGGGGGHGFFGGGGDGGHHHHGGGGFGGGGGCFGGEGCDGGGGGGGGGGGGEGF?;BFFFFFFFFFFFFFFFFFF:FFFFFFFFFFFFFFFFFFFFFFF/FFFFFFC.;BFEAFFFFF;@FFBFFFFEF?/FFFFE----:...:...9....9.9...:.9//9////;/9-.-
+@M01368:8:000000000-A3GHV:1:1104:23670:4161/1
+ATTCAATTGTTATTATTATGTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCC
++
+AAAABFFFFFFFGGGGGGGCGBBGGHHHHHHHHHGHHHHHHHHHHFGGHHHHHHGGFHHHHHHHGGGGGFHHHGHHHHHGHHHHGHHGGGHGGGGHHHHHGHHHHHHEGGGFHHHGFFDGEGHGHFHGHHGEGGGHHBGHGGHGHGGGGG/@FCDFDGFHGGGDFFHFGFFGGGGGHHHHGGGGGGGEGCDG?GGBFFFEE00BFFGABBBAFGGGEGEA.9FFF/./;BFBF./AAF/BFFBBF/F/BFB
+@M01368:8:000000000-A3GHV:1:1104:24927:22253/1
+AGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTAT
++
+AAA?AFFF3DFFFGGBGFF3EAEEEHFHHFHHHGHHHHDGHHGAEFGHHHGFCHHGHHHBGHHHAEGGHGGFHFBFHHHHHHHHHHFHH1EEHEEHH1FFDEEFCGHBGHHFHEHHHHHH1FCGHHHHEEFGEEGFFCHHH11>GHHF/FG2DGGCGAGGHGGGG@@@BEFFF?@@@FFEFFFFFF?@@FB@BB@FFFE=;==---A9EFBBB/;E;A9B/B/FFFEF/B///;/;9/A/;/9BFFFBFBB
+@M01368:8:000000000-A3GHV:1:1104:4705:7727/1
+CTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGG
++
+BBBBBFFBFFFFGGGGGGGGGGHHHGHHHGHHHHH6GHHHHFFGGGHHHHHHHHHHHHHHHGGFGGGEGGGHHHHHHHHHHGHE3FGGGGHHHHHFHHHHHHHHHHHHGGGGGHHFHFCGFHHGGGGGGGHHGGGGHHGGGGGGHHHHGGGADCHHHHGDGGGGGGGGC@DGFHEHHHHHHGHHHHGFGDEGFGFFGGGGCFGBEGFGGGFG;C.BFFFFFFFBFBFFFF/F?.AFFF/BFFEFFFFFEFF
+@M01368:8:000000000-A3GHV:1:1104:7756:4776/1
+GGCCCATAACACTTGGGGGTAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGA
++
+CCCCCCFFFFFFGGGGGGGEEFHHHHGHGHHHHHHGGHHHGGGGGGHHGHHHHHGHHGHHHGGFHHHHHHHHGHHHFHHGHHGFGGGGHHHHHHHHGHGHFFHFHHHHHHGGHGFGFHHHGHG?FGHHHHHHHHHHHHHHGHGHHGHGGCDGFFHHHHGHHHHHGHHHGFHGHFHGHGHGH/@CABFFFFFFFACAFF?BBFFBFD-@-.D>FFAF.F.:9---;AADFFFFFBEFFF:9FFFFBBFFFF/
+@M01368:8:000000000-A3GHV:1:1105:11310:21761/1
+ATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATGTCGGATACAGTTCACTTT
++
+CCCCBFFFFFFFGGGGGGGGGGGHHHHHHHHHHHHGHHHHHGGGGGHHHHHGGHHHGGGGGGHHHGGGGHHGGGGHHHHHHGGGGGGHHHHGGGGGGGHGGGGGGHHHHGHHHGHHHGHGHHGHHHHGGHGGG=FFGEHHHHHGHFGGHHGHHHHHFHHHHHHHGGHHHHHHHGHEHHGHHHHHGGGGF9AGE?DEGFFGGGGGGGGGGGGGGFFFF/9FFBFFFFFFFEFFFBFFFFFFFFFFFFEFFF0
+@M01368:8:000000000-A3GHV:1:1105:11578:14676/1
+ATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATGTC
++
+CDDDDFFFBFFCGGGGGGGGGGHHHHHHHHHHHHGGGGGHHHHHHHHHHHHHHHHHHGGGGGHHHHFGGHHHGGGGGGHHHGGGGHHGGGGHHHHHHGGGGGGHHHHGGGGGGGHGGGGGGHHHHHHHHHHHHHHHHHGHHHHGGGGGGHGGHGHHHHHHH;CHHHHHHHHHHHHHHHGHGGGGFGGGFGGGGGGGGGGGGFGGGEGGFFFFFFFFFFFFFFFFFFFFFFFFF/FFFFFFFFFFFFFFFF0
+@M01368:8:000000000-A3GHV:1:1105:13575:19255/1
+TTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGTTCCCGTGAGTGGTTAATAGGGTGATAGGCCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATG
++
+AA1A1DFFFFFBGG3A111FFAEGDDBGFDHF00F01BBA00BFGEHFBFFA1FABB0FAE?CFHF1BGFHFB0011F121E//>>1F10>B?EFHGCC/?/BFG/EEGFFEE//BCFDE0?E@@B/?11?//<@?/F<<AAFFFFFEAGGGFGGAA6FHDGGCGFHFFHFHFHHHHHGDDDFFFHGFFHGBEGEGHHHFFFHGEEAEGHHHHHFHHHFHGHFEDGGEGBEAGEFHHFFHHHHHHGGHHHGHHGBGHHFHHFGHHHHG?CG?AFHH1FHHHGHFHHHF?DGHFFHCGAGEFHGCBBBB?BFFF?B-B.9/BFFFFFB=-AD?..@FFFF@@-@@?AFD.FFFBBEEBD9/:FFFFFBB/:FF9BF/BF.BBFF/:
+@M01368:8:000000000-A3GHV:1:1105:21099:2895/1
+TAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTT
++
+CBCBBFFFFFFFGGGGGGGGGGGGGFHHHHFHGHHHHHHFHHHHFGFHHHHHHGHHHHHHGHHEHGGGGHHHHHHHHHHHHHHHHHHHHHHGGHGGHHHHHHHHFHHHHGHGHHHGGHHHHHGGHFFGHGCGGGHGHHGHHHFGHHFHH/FGGGHFGFEGGCFCCD;B@DFFFFFFFFFFFFFFFFFFFFFFFFF;F.BEFADFFFF.AEFFFFFFE;D.;:B00099:09BFBFFBFF.0:000BFFBF0
+@M01368:8:000000000-A3GHV:1:1105:26469:19245/1
+TTATGATTATGTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCAAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATG
++
+BAAAAFFFBFFFGGGGGGFFGGHHHHHHHHHHHHGGHHGHHHGGHHHHHHHHHHHDEGGHGHHHHHGEDHFHGFHGGHHGGHGGEHHHGHHGHHGHHHGGEGGGHGHGHHHHHHGHHHHGHGGGGGHFHGGGGHHGGGGCDGHHHGD>A@FFFFFFFGGGFEECFGGFFB5GBHH5DFH5GBEEAEFHFHHF3F3GHFHHHEF3GAEHBGFHFFEFFHHHHFFB31FGGEGFHGEHHHHHHHHHHHHHHHHHEEEEGHHHFFF3GF3FGF44BBGEHHHHGG2B/BGGHE;B=.9.;.BBFFF..;A;/B/;B//;;//BBF/
+@M01368:8:000000000-A3GHV:1:1106:22927:3863/1
+GTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGACTTCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAA
++
+A>ABAFA?D@AFGGGGFGGGFGFHHHFFH4BCBGHHHHGFFF3G5BF3322EEAFHHHHHHAB5GHFHEHFHHH3BEEHFGF5@13FDF3GDGFHHFGHHHGHHHGFGGHHFCG//?/EGHHHG3F4BFFGHHHEDGFHHB/B/?FBF<@-9?BDEFFF?B--?DFFFB9FA>B;A.BFDB?AB.--@;-.FFAEFFFF9AE;DDFFFFB/9BFFFFFFFB:BF/BB/BFF//FFF-=--.99=--.9///
+@M01368:8:000000000-A3GHV:1:1106:23625:4236/1
+TAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTA
++
+@?AAAFFBFBFFFGGFGFGGGEFCGGHHHHFGHGHFHGHHHHGGFGGFGHHGHGHHHHGHGFFHHGGGGGHHHHHHHHHBFHHEFHHHHHHGF?FAGHGFHHHGDGFHHGGGHGHFHHHGHHHGHHFHHGFFGFHHHGHHHHFFHHHHH/FGHHHHGHGHGDFFFE?FFF/--;;9/:BFFFBA///9----;B.//////;...---9---
+@M01368:8:000000000-A3GHV:1:1106:6455:17124/1
+GTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACG
++
+BBBAAFABDBBFGGGGGGGGGGHHHGHHGHHHHHHHHHGHHGHHGHHHGHGGGEGHHHHHHHHHHHHHGHHHGHHHGGHGGHHHHHHHHHHHHHHHHHHGHHHHHHHHGHHHHHGGCFEHHHGFHHHHGHHFFH?GGHHHHGHGHGHHCFGGGGGGGFFFFFFFFFFFFFFFFFFFFADFA?.FEFAFFFEFFFFFFFFFFFFDABFBBFFFFFFFFEFFBFFFFFFFFFFF/FFBFFFFFFADE>BFFF9
+@M01368:8:000000000-A3GHV:1:1107:14451:26748/1
+GTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGA
++
+BABBBFFDABBBGGGGGGGGGGHGHHHHGAGHGGGGGHHHHHHHHGHHHHHGGGGGGFFHHHHHHHHHFHHHHHGGGGCHFHH3FEHHGCGGGDGHHHGFGGHHGGGGHHHHHHG/DGGGHHHHGGGGGCCHGG?CGG1GHHGHHHHBGHHHFHHGHHHHGGADAD00ECEGHEFHHFFAEFFFFFGGFBFBFFFGFFG.;B/99;BCFGGGGEFFFFFFEDA./:ADEB?FBFFFF;FFEBFBFFB./9.
+@M01368:8:000000000-A3GHV:1:1107:18714:24788/1
+GTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGA
++
+BBBCCFFFDEDEGGGGGGGGGGHHHHHHGGHHGGHGGHHHHHHHHHHHHHHGGGGGHHHHHHHHHHHHHHHHHHGGGGGHHHHCFGHHHGGGGGGHHHGGGGHHGGGGHHHHHHGGGGGGHHHHGGGGGGGHGGGGGGHHHHHGHHHHHHHHHHHGHHHHGGEGEGCCEGGHHHHHHG:CAFFGGGGGGBFEFGGGGHGAFFGGFGGGGGGGEFFFFFFFFFEF/EDDFFFFFFFFFBFFFFFBBFFBBF/
+@M01368:8:000000000-A3GHV:1:1107:21355:8333/1
+ATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATG
++
+ABCBBFFFFFAFGGGGGGGGGGHHHHHHHHFHHHHHGGGGGHHHHHHFHHHGHHHHHHHGGGGGHHHHFFGHGHGGGGGGGHGGEGGGHGGGGHHHHHHGGGGGGHHHHGGGGGGGHGGGGGGHGHHHFHHHHHHHHGHFFHHHHGGHGEGHHGHGFHHFHGHCEFHEGHGHHHGHHHGGGGGGCFFFFBFGGFGGGGFBG?FDGGGEGFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFF.AA/9
+@M01368:8:000000000-A3GHV:1:1107:22864:15712/1
+AATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATCTCGTATG
++
+BBBBBFBBFFFFGGGGCEGGGGHGHHDGFHHHHHHHHHHHHHCHHGHFGBGDFGE?GHHGHFBHHFHHHHHHHHHGHFGFGHGHHGGC@DCFGHHGGGGGGGHHHHHHGGGGGFGGGGFFGGGGFADGFEFFFFFFFFFFF9;FFFF/BFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFEAECDFFFFFFFFFBFFFFFFFFFFFFFFEFBFBFFF/FFFDF-;-9;E@>-9DFFF/FFBF;-.:;.9A//
+@M01368:8:000000000-A3GHV:1:1107:24817:14233/1
+CTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACAT
++
+3AABABFFBFFFGCFGGGGGGGHHHFGCFGGGFFGHHCGHHHGHGHGHBFFHHHEDGGFGFGHHFFFHGGEGHFHHGHFHGFFHHHFGHHHFHACECEHHHBGFHGFHHHFHHF4GFHFHFHEHGGE/EG:A-CFGGFGADGGGGFGGGGDAAAADFA.-AFFECFDAAFFFFEFFFFBFF;D;BFFFB/;BFFFFFFFFFFFFFFBFFBF/;//;BFFFF?FFFFFFEDAFFFFFBF//:BFBACF--9/
+@M01368:8:000000000-A3GHV:1:1107:24830:14440/1
+AACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACC
++
+ABBBA@FFFFBBGGGGGGGGGGHGHHGHHGHHHGGHHHHHGHGHHGDHHHHHHAGGGGFHHGHHHHHHGHHHHHHHHHHHEGAFGFHFHHHHGEGHHHHHHHHHHHHHHHHHGGHHHGEFEGGHHGHHHHHGGHGFHH/?GHHHHGFGHGFHCGGBBDAFFFEFFFFFFFFFFFFFF=CDDADDFFFFEF=BFFFEFFFBFFFFEEBF./:FFFFFFFFFFFFFFFFFFFEFFFFFFFFFFF/BFBEFFC-
+@M01368:8:000000000-A3GHV:1:1107:26478:23602/1
+GCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATCTGTCTCTTATACACCTCTC
++
+1AAAAF1B13BBBEGGGFGGGGGGHHDB1BGFHHHFGFGGG0F00BGBGFGGF1GBGB1BGCGAEE/FGFHGHFHHHHHBFF1B0FGGF//F//FGFGFFF/1@B1DFHHHGGEFEDHFDFAFF0B//1FDD1GFFHHDF?1BD>GF/GCAC0C@?@-;99BBB->@--;-B//99B--9-BF=A--A-:A----9AA9AFBFBBB?E@BBFFFFFFFBFFFFFBFFFBBFFF//B/////-;9
+@M01368:8:000000000-A3GHV:1:1108:11059:23181/1
+GTTATTATTATGTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGAT
++
+CCCCCFFFFFFFGGGGGGGGGGGHHHHHHHHHHHHHHHHGHHHHHHHHHHHHHGHHGGGGHIIIHHHHHHHGHHHHGHHHGGHGGHHHHHHHHHHHHHHGGGGGHHGHHHHHHHHHHHHHHHGGGGGHHHHHFGHHHGGGGGGHHHGGGGGHGGGGHHHHHHGGGGGGHGGHEFGGGGGHGGG-ECHHHGGGGGGGGGFGFFGGGGFGGGCF?EFGG0;BFFFFB?9AAFFFFFFBF;BBFFBFFFFE?F/
+@M01368:8:000000000-A3GHV:1:1108:12233:13498/1
+TAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCCTGTCTCTTATACAC
++
+BCCBAFFBCCCCGGGGGGGGGGHHHHGGGGGHHHHHHGHGHBGFHHHHHGGGGGHHGGBFGHHGGGGGGGHHHGGGGHHGGGFHHHHHHGGGGGGHGHHGGGGGGGGGGGGGGHHHHFHHHGHGHHHHHHGHGHHGGFGGGDFFGGHHHGHGH/FHHHFHGHGHHGHHHGHHBAAAA3BDFFFFDGBFFEEGGGGHHGHFHHCFHGHGHHHGF3BFGFHGFEFHFHGH3EGFC1EEGBFGBHFGGFFHHHGHFHGHHGHGGHCEHEBCFF3ED3@GH4FDEG12FFHFFHG/G3FGA/@EFEFCG33FFGBBGHFHH/?BFBGFGFAGC2C/@-;@-;BFFEFADF?DFFFFFF?;AFFA;AD;..FEFFA--;9;D.9BFFBE?;.;///://///99//BB/9;F./B//BBFB9////99/
+@M01368:8:000000000-A3GHV:1:1109:25237:11722/1
+CCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATATCGTATGCCGT
++
+AABBBFFFFFBBF5BGGFGABGHGGAEFGFHHHHFHCHFHHBFGGGEHBGGHFFFFGFAEF5FHH?EGGF5AEG3?EBFHD?C/EFHFFEGEE?CFGGGHHFHB3EEFG?EEGHCFGGGGGGGECA?FFFDFBFGCG4EGFG??GACFGGHFHCFHCHBECDEFCEGHHHHHFFGGF3AFFHHFGEGCGHHGEHGFGHHEGG?EFHHH?EGGHHGGGGHHHHHHEGGGGGHFHHGFDDGGACFCC@?/FDDGHHHGHEFFHHH0FDHHFFEDCD.CFHHGDFGGGGGEFGC?EGHHHB0CGHHGCGHHHHBEHGHH.::ACA;FECFGGGGGFFFEFGGGGGGGFFBBBFGBFFFEFFFFBFFFFFFBBFBFFB9..AF?FFFFFFF9
+@M01368:8:000000000-A3GHV:1:1110:14751:26540/1
+TAACACTTGGGGGTAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACTGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGTTGTGCACGCGATAGCATTGCGCGACGCTGGCGCCGGCGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTG
++
+AAA?1CFFFFADGEEGFGB1112DGDGHGFGHHCG/ECEBGGHDFGHHFHGHEB1BCGFFE2EGHHGHFFFHHBFFHEFCGGHHFHHHHH111BFFHGHEHBEHGGECEFHGFHFGGDBBGHHBHHHH0GH22FGHGFFFH1BFCG0F@FGG11@GDHFG1D/1FGFHH/FCG.>0><-<@CCFFG.CC-@C?C9FFF0C---;------;9----9-9@-AAFF9B9---9-/;B9BF/9BB//B/;///
+@M01368:8:000000000-A3GHV:1:1110:15519:10008/1
+CTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACC
++
+BBBBBFFFFFFFGGGGGGCBGGE?GGGHHHHHGHHBEGGHHGGGGGHHHHHHHHHHHGGHHHHGFGGGGHGHGCFGHHHGGGCGGHGHGGGGGHFGGGHHHHHHGCEFGGHHHHGGGGGGGHGG/CEGHHHHGFHHHGFHHGFFHGHGHFGGEGFDDGGBCGHHGFHH/CHHHHGHGHF0CFGGGGGGGFFFFFBFFFFFFGFFGGF?DGEDEEFEFFFF?FFFFFFFFFFFFFFFBFFF.BFFFBFBBA;
+@M01368:8:000000000-A3GHV:1:1110:16559:7507/1
+CATTCAATTGTTATTATTATGTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAACTGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATC
++
+ABBBAFFFFFFFFGGGGGGGFGGGGAGHHGCHHGHHHHHHHHHHHGHHGHHHHHHHHHHHHHHHHFGGGHHHHHHHHBDHHHHHGGHFEEGHGGHHHHHHHGHHHEHFGGGGGGHHHF33FGHHG3GDDGH//EEGHHFFBF?GHHFCC@DGFCGGB?DGHAFGGHHGFH0E??<@DGHGGCFGGF?DGGGFFGGGGGGGG.C/0BBF?FBBEGG0FFF.AA9;B9/E////99;;:.//:FFFFBBF//9
+@M01368:8:000000000-A3GHV:1:1110:16700:6843/1
+AAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCTGTCTCTTATACACATCTCCGAGCC
++
+BBBBBFFFFFFFGGGGGGGGGGHHHHGHHHHHHHHHHHHGGGGGHHHHHGGHGHGGGGGGHHHGFFGHHGGGGHHHHHHCGG@FGHFHFEGGGGGGHGGGGDGHHHHHHHHHHHHHHGHHGHGHHGGGGGCGHEHGHHHFHHHFF.DGHHHHHHGHHHHHHGFGHGCGHGHHHHHHHHGHHHCD?:A::FCDGEGFGFFBFGBFGGGF00CBFFFF/BFBFFFFAE.FBBFBFFFFB/BFFBFFF/ADCAD
+@M01368:8:000000000-A3GHV:1:1110:18014:7856/1
+ATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGGGATAGACCTGTGATCCATCGTGATGCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATCTCGTATGCCGTCTTCTGCTTGCAAAAAAAAAATAG
++
+AABBBFFFFFFFCGGGCGGGGGGHHHHHGFHHHHHHGHHHGGGGGFHHGHFGGHHHGGFGGGHHGGGGGHHGGGGHGGHHHGGGGGGHHGHGDGGGGGGGGB/A99FE//BBFFF.9/FF?DA=@9./9
+@M01368:8:000000000-A3GHV:1:1110:23303:11846/1
+ACTTGGGGGTAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGTGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTC
++
+3ABB?FAB?DAAGGGFBGGBB5AFFFGFHHGGGEGHHHFHHF3EGFHHHHEFHHGGHHHGH3EFHHHHHBDGHHE?ECHGHGHHHHHHFHHHGHHHHHHHGGHGGFHHHFHHGFFHHFEGFHHHHHHEHHFDAGHHHH/BDDFGGH1FDBGHHHHHHHCGHHHFH?0CGCF>CC=@--AFBFFB?=BFDFFF//FDB;-9A-AD-.A.A=?-9-:B/AEB/BFF.A;DDFFFBBFFFF/BBFFFFBFF9B;
+@M01368:8:000000000-A3GHV:1:1111:13195:14562/1
+ATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATGTCGGATACCTGTCTCTTATACACATCTCCGAGCCCACGAGA
++
+ABAAAFFFFFFFGGGGGGGGGGGHHGG4FDFGFGGCGGGHGHG?EGHEGFFDHFHHHHGGFE@EHHGEEEGFCCEFFGFG/EHHHHHBFBGGHFHFHEHGHEFGGGED/EFDEFFEHHBGHHCFFFDFGGHHGFFFHHHHGFG>0<0DGGFHBGHFBDFGHGFFGGAGHHGCGBHFFHHHFFFBFGGGGF/:FFFCB9F9FF0FEFE?FF0BED-D.//BF9//BBFF/BFFFEFFFFED-DCFF?.:BFA
+@M01368:8:000000000-A3GHV:1:1111:14287:20817/1
+GCCAACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTCATCGCACCTACGTTCACTATTACAGGCGAACATACTTATTAAAGTGTGTTAATTAAT
++
+>>A3>AAAACFFFGFGFGGGGGHGHHHHHHHGGGGGHGHFFCGHHGBGHFHHHHAGHHHHEHHAGFFEHEAE?GHHHHEGFFFDGHGHBFFHFHHHGHGHGHBECG@@@EHGGEGCGGGGFFGGGG?BGGGGGG.-C.FEDCFFFEFFFAF/99BEFA.:9BFB/9FFFEFFFFFFEFFF/FBBFFFFFFFFFFFB//;.@@//;DFFFF//BBFFFBF;A;DF=>B//;9B//B/;/;9//9//;B/:B9
+@M01368:8:000000000-A3GHV:1:1111:23624:14516/1
+GTCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGGGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAG
++
+3>3AAFFFFFAFGGGGGGGGBGHHHHHHGGHGGHEHGHADFHHHHEGGGHBGHFFHHEHHGHFHGG5FBEEGEGHHHGHHHEFDGHHFFGFGGHHGHHHGHBHGHFHFHHGGGGFCFBGFGE?GFBECEGDGHEHGDGCGHGC/DF@GHGFFCGGGGFFFFDD?@C@GFEC?-ADHFFHBGHFBHFG0CC//.;B0/CA.;AA.;@.AB/9BB/A/.AFFFE/BFFF///9B/FBDE9/;99/B/BFFEF/
+@M01368:8:000000000-A3GHV:1:1111:7437:24508/1
+ACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTGTCTCTTATACACATCTCCGAGCCCACGAG
++
+CBCCDCFFFFFFGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHGGGFFEHGGHHHHHHHHHHHGHHGGGGGHHHHHHFHHHHGHHHHGHGGGGGHHHHHGGHHHGGGGGGHHHGGGGHHGGGGHHHHHHGGGGGGHGHHGGGGGGGHGGGGGCGHHHHGHHGHHHHHHHEDHHGHGGGGGD;BEGGGFFGGGGC:CFGGGGGGGGGFGGGFFFGFFFFF;FFF;BFFFFFFFFFFFB:FFFFD=CAEEEF>-
+@M01368:8:000000000-A3GHV:1:1111:8665:25542/1
+TCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTGTCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCG
++
+AA3AAFFFFFFFGGGFGFFGGGGHGH4AGGGFHHCGEE2FGHHHHHHHHHHGFHGF53FHEGGFAF5CFHHGGFGHFHHGGHHHCHHHHHHHFHHGH?EEEG1FFFEHHFHFGGHHGG?F4FBGHGHCHEF0//-9--;0CFGG?@BGDGFFFFEFBBBDA?FFBFFFF=B;-9.AA9EFFFF/;9BD.//;9/9/B:/:BFBFFBFFF/B:BFF//;/B/FFFBFF.A-BFFFBA/F//BFFFBF/;/A-
+@M01368:8:000000000-A3GHV:1:1111:9655:13916/1
+GGCCCATAACACTTGGGGGTAGCTAAAGTGAACTGTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGCGGTGTCCACGCAATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGA
++
+1>>1AAFFFFFBGGFE1EEEEGGHGHHH2FGHHHFGFGHGCFGGGEFHGGEGGHHHHGHEFBFEGHHHGHHBEHHHHGHGFHHHGGGGHHEGGGGHHHGFHGHHHH1FHHG?G/AGF1GBFGEFFHF2FDD0FG--99@=---AAABA-BF/B?A@F-9BBFF//BB/9/
+@M01368:8:000000000-A3GHV:1:1112:10272:7828/1
+GTATCCGACATCTGGTTCCTACTTCAGGGTCATAAAACCTAAATAGCCCACACGTTCCCCTTAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCTGTCTCTTATACACATCTCCGAGCCCACGAGACTAAGGCGAATCTCGTATGCCGTCTT
++
+AAABABBBBBBFGGGGGGGGGGHGHHGHGHHHHHHHHHGHHHGGHDGHHHGGGGHHHHHHHHHHHHHHHFHGHHHHGGHGGHHHFHHHHHCGHFFHHHHHHHHHHHHHGHGEFGAEEEEHHGHHGHGHHHHHHHGHHHHHHGHGHFFBC/BA?BGGGFFFFFFFFFFFFFFFC-@DDFFFFFFFEFAFFFFFFBFBFFFFFFFFFFFFFFFFBFF->@FFFFFFFFFFBFBFAD--.99;A?////:.9A.
+@M01368:8:000000000-A3GHV:1:1112:9832:16531/1
+CTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGGGCTGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCTTGAAGTAGGAACC
++
+AABABFFFFFFFF4GGGGEBGEFGHGGHGHGHHHGGHFBGFGGGGGHHEFHGEHFHFHEHHHHHGCGGGHFHHCFGHE@1EEEFFGB?EEEEHBGGGCHHGHHBEE@>EAHHFAEBDGGGCEFF?CEGFFHHHHHFHHHFHGHCGCAHHF<..C.D=0CD.GFHHHG.CAGHC:CHB0GGGFFB0:CFA.A-;9.;000CBBFFBFGA.9AA;A;EDDE.ABBFFFF9;BEFFF/BF//9/B//9:B//..
+@M01368:8:000000000-A3GHV:1:1112:9832:6701/1
+CGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGA
++
+AABBBBFFFFFFGGGFGGGGGGHHHGGHGGHHHHHHHHHHHGHHGGGGGHHHHHHHHHHHHHHHHHHGGCGDHHHHFGGHHHGGGGGFGGHGGGGHHGGGGHHHHHHGGGGGGHHGGGGDGGFGHGGFCDCHHHHGHHHHGHHFAGFGGEHFGEG.C1>11F1D1DDFFFFGGG1FH3GHGHGHGHFHEC?EC0B1FBGFB1GHHH21AF2HH2FEGEHAE10AAE/>/FFHE?/E/?E1@EFFH?E@/EGGG//B11B//<@@C0F/<0AAAAFFFBFFFGGGGGGGGGGHHFHGHHHHGHHHHHHHHHHHGGGGHHHHFHHHHFHGHHHHGAFFEFHEGHHHHHHHHGHEHHGGFGGGHHHHHHFHHHHHGGHHHHGGGGGHFHHFF?HHGGFECEFFGHFFGFHGECDGHGBGFHGDF@@?CGFHCEGGGFD.CCC?EGHBHHHFHHFBCFFGEB/CEGGGGDAA.90C9CEBFGGBBF/9.9FBFFFBBFF//99FFFFEABF//99FFEFFFBFF
+@M01368:8:000000000-A3GHV:1:1113:5741:16959/1
+TAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGA
++
+ABBBBFFFFFFFGGGFGGGGGGHHHGHHGGHBGHGAGFFCAFGHGFFGHHGFHHHHHGGGGGHGHHHHHHHHE3BFFHHHGG0EDF@GHFFGGGHGGGGGGGGGGGGGHHGGEEFHGFHHDDG@DGGGHHGDGGGGGHGG?CF?HHGHHHGHGHHHFFHGGGHHHHGGCD.;0A33>FFFFFF@FFFGGGGFGGD4EGGGGGHHGFFGHFGGHHHFEFHECFHHHEHGAGBCCGCCEGGHGHEGFBFHFHHHHGGGHFHGHEGGGFEGEGG??@DBGHGGC-@FFGHFHFHB-??DA-DD@9:BEBG@B?E?A.ABBFBFA??F.FF/BFFB/B9B/9;BF9FF9FFFFFFFFFFFFFF?BB?;9EE;-;DDB9//;B-B@;ABFFEFFFF/-.9A.;//9/BF./B/..9.9:...//////
+@M01368:8:000000000-A3GHV:1:1114:14540:5315/1
+CTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGGGGGCTATTTAGGTTTTT
++
+AABCCFFFFFFFGGGGGGGGGGHHHHHHHFHHHHGHHGHHGGGHGGHHHHHHHGHHHHHHGGGGGHHFHHHFGHHGGFHHHHHGGGGGHHHGHGGHHHGGGGGGHGHGGGGHHGGGGHHHHHEGDDFGFFFHHGGGGGCDAFCFGFDHHHHGGHGHHHHHHBCGEHHHHGGHG.ACGEHGG0CBFFF:A;BB0;09CGF00CFFFE0AA?//CFFFFFFFFFFFFFFFBEF;A.-=A--:BBFB90;;FE.
+@M01368:8:000000000-A3GHV:1:1114:15066:16302/1
+TAAATAAGACATCACGATGGATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACATACTTACTAACGGTTGTTAATTAATTATTGCTTGTAGGACA
++
+BBBBAFFBDFBFBGGGGGFGGGBGFFFHGFHHGFFFHGHHHGHHHHFFHHHGHGC?AEFFHEFBFFFGHHHHH1FDGFFHGHGHFEGCGC-<>ABFFFFFFGGCGC1BBF1GHHHBHHHHGFHGH1A100AA/GGEHGFBAA1FFD2FHHHHECG2F1BB/E0FC/A>EE/FGGFGEF1EGBBEHHCGGGHBGEHFHE0B?E--;C?CCGGG@A@GBFBBBB09?@??A-AB--ABE@=-=-9AE9A;FFFFFE=9-//;//;9FF/////;;///9B///;/B////9FFBB;--A@-;/9;9-:-/;;FFFE9BF?@;-9-99/B9F/://///99/;
+@M01368:8:000000000-A3GHV:1:1114:2404:13066/1
+TCCTACAAGCATTAATTAATTAACACACTTTAGTAAGTATGTTCGCCTGTAATATTGAACGTAGGTGCGATAAATAATAGGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCTGTCTATTATACACATC
++
+CCCCCFFFFCFFGGGGGGGGGGHHHHHGHHHHHHHHHFFHHHHHGGGGHHHHHHHHFHHHHHHFGGHHGGHGGHHHHHHGHHFHHHHGGGGGGHHHHHHGHHHHHHHHHHGGGGGGGHH?FGHHHGGGGGGHHGGFGGHHGGGGHHHHHFGGGGFGHGHHGGGGGGGHGGGEGGHHGHHHHHHHHHGFBFFDA0FGGGFFGG0:EFGGGGGGGG;AEBF0B0BFFBFFFFFFFFFFFFFFFFFFFFFEFF0
+@M01368:8:000000000-A3GHV:1:1114:9184:6959/1
+GGATGAGGCAGGAATCAAAGACAGATACTGCGACATAGGGTGCTCCGGCTCCAGCGTCTCGCAATGCTATCGCGTGCACACCCCCCAGACGAAAATACCAAATGCATGGAGAGCTCCCGTGAGTGGTTAATAGGGTGATAGACCTGTGATCCATCGTGATGTCTTATTTAAGGGGAACGTGTGGGCTATTTAGGTTTTATGACCCTGAAGTAGGAACCAGATGTCGGATACAGTTCACTTTCTGTCTCTTA
++
+AABBBFFFCCCBFGGGGGGGGGHHHHHHHHGGGGGGHHHG3FFHHHFGFGGGHHHGGGEHHGGGGHHHHHHGGGGGGHGHGGGGGGGDEGGGGEGGFHHHHHHHHHHHHGGGFGEHHGGFDGGGDFFGFHHHHGFCFHHHHHEFHFHGGFFGHHGGGHHHHDGHHHFHHHFFFFGFGGG.EFGGGGFGEBFGGGFGFGGGGFFBFGGBBFFFFFB/FEFF?///;A::AABBFFFBFFFFFFFFFBFFFF/
diff -r 000000000000 -r 382518f24d6d tool-data/geographic_location_1.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/geographic_location_1.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,279 @@
+not applicable
+not collected
+not provided
+restricted access
+Afghanistan
+Albania
+Algeria
+American Samoa
+Andorra
+Angola
+Anguilla
+Antarctica
+Antigua and Barbuda
+Arctic Ocean
+Argentina
+Armenia
+Aruba
+Ashmore and Cartier Islands
+Atlantic Ocean
+Australia
+Austria
+Azerbaijan
+Bahamas
+Bahrain
+Baker Island
+Baltic Sea
+Bangladesh
+Barbados
+Bassas da India
+Belarus
+Belgium
+Belize
+Benin
+Bermuda
+Bhutan
+Bolivia
+Borneo
+Bosnia and Herzegovina
+Botswana
+Bouvet Island
+Brazil
+British Virgin Islands
+Brunei
+Bulgaria
+Burkina Faso
+Burundi
+Cambodia
+Cameroon
+Canada
+Cape Verde
+Cayman Islands
+Central African Republic
+Chad
+Chile
+China
+Christmas Island
+Clipperton Island
+Cocos Islands
+Colombia
+Comoros
+Cook Islands
+Coral Sea Islands
+Costa Rica
+Cote d'Ivoire
+Croatia
+Cuba
+Curacao
+Cyprus
+Czech Republic
+Democratic Republic of the Congo
+Denmark
+Djibouti
+Dominica
+Dominican Republic
+East Timor
+Ecuador
+Egypt
+El Salvador
+Equatorial Guinea
+Eritrea
+Estonia
+Ethiopia
+Europa Island
+Falkland Islands (Islas Malvinas)
+Faroe Islands
+Fiji
+Finland
+France
+French Guiana
+French Polynesia
+French Southern and Antarctic Lands
+Gabon
+Gambia
+Gaza Strip
+Georgia
+Germany
+Ghana
+Gibraltar
+Glorioso Islands
+Greece
+Greenland
+Grenada
+Guadeloupe
+Guam
+Guatemala
+Guernsey
+Guinea
+Guinea-Bissau
+Guyana
+Haiti
+Heard Island and McDonald Islands
+Honduras
+Hong Kong
+Howland Island
+Hungary
+Iceland
+India
+Indian Ocean
+Indonesia
+Iran
+Iraq
+Ireland
+Isle of Man
+Israel
+Italy
+Jamaica
+Jan Mayen
+Japan
+Jarvis Island
+Jersey
+Johnston Atoll
+Jordan
+Juan de Nova Island
+Kazakhstan
+Kenya
+Kerguelen Archipelago
+Kingman Reef
+Kiribati
+Kosovo
+Kuwait
+Kyrgyzstan
+Laos
+Latvia
+Lebanon
+Lesotho
+Liberia
+Libya
+Liechtenstein
+Lithuania
+Luxembourg
+Macau
+Macedonia
+Madagascar
+Malawi
+Malaysia
+Maldives
+Mali
+Malta
+Marshall Islands
+Martinique
+Mauritania
+Mauritius
+Mayotte
+Mediterranean Sea
+Mexico
+Micronesia
+Midway Islands
+Moldova
+Monaco
+Mongolia
+Montenegro
+Montserrat
+Morocco
+Mozambique
+Myanmar
+Namibia
+Nauru
+Navassa Island
+Nepal
+Netherlands
+New Caledonia
+New Zealand
+Nicaragua
+Niger
+Nigeria
+Niue
+Norfolk Island
+North Korea
+North Sea
+Northern Mariana Islands
+Norway
+Oman
+Pacific Ocean
+Pakistan
+Palau
+Palmyra Atoll
+Panama
+Papua New Guinea
+Paracel Islands
+Paraguay
+Peru
+Philippines
+Pitcairn Islands
+Poland
+Portugal
+Puerto Rico
+Qatar
+Republic of the Congo
+Reunion
+Romania
+Ross Sea
+Russia
+Rwanda
+Saint Helena
+Saint Kitts and Nevis
+Saint Lucia
+Saint Pierre and Miquelon
+Saint Vincent and the Grenadines
+Samoa
+San Marino
+Sao Tome and Principe
+Saudi Arabia
+Senegal
+Serbia
+Seychelles
+Sierra Leone
+Singapore
+Sint Maarten
+Slovakia
+Slovenia
+Solomon Islands
+Somalia
+South Africa
+South Georgia and the South Sandwich Islands
+South Korea
+Southern Ocean
+Spain
+Spratly Islands
+Sri Lanka
+Sudan
+Suriname
+Svalbard
+Swaziland
+Sweden
+Switzerland
+Syria
+Taiwan
+Tajikistan
+Tanzania
+Tasman Sea
+Thailand
+Togo
+Tokelau
+Tonga
+Trinidad and Tobago
+Tromelin Island
+Tunisia
+Turkey
+Turkmenistan
+Turks and Caicos Islands
+Tuvalu
+USA
+Uganda
+Ukraine
+United Arab Emirates
+United Kingdom
+Uruguay
+Uzbekistan
+Vanuatu
+Venezuela
+Viet Nam
+Virgin Islands
+Wake Island
+Wallis and Futuna
+West Bank
+Western Sahara
+Yemen
+Zambia
+Zimbabwe
diff -r 000000000000 -r 382518f24d6d tool-data/host_health_state_1.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/host_health_state_1.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,6 @@
+not applicable
+diseased
+healthy
+not provided
+not collected
+restricted access
diff -r 000000000000 -r 382518f24d6d tool-data/host_sex_1.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/host_sex_1.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,9 @@
+other
+not applicable
+not provided
+neuter
+not collected
+female
+restricted access
+male
+hermaphrodite
diff -r 000000000000 -r 382518f24d6d tool-data/instrument_model.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/instrument_model.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,58 @@
+minION
+GridION
+PromethION
+454 GS
+454 GS 20
+454 GS FLX
+454 GS FLX+
+454 GS FLX Titanium
+454 GS Junior
+Illumina Genome Analyzer
+Illumina Genome Analyzer II
+Illumina Genome Analyzer IIx
+Illumina HiSeq 1000
+Illumina HiSeq 1500
+Illumina HiSeq 2000
+Illumina HiSeq 2500
+Illumina HiSeq 3000
+Illumina HiSeq 4000
+Illumina iSeq 100
+Illumina HiScanSQ
+Illumina NextSeq 500
+Illumina NextSeq 550
+Illumina NovaSeq 6000
+Illumina HiSeq X Five
+Illumina HiSeq X Ten
+Illumina MiSeq
+Illumina MiniSeq
+AB SOLiD System
+AB SOLiD System 2.0
+AB SOLiD System 3.0
+AB SOLiD 3 Plus System
+AB SOLiD 4 System
+AB SOLiD 4hq System
+AB SOLiD PI System
+AB 5500 Genetic Analyzer
+AB 5500xl Genetic Analyzer
+AB 5500xl-W Genetic Analysis System
+Ion Torrent PGM
+Ion Torrent Proton
+Ion Torrent S5
+Ion Torrent S5 XL
+Complete Genomics
+PacBio RS
+PacBio RS II
+Sequel
+Sequel II
+AB 3730xL Genetic Analyzer
+AB 3730 Genetic Analyzer
+AB 3500xL Genetic Analyzer
+AB 3500 Genetic Analyzer
+AB 3130xL Genetic Analyzer
+AB 3130 Genetic Analyzer
+AB 310 Genetic Analyzer
+BGISEQ-500
+DNBSEQ-T7
+DNBSEQ-G400
+DNBSEQ-G50
+DNBSEQ-G400 FAST
diff -r 000000000000 -r 382518f24d6d tool-data/library_layout.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/library_layout.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,2 @@
+SINGLE
+PAIRED
diff -r 000000000000 -r 382518f24d6d tool-data/library_selection.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/library_selection.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,27 @@
+RANDOM
+PCR
+RANDOM PCR
+RT-PCR
+HMPR
+MF
+repeat fractionation
+size fractionation
+MSLL
+cDNA
+ChIP
+MNase
+DNase
+Hybrid Selection
+Reduced Representation
+Restriction Digest
+5-methylcytidine antibody
+MBD2 protein methyl-CpG binding domain
+CAGE
+RACE
+MDA
+padlock probes capture method
+Oligo-dT
+Inverse rRNA selection
+ChIP-Seq
+other
+unspecified
diff -r 000000000000 -r 382518f24d6d tool-data/library_source.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/library_source.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,7 @@
+GENOMIC
+TRANSCRIPTOMIC
+METAGENOMIC
+METATRANSCRIPTOMIC
+SYNTHETIC
+VIRAL RNA
+OTHER
diff -r 000000000000 -r 382518f24d6d tool-data/library_strategy.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/library_strategy.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,38 @@
+WGS
+WGA
+WXS
+RNA-Seq
+ssRNA-seq
+miRNA-Seq
+ncRNA-Seq
+FL-cDNA
+EST
+Hi-C
+ATAC-seq
+WCS
+RAD-Seq
+CLONE
+POOLCLONE
+AMPLICON
+CLONEEND
+FINISHING
+ChIP-Seq
+MNase-Seq
+DNase-Hypersensitivity
+Bisulfite-Seq
+CTS
+MRE-Seq
+MeDIP-Seq
+MBD-Seq
+Tn-Seq
+VALIDATION
+FAIRE-seq
+SELEX
+RIP-Seq
+ChIA-PET
+Synthetic-Long-Read
+Targeted-Capture
+Tethered Chromatin Conformation Capture
+ChM-Seq
+GBS
+OTHER
diff -r 000000000000 -r 382518f24d6d tool-data/study_type.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/study_type.loc.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,14 @@
+Whole Genome Sequencing
+Metagenomics
+Transcriptome Analysis
+Resequencing
+Epigenetics
+Synthetic Genomics
+Forensic or Paleo-genomics
+Gene Regulation Study
+Cancer Genomics
+Population Genomics
+RNASeq
+Exome Sequencing
+Pooled Clone Sequencing
+Transcriptome Sequencing
diff -r 000000000000 -r 382518f24d6d tool_data_table_conf.xml.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.sample Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -r 000000000000 -r 382518f24d6d tool_data_table_conf.xml.test
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.test Sat Nov 28 09:45:44 2020 +0000
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+