changeset 0:294f5ba28746 draft

"planemo upload for repository https://github.com/abims-sbr/tools-abims/tools/gffalign commit d8aa0e49353e78e5fd772498a1fcf591e2744f99"
author abims-sbr
date Mon, 30 Nov 2020 18:20:46 +0000
parents
children afed7e0cf69e
files GFFalign.py GFFalign.xml test-data/genome_aln.tab test-data/output.gff test-data/query.gff test-data/target.gff
diffstat 6 files changed, 545 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/GFFalign.py	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,337 @@
+#!/usr/bin/python3 
+
+import argparse
+import os
+import gffutils
+from Bio import SeqIO
+
+
+class GeneComp:
+    # This cass aims to discover the position of the genes in the alignment
+    # and to extract informations on the genes characteristics
+
+    def __init__(self, ccgene, qstart, qend, otgene, dstart, dend, extract, tol, gattr, output=None):
+        # d* / ot* are the db result, q*  / cc the query
+        # gene are the gene from maf-tab file 
+        # start, end are the coordinates  '''
+        self.otbeg = int(otgene.start) - dstart
+        self.otend = int(otgene.end) - dstart
+        self.ccbeg = int(ccgene.start) - qstart
+        self.ccend = int(ccgene.end) - qstart
+        self.tol = tol # how much tolerance in nucleotides
+        self.ccname = ccgene.chrom
+        self.otname = otgene.chrom
+        self.q_outstart = qstart+self.otbeg
+        self.q_outend = qstart+self.otend
+        self.genelist = []
+        self.qstart = qstart
+        if extract:
+            self.fastafile = extract[0]
+            self.fastaout = extract[1]
+        self.output = output
+        self.out = ""
+        self.gattr = f"New_annotation='{gattr}'"
+
+    def is_equal(self):
+        if (self.otbeg - self.tol) <= self.ccbeg <= (self.otbeg + self.tol) and (self.otend - self.tol) <= self.ccend <= (self.otend + self.tol):
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=confirmed"
+            return self.out
+
+    def is_shorter(self):
+        if (self.otbeg + self.tol) < self.ccbeg and (self.otend - self.tol) > self.ccend:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=shorter"
+            return self.out
+        elif (self.otbeg - self.tol) <= self.ccbeg <= (self.otbeg + self.tol) and (self.otend - self.tol) > self.ccend:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=shorter_right"
+            return self.out
+        elif (self.otbeg + self.tol) < self.ccbeg and (self.otend - self.tol) <= self.ccend <= (self.otend + self.tol):
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=shorter_left"
+            return self.out
+
+    def is_longer(self):
+        if (self.otbeg - self.tol) > self.ccbeg and (self.otend + self.tol) < self.ccend:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=longer"
+            return self.out
+        elif (self.otbeg - self.tol) <= self.ccbeg <= (self.otbeg + self.tol) and (self.otend + self.tol) < self.ccend:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=longer_right"
+            return self.out
+        elif (self.otbeg - self.tol) > self.ccbeg and (self.otend - self.tol) <= self.ccend <= (self.otend + self.tol):
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=longer_left"
+            return self.out
+
+    def is_offset(self):
+        if (self.otbeg + self.tol) < self.ccbeg < (self.otend - self.tol) and (self.otend + self.tol) < self.ccend:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=offset_right"
+            return self.out
+        if (self.otbeg - self.tol) > self.ccbeg and (self.otbeg - self.tol) < self.ccend < self.otend + self.tol:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=offset_left"
+            return self.out
+
+    def is_different(self):
+        if self.otbeg - self.tol > self.ccend or self.otend + self.tol < self.otbeg:
+            self.out = f"{self.ccname}\tprediction\tgene\t{self.q_outstart}\t{self.q_outend}\t.\t{self.qstart}\t.\tID={self.ccname};{self.gattr};Note=new"
+            return self.out
+
+    def extract_fasta(self):
+        with open(self.fastaout,"a") as fileout:
+            with open(self.fastafile) as filefasta:
+                for record in SeqIO.parse(filefasta,"fasta"):
+                    if record.id == self.ccname:
+                        fileout.write(f">{self.ccname}_{self.q_outstart}:{self.q_outend}\n{record.seq[self.q_outstart:self.q_outend]}\n")
+
+    # def extract_stout(self):
+    #     with open(self.fastafile) as filefasta:
+    #             for record in SeqIO.parse(filefasta,"fasta"):
+    #                 if record.id == self.ccname:
+    #                     print(f">{self.ccname}_{self.q_outstart}:{self.q_outend}\n{record.seq[self.q_outstart:self.q_outend]}")
+
+
+    #def __str__(self):
+    #    return f"{self.ccname}\t{self.q_outstart}\t{self.q_outend}"
+
+
+    def fout(self):
+        try:
+            if self.__class__.fout.called:
+                with open(self.output,"a") as fileout:
+                    fileout.write(self.out+"\n")
+        except AttributeError:
+            try:
+                if os.path.isfile(self.output):
+                    os.remove(self.output)
+                with open(self.output,"a") as fileout:
+                        #fileout.write("##gff-version 3\n")
+                    fileout.write(f"##gff-version 3\n{self.out}\n")
+                self.__class__.fout.called = True
+                self.__class__.fout(self)
+            except TypeError:
+                pass
+
+
+def diff_gene(query_genes, target_genes, dstart, dend, qstart, qend, query_db):
+    # are the  two genes the same?
+    if args.extract:
+        extract = args.extract
+    else:
+        extract = None
+
+    if args.tollerance:
+        tol = args.tollerance
+    else:
+        tol = 30
+
+
+    for otgene in target_genes:
+        # gattr is a variable created to store the  the annotation of the target gene. 
+        # It will be use to suggest a functional annotation
+        gattr = str(otgene).split("\t")[-1]
+        for ccgene in query_genes:
+            algene = GeneComp(ccgene, qstart, qend, otgene, dstart, dend, extract, tol, gattr)
+            if "new" in args.verbosity or "all" in args.verbosity:
+                if algene.is_different():
+                    algene_out = algene.is_different()
+                    algene_name = algene_out.split("\t")[0]
+                    algene_start = int(algene_out.split("\t")[3])
+                    algene_end = int(algene_out.split("\t")[4])
+                    #print(al_name, al_start, al_end)
+                    #print(list(target_db.region(region=(al_name, al_start, al_end), completely_within=True)))
+                    if not list(query_db.region(region=(algene_name, algene_start, algene_end), completely_within=False)):
+                        if args.output:
+                            algene.output=args.output
+                            algene.fout()
+                        else:
+                            print(algene.is_different())
+                            if args.extract:
+                                algene.extract_fasta()
+
+            if "shorter" in args.verbosity or "all" in args.verbosity:
+                if algene.is_shorter():
+                    if args.output:
+                        algene.output=args.output
+                        algene.fout()
+                    else:
+                        print(algene.is_shorter())
+                        if args.extract:
+                            algene.extract_fasta()
+            if "longer" in args.verbosity or "all" in args.verbosity:
+                if algene.is_longer():
+                    if args.output:
+                        algene.output=args.output
+                        algene.fout()
+                    else:
+                        print(algene.is_longer())
+                        if args.extract:
+                            algene.extract_fasta()
+            if "offset" in args.verbosity or "all" in args.verbosity:
+                if algene.is_offset():
+                    if args.output:
+                        algene.output=args.output
+                        algene.fout()
+                    else:
+                        print(algene.is_offset())
+                        if args.extract:
+                            algene.extract_fasta()
+            if "confirmed" in args.verbosity:
+                if algene.is_equal():
+                    if args.output:
+                        algene.output=args.output
+                        algene.fout()
+                    else:
+                        print(algene.is_equal())
+                        if args.extract:
+                            algene.extract_fasta()
+
+
+def gff_gene_check(GffName, db_name, memory=0):
+    # The IDs on the GFFs must be unique. Moreover, because only the gene
+    # information are needed, all the other information must be removed
+    # from the GFFs.
+    tempgff=""
+    for line in open(GffName):
+        if line[0] != "#":
+            if line.split()[2] == "gene":
+                tempgff+=line
+
+        else:
+            tempgff+=line
+    
+    if memory:
+        # Write the db in memory and return it as variable so it can be used
+        # as subclass of _DBCreator
+        dbout = gffutils.create_db(tempgff, ":memory:", from_string=True)
+        return dbout
+    else:
+        gffutils.create_db(tempgff, db_name, from_string=True)
+
+def check_strand(start,leng,strand):
+    if strand == "+":
+        end = start+leng
+    else:
+        end = start-leng
+        start,end = end,start
+    return(start,end)
+
+def check_position(line, query_db,target_db):
+    # check if there is a gene in the aligned area
+    # lets' start with the coordinatescharacteristics
+    elsp = line.split('\t')
+    dname = elsp[1]
+    dstart = int(elsp[2])
+    dlen = int(elsp[3])
+    dstrand = elsp[4]
+    qname = elsp[6]
+    qstart = int(elsp[7])
+    qlen = int(elsp[8])
+    qstrand = elsp[9]
+
+    # check the strand, if - reverse the start and the end
+    qstart,qend = check_strand(qstart,qlen,qstrand)
+    dstart,dend = check_strand(dstart,dlen,dstrand)
+
+    #counter
+    d_counter = 0
+    
+    # lists of gene within the coordinates
+    target_genes = [ gene for gene in list(target_db.region(region=(dname, dstart, dend), completely_within=True))]
+    query_genes = [ gene for gene in list(query_db.region(region=(qname, qstart, qend), completely_within=True))]
+
+    if len(target_genes):
+    # and len(query_genes):
+######
+# PER PROVARE HO TOLTO QUESTO, DA CONTROLLARE 
+######
+        #if len(target_genes) >= len(query_genes): # the number of genes in the aligned area must be bigger in the target (?)
+        diff_gene(query_genes, target_genes, dstart, dend, qstart, qend, query_db)
+
+
+    if d_counter>=1:
+        return(d_counter)
+    else:
+        return(0)
+
+
+def main(args):
+    fcounter = 0
+    # import the GFF library and create (has to be done only once)
+    # the GFF databases
+    target_db = query_db = None
+    db_query_name=args.queryGff + "_db"
+    db_target_name=args.targetGff + "_db"
+
+    if args.force_database:
+        # remove the database if required by user
+        os.remove(db_query_name)
+        os.remove(db_target_name)
+
+    if args.use_query_database:
+        # use the db passed by the user
+        query_db = gffutils.FeatureDB(args.use_query_database)
+    else:
+        #create the db
+        #gffutils.create_db(args.queryGff, db_query_name)
+        qdbout = gff_gene_check(args.queryGff, db_query_name, args.memory)
+
+        if args.memory:
+            query_db = gffutils.FeatureDB(qdbout.dbfn)
+        else:
+            query_db = gffutils.FeatureDB(db_query_name)
+        # except ValueError:
+        #     print("Please check your GFF file")
+        # except:
+        #     raise Exception(f"It seems you already have a db called {db_query_name}. Use the -qu if you want to use it or delete the")
+
+
+    if args.use_target_database:
+        target_db = gffutils.FeatureDB(args.use_target_database)
+    else:
+        tdbout = gff_gene_check(args.targetGff, db_target_name, args.memory)
+        if args.memory:
+            target_db = gffutils.FeatureDB(tdbout.dbfn)
+        else:
+            target_db = gffutils.FeatureDB(db_target_name)
+        # except ValueError:
+        #     print("Please check your GFF file")if "all" in args.verbosity:
+        # except:
+        #     raise Exception(f"It seems you already have a db called {db_target_name}. Use the -du if you want to use it or delete the")
+
+    # put the content of the DB in objects
+    with open(args.aln) as maftab:
+        for line in maftab:
+            if line[0] != "#":
+                fcounter += check_position(line, query_db, target_db)
+
+if __name__ == '__main__':
+    parser = argparse.ArgumentParser(description = '''Tool to extract genes coordinates from a whole genome alignent.
+                        This script needs an alignement in TAB format and two gff files''')
+    parser.add_argument('aln', help='alignment file in TAB format. The suggested way to obtain it is to run Last and\
+                                     than convert the file from MAF to TAB with maf-convert')
+    parser.add_argument('queryGff',
+                        help='''Gff file of the query organism. The gene IDs in the GFF must be unique.''')
+    parser.add_argument('targetGff',
+                        help='''Gff file of the "target" organism. The gene IDs in the GFF must be unique.''')
+    parser.add_argument("-uq", "--use-query-database",
+                        help='''Use this parament if you already have a query gffutils formatted database or
+                                if it\'s not the first time you run this script''', type=str)
+    parser.add_argument("-ut", "--use-target-database",
+                        help='''Use this parament if you already have a target gffutils formatted database or
+                                if it\'s not the first time you run this script''', type=str)
+    parser.add_argument("-fd", "--force-database", help="delete old gffutils databases and create new ones", action='store_true')
+    parser.add_argument("-m", "--memory", help='''create an in-memory database. This option can't be used with the other DB options.
+                                probably usefull in Galaxy integration''', action='store_true' )
+    parser.add_argument("-e", "--extract",
+                        help='''Extract the fasta sequence of the new suggested gene. It takes two argument: the fasta file
+                        of the genome and the name of the output file. This will slow down the process A LOT.''', nargs=2, type=str)
+    #parser.add_argument("-es", "--extract_stout", help='Like -e but it will print the result in the standard output. FASTER than -e. It need the fasta file', type=str)
+    parser.add_argument("-o", "--output", help='Name of the output file. Default output is stout', type=str)
+    parser.add_argument("-t", "--tollerance", help='Interval, in nucleotide, within a gene is considered in the same position. Default 30', default=30, type=int)
+    parser.add_argument("-v", "--verbosity",
+                        help='''Output options. If not specify the software shows only the genes that are in the  exact position of the
+                        genes in the target. It\'s possible to show annotated genes that are in aligned regions but that have different lengths or in slightly 
+                        different positions. It's possible to select multiple, space separated, values.''',
+                        choices=["all","shorter", "longer", "offset", "new", "confirmed"], nargs='*', default='new', type=str)
+                        #metavar=('all','shorter','longer','shifted','new'), 
+                        #action='append', 
+                        #choices=["all","shorter", "longer", "shifted", "new"], default="new")
+    parser.add_argument('--version', action='version', version='0.1.0')
+    args = parser.parse_args()
+    main(args)
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/GFFalign.xml	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,73 @@
+<tool id="gffalign" name="GFF align" version="0.1.0+galaxy0" python_template_version="3.5">
+    <requirements>
+        <requirement type="package" version="1.78">biopython</requirement>
+        <requirement type="package" version="0.10.1">gffutils</requirement>
+    </requirements>
+    <command detect_errors="exit_code"><![CDATA[
+        python3 '$__tool_directory__/GFFalign.py'
+
+        '$aln'
+        '$queryGFF'
+        '$targetGFF'
+        
+        -m
+        -t $t
+        -v $v
+        #if $extract.extract_fasta == 'true'
+            -e $e '$output_extract_fasta'
+        #end if
+
+        > '$output_file'
+    ]]></command>
+    <inputs>
+        <param name="aln" type="data" format="tabular" label="Alignement file" help="Alignment file in TAB format. The suggested way to obtain it is to run Last and than convert the file from MAF to TAB with maf-convert" />
+        <param name="queryGFF" type="data" format="gff" label="Query organism GFF file" help="Gff file of the query organism. The gene IDs in the GFF must be unique. To solve the problem please extract only the 'gene' lines. Try to format the file with AWK: awk `{if ($3==\'gene\') print $0}` GFFfile" />
+        <param name="targetGFF" type="data" format="gff" label="Target organism GFF file" help="Gff file of the 'target' organism. The gene IDs in the GFF must be unique. To solve the problem please extract only the gene lines as explained in queryGff" />
+
+        <!--<param argument="-m" type="boolean" checked="false" truevalue="-memory" falsevalue="" label="Memory" help="Create an in-memory database. This option can't be used with the other DB options. Probably usefull in Galaxy integration" />-->
+        <param argument="-t" type="integer" value="30" label="Interval" help="Interval, in nucleotide, within a gene is considered in the same position." />
+        <param argument="-v" type="select" multiple="true" label="Verbosity" help="Output options. If not specify the software shows only the genes that are in the exact position of the genes in the target. It's possible to show annotated genes that are in aligned regions but that have different lengths or in slightly different positions. It's possible to select multiple values." >
+            <option value="All">All</option>
+            <option value="shorter">Shorter</option>
+            <option value="longer">Longer</option>
+            <option value="offset">Offset</option>
+            <option value="new" selected="true">New</option>
+            <option value="confirmed">Confirmed</option>
+        </param>
+        <conditional name="extract">
+            <param name="extract_fasta" type="select" label="Extract fasta sequence of the new suggested gene" help="This option needs the fasta file of the genome. This will slow down the process A LOT.">
+                <option value="true">Extract fasta sequence</option>
+                <option selected="true" value="false">Do not extract fasta sequence</option>
+            </param>
+            <when value="true">
+                <param argument="-e" type="data" format="fasta" label="Fasta file of the genome."/>
+            </when>
+            <when value="false"/>
+        </conditional>
+    </inputs>
+    <outputs>
+        <data name="output_file" format="gff" label="GFF align from ${on_string}"/>
+        <data name="output_extract_fasta" format="fasta" label="Extracted fasta sequence from ${on_string}">
+            <filter>options['extract_fasta'] == 'true'</filter>
+        </data>
+    </outputs>
+
+    <tests>
+        <test>
+            <param name="aln" value="genome_aln.tab" ftype="tabular"/>
+            <param name="queryGFF" value="query.gff" ftype="gff"/>
+            <param name="targetGFF" value="target.gff" ftype="gff"/>
+            <param name="t" value="30"/>
+            <param name="v" value="new"/>
+            <output name="output_file" file="output.gff" ftype="gff"/>
+        </test>
+    </tests>
+
+    <help><![CDATA[
+        Tool to extract genes coordinates from a whole genome alignment.
+        This script needs an alignement in TAB format and two gff files.
+    ]]></help>
+    <citations>
+        <citation type="bibtex">@manual{title="https://github.com/eosc-life/D4_marine_eukaryote_genomics_portal", url="https://github.com/eosc-life/D4_marine_eukaryote_genomics_portal"}</citation>
+    </citations>
+</tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/genome_aln.tab	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,3 @@
+9920	NW_012219049.1	513841	4747	+	2725244	scaffold7	968452	4684	-	3903238	150,9:0,13,0:17,6,0:1,11,0:1,13,0:13,17,7:0,5,1:0,12,0:3,13,6:0,7,0:1,24,4:0,10,11:0,121,0:3,107,0:3,28,0:11,18,0:5,27,0:1,6,15:0,112,2:0,9,5:0,50,0:1,31,1:0,23,4:0,6,0:3,10,0:4,23,3:0,6,7:0,14,0:5,9,0:1,12,0:18,18,0:8,7,2:0,17,1:0,23,0:4,9,0:14,5,12:0,20,1:0,71,5:0,114,0:3,44,22:0,78,6:0,11,0:3,29,0:3,45,0:18,14,0:1,17,0:11,6,0:1,29,0:30,45,11:0,17,4:0,35,1:0,5,0:8,35,0:12,5,3:0,87,1:0,24,0:16,5,0:9,7,0:10,8,8:0,13,3:0,23,2:0,14,0:6,25,12:0,19,1:0,20,9:0,6,8:0,174,0:5,53,0:1,136,2:0,58,0:4,34,7:0,23,5:0,38,0:2,29,4:0,7,4:0,12,23:0,6,0:7,5,0:18,32,0:4,14,4:0,9,4:0,76,0:2,40,0:2,21,0:10,10,8:0,11,2:0,5,12:0,32,0:1,85,0:1,47,2:0,124,1:0,6,2:0,17,8:0,49,9:0,8,1:0,122,1:0,60,32:0,37,10:0,28,2:0,11,0:3,9,7:0,33,9:0,3,0:14,31,0:3,42,5:0,15,0:13,19,0:4,56,9:0,69,0:4,81,1:0,48,0:23,5,2:0,37,5:0,27,0:2,34,1:0,25,0:5,33,0:6,105,5:0,5,5:0,33,0:3,30,0:4,15,0:3,7,0:2,33,76:0,18,1:0,188,3:0,7,0:2,18	mismap=1e-10
+11428	NW_012217743.1	12365405	6678	+	13053552	scaffold21	1062549	6820	+	2391267	12,4:0,28,4:0,16,4:0,53,3:0,9,4:0,21,0:2,3,6:0,7,1:0,11,0:3,24,3:0,32,4:0,25,0:2,18,0:2,53,6:0,2,0:1,23,2:0,16,0:3,8,10:0,18,5:0,86,2:0,13,0:1,36,0:12,32,6:0,50,6:0,13,1:0,30,2:0,5,3:0,27,7:0,22,7:0,6,0:5,110,0:1,3,8:0,19,0:1,24,0:4,5,1:0,59,4:0,31,1:0,4,4:0,3,0:3,31,0:1,41,0:11,18,20:0,52,0:2,12,2:0,10,0:3,76,1:0,14,2:0,16,1:0,327,6:0,78,0:24,101,3:0,890,0:43,11,4:0,16,6:0,68,0:3,29,2:0,138,4:0,9,3:0,30,3:0,25,1:0,16,0:6,20,0:2,31,0:11,33,2:0,31,0:17,12,5:0,4,0:10,7,1:0,22,5:0,17,0:1,50,5:0,12,0:4,19,2:0,54,0:1,10,0:3,8,0:4,27,2:0,20,10:0,88,0:8,87,2:0,16,4:0,85,0:36,23,0:5,38,0:6,3,11:0,15,3:0,75,0:11,3,3:0,7,9:0,9,0:5,16,6:0,10,6:0,2,0:5,12,1:0,37,2:0,28,4:0,14,10:0,11,0:33,14,0:3,53,4:0,85,0:35,12,0:8,19,3:0,36,0:6,6,0:8,27,0:1,8,10:0,34,0:15,22,10:0,8,0:10,5,0:5,6,34:0,17,30:0,15,2:0,10,7:0,41,8:0,134,6:0,19,3:0,37,4:0,126,0:9,4,0:8,15,0:4,5,7:0,13,0:7,13,4:0,13,0:15,8,2:0,17,2:0,25,4:0,10,0:5,179,17:0,13,7:0,17,0:18,11,0:1,20,13:0,9,0:11,6,0:25,17,0:1,14,0:1,35,1:0,10,0:5,9,0:5,12,0:43,13,1:0,148,0:9,35,0:5,15,0:4,7,9:0,15,0:2,97,0:2,27,0:1,10,11:0,76,0:18,13,0:27,13,0:16,11,1:0,5,0:25,29,0:3,7,0:13,20,14:0,50,0:21,24,0:1,9,5:0,7,2:0,33,1:0,18,16:0,10,16:0,16,0:5,12,21:0,5,1:0,19,3:0,41,21:0,24,0:3,22,0:7,133,5:0,20	mismap=1e-10
+19504	NW_012222569.1	351588	5843	+	2417895	scaffold27	2112341	5893	-	2121867	16,8:0,108,0:13,5,0:10,26,6:0,13,0:5,33,0:2,23,0:5,10,0:5,27,3:0,29,0:2,10,1:0,12,0:5,16,0:9,19,0:4,5,13:0,11,0:1,28,4:0,11,4:0,27,14:0,50,6:0,12,0:7,6,0:15,10,8:0,86,0:20,20,4:0,60,0:2,16,0:2,34,0:1,37,0:1,166,0:1,56,1:0,114,0:31,63,2:0,16,0:5,6,0:5,15,0:10,14,10:0,38,0:29,9,0:5,10,14:0,17,9:0,17,0:7,27,18:0,24,1:0,9,16:0,33,0:1,6,1:0,14,0:1,15,5:0,16,0:61,40,11:0,6,0:1,44,3:0,111,8:0,11,2:0,10,9:0,37,0:2,12,1:0,44,9:0,49,1:0,26,1:0,35,3:0,31,1:0,19,1:0,28,2:0,17,5:0,150,1:0,161,1:0,4,1:0,40,0:1,131,1:0,43,0:5,12,0:6,43,1:0,875,6:0,369,6:0,421,3:0,931,3:0,16,0:3,375,3:0,43,6:0,8,0:4,19	mismap=1e-10
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/output.gff	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,3 @@
+scaffold7	prediction	gene	967081	968380	.	963768	.	ID=scaffold7;New_annotation='ID=gene2900;Dbxref=GeneID:105913423;Name=LOC105913423;gbkey=Gene;gene=LOC105913423;gene_biotype=lncRNA';Note=new
+scaffold21	prediction	gene	1066913	1069210	.	1062549	.	ID=scaffold21;New_annotation='ID=gene518;Dbxref=GeneID:105888784;Name=LOC105888784;gbkey=Gene;gene=LOC105888784;gene_biotype=protein_coding';Note=new
+scaffold27	prediction	gene	2109210	2112138	.	2106448	.	ID=scaffold27;New_annotation='ID=gene19467;Dbxref=GeneID:105906405;Name=tshz2;gbkey=Gene;gene=tshz2;gene_biotype=protein_coding';Note=new
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/query.gff	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,126 @@
+scaffold7	maker	gene	964712	966103	.	-	.	ID=maker-scaffold7-exonerate_protein2genome-gene-9.10;Name=maker-scaffold7-exonerate_protein2genome-gene-9.10
+scaffold21	maker	gene	219	1692	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-0.0;Name=maker-scaffold21-exonerate_protein2genome-gene-0.0
+scaffold21	maker	gene	9272	18338	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-0.2;Name=maker-scaffold21-exonerate_protein2genome-gene-0.2
+scaffold21	maker	gene	33298	36449	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-0.4;Name=maker-scaffold21-exonerate_protein2genome-gene-0.4
+scaffold21	maker	gene	2813	9288	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-0.5;Name=maker-scaffold21-exonerate_protein2genome-gene-0.5
+scaffold21	maker	gene	24374	25243	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-0.8;Name=maker-scaffold21-exonerate_protein2genome-gene-0.8
+scaffold21	maker	gene	144980	149321	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-1.0;Name=maker-scaffold21-exonerate_protein2genome-gene-1.0
+scaffold21	maker	gene	217208	225190	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.0;Name=maker-scaffold21-exonerate_protein2genome-gene-2.0
+scaffold21	maker	gene	271640	278603	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.9;Name=maker-scaffold21-exonerate_protein2genome-gene-2.9
+scaffold21	maker	gene	281443	283476	.	-	.	ID=maker-scaffold21-augustus-gene-2.9;Name=maker-scaffold21-augustus-gene-2.9;Dbxref=Coils:Coil,InterPro:IPR008386,PANTHER:PTHR12427,Pfam:PF05680;Note=Similar to ATP5ME: ATP synthase subunit e%2C mitochondrial (Bos taurus OX%3D9913);Ontology_term=GO:0000276,GO:0015078,GO:0015986
+scaffold21	maker	gene	244209	248333	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.18;Name=maker-scaffold21-exonerate_protein2genome-gene-2.18
+scaffold21	maker	gene	250981	253254	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.20;Name=maker-scaffold21-exonerate_protein2genome-gene-2.20
+scaffold21	maker	gene	261621	262807	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.24;Name=maker-scaffold21-exonerate_protein2genome-gene-2.24
+scaffold21	maker	gene	284698	285297	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-2.14;Name=maker-scaffold21-exonerate_protein2genome-gene-2.14
+scaffold21	maker	gene	298319	304580	.	+	.	ID=maker-scaffold21-augustus-gene-3.10;Name=maker-scaffold21-augustus-gene-3.10;Dbxref=Gene3D:G3DSA:3.20.20.80,InterPro:IPR005199,InterPro:IPR017853,PANTHER:PTHR14363,PANTHER:PTHR14363:SF10,Pfam:PF03662,SUPERFAMILY:SSF51445;Note=Similar to HPSE: Heparanase (Homo sapiens OX%3D9606);Ontology_term=GO:0016020,GO:0016798
+scaffold21	maker	gene	306866	318341	.	+	.	ID=augustus-scaffold21-processed-gene-3.1;Name=augustus-scaffold21-processed-gene-3.1;Dbxref=Gene3D:G3DSA:1.20.5.490,InterPro:IPR024864,InterPro:IPR025712,PANTHER:PTHR13000,PANTHER:PTHR13000:SF0,Pfam:PF13874;Note=Similar to NUP54: Nucleoporin p54 (Homo sapiens OX%3D9606);Ontology_term=GO:0005643
+scaffold21	maker	gene	338744	340636	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-3.7;Name=maker-scaffold21-exonerate_protein2genome-gene-3.7
+scaffold21	maker	gene	375900	382676	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-3.9;Name=maker-scaffold21-exonerate_protein2genome-gene-3.9
+scaffold21	maker	gene	304743	306373	.	-	.	ID=maker-scaffold21-augustus-gene-3.12;Name=maker-scaffold21-augustus-gene-3.12;Dbxref=Gene3D:G3DSA:1.10.238.10,InterPro:IPR002048,InterPro:IPR011992,InterPro:IPR018247,MobiDBLite:mobidb-lite,PANTHER:PTHR23049,PANTHER:PTHR23049:SF8,Pfam:PF13405,ProSitePatterns:PS00018,ProSiteProfiles:PS50222,SMART:SM00054,SUPERFAMILY:SSF47473;Note=Similar to MYL5: Myosin light chain 5 (Felis catus OX%3D9685);Ontology_term=GO:0005509
+scaffold21	maker	gene	319222	319661	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-3.14;Name=maker-scaffold21-exonerate_protein2genome-gene-3.14
+scaffold21	maker	gene	342986	343267	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-3.8;Name=maker-scaffold21-exonerate_protein2genome-gene-3.8
+scaffold21	maker	gene	468193	474238	.	+	.	ID=maker-scaffold21-augustus-gene-4.7;Name=maker-scaffold21-augustus-gene-4.7;Dbxref=CDD:cd03580,Gene3D:G3DSA:1.10.2000.10,Gene3D:G3DSA:2.40.50.120,InterPro:IPR001134,InterPro:IPR008993,InterPro:IPR015526,InterPro:IPR018933,InterPro:IPR020067,InterPro:IPR026559,InterPro:IPR036790,PANTHER:PTHR11309,PANTHER:PTHR11309:SF87,Pfam:PF01392,Pfam:PF01759,ProSiteProfiles:PS50038,ProSiteProfiles:PS50189,SMART:SM00063,SMART:SM00643,SUPERFAMILY:SSF50242,SUPERFAMILY:SSF63501;Note=Similar to Sfrp1: Secreted frizzled-related protein 1 (Mus musculus OX%3D10090);Ontology_term=GO:0005515
+scaffold21	maker	gene	458084	464076	.	-	.	ID=maker-scaffold21-augustus-gene-4.12;Name=maker-scaffold21-augustus-gene-4.12;Dbxref=Coils:Coil,InterPro:IPR019383,PANTHER:PTHR13254,PANTHER:PTHR13254:SF1,Pfam:PF10256;Note=Similar to GOLGA7: Golgin subfamily A member 7 (Homo sapiens OX%3D9606)
+scaffold21	maker	gene	423091	435097	.	-	.	ID=maker-scaffold21-augustus-gene-4.10;Name=maker-scaffold21-augustus-gene-4.10;Dbxref=CDD:cd14735,Gene3D:G3DSA:1.25.40.420,Gene3D:G3DSA:2.120.10.80,Gene3D:G3DSA:3.30.710.10,InterPro:IPR000210,InterPro:IPR006652,InterPro:IPR011333,InterPro:IPR011705,InterPro:IPR015915,InterPro:IPR017096,InterPro:IPR030605,MobiDBLite:mobidb-lite,PANTHER:PTHR24412,PANTHER:PTHR24412:SF403,PIRSF:PIRSF037037,PRINTS:PR00501,Pfam:PF00651,Pfam:PF01344,Pfam:PF07707,ProSiteProfiles:PS50097,SMART:SM00225,SMART:SM00612,SMART:SM00875,SUPERFAMILY:SSF117281,SUPERFAMILY:SSF54695;Note=Similar to KLHL8: Kelch-like protein 8 (Homo sapiens OX%3D9606);Ontology_term=GO:0005515,GO:0016567,GO:0031463
+scaffold21	maker	gene	386839	388958	.	-	.	ID=maker-scaffold21-augustus-gene-4.8;Name=maker-scaffold21-augustus-gene-4.8;Dbxref=Gene3D:G3DSA:3.10.100.10,InterPro:IPR001304,InterPro:IPR016186,InterPro:IPR016187,InterPro:IPR018378,PANTHER:PTHR22803,PANTHER:PTHR22803:SF89,Pfam:PF00059,ProSitePatterns:PS00615,ProSiteProfiles:PS50041,SUPERFAMILY:SSF56436;Note=Similar to MRC1: Macrophage mannose receptor 1 (Homo sapiens OX%3D9606)
+scaffold21	maker	gene	452419	452901	.	-	.	ID=maker-scaffold21-augustus-gene-4.11;Name=maker-scaffold21-augustus-gene-4.11;Note=Similar to SDAD1: Protein SDA1 homolog (Homo sapiens OX%3D9606)
+scaffold21	maker	gene	390939	391459	.	-	.	ID=maker-scaffold21-augustus-gene-4.9;Name=maker-scaffold21-augustus-gene-4.9;Dbxref=CDD:cd00037,Gene3D:G3DSA:3.10.100.10,InterPro:IPR001304,InterPro:IPR016186,InterPro:IPR016187,PANTHER:PTHR22803,PANTHER:PTHR22803:SF89,Pfam:PF00059,ProSiteProfiles:PS50041,SMART:SM00034,SUPERFAMILY:SSF56436;Note=Similar to Fcer2: Low affinity immunoglobulin epsilon Fc receptor (Mus musculus OX%3D10090)
+scaffold21	maker	gene	392366	398239	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-4.4;Name=maker-scaffold21-exonerate_protein2genome-gene-4.4
+scaffold21	maker	gene	442645	445385	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-4.20;Name=maker-scaffold21-exonerate_protein2genome-gene-4.20
+scaffold21	maker	gene	454285	456766	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-4.25;Name=maker-scaffold21-exonerate_protein2genome-gene-4.25
+scaffold21	maker	gene	566694	572975	.	+	.	ID=maker-scaffold21-augustus-gene-5.15;Name=maker-scaffold21-augustus-gene-5.15;Dbxref=CDD:cd15329,Gene3D:G3DSA:1.20.1070.10,InterPro:IPR000276,InterPro:IPR001069,InterPro:IPR017452,PANTHER:PTHR24247,PANTHER:PTHR24247:SF88,PRINTS:PR00237,PRINTS:PR00652,Pfam:PF00001,ProSiteProfiles:PS50262,SUPERFAMILY:SSF81321;Note=Similar to Htr7: 5-hydroxytryptamine receptor 7 (Mus musculus OX%3D10090);Ontology_term=GO:0004930,GO:0004993,GO:0006939,GO:0007186,GO:0007268,GO:0007623,GO:0016021,GO:0042310
+scaffold21	maker	gene	825856	827239	.	-	.	ID=maker-scaffold21-augustus-gene-8.14;Name=maker-scaffold21-augustus-gene-8.14;Dbxref=Gene3D:G3DSA:3.40.50.1460,InterPro:IPR001309,InterPro:IPR002138,InterPro:IPR015471,InterPro:IPR015917,InterPro:IPR029030,MobiDBLite:mobidb-lite,PANTHER:PTHR10454,PANTHER:PTHR10454:SF31,PRINTS:PR00376,Pfam:PF00656,ProSiteProfiles:PS50207,ProSiteProfiles:PS50208,SMART:SM00115,SUPERFAMILY:SSF52129;Note=Similar to Casp7: Caspase-7 (Mus musculus OX%3D10090);Ontology_term=GO:0004197,GO:0006508,GO:0008234
+scaffold21	maker	gene	834708	836367	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-8.18;Name=maker-scaffold21-exonerate_protein2genome-gene-8.18
+scaffold21	maker	gene	861308	862096	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-8.20;Name=maker-scaffold21-exonerate_protein2genome-gene-8.20
+scaffold21	maker	gene	890972	899157	.	+	.	ID=augustus-scaffold21-processed-gene-9.3;Name=augustus-scaffold21-processed-gene-9.3;Dbxref=CDD:cd00924,Gene3D:G3DSA:2.60.11.10,InterPro:IPR002124,InterPro:IPR036972,PANTHER:PTHR10122,PANTHER:PTHR10122:SF4,Pfam:PF01215,ProDom:PD007270,ProSiteProfiles:PS51359,SUPERFAMILY:SSF57802;Note=Similar to COX5B: Cytochrome c oxidase subunit 5B%2C mitochondrial (Vulpes vulpes OX%3D9627);Ontology_term=GO:0004129,GO:0005740
+scaffold21	maker	gene	926337	932981	.	+	.	ID=maker-scaffold21-augustus-gene-9.1;Name=maker-scaffold21-augustus-gene-9.1;Dbxref=CDD:cd00012,Gene3D:G3DSA:3.30.420.40,Gene3D:G3DSA:3.90.640.10,InterPro:IPR004000,InterPro:IPR004001,InterPro:IPR020902,InterPro:IPR029909,PANTHER:PTHR11937,PANTHER:PTHR11937:SF195,PRINTS:PR00190,Pfam:PF00022,ProSitePatterns:PS00432,ProSitePatterns:PS01132,SMART:SM00268,SUPERFAMILY:SSF53067;Note=Similar to Actr1b: Beta-centractin (Mus musculus OX%3D10090);Ontology_term=GO:0005869
+scaffold21	maker	gene	938048	942296	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-9.11;Name=maker-scaffold21-exonerate_protein2genome-gene-9.11
+scaffold21	maker	gene	977259	981092	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-9.16;Name=maker-scaffold21-exonerate_protein2genome-gene-9.16
+scaffold21	maker	gene	921431	924431	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-9.22;Name=maker-scaffold21-exonerate_protein2genome-gene-9.22
+scaffold21	maker	gene	908085	909206	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-9.3;Name=maker-scaffold21-exonerate_protein2genome-gene-9.3
+scaffold21	maker	gene	919938	920906	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-9.20;Name=maker-scaffold21-exonerate_protein2genome-gene-9.20
+scaffold21	maker	gene	996275	998398	.	+	.	ID=maker-scaffold21-augustus-gene-10.9;Name=maker-scaffold21-augustus-gene-10.9;Note=Similar to RHOBTB2: Rho-related BTB domain-containing protein 2 (Homo sapiens OX%3D9606)
+scaffold21	maker	gene	994118	995287	.	+	.	ID=maker-scaffold21-augustus-gene-10.8;Name=maker-scaffold21-augustus-gene-10.8;Dbxref=Gene3D:G3DSA:3.30.710.10,InterPro:IPR011333,PANTHER:PTHR24072,PANTHER:PTHR24072:SF137,SUPERFAMILY:SSF54695;Note=Similar to RHOBTB2: Rho-related BTB domain-containing protein 2 (Homo sapiens OX%3D9606)
+scaffold21	maker	gene	988098	990151	.	-	.	ID=maker-scaffold21-augustus-gene-10.10;Name=maker-scaffold21-augustus-gene-10.10;Dbxref=InterPro:IPR004978,PANTHER:PTHR11245,PANTHER:PTHR11245:SF7,Pfam:PF03298;Note=Similar to stc: Stanniocalcin (Oncorhynchus kisutch OX%3D8019);Ontology_term=GO:0005179,GO:0005576
+scaffold21	maker	gene	999806	1006534	.	-	.	ID=maker-scaffold21-augustus-gene-10.11;Name=maker-scaffold21-augustus-gene-10.11;Dbxref=CDD:cd00038,CDD:cd05572,Coils:Coil,Gene3D:G3DSA:1.10.510.10,Gene3D:G3DSA:2.60.120.10,Gene3D:G3DSA:3.30.200.20,InterPro:IPR000595,InterPro:IPR000719,InterPro:IPR000961,InterPro:IPR002374,InterPro:IPR008271,InterPro:IPR011009,InterPro:IPR014710,InterPro:IPR017441,InterPro:IPR018488,InterPro:IPR018490,InterPro:IPR035014,MobiDBLite:mobidb-lite,PANTHER:PTHR24353,PANTHER:PTHR24353:SF68,PRINTS:PR00104,Pfam:PF00027,Pfam:PF00069,ProSitePatterns:PS00107,ProSitePatterns:PS00108,ProSitePatterns:PS00888,ProSitePatterns:PS00889,ProSiteProfiles:PS50011,ProSiteProfiles:PS50042,ProSiteProfiles:PS51285,SMART:SM00100,SMART:SM00133,SMART:SM00220,SUPERFAMILY:SSF51206,SUPERFAMILY:SSF56112;Note=Similar to PRKG1: cGMP-dependent protein kinase 1 (Bos taurus OX%3D9913);Ontology_term=GO:0004672,GO:0004674,GO:0004692,GO:0005524,GO:0006468
+scaffold21	maker	gene	1017091	1024394	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-10.25;Name=maker-scaffold21-exonerate_protein2genome-gene-10.25
+scaffold21	maker	gene	1063842	1065209	.	-	.	ID=maker-scaffold21-exonerate_protein2genome-gene-10.33;Name=maker-scaffold21-exonerate_protein2genome-gene-10.33
+scaffold21	maker	gene	1013571	1014220	.	+	.	ID=maker-scaffold21-exonerate_protein2genome-gene-10.3;Name=maker-scaffold21-exonerate_protein2genome-gene-10.3
+scaffold27	maker	gene	78964	84532	.	+	.	ID=maker-scaffold27-augustus-gene-0.6;Name=maker-scaffold27-augustus-gene-0.6;Dbxref=Coils:Coil,Gene3D:G3DSA:1.10.287.370,InterPro:IPR002777,InterPro:IPR009053,InterPro:IPR016661,PANTHER:PTHR21100,PIRSF:PIRSF016477,Pfam:PF01920,SUPERFAMILY:SSF46579;Note=Similar to PFDN4: Prefoldin subunit 4 (Homo sapiens OX%3D9606);Ontology_term=GO:0006457,GO:0016272,GO:0051082
+scaffold27	maker	gene	48231	52047	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-0.4;Name=maker-scaffold27-exonerate_protein2genome-gene-0.4
+scaffold27	maker	gene	61378	65183	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-0.6;Name=maker-scaffold27-exonerate_protein2genome-gene-0.6
+scaffold27	maker	gene	3695	6685	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-0.0;Name=maker-scaffold27-exonerate_protein2genome-gene-0.0
+scaffold27	maker	gene	148461	162196	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-1.6;Name=maker-scaffold27-exonerate_protein2genome-gene-1.6
+scaffold27	maker	gene	102125	102751	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-1.2;Name=maker-scaffold27-exonerate_protein2genome-gene-1.2
+scaffold27	maker	gene	113040	113444	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-1.3;Name=maker-scaffold27-exonerate_protein2genome-gene-1.3
+scaffold27	maker	gene	141043	141363	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-1.4;Name=maker-scaffold27-exonerate_protein2genome-gene-1.4
+scaffold27	maker	gene	134273	134461	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-1.5;Name=maker-scaffold27-exonerate_protein2genome-gene-1.5
+scaffold27	maker	gene	199903	200492	.	-	.	ID=maker-scaffold27-augustus-gene-2.0;Name=maker-scaffold27-augustus-gene-2.0;Dbxref=Gene3D:G3DSA:1.10.10.60,PANTHER:PTHR11211,PANTHER:PTHR11211:SF12;Note=Similar to irx5: Iroquois-class homeodomain protein irx-5 (Xenopus laevis OX%3D8355)
+scaffold27	maker	gene	379798	388445	.	+	.	ID=maker-scaffold27-augustus-gene-3.0;Name=maker-scaffold27-augustus-gene-3.0;Dbxref=CDD:cd04278,Gene3D:G3DSA:2.60.40.10,Gene3D:G3DSA:3.40.390.10,InterPro:IPR001818,InterPro:IPR006026,InterPro:IPR007110,InterPro:IPR013783,InterPro:IPR021190,InterPro:IPR024079,InterPro:IPR028687,InterPro:IPR033739,InterPro:IPR036179,PANTHER:PTHR10201,PANTHER:PTHR10201:SF7,PRINTS:PR00138,Pfam:PF00413,ProSiteProfiles:PS50835,SMART:SM00235,SUPERFAMILY:SSF48726,SUPERFAMILY:SSF55486;Note=Similar to MMP23: Matrix metalloproteinase-23 (Bos taurus OX%3D9913);Ontology_term=GO:0004222,GO:0006508,GO:0008237,GO:0008270,GO:0031012
+scaffold27	maker	gene	348162	352549	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-3.0;Name=maker-scaffold27-exonerate_protein2genome-gene-3.0
+scaffold27	maker	gene	354599	366178	.	-	.	ID=maker-scaffold27-augustus-gene-3.2;Name=maker-scaffold27-augustus-gene-3.2;Dbxref=CDD:cd14735,Gene3D:G3DSA:1.25.40.420,Gene3D:G3DSA:2.120.10.80,Gene3D:G3DSA:3.30.710.10,InterPro:IPR000210,InterPro:IPR006652,InterPro:IPR011333,InterPro:IPR011705,InterPro:IPR015915,InterPro:IPR017096,PANTHER:PTHR24412,PANTHER:PTHR24412:SF255,PIRSF:PIRSF037037,Pfam:PF00651,Pfam:PF01344,Pfam:PF07707,Pfam:PF13964,ProSiteProfiles:PS50097,SMART:SM00225,SMART:SM00612,SMART:SM00875,SUPERFAMILY:SSF117281,SUPERFAMILY:SSF54695;Note=Similar to klhl21: Kelch-like protein 21 (Danio rerio OX%3D7955);Ontology_term=GO:0005515
+scaffold27	maker	gene	301455	310534	.	-	.	ID=maker-scaffold27-augustus-gene-3.1;Name=maker-scaffold27-augustus-gene-3.1;Dbxref=CDD:cd00160,CDD:cd13244,Coils:Coil,Gene3D:G3DSA:1.20.900.10,Gene3D:G3DSA:2.30.29.30,InterPro:IPR000219,InterPro:IPR001849,InterPro:IPR011993,InterPro:IPR035899,MobiDBLite:mobidb-lite,PANTHER:PTHR13217,PANTHER:PTHR13217:SF9,Pfam:PF00621,ProSiteProfiles:PS50003,ProSiteProfiles:PS50010,SMART:SM00233,SMART:SM00325,SUPERFAMILY:SSF48065,SUPERFAMILY:SSF50729;Note=Similar to PLEKHG5: Pleckstrin homology domain-containing family G member 5 (Homo sapiens OX%3D9606);Ontology_term=GO:0005089,GO:0035023
+scaffold27	maker	gene	274578	275266	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-3.10;Name=maker-scaffold27-exonerate_protein2genome-gene-3.10
+scaffold27	maker	gene	331767	344451	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-3.16;Name=maker-scaffold27-exonerate_protein2genome-gene-3.16
+scaffold27	maker	gene	370682	373215	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-3.23;Name=maker-scaffold27-exonerate_protein2genome-gene-3.23
+scaffold27	maker	gene	353502	353825	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-3.19;Name=maker-scaffold27-exonerate_protein2genome-gene-3.19
+scaffold27	maker	gene	412780	416126	.	+	.	ID=maker-scaffold27-augustus-gene-4.7;Name=maker-scaffold27-augustus-gene-4.7;Dbxref=InterPro:IPR003112,PANTHER:PTHR23192,PANTHER:PTHR23192:SF49,Pfam:PF02191,ProSiteProfiles:PS51132,SMART:SM00284;Note=Similar to olfml3b: Olfactomedin-like protein 3B (Danio rerio OX%3D7955)
+scaffold27	maker	gene	398701	403728	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-4.7;Name=maker-scaffold27-exonerate_protein2genome-gene-4.7
+scaffold27	maker	gene	417814	426306	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-4.8;Name=maker-scaffold27-exonerate_protein2genome-gene-4.8
+scaffold27	maker	gene	434315	434716	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-4.11;Name=maker-scaffold27-exonerate_protein2genome-gene-4.11
+scaffold27	maker	gene	569785	573302	.	+	.	ID=augustus-scaffold27-processed-gene-5.20;Name=augustus-scaffold27-processed-gene-5.20;Dbxref=CDD:cd00063,Gene3D:G3DSA:2.60.40.10,InterPro:IPR003961,InterPro:IPR013783,InterPro:IPR026966,InterPro:IPR036116,MobiDBLite:mobidb-lite,PANTHER:PTHR43951,PANTHER:PTHR43951:SF2,Pfam:PF00041,Pfam:PF13882,ProSiteProfiles:PS50853,SMART:SM00060,SUPERFAMILY:SSF49265;Note=Similar to nadl1.1: Neural cell adhesion molecule L1.1 (Fragment) (Danio rerio OX%3D7955);Ontology_term=GO:0005515
+scaffold27	maker	gene	500500	510440	.	+	.	ID=maker-scaffold27-augustus-gene-5.4;Name=maker-scaffold27-augustus-gene-5.4;Dbxref=InterPro:IPR011685,PANTHER:PTHR14009,PANTHER:PTHR14009:SF13,Pfam:PF07766;Note=Similar to letmd1: LETM1 domain-containing protein 1 (Xenopus tropicalis OX%3D8364)
+scaffold27	maker	gene	475732	483996	.	+	.	ID=maker-scaffold27-augustus-gene-5.3;Name=maker-scaffold27-augustus-gene-5.3;Dbxref=InterPro:IPR013662,InterPro:IPR015925,MobiDBLite:mobidb-lite,PANTHER:PTHR13715,PANTHER:PTHR13715:SF51,Pfam:PF08454;Note=Similar to ITPR3: Inositol 1%2C4%2C5-trisphosphate receptor type 3 (Homo sapiens OX%3D9606);Ontology_term=GO:0006816
+scaffold27	maker	gene	467681	469205	.	+	.	ID=maker-scaffold27-augustus-gene-5.2;Name=maker-scaffold27-augustus-gene-5.2;Dbxref=Coils:Coil,InterPro:IPR015925,PANTHER:PTHR13715,PANTHER:PTHR13715:SF51;Note=Similar to Itpr3: Inositol 1%2C4%2C5-trisphosphate receptor type 3 (Mus musculus OX%3D10090);Ontology_term=GO:0006816
+scaffold27	maker	gene	460622	463709	.	+	.	ID=maker-scaffold27-augustus-gene-5.1;Name=maker-scaffold27-augustus-gene-5.1;Dbxref=Coils:Coil,Gene3D:G3DSA:1.25.10.30,Gene3D:G3DSA:2.80.10.50,InterPro:IPR000699,InterPro:IPR015925,InterPro:IPR016093,InterPro:IPR035910,InterPro:IPR036300,PANTHER:PTHR13715,PANTHER:PTHR13715:SF51,Pfam:PF01365,Pfam:PF02815,SUPERFAMILY:SSF100909,SUPERFAMILY:SSF82109;Note=Similar to Itpr3: Inositol 1%2C4%2C5-trisphosphate receptor type 3 (Mus musculus OX%3D10090);Ontology_term=GO:0005262,GO:0006816,GO:0016020,GO:0070588
+scaffold27	maker	gene	489952	495692	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-5.5;Name=maker-scaffold27-exonerate_protein2genome-gene-5.5
+scaffold27	maker	gene	524406	524795	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-5.12;Name=maker-scaffold27-exonerate_protein2genome-gene-5.12
+scaffold27	maker	gene	576979	593059	.	+	.	ID=augustus-scaffold27-processed-gene-6.0;Name=augustus-scaffold27-processed-gene-6.0;Dbxref=CDD:cd03275,Coils:Coil,Gene3D:G3DSA:1.20.1060.20,Gene3D:G3DSA:3.30.70.1620,Gene3D:G3DSA:3.40.50.300,InterPro:IPR003395,InterPro:IPR010935,InterPro:IPR024704,InterPro:IPR027417,InterPro:IPR029683,InterPro:IPR036277,PANTHER:PTHR18937,PANTHER:PTHR18937:SF170,PIRSF:PIRSF005719,Pfam:PF02463,Pfam:PF06470,SMART:SM00968,SUPERFAMILY:SSF52540,SUPERFAMILY:SSF75553;Note=Similar to Smc1a: Structural maintenance of chromosomes protein 1A (Mus musculus OX%3D10090);Ontology_term=GO:0003682,GO:0005515,GO:0005524,GO:0005694,GO:0006281,GO:0007064,GO:0008278,GO:0051276
+scaffold27	maker	gene	647681	651875	.	+	.	ID=maker-scaffold27-augustus-gene-6.16;Name=maker-scaffold27-augustus-gene-6.16;Dbxref=CDD:cd07989,InterPro:IPR000872,InterPro:IPR002123,PANTHER:PTHR12497,PANTHER:PTHR12497:SF0,PRINTS:PR00979,Pfam:PF01553,SMART:SM00563,SUPERFAMILY:SSF69593;Note=Similar to TAZ: Tafazzin (Macaca mulatta OX%3D9544);Ontology_term=GO:0006644,GO:0008152,GO:0016746
+scaffold27	maker	gene	601548	610645	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.5;Name=maker-scaffold27-exonerate_protein2genome-gene-6.5
+scaffold27	maker	gene	621607	628922	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.12;Name=maker-scaffold27-exonerate_protein2genome-gene-6.12
+scaffold27	maker	gene	640384	647146	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.17;Name=maker-scaffold27-exonerate_protein2genome-gene-6.17
+scaffold27	maker	gene	653498	659083	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.28;Name=maker-scaffold27-exonerate_protein2genome-gene-6.28
+scaffold27	maker	gene	662664	663493	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.29;Name=maker-scaffold27-exonerate_protein2genome-gene-6.29
+scaffold27	maker	gene	670398	673271	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.30;Name=maker-scaffold27-exonerate_protein2genome-gene-6.30
+scaffold27	maker	gene	615010	619770	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.31;Name=maker-scaffold27-exonerate_protein2genome-gene-6.31
+scaffold27	maker	gene	634567	636892	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-6.33;Name=maker-scaffold27-exonerate_protein2genome-gene-6.33
+scaffold27	maker	gene	785928	788634	.	+	.	ID=maker-scaffold27-augustus-gene-7.3;Name=maker-scaffold27-augustus-gene-7.3;Dbxref=Gene3D:G3DSA:4.10.60.10,InterPro:IPR001878,InterPro:IPR036875,PANTHER:PTHR23002,PANTHER:PTHR23002:SF53,Pfam:PF00098,ProSiteProfiles:PS50158,SMART:SM00343,SUPERFAMILY:SSF57756;Note=Similar to CNBP: Cellular nucleic acid-binding protein (Bos taurus OX%3D9913);Ontology_term=GO:0003676,GO:0008270
+scaffold27	maker	gene	752288	763459	.	+	.	ID=maker-scaffold27-augustus-gene-7.2;Name=maker-scaffold27-augustus-gene-7.2;Dbxref=Coils:Coil,Gene3D:G3DSA:3.30.1490.20,Gene3D:G3DSA:3.30.470.20,Gene3D:G3DSA:3.40.50.20,InterPro:IPR001359,InterPro:IPR013815,InterPro:IPR016185,InterPro:IPR020897,InterPro:IPR020898,MobiDBLite:mobidb-lite,PANTHER:PTHR10841,PANTHER:PTHR10841:SF23,PRINTS:PR01368,Pfam:PF02078,Pfam:PF02750,SUPERFAMILY:SSF52440,SUPERFAMILY:SSF56059;Note=Similar to SYN1: Synapsin-1 (Bos taurus OX%3D9913);Ontology_term=GO:0005524,GO:0007269,GO:0008021
+scaffold27	maker	gene	712784	722276	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-7.0;Name=maker-scaffold27-exonerate_protein2genome-gene-7.0
+scaffold27	maker	gene	984863	985075	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-9.0;Name=maker-scaffold27-exonerate_protein2genome-gene-9.0
+scaffold27	maker	gene	1138838	1140970	.	+	.	ID=maker-scaffold27-augustus-gene-11.7;Name=maker-scaffold27-augustus-gene-11.7;Dbxref=Gene3D:G3DSA:4.10.75.10,InterPro:IPR008197,InterPro:IPR036645,PANTHER:PTHR19441,PANTHER:PTHR19441:SF42,PRINTS:PR00003,Pfam:PF00095,ProSiteProfiles:PS51390,SMART:SM00217,SUPERFAMILY:SSF57256;Note=Similar to WAP: Whey acidic protein (Macropus eugenii OX%3D9315);Ontology_term=GO:0005576,GO:0030414
+scaffold27	maker	gene	1160062	1174007	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.4;Name=maker-scaffold27-exonerate_protein2genome-gene-11.4
+scaffold27	maker	gene	1090337	1094397	.	-	.	ID=maker-scaffold27-augustus-gene-11.9;Name=maker-scaffold27-augustus-gene-11.9;Dbxref=InterPro:IPR006838,PANTHER:PTHR10989,Pfam:PF04750;Note=Similar to AIG1: Androgen-induced gene 1 protein (Homo sapiens OX%3D9606);Ontology_term=GO:0016021
+scaffold27	maker	gene	1110751	1127672	.	-	.	ID=maker-scaffold27-augustus-gene-11.10;Name=maker-scaffold27-augustus-gene-11.10;Dbxref=CDD:cd09582,Gene3D:G3DSA:1.10.150.50,Gene3D:G3DSA:1.10.510.10,Gene3D:G3DSA:2.30.30.140,Gene3D:G3DSA:3.30.200.20,InterPro:IPR000719,InterPro:IPR000961,InterPro:IPR001660,InterPro:IPR002515,InterPro:IPR004092,InterPro:IPR008271,InterPro:IPR011009,InterPro:IPR013761,InterPro:IPR017892,InterPro:IPR036060,MobiDBLite:mobidb-lite,PANTHER:PTHR12247,PANTHER:PTHR12247:SF69,Pfam:PF00069,Pfam:PF00433,Pfam:PF00536,Pfam:PF01530,Pfam:PF02820,ProSitePatterns:PS00108,ProSiteProfiles:PS50011,ProSiteProfiles:PS50105,ProSiteProfiles:PS51079,ProSiteProfiles:PS51285,ProSiteProfiles:PS51802,SMART:SM00133,SMART:SM00220,SMART:SM00454,SMART:SM00561,SUPERFAMILY:SSF103637,SUPERFAMILY:SSF47769,SUPERFAMILY:SSF56112,SUPERFAMILY:SSF63748;Note=Similar to L3MBTL1: Lethal(3)malignant brain tumor-like protein 1 (Gallus gallus OX%3D9031);Ontology_term=GO:0003700,GO:0004672,GO:0004674,GO:0005515,GO:0005524,GO:0005634,GO:0006355,GO:0006468,GO:0008270
+scaffold27	maker	gene	1174728	1189139	.	-	.	ID=maker-scaffold27-augustus-gene-11.11;Name=maker-scaffold27-augustus-gene-11.11;Dbxref=Coils:Coil,InterPro:IPR024832,InterPro:IPR024835,MobiDBLite:mobidb-lite,PANTHER:PTHR15607,PANTHER:PTHR15607:SF12;Note=Similar to SYCP2: Synaptonemal complex protein 2 (Homo sapiens OX%3D9606)
+scaffold27	maker	gene	1085420	1086617	.	-	.	ID=maker-scaffold27-augustus-gene-11.8;Name=maker-scaffold27-augustus-gene-11.8;Dbxref=InterPro:IPR029021,PANTHER:PTHR23339,PANTHER:PTHR23339:SF94,SUPERFAMILY:SSF52799;Note=Similar to ptpdc1: Protein tyrosine phosphatase domain-containing protein 1 (Danio rerio OX%3D7955)
+scaffold27	maker	gene	1080839	1085054	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.12;Name=maker-scaffold27-exonerate_protein2genome-gene-11.12
+scaffold27	maker	gene	1096041	1099266	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.16;Name=maker-scaffold27-exonerate_protein2genome-gene-11.16
+scaffold27	maker	gene	1102298	1109092	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.18;Name=maker-scaffold27-exonerate_protein2genome-gene-11.18
+scaffold27	maker	gene	1129337	1132836	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.29;Name=maker-scaffold27-exonerate_protein2genome-gene-11.29
+scaffold27	maker	gene	1142492	1148133	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-11.39;Name=maker-scaffold27-exonerate_protein2genome-gene-11.39
+scaffold27	maker	gene	1208941	1212725	.	+	.	ID=maker-scaffold27-augustus-gene-12.0;Name=maker-scaffold27-augustus-gene-12.0;Dbxref=InterPro:IPR029266,MobiDBLite:mobidb-lite,PANTHER:PTHR22145,PANTHER:PTHR22145:SF2,Pfam:PF15344;Note=Similar to FAM217B: Protein FAM217B (Homo sapiens OX%3D9606)
+scaffold27	maker	gene	1262942	1272995	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-12.3;Name=maker-scaffold27-exonerate_protein2genome-gene-12.3
+scaffold27	maker	gene	1206565	1208726	.	-	.	ID=maker-scaffold27-exonerate_est2genome-gene-12.3;Name=maker-scaffold27-exonerate_est2genome-gene-12.3;Dbxref=Gene3D:G3DSA:2.60.40.2440,InterPro:IPR005036,InterPro:IPR038175,MobiDBLite:mobidb-lite,PANTHER:PTHR12307,PANTHER:PTHR12307:SF4,Pfam:PF03370,ProSiteProfiles:PS51159;Note=Similar to PPP1R3D: Protein phosphatase 1 regulatory subunit 3D (Homo sapiens OX%3D9606);Ontology_term=GO:0005515
+scaffold27	maker	gene	1213029	1217507	.	-	.	ID=maker-scaffold27-augustus-gene-12.1;Name=maker-scaffold27-augustus-gene-12.1;Dbxref=Gene3D:G3DSA:3.30.1490.20,Gene3D:G3DSA:3.30.470.20,InterPro:IPR004344,InterPro:IPR013815,InterPro:IPR027751,PANTHER:PTHR12241,PANTHER:PTHR12241:SF39,Pfam:PF03133,ProSiteProfiles:PS51221,SUPERFAMILY:SSF56059;Note=Similar to TTLL9: Probable tubulin polyglutamylase TTLL9 (Homo sapiens OX%3D9606);Ontology_term=GO:0005524,GO:0006464
+scaffold27	maker	gene	1198032	1202479	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-12.5;Name=maker-scaffold27-exonerate_protein2genome-gene-12.5
+scaffold27	maker	gene	1226155	1230783	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-12.15;Name=maker-scaffold27-exonerate_protein2genome-gene-12.15
+scaffold27	maker	gene	1430214	1446282	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-14.0;Name=maker-scaffold27-exonerate_protein2genome-gene-14.0
+scaffold27	maker	gene	1447513	1451570	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-14.1;Name=maker-scaffold27-exonerate_protein2genome-gene-14.1
+scaffold27	maker	gene	1865048	1865963	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-18.3;Name=maker-scaffold27-exonerate_protein2genome-gene-18.3
+scaffold27	maker	gene	1841075	1845788	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-18.4;Name=maker-scaffold27-exonerate_protein2genome-gene-18.4
+scaffold27	maker	gene	1867030	1868428	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-18.5;Name=maker-scaffold27-exonerate_protein2genome-gene-18.5
+scaffold27	maker	gene	1874552	1880976	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-18.6;Name=maker-scaffold27-exonerate_protein2genome-gene-18.6
+scaffold27	maker	gene	1893574	1898072	.	+	.	ID=maker-scaffold27-augustus-gene-19.10;Name=maker-scaffold27-augustus-gene-19.10;Dbxref=InterPro:IPR019402,InterPro:IPR032990,PANTHER:PTHR21324,PANTHER:PTHR21324:SF10,Pfam:PF10277;Note=Similar to Dram2: DNA damage-regulated autophagy modulator protein 2 (Mus musculus OX%3D10090);Ontology_term=GO:0007601,GO:0010506
+scaffold27	maker	gene	1947919	1954646	.	+	.	ID=maker-scaffold27-augustus-gene-19.11;Name=maker-scaffold27-augustus-gene-19.11;Dbxref=Gene3D:G3DSA:1.20.1740.10,InterPro:IPR002293,MobiDBLite:mobidb-lite,PANTHER:PTHR11785,PANTHER:PTHR11785:SF315,PIRSF:PIRSF006060,Pfam:PF13520;Note=Similar to SLC7A5: Large neutral amino acids transporter small subunit 1 (Homo sapiens OX%3D9606);Ontology_term=GO:0016020,GO:0022857,GO:0055085
+scaffold27	maker	gene	1884564	1890230	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-19.0;Name=maker-scaffold27-exonerate_protein2genome-gene-19.0
+scaffold27	maker	gene	1899996	1916044	.	-	.	ID=maker-scaffold27-augustus-gene-19.12;Name=maker-scaffold27-augustus-gene-19.12;Dbxref=Coils:Coil,Gene3D:G3DSA:3.30.450.200,Gene3D:G3DSA:3.40.50.11500,InterPro:IPR001194,InterPro:IPR005112,InterPro:IPR005113,InterPro:IPR037516,MobiDBLite:mobidb-lite,PANTHER:PTHR15288,PANTHER:PTHR15288:SF2,Pfam:PF02141,Pfam:PF03455,Pfam:PF03456,ProSiteProfiles:PS50211,SMART:SM00799,SMART:SM00800,SMART:SM00801;Note=Similar to DENND2D: DENN domain-containing protein 2D (Homo sapiens OX%3D9606)
+scaffold27	maker	gene	1932427	1935356	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-19.24;Name=maker-scaffold27-exonerate_protein2genome-gene-19.24
+scaffold27	maker	gene	1960006	1967447	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-19.26;Name=maker-scaffold27-exonerate_protein2genome-gene-19.26
+scaffold27	maker	gene	2089385	2093369	.	+	.	ID=maker-scaffold27-augustus-gene-20.12;Name=maker-scaffold27-augustus-gene-20.12;Dbxref=CDD:cd00170,Gene3D:G3DSA:1.10.8.20,Gene3D:G3DSA:1.20.5.1200,Gene3D:G3DSA:3.40.525.10,InterPro:IPR001251,InterPro:IPR011074,InterPro:IPR036273,InterPro:IPR036865,PANTHER:PTHR10174,PANTHER:PTHR10174:SF130,PRINTS:PR00180,Pfam:PF00650,Pfam:PF03765,ProSiteProfiles:PS50191,SMART:SM00516,SMART:SM01100,SUPERFAMILY:SSF46938,SUPERFAMILY:SSF52087;Note=Similar to TTPAL: Alpha-tocopherol transfer protein-like (Pongo abelii OX%3D9601)
+scaffold27	maker	gene	2026933	2030798	.	+	.	ID=augustus-scaffold27-processed-gene-20.1;Name=augustus-scaffold27-processed-gene-20.1;Dbxref=Coils:Coil,Gene3D:G3DSA:1.20.1050.10,Gene3D:G3DSA:3.40.30.10,InterPro:IPR010987,InterPro:IPR034336,InterPro:IPR036282,PANTHER:PTHR44188,PANTHER:PTHR44188:SF2,Pfam:PF13410,ProSiteProfiles:PS50405,SUPERFAMILY:SSF47616;Note=Similar to GDAP1L1: Ganglioside-induced differentiation-associated protein 1-like 1 (Homo sapiens OX%3D9606)
+scaffold27	maker	gene	2095740	2102605	.	+	.	ID=maker-scaffold27-augustus-gene-20.13;Name=maker-scaffold27-augustus-gene-20.13;Note=Protein of unknown function
+scaffold27	maker	gene	2020036	2025103	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-20.2;Name=maker-scaffold27-exonerate_protein2genome-gene-20.2
+scaffold27	maker	gene	2106469	2107842	.	+	.	ID=maker-scaffold27-exonerate_protein2genome-gene-20.5;Name=maker-scaffold27-exonerate_protein2genome-gene-20.5
+scaffold27	maker	gene	2033474	2034742	.	-	.	ID=maker-scaffold27-exonerate_protein2genome-gene-20.7;Name=maker-scaffold27-exonerate_protein2genome-gene-20.7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/target.gff	Mon Nov 30 18:20:46 2020 +0000
@@ -0,0 +1,3 @@
+NW_012219049.1	Gnomon	gene	517154	518453	.	+	.	ID=gene2900;Dbxref=GeneID:105913423;Name=LOC105913423;gbkey=Gene;gene=LOC105913423;gene_biotype=lncRNA
+NW_012217743.1	Gnomon	gene	12369769	12372066	.	-	.	ID=gene518;Dbxref=GeneID:105888784;Name=LOC105888784;gbkey=Gene;gene=LOC105888784;gene_biotype=protein_coding
+NW_012222569.1	Gnomon	gene	354350	357278	.	-	.	ID=gene19467;Dbxref=GeneID:105906405;Name=tshz2;gbkey=Gene;gene=tshz2;gene_biotype=protein_coding