# Path: dark/reads.py
# class DNARead(_NucleotideRead):
#     """
#     Hold information and methods to work with DNA reads.
#     """
#     ALPHABET = set('ATCG')
# 
#     COMPLEMENT_TABLE = _makeComplementTable(ambiguous_dna_complement)


import sys
import argparse
import multiprocessing
from dark.aligners import mafft
from dark.reads import DNARead
from dark.fasta import FastaReads
#!/usr/bin/env python



MAFFT_DEFAULT_ARGS = '--globalpair --maxiterate 1000 --preservecase'
MAFFT_ALGORITHMS_URL = (
    'https://mafft.cbrc.jp/alignment/software/algorithms/algorithms.html')


if __name__ == '__main__':
    parser = argparse.ArgumentParser(
        formatter_class=argparse.ArgumentDefaultsHelpFormatter,
        description='Combine multiple sequences into a single sequence.')

    parser.add_argument(
        '--fastaFiles', required=True, nargs='+',
        help=('The name of the FASTA files containing the sequences to be '
              'combined.'))

    parser.add_argument(
        '--threads', type=int, default=multiprocessing.cpu_count(),
        help=('The number of threads to use when running the aligner (if '
              '--align is used and the alignment algorithm can make use of '
              'multiple threads).'))


# Path: dark/reads.py
# class DNARead(_NucleotideRead):
#     """
#     Hold information and methods to work with DNA reads.
#     """
#     ALPHABET = set('ATCG')
# 
#     COMPLEMENT_TABLE = _makeComplementTable(ambiguous_dna_complement)


# Path: bin/combine-sequences.py
import sys
import argparse
import multiprocessing
from dark.aligners import mafft
from dark.reads import DNARead
from dark.fasta import FastaReads

#!/usr/bin/env python



MAFFT_DEFAULT_ARGS = '--globalpair --maxiterate 1000 --preservecase'
MAFFT_ALGORITHMS_URL = (
    'https://mafft.cbrc.jp/alignment/software/algorithms/algorithms.html')


if __name__ == '__main__':
    parser = argparse.ArgumentParser(
        formatter_class=argparse.ArgumentDefaultsHelpFormatter,
        description='Combine multiple sequences into a single sequence.')

    parser.add_argument(
        '--fastaFiles', required=True, nargs='+',
        help=('The name of the FASTA files containing the sequences to be '
              'combined.'))

    parser.add_argument(
        '--threads', type=int, default=multiprocessing.cpu_count(),
        help=('The number of threads to use when running the aligner (if '
              '--align is used and the alignment algorithm can make use of '
              'multiple threads).'))


    parser.add_argument(