PrintTemplateSet ::= {
  {
    name "StdSeqDescrElement" ,
    format {
      asn1 "Seq-descr.E" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Seq-descr.E.mol-type" ,
              label "Molecule type" ,
              prefix " " ,
              form
                enum {
                   } } ,
            {
              asn1 "Seq-descr.E.modif" ,
              label "Modifiers" ,
              prefix " " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Seq-descr.E.modif.E" ,
                      form
                        enum {
                           } } } } } ,
            {
              asn1 "Seq-descr.E.method" ,
              label "Method" ,
              prefix " " ,
              form
                enum {
                   } } ,
            {
              asn1 "Seq-descr.E.name" ,
              label "Name" ,
              prefix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-descr.E.title" ,
              label "Title" ,
              prefix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-descr.E.org" ,
              label "Organism" ,
              prefix " " ,
              form
                use-template "StdOrgRef" } ,
            {
              asn1 "Seq-descr.E.comment" ,
              label "Comment" ,
              prefix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-descr.E.num" ,
              label "Numbering" ,
              prefix " " ,
              form
                use-template "StdNumbering" } ,
            {
              asn1 "Seq-descr.E.maploc" ,
              label "Map location" ,
              prefix " " ,
              form
                use-template "StdDbtag" } ,
            {
              asn1 "Seq-descr.E.pir" ,
              label "PIR block" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.genbank" ,
              label "GenBank block" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.pub" ,
              label "Citation" ,
              prefix " " ,
              form
                use-template "StdPubdesc" } ,
            {
              asn1 "Seq-descr.E.region" ,
              label "Region" ,
              prefix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-descr.E.user" ,
              label "User Type" ,
              prefix " " ,
              form
                use-template "StdUserObj" } ,
            {
              asn1 "Seq-descr.E.sp" ,
              label "SWISS-PROT block" ,
              prefix " " ,
              form
                use-template "StdSPBlock"} ,
            {
              asn1 "Seq-descr.E.neighbors" ,
              label "Neighbors" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.embl" ,
              label "EMBL block" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.create-date" ,
              label "Create date" ,
              prefix " " ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "Seq-descr.E.update-date" ,
              label "Update date" ,
              prefix " " ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "Seq-descr.E.prf" ,
              label "PRF block" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.pdb" ,
              label "PDB block" ,
              prefix " " ,
              form
                null NULL } ,
            {
              asn1 "Seq-descr.E.het" ,
              label "Heterogen" ,
              prefix " " ,
              form
                text {
                   } } } } } } ,
  {
    name "StdBioseqId" ,
    format {
      asn1 "Bioseq" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Bioseq.id" ,
              prefix "" ,
	      suffix ";" ,
      		form
        block {
          components {
            {
              asn1 "Bioseq.id.E.pir" ,
	      label "pir:" ,
	      prefix " " ,
              form
                use-template "StdPIRseqId" } ,
            {
              asn1 "Bioseq.id.E.other" ,
	      label "REFSEQ:" ,
	      prefix " " ,
              form
                use-template "StdOtherId" } ,
            {
              asn1 "Bioseq.id.E.local" ,
	      label "userid:" ,
	      prefix " " ,
              form
                use-template "StdLocalId" } ,
            {
              asn1 "Bioseq.id.E.genbank" ,
	      label "genbank:" ,
	      prefix " " ,
              form
                use-template "StdGPseqId" } ,
            {
              asn1 "Bioseq.id.E.swissprot" ,
	      label "swissprot:" ,
	      prefix " " ,
              form
                use-template "StdSPseqId" } ,
            {
              asn1 "Bioseq.id.E.prf" ,
	      label "prf:" ,
	      prefix " " ,
              form
                use-template "StdPRFseqId" } ,
            {
              asn1 "Bioseq.id.E.pdb" ,
	      label "pdb:" ,
	      prefix " " ,
              form
                use-template "StdPDBseqId" } } } } } } } } ,
  {
    name "VersionBioseqId" ,
    format {
      asn1 "Bioseq" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Bioseq.id" ,
              prefix "" ,
	      suffix ";" ,
      		form
        block {
          components {
            {
              asn1 "Bioseq.id.E.pir" ,
	      label "pir:" ,
	      prefix " " ,
              form
                use-template "StdPIRseqId" } ,
            {
              asn1 "Bioseq.id.E.local" ,
	      label "userid:" ,
	      prefix " " ,
              form
                use-template "StdLocalId" } ,
            {
              asn1 "Bioseq.id.E.genbank" ,
	      label "genbank:" ,
	      prefix " " ,
              form
                use-template "VersionGPseqId" } ,
            {
              asn1 "Bioseq.id.E.swissprot" ,
	      label "swissprot:" ,
	      prefix " " ,
              form
                use-template "StdSPseqId" } ,
            {
              asn1 "Bioseq.id.E.prf" ,
	      label "prf:" ,
	      prefix " " ,
              form
                use-template "StdPRFseqId" } ,
            {
              asn1 "Bioseq.id.E.pdb" ,
	      label "pdb:" ,
	      prefix " " ,
              form
                use-template "StdPDBseqId" } } } } } } } } ,
  {
    name "StdSeqFeatLocation" ,
    format {
      asn1 "Seq-feat.location" ,
      label "Location" ,
      prefix "\t" ,
      form
        user {
          printfunc "StdSeqLocPrint" } } } ,
  {
    name "StdSeqFeatProduct" ,
    format {
      asn1 "Seq-feat.product" ,
      label "Product" ,
      prefix "\t" ,
      form
        user {
          printfunc "StdSeqLocPrint" } } } ,
  {
    name "EntrySeqFeatData" ,
    labelfrom "Seq-feat.data" ,
    format {
      asn1 "Seq-feat.data" ,
      prefix "\t" ,
      form
        use-template "StdSeqFeatData" } } ,
  {
    name "StdSeqFeat" ,
    labelfrom "Seq-feat.data" ,
    format {
      asn1 "Seq-feat" ,
      prefix " " ,
      suffix "  " ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Seq-feat.data" ,
              form
                use-template "StdSeqFeatData" } ,
            {
              asn1 "Seq-feat" ,
              form
                use-template "StdSeqFeatCommon" } ,
            {
              asn1 "Seq-feat.product" ,
              label "Product" ,
              prefix " " ,
              form
                user {
                  printfunc "StdSeqLocPrint" } } ,
            {
              asn1 "Seq-feat.location" ,
              label "Location" ,
              prefix " " ,
              form
                user {
                  printfunc "StdSeqLocPrint" } } ,
            {
              asn1 "Seq-feat.cit" ,
              label "Citations" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Seq-feat.cit.pub.E" ,
                      form
                        use-template "StdPub" } } } } ,
            {
              asn1 "Seq-feat.xref" ,
              label "Cross-reference" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Seq-feat.xref.E" ,
                      form
                        use-template "StdSeqFeatXref" } } } } } } } } ,
  {
    name "StdSeqFeatData" ,
    format {
      asn1 "SeqFeatData" ,
      form
        block {
          components {
            {
              asn1 "SeqFeatData.gene" ,
              label "Gene" ,
              form
                use-template "StdGeneRef" } ,
            {
              asn1 "SeqFeatData.org" ,
              label "Organism" ,
              form
                use-template "StdOrgRef" } ,
            {
              asn1 "SeqFeatData.cdregion" ,
              label "Coding Region" ,
              form
                use-template "StdCdRegion" } ,
            {
              asn1 "SeqFeatData.prot" ,
              label "Protein" ,
              form
                use-template "StdProtRef" } ,
            {
              asn1 "SeqFeatData.rna" ,
              label "RNA" ,
              form
                use-template "StdRNARef" } ,
            {
              asn1 "SeqFeatData.pub" ,
              label "Citation" ,
              form
                use-template "StdPubdesc" } ,
            {
              asn1 "SeqFeatData.seq" ,
              label "Sequence" ,
              form
                user {
                  printfunc "StdSeqLocPrint" } } ,
            {
              asn1 "SeqFeatData.imp.key" ,
              label "Import" ,
              form
                use-template "StdImpFeat" } ,
            {
              asn1 "SeqFeatData.region" ,
              label "Region" ,
              form
                text {
                   } } ,
            {
              asn1 "SeqFeatData.comment" ,
              label "Comment" ,
              form
                null NULL } ,
            {
              asn1 "SeqFeatData.bond" ,
              label "Bond" ,
              form
                enum {
                   } } ,
            {
              asn1 "SeqFeatData.site" ,
              label "Site" ,
              form
                enum {
                   } } ,
            {
              asn1 "SeqFeatData.rsite" ,
              label "Rest. Site" ,
              form
                use-template "StdRsiteRef" } ,
            {
              asn1 "SeqFeatData.user" ,
              label "User Type" ,
              form
                use-template "StdUserObj" } ,
            {
              asn1 "SeqFeatData.txinit" ,
              label "TxInit" ,
              form
                use-template "StdTxInit" } ,
            {
              asn1 "SeqFeatData.num" ,
              label "Numbering" ,
              form
                use-template "StdNumbering" } ,
            {
              asn1 "SeqFeatData.psec-str" ,
              label "Sec. Struct" ,
              form
                enum {
                   } } ,
            {
              asn1 "SeqFeatData.non-std-residue" ,
              label "NonStd Residue" ,
              form
                text {
                   } } ,
            {
              asn1 "SeqFeatData.het" ,
              label "Heterogen" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdGeneRef" ,
    format {
      asn1 "Gene-ref" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Gene-ref" ,
              form
                block {
                  components {
                    {
                      asn1 "Gene-ref.locus" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Gene-ref.allele" ,
                      prefix " " ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Gene-ref.desc" ,
              prefix "[" ,
              suffix "]" ,
              form
                text {
                   } } ,
            {
              asn1 "Gene-ref.pseudo" ,
              form
                boolean {
                  true "This is a pseudogene." } } ,
            {
              asn1 "Gene-ref.syn" ,
              label "Synonyms" ,
              prefix " (" ,
              suffix ")" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Gene-ref.syn.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Gene-ref.maploc" ,
              label "Map Location" ,
              prefix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Gene-ref.db" ,
              label "Cross Reference" ,
              prefix " " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Gene-ref.db.E" ,
                      prefix "(" ,
                      suffix ")" ,
                      form
                        use-template "StdDbtag" } } } } } } } } ,
  {
    name "StdUserObj" ,
    format {
      asn1 "User-object" ,
      label "User-object" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "User-object.class" ,
              form
                text {
                   } } ,
            {
              asn1 "User-object.type" ,
              form
                use-template "StdObjectId" } } } } } ,
  {
    name "StdSPBlock" ,
    format {
      asn1 "SP-block" ,
      prefix "" ,
      suffix " " ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "SP-block.class" ,
	      label "class: " ,
              form
                enum {
                   } } ,
            {
              asn1 "SP-block.extra-acc" ,
	      label "extra accessions:" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
		  components {
		    {
              	     asn1 "SP-block.extra-acc.E" ,
                     form
                       text {
                 		  } } } } } ,
            {
              asn1 "SP-block.imeth" ,
              form
                boolean {
                true "seq starts with Met"   } } ,
            {
              asn1 "SP-block.plasnm" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
		  components {
		    {
              	     asn1 "SP-block.plasnm.E" ,
                     form
                       text {
                 		  } } } } } ,
            {
              asn1 "SP-block.seqref" ,
	      label "xrefs:" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
                  components {
                    {
                      asn1 "Seq-id.local" ,
                      form
                        use-template "StdObjectId" } ,
                    {
                      asn1 "Seq-id.genbank" ,
        	      label "genbank" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.embl" ,
	              label "embl" ,
        	      prefix " " ,
                      form
                        use-template "StdEMBLseqId" } ,
                    {
                      asn1 "Seq-id.pir" ,
	              label "pir" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.swissprot" ,
        	      label "swissprot" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.patent" ,
                      form
                        use-template "StdPatentSeqId" } ,
                    {
                      asn1 "Seq-id.other" ,
	      			label "REFSEQ:" ,
	      			prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.general" ,
                      form
                        use-template "StdDbtag" } ,
                    {
                      asn1 "Seq-id.gi" ,
		      label "gi:" ,
		      prefix " " ,
                      form
                	text {
                 	  } } ,
                    {
                      asn1 "Seq-id.ddbj" ,
        	      label "ddbj" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.prf" ,
        	      label "prf" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.pdb" ,
                      form
                        use-template "StdPDBseqId" } ,
		   } } } ,
             {
              asn1 "SP-block.dbref" ,
              label "xrefs (non-sequence databases):" ,
              prefix " " ,
              form
                block {
                  separator ", ",
                components {
                {
                  asn1 "SP-block.dbref.E" ,
                 form
                   block {
                   components {    
                {
                  asn1 "Dbtag.db" ,
                 suffix ": " ,
                 form
                 text {
                    } } ,
                {
                 asn1 "Dbtag.tag" ,
                 form
                 use-template "StdObjectId" } ,
                 } } } } } } ,
            {
              asn1 "SP-block.created" ,
	      label "created:" ,
	      prefix " " ,
	      form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "SP-block.sequpd" ,
	      label "sequence updated:" ,
	      prefix " " ,
	      form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "SP-block.annotupd" ,
	      label "annotation updated:" ,
	      prefix " " ,
	      form
                user {
                  printfunc "StdDatePrint" } } ,
		   } } } } ,
  {
    name "StdPirBlock" ,
    format {
      asn1 "PIR-block" ,
      prefix "" ,
      suffix "" ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "PIR-block.host" ,
	      label "host:" ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.source" ,
	      label "source: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.summary" ,
	      label "summary: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.genetic" ,
	      label "genetic: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.includes" ,
	      label "includes: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.placement" ,
	      label "placement: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.superfamily" ,
	      label "superfamily: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.cross-reference" ,
	      label "xref: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.date" ,
	      label "PIR dates: " ,
              form
                text {
                     } } ,
            {
              asn1 "PIR-block.had-punct" ,
              form
                boolean {
                true "punctuation in sequence" } } ,
            {
              asn1 "PIR-block.seqref" ,
	      label "xrefs:" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
                  components {
                    {
                      asn1 "Seq-id.local" ,
                      form
                        use-template "StdObjectId" } ,
                    {
                      asn1 "Seq-id.genbank" ,
        	      label "genbank" ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.embl" ,
	              label "embl" ,
        	      prefix " " ,
                      form
                        use-template "StdEMBLseqId" } ,
                    {
                      asn1 "Seq-id.pir" ,
	              label "pir" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.swissprot" ,
        	      label "swissprot" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.patent" ,
                      form
                        use-template "StdPatentSeqId" } ,
                    {
                      asn1 "Seq-id.other" ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.general" ,
                      form
                        null NULL } ,
                    {
                      asn1 "Seq-id.gi" ,
		      label "gi:" ,
		      prefix " " ,
                      form
                	text {
                 			  } } ,
                    {
                      asn1 "Seq-id.ddbj" ,
        	      label "ddbj" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.prf" ,
        	      label "prf" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.pdb" ,
                      form
                        use-template "StdPDBseqId" } ,
		   } } } ,
		   } } } } ,
  {
    name "StdPDBBlock" ,
    format {
      asn1 "PDB-block" ,
      prefix "" ,
      suffix "" ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "PDB-block.deposition" ,
	      label "deposition: " ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "PDB-block.class" ,
	      label "class: " ,
              form
                text {
                   } } ,
            {
              asn1 "PDB-block.source" ,
	      label "source:" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
		  components {
		    {
              	     asn1 "PDB-block.source.E" ,
                     form
                       text {
                 		  } } } } } ,
            {
              asn1 "PDB-block.exp-method" ,
	      label "Non X-ray method: " ,
              form
                text {
                   } } ,
            {
              asn1 "PDB-block.replace" ,
	      prefix "" ,
	      form
		use-template "Pdb-replace" } ,
		   } } } } ,
  {
    name "Pdb-replace" ,
    format {
      asn1 "PDB-replace" ,
      prefix "" ,
      suffix "" ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "PDB-replace.date" ,
	      label "replacement date:" ,
	      prefix " " ,
	      form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "PDB-replace.ids" ,
	      label "ids replaced:" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
		  components {
		    {
              	     asn1 "PDB-replace.ids.E" ,
                     form
                       text {
                 		  } } } } } ,
		   } } } } ,
  {
    name "StdPRFBlock" ,
    format {
      asn1 "PRF-block" ,
      prefix "" ,
      suffix "" ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "PRF-block.extra-src" ,
	      prefix "" ,
	      form
		use-template "Prf-Extra-src" } ,
		   } } } } ,
  {
    name "Prf-Extra-src" ,
    format {
      asn1 "PRF-ExtraSrc" ,
      prefix "" ,
      suffix "" ,
      form
        block {
          separator ";~" ,
          components {
            {
              asn1 "PRF-ExtraSrc.host" ,
	      label "host:" ,
	      prefix " " ,
	      form
             	 text {
                 	  } } ,
            {
              asn1 "PRF-ExtraSrc.part" ,
	      label "part:" ,
	      prefix " " ,
	      form
             	 text {
                 	  } } ,
            {
              asn1 "PRF-ExtraSrc.state" ,
	      label "state:" ,
	      prefix " " ,
	      form
             	 text {
                 	  } } ,
            {
              asn1 "PRF-ExtraSrc.strain" ,
	      label "strain:" ,
	      prefix " " ,
	      form
             	 text {
                 	  } } ,
            {
              asn1 "PRF-ExtraSrc.taxon" ,
	      label "taxonomy:" ,
	      prefix " " ,
	      form
             	 text {
                 		 } } ,
		   } } } } ,
  {
    name "StdSPBXRef" ,
    format {
      asn1 "SP-block" ,
      prefix " " ,
      suffix "  " ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "SP-block.seqref" ,
	      prefix " " ,
	      form
		block {
		  separator ", ",
                  components {
                    {
                      asn1 "Seq-id.local" ,
                      form
                        use-template "StdObjectId" } ,
                    {
                      asn1 "Seq-id.genbank" ,
        	      label "genbank" ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.embl" ,
	              label "embl" ,
        	      prefix " " ,
                      form
                        use-template "StdEMBLseqId" } ,
                    {
                      asn1 "Seq-id.pir" ,
	              label "pir" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.swissprot" ,
        	      label "swissprot" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.patent" ,
                      form
                        use-template "StdPatentSeqId" } ,
                    {
                      asn1 "Seq-id.other" ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.general" ,
                      form
                        null NULL } ,
                    {
                      asn1 "Seq-id.gi" ,
		      label "gi:" ,
		      prefix " " ,
                      form
                	text {
                 	  } } ,
                    {
                      asn1 "Seq-id.ddbj" ,
        	      label "ddbj" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.prf" ,
        	      label "prf" ,
        	      prefix " " ,
                      form
                        use-template "StdTextseqId" } ,
                    {
                      asn1 "Seq-id.pdb" ,
                      form
                        use-template "StdPDBseqId" } ,
		   } } } ,
		   } } } } ,
  {
    name "StdPub" ,
    format {
      asn1 "Pub" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Pub.gen" ,
              form
                use-template "StdCitGen" } ,
            {
              asn1 "Pub.sub" ,
              form
                use-template "StdCitSub" } ,
            {
              asn1 "Pub.medline" ,
              form
                use-template "StdMedlineEntry" } ,
            {
              asn1 "Pub.muid" ,
              label "MEDLINE uid: " ,
              form
                text {
                   } } ,
            {
              asn1 "Pub.article" ,
              form
                use-template "StdCitArt" } ,
            {
              asn1 "Pub.journal" ,
              form
                use-template "StdCitJour" } ,
            {
              asn1 "Pub.book" ,
              form
                use-template "StdCitBook" } ,
            {
              asn1 "Pub.proc" ,
              form
                use-template "StdCitProc" } ,
            {
              asn1 "Pub.patent" ,
              form
                use-template "StdCitPat" } ,
            {
              asn1 "Pub.pat-id" ,
              form
                use-template "StdIdPat" } ,
            {
              asn1 "Pub.man" ,
              form
                use-template "StdCitLet" } ,
            {
              asn1 "Pub.equiv" ,
              form
                use-template "StdPubEquiv" } } } } } ,
  {
    name "StdCitGen" ,
    format {
      asn1 "Cit-gen" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-gen.serial-number" ,
              prefix "[" ,
              suffix "]" ,
              form
                text {
                   } } ,
            {
              asn1 "Cit-gen.authors" ,
              form
                use-template "StdAuthList" } ,
            {
              asn1 "Cit-gen.date" ,
              prefix "(" ,
              suffix ")" ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "Cit-gen.title" ,
              form
                text {
                   } } ,
            {
              asn1 "Cit-gen.cit" ,
              form
                text {
                   } } ,
            {
              asn1 "Cit-gen" ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Cit-gen.journal" ,
                      suffix ":" ,
                      form
                        use-template "StdTitle" } ,
                    {
                      asn1 "Cit-gen.issue" ,
                      suffix ";" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Cit-gen.pages" ,
                      form
                        text {
                           } } } } } } } } } ,
  {
    name "StdCitSub" ,
    format {
      asn1 "Cit-sub" ,
      prefix "Data Submission " ,
      form
        block {
          components {
            {
              asn1 "Cit-sub.medium" ,
              prefix "on " ,
              suffix " " ,
              form
                enum {
                   } } ,
            {
              asn1 "Cit-sub.imp.date" ,
              prefix "(" ,
              suffix ")" ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "Cit-sub.authors" ,
              prefix " " ,
              form
                use-template "StdAuthList" } } } } } ,
  {
    name "StdMedlineEntry" ,
    format {
      asn1 "Medline-entry" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Medline-entry" ,
              form
                block {
                  separator "   " ,
                  components {
                    {
                      asn1 "Medline-entry.uid" ,
                      label "uid" ,
                      prefix ": " ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Medline-entry.em" ,
                      label "entry month" ,
                      prefix ": " ,
                      form
                        user {
                          printfunc "StdDatePrint" } } } } } ,
            {
              asn1 "Medline-entry.cit" ,
              form
                use-template "StdCitArt" } ,
            {
              asn1 "Medline-entry.abstract" ,
              label "abstract" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Medline-entry.mesh" ,
              label "Mesh Terms" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Medline-entry.mesh.E" ,
                      form
                        block {
                          components {
                            {
                              asn1 "Medline-mesh.term" ,
                              form
                                text {
                                   } } ,
                            {
                              asn1 "Medline-mesh.mp" ,
                              form
                                boolean {
                                  true " (Main Point)" } } ,
                            {
                              asn1 "Medline-mesh.qual" ,
                              form
                                block {
                                  separator " " ,
                                  components {
                                    {
                                      asn1 "Medline-mesh.qual.E" ,
                                      form
                                        block {
                                          components {
                                            {
                                              asn1 "Medline-qual.subh" ,
                                              form
                                                text {
                                                   } } ,
                                            {
                                              asn1 "Medline-qual.mp" ,
                                              form
                                                boolean {
                                                  true " (Main Point)" } } } } } } } } } } } } } } ,
            {
              asn1 "Medline-entry.substance" ,
              label "Substance" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Medline-entry.substance.E" ,
                      form
                        block {
                          components {
                            {
                              asn1 "Medline-rn.name" ,
                              form
                                text {
                                   } } ,
                            {
                              asn1 "Medline-rn.type" ,
                              form
                                enum {
                                  values {
                                    "" ,
                                    " CAS: " ,
                                    "EC " } } } ,
                            {
                              asn1 "Medline-rn.cit" ,
                              form
                                text {
                                   } } } } } } } } ,
            {
              asn1 "Medline-entry.xref" ,
              label "Cross Reference" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Medline-entry.xref.E" ,
                      form
                        block {
                          separator ": " ,
                          components {
                            {
                              asn1 "Medline-si.type" ,
                              form
                                enum {
                                   } } ,
                            {
                              asn1 "Medline-si.cit" ,
                              form
                                text {
                                   } } } } } } } } ,
            {
              asn1 "Medline-entry.gene" ,
              label "Possible Gene Symbols" ,
              prefix ": " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Medline-entry.gene.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Medline-entry.idnum" ,
              label "Support" ,
              prefix ": " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Medline-entry.idnum.E" ,
                      form
                        text {
                           } } } } } } } } } ,
  {
    name "StdCitArt" ,
    format {
      asn1 "Cit-art" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-art.title" ,
              form
                use-template "StdTitle" } ,
            {
              asn1 "Cit-art.authors" ,
              form
                use-template "StdAuthList" } ,
            {
              asn1 "Cit-art.from.journal" ,
              form
                use-template "StdCitJour" } ,
            {
              asn1 "Cit-art.from.book" ,
              prefix "(in) " ,
              form
                use-template "StdCitBook" } ,
            {
              asn1 "Cit-art.from.proc" ,
              prefix "(in) " ,
              form
                use-template "StdCitProc" } } } } } ,
  {
    name "StdCitJour" ,
    format {
      asn1 "Cit-jour" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-jour.title" ,
              form
                use-template "StdTitle" } ,
            {
              asn1 "Cit-jour.imp" ,
              form
                use-template "StdImprint" } } } } } ,
  {
    name "StdCitBook" ,
    format {
      asn1 "Cit-book" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-book.title" ,
              form
                use-template "StdTitle" } ,
            {
              asn1 "Cit-book.coll" ,
              prefix "Collection: " ,
              form
                use-template "StdTitle" } ,
            {
              asn1 "Cit-book.authors" ,
              form
                use-template "StdAuthList" } ,
            {
              asn1 "Cit-book.imp" ,
              form
                use-template "StdImprint" } } } } } ,
  {
    name "StdCitProc" ,
    format {
      asn1 "Cit-proc" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-proc.book" ,
              form
                use-template "StdCitBook" } ,
            {
              asn1 "Cit-proc.meet" ,
              label "Meeting " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Meeting.number" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Meeting.date" ,
                      form
                        user {
                          printfunc "StdDatePrint" } } ,
                    {
                      asn1 "Meeting.place" ,
                      form
                        use-template "StdAffil" } } } } } } } } ,
  {
    name "StdCitPat" ,
    format {
      asn1 "Cit-pat" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-pat.title" ,
              form
                text {
                   } } ,
            {
              asn1 "Cit-pat.authors" ,
              form
                use-template "StdAuthList" } ,
            {
              asn1 "Cit-pat" ,
              form
                block {
                  components {
                    {
                      asn1 "Cit-pat.country" ,
                      suffix " " ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Cit-pat.doc-type" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Cit-pat.number" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Cit-pat.date-issue" ,
                      prefix " (" ,
                      suffix ")" ,
                      form
                        user {
                          printfunc "StdDatePrint" } } ,
                    {
                      asn1 "Cit-pat.app-number" ,
                      prefix " Appl: " ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Cit-pat.app-date" ,
                      prefix " (" ,
                      suffix ")" ,
                      form
                        user {
                          printfunc "StdDatePrint" } } } } } } } } } ,
  {
    name "StdIdPat" ,
    format {
      asn1 "Id-pat" ,
      form
        block {
          components {
            {
              asn1 "Id-pat.country" ,
              suffix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Id-pat.id.number" ,
              form
                text {
                   } } ,
            {
              asn1 "Id-pat.id.app-number" ,
              prefix "Appl: " ,
              form
                text {
                   } } } } } } ,
  {
    name "StdPatentSeqId" ,
    format {
      asn1 "Patent-seq-id" ,
      label "patent: " ,
      form
        block {
          components {
            {
              asn1 "Patent-seq-id.seqid" ,
              suffix " " ,
              form
                text {
                   } } ,
            {
              asn1 "Patent-seq-id.cit" ,
              prefix " " ,
	      form
             	 use-template "StdIdPat" } } } } } ,
  {
    name "StdCitLet" ,
    format {
      asn1 "Cit-let" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cit-let.type" ,
              prefix "[" ,
              suffix "]" ,
              form
                enum {
                   } } ,
            {
              asn1 "Cit-let.man-id" ,
              form
                text {
                   } } ,
            {
              asn1 "Cit-let.cit" ,
              form
                use-template "StdCitBook" } } } } } ,
  {
    name "StdPubEquiv" ,
    format {
      asn1 "Pub-equiv" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Pub-equiv.E" ,
              form
                use-template "StdPub" } } } } } ,
  {
    name "StdTitle" ,
    format {
      asn1 "Title" ,
      form
        block {
          separator ", " ,
          components {
            {
              asn1 "Title.E.trans" ,
              prefix "[" ,
              suffix "]" ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.name" ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.tsub" ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.abr" ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.iso-jta" ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.ml-jta" ,
              label "MEDLINE" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.jta" ,
              label "jta" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.issn" ,
              label "ISSN" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.coden" ,
              label "CODEN" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Title.E.isbn" ,
              label "ISBN" ,
              prefix ": " ,
              form
                text {
                   } } } } } } ,
  {
    name "StdAuthList" ,
    format {
      asn1 "Auth-list" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Auth-list" ,
              form
                user {
                  printfunc "StdAuthListNamesPrint" } } ,
            {
              asn1 "Auth-list.affil" ,
              form
                use-template "StdAffil" } } } } } ,
  {
    name "StdAffil" ,
    format {
      asn1 "Affil" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Affil.str" ,
              form
                text {
                   } } ,
            {
              asn1 "Affil.std.affil" ,
              form
                text {
                   } } ,
            {
              asn1 "Affil.std.div" ,
              form
                text {
                   } } ,
            {
              asn1 "Affil.std.street" ,
              form
                text {
                   } } ,
            {
              asn1 "Affil.std" ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Affil.std.city" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Affil.std.sub" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Affil.std.country" ,
                      form
                        text {
                           } } } } } } } } } ,
  {
    name "StdImprint" ,
    format {
      asn1 "Imprint" ,
      form
        block {
          components {
            {
              asn1 "Imprint.date" ,
              prefix "(" ,
              suffix ") " ,
              form
                user {
                  printfunc "StdDatePrint" } } ,
            {
              asn1 "Imprint.volume" ,
              form
                text {
                   } } ,
            {
              asn1 "Imprint.issue" ,
              prefix " (" ,
              suffix ")" ,
              form
                text {
                   } } ,
            {
              asn1 "Imprint.section" ,
              prefix " (" ,
              suffix ")" ,
              form
                text {
                   } } ,
            {
              asn1 "Imprint.part-sup" ,
              prefix " (" ,
              suffix ")" ,
              form
                text {
                   } } ,
            {
              asn1 "Imprint.pages" ,
              prefix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Imprint.prepub" ,
              prefix " (" ,
              suffix ")" ,
              form
                enum {
                   } } ,
            {
              asn1 "Imprint.pub" ,
              label " Publisher: " ,
              form
                use-template "StdAffil" } ,
            {
              asn1 "Imprint.cprt" ,
              label " Copyright: " ,
              form
                user {
                  printfunc "StdDatePrint" } } } } } } ,
  {
    name "StdSeqFeatXref" ,
    format {
      asn1 "SeqFeatXref" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "SeqFeatXref.id" ,
              label "Id=" ,
              form
                use-template "StdFeatId" } ,
            {
              asn1 "SeqFeatXref.data" ,
              form
                use-template "StdSeqFeatData" } } } } } ,
  {
    name "StdOrgRef" ,
    format {
      asn1 "Org-ref" ,
      label "Org-ref" ,
      prefix " " ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Org-ref" ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Org-ref.taxname" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Org-ref.common" ,
                      prefix "(" ,
                      suffix ")" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Org-ref.mod" ,
              label "Modifiers" ,
              prefix " (" ,
              suffix ")" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Org-ref.mod.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Org-ref.db" ,
              label "Cross Reference" ,
              prefix " " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Org-ref.db.E" ,
                      prefix "(" ,
                      suffix ")" ,
                      form
                        use-template "StdDbtag" } } } } ,
            {
              asn1 "Org-ref.syn" ,
              label "Synonyms" ,
              prefix " (" ,
              suffix ")" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Org-ref.syn.E" ,
                      form
                        text {
                           } } } } } } } } } ,
  {
    name "StdCdRegion" ,
    format {
      asn1 "Cdregion" ,
      label "Cdregion" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Cdregion.orf" ,
              form
                boolean {
                  true "Uncharacterized Open Reading Frame" } } ,
            {
              asn1 "Cdregion.frame" ,
              label "Reading Frame = " ,
              form
                enum {
                   } } ,
            {
              asn1 "Cdregion.code" ,
              label "Genetic Code: " ,
              suffix ";" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Genetic-code.E.name" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Genetic-code.E.id" ,
                      label "id= " ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Cdregion.conflict" ,
              form
                boolean {
                  true "Translation conflicts with protein sequence" } } ,
            {
              asn1 "Cdregion.stops" ,
              prefix "Translation contains " ,
              suffix " stop codons" ,
              form
                text {
                   } } ,
            {
              asn1 "Cdregion.gaps" ,
              prefix "Translation contains " ,
              suffix " gaps when aligned to protein" ,
              form
                text {
                   } } ,
            {
              asn1 "Cdregion.mismatch" ,
              prefix "Translation contains " ,
              suffix " mismatches when aligned to protein" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdProtRef" ,
    format {
      asn1 "Prot-ref" ,
      label "Prot-ref" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Prot-ref.name" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Prot-ref.name.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Prot-ref.desc" ,
              prefix "[" ,
              suffix "]" ,
              form
                text {
                   } } ,
            {
              asn1 "Prot-ref.ec" ,
              label "ec" ,
              prefix ": " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Prot-ref.ec.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Prot-ref.activity" ,
              label "activity" ,
              prefix ": " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Prot-ref.activity.E" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "Prot-ref.db" ,
              form
                use-template "StdDbtag" } } } } } ,
  {
    name "StdRNARef" ,
    format {
      asn1 "RNA-ref" ,
      label "RNA-ref" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "RNA-ref.type" ,
              form
                enum {
                   } } ,
            {
              asn1 "RNA-ref.pseudo" ,
              form
                boolean {
                  true "This is an RNA pseudogene." } } ,
            {
              asn1 "RNA-ref.ext.name" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdPubdesc" ,
    format {
      asn1 "Pubdesc" ,
      label "Pubdesc" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Pubdesc.pub" ,
              form
                use-template "StdPubEquiv" } ,
            {
              asn1 "Pubdesc" ,
              prefix "In this article: " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Pubdesc.name" ,
                      label "name=" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Pubdesc.fig" ,
                      label "figure=" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Pubdesc.poly-a" ,
                      form
                        boolean {
                          true "poly(A) shown" } } ,
                    {
                      asn1 "Pubdesc.maploc" ,
                      label "map location=" ,
                      form
                        text {
                           } } ,
                    {
                      asn1 "Pubdesc.num" ,
                      form
                        use-template "StdNumbering" } ,
                    {
                      asn1 "Pubdesc.numexc" ,
                      form
                        boolean {
                          true "numbering inconsistent" } } } } } ,
            {
              asn1 "Pubdesc.comment" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdImpFeat" ,
    format {
      asn1 "Imp-feat.key" ,
      label "Imp-feat" ,
      form
        text {
           } } } ,
  {
    name "StdRsiteRef" ,
    format {
      asn1 "Rsite-ref" ,
      label "Rsite-ref" ,
      form
        block {
          components {
            {
              asn1 "Rsite-ref.str" ,
              form
                text {
                   } } ,
            {
              asn1 "Rsite-ref.std" ,
              form
                use-template "StdDbtag" } } } } } ,
  {
    name "StdTxInit" ,
    format {
      asn1 "TxInit" ,
      label "TxInit" ,
      form
        null NULL } } ,
  {
    name "StdNumbering" ,
    format {
      asn1 "Numbering" ,
      label "Numbering" ,
      form
        null NULL } } ,
  {
    name "StdFeatId" ,
    format {
      asn1 "Feat-id" ,
      form
        block {
          components {
            {
              asn1 "Feat-id.gibb" ,
              label "GenInfo Backbone: " ,
              form
                text {
                   } } ,
            {
              asn1 "Feat-id.giim.id" ,
              label "GenInfo Import Id: " ,
              form
                text {
                   } } ,
            {
              asn1 "Feat-id.local" ,
              label "Local: " ,
              form
                use-template "StdObjectId" } ,
            {
              asn1 "Feat-id.general" ,
              form
                use-template "StdDbtag" } } } } } ,
  {
    name "StdSeqFeatCommon" ,
    format {
      asn1 "Seq-feat" ,
      form
        block {
          separator " " ,
          components {
            {
              asn1 "Seq-feat.id" ,
              label "Id=" ,
              form
                use-template "StdFeatId" } ,
            {
              asn1 "Seq-feat.title" ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-feat" ,
              suffix ";" ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "Seq-feat.partial" ,
                      form
                        boolean {
                          true "Partial" } } ,
                    {
                      asn1 "Seq-feat.except" ,
                      form
                        boolean {
                          true "Biological Exception" } } ,
                    {
                      asn1 "Seq-feat.exp-ev" ,
                      label "Evidence" ,
                      prefix " is " ,
                      form
                        enum {
                           } } } } } ,
            {
              asn1 "Seq-feat.comment" ,
              form
                text {
                   } } ,
            {
              asn1 "Seq-feat.ext" ,
              form
                use-template "StdUserObj" } ,
            {
              asn1 "Seq-feat.qual" ,
              label "Qualifiers" ,
              prefix " " ,
              form
                block {
                  separator " " ,
                  components {
                    {
                      asn1 "Seq-feat.qual.E" ,
                      prefix "\\" ,
                      form
                        block {
                          separator "= " ,
                          components {
                            {
                              asn1 "Gb-qual.qual" ,
                              form
                                text {
                                   } } ,
                            {
                              asn1 "Gb-qual.val" ,
                              form
                                text {
                                   } } } } } } } } } } } } ,
  {
    name "StdDbtag" ,
    format {
      asn1 "Dbtag" ,
      form
        block {
          components {
            {
              asn1 "Dbtag.db" ,
              suffix ": " ,
              form
                text {
                   } } ,
            {
              asn1 "Dbtag.tag" ,
              form
                use-template "StdObjectId" } } } } } ,
  {
    name "StdObjectId" ,
    format {
      asn1 "Object-id" ,
      form
        block {
          components {
            {
              asn1 "Object-id.id" ,
              form
                text {
                   } } ,
            {
              asn1 "Object-id.str" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdTextseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label "accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.release" ,
	      label "release" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.version" ,
	      label "" ,
              form
                text { 
                   } } } } } } ,
  {
    name "VersionTextseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label "accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.release" ,
	      label "release" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.version" ,
	      label "." ,
	      prefix "" ,
              form
                text { 
                   } } } } } } ,
  {
    name "StdPDBseqId" ,
    format {
      asn1 "PDB-seq-id" ,
      label "PDB Id: " ,
      form
        block {
          components {
            {
              asn1 "PDB-seq-id.mol" ,
	      label "molecule" ,
	      prefix " " ,
	      suffix ", " ,
              form
                block {
                  separator ", " ,
                  components {
                    {
                      asn1 "PDB-mol-id" ,
                      form
                        text {
                           } } } } } ,
            {
              asn1 "PDB-seq-id.chain" ,
	      label "chain" ,
	      prefix " " ,
	      suffix ", " ,
              form
                text { 
		  } } ,
            {
              asn1 "PDB-seq-id.rel" ,
	      label "release" ,
	      prefix " " ,
              form
                user {
                  printfunc "StdDatePrint" } } } } } } ,
  {
    name "StdEMBLseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix ", " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label "accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.release" ,
	      label "release" ,
	      prefix " " ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.version" ,
 	      label "." ,
	      prefix "" ,
             form
                text { 
		  } } ,
                 } } } } ,
  {
    name "StdPIRseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "" ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdPRFseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "" ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdPDBseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "" ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdSPseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "," ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdLocalId" ,
    format {
      asn1 "Object-id" ,
      form
        block {
          components {
            {
              asn1 "Object-id.id" ,
	      prefix " " ,
	      suffix "" ,
              form
                text {
                   } } ,
            {
              asn1 "Object-id.str" ,
	      prefix " " ,
	      suffix "" ,
              form
                text {
                   } } } } } } ,
  {
    name "StdOtherId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "," ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdGPseqId" ,
    format {
      asn1 "Textseq-id" ,
      form
        block {
          components {
            {
              asn1 "Textseq-id.name" ,
	      label "locus" ,
	      prefix " " ,
	      suffix "," ,
              form
                text { 
		  } } ,
            {
              asn1 "Textseq-id.accession" ,
	      label " accession" ,
	      prefix " " ,
              form
                text { 
		  } } ,
                   } } } } ,
  {
    name "StdSeqId" ,
    format {
      asn1 "Seq-id" ,
      form
        block {
          components {
            {
              asn1 "Seq-id.local" ,
              form
                use-template "StdObjectId" } ,
            {
              asn1 "Seq-id.genbank" ,
              form
                use-template "StdTextseqId" } ,
            {
              asn1 "Seq-id.embl" ,
	      label "embl" ,
	      prefix " " ,
              form
                use-template "StdEMBLseqId" } ,
            {
              asn1 "Seq-id.pir" ,
	      label "pir" ,
	      prefix " " ,
              form
                use-template "StdTextseqId" } ,
            {
              asn1 "Seq-id.swissprot" ,
              form
                use-template "StdTextseqId" } ,
            {
               asn1 "Seq-id.patent" ,
               form
                 use-template "StdPatentSeqId" } ,
            {
              asn1 "Seq-id.other" ,
	      label "REFSEQ:" ,
	      prefix " " ,
              form
                use-template "StdTextseqId" } ,
            {
              asn1 "Seq-id.general" ,
              form
                null NULL } ,
            {
               asn1 "Seq-id.gi" ,
	      label "gi:" ,
	      prefix " " ,
              form
            	text {
                	  } } ,
            {
              asn1 "Seq-id.ddbj" ,
              form
                use-template "StdTextseqId" } ,
            {
              asn1 "Seq-id.prf" ,
              form
                use-template "StdTextseqId" } ,
            {
              asn1 "Seq-id.pdb" ,
              form
                use-template "StdPDBseqId" } ,
		   } 
		   } } } , 
  {
    name "VersionSeqId" ,
    format {
      asn1 "Seq-id" ,
      form
        block {
          components {
            {
              asn1 "Seq-id.local" ,
              form
                use-template "StdObjectId" } ,
            {
              asn1 "Seq-id.genbank" ,
              form
                use-template "VersionTextseqId" } ,
            {
              asn1 "Seq-id.embl" ,
	      label "embl" ,
	      prefix " " ,
              form
                use-template "StdEMBLseqId" } ,
            {
              asn1 "Seq-id.pir" ,
	      label "pir" ,
	      prefix " " ,
              form
                use-template "VersionTextseqId" } ,
            {
              asn1 "Seq-id.swissprot" ,
              form
                use-template "VersionTextseqId" } ,
            {
               asn1 "Seq-id.patent" ,
               form
                 use-template "StdPatentSeqId" } ,
            {
              asn1 "Seq-id.other" ,
	      label "REFSEQ:" ,
	      prefix " " ,
              form
                use-template "VersionTextseqId" } ,
            {
              asn1 "Seq-id.general" ,
              form
                null NULL } ,
            {
               asn1 "Seq-id.gi" ,
	      label "gi:" ,
	      prefix " " ,
              form
            	text {
                	  } } ,
            {
              asn1 "Seq-id.ddbj" ,
              form
                use-template "VersionTextseqId" } ,
            {
              asn1 "Seq-id.prf" ,
              form
                use-template "VersionTextseqId" } ,
            {
              asn1 "Seq-id.pdb" ,
              form
                use-template "StdPDBseqId" } ,
		   } 
		   } } } }
