summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/texshade
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-13 00:08:56 +0000
committerKarl Berry <karl@freefriends.org>2006-01-13 00:08:56 +0000
commit1335c8dc79c73826f03e31bdd3fb30cbe415839f (patch)
treed9ff86f739af8dc68afc9d54ccab1a7cb6f494f9 /Master/texmf-dist/tex/latex/texshade
parent54b085e6104e56908ac781c93c7582a12c67a67a (diff)
texshade
git-svn-id: svn://tug.org/texlive/trunk@1381 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/texshade')
-rw-r--r--Master/texmf-dist/tex/latex/texshade/texshade.def167
-rw-r--r--Master/texmf-dist/tex/latex/texshade/texshade.sty8425
2 files changed, 8592 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/texshade/texshade.def b/Master/texmf-dist/tex/latex/texshade/texshade.def
new file mode 100644
index 00000000000..be63e0f7c69
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/texshade/texshade.def
@@ -0,0 +1,167 @@
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% %%%%%
+%%%%% Default parameter settings for the LaTeX ``TeXshade'' package %%%%%
+%%%%% %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% %%%%%
+%%%%% This example file contains all standard settings of the TeXshade %%%%%
+%%%%% package. It can be used as a template for the creation of perso- %%%%%
+%%%%% nal parameter files. All TeXshade user commands are allowed and %%%%%
+%%%%% functional when specified here. %%%%%
+%%%%% %%%%%
+%%%%% To activate these settings for your alignment load this file by %%%%%
+%%%%% naming it as optional parameter at the beginning of the texshade %%%%%
+%%%%% environment, e.g. %%%%%
+%%%%% %%%%%
+%%%%% \begin{texshade}[myparameterfile]{alignmentfile} %%%%%
+%%%%% . %%%%%
+%%%%% . %%%%%
+%%%%% \end{texshade} %%%%%
+%%%%% %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\shadingmode{identical} % Shade identical residues only
+\shadingcolors{blues} % Select the blue color scheme for shading
+\constoallseqs % Calculate consensus considering all seqs
+\threshold{50} % Consensus threshold percentage is 50
+\residuesperline{999} % As many residues as possible per line
+\numberingwidth{9999} % Assign space for 4 digit numbering
+\charstretch{1.15} % Stretch character width 1.15fold
+\linestretch{1} % Do not stretch lines
+\gapchar{.} % . is printed in sequence gaps
+\gaprule{0.3pt} % If a rule is printed in gaps use 0.3 pt
+\gapcolors{Black}{White} % Gap symbols appear `Black on White'
+\numberingcolor{Black} % Numbering color is `Black'
+\shownumbering{left} % Show sequence numbering on the left
+\namescolor{Black} % Names' color is `Black'
+\shownames{right} % Show sequence names on the right
+\consensuscolors{Black}{White} % All consensus symbols/letters
+ {Black}{White} % appear `Black on White'
+ {Black}{White} %
+\showconsensus{bottom} % Show consensus line at bottom with
+\defconsensus{{}}{*}{!} % Blank =no match; * =match; ! =all match
+\rulercolor{Black} % Ruler's color is `Black'
+\hideruler % Do not show the ruler
+\showleadinggaps % Show gap symbols before sequence start
+\rulersteps{10} % Ruler ticks every 10 residues
+\legendcolor{Black} % Legend text color is `Black'
+\hidelegend % Do not show the legend
+\alignment{center} % Center alignment on page
+\medsepline % Medium height if separation line is on
+\medblockskip % Medium skip between sequence blocks
+\flexblockspace % Use optimized space between blocks
+\featurerule{0.5ex} % Set feature rule thickness to 1/5 ex
+\bargraphstretch{1} % Do not stretch bars in feature graphs
+\colorscalestretch{1} % Do not stretch color scales in features
+\backtranstext{horizontal} % Horizontal triplets in feature texts
+\backtranslabel{alternating} % Alternating triplets in feature styles
+\setfamily{residues}{tt} % Use typewriter family for residues
+\setseries{residues}{md} % Use normal series for residues
+\setshape {residues}{up} % Use upright shape for residues
+\setsize {residues}{normalsize} % Use normal size for residues
+\setfamily{numbering}{tt} % Use typewriter family for numbering
+\setseries{numbering}{md} % Use normal series for numbering
+\setshape {numbering}{up} % Use upright shape for numbering
+\setsize {numbering}{normalsize} % Use normal size for numbering
+\setfamily{names}{tt} % Use typewriter family for names
+\setseries{names}{md} % Use normal series for names
+\setshape {names}{up} % Use upright shape for names
+\setsize {names}{normalsize} % Use normal size for names
+\setfamily{features}{rm} % Use roman family for feature texts
+\setseries{features}{md} % Use normal series for feature texts
+\setshape {features}{it} % Use italics shape for feature texts
+\setsize {features}{normalsize} % Use normal size for feature texts
+\setfamily{legend}{tt} % Use typewriter family for legend texts
+\setseries{legend}{md} % Use normal series for legend texts
+\setshape {legend}{up} % Use upright shape for legend texts
+\setsize {legend}{normalsize} % Use normal size for legend texts
+\tintdefault{medium} % Use medium tint intensity
+\emphdefault{it} % Use italics to emphasize regions
+\showonPHDsec{alpha,beta} % Show helices and strands (PHD input)
+\showonPHDtopo{internal,external,TM}% Show int., ext. and TM's (PHD input)
+\showonHMMTOP{TM} % Show TM's (not int/ext on HMMTOP input)
+\showonSTRIDE{alpha,3-10,pi,beta} % Show helices and strands (STRIDE input)
+\showonDSSP{alpha,3-10,pi,beta} % Show helices and strands (DSSP input)
+\secondcolumnDSSP % Use numbering from 2. column in DSSP
+\appearance{PHDtopo}{internal} % \
+ {bottom}{'-'} % \
+ {int.\ \Alphacount} % |
+\appearance{PHDtopo}{external} % |
+ {top}{,-,} % |
+ {ext.\ \Alphacount} % |
+\appearance{PHDtopo}{TM}{top} % |
+ {box[LightGray]:TM\numcount}{} % |
+\appearance{HMMTOP}{internal} % |
+ {bottom}{---} % |
+ {int.\ \Alphacount} % |
+\appearance{HMMTOP}{external} % |
+ {top}{---} % |
+ {ext.\ \Alphacount} % |
+\appearance{HMMTOP}{TM}{top} % |
+ {helix}{TM\numcount} % |
+\appearance{PHDsec}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % |
+\appearance{PHDsec}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{STRIDE}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % | Definitions for the appearance of
+\appearance{STRIDE}{3-10}{top} % \
+ {fill:$\circ$}{3$_{10}$} % > secondary structures included from|
+\appearance{STRIDE}{pi} % /
+ {top}{---}{$\pi$} % | PHD-, STRIDE-, or DSSP-files.
+\appearance{STRIDE}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{STRIDE}{bridge} % |
+ {top}{fill:$\uparrow$}{} % |
+\appearance{STRIDE}{turn} % |
+ {top}{,-,}{turn} % |
+\appearance{DSSP}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % |
+\appearance{DSSP}{3-10}{top} % |
+ {fill:$\circ$}{3$_{10}$} % |
+\appearance{DSSP}{pi} % |
+ {top}{---}{$\pi$} % |
+\appearance{DSSP}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{DSSP}{bridge} % |
+ {top}{fill:$\uparrow$}{} % |
+\appearance{DSSP}{turn} % |
+ {top}{,-,}{turn} % |
+\appearance{DSSP}{bend}{top} % /
+ {fill:$\diamond$}{} % /
+
+\pepgroups{FYW,ILVM,RK,DE,GA,ST,NQ} % Amino acid grouping due to similarity
+
+\pepsims{F}{YW} % Y and W are similar to F
+\pepsims{Y}{WF} % W and F are similar to Y
+\pepsims{W}{YF} % Y and F are similar to W
+
+\pepsims{I}{LVM} % L, V and M are similar to I
+\pepsims{L}{VMI} % V, M and I are similar to L
+\pepsims{V}{MIL} % M, I and L are similar to V
+
+\pepsims{R}{KH} % K and H are similar to R
+\pepsims{K}{HR} % H and R are similar to K
+\pepsims{H}{RK} % R and K are similar to H
+
+\pepsims{A}{GS} % G and S are similar to A
+\pepsims{G}{A} % A (but not S) is similar to G
+
+\pepsims{S}{TA} % T and A are similar to S
+\pepsims{T}{S} % S (but not A) is similar to T
+
+\pepsims{D}{EN} % E and N (but not Q) are similar to D
+\pepsims{E}{DQ} % D and Q (but not N) are similar to E
+\pepsims{N}{QD} % Q and D (but not E) are similar to N
+\pepsims{Q}{NE} % N and E (but not D) are similar to Q
+
+\DNAgroups{GAR,CTY} % Nucleotide grouping due to similarity
+
+\DNAsims{A}{GR} % G and R are similar to A
+\DNAsims{G}{AR} % A and R are similar to G
+\DNAsims{R}{AG} % A and G are similar to R
+
+\DNAsims{C}{TY} % T and Y are similar to C
+\DNAsims{T}{CY} % C and Y are similar to T
+\DNAsims{Y}{CT} % C and T are similar to Y
diff --git a/Master/texmf-dist/tex/latex/texshade/texshade.sty b/Master/texmf-dist/tex/latex/texshade/texshade.sty
new file mode 100644
index 00000000000..2ba3a2cdc1f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/texshade/texshade.sty
@@ -0,0 +1,8425 @@
+%%
+%% This is file `texshade.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% texshade.dtx (with options: `texshade')
+%%
+%% LaTeX package for typesetting nucleotide and peptide alignments
+%%
+%% Copyright (C) 1999-2005 Eric Beitz
+%% See the file texshade.txt
+%%
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{texshade}[2005/04/13 LaTeX TeXshade (v1.12)]
+\message{Package `texshade', Version 1.12 of 2005/09/20.}
+
+\PassOptionsToPackage{dvips}{color}
+\DeclareOption*{%
+ \PassOptionsToPackage{\CurrentOption}{color}%
+}
+\ProcessOptions
+\RequirePackage{color}
+
+\expandafter\ifx\csname TeXshade\endcsname\relax \else \endinput \fi
+
+\expandafter\ifx\csname TeXtopo\endcsname\relax \else
+ \PackageError{TeXtopo}
+ {TeXtopo loaded before TeXshade}
+ {\MessageBreak
+ For the proper function of the TeXtopo/TeXshade combo the \MessageBreak
+ TeXshade package must be loaded before the TeXtopo package.\MessageBreak
+ Please change the order of the \noexpand\usepackage commands in your
+ \MessageBreak
+ document header section or use the `biotex.sty'.\MessageBreak\MessageBreak
+ Quit here by typing \space X <return>. \MessageBreak
+}
+\fi
+
+\catcode`\@11
+
+\newread\structurefile \newwrite\featurefile
+\newread\alignfile
+
+\expandafter\ifx\csname blacktriangleright\endcsname\relax
+ \openin\structurefile = amssymb.sty
+ \ifeof\structurefile
+ \message{<AMS symbol style `amssymb.sty' not installed - using round heads>}
+ \def\blacktriangleright{%
+ \rule[\width@tmp]{0.65ex}{\temp@@length}\kern-0.55ex\ensuremath{\bullet}%
+ }
+ \def\blacktriangleleft{%
+ \ensuremath{\bullet}\kern-0.55ex\rule[\width@tmp]{0.65ex}{\temp@@length}%
+ }
+ \else \RequirePackage[]{amssymb} \fi
+ \closein\structurefile
+\fi
+
+\newcount\loopcount \newcount\innerloopcount \newcount\outerloopcount
+\newcount\seq@count \newcount\killseq@count
+\newcount\seq@percent \newcount\res@count
+\newcount\seq@pointer \newcount\pos@count
+\newcount\res@perline \newcount\end@count
+\newcount\cons@count \expandafter\newcount\csname res@count0\endcsname
+\newcount\temp@count \newcount\triple@count
+
+\newlength\box@width \newlength\name@width
+\newlength\box@depth \newlength\width@tmp
+\newlength\box@height \newlength\number@width
+\newlength\char@stretch \newlength\line@stretch
+\newlength\center@fill \newlength\arrow@width
+\newlength\arrow@height \newlength\rule@thick
+\newlength\arrow@thick
+\newlength\equal@width \newlength\equal@tmp
+\newlength\equal@height \newlength\temp@@length
+\newlength\vspace@legend
+\newlength\hspace@legend
+
+\newif\ifletter \newif\ifnumber
+\newif\ifnewres \newif\ifall@shade
+\newif\ifnames@right \newif\ifnumbers@left
+\newif\ifhide@cons \newif\ifshow@cons
+\newif\iffuncmode \newif\iflegend@
+\newif\ifnumbers@ \newif\ifnames@
+\newif\ifgerm@n \newif\ifsp@nish
+\newif\ifrpl@fix
+\newif\ifnosh@de \newif\ifregionalshade
+\newif\ifstart@ \newif\ifstop@
+\newif\iftopfeature \newif\ifbottomfeature
+\newif\ifttopfeature \newif\ifbbottomfeature
+\newif\ifall@fshade \newif\ifregionalemph
+\newif\ifframe@ \newif\ifregionaltint
+\newif\ifhidechar \newif\ifsh@wg@ps
+\newif\ifsimmode
+\newif\ifregionaltintnow
+\newif\ifregionalemphnow
+\newif\ifregionalshadenow
+\newif\iftopfeaturenow
+\newif\ifttopfeaturenow
+\newif\ifbottomfeaturenow
+\newif\ifbbottomfeaturenow
+\newif\ifframenow
+\newif\iffix@
+
+\expandafter\ifx\csname mdqon\endcsname\relax
+ \germ@nfalse \sp@nishfalse \def\cons@name{consensus}
+\else \germ@ntrue \sp@nishfalse \def\cons@name{Konsensus} \fi
+
+\def\n@me{Name:} \def\@msf{MSF:} \def\he@derend{//} \def\ampers@nd{&}
+\def\comm@{,} \def\@loc{LOC} \def\@asg{ASG} \def\@t{@} \def\@HP{>HP:}
+\def\gre@ter{>} \def\sm@ller{<} \def\N@{N} \def\equ@l{=} \def\H@{H}
+\def\gap@char{.} \def\yes{yes} \def\y@{y} \def\n@{n} \def\o@{o} \def\d@t{.}
+\def\gap@rule{\rule[0.3\box@height]{\box@width}{\gap@rulethick}}
+\def\fgroup@num{0} \def\max@seqnumber{0} \def\@lign@count{0}
+\def\resn@m@tch{upper} \def\ressimm@tch{upper}
+\def\resm@tch{upper} \def\res@llm@tch{upper}
+\def\tr@ns{translate} \def\gr@ydef@ult{GrayDefault}
+\xdef\par@{\expandafter\string\par}
+\expandafter\def\csname fg@textcolor/\endcsname{White}
+\expandafter\def\csname fg@color/\endcsname{White}
+\expandafter\def\csname func@style/\endcsname{\csname textup\endcsname}
+\expandafter\def\csname func@style*\endcsname{\csname textup\endcsname}
+\expandafter\def\csname funcm@tch/\endcsname{upper}
+\expandafter\def\csname funcm@tch*\endcsname{upper}
+
+\setlength\hspace@legend{0pt} \setlength\vspace@legend{0pt}
+\triple@count=0 \cons@count=0
+
+\def\clear@sims{%
+ \expandafter\xdef\csname \prfx simA\endcsname{(1)A}
+ \expandafter\xdef\csname \prfx simB\endcsname{(1)B}
+ \expandafter\xdef\csname \prfx simC\endcsname{(1)C}
+ \expandafter\xdef\csname \prfx simD\endcsname{(1)D}
+ \expandafter\xdef\csname \prfx simE\endcsname{(1)E}
+ \expandafter\xdef\csname \prfx simF\endcsname{(1)F}
+ \expandafter\xdef\csname \prfx simG\endcsname{(1)G}
+ \expandafter\xdef\csname \prfx simH\endcsname{(1)H}
+ \expandafter\xdef\csname \prfx simI\endcsname{(1)I}
+ \expandafter\xdef\csname \prfx simJ\endcsname{(1)J}
+ \expandafter\xdef\csname \prfx simK\endcsname{(1)K}
+ \expandafter\xdef\csname \prfx simL\endcsname{(1)L}
+ \expandafter\xdef\csname \prfx simM\endcsname{(1)M}
+ \expandafter\xdef\csname \prfx simN\endcsname{(1)N}
+ \expandafter\xdef\csname \prfx simO\endcsname{(1)O}
+ \expandafter\xdef\csname \prfx simP\endcsname{(1)P}
+ \expandafter\xdef\csname \prfx simQ\endcsname{(1)Q}
+ \expandafter\xdef\csname \prfx simR\endcsname{(1)R}
+ \expandafter\xdef\csname \prfx simS\endcsname{(1)S}
+ \expandafter\xdef\csname \prfx simT\endcsname{(1)T}
+ \expandafter\xdef\csname \prfx simU\endcsname{(1)U}
+ \expandafter\xdef\csname \prfx simV\endcsname{(1)V}
+ \expandafter\xdef\csname \prfx simW\endcsname{(1)W}
+ \expandafter\xdef\csname \prfx simX\endcsname{(1)X}
+ \expandafter\xdef\csname \prfx simY\endcsname{(1)Y}
+ \expandafter\xdef\csname \prfx simZ\endcsname{(1)Z}
+}
+
+\xdef\pepmwA{711} \xdef\pepmwB{1146} \xdef\pepmwC{1032}
+\xdef\pepmwD{1151} \xdef\pepmwE{1291} \xdef\pepmwF{1472}
+\xdef\pepmwG{571} \xdef\pepmwH{1372} \xdef\pepmwI{1132}
+\xdef\pepmwJ{0} \xdef\pepmwK{1282} \xdef\pepmwL{1132}
+\xdef\pepmwM{1312} \xdef\pepmwN{1141} \xdef\pepmwO{0}
+\xdef\pepmwP{971} \xdef\pepmwQ{1281} \xdef\pepmwR{1562}
+\xdef\pepmwS{871} \xdef\pepmwT{1011} \xdef\pepmwU{0}
+\xdef\pepmwV{991} \xdef\pepmwW{1862} \xdef\pepmwX{1282}
+\xdef\pepmwY{1632} \xdef\pepmwZ{1286}
+
+\xdef\DNAmwA{3462} \xdef\DNAmwB{0} \xdef\DNAmwC{3222}
+\xdef\DNAmwD{0} \xdef\DNAmwE{0} \xdef\DNAmwF{0}
+\xdef\DNAmwG{3622} \xdef\DNAmwH{0} \xdef\DNAmwI{0}
+\xdef\DNAmwJ{0} \xdef\DNAmwK{0} \xdef\DNAmwL{0}
+\xdef\DNAmwM{0} \xdef\DNAmwN{0} \xdef\DNAmwO{0}
+\xdef\DNAmwP{0} \xdef\DNAmwQ{0} \xdef\DNAmwR{0}
+\xdef\DNAmwS{0} \xdef\DNAmwT{3372} \xdef\DNAmwU{3232}
+\xdef\DNAmwV{0} \xdef\DNAmwW{0} \xdef\DNAmwX{0}
+\xdef\DNAmwY{0} \xdef\DNAmwZ{0}
+
+\xdef\pepchargeA{0} \xdef\pepchargeB{0} \xdef\pepchargeC{-30}
+\xdef\pepchargeD{-1000} \xdef\pepchargeE{-1000} \xdef\pepchargeF{0}
+\xdef\pepchargeG{0} \xdef\pepchargeH{165} \xdef\pepchargeI{0}
+\xdef\pepchargeJ{0} \xdef\pepchargeK{1000} \xdef\pepchargeL{0}
+\xdef\pepchargeM{0} \xdef\pepchargeN{0} \xdef\pepchargeO{0}
+\xdef\pepchargeP{0} \xdef\pepchargeQ{0} \xdef\pepchargeR{1000}
+\xdef\pepchargeS{0} \xdef\pepchargeT{0} \xdef\pepchargeU{0}
+\xdef\pepchargeV{0} \xdef\pepchargeW{0} \xdef\pepchargeX{0}
+\xdef\pepchargeY{0} \xdef\pepchargeZ{0}
+\xdef\chargeNterm{910} \xdef\chargeCterm{-1000}
+
+\xdef\chargeA{0} \xdef\chargeB{0} \xdef\chargeC{0}
+\xdef\chargeD{-50} \xdef\chargeE{-50} \xdef\chargeF{0}
+\xdef\chargeG{0} \xdef\chargeH{30} \xdef\chargeI{0}
+\xdef\chargeJ{0} \xdef\chargeK{50} \xdef\chargeL{0}
+\xdef\chargeM{0} \xdef\chargeN{0} \xdef\chargeO{0}
+\xdef\chargeP{0} \xdef\chargeQ{0} \xdef\chargeR{50}
+\xdef\chargeS{0} \xdef\chargeT{0} \xdef\chargeU{0}
+\xdef\chargeV{0} \xdef\chargeW{0} \xdef\chargeX{0}
+\xdef\chargeY{0} \xdef\chargeZ{0}
+
+\xdef\molwA{11} \xdef\molwB{45} \xdef\molwC{36}
+\xdef\molwD{45} \xdef\molwE{66} \xdef\molwF{70}
+\xdef\molwG{1} \xdef\molwH{62} \xdef\molwI{44}
+\xdef\molwJ{N} \xdef\molwK{55} \xdef\molwL{44}
+\xdef\molwM{58} \xdef\molwN{44} \xdef\molwO{N}
+\xdef\molwP{31} \xdef\molwQ{55} \xdef\molwR{77}
+\xdef\molwS{19} \xdef\molwT{34} \xdef\molwU{N}
+\xdef\molwV{33} \xdef\molwW{100} \xdef\molwX{55}
+\xdef\molwY{82} \xdef\molwZ{66}
+
+\xdef\HydroA{21} \xdef\HydroB{N} \xdef\HydroC{10}
+\xdef\HydroD{-31} \xdef\HydroE{-25} \xdef\HydroF{41}
+\xdef\HydroG{16} \xdef\HydroH{-14} \xdef\HydroI{47}
+\xdef\HydroJ{N} \xdef\HydroK{-52} \xdef\HydroL{36}
+\xdef\HydroM{22} \xdef\HydroN{-27} \xdef\HydroO{N}
+\xdef\HydroP{4} \xdef\HydroQ{-29} \xdef\HydroR{-53}
+\xdef\HydroS{-6} \xdef\HydroT{-2} \xdef\HydroU{N}
+\xdef\HydroV{37} \xdef\HydroW{28} \xdef\HydroX{N}
+\xdef\HydroY{9} \xdef\HydroZ{N}
+
+\xdef\consCC{100} \xdef\consCS{67} \xdef\consCT{33} \xdef\consCP{33} \xdef\consCA{33}
+\xdef\consCG{50} \xdef\consCN{33} \xdef\consCD{17} \xdef\consCE{0} \xdef\consCQ{17}
+\xdef\consCH{33} \xdef\consCR{33} \xdef\consCK{0} \xdef\consCM{33} \xdef\consCI{33}
+\xdef\consCL{33} \xdef\consCV{33} \xdef\consCF{50} \xdef\consCY{50} \xdef\consCW{50}
+\expandafter\xdef\csname consC.\endcsname{0}
+
+\xdef\consSC{67} \xdef\consSS{100} \xdef\consST{83} \xdef\consSP{67} \xdef\consSA{83}
+\xdef\consSG{83} \xdef\consSN{83} \xdef\consSD{67} \xdef\consSE{50} \xdef\consSQ{50}
+\xdef\consSH{50} \xdef\consSR{50} \xdef\consSK{50} \xdef\consSM{33} \xdef\consSI{33}
+\xdef\consSL{33} \xdef\consSV{67} \xdef\consSF{50} \xdef\consSY{50} \xdef\consSW{33}
+\expandafter\xdef\csname consS.\endcsname{0}
+
+\xdef\consTC{33} \xdef\consTS{83} \xdef\consTT{100} \xdef\consTP{67} \xdef\consTA{83}
+\xdef\consTG{67} \xdef\consTN{67} \xdef\consTD{50} \xdef\consTE{50} \xdef\consTQ{50}
+\xdef\consTH{33} \xdef\consTR{50} \xdef\consTK{67} \xdef\consTM{50} \xdef\consTI{50}
+\xdef\consTL{33} \xdef\consTV{67} \xdef\consTF{33} \xdef\consTY{33} \xdef\consTW{17}
+\expandafter\xdef\csname consT.\endcsname{0}
+
+\xdef\consPC{33} \xdef\consPS{67} \xdef\consPT{67} \xdef\consPP{100} \xdef\consPA{83}
+\xdef\consPG{67} \xdef\consPN{33} \xdef\consPD{50} \xdef\consPE{50} \xdef\consPQ{50}
+\xdef\consPH{50} \xdef\consPR{50} \xdef\consPK{33} \xdef\consPM{33} \xdef\consPI{33}
+\xdef\consPL{50} \xdef\consPV{67} \xdef\consPF{50} \xdef\consPY{33} \xdef\consPW{33}
+\expandafter\xdef\csname consP.\endcsname{0}
+
+\xdef\consAC{33} \xdef\consAS{83} \xdef\consAT{83} \xdef\consAP{83} \xdef\consAA{100}
+\xdef\consAG{83} \xdef\consAN{50} \xdef\consAD{67} \xdef\consAE{67} \xdef\consAQ{50}
+\xdef\consAH{33} \xdef\consAR{33} \xdef\consAK{50} \xdef\consAM{50} \xdef\consAI{33}
+\xdef\consAL{33} \xdef\consAV{83} \xdef\consAF{50} \xdef\consAY{33} \xdef\consAW{33}
+\expandafter\xdef\csname consA.\endcsname{0}
+
+\xdef\consGC{50} \xdef\consGS{83} \xdef\consGT{67} \xdef\consGP{67} \xdef\consGA{83}
+\xdef\consGG{100} \xdef\consGN{50} \xdef\consGD{67} \xdef\consGE{67} \xdef\consGQ{33}
+\xdef\consGH{17} \xdef\consGR{50} \xdef\consGK{33} \xdef\consGM{17} \xdef\consGI{33}
+\xdef\consGL{33} \xdef\consGV{67} \xdef\consGF{33} \xdef\consGY{33} \xdef\consGW{50}
+\expandafter\xdef\csname consG.\endcsname{0}
+
+\xdef\consNC{33} \xdef\consNS{83} \xdef\consNT{67} \xdef\consNP{33} \xdef\consNA{50}
+\xdef\consNG{50} \xdef\consNN{100} \xdef\consND{83} \xdef\consNE{67} \xdef\consNQ{50}
+\xdef\consNH{67} \xdef\consNR{50} \xdef\consNK{67} \xdef\consNM{17} \xdef\consNI{33}
+\xdef\consNL{17} \xdef\consNV{33} \xdef\consNF{33} \xdef\consNY{50} \xdef\consNW{0}
+\expandafter\xdef\csname consN.\endcsname{0}
+
+\xdef\consDC{17} \xdef\consDS{67} \xdef\consDT{50} \xdef\consDP{50} \xdef\consDA{67}
+\xdef\consDG{67} \xdef\consDN{83} \xdef\consDD{100} \xdef\consDE{83} \xdef\consDQ{67}
+\xdef\consDH{50} \xdef\consDR{33} \xdef\consDK{50} \xdef\consDM{33} \xdef\consDI{17}
+\xdef\consDL{17} \xdef\consDV{50} \xdef\consDF{17} \xdef\consDY{33} \xdef\consDW{0}
+\expandafter\xdef\csname consD.\endcsname{0}
+
+\xdef\consEC{0} \xdef\consES{50} \xdef\consET{50} \xdef\consEP{50} \xdef\consEA{67}
+\xdef\consEG{67} \xdef\consEN{67} \xdef\consED{83} \xdef\consEE{100} \xdef\consEQ{67}
+\xdef\consEH{33} \xdef\consER{50} \xdef\consEK{67} \xdef\consEM{33} \xdef\consEI{17}
+\xdef\consEL{17} \xdef\consEV{67} \xdef\consEF{33} \xdef\consEY{17} \xdef\consEW{17}
+\expandafter\xdef\csname consE.\endcsname{0}
+
+\xdef\consQC{17} \xdef\consQS{50} \xdef\consQT{50} \xdef\consQP{50} \xdef\consQA{50}
+\xdef\consQG{33} \xdef\consQN{50} \xdef\consQD{67} \xdef\consQE{67} \xdef\consQQ{100}
+\xdef\consQH{67} \xdef\consQR{50} \xdef\consQK{67} \xdef\consQM{33} \xdef\consQI{17}
+\xdef\consQL{33} \xdef\consQV{33} \xdef\consQF{17} \xdef\consQY{33} \xdef\consQW{17}
+\expandafter\xdef\csname consQ.\endcsname{0}
+
+\xdef\consHC{33} \xdef\consHS{50} \xdef\consHT{33} \xdef\consHP{50} \xdef\consHA{33}
+\xdef\consHG{17} \xdef\consHN{67} \xdef\consHD{50} \xdef\consHE{33} \xdef\consHQ{67}
+\xdef\consHH{100} \xdef\consHR{67} \xdef\consHK{50} \xdef\consHM{33} \xdef\consHI{33}
+\xdef\consHL{50} \xdef\consHV{17} \xdef\consHF{33} \xdef\consHY{50} \xdef\consHW{17}
+\expandafter\xdef\csname consH.\endcsname{0}
+
+\xdef\consRC{33} \xdef\consRS{50} \xdef\consRT{50} \xdef\consRP{50} \xdef\consRA{33}
+\xdef\consRG{50} \xdef\consRN{50} \xdef\consRD{33} \xdef\consRE{50} \xdef\consRQ{50}
+\xdef\consRH{67} \xdef\consRR{100} \xdef\consRK{83} \xdef\consRM{33} \xdef\consRI{33}
+\xdef\consRL{33} \xdef\consRV{33} \xdef\consRF{17} \xdef\consRY{17} \xdef\consRW{33}
+\expandafter\xdef\csname consR.\endcsname{0}
+
+\xdef\consKC{0} \xdef\consKS{50} \xdef\consKT{67} \xdef\consKP{33} \xdef\consKA{50}
+\xdef\consKG{33} \xdef\consKN{67} \xdef\consKD{50} \xdef\consKE{67} \xdef\consKQ{67}
+\xdef\consKH{50} \xdef\consKR{83} \xdef\consKK{100} \xdef\consKM{33} \xdef\consKI{33}
+\xdef\consKL{33} \xdef\consKV{50} \xdef\consKF{17} \xdef\consKY{17} \xdef\consKW{17}
+\expandafter\xdef\csname consK.\endcsname{0}
+
+\xdef\consMC{33} \xdef\consMS{50} \xdef\consMT{50} \xdef\consMP{33} \xdef\consMA{50}
+\xdef\consMG{17} \xdef\consMN{17} \xdef\consMD{33} \xdef\consME{33} \xdef\consMQ{33}
+\xdef\consMH{33} \xdef\consMR{33} \xdef\consMK{33} \xdef\consMM{100} \xdef\consMI{67}
+\xdef\consML{83} \xdef\consMV{67} \xdef\consMF{50} \xdef\consMY{33} \xdef\consMW{50}
+\expandafter\xdef\csname consM.\endcsname{0}
+
+\xdef\consIC{33} \xdef\consIS{33} \xdef\consIT{50} \xdef\consIP{33} \xdef\consIA{33}
+\xdef\consIG{33} \xdef\consIN{33} \xdef\consID{17} \xdef\consIE{17} \xdef\consIQ{17}
+\xdef\consIH{33} \xdef\consIR{33} \xdef\consIK{33} \xdef\consIM{67} \xdef\consII{100}
+\xdef\consIL{83} \xdef\consIV{33} \xdef\consIF{67} \xdef\consIY{50} \xdef\consIW{50}
+\expandafter\xdef\csname consI.\endcsname{0}
+
+\xdef\consLC{33} \xdef\consLS{33} \xdef\consLT{33} \xdef\consLP{50} \xdef\consLA{33}
+\xdef\consLG{33} \xdef\consLN{17} \xdef\consLD{17} \xdef\consLE{17} \xdef\consLQ{33}
+\xdef\consLH{50} \xdef\consLR{33} \xdef\consLK{33} \xdef\consLM{83} \xdef\consLI{83}
+\xdef\consLL{100} \xdef\consLV{33} \xdef\consLF{67} \xdef\consLY{50} \xdef\consLW{67}
+\expandafter\xdef\csname consL.\endcsname{0}
+
+\xdef\consVC{33} \xdef\consVS{67} \xdef\consVT{67} \xdef\consVP{67} \xdef\consVA{83}
+\xdef\consVG{67} \xdef\consVN{33} \xdef\consVD{50} \xdef\consVE{67} \xdef\consVQ{33}
+\xdef\consVH{17} \xdef\consVR{33} \xdef\consVK{50} \xdef\consVM{67} \xdef\consVI{33}
+\xdef\consVL{33} \xdef\consVV{100} \xdef\consVF{67} \xdef\consVY{50} \xdef\consVW{50}
+\expandafter\xdef\csname consV.\endcsname{0}
+
+\xdef\consFC{50} \xdef\consFS{50} \xdef\consFT{33} \xdef\consFP{50} \xdef\consFA{50}
+\xdef\consFG{33} \xdef\consFN{33} \xdef\consFD{17} \xdef\consFE{33} \xdef\consFQ{17}
+\xdef\consFH{33} \xdef\consFR{17} \xdef\consFK{17} \xdef\consFM{50} \xdef\consFI{67}
+\xdef\consFL{67} \xdef\consFV{67} \xdef\consFF{100} \xdef\consFY{83} \xdef\consFW{50}
+\expandafter\xdef\csname consF.\endcsname{0}
+
+\xdef\consYC{50} \xdef\consYS{50} \xdef\consYT{33} \xdef\consYP{33} \xdef\consYA{33}
+\xdef\consYG{33} \xdef\consYN{50} \xdef\consYD{33} \xdef\consYE{17} \xdef\consYQ{33}
+\xdef\consYH{50} \xdef\consYR{17} \xdef\consYK{17} \xdef\consYM{33} \xdef\consYI{50}
+\xdef\consYL{50} \xdef\consYV{50} \xdef\consYF{83} \xdef\consYY{100} \xdef\consYW{50}
+\expandafter\xdef\csname consY.\endcsname{0}
+
+\xdef\consWC{50} \xdef\consWS{33} \xdef\consWT{17} \xdef\consWP{33} \xdef\consWA{33}
+\xdef\consWG{50} \xdef\consWN{0} \xdef\consWD{0} \xdef\consWE{17} \xdef\consWQ{17}
+\xdef\consWH{17} \xdef\consWR{33} \xdef\consWK{17} \xdef\consWM{50} \xdef\consWI{50}
+\xdef\consWL{67} \xdef\consWV{50} \xdef\consWF{50} \xdef\consWY{50} \xdef\consWW{100}
+\expandafter\xdef\csname consW.\endcsname{0}
+
+\expandafter\xdef\csname cons.C\endcsname{0}
+\expandafter\xdef\csname cons.S\endcsname{0}
+\expandafter\xdef\csname cons.T\endcsname{0}
+\expandafter\xdef\csname cons.P\endcsname{0}
+\expandafter\xdef\csname cons.A\endcsname{0}
+\expandafter\xdef\csname cons.G\endcsname{0}
+\expandafter\xdef\csname cons.N\endcsname{0}
+\expandafter\xdef\csname cons.D\endcsname{0}
+\expandafter\xdef\csname cons.E\endcsname{0}
+\expandafter\xdef\csname cons.Q\endcsname{0}
+\expandafter\xdef\csname cons.H\endcsname{0}
+\expandafter\xdef\csname cons.R\endcsname{0}
+\expandafter\xdef\csname cons.K\endcsname{0}
+\expandafter\xdef\csname cons.M\endcsname{0}
+\expandafter\xdef\csname cons.I\endcsname{0}
+\expandafter\xdef\csname cons.L\endcsname{0}
+\expandafter\xdef\csname cons.V\endcsname{0}
+\expandafter\xdef\csname cons.F\endcsname{0}
+\expandafter\xdef\csname cons.Y\endcsname{0}
+\expandafter\xdef\csname cons.W\endcsname{0}
+\expandafter\xdef\csname cons..\endcsname{0}
+
+\def\c@d@ns{%
+\codon{A}{GCA,GCG,GCC,GCT,GCU,GCN}
+\codon{B}{---}
+\codon{C}{TGC,TGT,UGC,UGU,TGY}
+\codon{D}{GAC,GAT,GAU,GAY}
+\codon{E}{GAA,GAG,GAR}
+\codon{F}{TTC,TTT,UUC,UUU,TTY}
+\codon{G}{GGA,GGG,GGC,GGT,GGU,GGN}
+\codon{H}{CAC,CAT,CAY}
+\codon{I}{ATA,ATC,ATT,AUA,AUC,AUU,ATH}
+\codon{J}{---}
+\codon{K}{AAA,AAG,AAG,AAR}
+\codon{L}{CTA,CTG,CTC,CTT,TTA,TTG,CUG,CUG,CUC,CUU,UUA,UUG,YTN}
+\codon{M}{ATG,AUG,ATG}
+\codon{N}{AAC,AAT,AAU,AAY}
+\codon{O}{---}
+\codon{P}{CCA,CCG,CCC,CCT,CCU,CCN}
+\codon{Q}{CAA,CAG,CAR}
+\codon{R}{AGA,AGG,CGA,CGG,CGC,CGT,CGU,MGN}
+\codon{S}{TCT,TCC,TCG,TCA,AGT,AGC,UCU,UCC,UCG,UCA,AGU,WSN}
+\codon{T}{ACT,ACC,ACG,ACA,ACU,ACN}
+\codon{U}{---}
+\codon{V}{GTA,GTG,GTC,GTT,GUA,GUG,GUC,GUU,GTN}
+\codon{W}{TGG,UGG,TGG}
+\codon{X}{---}
+\codon{Y}{TAC,TAT,UAC,UAU,TAY}
+\codon{Z}{---}
+\codon{.}{TAA,TAG,TGA,UAA,UAG,UGA,TRR}
+}
+
+\definecolor{GreenYellow} {cmyk}{0.15,0,0.69,0}
+\definecolor{Yellow} {cmyk}{0,0,1,0}
+\definecolor{Goldenrod} {cmyk}{0,0.10,0.84,0}
+\definecolor{Dandelion} {cmyk}{0,0.29,0.84,0}
+\definecolor{Apricot} {cmyk}{0,0.32,0.52,0}
+\definecolor{Peach} {cmyk}{0,0.50,0.70,0}
+\definecolor{Melon} {cmyk}{0,0.46,0.50,0}
+\definecolor{YellowOrange} {cmyk}{0,0.42,1,0}
+\definecolor{Orange} {cmyk}{0,0.61,0.87,0}
+\definecolor{BurntOrange} {cmyk}{0,0.51,1,0}
+\definecolor{Bittersweet} {cmyk}{0,0.75,1,0.24}
+\definecolor{RedOrange} {cmyk}{0,0.77,0.87,0}
+\definecolor{Mahagony} {cmyk}{0,0.85,0.87,0.35}
+\definecolor{Maroon} {cmyk}{0,0.87,0.68,0.32}
+\definecolor{BrickRed} {cmyk}{0,0.89,0.94,0.28}
+\definecolor{Red} {cmyk}{0,1,1,0}
+\definecolor{OrangeRed} {cmyk}{0,1,0.50,0}
+\definecolor{RubineRed} {cmyk}{0,1,0.13,0}
+\definecolor{WildStrawberry}{cmyk}{0,0.96,0.39,0}
+\definecolor{Salmon} {cmyk}{0,0.53,0.38,0}
+\definecolor{CarnationPink} {cmyk}{0,0.63,0,0}
+\definecolor{Magenta} {cmyk}{0,1,0,0}
+\definecolor{VioletRed} {cmyk}{0,0.81,0,0}
+\definecolor{Rhodamine} {cmyk}{0,0.82,0,0}
+\definecolor{Mulberry} {cmyk}{0.34,0.90,0,0.02}
+\definecolor{RedViolet} {cmyk}{0.07,0.90,0,0.34}
+\definecolor{Fuchsia} {cmyk}{0.47,0.91,0,0.08}
+\definecolor{Lavender} {cmyk}{0,0.48,0,0}
+\definecolor{Thistle} {cmyk}{0.12,0.59,0,0}
+\definecolor{Orchid} {cmyk}{0.32,0.64,0,0}
+\definecolor{DarkOrchid} {cmyk}{0.40,0.80,0.20,0}
+\definecolor{Purple} {cmyk}{0.45,0.86,0,0}
+\definecolor{Plum} {cmyk}{0.50,1,0,0}
+\definecolor{Violet} {cmyk}{0.79,0.88,0,0}
+\definecolor{RoyalPurple} {cmyk}{0.75,0.90,0,0}
+\definecolor{BlueViolet} {cmyk}{0.86,0.91,0,0.04}
+\definecolor{Periwinkle} {cmyk}{0.57,0.55,0,0}
+\definecolor{CadetBlue} {cmyk}{0.62,0.57,0.23,0}
+\definecolor{CornflowerBlue}{cmyk}{0.65,0.13,0,0}
+\definecolor{MidnightBlue} {cmyk}{0.98,0.13,0,0.43}
+\definecolor{NavyBlue} {cmyk}{0.94,0.54,0,0}
+\definecolor{RoyalBlue} {cmyk}{1,0.50,0,0}
+\definecolor{Blue} {cmyk}{1,1,0,0}
+\definecolor{Cerulean} {cmyk}{0.94,0.11,0,0}
+\definecolor{Cyan} {cmyk}{1,0,0,0}
+\definecolor{ProcessBlue} {cmyk}{0.96,0,0,0}
+\definecolor{SkyBlue} {cmyk}{0.62,0,0.12,0}
+\definecolor{TurquoisQ} {cmyk}{0.85,0,0.20,0}
+\definecolor{TealBlue} {cmyk}{0.86,0,0.34,0.02}
+\definecolor{Aquamarine} {cmyk}{0.82,0,0.30,0}
+\definecolor{BlueGreen} {cmyk}{0.85,0,0.33,0}
+\definecolor{Emerald} {cmyk}{1,0,0.50,0}
+\definecolor{JungleGreen} {cmyk}{0.99,0,0.52,0}
+\definecolor{SeaGreen} {cmyk}{0.69,0,0.50,0}
+\definecolor{Green} {cmyk}{1,0,1,0}
+\definecolor{ForestGreen} {cmyk}{0.91,0,0.88,0.12}
+\definecolor{PineGreen} {cmyk}{0.92,0,0.59,0.25}
+\definecolor{LimeGreen} {cmyk}{0.50,0,1,0}
+\definecolor{YellowGreen} {cmyk}{0.44,0,0.74,0}
+\definecolor{SpringGreen} {cmyk}{0.26,0,0.76,0}
+\definecolor{OliveGreen} {cmyk}{0.64,0,0.95,0.40}
+\definecolor{RawSienna} {cmyk}{0,0.72,1,0.45}
+\definecolor{Sepia} {cmyk}{0,0.83,1,0.70}
+\definecolor{Brown} {cmyk}{0,0.81,1,0.60}
+\definecolor{Tan} {cmyk}{0.14,0.42,0.56,0}
+\definecolor{White} {cmyk}{0,0,0,0}
+\definecolor{Gray0} {cmyk}{0,0,0,0}
+\definecolor{Gray5} {cmyk}{0,0,0,0.05}
+\definecolor{Gray10} {cmyk}{0,0,0,0.10}
+\definecolor{Gray15} {cmyk}{0,0,0,0.15}
+\definecolor{Gray20} {cmyk}{0,0,0,0.20}
+\definecolor{Gray25} {cmyk}{0,0,0,0.25}
+\definecolor{Gray30} {cmyk}{0,0,0,0.30}
+\definecolor{LightGray} {cmyk}{0,0,0,0.33}
+\definecolor{Gray35} {cmyk}{0,0,0,0.35}
+\definecolor{Gray40} {cmyk}{0,0,0,0.40}
+\definecolor{Gray45} {cmyk}{0,0,0,0.45}
+\definecolor{Gray50} {cmyk}{0,0,0,0.50}
+\definecolor{Gray} {cmyk}{0,0,0,0.50}
+\definecolor{GrayDefault} {cmyk}{0,0,0,0.50}
+\definecolor{Gray55} {cmyk}{0,0,0,0.55}
+\definecolor{Gray60} {cmyk}{0,0,0,0.60}
+\definecolor{Gray65} {cmyk}{0,0,0,0.65}
+\definecolor{DarkGray} {cmyk}{0,0,0,0.66}
+\definecolor{Gray70} {cmyk}{0,0,0,0.70}
+\definecolor{Gray75} {cmyk}{0,0,0,0.75}
+\definecolor{Gray80} {cmyk}{0,0,0,0.80}
+\definecolor{Gray85} {cmyk}{0,0,0,0.85}
+\definecolor{Gray90} {cmyk}{0,0,0,0.90}
+\definecolor{Gray95} {cmyk}{0,0,0,0.95}
+\definecolor{Black} {cmyk}{0,0,0,1}
+\definecolor{Gray100} {cmyk}{0,0,0,1}
+\definecolor{LightGreenYellow} {cmyk}{0.08,0,0.35,0}
+\definecolor{LightYellow} {cmyk}{0,0,0.50,0}
+\definecolor{LightGoldenrod} {cmyk}{0,0.05,0.42,0}
+\definecolor{LightDandelion} {cmyk}{0,0.15,0.42,0}
+\definecolor{LightApricot} {cmyk}{0,0.16,0.26,0}
+\definecolor{LightPeach} {cmyk}{0,0.25,0.35,0}
+\definecolor{LightMelon} {cmyk}{0,0.23,0.25,0}
+\definecolor{LightYellowOrange} {cmyk}{0,0.21,0.50,0}
+\definecolor{LightOrange} {cmyk}{0,0.31,0.44,0}
+\definecolor{LightBurntOrange} {cmyk}{0,0.26,0.50,0}
+\definecolor{LightBittersweet} {cmyk}{0,0.38,0.50,0.12}
+\definecolor{LightRedOrange} {cmyk}{0,0.39,0.44,0}
+\definecolor{LightMahagony} {cmyk}{0,0.43,0.44,0.18}
+\definecolor{LightMaroon} {cmyk}{0,0.44,0.34,0.16}
+\definecolor{LightBrickRed} {cmyk}{0,0.45,0.47,0.14}
+\definecolor{LightRed} {cmyk}{0,0.50,0.50,0}
+\definecolor{LightOrangeRed} {cmyk}{0,0.50,0.25,0}
+\definecolor{LightRubineRed} {cmyk}{0,0.50,0.07,0}
+\definecolor{LightWildStrawberry}{cmyk}{0,0.48,0.20,0}
+\definecolor{LightSalmon} {cmyk}{0,0.27,0.19,0}
+\definecolor{LightCarnationPink} {cmyk}{0,0.32,0,0}
+\definecolor{LightMagenta} {cmyk}{0,0.50,0,0}
+\definecolor{LightVioletRed} {cmyk}{0,0.40,0,0}
+\definecolor{LightRhodamine} {cmyk}{0,0.41,0,0}
+\definecolor{LightMulberry} {cmyk}{0.17,0.45,0,0.01}
+\definecolor{LightRedViolet} {cmyk}{0.04,0.45,0,0.17}
+\definecolor{LightFuchsia} {cmyk}{0.24,0.46,0,0.04}
+\definecolor{LightLavender} {cmyk}{0,0.24,0,0}
+\definecolor{LightThistle} {cmyk}{0.06,0.30,0,0}
+\definecolor{LightOrchid} {cmyk}{0.16,0.32,0,0}
+\definecolor{LightDarkOrchid} {cmyk}{0.20,0.40,0.10,0}
+\definecolor{LightPurple} {cmyk}{0.23,0.43,0,0}
+\definecolor{LightPlum} {cmyk}{0.25,0.50,0,0}
+\definecolor{LightViolet} {cmyk}{0.40,0.44,0,0}
+\definecolor{LightRoyalPurple} {cmyk}{0.38,0.45,0,0}
+\definecolor{LightBlueViolet} {cmyk}{0.43,0.46,0,0.02}
+\definecolor{LightPeriwinkle} {cmyk}{0.29,0.28,0,0}
+\definecolor{LightCadetBlue} {cmyk}{0.31,0.29,0.12,0}
+\definecolor{LightCornflowerBlue}{cmyk}{0.33,0.07,0,0}
+\definecolor{LightMidnightBlue} {cmyk}{0.49,0.07,0,0.22}
+\definecolor{LightNavyBlue} {cmyk}{0.47,0.27,0,0}
+\definecolor{LightRoyalBlue} {cmyk}{0.50,0.25,0,0}
+\definecolor{LightBlue} {cmyk}{0.50,0.50,0,0}
+\definecolor{LightCerulean} {cmyk}{0.47,0.06,0,0}
+\definecolor{LightCyan} {cmyk}{0.50,0,0,0}
+\definecolor{LightProcessBlue} {cmyk}{0.48,0,0,0}
+\definecolor{LightSkyBlue} {cmyk}{0.31,0,0.06,0}
+\definecolor{LightTurquoise} {cmyk}{0.43,0,0.10,0}
+\definecolor{LightTealBlue} {cmyk}{0.43,0,0.17,0.01}
+\definecolor{LightAquamarine} {cmyk}{0.41,0,0.15,0}
+\definecolor{LightBlueGreen} {cmyk}{0.43,0,0.17,0}
+\definecolor{LightEmerald} {cmyk}{0.50,0,0.25,0}
+\definecolor{LightJungleGreen} {cmyk}{0.50,0,0.26,0}
+\definecolor{LightSeaGreen} {cmyk}{0.35,0,0.25,0}
+\definecolor{LightGreen} {cmyk}{0.50,0,0.50,0}
+\definecolor{LightForestGreen} {cmyk}{0.46,0,0.44,0.06}
+\definecolor{LightPineGreen} {cmyk}{0.46,0,0.30,0.13}
+\definecolor{LightLimeGreen} {cmyk}{0.25,0,0.50,0}
+\definecolor{LightYellowGreen} {cmyk}{0.22,0,0.37,0}
+\definecolor{LightSpringGreen} {cmyk}{0.13,0,0.38,0}
+\definecolor{LightOliveGreen} {cmyk}{0.32,0,0.48,0.20}
+\definecolor{LightRawSienna} {cmyk}{0,0.36,0.50,0.23}
+\definecolor{LightSepia} {cmyk}{0,0.44,0.50,0.35}
+\definecolor{LightBrown} {cmyk}{0,0.41,0.50,0.30}
+\definecolor{LightTan} {cmyk}{0.07,0.21,0.28,0}
+\definecolor{LightWhite} {cmyk}{0,0,0,0}
+\definecolor{LightGray0} {cmyk}{0,0,0,0}
+\definecolor{LightGray5} {cmyk}{0,0,0,0.02}
+\definecolor{LightGray10} {cmyk}{0,0,0,0.05}
+\definecolor{LightGray15} {cmyk}{0,0,0,0.07}
+\definecolor{LightGray20} {cmyk}{0,0,0,0.10}
+\definecolor{LightGray25} {cmyk}{0,0,0,0.12}
+\definecolor{LightGray30} {cmyk}{0,0,0,0.15}
+\definecolor{LightLightGray} {cmyk}{0,0,0,0.16}
+\definecolor{LightGray35} {cmyk}{0,0,0,0.17}
+\definecolor{LightGray40} {cmyk}{0,0,0,0.20}
+\definecolor{LightGray45} {cmyk}{0,0,0,0.22}
+\definecolor{LightGray50} {cmyk}{0,0,0,0.25}
+\definecolor{LightGray} {cmyk}{0,0,0,0.25}
+\definecolor{LightGray55} {cmyk}{0,0,0,0.27}
+\definecolor{LightGray60} {cmyk}{0,0,0,0.30}
+\definecolor{LightGray65} {cmyk}{0,0,0,0.32}
+\definecolor{LightDarkGray} {cmyk}{0,0,0,0.33}
+\definecolor{LightGray70} {cmyk}{0,0,0,0.35}
+\definecolor{LightGray75} {cmyk}{0,0,0,0.37}
+\definecolor{LightGray80} {cmyk}{0,0,0,0.40}
+\definecolor{LightGray85} {cmyk}{0,0,0,0.42}
+\definecolor{LightGray90} {cmyk}{0,0,0,0.45}
+\definecolor{LightGray95} {cmyk}{0,0,0,0.47}
+\definecolor{LightBlack} {cmyk}{0,0,0,0.50}
+\definecolor{LightGray100} {cmyk}{0,0,0,0.50}
+\definecolor{LightLightGreenYellow} {cmyk}{0.04,0,0.17,0}
+\definecolor{LightLightYellow} {cmyk}{0,0,0.25,0}
+\definecolor{LightLightGoldenrod} {cmyk}{0,0.02,0.21,0}
+\definecolor{LightLightDandelion} {cmyk}{0,0.07,0.21,0}
+\definecolor{LightLightApricot} {cmyk}{0,0.08,0.13,0}
+\definecolor{LightLightPeach} {cmyk}{0,0.12,0.17,0}
+\definecolor{LightLightMelon} {cmyk}{0,0.11,0.12,0}
+\definecolor{LightLightYellowOrange} {cmyk}{0,0.10,0.25,0}
+\definecolor{LightLightOrange} {cmyk}{0,0.15,0.22,0}
+\definecolor{LightLightBurntOrange} {cmyk}{0,0.13,0.25,0}
+\definecolor{LightLightBittersweet} {cmyk}{0,0.19,0.25,0.06}
+\definecolor{LightLightRedOrange} {cmyk}{0,0.14,0.22,0}
+\definecolor{LightLightMahagony} {cmyk}{0,0.21,0.22,0.09}
+\definecolor{LightLightMaroon} {cmyk}{0,0.22,0.17,0.08}
+\definecolor{LightLightBrickRed} {cmyk}{0,0.22,0.23,0.07}
+\definecolor{LightLightRed} {cmyk}{0,0.25,0.25,0}
+\definecolor{LightLightOrangeRed} {cmyk}{0,0.25,0.12,0}
+\definecolor{LightLightRubineRed} {cmyk}{0,0.25,0.03,0}
+\definecolor{LightLightWildStrawberry}{cmyk}{0,0.24,0.10,0}
+\definecolor{LightLightSalmon} {cmyk}{0,0.13,0.09,0}
+\definecolor{LightLightCarnationPink} {cmyk}{0,0.16,0,0}
+\definecolor{LightLightMagenta} {cmyk}{0,0.25,0,0}
+\definecolor{LightLightVioletRed} {cmyk}{0,0.20,0,0}
+\definecolor{LightLightRhodamine} {cmyk}{0,0.20,0,0}
+\definecolor{LightLightMulberry} {cmyk}{0.08,0.22,0,0.005}
+\definecolor{LightLightRedViolet} {cmyk}{0.02,0.22,0,0.08}
+\definecolor{LightLightFuchsia} {cmyk}{0.12,0.23,0,0.02}
+\definecolor{LightLightLavender} {cmyk}{0,0.12,0,0}
+\definecolor{LightLightThistle} {cmyk}{0.03,0.15,0,0}
+\definecolor{LightLightOrchid} {cmyk}{0.08,0.16,0,0}
+\definecolor{LightLightDarkOrchid} {cmyk}{0.10,0.20,0.05,0}
+\definecolor{LightLightPurple} {cmyk}{0.11,0.21,0,0}
+\definecolor{LightLightPlum} {cmyk}{0.12,0.25,0,0}
+\definecolor{LightLightViolet} {cmyk}{0.20,0.22,0,0}
+\definecolor{LightLightRoyalPurple} {cmyk}{0.19,0.22,0,0}
+\definecolor{LightLightBlueViolet} {cmyk}{0.21,0.23,0,0.01}
+\definecolor{LightLightPeriwinkle} {cmyk}{0.14,0.14,0,0}
+\definecolor{LightLightCadetBlue} {cmyk}{0.15,0.14,0.06,0}
+\definecolor{LightLightCornflowerBlue}{cmyk}{0.16,0.03,0,0}
+\definecolor{LightLightMidnightBlue} {cmyk}{0.24,0.03,0,0.11}
+\definecolor{LightLightNavyBlue} {cmyk}{0.23,0.13,0,0}
+\definecolor{LightLightRoyalBlue} {cmyk}{0.25,0.12,0,0}
+\definecolor{LightLightBlue} {cmyk}{0.25,0.25,0,0}
+\definecolor{LightLightCerulean} {cmyk}{0.23,0.03,0,0}
+\definecolor{LightLightCyan} {cmyk}{0.25,0,0,0}
+\definecolor{LightLightProcessBlue} {cmyk}{0.24,0,0,0}
+\definecolor{LightLightSkyBlue} {cmyk}{0.15,0,0.03,0}
+\definecolor{LightLightTurquoise} {cmyk}{0.21,0,0.05,0}
+\definecolor{LightLightTealBlue} {cmyk}{0.21,0,0.08,0.005}
+\definecolor{LightLightAquamarine} {cmyk}{0.20,0,0.07,0}
+\definecolor{LightLightBlueGreen} {cmyk}{0.21,0,0.08,0}
+\definecolor{LightLightEmerald} {cmyk}{0.25,0,0.12,0}
+\definecolor{LightLightJungleGreen} {cmyk}{0.25,0,0.13,0}
+\definecolor{LightLightSeaGreen} {cmyk}{0.17,0,0.12,0}
+\definecolor{LightLightGreen} {cmyk}{0.25,0,0.25,0}
+\definecolor{LightLightForestGreen} {cmyk}{0.23,0,0.22,0.03}
+\definecolor{LightLightPineGreen} {cmyk}{0.23,0,0.15,0.06}
+\definecolor{LightLightLimeGreen} {cmyk}{0.12,0,0.25,0}
+\definecolor{LightLightYellowGreen} {cmyk}{0.11,0,0.18,0}
+\definecolor{LightLightSpringGreen} {cmyk}{0.06,0,0.19,0}
+\definecolor{LightLightOliveGreen} {cmyk}{0.16,0,0.24,0.10}
+\definecolor{LightLightRawSienna} {cmyk}{0,0.18,0.25,0.11}
+\definecolor{LightLightSepia} {cmyk}{0,0.22,0.25,0.17}
+\definecolor{LightLightBrown} {cmyk}{0,0.20,0.25,0.15}
+\definecolor{LightLightTan} {cmyk}{0.03,0.10,0.14,0}
+\definecolor{LightLightWhite} {cmyk}{0,0,0,0}
+\definecolor{LightLightGray0} {cmyk}{0,0,0,0}
+\definecolor{LightLightGray5} {cmyk}{0,0,0,0.01}
+\definecolor{LightLightGray10} {cmyk}{0,0,0,0.02}
+\definecolor{LightLightGray15} {cmyk}{0,0,0,0.03}
+\definecolor{LightLightGray20} {cmyk}{0,0,0,0.05}
+\definecolor{LightLightGray25} {cmyk}{0,0,0,0.06}
+\definecolor{LightLightGray30} {cmyk}{0,0,0,0.07}
+\definecolor{LightLightLightGray} {cmyk}{0,0,0,0.08}
+\definecolor{LightLightGray35} {cmyk}{0,0,0,0.09}
+\definecolor{LightLightGray40} {cmyk}{0,0,0,0.10}
+\definecolor{LightLightGray45} {cmyk}{0,0,0,0.11}
+\definecolor{LightLightGray50} {cmyk}{0,0,0,0.12}
+\definecolor{LightLightGray} {cmyk}{0,0,0,0.13}
+\definecolor{LightLightGray55} {cmyk}{0,0,0,0.14}
+\definecolor{LightLightGray60} {cmyk}{0,0,0,0.15}
+\definecolor{LightLightGray65} {cmyk}{0,0,0,0.16}
+\definecolor{LightLightDarkGray} {cmyk}{0,0,0,0.17}
+\definecolor{LightLightGray70} {cmyk}{0,0,0,0.18}
+\definecolor{LightLightGray75} {cmyk}{0,0,0,0.19}
+\definecolor{LightLightGray80} {cmyk}{0,0,0,0.20}
+\definecolor{LightLightGray85} {cmyk}{0,0,0,0.21}
+\definecolor{LightLightGray90} {cmyk}{0,0,0,0.22}
+\definecolor{LightLightGray95} {cmyk}{0,0,0,0.23}
+\definecolor{LightLightBlack} {cmyk}{0,0,0,0.25}
+\definecolor{LightLightGray100} {cmyk}{0,0,0,0.25}
+\definecolor{LightLightLightGreenYellow} {cmyk}{0.02,0,0.08,0}
+\definecolor{LightLightLightYellow} {cmyk}{0,0,0.12,0}
+\definecolor{LightLightLightGoldenrod} {cmyk}{0,0.01,0.10,0}
+\definecolor{LightLightLightDandelion} {cmyk}{0,0.03,0.10,0}
+\definecolor{LightLightLightApricot} {cmyk}{0,0.04,0.06,0}
+\definecolor{LightLightLightPeach} {cmyk}{0,0.06,0.08,0}
+\definecolor{LightLightLightMelon} {cmyk}{0,0.05,0.06,0}
+\definecolor{LightLightLightYellowOrange} {cmyk}{0,0.05,0.12,0}
+\definecolor{LightLightLightOrange} {cmyk}{0,0.07,0.11,0}
+\definecolor{LightLightLightBurntOrange} {cmyk}{0,0.06,0.12,0}
+\definecolor{LightLightLightBittersweet} {cmyk}{0,0.09,0.12,0.03}
+\definecolor{LightLightLightRedOrange} {cmyk}{0,0.07,0.11,0}
+\definecolor{LightLightLightMahagony} {cmyk}{0,0.10,0.11,0.04}
+\definecolor{LightLightLightMaroon} {cmyk}{0,0.11,0.08,0.04}
+\definecolor{LightLightLightBrickRed} {cmyk}{0,0.11,0.11,0.03}
+\definecolor{LightLightLightRed} {cmyk}{0,0.12,0.12,0}
+\definecolor{LightLightLightOrangeRed} {cmyk}{0,0.12,0.06,0}
+\definecolor{LightLightLightRubineRed} {cmyk}{0,0.12,0.01,0}
+\definecolor{LightLightLightWildStrawberry}{cmyk}{0,0.12,0.05,0}
+\definecolor{LightLightLightSalmon} {cmyk}{0,0.06,0.04,0}
+\definecolor{LightLightLightCarnationPink} {cmyk}{0,0.08,0,0}
+\definecolor{LightLightLightMagenta} {cmyk}{0,0.12,0,0}
+\definecolor{LightLightLightVioletRed} {cmyk}{0,0.10,0,0}
+\definecolor{LightLightLightRhodamine} {cmyk}{0,0.10,0,0}
+\definecolor{LightLightLightMulberry} {cmyk}{0.04,0.11,0,0.002}
+\definecolor{LightLightLightRedViolet} {cmyk}{0.01,0.11,0,0.04}
+\definecolor{LightLightLightFuchsia} {cmyk}{0.06,0.11,0,0.01}
+\definecolor{LightLightLightLavender} {cmyk}{0,0.06,0,0}
+\definecolor{LightLightLightThistle} {cmyk}{0.01,0.07,0,0}
+\definecolor{LightLightLightOrchid} {cmyk}{0.04,0.08,0,0}
+\definecolor{LightLightLightDarkOrchid} {cmyk}{0.05,0.10,0.02,0}
+\definecolor{LightLightLightPurple} {cmyk}{0.05,0.10,0,0}
+\definecolor{LightLightLightPlum} {cmyk}{0.06,0.12,0,0}
+\definecolor{LightLightLightViolet} {cmyk}{0.10,0.11,0,0}
+\definecolor{LightLightLightRoyalPurple} {cmyk}{0.09,0.11,0,0}
+\definecolor{LightLightLightBlueViolet} {cmyk}{0.10,0.11,0,0.005}
+\definecolor{LightLightLightPeriwinkle} {cmyk}{0.07,0.07,0,0}
+\definecolor{LightLightLightCadetBlue} {cmyk}{0.07,0.07,0.03,0}
+\definecolor{LightLightLightCornflowerBlue}{cmyk}{0.08,0.01,0,0}
+\definecolor{LightLightLightMidnightBlue} {cmyk}{0.12,0.01,0,0.05}
+\definecolor{LightLightLightNavyBlue} {cmyk}{0.11,0.06,0,0}
+\definecolor{LightLightLightRoyalBlue} {cmyk}{0.12,0.06,0,0}
+\definecolor{LightLightLightBlue} {cmyk}{0.12,0.12,0,0}
+\definecolor{LightLightLightCerulean} {cmyk}{0.11,0.01,0,0}
+\definecolor{LightLightLightCyan} {cmyk}{0.12,0,0,0}
+\definecolor{LightLightLightProcessBlue} {cmyk}{0.12,0,0,0}
+\definecolor{LightLightLightSkyBlue} {cmyk}{0.07,0,0.01,0}
+\definecolor{LightLightLightTurquoise} {cmyk}{0.10,0,0.02,0}
+\definecolor{LightLightLightTealBlue} {cmyk}{0.10,0,0.04,0.002}
+\definecolor{LightLightLightAquamarine} {cmyk}{0.10,0,0.03,0}
+\definecolor{LightLightLightBlueGreen} {cmyk}{0.10,0,0.04,0}
+\definecolor{LightLightLightEmerald} {cmyk}{0.12,0,0.06,0}
+\definecolor{LightLightLightJungleGreen} {cmyk}{0.12,0,0.06,0}
+\definecolor{LightLightLightSeaGreen} {cmyk}{0.08,0,0.06,0}
+\definecolor{LightLightLightGreen} {cmyk}{0.12,0,0.12,0}
+\definecolor{LightLightLightForestGreen} {cmyk}{0.11,0,0.11,0.01}
+\definecolor{LightLightLightPineGreen} {cmyk}{0.11,0,0.07,0.03}
+\definecolor{LightLightLightLimeGreen} {cmyk}{0.06,0,0.12,0}
+\definecolor{LightLightLightYellowGreen} {cmyk}{0.05,0,0.09,0}
+\definecolor{LightLightLightSpringGreen} {cmyk}{0.03,0,0.09,0}
+\definecolor{LightLightLightOliveGreen} {cmyk}{0.08,0,0.12,0.05}
+\definecolor{LightLightLightRawSienna} {cmyk}{0,0.09,0.12,0.05}
+\definecolor{LightLightLightSepia} {cmyk}{0,0.11,0.12,0.06}
+\definecolor{LightLightLightBrown} {cmyk}{0,0.10,0.12,0.07}
+\definecolor{LightLightLightTan} {cmyk}{0.01,0.05,0.07,0}
+\definecolor{LightLightLightWhite} {cmyk}{0,0,0,0}
+\definecolor{LightLightLightGray0} {cmyk}{0,0,0,0}
+\definecolor{LightLightLightGray5} {cmyk}{0,0,0,0.005}
+\definecolor{LightLightLightGray10} {cmyk}{0,0,0,0.01}
+\definecolor{LightLightLightGray15} {cmyk}{0,0,0,0.015}
+\definecolor{LightLightLightGray20} {cmyk}{0,0,0,0.025}
+\definecolor{LightLightLightGray25} {cmyk}{0,0,0,0.03}
+\definecolor{LightLightLightGray30} {cmyk}{0,0,0,0.035}
+\definecolor{LightLightLightLightGray} {cmyk}{0,0,0,0.04}
+\definecolor{LightLightLightGray35} {cmyk}{0,0,0,0.045}
+\definecolor{LightLightLightGray40} {cmyk}{0,0,0,0.05}
+\definecolor{LightLightLightGray45} {cmyk}{0,0,0,0.055}
+\definecolor{LightLightLightGray50} {cmyk}{0,0,0,0.06}
+\definecolor{LightLightLightGray} {cmyk}{0,0,0,0.065}
+\definecolor{LightLightLightGray55} {cmyk}{0,0,0,0.07}
+\definecolor{LightLightLightGray60} {cmyk}{0,0,0,0.075}
+\definecolor{LightLightLightGray65} {cmyk}{0,0,0,0.08}
+\definecolor{LightLightLightDarkGray} {cmyk}{0,0,0,0.085}
+\definecolor{LightLightLightGray70} {cmyk}{0,0,0,0.09}
+\definecolor{LightLightLightGray75} {cmyk}{0,0,0,0.095}
+\definecolor{LightLightLightGray80} {cmyk}{0,0,0,0.10}
+\definecolor{LightLightLightGray85} {cmyk}{0,0,0,0.105}
+\definecolor{LightLightLightGray90} {cmyk}{0,0,0,0.11}
+\definecolor{LightLightLightGray95} {cmyk}{0,0,0,0.115}
+\definecolor{LightLightLightBlack} {cmyk}{0,0,0,0.12}
+\definecolor{LightLightLightGray100} {cmyk}{0,0,0,0.125}
+\definecolor{BlueRed5} {rgb} {0.15,0.17,0.55}
+\definecolor{BlueRed10} {rgb} {0.20,0.23,0.57}
+\definecolor{BlueRed15} {rgb} {0.24,0.29,0.60}
+\definecolor{BlueRed20} {rgb} {0.33,0.35,0.64}
+\definecolor{BlueRed25} {rgb} {0.43,0.43,0.68}
+\definecolor{BlueRed30} {rgb} {0.52,0.52,0.73}
+\definecolor{BlueRed35} {rgb} {0.60,0.60,0.78}
+\definecolor{BlueRed40} {rgb} {0.70,0.70,0.84}
+\definecolor{BlueRed45} {rgb} {0.80,0.80,0.85}
+\definecolor{BlueRed50} {rgb} {0.86,0.82,0.82}
+\definecolor{BlueRed55} {rgb} {0.87,0.73,0.73}
+\definecolor{BlueRed60} {rgb} {0.89,0.64,0.64}
+\definecolor{BlueRed65} {rgb} {0.90,0.55,0.55}
+\definecolor{BlueRed70} {rgb} {0.91,0.47,0.46}
+\definecolor{BlueRed75} {rgb} {0.91,0.39,0.37}
+\definecolor{BlueRed80} {rgb} {0.90,0.33,0.28}
+\definecolor{BlueRed85} {rgb} {0.89,0.25,0.20}
+\definecolor{BlueRed90} {rgb} {0.88,0.23,0.14}
+\definecolor{BlueRed95} {rgb} {0.87,0.21,0.09}
+\definecolor{BlueRed100} {rgb} {0.87,0.16,0.04}
+\definecolor{RedBlue100} {rgb} {0.15,0.17,0.55}
+\definecolor{RedBlue95} {rgb} {0.15,0.17,0.55}
+\definecolor{RedBlue90} {rgb} {0.20,0.23,0.57}
+\definecolor{RedBlue85} {rgb} {0.24,0.29,0.60}
+\definecolor{RedBlue80} {rgb} {0.33,0.35,0.64}
+\definecolor{RedBlue75} {rgb} {0.43,0.43,0.68}
+\definecolor{RedBlue70} {rgb} {0.52,0.52,0.73}
+\definecolor{RedBlue65} {rgb} {0.60,0.60,0.78}
+\definecolor{RedBlue60} {rgb} {0.70,0.70,0.84}
+\definecolor{RedBlue55} {rgb} {0.80,0.80,0.85}
+\definecolor{RedBlue50} {rgb} {0.86,0.82,0.82}
+\definecolor{RedBlue45} {rgb} {0.87,0.73,0.73}
+\definecolor{RedBlue40} {rgb} {0.89,0.64,0.64}
+\definecolor{RedBlue35} {rgb} {0.90,0.55,0.55}
+\definecolor{RedBlue30} {rgb} {0.91,0.47,0.46}
+\definecolor{RedBlue25} {rgb} {0.91,0.39,0.37}
+\definecolor{RedBlue20} {rgb} {0.90,0.33,0.28}
+\definecolor{RedBlue15} {rgb} {0.89,0.25,0.20}
+\definecolor{RedBlue10} {rgb} {0.88,0.23,0.14}
+\definecolor{RedBlue5} {rgb} {0.87,0.21,0.09}
+\definecolor{GreenRed5} {rgb} {0,1,0}
+\definecolor{GreenRed10} {rgb} {0.05,0.95,0}
+\definecolor{GreenRed15} {rgb} {0.10,0.90,0}
+\definecolor{GreenRed20} {rgb} {0.15,0.85,0}
+\definecolor{GreenRed25} {rgb} {0.20,0.80,0}
+\definecolor{GreenRed30} {rgb} {0.25,0.75,0}
+\definecolor{GreenRed35} {rgb} {0.30,0.70,0}
+\definecolor{GreenRed40} {rgb} {0.35,0.65,0}
+\definecolor{GreenRed45} {rgb} {0.40,0.60,0}
+\definecolor{GreenRed50} {rgb} {0.45,0.55,0}
+\definecolor{GreenRed55} {rgb} {0.50,0.50,0}
+\definecolor{GreenRed60} {rgb} {0.55,0.45,0}
+\definecolor{GreenRed65} {rgb} {0.60,0.40,0}
+\definecolor{GreenRed70} {rgb} {0.65,0.35,0}
+\definecolor{GreenRed75} {rgb} {0.70,0.30,0}
+\definecolor{GreenRed80} {rgb} {0.75,0.25,0}
+\definecolor{GreenRed85} {rgb} {0.80,0.20,0}
+\definecolor{GreenRed90} {rgb} {0.85,0.15,0}
+\definecolor{GreenRed95} {rgb} {0.90,0.10,0}
+\definecolor{GreenRed100} {rgb} {0.95,0.05,0}
+\definecolor{RedGreen100} {rgb} {0.05,0.95,0}
+\definecolor{RedGreen95} {rgb} {0.10,0.90,0}
+\definecolor{RedGreen90} {rgb} {0.15,0.85,0}
+\definecolor{RedGreen85} {rgb} {0.20,0.80,0}
+\definecolor{RedGreen80} {rgb} {0.25,0.75,0}
+\definecolor{RedGreen75} {rgb} {0.30,0.70,0}
+\definecolor{RedGreen70} {rgb} {0.35,0.65,0}
+\definecolor{RedGreen65} {rgb} {0.40,0.60,0}
+\definecolor{RedGreen60} {rgb} {0.45,0.55,0}
+\definecolor{RedGreen55} {rgb} {0.50,0.50,0}
+\definecolor{RedGreen50} {rgb} {0.55,0.45,0}
+\definecolor{RedGreen45} {rgb} {0.60,0.40,0}
+\definecolor{RedGreen40} {rgb} {0.65,0.35,0}
+\definecolor{RedGreen35} {rgb} {0.70,0.30,0}
+\definecolor{RedGreen30} {rgb} {0.75,0.25,0}
+\definecolor{RedGreen25} {rgb} {0.80,0.20,0}
+\definecolor{RedGreen20} {rgb} {0.85,0.15,0}
+\definecolor{RedGreen15} {rgb} {0.90,0.10,0}
+\definecolor{RedGreen10} {rgb} {0.95,0.05,0}
+\definecolor{RedGreen5} {rgb} {1,0,0}
+\definecolor{ColdHot5} {rgb} {0,0.08,1}
+\definecolor{ColdHot10} {rgb} {0,0.29,1}
+\definecolor{ColdHot15} {rgb} {0,0.49,1}
+\definecolor{ColdHot20} {rgb} {0,0.70,1}
+\definecolor{ColdHot25} {rgb} {0,0.90,1}
+\definecolor{ColdHot30} {rgb} {0,1,0.87}
+\definecolor{ColdHot35} {rgb} {0,1,0.68}
+\definecolor{ColdHot40} {rgb} {0,1,0.46}
+\definecolor{ColdHot45} {rgb} {0,1,0.25}
+\definecolor{ColdHot50} {rgb} {0,1,0.04}
+\definecolor{ColdHot55} {rgb} {0.16,1,0}
+\definecolor{ColdHot60} {rgb} {0.35,1,0}
+\definecolor{ColdHot65} {rgb} {0.56,1,0}
+\definecolor{ColdHot70} {rgb} {0.79,1,0}
+\definecolor{ColdHot75} {rgb} {0.98,1,0}
+\definecolor{ColdHot80} {rgb} {1,0.82,0}
+\definecolor{ColdHot85} {rgb} {1,0.60,0}
+\definecolor{ColdHot90} {rgb} {1,0.40,0}
+\definecolor{ColdHot95} {rgb} {1,0.20,0}
+\definecolor{ColdHot100} {rgb} {0.91,0,0}
+\definecolor{HotCold100} {rgb} {0,0.08,1}
+\definecolor{HotCold95} {rgb} {0,0.29,1}
+\definecolor{HotCold90} {rgb} {0,0.49,1}
+\definecolor{HotCold85} {rgb} {0,0.70,1}
+\definecolor{HotCold80} {rgb} {0,0.90,1}
+\definecolor{HotCold75} {rgb} {0,1,0.87}
+\definecolor{HotCold70} {rgb} {0,1,0.68}
+\definecolor{HotCold65} {rgb} {0,1,0.46}
+\definecolor{HotCold60} {rgb} {0,1,0.25}
+\definecolor{HotCold55} {rgb} {0,1,0.04}
+\definecolor{HotCold50} {rgb} {0.16,1,0}
+\definecolor{HotCold45} {rgb} {0.35,1,0}
+\definecolor{HotCold40} {rgb} {0.56,1,0}
+\definecolor{HotCold35} {rgb} {0.79,1,0}
+\definecolor{HotCold30} {rgb} {0.98,1,0}
+\definecolor{HotCold25} {rgb} {1,0.82,0}
+\definecolor{HotCold20} {rgb} {1,0.60,0}
+\definecolor{HotCold15} {rgb} {1,0.40,0}
+\definecolor{HotCold10} {rgb} {1,0.20,0}
+\definecolor{HotCold5} {rgb} {0.91,0,0}
+
+\def\make@lower{%
+\if\first@ A\xdef\first@{a}\else \if\first@ B\xdef\first@{b}\else
+\if\first@ C\xdef\first@{c}\else \if\first@ D\xdef\first@{d}\else
+\if\first@ E\xdef\first@{e}\else \if\first@ F\xdef\first@{f}\else
+\if\first@ G\xdef\first@{g}\else \if\first@ H\xdef\first@{h}\else
+\if\first@ I\xdef\first@{i}\else \if\first@ J\xdef\first@{j}\else
+\if\first@ K\xdef\first@{k}\else \if\first@ L\xdef\first@{l}\else
+\if\first@ M\xdef\first@{m}\else \if\first@ N\xdef\first@{n}\else
+\if\first@ O\xdef\first@{o}\else \if\first@ P\xdef\first@{p}\else
+\if\first@ Q\xdef\first@{q}\else \if\first@ R\xdef\first@{r}\else
+\if\first@ S\xdef\first@{s}\else \if\first@ T\xdef\first@{t}\else
+\if\first@ U\xdef\first@{u}\else \if\first@ V\xdef\first@{v}\else
+\if\first@ W\xdef\first@{w}\else \if\first@ X\xdef\first@{x}\else
+\if\first@ Y\xdef\first@{y}\else \if\first@ Z\xdef\first@{z}\else
+\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+
+\def\make@upper{%
+\if\first@ a\xdef\first@{A}\else \if\first@ b\xdef\first@{B}\else
+\if\first@ c\xdef\first@{C}\else \if\first@ d\xdef\first@{D}\else
+\if\first@ e\xdef\first@{E}\else \if\first@ f\xdef\first@{F}\else
+\if\first@ g\xdef\first@{G}\else \if\first@ h\xdef\first@{H}\else
+\if\first@ i\xdef\first@{I}\else \if\first@ j\xdef\first@{J}\else
+\if\first@ k\xdef\first@{K}\else \if\first@ l\xdef\first@{L}\else
+\if\first@ m\xdef\first@{M}\else \if\first@ n\xdef\first@{N}\else
+\if\first@ o\xdef\first@{O}\else \if\first@ p\xdef\first@{P}\else
+\if\first@ q\xdef\first@{Q}\else \if\first@ r\xdef\first@{R}\else
+\if\first@ s\xdef\first@{S}\else \if\first@ t\xdef\first@{T}\else
+\if\first@ u\xdef\first@{U}\else \if\first@ v\xdef\first@{V}\else
+\if\first@ w\xdef\first@{W}\else \if\first@ x\xdef\first@{X}\else
+\if\first@ y\xdef\first@{Y}\else \if\first@ z\xdef\first@{Z}\else
+\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+
+\def\type@get#1 MSF: #2 Type: #3 #4@{\def\seq@type{#3}}
+\def\inf@@get#1 #2 #3 #4 #5 #6@{%
+ \def\first@{#1}
+ \def\second@{#2}
+ \def\third@{#3}
+ \xdef\fourth@{#4 @}
+ \expandafter\check@letter\fourth@
+ \ifnumber
+ \def\fourth@{#4}
+ \else
+ \xdef\fourth@{#5 @}
+ \expandafter\check@letter\fourth@
+ \ifnumber
+ \def\fourth@{#5}
+ \else
+ \def\fourth@{99999999}
+ \fi
+ \fi
+ \def\fifth@{#5}
+ \def\last@{#6}}
+\def\check@char#1{\letterfalse \ifnum\catcode`#1=11 \lettertrue \fi
+ \numberfalse \ifnum\catcode`#1=12 \numbertrue \fi
+ \xdef\code@num{\the\catcode`#1}}
+\def\check@letter#1#2@{\letterfalse \ifnum\catcode`#1=11 \lettertrue \fi
+ \numberfalse \ifnum\catcode`#1=12 \numbertrue \fi}
+\def\seq@get#1 #2@{\def\first@{#1} \def\seq@line{#2}}
+\def\res@get#1#2@{\def\first@{#1} \def\seq@line{#2&@}}
+\def\firstchar@get#1#2@{\def\first@{#1} \def\third@{#2@}}
+\def\residue@get#1#2@{\xdef\first@{#1}
+ \ifnum`#1>96 \make@upper \fi
+ \ifnum`#1=45 \xdef\first@{\d@t} \fi
+ \expandafter\xdef\csname res\the\loopcount\endcsname{\first@}
+ \expandafter\xdef\csname sequence\the\loopcount\endcsname{#2@}}
+\def\remove@fromseq#1@{\expandafter\xdef\csname sequence\the\loopcount\endcsname{#1}}
+\def\re@write#1,#2@{%
+ \xdef\third@{#2,@}
+ \xdef\first@{\csname hide@@@seq#1\endcsname}
+ \ifx\first@\last@
+ \else
+ \xdef\first@{#1&}
+ \ifx\first@\ampers@nd \else \advance\innerloopcount by 1 \fi
+ \if\second@ e \xdef\second@{\csname @rd#1\endcsname}
+ \else \xdef\second@{\second@,\csname @rd#1\endcsname}\fi
+ \fi
+ }
+\def\order@set#1,#2@{%
+ \xdef\second@{#2,@}
+ \expandafter\xdef\csname @rd#1\endcsname{\the\loopcount}
+ \csname res@count\the\loopcount\endcsname=%
+ \csname pos#1\endcsname
+ \expandafter\xdef\csname hide@seq\the\loopcount\endcsname{%
+ \csname hide@@seq#1\endcsname}
+ \expandafter\xdef\csname hide@name\the\loopcount\endcsname{%
+ \csname hide@@name#1\endcsname}
+ \expandafter\xdef\csname hide@number\the\loopcount\endcsname{%
+ \csname hide@@number#1\endcsname}
+ \expandafter\xdef\csname seq@start\the\loopcount\endcsname{%
+ \csname seq@@start#1\endcsname}
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{%
+ \csname seq@@len#1\endcsname}
+ \expandafter\xdef\csname seqname\the\loopcount\endcsname{%
+ \csname seq@name#1\endcsname}
+ \expandafter\xdef\csname newseqname\the\loopcount\endcsname{%
+ \csname newseq@name#1\endcsname}
+ \expandafter\xdef\csname seq@gap\the\loopcount\endcsname{%
+ \csname seq@@gap#1\endcsname}
+ \expandafter\xdef\csname name@col\the\loopcount\endcsname{%
+ \csname name@@col#1\endcsname}
+ \expandafter\xdef\csname number@col\the\loopcount\endcsname{%
+ \csname number@@col#1\endcsname}
+ \expandafter\xdef\csname stack@reg\the\loopcount\endcsname{%
+ \csname stack@@reg#1\endcsname}
+ \expandafter\xdef\csname stack@tintreg\the\loopcount\endcsname{%
+ \csname stack@@tintreg#1\endcsname}
+ \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{%
+ \csname stack@@emphreg#1\endcsname}
+ \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{%
+ \csname stack@@framereg#1\endcsname}
+ \expandafter\xdef\csname stack@top\the\loopcount\endcsname{%
+ \csname stack@@top#1\endcsname}
+ \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{%
+ \csname stack@@ttop#1\endcsname}
+ \expandafter\xdef\csname stack@bottom\the\loopcount\endcsname{%
+ \csname stack@@bottom#1\endcsname}
+ \expandafter\xdef\csname stack@bbottom\the\loopcount\endcsname{%
+ \csname stack@@bbottom#1\endcsname}
+}
+\def\reorder@seqs#1{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \csname pos\the\loopcount\endcsname=%
+ \csname res@count\the\loopcount\endcsname
+ \expandafter\xdef\csname hide@@seq\the\loopcount\endcsname{%
+ \csname hide@seq\the\loopcount\endcsname}
+ \expandafter\xdef\csname hide@@name\the\loopcount\endcsname{%
+ \csname hide@name\the\loopcount\endcsname}
+ \expandafter\xdef\csname hide@@number\the\loopcount\endcsname{%
+ \csname hide@number\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@@start\the\loopcount\endcsname{%
+ \csname seq@start\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@@len\the\loopcount\endcsname{%
+ \csname seq@len\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@name\the\loopcount\endcsname{%
+ \csname seqname\the\loopcount\endcsname}
+ \expandafter\xdef\csname newseq@name\the\loopcount\endcsname{%
+ \csname newseqname\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@@gap\the\loopcount\endcsname{%
+ \csname seq@gap\the\loopcount\endcsname}
+ \expandafter\xdef\csname name@@col\the\loopcount\endcsname{%
+ \csname name@col\the\loopcount\endcsname}
+ \expandafter\xdef\csname number@@col\the\loopcount\endcsname{%
+ \csname number@col\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@reg\the\loopcount\endcsname{%
+ \csname stack@reg\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@tintreg\the\loopcount\endcsname{%
+ \csname stack@tintreg\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@emphreg\the\loopcount\endcsname{%
+ \csname stack@emphreg\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@framereg\the\loopcount\endcsname{%
+ \csname stack@framereg\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@top\the\loopcount\endcsname{%
+ \csname stack@top\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@ttop\the\loopcount\endcsname{%
+ \csname stack@ttop\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@bottom\the\loopcount\endcsname{%
+ \csname stack@bottom\the\loopcount\endcsname}
+ \expandafter\xdef\csname stack@@bbottom\the\loopcount\endcsname{%
+ \csname stack@bbottom\the\loopcount\endcsname}
+ \ifnum\loopcount<\killseq@count \repeat
+ \xdef\third@{#1}
+ \loopcount=0 \innerloopcount=0 \xdef\last@{kill} \xdef\second@{e}
+ \loop
+ \advance\loopcount by 1
+ \expandafter\re@write\third@
+ \ifnum\loopcount<\seq@count \repeat
+ \ifnum\innerloopcount<\killseq@count
+ \@latex@error{Not enough sequences specified in `orderseqs'
+ (\the\innerloopcount/\the\killseq@count)}\@ehc
+ \fi
+ \loopcount=0 \xdef\second@{\second@,@}
+ \loop
+ \advance\loopcount by 1
+ \expandafter\order@set\second@
+ \ifnum\loopcount<\killseq@count \repeat
+ \ifnum\cons@num>0 \xdef\cons@num{\csname @rd\cons@num\endcsname} \fi
+ \ifnum\rule@num>0 \xdef\rule@num{\csname @rd\rule@num\endcsname} \fi
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \csname pos\the\loopcount\endcsname=0
+ \ifnum\loopcount<\killseq@count \repeat
+}
+\def\group@get#1,#2@{%
+ \def\group@set{\expandafter\residue@get\second@
+ \ifx\first@\ampers@nd
+ \else \expandafter\xdef\csname \prfx grp\first@\endcsname{\the\loopcount}
+ \xdef\second@{\csname sequence\the\loopcount\endcsname} \group@set
+ \fi}
+ \xdef\second@{#1 &@} \xdef\third@{#2&,@} \group@set}
+\def\get@item#1,#2@{\xdef\first@{#2@}\xdef\first@@{#2}\xdef\fourth@{#1}}
+\def\get@first@@#1-#2@{\xdef\first@@{#1}}
+\def\get@digit#1,#2@{%
+ \def\check@series##1-##2##3@{%
+ \xdef\first@@{##2}\xdef\fourth@{##1}\xdef\fourth@@{##3}}
+ \xdef\first@{#2@}
+ \xdef\fourth@{#1-&@}
+ \expandafter\check@series\fourth@
+ \ifx\first@@\ampers@nd
+ \else
+ \xdef\first@@{\first@@\fourth@@-&@}
+ \expandafter\get@first@@\first@@
+ \loopcount=\fourth@
+ \ifnum\first@@>\fourth@
+ \advance\loopcount by 1
+ \xdef\first@{\the\loopcount-\first@@,#2@}
+ \else
+ \ifnum\first@@<\fourth@
+ \advance\loopcount by -1
+ \xdef\first@{\the\loopcount-\first@@,#2@}
+ \fi
+ \fi
+ \fi
+}
+\def\donot@shade{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \xdef\third@{\csname hide@seq\first@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\first@\endcsname{noshade}
+ \fi
+ \xdef\first@{\first@@ @}
+ \donot@shade
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\third@{\csname hide@seq\fourth@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\fourth@\endcsname{noshade}
+ \fi
+ \donot@shade
+ \fi
+ \fi}
+\def\hideseq@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \xdef\third@{\csname hide@seq\first@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\first@\endcsname{true}
+ \fi
+ \xdef\first@{\first@@ @}
+ \hideseq@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\third@{\csname hide@seq\fourth@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\fourth@\endcsname{true}
+ \fi
+ \hideseq@
+ \fi
+ \fi}
+\def\hidename@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \expandafter\xdef\csname hide@name\first@\endcsname{yes}
+ \xdef\first@{\first@@ @}
+ \hidename@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \expandafter\xdef\csname hide@name\fourth@\endcsname{yes}
+ \hidename@
+ \fi
+ \fi}
+\def\hidenumber@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \expandafter\xdef\csname hide@number\first@\endcsname{yes}
+ \xdef\first@{\first@@ @}
+ \hidenumber@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \expandafter\xdef\csname hide@number\fourth@\endcsname{yes}
+ \hidenumber@
+ \fi
+ \fi}
+\def\namecolor@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \expandafter\xdef\csname name@col\first@\endcsname{\third@}
+ \xdef\first@{\first@@ @}
+ \namecolor@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \expandafter\xdef\csname name@col\fourth@\endcsname{\third@}
+ \namecolor@
+ \fi
+ \fi}
+\def\numbercolor@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \expandafter\xdef\csname number@col\first@\endcsname{\third@}
+ \xdef\first@{\first@@ @}
+ \numbercolor@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \expandafter\xdef\csname number@col\fourth@\endcsname{\third@}
+ \numbercolor@
+ \fi
+ \fi}
+\def\killseq@{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \ifnum\first@>\seq@count
+ \else
+ \ifnum\killseq@count>1
+ \xdef\third@{\csname hide@seq\first@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\first@\endcsname{kill}
+ \expandafter\xdef\csname hide@@@seq\first@\endcsname{kill}
+ \ifnum\first@=\cons@num \xdef\cons@num{0} \fi
+ \advance\killseq@count by -1
+ \seq@percent=100 \divide\seq@percent by \killseq@count
+ \fi
+ \fi\fi
+ \xdef\first@{\first@@ @}
+ \killseq@
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \ifnum\fourth@>\seq@count
+ \else
+ \ifnum\killseq@count>1
+ \xdef\third@{\csname hide@seq\fourth@\endcsname} \xdef\second@{kill}
+ \ifx\third@\second@
+ \else
+ \expandafter\xdef\csname hide@seq\fourth@\endcsname{kill}
+ \expandafter\xdef\csname hide@@@seq\fourth@\endcsname{kill}
+ \ifnum\fourth@=\cons@num \xdef\cons@num{0} \fi
+ \advance\killseq@count by -1
+ \seq@percent=100 \divide\seq@percent by \killseq@count
+ \fi
+ \fi\fi
+ \killseq@
+ \fi
+ \fi}
+\def\kill@loop{%
+ \advance\innerloopcount by 1
+ \xdef\first@{\csname hide@seq\the\innerloopcount\endcsname}
+ \ifx\first@\second@ \kill@loop \fi}
+\def\kill@seqnow{%
+ \xdef\first@{\csname hide@seq\the\loopcount\endcsname} \xdef\second@{kill}
+ \innerloopcount=\loopcount
+ \ifx\first@\second@
+ \kill@loop
+ \expandafter\xdef\csname hide@seq\the\loopcount\endcsname{%
+ \csname hide@seq\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname seqname\the\loopcount\endcsname{%
+ \csname seqname\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname newseqname\the\loopcount\endcsname{%
+ \csname newseqname\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname seq@gap\the\loopcount\endcsname{%
+ \csname seq@gap\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@reg\the\loopcount\endcsname{%
+ \csname stack@reg\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@tintreg\the\loopcount\endcsname{%
+ \csname stack@tintreg\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{%
+ \csname stack@emphreg\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{%
+ \csname stack@framereg\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@top\the\loopcount\endcsname{%
+ \csname stack@top\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{%
+ \csname stack@ttop\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@bottom\the\loopcount\endcsname{%
+ \csname stack@bottom\the\innerloopcount\endcsname}
+ \expandafter\xdef\csname stack@bbottom\the\loopcount\endcsname{%
+ \csname stack@bbottom\the\innerloopcount\endcsname}
+ \csname res@count\the\loopcount\endcsname=%
+ \csname res@count\the\innerloopcount\endcsname
+ \expandafter\xdef\csname hide@seq\the\innerloopcount\endcsname{kill}
+ \ifnum\loopcount=\rule@num \hideruler \fi
+ \fi
+ \expandafter\xdef\csname @rd\the\innerloopcount\endcsname{\the\loopcount}
+ \advance\loopcount by 1
+ \ifnum\loopcount>\killseq@count
+ \ifnum\rule@num>0\xdef\rule@num{\csname @rd\rule@num\endcsname}\fi
+ \ifnum\cons@num>0\xdef\cons@num{\csname @rd\cons@num\endcsname}\fi
+ \else
+ \kill@seqnow
+ \fi}
+\def\set@maxseqnumber#1{%
+ \ifnum#1>\max@seqnumber
+ \loopcount=\max@seqnumber \xdef\max@seqnumber{\the #1}
+ \loop
+ \advance\loopcount by 1
+ \expandafter\newcount\csname pos\the\loopcount\endcsname
+ \expandafter\newcount\csname res@count\the\loopcount\endcsname
+ \ifnum\loopcount<\max@seqnumber \repeat
+ \fi}
+\def\get@sim#1#2@{\xdef\sim@char{#1} \xdef\last@{#2 &@}}
+\def\getsim@char{%
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>\m@x
+ \else
+ \expandafter\get@sim\last@
+ \ifx\second@\sim@char \xdef\third@{2} \innerloopcount=\m@x \fi
+ \getsim@char
+ \fi}
+\def\get@count(#1)#2@{\xdef\last@{#2 &@} \xdef\m@x{#1}}
+\def\get@nums#1..#2@{\xdef\first@{#1} \xdef\second@{#2}}
+\def\func@shading#1{%
+ \clearfuncgroups
+ \xdef\temp@{#1}
+ \xdef\second@{charge}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{sauer ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{basisch ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{\'acido ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{b\'asico ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \else
+ \funcgroup{acidic ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{basic ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \fi
+ \fi
+ \else
+ \xdef\second@{hydropathy}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{sauer ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{basisch ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{polar ungeladen}{YSTGNQC}{Black}{Yellow}{upper}{up}
+ \funcgroup{hydrophob unpolar}{AFPMWVIL}{White}{Green}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{\'acido ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{b\'asico ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{polar sin carga}{YSTGNQC}{Black}{Yellow}{upper}{up}
+ \funcgroup{hidrof\'obico no polar}{AFPMWVIL}{White}{Green}{upper}{up}
+ \else
+ \funcgroup{acidic ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{basic ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{polar uncharged}{YSTGNQC}{Black}{Yellow}{upper}{up}
+ \funcgroup{hydrophobic nonpolar}{AFPMWVIL}{White}{Green}{upper}{up}
+ \fi
+ \fi
+ \else
+ \xdef\second@{chemical}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{sauer ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{aliphatisch}{AGVIL}{White}{Black}{upper}{up}
+ \funcgroup{Amid}{NQ}{White}{Green}{upper}{up}
+ \funcgroup{aromatisch}{FYW}{White}{Brown}{upper}{up}
+ \funcgroup{basisch (+)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{Hydroxyl}{ST}{Black}{Magenta}{upper}{up}
+ \funcgroup{Imin}{P}{Black}{Orange}{upper}{up}
+ \funcgroup{Schwefel}{CM}{Black}{Yellow}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{\'acido ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{alif\'atico}{AGVIL}{White}{Black}{upper}{up}
+ \funcgroup{amida}{NQ}{White}{Green}{upper}{up}
+ \funcgroup{arom\'atico}{FYW}{White}{Brown}{upper}{up}
+ \funcgroup{b\'asico ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{hidr\'oxido}{ST}{Black}{Magenta}{upper}{up}
+ \funcgroup{imino}{P}{Black}{Orange}{upper}{up}
+ \funcgroup{azufre}{CM}{Black}{Yellow}{upper}{up}
+ \else
+ \funcgroup{acidic ($-$)}{DE}{White}{Red}{upper}{up}
+ \funcgroup{aliphatic}{AGVIL}{White}{Black}{upper}{up}
+ \funcgroup{amide}{NQ}{White}{Green}{upper}{up}
+ \funcgroup{aromatic}{FYW}{White}{Brown}{upper}{up}
+ \funcgroup{basic ($+$)}{KRH}{White}{Blue}{upper}{up}
+ \funcgroup{hydroxyl}{ST}{Black}{Magenta}{upper}{up}
+ \funcgroup{imino}{P}{Black}{Orange}{upper}{up}
+ \funcgroup{sulfur}{CM}{Black}{Yellow}{upper}{up}
+ \fi
+ \fi
+ \else
+ \xdef\second@{structure}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{extern}{DEHKNQR}{Black}{Orange}{upper}{up}
+ \funcgroup{ambivalent}{ACGPSTWY}{Black}{Yellow}{upper}{up}
+ \funcgroup{intern}{FILMV}{White}{Green}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{externo}{DEHKNQR}{Black}{Orange}{upper}{up}
+ \funcgroup{ambivalente}{ACGPSTWY}{Black}{Yellow}{upper}{up}
+ \funcgroup{interno}{FILMV}{White}{Green}{upper}{up}
+ \else
+ \funcgroup{external}{DEHKNQR}{Black}{Orange}{upper}{up}
+ \funcgroup{ambivalent}{ACGPSTWY}{Black}{Yellow}{upper}{up}
+ \funcgroup{internal}{FILMV}{White}{Green}{upper}{up}
+ \fi
+ \fi
+ \else
+ \xdef\second@{standard area}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{\ 88,1 (G); Standard Seitenkettenfl\"ache %
+ (\AA$^2$)}%
+ {G}{Black}{BrickRed}{upper}{up}
+ \funcgroup{118,2 (A); 129,8 (S)}{AS}{Black}{Orange}{upper}{up}
+ \funcgroup{146,1 (C); 146,8 (P)}%
+ {CP}{Black}{Yellow}{upper}{up}
+ \funcgroup{152,5 (T); 158,7 (D); 164,5 (V); 165,5 (N)}%
+ {TDVN}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{181,0 (I); 186,2 (E)}{IE}{White}{PineGreen}{upper}{up}
+ \funcgroup{193,1 (L); 193,2 (Q); 202,5 (H); 203,3 (M)}%
+ {LQHM}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{222,8 (F); 225,8 (K)}{FK}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{238,8 (Y)}{Y}{White}{RedViolet}{upper}{up}
+ \funcgroup{256,0 (R); 266,2 (W)}{RW}{White}{Black}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{\ 88.1 (G); Superficie est\'andar de la cadena lateral (\AA$^2$)}%
+ {G}{Black}{BrickRed}{upper}{up}
+ \funcgroup{118.2 (A); 129.8 (S)}{AS}{Black}{Orange}{upper}{up}
+ \funcgroup{146.1 (C); 146.8 (P)}%
+ {CP}{Black}{Yellow}{upper}{up}
+ \funcgroup{152.5 (T); 158.7 (D); 164.5 (V); 165.5 (N)}%
+ {TDVN}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{181.0 (I); 186.2 (E)}{IE}{White}{PineGreen}{upper}{up}
+ \funcgroup{193.1 (L); 193.2 (Q); 202.5 (H); 203.3 (M)}%
+ {LQHM}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{222.8 (F); 225.8 (K)}{FK}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{238.8 (Y)}{Y}{White}{RedViolet}{upper}{up}
+ \funcgroup{256.0 (R); 266.2 (W)}{RW}{White}{Black}{upper}{up}
+ \else
+ \funcgroup{\ 88.1 (G); Standard sidechain area (\AA$^2$)}%
+ {G}{Black}{BrickRed}{upper}{up}
+ \funcgroup{118.2 (A); 129.8 (S)}{AS}{Black}{Orange}{upper}{up}
+ \funcgroup{146.1 (C); 146.8 (P)}%
+ {CP}{Black}{Yellow}{upper}{up}
+ \funcgroup{152.5 (T); 158.7 (D); 164.5 (V); 165.5 (N)}%
+ {TDVN}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{181.0 (I); 186.2 (E)}{IE}{White}{PineGreen}{upper}{up}
+ \funcgroup{193.1 (L); 193.2 (Q); 202.5 (H); 203.3 (M)}%
+ {LQHM}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{222.8 (F); 225.8 (K)}{FK}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{238.8 (Y)}{Y}{White}{RedViolet}{upper}{up}
+ \funcgroup{256.0 (R); 266.2 (W)}{RW}{White}{Black}{upper}{up}
+ \fi
+ \fi
+ \else
+ \xdef\second@{accessible area}
+ \ifx\temp@\second@
+ \ifgerm@n
+ \funcgroup{\ 13,9 (C); Zug\"angliche Seitenkettenfl\"ache %
+ (\AA$^2$)}%
+ {CIV}{Black}{BrickRed}{upper}{up}
+ \funcgroup{\ 23,0 (I); 23,5 (V); 25,2 (G)}%
+ {IVG}{Black}{Orange}{upper}{up}
+ \funcgroup{\ 28,7 (F); 29,0 (L); 30,5 (M); 31,5 (A)}%
+ {FLMA}{Black}{Yellow}{upper}{up}
+ \funcgroup{\ 41,7 (W); 44,2 (S); 46,0 (T); 46,7 (H)}%
+ {WSTH}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{\ 53,7 (P)}{P}{White}{PineGreen}{upper}{up}
+ \funcgroup{\ 59,1 (Y); 60,9 (D); 62,2 (N)}%
+ {YDN}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{\ 72,3 (E); 74,0 (Q)}{EQ}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{\ 93,8 (R)}{R}{White}{RedViolet}{upper}{up}
+ \funcgroup{110,3 (K)}{K}{White}{Black}{upper}{up}
+ \else
+ \ifsp@nish
+ \funcgroup{\ 13.9 (C); Superficie accesible de la cadena lateral (\AA$^2$)}%
+ {CIV}{Black}{BrickRed}{upper}{up}
+ \funcgroup{\ 23.0 (I); 23.5 (V); 25.2 (G)}%
+ {IVG}{Black}{Orange}{upper}{up}
+ \funcgroup{\ 28.7 (F); 29.0 (L); 30.5 (M); 31.5 (A)}%
+ {FLMA}{Black}{Yellow}{upper}{up}
+ \funcgroup{\ 41.7 (W); 44.2 (S); 46.0 (T); 46.7 (H)}%
+ {WSTH}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{\ 53.7 (P)}{P}{White}{PineGreen}{upper}{up}
+ \funcgroup{\ 59.1 (Y); 60.9 (D); 62.2 (N)}%
+ {YDN}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{\ 72.3 (E); 74.0 (Q)}{EQ}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{\ 93.8 (R)}{R}{White}{RedViolet}{upper}{up}
+ \funcgroup{110.3 (K)}{K}{White}{Black}{upper}{up}
+ \else
+ \funcgroup{\ 13.9 (C); Accessible sidechain area (\AA$^2$)}%
+ {CIV}{Black}{BrickRed}{upper}{up}
+ \funcgroup{\ 23.0 (I); 23.5 (V); 25.2 (G)}%
+ {IVG}{Black}{Orange}{upper}{up}
+ \funcgroup{\ 28.7 (F); 29.0 (L); 30.5 (M); 31.5 (A)}%
+ {FLMA}{Black}{Yellow}{upper}{up}
+ \funcgroup{\ 41.7 (W); 44.2 (S); 46.0 (T); 46.7 (H)}%
+ {WSTH}{Black}{YellowGreen}{upper}{up}
+ \funcgroup{\ 53.7 (P)}{P}{White}{PineGreen}{upper}{up}
+ \funcgroup{\ 59.1 (Y); 60.9 (D); 62.2 (N)}%
+ {YDN}{Black}{SkyBlue}{upper}{up}
+ \funcgroup{\ 72.3 (E); 74.0 (Q)}{EQ}{White}{RoyalPurple}{upper}{up}
+ \funcgroup{\ 93.8 (R)}{R}{White}{RedViolet}{upper}{up}
+ \funcgroup{110.3 (K)}{K}{White}{Black}{upper}{up}
+ \fi
+ \fi
+ \else \message{<Unknown shading mode. Clearing `funcgroups'>}
+ \fi\fi\fi\fi\fi\fi
+}
+\def\shadeallresidues{\all@fshadetrue}
+\def\get@fromstack#1;#2;#3;#4;#5@{%
+ \xdef\first@{#1} \xdef\second@{#2}
+ \xdef\third@{#3} \xdef\fourth@{#4} \xdef\last@{#5@}
+}
+\def\getregion@fromstack#1{%
+ \xdef\temp@{#1}
+ \xdef\first@{\csname stack@reg\temp@\endcsname}
+ \expandafter\get@fromstack\first@
+ \expandafter\xdef\csname style\temp@\endcsname{\first@}
+ \expandafter\xdef\csname start\temp@\endcsname{\second@}
+ \expandafter\xdef\csname stop\temp@\endcsname{\third@}
+ \expandafter\xdef\csname all\temp@\endcsname{\fourth@}
+ \expandafter\xdef\csname stack@reg\temp@\endcsname{\last@}
+}
+\def\sort@stack{%
+ \expandafter\get@fromstack\last@
+ \ifx\first@\ampers@nd
+ \xdef\tmpstack{\tmpstack\the\loopcount;\st@rt;\st@p;\@ll;&;&;&;&;@}
+ \else
+ \ifnum\st@rt<\second@
+ \xdef\tmpstack{\tmpstack\the\loopcount;\st@rt;\st@p;\@ll;%
+ \first@;\second@;\third@;\fourth@;\last@}
+ \else
+ \xdef\tmpstack{\tmpstack\first@;\second@;\third@;\fourth@;} \sort@stack
+ \fi\fi
+}
+\def\get@regions#1..#2,#3@{%
+ \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+ \xdef\last@{\csname stack@reg\seq@\endcsname}
+ \xdef\tmpstack{}
+ \sort@stack
+ \expandafter\xdef\csname stack@reg\seq@\endcsname{\tmpstack}
+}
+\def\get@fromemphstack#1;#2;#3;#4@{%
+ \xdef\first@{#1} \xdef\second@{#2}
+ \xdef\third@{#3} \xdef\last@{#4@}
+}
+\def\getregion@fromemphstack#1{%
+ \xdef\temp@{#1}
+ \xdef\first@{\csname stack@emphreg\temp@\endcsname}
+ \expandafter\get@fromemphstack\first@
+ \expandafter\xdef\csname emphstart\temp@\endcsname{\first@}
+ \expandafter\xdef\csname emphstop\temp@\endcsname{\second@}
+ \expandafter\xdef\csname emphall\temp@\endcsname{\third@}
+ \expandafter\xdef\csname stack@emphreg\temp@\endcsname{\last@}
+}
+\def\sort@emphstack{%
+ \expandafter\get@fromemphstack\last@
+ \ifx\first@\ampers@nd
+ \xdef\tmpstack{\tmpstack\st@rt;\st@p;\@ll;&;&;&;@}
+ \else
+ \ifnum\st@rt<\second@
+ \xdef\tmpstack{\tmpstack\st@rt;\st@p;\@ll;\first@;\second@;\third@;\last@}
+ \else
+ \xdef\tmpstack{\tmpstack\first@;\second@;\third@;} \sort@emphstack
+ \fi\fi
+}
+\def\get@emphregions#1..#2,#3@{%
+ \regionalemphtrue
+ \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+ \xdef\last@{\csname stack@emphreg\seq@\endcsname}
+ \xdef\tmpstack{}
+ \sort@emphstack
+ \expandafter\xdef\csname stack@emphreg\seq@\endcsname{\tmpstack}
+}
+\def\getregion@fromtintstack#1{%
+ \xdef\temp@{#1}
+ \xdef\first@{\csname stack@tintreg\temp@\endcsname}
+ \expandafter\get@fromemphstack\first@
+ \expandafter\xdef\csname tintstart\temp@\endcsname{\first@}
+ \expandafter\xdef\csname tintstop\temp@\endcsname{\second@}
+ \expandafter\xdef\csname tintall\temp@\endcsname{\third@}
+ \expandafter\xdef\csname stack@tintreg\temp@\endcsname{\last@}
+}
+\def\sort@tintstack{%
+ \expandafter\get@fromemphstack\last@
+ \ifx\first@\ampers@nd
+ \xdef\tmpstack{\tmpstack\st@rt;\st@p;\@ll;&;&;&;@}
+ \else
+ \ifnum\st@rt<\second@
+ \xdef\tmpstack{\tmpstack\st@rt;\st@p;\@ll;\first@;\second@;\third@;\last@}
+ \else
+ \xdef\tmpstack{\tmpstack\first@;\second@;\third@;} \sort@tintstack
+ \fi\fi
+}
+\def\get@tintregions#1..#2,#3@{%
+ \regionaltinttrue
+ \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+ \xdef\last@{\csname stack@tintreg\seq@\endcsname}
+ \xdef\tmpstack{}
+ \sort@tintstack
+ \expandafter\xdef\csname stack@tintreg\seq@\endcsname{\tmpstack}
+}
+\def\getregion@fromframestack#1{%
+ \xdef\temp@{#1}
+ \xdef\first@{\csname stack@framereg\temp@\endcsname}
+ \expandafter\get@fromemphstack\first@
+ \expandafter\xdef\csname framestart\temp@\endcsname{\first@}
+ \expandafter\xdef\csname framestop\temp@\endcsname{\second@}
+ \expandafter\xdef\csname framestyle\temp@\endcsname{\third@}
+ \expandafter\xdef\csname stack@framereg\temp@\endcsname{\last@}
+}
+\def\get@frameregions#1..#2,#3@{%
+ \frame@true
+ \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+ \xdef\last@{\csname stack@framereg\seq@\endcsname}
+ \xdef\tmpstack{}
+ \sort@emphstack
+ \expandafter\xdef\csname stack@framereg\seq@\endcsname{\tmpstack}
+}
+\def\getregion@fromfstack#1{%
+ \xdef\temp@{#1}
+ \xdef\first@{\csname stack@\bottop@\temp@\endcsname}
+ \expandafter\get@fromstack\first@
+ \expandafter\xdef\csname text\bottop@\temp@\endcsname{\first@}
+ \expandafter\xdef\csname start\bottop@\temp@\endcsname{\second@}
+ \expandafter\xdef\csname stop\bottop@\temp@\endcsname{\third@}
+ \ifx\fourth@\ampers@nd \xdef\fourth@{///} \fi
+ \expandafter\xdef\csname style\bottop@\temp@\endcsname{\fourth@}
+ \expandafter\xdef\csname stack@\bottop@\temp@\endcsname{\last@}
+}
+\def\sort@fstack{%
+ \expandafter\get@fromstack\last@
+ \ifx\first@\ampers@nd
+ \xdef\tmpstack{\tmpstack\f@text@;\st@rt;\st@p;\style@;&;&;&;&;@}
+ \else
+ \ifnum\st@rt<\second@
+ \xdef\tmpstack{\tmpstack\f@text@;\st@rt;\st@p;\style@;%
+ \first@;\second@;\third@;\fourth@;\last@}
+ \else
+ \xdef\tmpstack{\tmpstack\first@;\second@;\third@;\fourth@;}
+ \sort@fstack
+ \fi\fi
+}
+\def\get@fregions#1..#2,#3@{%
+ \xdef\st@rt{#1}
+ \ifx\temp@\y@
+ \xdef\st@p{#1}
+ \else
+ \xdef\st@p{#2}
+ \fi
+ \xdef\list@{#3}
+ \xdef\last@{\csname stack@\bottop@\seq@\endcsname}
+ \xdef\tmpstack{}
+ \sort@fstack
+ \expandafter\xdef\csname stack@\bottop@\seq@\endcsname{\tmpstack}
+}
+\def\getarrow@shape#1#2#3#4&{%
+ \xdef\first@@{#1}\xdef\second@@{#2}\xdef\third@@{#3}
+ \if\first@@ v
+ \if\second@@ =
+ \else \xdef\style@{\first@@ v\third@@#4} \fi
+ \else
+ \if\first@@ v
+ \if\second@@ =
+ \else \xdef\style@{\first@@ v\third@@#4} \fi
+ \else
+ \if\third@@ v
+ \if\second@@ =
+ \else \xdef\style@{\first@@ v\third@@#4} \fi
+ \else
+ \if\third@@ v
+ \if\second@@ =
+ \else \xdef\style@{\first@@ v\third@@#4} \fi
+ \fi\fi\fi\fi
+}
+\def\get@shape#1#2#3{%
+ \xdef\first@@{#1}\xdef\second@@{#2}\xdef\third@@{#3}%
+ \if\second@@ v \xdef\second@@{arrow}%
+ \fi%
+ \if\second@@ = \xdef\second@@{doublearrow}%
+ \fi%
+}
+\def\getstyle@left#1#2#3#4@{%
+ \ifstop@
+ \xdef\style@@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \else
+ \xdef\style@@{#2}
+ \xdef\temp@{-}
+ \ifx\style@@\temp@ \xdef\style@@{#1#2-#4}
+ \else
+ \xdef\temp@{v}
+ \ifx\style@@\temp@ \xdef\style@@{#1#2-#4}
+ \else
+ \xdef\temp@{=}
+ \ifx\style@@\temp@ \xdef\style@@{#1#2=#4}
+ \else
+ \xdef\style@@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \fi\fi\fi\fi
+}
+\def\getstyle@right#1#2#3#4@{%
+ \xdef\style@@{#2}
+ \xdef\temp@{-}
+ \ifx\style@@\temp@
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{-#2#3#4}
+ \fi
+ \xdef\temp@{v}
+ \ifx\style@@\temp@
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{-#2#3#4}
+ \fi
+ \xdef\temp@{=}
+ \ifx\style@@\temp@
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{=#2#3#4}
+ \fi
+}
+\def\opt@color#1[#2]#3&{\xdef\fourth@{#1}\xdef\f@color{#2}}
+\def\graph@opt@color#1[#2]:#3[#4][#5]#6&{%
+ \xdef\fourth@{#1}
+ \xdef\f@color{#2}
+ \xdef\ffourth@{#3}
+ \xdef\ff@color{#4}
+ \xdef\fffourth@{#5}}
+\def\arrow@col@width#1[#2][#3]#4&{\xdef\fourth@{#1}\xdef\f@color{#2}\xdef\rule@@thick{#3}}
+\def\second@color#1,&{\xdef\back@color{#1}}
+\def\two@opt@color#1,#2@{%
+ \xdef\sixth@{#1}%
+ \xdef\seventh@{#2}%
+ \ifx\first@\ampers@nd%
+ \else%
+ \xdef\frame@color{#1}%
+ \ifx\seventh@\ampers@nd%
+ \xdef\back@color{#1}%
+ \else%
+ \expandafter\second@color\seventh@%
+ \fi%
+ \fi%
+}
+\def\test@fill#1:#2:#3&{%
+ \xdef\last@{#1[,][,]&}\expandafter\arrow@col@width\last@%
+ \xdef\second@@{\fourth@}%
+ \xdef\last@{///}%
+ \ifx\fourth@\last@%
+ \xdef\second@@{empty}%
+ \else
+ \xdef\last@{translate}%
+ \ifx\fourth@\last@%
+ \xdef\second@@{translate}%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \xdef\fill@char{\fourth@}%
+ \else
+ \xdef\last@{fill}%
+ \ifx\fourth@\last@
+ \xdef\second@@{fill}%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \xdef\fill@char{\fourth@}%
+ \else
+ \xdef\last@{bar}%
+ \ifx\fourth@\last@
+ \xdef\second@@{bar}%
+ \xdef\b@r{bar}%
+ \ifx\f@color\comm@
+ \xdef\g@min{,}\xdef\g@max{,}%
+ \else
+ \xdef\f@color{\f@color @}%
+ \expandafter\get@item\f@color%
+ \xdef\g@min{\fourth@} \xdef\g@max{\first@@}%
+ \xdef\pm@shift{\fourth@}%
+ \fi%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \ifx\f@color\comm@\xdef\f@color{GrayDefault}\fi%
+ \xdef\fill@char{\fourth@}%
+ \xdef\box@color{\f@color,&@}%
+ \expandafter\two@opt@color\box@color%
+ \else
+ \xdef\last@{color}%
+ \ifx\fourth@\last@
+ \xdef\second@@{color}%
+ \ifx\f@color\comm@
+ \xdef\g@min{,}\xdef\g@max{,}%
+ \else
+ \xdef\f@color{\f@color @}%
+ \expandafter\get@item\f@color%
+ \xdef\g@min{\fourth@} \xdef\g@max{\first@@}%
+ \fi%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \ifx\f@color\comm@\xdef\f@color{GrayDefault}\fi%
+ \xdef\fill@char{\fourth@}%
+ \else
+ \xdef\last@{box}%
+ \ifx\fourth@\last@%
+ \xdef\second@@{box}%
+ \ifx\f@color\comm@\xdef\f@color{White}\fi%
+ \xdef\seventh@{\f@color @}\expandafter\check@letter\seventh@%
+ \ifnumber%
+ \ifx\rule@@thick\comm@%
+ \xdef\rule@@thick{\f@color}%
+ \xdef\box@color{White,&@}%
+ \else%
+ \xdef\seventh@{\rule@@thick}%
+ \xdef\rule@@thick{\f@color}%
+ \xdef\box@color{\seventh@,&@}%
+ \fi%
+ \else%
+ \xdef\box@color{\f@color,&@}%
+ \fi%
+ \expandafter\two@opt@color\box@color%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \xdef\fill@char{\fourth@}%
+ \else
+ \xdef\last@{plotcolor}%
+ \ifx\fourth@\last@%
+ \xdef\second@@{plotcolor}%
+ \ifx\f@color\comm@%
+ \xdef\pm@shift{0}%
+ \else%
+ \xdef\pm@shift{\f@color}%
+ \fi%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \xdef\fill@char{\fourth@}%
+ \else
+ \xdef\last@{plotbar}%
+ \ifx\fourth@\last@%
+ \xdef\second@@{plotbar}%
+ \xdef\b@r{bar}%
+ \ifx\f@color\comm@
+ \xdef\pm@shift{0}%
+ \else
+ \xdef\pm@shift{\f@color}%
+ \fi%
+ \xdef\fill@char{#2[,]&}%
+ \expandafter\opt@color\fill@char%
+ \ifx\f@color\comm@\xdef\f@color{GrayDefault}\fi%
+ \xdef\fill@char{\fourth@}%
+ \xdef\box@color{\f@color,&@}%
+ \expandafter\two@opt@color\box@color%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\seventh@{\f@color @}\expandafter\check@letter\seventh@%
+ \ifnumber%
+ \ifx\rule@@thick\comm@%
+ \xdef\rule@@thick{\f@color}%
+ \xdef\f@color{Black}%
+ \else%
+ \xdef\seventh@{\rule@@thick}%
+ \xdef\rule@@thick{\f@color}%
+ \xdef\f@color{\seventh@}%
+ \fi%
+ \fi%
+ \ifx\rule@@thick\comm@\xdef\rule@@thick{\the\rule@thick}\fi%
+ \ifx\f@color\comm@\xdef\f@color{Black}\fi}
+\def\clear@groups{%
+ \expandafter\xdef\csname \prfx grpA\endcsname{ -1}
+ \expandafter\xdef\csname \prfx grpB\endcsname{ -2}
+ \expandafter\xdef\csname \prfx grpC\endcsname{ -3}
+ \expandafter\xdef\csname \prfx grpD\endcsname{ -4}
+ \expandafter\xdef\csname \prfx grpE\endcsname{ -5}
+ \expandafter\xdef\csname \prfx grpF\endcsname{ -6}
+ \expandafter\xdef\csname \prfx grpG\endcsname{ -7}
+ \expandafter\xdef\csname \prfx grpH\endcsname{ -8}
+ \expandafter\xdef\csname \prfx grpI\endcsname{ -9}
+ \expandafter\xdef\csname \prfx grpJ\endcsname{-10}
+ \expandafter\xdef\csname \prfx grpK\endcsname{-11}
+ \expandafter\xdef\csname \prfx grpL\endcsname{-12}
+ \expandafter\xdef\csname \prfx grpM\endcsname{-13}
+ \expandafter\xdef\csname \prfx grpN\endcsname{-14}
+ \expandafter\xdef\csname \prfx grpO\endcsname{-15}
+ \expandafter\xdef\csname \prfx grpP\endcsname{-16}
+ \expandafter\xdef\csname \prfx grpQ\endcsname{-17}
+ \expandafter\xdef\csname \prfx grpR\endcsname{-18}
+ \expandafter\xdef\csname \prfx grpS\endcsname{-19}
+ \expandafter\xdef\csname \prfx grpT\endcsname{-20}
+ \expandafter\xdef\csname \prfx grpU\endcsname{-21}
+ \expandafter\xdef\csname \prfx grpV\endcsname{-22}
+ \expandafter\xdef\csname \prfx grpW\endcsname{-23}
+ \expandafter\xdef\csname \prfx grpX\endcsname{-24}
+ \expandafter\xdef\csname \prfx grpY\endcsname{-25}
+ \expandafter\xdef\csname \prfx grpZ\endcsname{-26}
+ \expandafter\xdef\csname \prfx grp-\endcsname{-999}
+ \expandafter\xdef\csname \prfx grp.\endcsname{-999}
+}
+\def\inactivate@chars{%
+ \catcode`\#=12
+ \catcode`\"=12
+ \catcode`\~=12
+ \catcode`\^=12
+ \catcode`\_=12
+ }
+\def\numcount{\the\loopcount}
+\def\Alphacount{\@Alph\loopcount}
+\def\alphacount{\@alph\loopcount}
+\def\romancount{\@roman\loopcount}
+\def\Romancount{\@Roman\loopcount}
+\def\cut@name#1.#2@{\global\xdef\file@n@me{#1}}
+\def\struc@get#1 #2 #3 #4 #5 #6 #7 #8 #9@{%
+ \xdef\first@{#1} \xdef\second@{#2} \xdef\third@{#3} \xdef\fourth@{#4}
+ \xdef\fifth@{#5} \xdef\sixth@{#6} \xdef\seventh@{#7}\xdef\eighth@{#8}}
+\def\get@PHD#1|#2|#3@{\xdef\PHD@line{\PHD@line #2}}
+\def\write@PHDsec{%
+ \expandafter\get@sim\last@
+ \ifx\sim@char\c@mp
+ \def\end@{\the\innerloopcount}
+ \advance\innerloopcount by 1
+ \else
+ \ifnum\end@<\begin@ \xdef\end@{\begin@}\fi
+ \if\c@mp .
+ \else
+ \if\c@mp L
+ \else
+ \if\c@mp H
+ \ifx\show@Hsec\yes
+ \loopcount=\first@
+ \advance\loopcount by 1
+ \xdef\first@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hsec}{\begin@..\end@}%
+ {\label@Hsec}{\text@Hsec}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hsec}{\st@rt}{\begin@..\end@}%
+ {\label@Hsec}{\text@Hsec}}\fi
+ \fi
+ \else
+ \if\c@mp E
+ \ifx\show@Esec\yes
+ \loopcount=\second@
+ \advance\loopcount by 1
+ \xdef\second@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Esec}{\begin@..\end@}%
+ {\label@Esec}{\text@Esec}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Esec}{\st@rt}{\begin@..\end@}%
+ {\label@Esec}{\text@Esec}}\fi
+ \fi
+ \fi\fi\fi\fi
+ \xdef\c@mp{\sim@char}
+ \advance\innerloopcount by 1
+ \xdef\begin@{\the\innerloopcount}
+ \fi
+ \ifx\sim@char\ampers@nd\else\write@PHDsec\fi
+}
+\def\write@PHDtopo{%
+ \expandafter\get@sim\last@
+ \ifx\sim@char\c@mp
+ \def\end@{\the\innerloopcount}
+ \advance\innerloopcount by 1
+ \else
+ \ifnum\end@<\begin@ \xdef\end@{\begin@}\fi
+ \if\c@mp .
+ \else
+ \if\c@mp L
+ \else
+ \if\c@mp T
+ \ifx\show@TMtop\yes
+ \loopcount=\first@
+ \advance\loopcount by 1
+ \xdef\first@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@TMtop}{\begin@..\end@}%
+ {\label@TMtop}{\text@TMtop}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@TMtop}{\st@rt}{\begin@..\end@}%
+ {\label@TMtop}{\text@TMtop}}\fi
+ \fi
+ \else
+ \if\c@mp i
+ \ifx\show@itop\yes
+ \loopcount=\second@
+ \advance\loopcount by 1
+ \xdef\second@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@itop}{\begin@..\end@}%
+ {\label@itop}{\text@itop}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@itop}{\st@rt}{\begin@..\end@}%
+ {\label@itop}{\text@itop}}\fi
+ \fi
+ \else
+ \if\c@mp o
+ \ifx\show@etop\yes
+ \loopcount=\second@
+ \advance\loopcount by 1
+ \xdef\second@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@etop}{\begin@..\end@}%
+ {\label@etop}{\text@etop}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@etop}{\st@rt}{\begin@..\end@}%
+ {\label@etop}{\text@etop}}\fi
+ \fi
+ \fi\fi\fi\fi\fi
+ \xdef\c@mp{\sim@char}
+ \advance\innerloopcount by 1
+ \xdef\begin@{\the\innerloopcount}
+ \fi
+ \ifx\sim@char\ampers@nd\else\write@PHDtopo\fi
+}
+\def\include@DSSP{%
+ \xdef\first@{\csname optiondssp\the\loopcount\endcsname}
+ \xdef\bottop@{\csname bottopdssp\the\loopcount\endcsname}
+ \xdef\st@rt{\csname doseqdssp\the\loopcount\endcsname}
+ \xdef\structurefilename{\csname filenamedssp\the\loopcount\endcsname}
+ \bgroup
+ \xdef\file@n@me{\structurefilename .@}
+ \expandafter\cut@name\file@n@me
+ \xdef\file@n@me{\file@n@me.sec}
+ \ifx\first@\file@n@me
+ \else
+ \immediate\openin\alignfile = \file@n@me\relax
+ \ifeof\alignfile \xdef\first@{make new} \fi
+ \immediate\closein\alignfile
+ \fi
+ \xdef\temp@{make new}
+ \ifx\first@\temp@
+ \def\par{}
+ \inactivate@chars
+ \immediate\openin\structurefile = \structurefilename\relax
+ \ifeof\structurefile
+ \PackageError{TeXshade}
+ {File `\structurefilename' not found}
+ {\MessageBreak
+ The `DSSP' file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ No labels for secondary structures will be displayed. \MessageBreak
+ Type <return> to proceed. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \immediate\closein\structurefile\egroup
+ \else
+ \message{[\structurefilename] ->}
+ \xdef\second@{} \xdef\temp@{RESIDUE}
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \ifx\second@\temp@ \xdef\temp@{AA}\fi
+ \ifx\third@\temp@ \else\repeat
+ \immediate\openout\featurefile = \file@n@me
+ \xdef\c@mp{+}
+ \xdef\begin@{\csname seq@start\st@rt\endcsname}
+ \xdef\end@{\csname seq@start\st@rt\endcsname}
+ \xdef\st@rt@{\begin@}
+ \expandafter\innerloopcount=\csname seq@start\st@rt\endcsname
+ \advance\innerloopcount by -1
+ \xdef\first@@{0} \xdef\second@@{0} \xdef\third@@{0}
+ \xdef\fourth@@{0} \xdef\fifth@@{0} \xdef\sixth@@{0}
+ \xdef\seventh@@{0}
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \ifx\test@\par@
+ \else
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \if\c@mp + \xdef\c@mp{\fifth@}\fi
+ \ifx\fifth@\c@mp
+ \ifx\fc@DSSP\y@
+ \temp@count=\first@
+ \else
+ \temp@count=\second@
+ \fi
+ \advance\temp@count by \st@rt@
+ \advance\temp@count by -1
+ \xdef\end@{\the\temp@count}
+ \else
+ \ifnum\begin@>0
+ \ifnum\end@<\begin@ \xdef\end@{\begin@}\fi
+ \if\c@mp C
+ \else
+ \if\c@mp H
+ \ifx\show@Hdssp\yes
+ \loopcount=\first@@
+ \advance\loopcount by 1
+ \xdef\first@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hdssp}{\begin@..\end@}%
+ {\label@Hdssp}{\text@Hdssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hdssp}{\st@rt}{\begin@..\end@}%
+ {\label@Hdssp}{\text@Hdssp}}\fi
+ \fi
+ \else
+ \if\c@mp G
+ \ifx\show@Gdssp\yes
+ \loopcount=\second@@
+ \advance\loopcount by 1
+ \xdef\second@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Gdssp}{\begin@..\end@}%
+ {\label@Gdssp}{\text@Gdssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Gdssp}{\st@rt}{\begin@..\end@}%
+ {\label@Gdssp}{\text@Gdssp}}\fi
+ \fi
+ \else
+ \if\c@mp I
+ \ifx\show@Idssp\yes
+ \loopcount=\third@@
+ \advance\loopcount by 1
+ \xdef\third@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Idssp}{\begin@..\end@}%
+ {\label@Idssp}{\text@Idssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Idssp}{\st@rt}{\begin@..\end@}%
+ {\label@Idssp}{\text@Idssp}}\fi
+ \fi
+ \else
+ \if\c@mp E
+ \ifx\show@Edssp\yes
+ \loopcount=\fourth@@
+ \advance\loopcount by 1
+ \xdef\fourth@@{\the\loopcount}
+ \advance\innerloopcount by 1
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Edssp}{\begin@..\end@}%
+ {\label@Edssp}{\text@Edssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Edssp}{\st@rt}{\begin@..\end@}%
+ {\label@Edssp}{\text@Edssp}}\fi
+ \fi
+ \else
+ \if\c@mp B
+ \ifx\show@Bdssp\yes
+ \loopcount=\fifth@@
+ \advance\loopcount by 1
+ \xdef\fifth@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Bdssp}{\begin@..\end@}%
+ {\label@Bdssp}{\text@Bdssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Bdssp}{\st@rt}{\begin@..\end@}%
+ {\label@Bdssp}{\text@Bdssp}}\fi
+ \fi
+ \else
+ \if\c@mp T
+ \ifx\show@Tdssp\yes
+ \loopcount=\sixth@@
+ \advance\loopcount by 1
+ \xdef\sixth@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Tdssp}{\begin@..\end@}%
+ {\label@Tdssp}{\text@Tdssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Tdssp}{\st@rt}{\begin@..\end@}%
+ {\label@Tdssp}{\text@Tdssp}}\fi
+ \fi
+ \else
+ \if\c@mp S
+ \ifx\show@Sdssp\yes
+ \loopcount=\seventh@@
+ \advance\loopcount by 1
+ \xdef\seventh@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Sdssp}{\begin@..\end@}%
+ {\label@Sdssp}{\text@Sdssp}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Sdssp}{\st@rt}{\begin@..\end@}%
+ {\label@Sdssp}{\text@Sdssp}}\fi
+ \fi
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi
+ \xdef\c@mp{\fifth@}
+ \ifx\fc@DSSP\y@
+ \temp@count=\first@
+ \else
+ \temp@count=\second@
+ \fi
+ \advance\temp@count by \st@rt@
+ \advance\temp@count by -1
+ \xdef\begin@{\the\temp@count}
+ \fi
+ \fi
+ \ifeof\structurefile \else\repeat
+ \closein\structurefile
+ \immediate\closeout\featurefile
+ \egroup
+ \input{\file@n@me}
+ \fi
+ \else
+ \egroup
+ \message{using existing file:}
+ \input{\file@n@me}
+ \fi
+ }
+
+\def\include@HMMTOP{%
+ \def\get@HMMTOP@TMs##1-##2 ##3@{%
+ \xdef\temp@@{\temp@@\fourth@@##1\fourth@@##2}
+ \xdef\structureline{##3 @}
+ }
+ \def\get@HMMTOP{%
+ \ifnum\temp@count<\fifth@
+ \advance\temp@count by 1
+ \expandafter\get@HMMTOP@TMs\structureline
+ \get@HMMTOP
+ \fi
+ }
+ \def\rem@ve@TM@info Transmembrane helices: ##1@{%
+ \xdef\structureline{##1 @}
+ \temp@count=0
+ \get@HMMTOP
+ }
+ \xdef\bottop@{\csname bottopHMMTOP\the\loopcount\endcsname}
+ \xdef\st@rt{\csname doseqHMMTOP\the\loopcount\endcsname}
+ \xdef\first@{\csname optionHMMTOP\the\loopcount\endcsname}
+ \xdef\structurefilename{\csname filenameHMMTOP\the\loopcount\endcsname}
+ \bgroup
+ \xdef\file@n@me{\structurefilename .@}
+ \expandafter\cut@name\file@n@me
+ \xdef\file@n@me{\file@n@me.top}
+ \ifx\first@\file@n@me
+ \else
+ \immediate\openin\alignfile = \file@n@me\relax
+ \ifeof\alignfile \xdef\first@{make new} \fi
+ \immediate\closein\alignfile
+ \fi
+ \xdef\temp@{make new}
+ \ifx\first@\temp@
+ \def\par{}
+ \inactivate@chars
+ \immediate\openin\structurefile = \structurefilename\relax
+ \ifeof\structurefile
+ \PackageError{TeXshade}
+ {File `\structurefilename' not found}
+ {\MessageBreak
+ The `HMMTOP' file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ No labels for secondary structures will be displayed. \MessageBreak
+ Type <return> to proceed. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \immediate\closein\structurefile\egroup
+ \else
+ \message{[\structurefilename] ->}
+ \immediate\openout\featurefile = \file@n@me
+
+ \xdef\first@{\csname fileseqHMMTOP\the\loopcount\endcsname @}
+ \expandafter\check@letter\first@
+ \ifletter
+ \xdef\st@p{\csname fileseqHMMTOP\the\loopcount\endcsname}
+ \else
+ \xdef\first@{\csname fileseqHMMTOP\the\loopcount\endcsname}
+ \ifnum\first@=0
+ \xdef\st@p{0}
+ \else
+ \xdef\st@p{\csname fileseqHMMTOP\the\loopcount\endcsname}
+ \fi
+ \fi
+ \xdef\temp@{yes} \innerloopcount=0
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \ifx\test@\par@
+ \else
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \ifx\first@\@HP
+ \ifx\temp@\yes \xdef\temp@{\readline} \fi
+ \ifletter
+ \ifx\st@p\third@ \xdef\temp@{\readline} \fi
+ \else
+ \ifnum\st@p=0
+ \expandafter\ifx\csname seqname\st@rt\endcsname\third@
+ \xdef\temp@{\readline} \xdef\st@p{-1}
+ \else
+ \expandafter\ifx\csname newseqname\st@rt\endcsname\third@
+ \xdef\temp@{\readline} \xdef\st@p{-1}
+ \fi
+ \fi
+ \else
+ \advance\innerloopcount by 1
+ \ifnum\st@p=\innerloopcount \xdef\temp@{\readline} \fi
+ \fi
+ \fi
+ \else
+ \xdef\first@@{Protein:}
+ \ifx\first@\first@@
+ \xdef\second@@{\second@}
+ \xdef\temp@@{>HP:} \xdef\fourth@@{ }
+ \read\structurefile to \readline
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \xdef\temp@@{\temp@@\fourth@@\second@\fourth@@\second@@}
+ \read\structurefile to \readline
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \xdef\temp@@{\temp@@\fourth@@\second@}
+ \read\structurefile to \readline
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \xdef\temp@@{\temp@@\fourth@@\fifth@}
+ \read\structurefile to \readline
+ \xdef\structureline{\readline @}
+ \expandafter\rem@ve@TM@info\structureline
+ \xdef\temp@@{\temp@@\fourth@@}
+ \ifx\temp@\yes \xdef\temp@{\temp@@} \fi
+ \ifletter
+ \ifx\st@p\third@ \xdef\temp@{\temp@@} \fi
+ \else
+ \ifnum\st@p=0
+ \expandafter\ifx\csname seqname\st@rt\endcsname\second@@
+ \xdef\temp@{\temp@@}
+ \else
+ \expandafter\ifx\csname newseqname\st@rt\endcsname\second@@
+ \xdef\temp@{\temp@@}
+ \fi
+ \fi
+ \else
+ \advance\innerloopcount by 1
+ \ifnum\st@p=\innerloopcount \xdef\temp@{\temp@@} \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifeof\structurefile \else\repeat
+ \xdef\seq@line{\temp@ @}
+ \innerloopcount=0
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\seq@get\seq@line
+ \xdef\seq@line{\seq@line @}
+ \ifnum\innerloopcount=4 \xdef\c@mp{\first@} \fi
+ \ifnum\innerloopcount=5 \xdef\st@p{\first@} \else \repeat
+ \xdef\first@{IN}
+ \ifx\c@mp\first@ \xdef\c@mp{i} \else \xdef\c@mp{e} \fi
+ \xdef\begin@{1} \xdef\first@@{0} \xdef\second@@{0}
+ \innerloopcount=0
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\seq@get\seq@line
+ \xdef\seq@line{\seq@line @}
+ \temp@count=\first@
+ \advance\temp@count by -1
+ \xdef\end@{\the\temp@count}
+ \loopcount=\second@@
+ \advance\loopcount by 1
+ \xdef\second@@{\the\loopcount}
+ \if\c@mp i
+ \ifx\show@i@HMMTOP\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@i@HMMTOP}{\st@rt}{\begin@..\end@}%
+ {\label@i@HMMTOP}{\text@i@HMMTOP}}\fi
+ \xdef\c@mp{e}
+ \else
+ \ifx\show@e@HMMTOP\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@e@HMMTOP}{\st@rt}{\begin@..\end@}%
+ {\label@e@HMMTOP}{\text@e@HMMTOP}}\fi
+ \xdef\c@mp{i}
+ \fi
+ \advance\temp@count by 1
+ \xdef\begin@{\the\temp@count}
+ \expandafter\seq@get\seq@line
+ \xdef\seq@line{\seq@line @}
+ \xdef\end@{\first@}
+ \loopcount=\first@@
+ \advance\loopcount by 1
+ \xdef\first@@{\the\loopcount}
+ \ifx\show@TM@HMMTOP\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@TM@HMMTOP}{\st@rt}{\begin@..\end@}%
+ {\label@TM@HMMTOP}{\text@TM@HMMTOP}}\fi
+ \temp@count=\end@ \advance\temp@count by 1 \xdef\begin@{\the\temp@count}
+ \ifnum\innerloopcount=\st@p\else\repeat
+ \closein\structurefile
+ \immediate\closeout\featurefile
+ \egroup
+
+ \input{\file@n@me}
+ \fi
+ \else
+ \egroup
+ \message{using existing file:}
+ \input{\file@n@me}
+ \fi
+ }
+
+\def\include@stride{%
+ \xdef\first@{\csname optionstride\the\loopcount\endcsname}
+ \xdef\bottop@{\csname bottopstride\the\loopcount\endcsname}
+ \xdef\st@rt{\csname doseqstride\the\loopcount\endcsname}
+ \xdef\structurefilename{\csname filenamestride\the\loopcount\endcsname}
+ \bgroup
+ \xdef\file@n@me{\structurefilename .@}
+ \expandafter\cut@name\file@n@me
+ \xdef\file@n@me{\file@n@me.sec}
+ \ifx\first@\file@n@me
+ \else
+ \immediate\openin\alignfile = \file@n@me\relax
+ \ifeof\alignfile \xdef\first@{make new} \fi
+ \immediate\closein\alignfile
+ \fi
+ \xdef\temp@{make new}
+ \ifx\first@\temp@
+ \def\par{}
+ \inactivate@chars
+ \immediate\openin\structurefile = \structurefilename\relax
+ \ifeof\structurefile
+ \PackageError{TeXshade}
+ {File `\structurefilename' not found}
+ {\MessageBreak
+ The `STRIDE' file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ No labels for secondary structures will be displayed. \MessageBreak
+ Type <return> to proceed. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \immediate\closein\structurefile\egroup
+ \else
+ \message{[\structurefilename] ->}
+ \immediate\openout\featurefile = \file@n@me
+ \xdef\c@mp{+}
+ \xdef\begin@{\csname seq@start\st@rt\endcsname}
+ \xdef\end@{\csname seq@start\st@rt\endcsname}
+ \xdef\st@rt@{\begin@}
+ \expandafter\innerloopcount=\csname seq@start\st@rt\endcsname
+ \advance\innerloopcount by -1
+ \xdef\first@@{0} \xdef\second@@{0} \xdef\third@@{0}
+ \xdef\fourth@@{0} \xdef\fifth@@{0} \xdef\sixth@@{0}
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \ifx\test@\par@
+ \else
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \ifx\first@\@asg
+ \if\c@mp + \xdef\c@mp{\sixth@}\fi
+ \ifx\sixth@\c@mp
+ \temp@count=\fifth@
+ \advance\temp@count by \st@rt@
+ \advance\temp@count by -1
+ \xdef\end@{\the\temp@count}
+ \else
+ \ifnum\begin@>0
+ \ifnum\end@<\begin@ \xdef\end@{\begin@}\fi
+ \if\c@mp C
+ \else
+ \if\c@mp H
+ \ifx\show@Hstride\yes
+ \loopcount=\first@@
+ \advance\loopcount by 1
+ \xdef\first@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hstride}{\begin@..\end@}%
+ {\label@Hstride}{\text@Hstride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Hstride}{\st@rt}{\begin@..\end@}%
+ {\label@Hstride}{\text@Hstride}}\fi
+ \fi
+ \else
+ \if\c@mp G
+ \ifx\show@Gstride\yes
+ \loopcount=\second@@
+ \advance\loopcount by 1
+ \xdef\second@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Gstride}{\begin@..\end@}%
+ {\label@Gstride}{\text@Gstride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Gstride}{\st@rt}{\begin@..\end@}%
+ {\label@Gstride}{\text@Gstride}}\fi
+ \fi
+ \else
+ \if\c@mp I
+ \ifx\show@Istride\yes
+ \loopcount=\third@@
+ \advance\loopcount by 1
+ \xdef\third@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Istride}{\begin@..\end@}%
+ {\label@Istride}{\text@Istride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Istride}{\st@rt}{\begin@..\end@}%
+ {\label@Istride}{\text@Istride}}\fi
+ \fi
+ \else
+ \if\c@mp E
+ \ifx\show@Estride\yes
+ \loopcount=\fourth@@
+ \advance\loopcount by 1
+ \xdef\fourth@@{\the\loopcount}
+ \advance\innerloopcount by 1
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Estride}{\begin@..\end@}%
+ {\label@Estride}{\text@Estride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Estride}{\st@rt}{\begin@..\end@}%
+ {\label@Estride}{\text@Estride}}\fi
+ \fi
+ \else
+ \if\c@mp B
+ \ifx\show@Bstride\yes
+ \loopcount=\fifth@@
+ \advance\loopcount by 1
+ \xdef\fifth@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Bstride}{\begin@..\end@}%
+ {\label@Bstride}{\text@Bstride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Bstride}{\st@rt}{\begin@..\end@}%
+ {\label@Bstride}{\text@Bstride}}\fi
+ \fi
+ \else
+ \if\c@mp T
+ \ifx\show@Tstride\yes
+ \loopcount=\sixth@@
+ \advance\loopcount by 1
+ \xdef\sixth@@{\the\loopcount}
+ \ifx\m@p\yes
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Tstride}{\begin@..\end@}%
+ {\label@Tstride}{\text@Tstride}}
+ \else
+ \immediate\write\featurefile{%
+ \string\feature{\bottop@Tstride}{\st@rt}{\begin@..\end@}%
+ {\label@Tstride}{\text@Tstride}}\fi
+ \fi
+ \fi\fi\fi\fi\fi\fi\fi
+ \fi
+ \xdef\c@mp{\sixth@}
+ \temp@count=\fifth@
+ \advance\temp@count by \st@rt@
+ \advance\temp@count by -1
+ \xdef\begin@{\the\temp@count}
+ \fi
+ \fi
+ \fi
+ \ifeof\structurefile \else\repeat
+ \closein\structurefile
+ \immediate\closeout\featurefile
+ \egroup
+ \input{\file@n@me}
+ \fi
+ \else
+ \egroup
+ \message{using existing file:}
+ \input{\file@n@me}
+ \fi
+ }
+\def\include@PHD{%
+ \xdef\first@{\csname optionphd\the\loopcount\endcsname}
+ \xdef\bottop@{\csname bottopphd\the\loopcount\endcsname}
+ \xdef\st@rt{\csname doseqphd\the\loopcount\endcsname}
+ \xdef\m@de{\csname modephd\the\loopcount\endcsname}
+ \xdef\structurefilename{\csname filenamephd\the\loopcount\endcsname}
+ \bgroup
+ \xdef\file@n@me{\structurefilename .@}
+ \expandafter\cut@name\file@n@me
+ \xdef\temp@{structure}
+ \ifx\m@de\temp@
+ \xdef\temp@{\file@n@me .sec}
+ \immediate\openin\alignfile = \temp@\relax
+ \ifeof\alignfile \xdef\first@{make new} \fi
+ \immediate\closein\alignfile
+ \else
+ \xdef\temp@{topology}
+ \ifx\m@de\temp@
+ \xdef\temp@{\file@n@me .top}
+ \immediate\openin\alignfile = \temp@\relax
+ \ifeof\alignfile \xdef\first@{make new} \fi
+ \immediate\closein\alignfile
+ \else
+ \message{<Unknown type. Ignoring \noexpand\includePHD>}
+ \xdef\first@{ignore}
+ \fi\fi
+ \xdef\temp@{make new}
+ \ifx\first@\temp@
+ \def\par{}
+ \xdef\PHD@line{}
+ \inactivate@chars
+ \immediate\openin\structurefile=\structurefilename\relax
+ \ifeof\structurefile
+ \PackageError{TeXshade}%
+ {File `\structurefilename' not found}%
+ {\MessageBreak
+ The `PHD' file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ No labels for secondary structures will be displayed. \MessageBreak
+ Type <return> to proceed. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \immediate\closein\structurefile\egroup
+ \else
+ \message{[\structurefilename] ->}
+ \loop
+ \read\structurefile to \readline
+ \xdef\structureline{\readline & & & & & & & & &@}
+ \expandafter\struc@get\structureline
+ \xdef\temp@{structure}
+ \ifx\m@de\temp@
+ \xdef\temp@{SUB}
+ \ifx\temp@\first@
+ \xdef\temp@{sec}
+ \ifx\temp@\second@
+ \xdef\third@{\third@ @}
+ \expandafter\get@PHD\third@
+ \fi
+ \else
+ \ifx\temp@\second@
+ \xdef\temp@{sec}
+ \ifx\temp@\third@
+ \xdef\fourth@{\fourth@ @}
+ \expandafter\get@PHD\fourth@
+ \fi
+ \fi
+ \fi
+ \else
+ \xdef\temp@{topology}
+ \ifx\m@de\temp@
+ \xdef\temp@{PHDThtm}
+ \ifx\temp@\first@
+ \xdef\second@{\second@ @}
+ \expandafter\get@PHD\second@
+ \fi
+ \fi\fi
+ \ifeof\structurefile \else\repeat
+ \closein\structurefile
+ \xdef\c@mp{+}
+ \xdef\begin@{\csname seq@start\st@rt\endcsname}
+ \xdef\end@{\csname seq@start\st@rt\endcsname}
+ \expandafter\innerloopcount=\csname seq@start\st@rt\endcsname
+ \advance\innerloopcount by -1
+ \xdef\first@{0} \xdef\second@{0} \xdef\third@{0}
+ \xdef\fourth@{0} \xdef\fifth@{0} \xdef\sixth@{0}
+ \xdef\last@{\PHD@line &@}
+ \xdef\temp@{structure}
+ \ifx\temp@\m@de
+ \xdef\file@n@me{\file@n@me .sec}
+ \immediate\openout\featurefile = \file@n@me\relax
+ \write@PHDsec
+ \fi
+ \xdef\temp@{topology}
+ \ifx\temp@\m@de
+ \xdef\file@n@me{\file@n@me .top}
+ \immediate\openout\featurefile = \file@n@me\relax
+ \write@PHDtopo
+ \fi
+ \immediate\closeout\featurefile
+ \egroup
+ \input{\file@n@me}
+ \fi
+ \else
+ \egroup
+ \xdef\temp@{ignore}
+ \ifx\temp@\first@
+ \else
+ \message{using existing file:}
+ \xdef\temp@{structure}
+ \ifx\temp@\m@de \xdef\file@n@me{\file@n@me .sec} \fi
+ \xdef\temp@{topology}
+ \ifx\temp@\m@de \xdef\file@n@me{\file@n@me .top} \fi
+ \input{\file@n@me}
+ \fi
+ \fi}
+\def\show@DSSP{%
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\temp@{alpha}
+ \ifx\fourth@\temp@ \xdef\show@Hdssp{\second@}\fi
+ \xdef\temp@{3-10}
+ \ifx\fourth@\temp@ \xdef\show@Gdssp{\second@}\fi
+ \xdef\temp@{pi}
+ \ifx\fourth@\temp@ \xdef\show@Idssp{\second@}\fi
+ \xdef\temp@{beta}
+ \ifx\fourth@\temp@ \xdef\show@Edssp{\second@}\fi
+ \xdef\temp@{bridge}
+ \ifx\fourth@\temp@ \xdef\show@Bdssp{\second@}\fi
+ \xdef\temp@{turn}
+ \ifx\fourth@\temp@ \xdef\show@Tdssp{\second@}\fi
+ \xdef\temp@{bend}
+ \ifx\fourth@\temp@ \xdef\show@Sdssp{\second@}\fi
+ \show@DSSP
+ \fi}
+\def\show@HMMTOP{%
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\temp@{internal}
+ \ifx\fourth@\temp@ \xdef\show@i@HMMTOP{\second@}\fi
+ \xdef\temp@{external}
+ \ifx\fourth@\temp@ \xdef\show@e@HMMTOP{\second@}\fi
+ \xdef\temp@{TM}
+ \ifx\fourth@\temp@ \xdef\show@TM@HMMTOP{\second@}\fi
+ \show@HMMTOP
+ \fi}
+\def\show@STRIDE{%
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\temp@{alpha}
+ \ifx\fourth@\temp@ \xdef\show@Hstride{\second@}\fi
+ \xdef\temp@{3-10}
+ \ifx\fourth@\temp@ \xdef\show@Gstride{\second@}\fi
+ \xdef\temp@{pi}
+ \ifx\fourth@\temp@ \xdef\show@Istride{\second@}\fi
+ \xdef\temp@{beta}
+ \ifx\fourth@\temp@ \xdef\show@Estride{\second@}\fi
+ \xdef\temp@{bridge}
+ \ifx\fourth@\temp@ \xdef\show@Bstride{\second@}\fi
+ \xdef\temp@{turn}
+ \ifx\fourth@\temp@ \xdef\show@Tstride{\second@}\fi
+ \show@STRIDE
+ \fi}
+\def\show@PHDtopo{%
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\temp@{internal}
+ \ifx\fourth@\temp@ \xdef\show@itop{\second@}\fi
+ \xdef\temp@{external}
+ \ifx\fourth@\temp@ \xdef\show@etop{\second@}\fi
+ \xdef\temp@{TM}
+ \ifx\fourth@\temp@ \xdef\show@TMtop{\second@}\fi
+ \show@PHDtopo
+ \fi}
+\def\show@PHDsec{%
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\temp@{alpha}
+ \ifx\fourth@\temp@ \xdef\show@Hsec{\second@}\fi
+ \xdef\temp@{beta}
+ \ifx\fourth@\temp@ \xdef\show@Esec{\second@}\fi
+ \show@PHDsec
+ \fi}
+\def\get@triplet#1,#2@{%
+ \xdef\third@{#1}
+ \ifx\third@\ampers@nd
+ \else
+ \expandafter\xdef\csname @\third@\endcsname{\first@}
+ \expandafter\xdef\csname rev@\first@\endcsname{\third@}
+ \xdef\fourth@{#2,&,@}
+ \expandafter\get@triplet\fourth@
+ \fi}
+
+\def\get@name@number{%
+ \xdef\second@{n}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\ifx\csname newseqname\the\loopcount\endcsname\first@
+ \xdef\first@{\the\loopcount} \loopcount=\seq@count
+ \xdef\second@{y}
+ \fi
+ \ifnum\loopcount=\seq@count \else \repeat
+ \ifx\second@\n@
+ \message{<Sequence name `\first@' was not found, using first sequence.>}
+ \xdef\first@{1}
+ \fi
+}
+
+%%%%% Definition of user commands
+
+\def\clearfuncgroups{\xdef\prfx{func} \clear@groups \xdef\fgroup@num{0}}
+\clearfuncgroups
+\def\germanlanguage{\germ@ntrue \sp@nishfalse \def\cons@name{Konsensus}}
+\def\spanishlanguage{\germ@nfalse \sp@nishtrue \def\cons@name{consenso}}
+\def\englishlanguage{\germ@nfalse \sp@nishfalse \def\cons@name{consensus}}
+\def\showlegend{\legend@true}
+\def\hidelegend{\legend@false}
+\def\movelegend#1#2{%
+ \setlength\hspace@legend{#1}
+ \setlength\vspace@legend{#2}
+}
+\newcommand{\showcaption}[2][bottom]{\def\cap@pos{#1}\def\c@p{#2}}
+\def\shortcaption#1{\def\c@pshort{#1}}
+\def\funcgroup#1#2#3#4#5#6{%
+ \xdef\first@{#1}
+ \loopcount=0 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \ifx\csname fgroup@name\the\loopcount\endcsname\first@
+ \innerloopcount=\loopcount \loopcount=\fgroup@num
+ \fi
+ \ifnum\loopcount<\fgroup@num \repeat
+ \ifnum\innerloopcount=0
+ \ifnum\fgroup@num<9
+ \innerloopcount=\fgroup@num
+ \advance\innerloopcount by 1 \xdef\fgroup@num{\the\innerloopcount}
+ \else \message{<Too many \noexpand\funcgroups>}
+ \fi
+ \fi
+ \ifnum\innerloopcount>0
+ \expandafter\xdef\csname fgroup@name\the\innerloopcount\endcsname{\first@}
+ \expandafter\xdef\csname fg@textcolor\the\innerloopcount\endcsname{#3}
+ \expandafter\xdef\csname fg@color\the\innerloopcount\endcsname{#4}
+ \expandafter\xdef\csname funcm@tch\the\innerloopcount\endcsname{#5}
+ \expandafter\def\csname func@style\the\innerloopcount\endcsname{%
+ \csname text#6\endcsname}
+ \xdef\prfx{func}
+ \xdef\third@{#2&,@} \loopcount=\innerloopcount
+ \expandafter\group@get\third@
+ \fi}
+\def\pepgroups#1{%
+ \xdef\prfx{pep}
+ \clear@groups
+ \xdef\third@{#1&,@} \loopcount=0
+ \loop \expandafter\group@get\third@ \advance\loopcount by 1
+ \ifnum\loopcount<10 \repeat}
+\def\DNAgroups#1{%
+ \xdef\prfx{DNA}
+ \clear@groups
+ \xdef\third@{#1&,@} \loopcount=0
+ \loop \expandafter\group@get\third@ \advance\loopcount by 1
+ \ifnum\loopcount<10 \repeat}
+\def\pepsims#1#2{\xdef\prfx{pep}
+ \def\sim@set{\expandafter\residue@get\second@
+ \ifx\first@\ampers@nd
+ \else \advance\innerloopcount by 1
+ \xdef\second@{\csname sequence\the\loopcount\endcsname} \sim@set
+ \fi}
+ \xdef\first@{#1} \make@upper \xdef\third@{\first@}
+ \xdef\last@{#2} \xdef\second@{#2 &@} \innerloopcount=0 \sim@set
+ \expandafter\xdef\csname \prfx sim\third@\endcsname{%
+ (\the\innerloopcount)\last@}}
+\def\DNAsims#1#2{\xdef\prfx{DNA}
+ \def\sim@set{\expandafter\residue@get\second@
+ \ifx\first@\ampers@nd
+ \else \advance\innerloopcount by 1
+ \xdef\second@{\csname sequence\the\loopcount\endcsname} \sim@set
+ \fi}
+ \xdef\first@{#1} \make@upper \xdef\third@{\first@}
+ \xdef\last@{#2} \xdef\second@{#2 &@} \innerloopcount=0 \sim@set
+ \expandafter\xdef\csname \prfx sim\third@\endcsname{%
+ (\the\innerloopcount)\last@}}
+\def\fingerprint#1{%
+ \ifnum #1 >0
+ \residuesperline*{#1}
+ \def\finger@linenum{#1}
+ \shownames{left}
+ \hidenumbering
+ \rulersteps{100}
+ \nomatchresidues{}{Gray10}{}{}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \separationline{\the\loopcount}
+ \ifnum\loopcount<\seq@count\repeat
+ \fi}
+\def\shaderegion#1#2#3#4{%
+ \regionalshadetrue
+ \xdef\seq@{#1}
+ \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+ \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+ \xdef\first@{\seq@}
+ \ifletter \get@name@number \xdef\seq@{\first@} \fi
+ \ifnum\seq@>\seq@count
+ \message{<Ignored `\seq@' in \noexpand\shaderegion or \noexpand\shadeblock>}
+ \else
+ \ifx\@ll\yes \xdef\@ll{y}\else \xdef\@ll{n}\fi
+ \loopcount=\seq@regions
+ \advance\loopcount by 1
+ \xdef\seq@regions{\the\loopcount}
+ \expandafter\xdef\csname fgseqregion\the\loopcount\endcsname{#3}
+ \expandafter\xdef\csname bgseqregion\the\loopcount\endcsname{#4}
+ \xdef\list@{#2,&}
+ \loop
+ \xdef\list@{\list@ @}
+ \expandafter\get@regions\list@
+ \ifx\list@\ampers@nd\else\repeat
+ \fi
+}
+\def\shadeblock#1#2#3#4{%
+ \xdef\seq@{#1}
+ \xdef\@ll{yes}
+ \shaderegion{#1}{#2}{#3}{#4}
+ \xdef\@ll{}
+}
+\def\tintregion#1#2{%
+ \xdef\seq@{#1}
+ \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+ \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+ \xdef\first@{\seq@}
+ \ifletter \get@name@number \xdef\seq@{\first@} \fi
+ \ifnum\seq@>\seq@count
+ \message{<Ignored seq `\seq@' in \noexpand\tintregion or \noexpand\tintblock>}
+ \else
+ \ifx\@ll\yes \xdef\@ll{y}\else \xdef\@ll{n}\fi
+ \xdef\list@{#2,&}
+ \loop
+ \xdef\list@{\list@ @}
+ \expandafter\get@tintregions\list@
+ \ifx\list@\ampers@nd\else\repeat
+ \fi
+}
+\def\tintblock#1#2{%
+ \xdef\seq@{#1}
+ \xdef\@ll{yes}
+ \tintregion{#1}{#2}
+ \xdef\@ll{}
+}
+\def\tintdefault#1{%
+ \xdef\first@{#1}
+ \xdef\second@{strong}
+ \ifx\first@\second@
+ \xdef\light@{LightLightLight}
+ \else
+ \xdef\second@{medium}
+ \ifx\first@\second@
+ \xdef\light@{LightLight}
+ \else
+ \xdef\second@{weak}
+ \ifx\first@\second@
+ \xdef\light@{Light}
+ \else
+ \xdef\light@{LightLight}
+ \fi\fi\fi
+}
+\def\emphregion#1#2{%
+ \xdef\seq@{#1}
+ \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+ \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+ \xdef\first@{\seq@}
+ \ifletter \get@name@number \xdef\seq@{\first@} \fi
+ \ifnum\seq@>\seq@count
+ \message{<Ignored seq `\seq@' in \noexpand\emphregion or \noexpand\emphblock>}
+ \else
+ \ifx\@ll\yes \xdef\@ll{y}\else \xdef\@ll{n}\fi
+ \xdef\list@{#2,&}
+ \loop
+ \xdef\list@{\list@ @}
+ \expandafter\get@emphregions\list@
+ \ifx\list@\ampers@nd\else\repeat
+ \fi
+}
+\def\emphblock#1#2{%
+ \xdef\seq@{#1}
+ \xdef\@ll{yes}
+ \emphregion{#1}{#2}
+ \xdef\@ll{}
+}
+\def\emphdefault#1{\def\res@style{\csname text#1\endcsname}}
+\def\frameblock#1#2#3{%
+ \xdef\seq@{#1}
+ \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+ \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+ \xdef\first@{\seq@}
+ \ifletter \get@name@number \xdef\seq@{\first@} \fi
+ \ifnum\seq@>\seq@count
+ \message{<Ignored seq `\seq@' in \noexpand\frameblock>}
+ \else
+ \xdef\@ll{#3}
+ \xdef\list@{#2,&}
+ \loop
+ \xdef\list@{\list@ @}
+ \expandafter\get@frameregions\list@
+ \ifx\list@\ampers@nd\else\repeat
+ \fi
+}
+\def\bargraphstretch#1{\def\b@r@stretch{#1}}
+\def\colorscalestretch#1{\def\sc@le@stretch{#1}}
+\def\rm@@measure#1#2@{%
+ \xdef\test@{#1}
+ \ifx\test@\ampers@nd
+ \else
+ \expandafter\check@char\test@
+ \ifnumber\xdef\first@{\first@ #1}
+ \xdef\second@{#2 &@}
+ \expandafter\rm@@measure\second@
+ \fi
+ \fi
+}
+\def\rm@measure#1.#2@{\xdef\first@{#1.}\xdef\second@{#2 @}\xdef\third@{#1}\expandafter\rm@@measure\second@}
+\def\pm@calc{%
+ \temp@@length=100000sp
+ \temp@@length=\g@min\temp@@length
+ \innerloopcount=\temp@@length
+ \xdef\min@{\the\innerloopcount}
+ \arrow@height=\temp@@length
+ \temp@@length=100000sp
+ \temp@@length=\g@max\temp@@length
+ \advance\temp@@length by -\arrow@height
+ \innerloopcount=\temp@@length
+ \divide\innerloopcount by 100
+ \ifnum\innerloopcount=0 \innerloopcount=1 \fi
+ \xdef\m@x{\the\innerloopcount}
+ \xdef\test@{\g@min pt}
+ \setlength\arrow@width{\test@}
+ \xdef\test@{\g@max pt}
+ \setlength\arrow@height{\test@}
+ \advance\arrow@height by -\arrow@width
+ \ifdim\arrow@width<0pt\temp@@length=-\arrow@width\xdef\test@{y}\else\temp@@length=\arrow@width\xdef\test@{n}\fi
+ \ifdim\arrow@height>0pt
+ \ifx\test@\n@ \xdef\test@{y} \else \xdef\test@{n} \fi
+ \ifdim\temp@@length<\arrow@height\temp@@length=\arrow@height\fi
+ \else
+ \ifdim\temp@@length>-\arrow@height\temp@@length=\arrow@height\fi
+ \fi
+ \ifdim\temp@@length<100pt\arrow@width=100\arrow@width\arrow@height=100\arrow@height\else
+ \ifdim\temp@@length<10pt\arrow@width=1000\arrow@width\arrow@height=1000\arrow@height\else
+ \ifdim\temp@@length<1pt\arrow@width=10000\arrow@width\arrow@height=10000\arrow@height\else
+ \ifdim\temp@@length<0.1pt\arrow@width=100000\arrow@width\arrow@height=100000\arrow@height\else
+ \ifdim\temp@@length<0.01pt\arrow@width=1000000\arrow@width \arrow@height=1000000\arrow@height\else
+ \ifdim\temp@@length<0.001pt\arrow@width=10000000\arrow@width \arrow@height=10000000\arrow@height\else
+ \ifdim\temp@@length<0.0001pt\arrow@width=100000000\arrow@width \arrow@height=100000000\arrow@height\else
+ \ifdim\temp@@length<0.00001pt\arrow@width=1000000000\arrow@width \arrow@height=1000000000\arrow@height
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \ifx\test@\y@
+ \xdef\pm@{0}
+ \else
+ \xdef\test@{-\the\arrow@height @}
+ \expandafter\rm@measure\test@
+ \divide\arrow@width by \third@
+ \xdef\pm@{\the\arrow@width @}
+ \expandafter\rm@measure\pm@
+ \xdef\pm@{\first@}
+ \fi
+}
+\def\read@graph{%
+ \bgroup
+ \immediate\openin\structurefile = \fill@char\relax
+ \ifeof\structurefile
+ \PackageError{TeXshade}
+ {File `\fill@char' not found}
+ {\MessageBreak
+ The file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ No feature graph will be displayed. \MessageBreak
+ Type <return> to proceed. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \immediate\closein\structurefile\egroup
+ \else
+ \ifx\g@min\comm@
+ \def\par@{}
+ \xdef\g@min{,} \xdef\g@max{,}
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \ifx\test@\par@
+ \else
+ \xdef\second@{\test@ @}
+ \expandafter\check@letter\second@
+ \ifletter
+ \xdef\second@{\expandafter\string\readline}
+ \xdef\second@{\second@ @}
+ \expandafter\firstchar@get\second@
+ \if\first@ - \numbertrue\fi
+ \fi
+ \ifnumber
+ \temp@@length=1pt
+ \temp@@length=\test@\temp@@length
+ \innerloopcount=\temp@@length
+ \ifx\g@min\comm@ \xdef\min@{\test@ pt} \xdef\g@min{\test@}
+ \else
+ \ifdim\temp@@length<\min@\relax \xdef\min@{\the\temp@@length} \xdef\g@min{\test@} \fi\fi%
+ \ifx\g@max\comm@ \xdef\m@x{\test@ pt} \xdef\g@max{\test@}
+ \else
+ \ifdim\temp@@length>\m@x\relax \xdef\m@x{\the\temp@@length} \xdef\g@max{\test@} \fi\fi%
+ \fi
+ \fi
+ \ifeof\structurefile\else\repeat
+ \fi
+ \immediate\closein\structurefile
+ \pm@calc
+ \expandafter\temp@count=\csname seq@start\seq@\endcsname
+ \advance\temp@count by -1
+ \xdef\temp@@@{n}
+ \immediate\openin\structurefile = \fill@char\relax
+ \loop
+ \read\structurefile to \readline
+ \xdef\test@{\expandafter\string\readline}
+ \ifx\test@\par@
+ \else
+ \xdef\second@{\test@ @}
+ \expandafter\check@letter\second@
+ \ifletter
+ \xdef\second@{\expandafter\string\readline}
+ \xdef\second@{\second@ @}
+ \expandafter\firstchar@get\second@
+ \if\first@ - \numbertrue
+ \else
+ \if\first@ N
+ \expandafter\firstchar@get\third@
+ \if\first@ a
+ \expandafter\firstchar@get\third@
+ \if\first@ N
+ \advance\temp@count by 1
+ \ifnum\temp@count=0 \temp@count=1 \fi
+ \ifnum\temp@count<\st@rt
+ \else
+ \ifnum\temp@count>\st@p
+ \else
+ \ifx\temp@@@\n@
+ \xdef\temp@@@{N}
+ \else
+ \xdef\temp@@@{\temp@@@,N}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifnumber
+ \advance\temp@count by 1
+ \ifnum\temp@count=0 \temp@count=1 \fi
+ \ifnum\temp@count<\st@rt
+ \else
+ \ifnum\temp@count>\st@p
+ \else
+ \temp@@length=100000sp
+ \temp@@length=\test@\temp@@length
+ \innerloopcount=\temp@@length
+ \advance\innerloopcount by 1
+ \xdef\test@{\pm@ pt}
+ \ifdim\test@=0pt
+ \advance\innerloopcount by -\min@
+ \else
+ \ifx\b@r\n@
+ \advance\innerloopcount by -\min@
+ \fi
+ \fi
+ \divide\innerloopcount by \m@x
+ \ifx\temp@@@\n@
+ \xdef\temp@@@{\the\innerloopcount}
+ \else
+ \xdef\temp@@@{\temp@@@,\the\innerloopcount}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifeof\structurefile\else\repeat
+ \immediate\closein\structurefile
+ \xdef\temp@@@{\temp@@@,@} \xdef\temp@@{y}
+ \fi
+ \egroup
+}
+\def\sort@gstack{%
+ \expandafter\get@fromstack\last@
+ \ifx\first@\ampers@nd
+ \xdef\tmpstack{\tmpstack\f@text@&;&;&;&;@}
+ \else
+ \ifnum\loopcount<\second@
+ \xdef\tmpstack{\tmpstack\f@text@\first@;\second@;\third@;\fourth@;\last@}
+ \else
+ \xdef\tmpstack{\tmpstack\first@;\second@;\third@;\fourth@;}
+ \sort@gstack
+ \fi\fi
+}
+\def\get@gregion#1..#2,#3&{%
+ \xdef\st@rt{#1} \xdef\st@p{#2} \xdef\list@{#3}
+}
+\def\do@bargraph{%
+ \expandafter\get@gregion\list@
+ \expandafter\ifnum\csname seq@start\seq@\endcsname>\st@rt
+ \else
+ \xdef\temp@@{n}
+ \xdef\b@r{y}
+ \xdef\pm@{0}
+ \xdef\temp@@@{\fill@char,@}
+ \expandafter\check@letter\temp@@@
+ \ifletter
+ \read@graph
+ \else
+ \ifx\g@min\comm@ \xdef\g@min{0} \fi
+ \ifx\g@max\comm@ \xdef\g@max{100} \fi
+ \pm@calc
+ \xdef\temp@@@{\fill@char,@}
+ \xdef\temp@@{y}
+ \fi
+ \ifx\temp@@\y@
+ \loopcount=\st@rt
+ \xdef\tmpstack{}
+ \loop
+ \expandafter\get@item\temp@@@
+ \xdef\temp@@@{\first@}
+ \xdef\style@{bar[\pm@,0]:\fourth@[\f@color]}
+ \xdef\tmpstack{\tmpstack\f@text@;\the\loopcount;\the\loopcount;\style@;}
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \loopcount=1 \fi
+ \ifnum\loopcount>\st@p
+ \else\repeat
+ \xdef\f@text@{\tmpstack} \xdef\tmpstack{}
+ \xdef\last@{\csname stack@\bottop@\seq@\endcsname}
+ \sort@gstack
+ \expandafter\xdef\csname stack@\bottop@\seq@\endcsname{\tmpstack}
+ \fi
+ \fi
+ \xdef\list@{\list@ &}
+ \ifx\list@\ampers@nd\else\do@bargraph\fi
+}
+\def\do@colorgraph{%
+ \expandafter\get@gregion\list@
+ \expandafter\ifnum\csname seq@start\seq@\endcsname>\st@rt
+ \else
+ \xdef\temp@@{n}
+ \xdef\b@r{n}
+ \xdef\pm@{0}
+ \xdef\temp@@@{\fill@char,@}
+ \expandafter\check@letter\temp@@@
+ \ifletter
+ \read@graph
+ \else
+ \ifx\g@min\comm@ \xdef\g@min{0} \fi
+ \ifx\g@max\comm@ \xdef\g@max{100} \fi
+ \pm@calc
+ \xdef\temp@@@{\fill@char,@}
+ \xdef\temp@@{y}
+ \fi
+ \ifx\temp@@\y@
+ \loopcount=\st@rt
+ \xdef\tmpstack{}
+ \loop
+ \xdef\last@{\csname stack@\bottop@\seq@\endcsname}
+ \expandafter\get@item\temp@@@
+ \xdef\temp@@@{\first@}
+ \ifx\fourth@\N@
+ \xdef\style@{color:50[White]}
+ \else
+ \ifnum\fourth@<1 \xdef\fourth@{1} \fi
+ \innerloopcount=\fourth@
+ \advance\innerloopcount by 4
+ \divide\innerloopcount by 5
+ \multiply\innerloopcount by 5
+ \ifnum\innerloopcount>100 \innerloopcount=100 \fi
+ \xdef\style@{color:50[\f@color\the\innerloopcount]}
+ \fi
+ \xdef\tmpstack{\tmpstack\f@text@;\the\loopcount;\the\loopcount;\style@;}
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \loopcount=1 \fi
+ \ifnum\loopcount>\st@p
+ \else\repeat
+ \xdef\f@text@{\tmpstack} \xdef\tmpstack{}
+ \xdef\last@{\csname stack@\bottop@\seq@\endcsname}
+ \sort@gstack
+ \expandafter\xdef\csname stack@\bottop@\seq@\endcsname{\tmpstack}
+ \fi
+ \fi
+ \xdef\list@{\list@ &}
+ \ifx\list@\ampers@nd\else\do@colorgraph\fi
+}
+\def\feature#1#2#3#4#5{%
+ \xdef\bottop@{#1}
+ \xdef\temp@{top}
+ \ifx\bottop@\temp@ \topfeaturetrue\fi
+ \xdef\temp@{ttop}
+ \ifx\bottop@\temp@ \ttopfeaturetrue\fi
+ \xdef\temp@{bottom}
+ \ifx\bottop@\temp@ \bottomfeaturetrue\fi
+ \xdef\temp@{bbottom}
+ \ifx\bottop@\temp@ \bbottomfeaturetrue\fi
+ \xdef\seq@{#2}
+ \xdef\temp@{consensus} \ifx\seq@\temp@ \xdef\seq@{0} \fi
+ \xdef\first@{\seq@ @} \expandafter\check@letter\first@
+ \xdef\first@{\seq@}
+ \ifletter \get@name@number \xdef\seq@{\first@} \fi
+ \ifnum\seq@>\seq@count
+ \message{<Ignored seq `\seq@' in \noexpand\feature>}
+ \else
+ \ifnum\seq@>-1
+ \xdef\temp@{#4::&}\expandafter\test@fill\temp@
+ \xdef\last@{bar}
+ \ifx\second@@\last@
+ \xdef\last@{hydrophobicity}
+ \ifx\last@\fourth@
+ \xdef\second@@{bh}
+ \else
+ \xdef\last@{molweight}
+ \ifx\last@\fourth@
+ \xdef\second@@{bm}
+ \else
+ \xdef\last@{charge}
+ \ifx\last@\fourth@
+ \xdef\second@@{bc}
+ \else
+ \xdef\last@{conservation}
+ \ifx\last@\fourth@
+ \xdef\second@@{bcons}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\last@{color}
+ \ifx\second@@\last@
+ \xdef\last@{hydrophobicity}
+ \ifx\last@\fourth@
+ \xdef\second@@{ch}
+ \else
+ \xdef\last@{molweight}
+ \ifx\last@\fourth@
+ \xdef\second@@{cm}
+ \else
+ \xdef\last@{charge}
+ \ifx\last@\fourth@
+ \xdef\second@@{cc}
+ \else
+ \xdef\last@{conservation}
+ \ifx\last@\fourth@
+ \xdef\second@@{ccons}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\last@{bar}
+ \ifx\second@@\last@
+ \xdef\list@{#3,&}
+ \xdef\style@{#4}
+ \xdef\f@text@{#5}
+ \do@bargraph
+ \xdef\temp@{bottom}
+ \ifx\bottop@\temp@ \xdef\bottom@stretch{y}\fi
+ \xdef\temp@{bbottom}
+ \ifx\bottop@\temp@ \xdef\bbottom@stretch{y}\fi
+ \else
+ \xdef\last@{color}
+ \ifx\second@@\last@
+ \xdef\list@{#3,&}
+ \xdef\style@{#4}
+ \xdef\f@text@{#5}
+ \do@colorgraph
+ \else
+ \xdef\f@text@{#5}
+ \xdef\list@{#3,&}
+ \xdef\temp@{#4&}
+ \ifx\temp@\ampers@nd
+ \xdef\style@{&}
+ \else
+ \xdef\last@{restriction}
+ \ifx\second@@\last@
+ \xdef\temp@{\bottop@ @}
+ \expandafter\firstchar@get\temp@
+ \xdef\temp@{y}
+ \if\first@ t
+ \xdef\style@{fill:\kern0.9\box@width$\blacktriangledown$[\f@color]}
+ \else
+ \xdef\style@{fill:\kern0.9\box@width$\blacktriangle$[\f@color]}
+ \fi
+ \xdef\f@text@{\kern0.9\box@width#5}
+ \else
+ \xdef\last@{bh}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{Gray50}\fi
+ \xdef\style@{plot[bar]:Hydro[\f@color][-53]}
+ \else
+ \xdef\last@{bm}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{Gray50}\fi
+ \xdef\style@{plot[bar]:molw[\f@color][0]}
+ \else
+ \xdef\last@{bc}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{Gray50}\fi
+ \xdef\style@{plot[bar]:charge[\f@color][-50]}
+ \else
+ \xdef\last@{bcons}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{Gray50}\fi
+ \xdef\style@{cons[bar]:cons[\f@color][0]}
+ \else
+ \xdef\last@{ch}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{RedGreen}\fi
+ \xdef\style@{plot[color]:Hydro[\f@color][-53]}
+ \else
+ \xdef\last@{cm}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{Gray}\fi
+ \xdef\style@{plot[color]:molw[\f@color][0]}
+ \else
+ \xdef\last@{cc}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{RedBlue}\fi
+ \xdef\style@{plot[color]:charge[\f@color][-50]}
+ \else
+ \xdef\last@{ccons}
+ \ifx\second@@\last@
+ \ifx\f@color\gr@ydef@ult\xdef\f@color{ColdHot}\fi
+ \xdef\style@{cons[color]:cons[\f@color][0]}
+ \else
+ \xdef\style@{#4} \expandafter\getarrow@shape\temp@
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \loop
+ \xdef\list@{\list@ @}
+ \expandafter\get@fregions\list@
+ \ifx\list@\ampers@nd\else\repeat
+ \fi\fi\fi
+ \fi
+}
+\def\seqtype#1{\xdef\seq@type{#1}
+ \if\seq@type P \xdef\prefix@{pep}
+ \else \if\seq@type p \xdef\seq@type{P} \xdef\prefix@{pep}
+ \else \xdef\seq@type{N} \xdef\prefix@{DNA} \fi\fi}
+\def\nameseq#1#2{%
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname newseqname\first@\endcsname{#2}
+}
+\def\threshold#1{\xdef\thresh@ld{#1}}
+\def\constosingleseq#1{%
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1} \ifletter \get@name@number \fi
+ \ifnum\first@>\seq@count
+ \message{<Ignored seq `#1' in \noexpand\constosingleseq>}
+ \else
+ \ifnum\first@>0 \xdef\cons@num{\first@} \hideconsensus\fi\fi
+}
+\def\constoallseqs{\xdef\cons@num{0}}
+\def\residuesperline{%
+ \def\@rplfix*##1{%
+ \res@perline=##1
+ \ifnum\res@perline<1 \res@perline=1\fi \rpl@fixtrue}
+ \def\@rplvar ##1{%
+ \res@perline=##1
+ \ifnum\res@perline<5 \res@perline=5\fi \rpl@fixfalse}
+ \def\decide@{\ifx\l@@k * \let\next\@rplfix \else \let\next\@rplvar \fi \next}
+ \futurelet\l@@k\decide@}
+\def\numberingwidth#1{\def\num@width{#1}}
+\def\charstretch#1{\def\char@stretch{#1}}
+\def\linestretch#1{\def\line@stretch{#1}}
+\def\noblockskip{\def\block@skip{\vspace{0pt}}}
+\def\smallblockskip{\def\block@skip{\vspace{\baselineskip}}}
+\def\medblockskip{\def\block@skip{\vspace{1.5\baselineskip}}}
+\def\bigblockskip{\def\block@skip{\vspace{2\baselineskip}}}
+\def\vblockspace#1{\def\block@skip{\vspace{#1}}}
+\def\topspace#1{\def\t@sp@ce{#1}}
+\def\ttopspace#1{\def\tt@sp@ce{#1}}
+\def\bottomspace#1{\def\b@sp@ce{#1}}
+\def\bbottomspace#1{\def\bb@sp@ce{#1}}
+\def\fixblockspace{\fix@true}
+\def\flexblockspace{\fix@false}
+\def\nosepline{\def\seq@skip{\relax}}
+\def\smallsepline{\def\seq@skip{\vspace{3pt}}\def\sep@space{3pt}}
+\def\medsepline{\def\seq@skip{\vspace{6pt}}\def\sep@space{6pt}}
+\def\bigsepline{\def\seq@skip{\vspace{12pt}}\def\sep@space{12pt}}
+\def\vsepspace#1{\def\seq@skip{\vspace{#1}}\xdef\sep@space{#1}}
+\def\separationline#1{%
+ \xdef\start@seq{#1}
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1}
+ \ifletter \get@name@number \xdef\start@seq{\first@} \fi
+ \ifnum\start@seq>\seq@count \xdef\start@seq{1}
+ \else
+ \ifnum\start@seq<0 \xdef\start@seq{1}
+ \else
+ \expandafter\def\csname seq@gap\start@seq\endcsname{yes}
+ \loopcount=\seq@gap@num
+ \advance\loopcount by 1
+ \xdef\seq@gap@num{\the\loopcount}
+ \fi
+ \fi}
+\newcommand{\shadingmode}[2][1]{%
+ \xdef\last@{#2}
+ \xdef\first@{identical}
+ \all@shadefalse
+ \ifx\first@\last@
+ \simmodefalse \funcmodefalse
+ \xdef\last@{#1} \xdef\second@{allmatchspecial}
+ \ifx\second@\last@ \all@shadetrue \fi
+ \else
+ \xdef\first@{similar}
+ \ifx\first@\last@
+ \simmodetrue \funcmodefalse
+ \xdef\last@{#1} \xdef\second@{allmatchspecial}
+ \ifx\second@\last@ \all@shadetrue \fi
+ \else
+ \xdef\first@{functional}
+ \ifx\first@\last@
+ \if\seq@type P \simmodefalse \funcmodetrue \func@shading{#1}
+ \else \message{<No functional shading on DNA sequences>} \fi
+ \else
+ \xdef\first@{diverse}
+ \ifx\first@\last@
+ \xdef\last@{#1}
+ \ifnum\last@>\seq@count \xdef\last@{1}\fi
+ \ifnum\last@<1 \xdef\last@{1}\fi
+ \simmodetrue \funcmodefalse
+ \threshold{0}
+ \donotshade{\last@} \constosingleseq{\last@}
+ \nomatchresidues{Black}{White}{lower}{up}
+ \similarresidues{Black}{White}{lower}{up}
+ \conservedresidues{Black}{White}{{.}}{up}
+ \allmatchresidues{Black}{White}{{.}}{up}
+ \gapchar{-}
+ \hideconsensus
+ \else
+ \message{<Unknown shading mode. Using `similar'>}
+ \simmodetrue \funcmodefalse
+ \fi\fi\fi\fi}
+\def\allmatchspecial{\all@shadetrue}
+\def\allmatchspecialoff{\all@shadefalse}
+\def\gapchar#1{%
+ \xdef\first@{rule}\xdef\second@{#1}
+ \ifx\first@\second@\def\gap@char{o}
+ \else\def\gap@char{#1}\fi}
+\def\gaprule#1{\def\gap@rulethick{#1}}
+\def\setends#1#2{%
+ \xdef\start@seq{#1}
+ \xdef\temp@{consensus}
+ \ifx\start@seq\temp@ \xdef\start@seq{0} \fi
+ \xdef\first@{\start@seq @} \expandafter\check@letter\first@
+ \xdef\first@{\start@seq}
+ \ifletter \get@name@number \xdef\start@seq{\first@} \fi
+ \ifnum\start@seq>\seq@count \xdef\start@seq{1}
+ \else
+ \ifnum\start@seq<0 \xdef\start@seq{1}
+ \else
+ \xdef\second@{#2@} \expandafter\get@nums\second@
+ \xdef\start@num{\first@} \xdef\end@num{\second@}
+ \start@false
+ \fi
+ \fi}
+\def\startnumber#1#2{%
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1} \ifletter \get@name@number \fi
+ \ifnum\first@>\seq@count \message{<Ignored seq `#1' in \noexpand\startnumber>}
+ \else
+ \xdef\second@{#2} \ifnum\second@=0 \xdef\second@{1} \fi
+ \expandafter\xdef\csname seq@start\first@\endcsname{\second@}
+ \csname res@count\first@\endcsname=\second@
+ \advance\csname res@count\first@\endcsname by -1
+ \fi}
+\def\seqlength#1#2{%
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1} \ifletter \get@name@number \fi
+ \ifnum\first@>\seq@count \message{<Ignored seq `#1' in \noexpand\seqlength>}
+ \else
+ \xdef\second@{#2} \ifnum\second@<0 \xdef\second@{1} \fi
+ \expandafter\xdef\csname seq@len\first@\endcsname{\second@}
+ \fi}
+\def\shownumbering#1{%
+ \xdef\first@{#1} \xdef\second@{right}
+ \ifx\first@\second@ \numbers@leftfalse \else \numbers@lefttrue \fi
+ \numbers@true}
+\def\hidenumbering{\numbers@false}
+\def\hidenumber#1{\xdef\first@{#1,&,@} \hidenumber@}
+\def\shownames#1{%
+ \xdef\first@{#1} \xdef\second@{left}
+ \ifx\first@\second@ \names@rightfalse \else \names@righttrue \fi
+ \names@true}
+\def\hidenames{\names@false}
+\def\hidename#1{\xdef\first@{#1,&,@} \hidename@}
+\def\hideresidues{\hidechartrue}
+\def\showresidues{\hidecharfalse}
+\def\alignment#1{%
+ \xdef\first@{#1}
+ \xdef\temp@{left}
+ \ifx\first@\temp@ \xdef\c@factor{0}
+ \else
+ \xdef\temp@{center}
+ \ifx\first@\temp@ \xdef\c@factor{0.5}
+ \else
+ \xdef\temp@{right}
+ \ifx\first@\temp@ \xdef\c@factor{1}
+ \fi\fi\fi}
+\def\donotshade#1{%
+ \xdef\temp@{consensus}
+ \xdef\first@{#1}
+ \ifx\first@\temp@
+ \consensuscolors{Black}{White}{Black}{White}{Black}{White}
+ \else
+ \xdef\first@{#1,&,@} \donot@shade
+ \fi}
+\def\hideseq#1{\xdef\first@{#1,&,@} \hideseq@}
+\def\killseq#1{\xdef\first@{#1,&,@} \killseq@}
+\newcommand\showconsensus[2][n]{%
+ \xdef\text@scale{n}
+ \xdef\box@scale{n}
+ \xdef\first@{#1}
+ \ifx\first@\n@
+ \xdef\collect@cons@colors{no}
+ \else
+ \xdef\first@{#1,&,@}
+ \expandafter\get@item\first@
+ \xdef\c@nsc@l{\fourth@}
+ \xdef\first@@{Gray}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{RedBlue}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{BlueRed}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{RedGreen}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{GreenRed}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{ColdHot}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}\else
+ \xdef\first@@{HotCold}
+ \ifx\c@nsc@l\first@@\xdef\text@scale{y}
+ \fi\fi\fi\fi\fi\fi\fi
+ \expandafter\get@item\first@
+ \ifx\fourth@\ampers@nd
+ \xdef\c@nssc@le{White}
+ \else
+ \xdef\c@nssc@le{\fourth@}
+ \xdef\first@{Gray}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{RedBlue}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{BlueRed}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{RedGreen}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{GreenRed}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{ColdHot}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \xdef\first@{HotCold}
+ \ifx\c@nssc@le\first@\xdef\box@scale{y}\else
+ \fi\fi\fi\fi\fi\fi\fi
+ \fi
+ \xdef\collect@cons@colors{y}
+ \fi
+ \xdef\first@{#2} \xdef\last@{top}
+ \ifx\first@\last@\xdef\cons@top{0}\else\xdef\cons@top{1}\fi
+ \show@construe}
+\def\consensuscolors#1#2#3#4#5#6{%
+ \xdef\last@{\ampers@nd}
+ \xdef\first@{#1&}\xdef\second@{#2&}
+ \ifx\first@\last@\else\def\ConsTextNomatch{#1}\fi
+ \ifx\second@\last@\else\def\ConsNomatch{#2}\fi
+ \xdef\first@{#3&}\xdef\second@{#4&}
+ \ifx\first@\last@\else\def\ConsTextMatch{#3}\fi
+ \ifx\second@\last@\else\def\ConsMatch{#4}\fi
+ \xdef\first@{#5&}\xdef\second@{#6&}
+ \ifx\first@\last@\else\def\ConsTextAllmatch{#5}\fi
+ \ifx\second@\last@\else\def\ConsAllmatch{#6}\fi
+}
+\def\defconsensus#1#2#3{%
+ \xdef\second@{#1&}
+ \ifx\second@\ampers@nd \else \def\n@m@tch{#1}\fi
+ \xdef\second@{#2&}
+ \ifx\second@\ampers@nd \else \def\m@tch{#2}\fi
+ \xdef\second@{#3&}
+ \ifx\second@\ampers@nd \else \def\@llm@tch{#3}\fi}
+\def\hideconsensus{\show@consfalse}
+\def\nameconsensus#1{\def\cons@name{#1}}
+\def\hideleadinggaps{\sh@wg@psfalse}
+\def\showleadinggaps{\sh@wg@pstrue}
+\def\showruler#1#2{%
+ \xdef\first@{consensus} \xdef\second@{#2}
+ \xdef\third@{bottom} \xdef\fourth@{#1}
+ \ifx\third@\fourth@ \xdef\rule@top{1}\else\xdef\rule@top{0}\fi
+ \ifx\first@\second@ \xdef\rule@num{0}
+ \else
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \ifnum\first@>\seq@count
+ \else
+ \ifnum\first@>0
+ \xdef\rule@num{\first@}
+ \fi
+ \fi
+ \fi
+ \xdef\ruler@{}}
+\def\hideruler{\xdef\rule@num{-1}}
+\def\rulersteps#1{\xdef\ruler@step{#1}}
+\def\featurerule#1{\setlength\rule@thick{#1}}
+\def\orderseqs#1{%
+ \def\order@loop{%
+ \expandafter\check@letter\first@
+ \ifletter
+ \expandafter\get@item\first@
+ \xdef\first@{\fourth@}
+ \get@name@number
+ \xdef\seq@order{\seq@order,\first@}
+ \xdef\first@{\first@@ @}
+ \order@loop
+ \else
+ \expandafter\get@digit\first@
+ \ifx\fourth@\ampers@nd
+ \else
+ \xdef\seq@order{\seq@order,\fourth@}
+ \order@loop
+ \fi
+ \fi}
+ \xdef\first@{#1,&,@}
+ \xdef\seq@order{}
+ \order@loop
+ \xdef\seq@order{\seq@order @}
+ \expandafter\get@item\seq@order
+ \xdef\seq@order{\first@@,@}
+}
+\def\setfamily#1#2{%
+ \xdef\second@{#2&}
+ \ifx\second@\ampers@nd
+ \else
+ \xdef\first@{#1}
+ \xdef\second@{#2}
+ \xdef\temp@{rm}
+ \ifx\second@\temp@
+ \xdef\third@{\rmdefault}
+ \else
+ \xdef\temp@{sf}
+ \ifx\second@\temp@
+ \xdef\third@{\sfdefault}
+ \else
+ \xdef\temp@{tt}
+ \ifx\second@\temp@
+ \xdef\third@{\ttdefault}
+ \else
+ \xdef\third@{\second@}
+ \fi\fi\fi
+ \xdef\temp@{features}
+ \ifx\first@\temp@ \xdef\featuretext@family{\third@}
+ \else
+ \xdef\temp@{featurestyles}
+ \ifx\first@\temp@ \xdef\featurestyles@family{\third@}
+ \else
+ \xdef\temp@{numbering}
+ \ifx\first@\temp@ \xdef\numbertext@family{\third@}
+ \else
+ \xdef\temp@{names}
+ \ifx\first@\temp@ \xdef\namestext@family{\third@}
+ \else
+ \xdef\temp@{residues}
+ \ifx\first@\temp@ \xdef\residues@family{\third@}
+ \else
+ \xdef\temp@{legend}
+ \ifx\first@\temp@ \xdef\legend@family{\third@}
+ \else
+ \xdef\temp@{labels}
+ \ifx\first@\temp@ \xdef\label@family{\third@}
+ \else
+ \xdef\temp@{all}
+ \ifx\first@\temp@
+ \xdef\featuretext@family{\third@}
+ \xdef\featurestyles@family{\third@}
+ \xdef\numbertext@family{\third@}
+ \xdef\namestext@family{\third@}
+ \xdef\residues@family{\third@}
+ \xdef\legend@family{\third@}
+ \xdef\label@family{\third@}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi
+}
+\def\setseries#1#2{%
+ \xdef\second@{#2&}
+ \ifx\second@\ampers@nd
+ \else
+ \xdef\first@{#1}
+ \xdef\second@{#2}
+ \xdef\temp@{bf}
+ \ifx\second@\temp@
+ \xdef\third@{\bfdefault}
+ \else
+ \xdef\temp@{md}
+ \ifx\second@\temp@
+ \xdef\third@{\mddefault}
+ \else
+ \xdef\third@{\second@}
+ \fi\fi
+ \xdef\temp@{features}
+ \ifx\first@\temp@ \xdef\featuretext@series{\third@}
+ \else
+ \xdef\temp@{featurestyles}
+ \ifx\first@\temp@ \xdef\featurestyles@series{\third@}
+ \else
+ \xdef\temp@{numbering}
+ \ifx\first@\temp@ \xdef\numbertext@series{\third@}
+ \else
+ \xdef\temp@{names}
+ \ifx\first@\temp@ \xdef\namestext@series{\third@}
+ \else
+ \xdef\temp@{residues}
+ \ifx\first@\temp@ \xdef\residues@series{\third@}
+ \else
+ \xdef\temp@{legend}
+ \ifx\first@\temp@ \xdef\legend@series{\third@}
+ \else
+ \xdef\temp@{labels}
+ \ifx\first@\temp@ \xdef\label@series{\third@}
+ \else
+ \xdef\temp@{all}
+ \ifx\first@\temp@
+ \xdef\featuretext@series{\third@}
+ \xdef\featurestyles@series{\third@}
+ \xdef\numbertext@series{\third@}
+ \xdef\namestext@series{\third@}
+ \xdef\residues@series{\third@}
+ \xdef\legend@series{\third@}
+ \xdef\label@series{\third@}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi
+}
+\def\setshape#1#2{%
+ \xdef\second@{#2&}
+ \ifx\second@\ampers@nd
+ \else
+ \xdef\first@{#1}
+ \xdef\second@{#2}
+ \xdef\temp@{it}
+ \ifx\second@\temp@
+ \xdef\third@{\itdefault}
+ \else
+ \xdef\temp@{sl}
+ \ifx\second@\temp@
+ \xdef\third@{\sldefault}
+ \else
+ \xdef\temp@{sc}
+ \ifx\second@\temp@
+ \xdef\third@{\scdefault}
+ \else
+ \xdef\temp@{up}
+ \ifx\second@\temp@
+ \xdef\third@{\updefault}
+ \else
+ \xdef\third@{\second@}
+ \fi\fi\fi\fi
+ \xdef\temp@{features}
+ \ifx\first@\temp@ \xdef\featuretext@shape{\third@}
+ \else
+ \xdef\temp@{featurestyles}
+ \ifx\first@\temp@ \xdef\featurestyles@shape{\third@}
+ \else
+ \xdef\temp@{numbering}
+ \ifx\first@\temp@ \xdef\numbertext@shape{\third@}
+ \else
+ \xdef\temp@{names}
+ \ifx\first@\temp@ \xdef\namestext@shape{\third@}
+ \else
+ \xdef\temp@{residues}
+ \ifx\first@\temp@ \xdef\residues@shape{\third@}
+ \else
+ \xdef\temp@{legend}
+ \ifx\first@\temp@ \xdef\legend@shape{\third@}
+ \else
+ \xdef\temp@{labels}
+ \ifx\first@\temp@ \xdef\label@shape{\third@}
+ \else
+ \xdef\temp@{all}
+ \ifx\first@\temp@
+ \xdef\featuretext@shape{\third@}
+ \xdef\featurestyles@shape{\third@}
+ \xdef\numbertext@shape{\third@}
+ \xdef\namestext@shape{\third@}
+ \xdef\residues@shape{\third@}
+ \xdef\legend@shape{\third@}
+ \xdef\label@shape{\third@}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi
+}
+\def\setsize#1#2{%
+ \xdef\second@{#2&}
+ \ifx\second@\ampers@nd
+ \else
+ \xdef\first@{#1}
+ \xdef\temp@{features}
+ \ifx\first@\temp@
+ \def\featuretext@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{featurestyles}
+ \ifx\first@\temp@
+ \def\featurestyles@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{numbering}
+ \ifx\first@\temp@
+ \def\numbertext@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{names}
+ \ifx\first@\temp@
+ \def\namestext@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{legend}
+ \ifx\first@\temp@
+ \def\legend@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{labels}
+ \ifx\first@\temp@
+ \def\label@size{\csname #2\endcsname}
+ \else
+ \xdef\temp@{residues}
+ \ifx\first@\temp@
+ \def\residues@size{\csname #2\endcsname}
+ \xdef\res@size{#2}
+ \else
+ \xdef\temp@{all}
+ \ifx\first@\temp@
+ \def\featuretext@size{\csname #2\endcsname}
+ \def\featurestyles@size{\csname #2\endcsname}
+ \def\numbertext@size{\csname #2\endcsname}
+ \def\namestext@size{\csname #2\endcsname}
+ \def\legend@size{\csname #2\endcsname}
+ \def\label@size{\csname #2\endcsname}
+ \def\residues@size{\csname #2\endcsname}
+ \xdef\res@size{#2}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \xdef\temp@{Huge}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname Large\endcsname}
+ \else
+ \xdef\temp@{huge}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname large\endcsname}
+ \else
+ \xdef\temp@{LARGE}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname normalsize\endcsname}
+ \else
+ \xdef\temp@{Large}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname small\endcsname}
+ \else
+ \xdef\temp@{large}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname footnotesize\endcsname}
+ \else
+ \xdef\temp@{normalsize}
+ \ifx\temp@\res@size
+ \def\bottomruler@size{\csname scriptsize\endcsname}
+ \else
+ \def\bottomruler@size{\csname tiny\endcsname}
+ \fi\fi\fi\fi\fi\fi
+ \fi
+}
+\def\setfont#1#2#3#4#5{%
+ \setfamily{#1}{#2}\setseries{#1}{#3}
+ \setshape{#1}{#4}\setsize{#1}{#5}}
+\def\featuresrm{\setfamily{features}{rm}}
+\def\featuressf{\setfamily{features}{sf}}
+\def\featurestt{\setfamily{features}{tt}}
+\def\featuresmd{\setseries{features}{md}}
+\def\featuresbf{\setseries{features}{bf}}
+\def\featuresup{\setshape {features}{up}}
+\def\featuresit{\setshape {features}{it}}
+\def\featuressl{\setshape {features}{sl}}
+\def\featuressc{\setshape {features}{sc}}
+\def\featurestiny {\setsize{features}{tiny}}
+\def\featuresscriptsize {\setsize{features}{scriptsize}}
+\def\featuresfootnotesize{\setsize{features}{footnotesize}}
+\def\featuressmall {\setsize{features}{small}}
+\def\featuresnormalsize {\setsize{features}{normalsize}}
+\def\featureslarge {\setsize{features}{large}}
+\def\featuresLarge {\setsize{features}{Large}}
+\def\featuresLARGE {\setsize{features}{LARGE}}
+\def\featureshuge {\setsize{features}{huge}}
+\def\featuresHuge {\setsize{features}{Huge}}
+\def\featurestylesrm{\setfamily{featurestyles}{rm}}
+\def\featurestylessf{\setfamily{featurestyles}{sf}}
+\def\featurestylestt{\setfamily{featurestyles}{tt}}
+\def\featurestylesmd{\setseries{featurestyles}{md}}
+\def\featurestylesbf{\setseries{featurestyles}{bf}}
+\def\featurestylesup{\setshape {featurestyles}{up}}
+\def\featurestylesit{\setshape {featurestyles}{it}}
+\def\featurestylessl{\setshape {featurestyles}{sl}}
+\def\featurestylessc{\setshape {featurestyles}{sc}}
+\def\featurestylestiny {\setsize{featurestyles}{tiny}}
+\def\featurestylesscriptsize {\setsize{featurestyles}{scriptsize}}
+\def\featurestylesfootnotesize{\setsize{featurestyles}{footnotesize}}
+\def\featurestylessmall {\setsize{featurestyles}{small}}
+\def\featurestylesnormalsize {\setsize{featurestyles}{normalsize}}
+\def\featurestyleslarge {\setsize{featurestyles}{large}}
+\def\featurestylesLarge {\setsize{featurestyles}{Large}}
+\def\featurestylesLARGE {\setsize{featurestyles}{LARGE}}
+\def\featurestyleshuge {\setsize{featurestyles}{huge}}
+\def\featurestylesHuge {\setsize{featurestyles}{Huge}}
+\def\numberingrm{\setfamily{numbering}{rm}}
+\def\numberingsf{\setfamily{numbering}{sf}}
+\def\numberingtt{\setfamily{numbering}{tt}}
+\def\numberingmd{\setseries{numbering}{md}}
+\def\numberingbf{\setseries{numbering}{bf}}
+\def\numberingup{\setshape {numbering}{up}}
+\def\numberingit{\setshape {numbering}{it}}
+\def\numberingsl{\setshape {numbering}{sl}}
+\def\numberingsc{\setshape {numbering}{sc}}
+\def\numberingtiny {\setsize{numbering}{tiny}}
+\def\numberingscriptsize {\setsize{numbering}{scriptsize}}
+\def\numberingfootnotesize{\setsize{numbering}{footnotesize}}
+\def\numberingsmall {\setsize{numbering}{small}}
+\def\numberingnormalsize {\setsize{numbering}{normalsize}}
+\def\numberinglarge {\setsize{numbering}{large}}
+\def\numberingLarge {\setsize{numbering}{Large}}
+\def\numberingLARGE {\setsize{numbering}{LARGE}}
+\def\numberinghuge {\setsize{numbering}{huge}}
+\def\numberingHuge {\setsize{numbering}{Huge}}
+\def\namesrm{\setfamily{names}{rm}}
+\def\namessf{\setfamily{names}{sf}}
+\def\namestt{\setfamily{names}{tt}}
+\def\namesmd{\setseries{names}{md}}
+\def\namesbf{\setseries{names}{bf}}
+\def\namesup{\setshape {names}{up}}
+\def\namesit{\setshape {names}{it}}
+\def\namessl{\setshape {names}{sl}}
+\def\namessc{\setshape {names}{sc}}
+\def\namestiny {\setsize{names}{tiny}}
+\def\namesscriptsize {\setsize{names}{scriptsize}}
+\def\namesfootnotesize{\setsize{names}{footnotesize}}
+\def\namessmall {\setsize{names}{small}}
+\def\namesnormalsize {\setsize{names}{normalsize}}
+\def\nameslarge {\setsize{names}{large}}
+\def\namesLarge {\setsize{names}{Large}}
+\def\namesLARGE {\setsize{names}{LARGE}}
+\def\nameshuge {\setsize{names}{huge}}
+\def\namesHuge {\setsize{names}{Huge}}
+\def\residuesrm{\setfamily{residues}{rm}}
+\def\residuessf{\setfamily{residues}{sf}}
+\def\residuestt{\setfamily{residues}{tt}}
+\def\residuesmd{\setseries{residues}{md}}
+\def\residuesbf{\setseries{residues}{bf}}
+\def\residuesup{\setshape {residues}{up}}
+\def\residuesit{\setshape {residues}{it}}
+\def\residuessl{\setshape {residues}{sl}}
+\def\residuessc{\setshape {residues}{sc}}
+\def\residuestiny {\setsize{residues}{tiny}}
+\def\residuesscriptsize {\setsize{residues}{scriptsize}}
+\def\residuesfootnotesize{\setsize{residues}{footnotesize}}
+\def\residuessmall {\setsize{residues}{small}}
+\def\residuesnormalsize {\setsize{residues}{normalsize}}
+\def\residueslarge {\setsize{residues}{large}}
+\def\residuesLarge {\setsize{residues}{Large}}
+\def\residuesLARGE {\setsize{residues}{LARGE}}
+\def\residueshuge {\setsize{residues}{huge}}
+\def\residuesHuge {\setsize{residues}{Huge}}
+\def\legendrm{\setfamily{legend}{rm}}
+\def\legendsf{\setfamily{legend}{sf}}
+\def\legendtt{\setfamily{legend}{tt}}
+\def\legendmd{\setseries{legend}{md}}
+\def\legendbf{\setseries{legend}{bf}}
+\def\legendup{\setshape {legend}{up}}
+\def\legendit{\setshape {legend}{it}}
+\def\legendsl{\setshape {legend}{sl}}
+\def\legendsc{\setshape {legend}{sc}}
+\def\legendtiny {\setsize{legend}{tiny}}
+\def\legendscriptsize {\setsize{legend}{scriptsize}}
+\def\legendfootnotesize{\setsize{legend}{footnotesize}}
+\def\legendsmall {\setsize{legend}{small}}
+\def\legendnormalsize {\setsize{legend}{normalsize}}
+\def\legendlarge {\setsize{legend}{large}}
+\def\legendLarge {\setsize{legend}{Large}}
+\def\legendLARGE {\setsize{legend}{LARGE}}
+\def\legendhuge {\setsize{legend}{huge}}
+\def\legendHuge {\setsize{legend}{Huge}}
+\def\funcshadingstyle#1#2#3#4#5{%
+ \xdef\temp@{nomatch} \xdef\first@{#1}
+ \ifx\temp@\first@
+ \xdef\first@{0}
+ \else
+ \xdef\first@{\csname funcgrp#1\endcsname}
+ \fi
+ \ifnum\first@>-1
+ \expandafter\xdef\csname fg@textcolor\first@\endcsname{#2}
+ \expandafter\xdef\csname fg@color\first@\endcsname{#3}
+ \expandafter\xdef\csname funcm@tch\first@\endcsname{#4}
+ \expandafter\def\csname func@style\first@\endcsname{\csname text#5\endcsname}
+ \fi}
+\def\shadingcolors#1{%
+ \gapcolors{Black}{White}
+ \nomatchresidues{Black}{White}{upper}{up}
+ \xdef\first@{#1} \xdef\second@{blues}
+ \ifx\first@\second@
+ \similarresidues{Black}{Magenta}{upper}{up}
+ \conservedresidues{White}{RoyalBlue}{upper}{up}
+ \allmatchresidues{Goldenrod}{RoyalPurple}{upper}{up}
+ \else \xdef\second@{greens}
+ \ifx\first@\second@
+ \similarresidues{Black}{GreenYellow}{upper}{up}
+ \conservedresidues{White}{PineGreen}{upper}{up}
+ \allmatchresidues{YellowOrange}{OliveGreen}{upper}{up}
+ \else \xdef\second@{reds}
+ \ifx\first@\second@
+ \similarresidues{Black}{YellowOrange}{upper}{up}
+ \conservedresidues{White}{BrickRed}{upper}{up}
+ \allmatchresidues{YellowGreen}{Mahagony}{upper}{up}
+ \else \xdef\second@{black}
+ \ifx\first@\second@
+ \similarresidues{Black}{White}{upper}{sl}
+ \conservedresidues{White}{Black}{upper}{up}
+ \allmatchresidues{White}{Black}{upper}{sl}
+ \else \xdef\second@{grays}
+ \ifx\first@\second@
+ \else \message{<Undefined color set. Using `grays'>} \xdef\first@{grays}\fi
+ \ifx\first@\second@
+ \similarresidues{Black}{LightGray}{upper}{up}
+ \conservedresidues{White}{DarkGray}{upper}{up}
+ \allmatchresidues{White}{Black}{upper}{up}
+ \fi\fi\fi\fi\fi}
+\def\nomatchresidues#1#2#3#4 {\xdef\first@{#1&}\xdef\second@{#2&}\xdef\third@{#3&}
+ \xdef\last@{\ampers@nd}
+ \ifx\first@\last@\else\def\TextNomatch{#1}
+ \expandafter\def\csname fg@textcolor0\endcsname{#1}
+ \fi
+ \ifx\second@\last@\else\gdef\Nomatch{#2}
+ \expandafter\def\csname fg@color0\endcsname{#2}
+ \fi
+ \ifx\third@\last@\else\def\resn@m@tch{#3}
+ \fi
+ \xdef\first@{#4&}
+ \ifx\first@\last@\else
+ \def\no@style{\csname text#4\endcsname}
+ \expandafter\def\csname func@style0\endcsname%
+ {\csname text#4\endcsname}\fi}
+\def\similarresidues#1#2#3#4 {\xdef\first@{#1&}\xdef\second@{#2&}\xdef\third@{#3&}
+ \xdef\last@{\ampers@nd}
+ \ifx\first@\last@\else\def\TextSimilar{#1}\fi
+ \ifx\second@\last@\else\gdef\Similar{#2}\fi
+ \ifx\third@\last@\else\def\ressimm@tch{#3}\fi
+ \xdef\first@{#4&}
+ \ifx\first@\last@\else
+ \def\sim@style{\csname text#4\endcsname}\fi}
+\def\conservedresidues#1#2#3#4{\xdef\first@{#1&}\xdef\second@{#2&}\xdef\third@{#3&}
+ \xdef\last@{\ampers@nd}
+ \ifx\first@\last@\else\def\TextIdentical{#1}\fi
+ \ifx\second@\last@\else\gdef\Identical{#2}\fi
+ \ifx\third@\last@\else\def\resm@tch{#3}\fi
+ \xdef\first@{#4&}
+ \ifx\first@\last@\else
+ \def\id@style{\csname text#4\endcsname}\fi}
+\def\allmatchresidues#1#2#3#4 {\xdef\first@{#1&}\xdef\second@{#2&}\xdef\third@{#3&}
+ \xdef\last@{\ampers@nd}
+ \ifx\first@\last@\else\def\TextAllmatch{#1}\fi
+ \ifx\second@\last@\else\gdef\Allmatch{#2}\fi
+ \ifx\third@\last@\else\def\res@llm@tch{#3}\fi
+ \xdef\first@{#4&}
+ \ifx\first@\last@\else
+ \def\all@style{\csname text#4\endcsname}\fi}
+\def\gapcolors#1#2 {\xdef\first@{#1&}\xdef\second@{#2&}
+ \xdef\last@{\ampers@nd}
+ \ifx\first@\last@\else\def\gap@fg{#1}
+ \expandafter\def\csname fg@textcolor*\endcsname{#1}\fi
+ \ifx\second@\last@\else\def\gap@bg{#2}
+ \expandafter\def\csname fg@color*\endcsname{#2}\fi}
+\def\shadebox#1{%
+ \xdef\first@{White}%
+ \xdef\third@{#1}%
+ \xdef\second@{nomatch}%
+ \ifx\second@\third@
+ \ifx\Nomatch\first@\white@box\else\textcolor{\Nomatch}{\box@rule}\fi%
+ \else
+ \xdef\second@{similar}%
+ \ifx\second@\third@
+ \ifx\Similar\first@\white@box\else\textcolor{\Similar}{\box@rule}\fi%
+ \else
+ \xdef\second@{conserved}%
+ \ifx\second@\third@
+ \ifx\Identical\first@\white@box\else\textcolor{\Identical}{\box@rule}\fi%
+ \else
+ \xdef\second@{allmatch}%
+ \ifx\second@\third@
+ \ifx\Allmatch\first@\white@box\else\textcolor{\Allmatch}{\box@rule}\fi%
+ \else
+ \ifx\third@\first@\white@box\else\textcolor{\third@}{\box@rule}\fi
+ \fi\fi\fi\fi}
+\def\namescolor#1{\xdef\names@fg{#1}}
+\def\namecolor#1#2{%
+ \xdef\first@{consensus} \xdef\second@{#1}
+ \ifx\first@\second@
+ \expandafter\xdef\csname name@col0\endcsname{#2}
+ \else
+ \xdef\first@{#1,&,@} \xdef\third@{#2} \namecolor@
+ \fi
+}
+\def\numberingcolor#1{\xdef\numbering@fg{#1}}
+\def\numbercolor#1#2{%
+ \xdef\first@{consensus} \xdef\second@{#1}
+ \ifx\first@\second@
+ \expandafter\xdef\csname number@col0\endcsname{#2}
+ \else
+ \xdef\first@{#1,&,@} \xdef\third@{#2} \numbercolor@
+ \fi
+}
+\def\legendcolor#1{\xdef\legend@fg{#1}}
+\def\rulercolor#1{\xdef\ruler@fg{#1}}
+\def\molweight#1#2{%
+ \xdef\temp@{Da}%
+ \xdef\second@{#2}%
+ \ifx\second@\temp@\xdef\third@{Da}\else\xdef\third@{kDa}\fi%
+ \xdef\first@{#1 @} \expandafter\check@letter\first@
+ \xdef\first@{#1} \ifletter \get@name@number \fi
+ \xdef\first@{\csname @rd\first@\endcsname}%
+ \loopcount=\csname mol@weight\first@\endcsname%
+ \divide\loopcount by 10\relax%
+ \innerloopcount=\loopcount%
+ \hbox{%
+ \ifnum\loopcount>1000%
+ \divide\loopcount by 1000\relax%
+ \pos@count=\loopcount%
+ \multiply\loopcount by 1000\relax%
+ \advance\innerloopcount by -\loopcount%
+ \loopcount=\innerloopcount%
+ \ifnum\loopcount>949\advance\pos@count by 1\relax\fi%
+ \the\pos@count%
+ \ifx\temp@\second@\ifgerm@n .\else {,}\fi\fi%
+ \else%
+ \ifx\second@\temp@ \else 0\fi%
+ \fi%
+ \ifx\second@\temp@%
+ \the\loopcount%
+ \loopcount=\csname mol@weight\first@\endcsname%
+ \innerloopcount=\loopcount%
+ \divide\loopcount by 10\relax%
+ \multiply\loopcount by 10\relax%
+ \advance\innerloopcount by -\loopcount\relax%
+ \else%
+ \divide\innerloopcount by 10\relax%
+ \advance\innerloopcount by 5\relax%
+ \divide\innerloopcount by 10\relax%
+ \fi%
+ \ifnum\innerloopcount>9\relax\innerloopcount=0\relax\fi%
+ \ifgerm@n {,}\else .\fi%
+ \the\innerloopcount~\third@}}
+\newcommand\charge[2][o]{%
+ \xdef\temp@{pep}%
+ \ifx\prefix@\temp@%
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \xdef\second@{\csname @rd\first@\endcsname}%
+ \loopcount=\csname ch@rge\second@\endcsname%
+ \xdef\first@{#1}\make@lower%
+ \if\first@ i\fi%
+ \if\first@ o\advance\loopcount by \chargeNterm%
+ \advance\loopcount by \chargeCterm\fi%
+ \if\first@ n\advance\loopcount by \chargeNterm\fi%
+ \if\first@ c\advance\loopcount by \chargeCterm\fi%
+ \hbox{\ensuremath{%
+ \ifnum\loopcount>0 +%
+ \else\ifnum\loopcount=0 \pm%
+ \else -\multiply\loopcount by -1\relax%
+ \fi\fi%
+ \innerloopcount=\loopcount%
+ \divide\loopcount by 1000\relax%
+ \the\loopcount%
+ \multiply\loopcount by 1000\relax%
+ \advance\innerloopcount by -\loopcount\relax%
+ \divide\innerloopcount by 10\relax%
+ \ifnum\innerloopcount=0%
+ \else%
+ \ifgerm@n {,}\else .\fi%
+ \ifnum\innerloopcount<10 0\fi%
+ \the\innerloopcount%
+ \fi}}%
+ \fi}
+\def\TeXshade{%
+ \setbox1=\hbox{\texttt{H}}%
+ \def\logo@rule{\vrule depth0.25\ht1 height1.25\ht1 width\wd1}%
+ \TeX%
+ \logo@rule\kern-\wd1\textcolor{White}{\texttt{s}}%
+ \logo@rule\kern-\wd1\textcolor{White}{\texttt{h}}%
+ \texttt{a}%
+ \logo@rule\kern-\wd1\textcolor{White}{\texttt{d}}%
+ \texttt{e}}
+
+\def\firstcolumnDSSP{\xdef\fc@DSSP{y}}
+\def\secondcolumnDSSP{\xdef\fc@DSSP{n}}
+
+\newcommand{\includeDSSP}[3][existing]{%
+ \temp@count=\dssp@num
+ \advance\temp@count by 1
+ \xdef\dssp@num{\the\temp@count}
+ \xdef\first@{#1} \xdef\temp@{existing}
+ \ifx\first@\temp@ \else\xdef\first@{make new}\fi
+ \expandafter\xdef\csname optiondssp\the\temp@count\endcsname{\first@}
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname doseqdssp\the\temp@count\endcsname{\first@}
+ \expandafter\xdef\csname filenamedssp\the\temp@count\endcsname{#3}
+ \expandafter\ifnum\csname doseqdssp\the\temp@count\endcsname>\seq@count
+ \message{<Ignoring `#2' in \noexpand\includeDSSP>}
+ \advance\temp@count by -1
+ \xdef\dssp@num{\the\temp@count}
+ \fi
+}
+
+\newcommand{\includeHMMTOP}[3][existing]{%
+ \temp@count=\HMMTOP@num
+ \advance\temp@count by 1
+ \xdef\HMMTOP@num{\the\temp@count}
+ \xdef\first@{#1} \xdef\temp@{existing}
+ \ifx\first@\temp@ \else\xdef\first@{make new}\fi
+ \expandafter\xdef\csname optionHMMTOP\the\temp@count\endcsname{\first@}
+ \xdef\first@{#2[,]&}\expandafter\opt@color\first@
+ \ifx\f@color\comm@
+ \expandafter\xdef\csname fileseqHMMTOP\the\temp@count\endcsname{0}
+ \else
+ \expandafter\xdef\csname fileseqHMMTOP\the\temp@count\endcsname{\f@color}
+ \fi
+ \xdef\first@{\fourth@ @} \expandafter\check@letter\first@
+ \xdef\first@{\fourth@} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname doseqHMMTOP\the\temp@count\endcsname{\first@}
+ \expandafter\xdef\csname filenameHMMTOP\the\temp@count\endcsname{#3}
+ \expandafter\ifnum\csname doseqHMMTOP\the\temp@count\endcsname>\seq@count
+ \message{<Ignoring `#2' in \noexpand\includeHMMTOP>}
+ \advance\temp@count by -1
+ \xdef\HMMTOP@num{\the\temp@count}
+ \fi
+}
+
+\newcommand{\includeSTRIDE}[3][existing]{%
+ \temp@count=\stride@num
+ \advance\temp@count by 1
+ \xdef\stride@num{\the\temp@count}
+ \xdef\first@{#1} \xdef\temp@{existing}
+ \ifx\first@\temp@ \else\xdef\first@{make new}\fi
+ \expandafter\xdef\csname optionstride\the\temp@count\endcsname{\first@}
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname doseqstride\the\temp@count\endcsname{\first@}
+ \expandafter\xdef\csname filenamestride\the\temp@count\endcsname{#3}
+ \expandafter\ifnum\csname doseqstride\the\temp@count\endcsname>\seq@count
+ \message{<Ignoring `#2' in \noexpand\includeSTRIDE>}
+ \advance\temp@count by -1
+ \xdef\stride@num{\the\temp@count}
+ \fi
+}
+\newcommand{\includePHDsec}[3][existing]{%
+ \temp@count=\PHD@num
+ \advance\temp@count by 1
+ \xdef\PHD@num{\the\temp@count}
+ \xdef\first@{#1} \xdef\temp@{existing}
+ \ifx\first@\temp@ \else\xdef\first@{make new}\fi
+ \expandafter\xdef\csname optionphd\the\temp@count\endcsname{\first@}
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname doseqphd\the\temp@count\endcsname{\first@}
+ \expandafter\xdef\csname modephd\the\temp@count\endcsname{structure}
+ \expandafter\xdef\csname filenamephd\the\temp@count\endcsname{#3}
+ \expandafter\ifnum\csname doseqphd\the\temp@count\endcsname>\seq@count
+ \message{<Ignoring `#2' in \noexpand\includePHDsec>}
+ \advance\temp@count by -1
+ \xdef\PHD@num{\the\temp@count}
+ \fi
+}
+\newcommand{\includePHDtopo}[3][existing]{%
+ \temp@count=\PHD@num
+ \advance\temp@count by 1
+ \xdef\PHD@num{\the\temp@count}
+ \xdef\first@{#1} \xdef\temp@{existing}
+ \ifx\first@\temp@ \else\xdef\first@{make new}\fi
+ \expandafter\xdef\csname optionphd\the\temp@count\endcsname{\first@}
+ \xdef\first@{#2 @} \expandafter\check@letter\first@
+ \xdef\first@{#2} \ifletter \get@name@number \fi
+ \expandafter\xdef\csname doseqphd\the\temp@count\endcsname{\first@}
+ \expandafter\xdef\csname modephd\the\temp@count\endcsname{topology}
+ \expandafter\xdef\csname filenamephd\the\temp@count\endcsname{#3}
+ \expandafter\ifnum\csname doseqphd\the\temp@count\endcsname>\seq@count
+ \message{<Ignoring `#2' in \noexpand\includePHDtopo>}
+ \advance\temp@count by -1
+ \xdef\PHD@num{\the\temp@count}
+ \fi
+}
+\def\appearance#1#2#3#4#5{%
+ \xdef\first@{#1} \xdef\second@{#2}
+ \xdef\temp@{PHDsec}
+ \ifx\temp@\first@
+ \xdef\temp@{alpha}
+ \ifx\second@\temp@
+ \def\bottop@Hsec{#3}
+ \def\label@Hsec{#4}
+ \def\text@Hsec{#5}
+ \else
+ \xdef\temp@{beta}
+ \ifx\second@\temp@
+ \def\bottop@Esec{#3}
+ \def\label@Esec{#4}
+ \def\text@Esec{#5}
+ \fi\fi
+ \else
+ \xdef\temp@{PHDtopo}
+ \ifx\temp@\first@
+ \xdef\temp@{internal}
+ \ifx\second@\temp@
+ \def\bottop@itop{#3}
+ \def\label@itop{#4}
+ \def\text@itop{#5}
+ \else
+ \xdef\temp@{external}
+ \ifx\second@\temp@
+ \def\bottop@etop{#3}
+ \def\label@etop{#4}
+ \def\text@etop{#5}
+ \else
+ \xdef\temp@{TM}
+ \ifx\second@\temp@
+ \def\bottop@TMtop{#3}
+ \def\label@TMtop{#4}
+ \def\text@TMtop{#5}
+ \fi\fi\fi
+ \else
+ \xdef\temp@{STRIDE}
+ \ifx\temp@\first@
+ \xdef\temp@{alpha}
+ \ifx\second@\temp@
+ \def\bottop@Hstride{#3}
+ \def\label@Hstride{#4}
+ \def\text@Hstride{#5}
+ \else
+ \xdef\temp@{3-10}
+ \ifx\second@\temp@
+ \def\bottop@Gstride{#3}
+ \def\label@Gstride{#4}
+ \def\text@Gstride{#5}
+ \else
+ \xdef\temp@{pi}
+ \ifx\second@\temp@
+ \def\bottop@Istride{#3}
+ \def\label@Istride{#4}
+ \def\text@Istride{#5}
+ \else
+ \xdef\temp@{beta}
+ \ifx\second@\temp@
+ \def\bottop@Estride{#3}
+ \def\label@Estride{#4}
+ \def\text@Estride{#5}
+ \else
+ \xdef\temp@{bridge}
+ \ifx\second@\temp@
+ \def\bottop@Bstride{#3}
+ \def\label@Bstride{#4}
+ \def\text@Bstride{#5}
+ \else
+ \xdef\temp@{turn}
+ \ifx\second@\temp@
+ \def\bottop@Tstride{#3}
+ \def\label@Tstride{#4}
+ \def\text@Tstride{#5}
+ \fi\fi\fi\fi\fi\fi
+ \else
+ \xdef\temp@{DSSP}
+ \ifx\temp@\first@
+ \xdef\temp@{alpha}
+ \ifx\second@\temp@
+ \def\bottop@Hdssp{#3}
+ \def\label@Hdssp{#4}
+ \def\text@Hdssp{#5}
+ \else
+ \xdef\temp@{3-10}
+ \ifx\second@\temp@
+ \def\bottop@Gdssp{#3}
+ \def\label@Gdssp{#4}
+ \def\text@Gdssp{#5}
+ \else
+ \xdef\temp@{pi}
+ \ifx\second@\temp@
+ \def\bottop@Idssp{#3}
+ \def\label@Idssp{#4}
+ \def\text@Idssp{#5}
+ \else
+ \xdef\temp@{beta}
+ \ifx\second@\temp@
+ \def\bottop@Edssp{#3}
+ \def\label@Edssp{#4}
+ \def\text@Edssp{#5}
+ \else
+ \xdef\temp@{bridge}
+ \ifx\second@\temp@
+ \def\bottop@Bdssp{#3}
+ \def\label@Bdssp{#4}
+ \def\text@Bdssp{#5}
+ \else
+ \xdef\temp@{turn}
+ \ifx\second@\temp@
+ \def\bottop@Tdssp{#3}
+ \def\label@Tdssp{#4}
+ \def\text@Tdssp{#5}
+ \else
+ \xdef\temp@{bend}
+ \ifx\second@\temp@
+ \def\bottop@Sdssp{#3}
+ \def\label@Sdssp{#4}
+ \def\text@Sdssp{#5}
+ \fi\fi\fi\fi\fi\fi\fi
+ \else
+ \xdef\temp@{HMMTOP}
+ \ifx\temp@\first@
+ \xdef\temp@{internal}
+ \ifx\second@\temp@
+ \def\bottop@i@HMMTOP{#3}
+ \def\label@i@HMMTOP{#4}
+ \def\text@i@HMMTOP{#5}
+ \else
+ \xdef\temp@{external}
+ \ifx\second@\temp@
+ \def\bottop@e@HMMTOP{#3}
+ \def\label@e@HMMTOP{#4}
+ \def\text@e@HMMTOP{#5}
+ \else
+ \xdef\temp@{TM}
+ \ifx\second@\temp@
+ \def\bottop@TM@HMMTOP{#3}
+ \def\label@TM@HMMTOP{#4}
+ \def\text@TM@HMMTOP{#5}
+ \fi\fi\fi
+ \fi\fi\fi\fi\fi
+}
+
+\def\showonDSSP#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{yes} \show@DSSP}
+\def\hideonDSSP#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{no} \show@DSSP}
+
+\def\showonSTRIDE#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{yes} \show@STRIDE}
+\def\hideonSTRIDE#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{no} \show@STRIDE}
+
+\def\showonPHDtopo#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{yes} \show@PHDtopo}
+\def\hideonPHDtopo#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{no} \show@PHDtopo}
+
+\def\showonPHDsec#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{yes} \show@PHDsec}
+\def\hideonPHDsec#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{no} \show@PHDsec}
+
+\def\showonHMMTOP#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{yes} \show@HMMTOP}
+\def\hideonHMMTOP#1{%
+ \xdef\first@{#1,&,@} \xdef\second@{no} \show@HMMTOP}
+
+\def\codon#1#2{%
+ \xdef\first@{#1}
+ \xdef\second@{#2,&,@}
+ \expandafter\get@triplet\second@}
+\def\geneticcode#1{%
+ \xdef\first@{#1}
+ \xdef\temp@{standard}
+ \ifx\first@\temp@
+ \c@d@ns
+ \else
+ \input{#1.cod}
+ \fi}
+\newcommand{\backtranslabel}[2][tiny]{%
+ \def\trans@size{\csname #1\endcsname}
+ \xdef\first@{#2}
+ \xdef\temp@{horizontal}
+ \ifx\temp@\first@ \xdef\tr@nsstyle{0}\fi
+ \xdef\temp@{zigzag}
+ \ifx\temp@\first@ \xdef\tr@nsstyle{1}\fi
+ \xdef\temp@{alternating}
+ \ifx\temp@\first@ \xdef\tr@nsstyle{2}\fi
+ \xdef\temp@{oblique}
+ \ifx\temp@\first@ \xdef\tr@nsstyle{3}\fi
+ \xdef\temp@{vertical}
+ \ifx\temp@\first@ \xdef\tr@nsstyle{4}\fi
+}
+\newcommand{\backtranstext}[2][tiny]{%
+ \def\transtext@size{\csname #1\endcsname}
+ \xdef\first@{#2}
+ \xdef\temp@{horizontal}
+ \ifx\temp@\first@ \xdef\tr@nstextstyle{0}\fi
+ \xdef\temp@{zigzag}
+ \ifx\temp@\first@ \xdef\tr@nstextstyle{1}\fi
+ \xdef\temp@{alternating}
+ \ifx\temp@\first@ \xdef\tr@nstextstyle{2}\fi
+ \xdef\temp@{oblique}
+ \ifx\temp@\first@ \xdef\tr@nstextstyle{3}\fi
+ \xdef\temp@{vertical}
+ \ifx\temp@\first@ \xdef\tr@nstextstyle{4}\fi
+}
+
+%%%%% Calculate consensus
+
+\def\check@sim{%
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \xdef\first@{\csname \prefix@ grp\first@\endcsname}
+ \newrestrue
+ \ifnum\first@<0 \newresfalse
+ \else
+ \innerloopcount=\loopcount
+ \ifnum\loopcount=\cons@num \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count
+ \loop
+ \advance\innerloopcount by 1
+ \xdef\second@{\csname res\the\innerloopcount\endcsname}
+ \expandafter\ifx\csname \prefix@ grp\second@\endcsname\first@
+ \newresfalse \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+ \fi
+ \fi
+
+ \ifnewres
+ \expandafter\csname pos\the\loopcount\endcsname=0
+ \innerloopcount=0
+ \loop
+ \advance\innerloopcount by 1
+ \xdef\second@{\csname res\the\innerloopcount\endcsname}
+ \expandafter\ifx\csname \prefix@ grp\second@\endcsname\first@
+ \expandafter\advance\csname pos\the\loopcount\endcsname by 1 \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+
+ \expandafter\multiply\csname pos\the\loopcount\endcsname by \seq@percent
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname<\thresh@ld
+ \else
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname>\m@x
+ \xdef\m@x{\the\csname pos\the\loopcount\endcsname}
+ \xdef\cons@seq{\the\loopcount} \xdef\match@case{\c@se}
+ \xdef\simgroup@{\first@}
+ \else
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname=\m@x
+ \xdef\match@case{0}
+ \fi
+ \fi
+ \fi
+ \fi
+
+ \ifnum\loopcount=\cons@num \loopcount=1 \fi
+ \advance\loopcount by -1
+ \ifnum\loopcount>0 \check@sim \fi}
+
+\def\check@ident{%
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \newrestrue \expandafter\check@char\first@
+ \ifletter
+ \innerloopcount=\loopcount
+ \ifnum\loopcount=\cons@num \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\ifx\csname res\the\innerloopcount\endcsname\first@
+ \newresfalse \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+ \fi
+ \else
+ \newresfalse
+ \expandafter\xdef\csname res\the\loopcount\endcsname{\d@t}
+ \fi
+
+ \ifnewres
+ \expandafter\csname pos\the\loopcount\endcsname=0
+ \innerloopcount=0
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\ifx\csname res\the\innerloopcount\endcsname\first@
+ \expandafter\advance\csname pos\the\loopcount\endcsname by 1 \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname=\seq@count
+ \xdef\cons@seq{\the\loopcount} \xdef\match@case{2} \loopcount=1
+ \else
+ \expandafter\multiply\csname pos\the\loopcount\endcsname by \seq@percent
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname<\thresh@ld
+ \else
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname>\m@x
+ \xdef\m@x{\the\csname pos\the\loopcount\endcsname}
+ \xdef\cons@seq{\the\loopcount} \xdef\match@case{1}
+ \else
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname=\m@x
+ \xdef\match@case{0}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+
+ \ifnum\loopcount=\cons@num \loopcount=1 \fi
+ \advance\loopcount by -1
+ \ifnum\loopcount>0 \check@ident \fi}
+
+\def\get@simchar{%
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \newrestrue \expandafter\check@char\first@
+ \ifletter
+ \innerloopcount=\loopcount
+ \ifnum\loopcount=\cons@num \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\ifx\csname res\the\innerloopcount\endcsname\first@
+ \newresfalse \innerloopcount=\seq@count \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+ \fi
+ \else
+ \newresfalse
+ \fi
+
+ \ifnewres
+ \expandafter\csname pos\the\loopcount\endcsname=0
+ \innerloopcount=0
+ \loop
+ \advance\innerloopcount by 1
+ \expandafter\ifx\csname res\the\innerloopcount\endcsname\first@
+ \xdef\second@{\csname res\the\innerloopcount\endcsname}
+ \expandafter\ifx\csname \prefix@ grp\second@\endcsname\simgroup@
+ \expandafter\advance\csname pos\the\loopcount\endcsname by 1 \fi
+ \fi
+ \ifnum\innerloopcount<\seq@count \repeat
+
+ \expandafter\ifnum\csname pos\the\loopcount\endcsname>\m@x
+ \xdef\m@x{\the\csname pos\the\loopcount\endcsname}
+ \xdef\cons@seq{\the\loopcount}
+ \fi
+ \fi
+
+ \ifnum\loopcount=\cons@num \loopcount=1 \fi
+ \advance\loopcount by -1
+ \ifnum\loopcount>0 \get@simchar \fi}
+
+\def\unc@nserved{%
+ \ifsimmode
+ \ifnum\cons@num>0 \loopcount=\cons@num \else \loopcount=\seq@count \fi
+ \xdef\match@case{0} \xdef\m@x{1} \check@sim
+ \ifnum\match@case=0
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@
+ \expandafter\ifx\csname res\the\loopcount\endcsname\d@t
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname3\gap@char}
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 3\csname res\the\loopcount\endcsname}
+ \fi
+ \else
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\third@{7}\def\first@{\gap@char}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \else
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname3\first@}
+ \fi
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\low@up{lower} \ifx\n@m@tch\low@up \xdef\first@{{ }} \else
+ \xdef\low@up{upper} \ifx\n@m@tch\low@up \xdef\first@{{ }}
+ \else \xdef\first@{\n@m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq0\endcsname\y@
+ \expandafter\xdef\csname tint@seq0\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq0\endcsname\y@
+ \expandafter\xdef\csname emph@seq0\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \xdef\consensus{\consensus 4\first@}
+ \expandafter\ifx\csname res\cons@num\endcsname\d@t
+ \else\xdef\constopo{\constopo 0}\fi
+ \else
+ \ifnum\cons@num>0
+ \xdef\tmp@{\csname res\cons@num\endcsname}
+ \else
+ \xdef\m@x{0} \loopcount=\seq@count \get@simchar
+ \xdef\tmp@{\csname res\cons@seq\endcsname}
+ \fi
+ \xdef\second@{\csname \prefix@ grp\tmp@\endcsname}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t\def\first@{\gap@char}\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 3\first@}
+ \else
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \xdef\last@{\csname res\the\loopcount\endcsname}
+ \expandafter\ifnum\csname \prefix@ grp\last@\endcsname=\second@
+ \xdef\third@{2}
+ \xdef\low@up{lower} \ifx\ressimm@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\ressimm@tch\low@up
+ \else \xdef\first@{\ressimm@tch} \fi\fi
+ \else
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\third@{7}\def\first@{\gap@char}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \fi
+ \fi
+ \else
+ \xdef\third@{3}
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\first@{\tmp@}
+ \xdef\low@up{lower} \ifx\m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\m@tch\low@up
+ \else \xdef\first@{\m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq0\endcsname\y@
+ \expandafter\xdef\csname tint@seq0\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq0\endcsname\y@
+ \expandafter\xdef\csname emph@seq0\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \xdef\consensus{\consensus5\first@}
+ \xdef\constopo{\constopo 1}
+ \fi
+ \else
+ \iffuncmode
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \def\first@{{}} \def\third@{/}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \def\first@{{}} \def\third@{/}
+ \fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \else
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname0\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \else
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t\def\first@{\gap@char}\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 3\first@}
+ \else
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\third@{7}\def\first@{\gap@char}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \else
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname3\first@}
+ \fi
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\low@up{lower} \ifx\n@m@tch\low@up \xdef\first@{{ }} \else
+ \xdef\low@up{upper} \ifx\n@m@tch\low@up \xdef\first@{{ }}
+ \else \xdef\first@{\n@m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq0\endcsname\y@
+ \expandafter\xdef\csname tint@seq0\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq0\endcsname\y@
+ \expandafter\xdef\csname emph@seq0\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \xdef\consensus{\consensus 4\first@}
+ \xdef\constopo{\constopo 0}
+ \fi\fi}
+
+\def\c@nserved{%
+ \xdef\tmp@{\csname res\cons@seq\endcsname}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t\def\first@{\gap@char}\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 3\first@}
+ \else
+ \xdef\second@{\csname res\the\loopcount\endcsname}
+ \ifx\tmp@\second@
+ \xdef\third@{1}
+ \else
+ \xdef\third@{3}
+ \ifsimmode
+ \xdef\last@{\csname \prefix@ sim\tmp@\endcsname &@}
+ \expandafter\get@count\last@
+ \innerloopcount=0 \getsim@char
+ \fi
+ \fi
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifcase\third@ \or
+ \xdef\low@up{lower} \ifx\resm@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resm@tch\low@up
+ \else \xdef\first@{\resm@tch} \fi\fi
+ \or
+ \xdef\low@up{lower} \ifx\ressimm@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\ressimm@tch\low@up
+ \else \xdef\first@{\ressimm@tch} \fi\fi
+ \else
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \fi
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\third@{7}\def\first@{\gap@char}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{7}
+ \else
+ \def\first@{{}} \def\third@{8}
+ \fi
+ \fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\first@{\csname res\cons@seq\endcsname}
+ \xdef\second@{lower} \ifx\m@tch\second@ \make@lower \else
+ \xdef\second@{upper} \ifx\m@tch\second@
+ \else \xdef\first@{\m@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq0\endcsname\y@
+ \expandafter\xdef\csname tint@seq0\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq0\endcsname\y@
+ \expandafter\xdef\csname emph@seq0\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \xdef\consensus{\consensus 5\first@}
+ \xdef\constopo{\constopo 2}}
+
+\def\allm@tch{%
+ \ifall@shade \xdef\third@{0} \else \xdef\third@{1} \fi
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 3\first@}
+ \else
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \xdef\low@up{lower} \ifx\res@llm@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\res@llm@tch\low@up
+ \else \xdef\first@{\res@llm@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\first@{\csname res\cons@seq\endcsname}
+ \xdef\second@{lower} \ifx\@llm@tch\second@ \make@lower \else
+ \xdef\second@{upper} \ifx\@llm@tch\second@
+ \else \xdef\first@{\@llm@tch} \fi\fi
+ \expandafter\ifx\csname tint@seq0\endcsname\y@
+ \expandafter\xdef\csname tint@seq0\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq0\endcsname\y@
+ \expandafter\xdef\csname emph@seq0\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \xdef\consensus{\consensus 6\first@}
+ \xdef\constopo{\constopo 3}}
+
+\def\functi@nal{%
+ \ifnum\cons@num>0
+ \xdef\first@{\csname res\cons@num\endcsname}
+ \else
+ \xdef\first@{\csname res\cons@seq\endcsname}
+ \fi
+ \xdef\second@{\csname funcgrp\first@\endcsname}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\third@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\third@
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 0\first@}
+ \else
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \def\first@{{}} \def\third@{/}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\third@{*}
+ \else
+ \def\first@{{}} \def\third@{/}
+ \fi
+ \fi
+ \fi
+ \else
+ \expandafter\ifnum\csname funcgrp\first@\endcsname=\second@
+ \xdef\low@up{lower}
+ \expandafter\ifx\csname funcm@tch\second@\endcsname\low@up
+ \make@lower \fi
+ \xdef\third@{\second@}
+ \else \xdef\third@{0}
+ \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else
+ \xdef\low@up{upper} \ifx\resn@m@tch\low@up
+ \else \xdef\first@{\resn@m@tch} \fi\fi
+ \fi
+ \fi
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname\third@\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat}
+
+\def\all@funcshade{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \xdef\second@{\csname funcgrp\first@\endcsname}
+ \ifnum\second@<0 \xdef\second@{0} \fi
+ \ifx\first@\d@t
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@start\the\loopcount\endcsname
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\second@{*}
+ \else
+ \def\first@{{}} \def\second@{/}
+ \fi
+ \else
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname%
+ <\csname seq@len\the\loopcount\endcsname
+ \def\first@{\gap@char}\def\second@{*}
+ \else
+ \ifsh@wg@ps
+ \def\first@{\gap@char}\def\second@{*}
+ \else
+ \def\first@{{}} \def\second@{/}
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\low@up{lower}
+ \expandafter\ifx\csname funcm@tch\second@\endcsname\low@up
+ \make@lower \fi
+ \xdef\third@{noshade}
+ \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\third@
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ 0\first@}
+ \else
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \xdef\first@{=\first@}\fi
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \xdef\first@{,\first@}\fi
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ \second@\first@}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat}
+
+\def\getregion@fromstack@first{%
+ \expandafter\getregion@fromstack{\the\loopcount}
+ \expandafter\ifx\csname start\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname stop\the\loopcount\endcsname<\first@@
+ \getregion@fromstack@first
+ \else
+ \expandafter\ifx\csname all\the\loopcount\endcsname\y@
+ \innerloopcount=\csname style\the\loopcount\endcsname
+ \fi
+ \expandafter\xdef\csname shade@style\the\loopcount\endcsname{%
+ \csname style\the\loopcount\endcsname}
+ \fi
+ \fi
+}
+
+\def\calc@regshade{%
+ \loopcount=-1 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname shade@style\the\loopcount\endcsname{y}
+ \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+ \else \xdef\first@@{\the\csname res@count\the\loopcount\endcsname} \fi
+ \expandafter\ifx\csname start\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\the\loopcount\endcsname>\first@@
+ \else
+ \expandafter\ifnum\csname stop\the\loopcount\endcsname<\first@@
+ \getregion@fromstack@first
+ \else
+ \expandafter\ifx\csname all\the\loopcount\endcsname\y@
+ \innerloopcount=\csname style\the\loopcount\endcsname
+ \fi
+ \expandafter\xdef\csname shade@style\the\loopcount\endcsname{%
+ \csname style\the\loopcount\endcsname}
+ \expandafter\ifnum\csname stop\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromstack{\the\loopcount}
+ \fi
+ \fi
+ \fi\fi
+ \ifnum\loopcount<\seq@count \repeat
+ \loopcount=0
+ \expandafter\ifx\csname shade@style\the\loopcount\endcsname\y@
+ \else
+ \xdef\consensus{\consensus&\csname shade@style\the\loopcount\endcsname)}
+ \fi
+ \loop
+ \advance\loopcount by 1
+ \expandafter\ifx\csname shade@style\the\loopcount\endcsname\y@
+ \ifnum\innerloopcount>0
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ &\the\innerloopcount)}
+ \fi
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ &\csname shade@style\the\loopcount\endcsname)}
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+}
+
+\def\getregion@fromemphstack@first{%
+ \expandafter\getregion@fromemphstack{\the\loopcount}
+ \expandafter\ifx\csname emphstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname emphstop\the\loopcount\endcsname<\first@@
+ \getregion@fromemphstack@first
+ \else
+ \expandafter\ifx\csname emphall\the\loopcount\endcsname\y@
+ \innerloopcount=1
+ \fi
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{y}
+ \fi
+ \fi
+}
+
+\def\calc@regemph{%
+ \loopcount=-1 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+ \else \xdef\first@@{\the\csname res@count\the\loopcount\endcsname} \fi
+ \expandafter\ifx\csname emphstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname emphstart\the\loopcount\endcsname>\first@@
+ \else
+ \expandafter\ifnum\csname emphstop\the\loopcount\endcsname<\first@@
+ \getregion@fromemphstack@first
+ \else
+ \expandafter\ifx\csname emphall\the\loopcount\endcsname\y@
+ \innerloopcount=1
+ \fi
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{y}
+ \expandafter\ifnum\csname emphstop\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromemphstack{\the\loopcount}
+ \fi
+ \fi
+ \fi\fi
+ \ifnum\loopcount<\seq@count \repeat
+ \loopcount=0
+ \expandafter\ifx\csname emph@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{y}
+ \fi
+ \ifnum\innerloopcount>0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{y}
+ \ifnum\loopcount<\seq@count \repeat
+ \fi
+}
+
+\def\getregion@fromtintstack@first{%
+ \expandafter\getregion@fromtintstack{\the\loopcount}
+ \expandafter\ifx\csname tintstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname tintstop\the\loopcount\endcsname<\first@@
+ \getregion@fromtintstack@first
+ \else
+ \expandafter\ifx\csname tintall\the\loopcount\endcsname\y@
+ \innerloopcount=1
+ \fi
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{y}
+ \fi
+ \fi
+}
+
+\def\calc@regtint{%
+ \loopcount=-1 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+ \else \xdef\first@@{\the\csname res@count\the\loopcount\endcsname} \fi
+ \expandafter\ifx\csname tintstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname tintstart\the\loopcount\endcsname>\first@@
+ \else
+ \expandafter\ifnum\csname tintstop\the\loopcount\endcsname<\first@@
+ \getregion@fromtintstack@first
+ \else
+ \expandafter\ifx\csname tintall\the\loopcount\endcsname\y@
+ \innerloopcount=1
+ \fi
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{y}
+ \expandafter\ifnum\csname tintstop\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromtintstack{\the\loopcount}
+ \fi
+ \fi
+ \fi\fi
+ \ifnum\loopcount<\seq@count \repeat
+ \loopcount=0
+ \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{y}
+ \fi
+ \ifnum\innerloopcount>0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{y}
+ \ifnum\loopcount<\seq@count \repeat
+ \fi
+}
+
+\def\getregion@fromframestack@first{%
+ \expandafter\getregion@fromframestack{\the\loopcount}
+ \expandafter\ifx\csname framestart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname framestop\the\loopcount\endcsname<\first@@
+ \getregion@fromframestack@first
+ \else
+ \ifnum\frame@on=0
+ \xdef\frame@on{1}
+ \xdef\frame@{1}
+ \expandafter\xdef\csname fr@style\the\loopcount\endcsname{%
+ \csname framestyle\the\loopcount\endcsname}
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;&;}
+ \xdef\frame@pos{\the\pos@count}
+ \fi
+ \expandafter\ifnum\csname framestop\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromframestack{\the\loopcount}
+ \ifnum\frame@on=1
+ \xdef\frame@on{0}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \ifnum\pos@count=\res@perline
+ \ifnum\frame@on=1
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=\end@num\relax
+ \ifnum\frame@on=1
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \fi
+ \fi
+}
+
+\def\calc@frame{%
+ \advance\pos@count by -1
+ \loopcount=-1 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+ \else \xdef\first@@{\the\csname res@count\the\loopcount\endcsname} \fi
+ \expandafter\ifx\csname framestart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname framestart\the\loopcount\endcsname>\first@@
+ \else
+ \expandafter\ifnum\csname framestop\the\loopcount\endcsname<\first@@
+ \getregion@fromframestack@first
+ \else
+ \ifnum\frame@on=0
+ \xdef\frame@on{1}
+ \xdef\frame@{1}
+ \expandafter\xdef\csname fr@style\the\loopcount\endcsname{%
+ \csname framestyle\the\loopcount\endcsname}
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;&;}
+ \xdef\frame@pos{\the\pos@count}
+ \fi
+ \expandafter\ifnum\csname framestop\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromframestack{\the\loopcount}
+ \ifnum\frame@on=1
+ \xdef\frame@on{0}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \ifnum\pos@count=\res@perline
+ \ifnum\frame@on=1
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=\end@num\relax
+ \ifnum\frame@on=1
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by 1
+ \advance\innerloopcount by -\frame@pos
+ \xdef\styleframe{\styleframe&\the\innerloopcount;%
+ \csname fr@style\the\loopcount\endcsname;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \xdef\frame@pos{\the\innerloopcount}
+ \fi
+ \fi
+ \fi
+ \fi\fi
+ \ifnum\loopcount<\seq@count \repeat
+ \advance\pos@count by 1
+}
+
+\def\get@nextres#1#2:{%
+ \xdef\first@{#1}
+ \xdef\temp@{#2:}
+ \ifnum`#1>96 \make@upper \fi
+ \ifx\first@\gap@char \expandafter\get@nextres\temp@
+ \else
+ \if\first@ @
+ \xdef\temp@{}
+ \else
+ \xdef\temp@{+\first@}
+ \expandafter\xdef\csname last@res\bottop@\endcsname{}
+ \fi
+ \fi}
+\def\get@@nextres#1#2:{%
+ \xdef\first@{#1}
+ \xdef\temp@@{#2:}
+ \ifnum`#1>96 \make@upper \fi
+ \ifx\first@\gap@char \expandafter\get@@nextres\temp@@
+ \else
+ \if\first@ @
+ \xdef\temp@@{}
+ \else
+ \xdef\temp@@{+\first@}
+ \expandafter\xdef\csname last@res\bottop@\endcsname{}
+ \fi
+ \fi}
+
+\def\char@get#1#2@{\xdef\first@{#1} \xdef\tr@nsl@ted{#2@}}
+\def\trans@now#1#2@{%
+ \xdef\first@{#1}
+ \xdef\tr@nsl@ted{#2@}
+ \ifx\first@\ampers@nd
+ \else
+ \expandafter\check@char\first@
+ \ifletter
+ \xdef\triplet@{\triplet@\first@}
+ \advance\triple@count by 1
+ \ifnum\triple@count=1
+ \xdef\out@{\out@{-}}
+ \fi
+ \ifnum\triple@count=3
+ \expandafter\ifx\csname @\triplet@\endcsname\relax
+ \expandafter\xdef\csname @\triplet@\endcsname{?} \fi
+ \xdef\out@{\out@\csname @\triplet@\endcsname\out@@{-}}
+ \triple@count=0
+ \xdef\triplet@{}
+ \xdef\out@@{}
+ \fi
+ \fi
+ \if\first@ -
+ \ifnum\triple@count<2
+ \xdef\out@{\out@{-}}
+ \else
+ \xdef\out@@{\out@@{-}}
+ \fi
+ \fi
+ \if\first@ +
+ \expandafter\char@get\tr@nsl@ted
+ \xdef\triplet@{\triplet@\first@}
+ \advance\triple@count by 1
+ \ifnum\triple@count=3
+ \expandafter\ifx\csname @\triplet@\endcsname\relax
+ \expandafter\xdef\csname @\triplet@\endcsname{?} \fi
+ \xdef\out@{\out@\csname @\triplet@\endcsname\out@@}
+ \triple@count=0
+ \xdef\triplet@{}
+ \xdef\out@@{}
+ \fi
+ \fi
+ \if\first@ 2
+ \loop
+ \expandafter\char@get\tr@nsl@ted
+ \ifx\first@\ampers@nd
+ \lettertrue
+ \xdef\tr@nsl@ted{&@}
+ \else
+ \expandafter\check@char\first@
+ \fi
+ \ifletter\else\xdef\out@{\out@{-}}\repeat
+ \xdef\out@{\out@{-}}
+ \fi
+ \expandafter\trans@now\tr@nsl@ted
+ \fi
+}
+
+\def\do@translation{%
+ \xdef\triplet@{}
+ \xdef\out@{}
+ \xdef\out@@{}
+ \xdef\tr@nsl@ted{\tr@nsl@ted &@}
+ \triple@count=0
+ \expandafter\trans@now\tr@nsl@ted
+ \xdef\tr@nsl@ted{\out@}
+}
+
+\def\trans@pep#1#2@{%
+ \xdef\first@{#1}
+ \xdef\tr@nsl@ted{#2@}
+ \ifx\first@\ampers@nd
+ \else
+ \expandafter\check@char\first@
+ \ifletter
+ \xdef\out@{\out@\csname rev@\first@\endcsname}
+ \else
+ \xdef\out@{\out@{-}{-}{-}}
+ \fi
+ \expandafter\trans@pep\tr@nsl@ted
+ \fi
+}
+
+\def\rev@translation{%
+ \xdef\out@{}
+ \xdef\tr@nsl@ted{\tr@nsl@ted &@}
+ \expandafter\trans@pep\tr@nsl@ted
+ \xdef\tr@nsl@ted{\out@}
+}
+
+\def\sum@up{%
+ \advance\innerloopcount by 1
+ \xdef\second@@@{\csname res\the\innerloopcount\endcsname}
+ \xdef\third@@@{\csname cons\first@@@\second@@@\endcsname}
+ \advance\temp@count by \third@@@
+ \ifnum\innerloopcount<\seq@count\sum@up\fi
+}
+
+\def\sum@up@cons{%
+ \innerloopcount=\outerloopcount
+ \xdef\first@@@{\csname res\the\outerloopcount\endcsname}
+ \sum@up
+ \advance\outerloopcount by 1\relax
+ \ifnum\outerloopcount<\seq@count
+ \sum@up@cons
+ \else
+ \innerloopcount=\seq@count
+ \advance\innerloopcount by -1
+ \multiply\innerloopcount by \seq@count
+ \multiply\temp@count by 2
+ \divide\temp@count by \innerloopcount
+ \xdef\cons@val{\the\temp@count}
+ \fi
+}
+
+\def\collect@cons@res{%
+ \xdef\temp@{\temp@\csname res\the\innerloopcount\endcsname}
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>\seq@count\relax
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \else
+ \collect@cons@res
+ \fi
+}
+
+\def\calc@feature{%
+ \advance\pos@count by -1
+ \loopcount=-1 \innerloopcount=0
+ \loop
+ \advance\loopcount by 1
+ \ifnum\loopcount=0 \xdef\first@@{\the\cons@count}
+ \else \xdef\first@@{\the\csname res@count\the\loopcount\endcsname} \fi
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>\first@@
+ \else
+ \expandafter\ifnum\csname stop\bottop@\the\loopcount\endcsname<\first@@
+ \expandafter\getregion@fromfstack{\the\loopcount}
+ \else
+ \innerloopcount=\loopcount
+ \expandafter\ifnum\csname featureon\bottop@\endcsname=0
+ \expandafter\xdef\csname featureon\bottop@\endcsname{1}
+ \expandafter\xdef\csname feature@\bottop@\endcsname{1}
+ \expandafter\xdef\csname ftext\bottop@\the\loopcount\endcsname{%
+ \csname text\bottop@\the\loopcount\endcsname}
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{%
+ \csname style\bottop@\the\loopcount\endcsname}
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by -\csname featurepos\bottop@\endcsname
+ \expandafter\xdef\csname textfeature\bottop@\endcsname{%
+ \csname textfeature\bottop@\endcsname%
+ &\the\innerloopcount;{};}
+ \expandafter\xdef\csname stylefeature\bottop@\endcsname{%
+ \csname stylefeature\bottop@\endcsname%
+ &\the\innerloopcount;&;}
+ \expandafter\xdef\csname featurepos\bottop@\endcsname{\the\pos@count}
+ \xdef\temp@@@{n}
+ \xdef\fourth@{}
+ \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns \xdef\temp@@@{y} \fi
+ \xdef\fourth@{}
+ \xdef\temp@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns \xdef\temp@@@{y} \fi
+ \ifx\temp@@@\y@
+ \ifnum\loopcount=0
+ \message{<No translations of the consensus sequence>}
+ \expandafter\xdef\csname ftext\bottop@\the\loopcount\endcsname{%
+ No consensus translations!}
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{%
+ ///}
+ \else
+ \if\seq@type P
+ \expandafter\xdef\csname collect@res\bottop@\endcsname{yes}
+ \expandafter\xdef\csname tr@nsseq\bottop@\endcsname{\the\loopcount}
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{%
+ \csname res\the\loopcount\endcsname}
+ \else
+ \expandafter\xdef\csname collect@res\bottop@\endcsname{yes}
+ \expandafter\xdef\csname tr@nsseq\bottop@\endcsname{\the\loopcount}
+ \expandafter\ifx\csname res\the\loopcount\endcsname\gap@char
+ \expandafter\xdef\csname triple@count\bottop@\endcsname{0}
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{-}
+ \else
+ \expandafter\xdef\csname triple@count\bottop@\endcsname{1}
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{%
+ \csname res\the\loopcount\endcsname}
+ \expandafter\xdef\csname last@@res\bottop@\endcsname{%
+ \csname res\the\loopcount\endcsname}
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\temp@{plot}
+ \ifx\temp@\fourth@
+ \ifnum\loopcount=0
+ \message{<No bar graphs/scales with the consensus sequence>}
+ \expandafter\xdef\csname ftext\bottop@\the\loopcount\endcsname{}
+ \expandafter\xdef\csname fstyle\bottop@\the\loopcount\endcsname{%
+ ///}
+ \else
+ \expandafter\xdef\csname collect@val\bottop@\endcsname{yes}
+ \expandafter\xdef\csname v@lseq\bottop@\endcsname{\the\loopcount}
+ \expandafter\xdef\csname ffourth@\bottop@\endcsname{\ffourth@}
+ \xdef\temp@{\ffourth@\csname res\the\loopcount\endcsname}
+ \expandafter\xdef\csname v@l\bottop@\endcsname{\csname \temp@\endcsname}
+ \fi
+ \fi
+ \xdef\temp@{cons}
+ \ifx\temp@\fourth@
+ \expandafter\xdef\csname collect@cons@graph\bottop@\endcsname{yes}
+ \expandafter\xdef\csname v@lseq\bottop@\endcsname{\the\loopcount}
+ \expandafter\xdef\csname ffourth@\bottop@\endcsname{\ffourth@}
+ \innerloopcount=1
+ \collect@cons@res
+ \expandafter\xdef\csname v@l\bottop@\endcsname{\cons@val}
+ \fi
+ \else
+ \ifnum\pos@count=1\relax
+ \xdef\temp@{\csname fstyle\bottop@\the\loopcount\endcsname @}
+ \expandafter\getstyle@right\temp@
+ \xdef\temp@@@{n}
+ \xdef\fourth@{}
+ \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns \xdef\temp@@@{y} \fi
+ \xdef\fourth@{}
+ \xdef\temp@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns \xdef\temp@@@{y} \fi
+ \ifx\temp@@@\y@
+ \if\seq@type P
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{%
+ \csname res\the\loopcount\endcsname}
+ \else
+ \expandafter\ifnum\csname triple@count\bottop@\endcsname=2
+ \expandafter\ifx\csname res\the\loopcount\endcsname\gap@char
+ \else
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{%
+ +\csname last@res\bottop@\endcsname%
+ \csname tr@nslate\bottop@\endcsname}
+ \fi
+ \fi
+ \expandafter\ifnum\csname triple@count\bottop@\endcsname=1
+ \expandafter\xdef\csname last@res\bottop@\endcsname{%
+ \csname last@@res\bottop@\endcsname}
+ \expandafter\ifx\csname res\the\loopcount\endcsname\gap@char
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{%
+ +\csname last@res\bottop@\endcsname%
+ \csname tr@nslate\bottop@\endcsname}
+ \fi
+ \fi
+ \fi
+ \fi
+ \xdef\temp@{plot}
+ \ifx\temp@\fourth@
+ \expandafter\ifx\csname res\the\loopcount\endcsname\gap@char
+ \expandafter\xdef\csname v@l\bottop@\endcsname{N}
+ \else
+ \xdef\temp@{\ffourth@\csname res\the\loopcount\endcsname}
+ \expandafter\xdef\csname v@l\bottop@\endcsname{%
+ \csname \temp@\endcsname}
+ \fi
+ \fi
+ \xdef\temp@{cons}
+ \ifx\temp@\fourth@
+ \innerloopcount=1
+ \collect@cons@res
+ \expandafter\xdef\csname v@l\bottop@\endcsname{\cons@val}
+ \fi
+ \fi
+ \fi
+ \expandafter\ifnum\csname stop\bottop@\the\loopcount\endcsname=\first@@
+ \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\temp@@@{n}
+ \xdef\fourth@{}
+ \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns
+ \ifx\f@color\comm@
+ \xdef\f@color{} \else \xdef\f@color{[\f@color]}
+ \fi
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \if\seq@type N \do@translation \else \rev@translation \fi
+ \xdef\temp@{translate:\tr@nsl@ted\f@color}
+ \xdef\temp@@@{y}
+ \else
+ \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \fi
+ \xdef\fourth@{}
+ \xdef\temp@@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \xdef\temp@@{\temp@@[,]:[,][]&}\expandafter\graph@opt@color\temp@@
+ \ifx\fourth@\tr@ns
+ \ifx\f@color\comm@
+ \xdef\f@color{} \else \xdef\f@color{[\f@color]}
+ \fi
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \if\seq@type N \do@translation \else \rev@translation \fi
+ \xdef\temp@@{translate:\tr@nsl@ted\f@color}
+ \xdef\temp@@@{y}
+ \else
+ \xdef\temp@@{plot}
+ \ifx\temp@@\fourth@
+ \xdef\temp@@{plot\f@color[\fffourth@]:\csname v@l\bottop@\endcsname[\ff@color]}
+ \expandafter\xdef\csname collect@val\bottop@\endcsname{no}
+ \expandafter\xdef\csname v@l\bottop@\endcsname{}
+ \else
+ \xdef\temp@@{cons}
+ \ifx\temp@@\fourth@
+ \xdef\temp@@{plot\f@color[\fffourth@]:\csname v@l\bottop@\endcsname[\ff@color]}
+ \expandafter\xdef\csname collect@cons@graph\bottop@\endcsname{no}
+ \expandafter\xdef\csname v@l\bottop@\endcsname{}
+ \else
+ \xdef\temp@@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \fi
+ \fi
+ \fi
+ \ifx\temp@@@\y@
+ \expandafter\xdef\csname collect@res\bottop@\endcsname{no}
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{}
+ \fi
+ \expandafter\ifnum\csname featureon\bottop@\endcsname=1
+ \expandafter\xdef\csname featureon\bottop@\endcsname{0}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \advance\innerloopcount by -\csname featurepos\bottop@\endcsname
+ \expandafter\xdef\csname textfeature\bottop@\endcsname{%
+ \csname textfeature\bottop@\endcsname%
+ &\the\innerloopcount;\temp@;}
+ \expandafter\xdef\csname stylefeature\bottop@\endcsname{%
+ \csname stylefeature\bottop@\endcsname%
+ &\the\innerloopcount;\temp@@;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \expandafter\xdef\csname %
+ featurepos\bottop@\endcsname{\the\innerloopcount}
+ \fi
+ \fi
+ \ifnum\pos@count=\res@perline
+ \expandafter\ifnum\csname featureon\bottop@\endcsname=1
+ \innerloopcount=\pos@count
+ \advance\innerloopcount by 1
+ \advance\innerloopcount by -\csname featurepos\bottop@\endcsname
+ \xdef\temp@{\csname fstyle\bottop@\the\loopcount\endcsname @}
+ \expandafter\getstyle@left\temp@
+ \xdef\temp@@@{n}
+ \xdef\fourth@{}
+ \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \xdef\temp@{\temp@[,]:[,][]&}\expandafter\graph@opt@color\temp@
+ \ifx\fourth@\tr@ns
+ \ifx\f@color\comm@
+ \xdef\f@color{} \else \xdef\f@color{[\f@color]}
+ \fi
+ \expandafter\ifnum\csname triple@count\bottop@\endcsname=2
+ \if\seq@type N
+ \xdef\temp@{\csname sequence\the\loopcount\endcsname:}
+ \expandafter\get@nextres\temp@
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname\temp@}
+ \do@translation
+ \xdef\temp@@@{2}
+ \else
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \rev@translation
+ \xdef\temp@@@{}
+ \fi
+ \xdef\temp@{translate:\tr@nsl@ted\f@color}
+ \else
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \if\seq@type N \do@translation \else \rev@translation \fi
+ \xdef\temp@{translate:\tr@nsl@ted\f@color}
+ \xdef\temp@@@{}
+ \fi
+ \else \xdef\temp@{\csname ftext\bottop@\the\loopcount\endcsname}
+ \fi
+ \xdef\fourth@{}
+ \xdef\temp@@{\csname fstyle\bottop@\the\loopcount\endcsname}
+ \xdef\temp@@{\temp@@[,]:[,][]&}\expandafter\graph@opt@color\temp@@
+ \ifx\fourth@\tr@ns
+ \ifx\f@color\comm@
+ \xdef\f@color{} \else \xdef\f@color{[\f@color]}
+ \fi
+ \expandafter\ifnum\csname triple@count\bottop@\endcsname=2
+ \if\seq@type N
+ \xdef\temp@@{\csname sequence\the\loopcount\endcsname:}
+ \expandafter\get@@nextres\temp@@
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname\temp@@}
+ \do@translation
+ \xdef\temp@@@{2}
+ \else
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \rev@translation
+ \xdef\temp@@@{}
+ \fi
+ \xdef\temp@@{translate:\tr@nsl@ted\f@color}
+ \else
+ \xdef\tr@nsl@ted{\csname tr@nslate\bottop@\endcsname}
+ \if\seq@type N \do@translation \else \rev@translation \fi
+ \xdef\temp@@{translate:\tr@nsl@ted\f@color}
+ \xdef\temp@@@{}
+ \fi
+ \else
+ \xdef\temp@@{plot}
+ \ifx\temp@@\fourth@
+ \xdef\temp@@{plot\f@color[\fffourth@]:\csname v@l\bottop@\endcsname[\ff@color]}
+ \else
+ \xdef\temp@@{cons}
+ \ifx\temp@@\fourth@
+ \xdef\temp@@{plot\f@color[\fffourth@]:\csname v@l\bottop@\endcsname[\ff@color]}
+ \else
+ \xdef\temp@@{\style@@}
+ \fi
+ \fi
+ \fi
+ \ifx\temp@@@\n@
+ \else
+ \expandafter\xdef\csname tr@nslate\bottop@\endcsname{\temp@@@}
+ \fi
+ \expandafter\xdef\csname textfeature\bottop@\endcsname{%
+ \csname textfeature\bottop@\endcsname%
+ &\the\innerloopcount;\temp@;}
+ \expandafter\xdef\csname stylefeature\bottop@\endcsname{%
+ \csname stylefeature\bottop@\endcsname%
+ &\the\innerloopcount;\temp@@;}
+ \innerloopcount=\pos@count \advance\innerloopcount by 1
+ \expandafter\xdef\csname %
+ featurepos\bottop@\endcsname{\the\innerloopcount}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \advance\pos@count by 1
+}
+
+\def\c@nsensus{%
+ \ifnum\pos@count>\res@perline
+ \else
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\seq@line{\csname sequence\the\loopcount\endcsname}
+ \expandafter\residue@get\seq@line
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \expandafter\check@char\first@
+ \ifletter
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=0
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \fi
+ \ifnum\loopcount=\rule@num\relax
+ \expandafter\ifnum\csname res@count\rule@num\endcsname=\rule@tens
+ \xdef\ruler@{\ruler@ !<\rule@tens>}
+ \innerloopcount=\rule@tens \advance\innerloopcount by \ruler@step
+ \ifnum\innerloopcount=0 \innerloopcount=1 \fi
+ \advance\innerloopcount by -1
+ \ifnum\innerloopcount=\ruler@step
+ \else \advance\innerloopcount by 1 \fi
+ \xdef\rule@tens{\the\innerloopcount}
+ \else
+ \xdef\ruler@{\ruler@ -}
+ \fi
+ \fi
+ \ifx\collect@valtop\yes
+ \ifnum\v@lseqtop=\loopcount
+ \xdef\v@ltop{\v@ltop,\csname \ffourth@top\first@\endcsname}
+ \fi\fi
+ \ifx\collect@valttop\yes
+ \ifnum\v@lseqttop=\loopcount
+ \xdef\v@lttop{\v@lttop,\csname \ffourth@ttop\first@\endcsname}
+ \fi\fi
+ \ifx\collect@valbottom\yes
+ \ifnum\v@lseqbottom=\loopcount
+ \xdef\v@lbottom{\v@lbottom,\csname \ffourth@bottom\first@\endcsname}
+ \fi\fi
+ \ifx\collect@valbbottom\yes
+ \ifnum\v@lseqbbottom=\loopcount
+ \xdef\v@lbbottom{\v@lbbottom,\csname \ffourth@bbottom\first@\endcsname}
+ \fi\fi
+ \ifx\collect@restop\yes
+ \ifnum\tr@nsseqtop=\loopcount
+ \xdef\last@restop{\last@@restop}
+ \xdef\tr@nslatetop{\tr@nslatetop\first@}
+ \xdef\last@@restop{\first@}
+ \innerloopcount=\triple@counttop
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>3 \innerloopcount=1 \fi
+ \xdef\triple@counttop{\the\innerloopcount}
+ \fi\fi
+ \ifx\collect@resttop\yes
+ \ifnum\tr@nsseqttop=\loopcount
+ \xdef\last@resttop{\last@@resttop}
+ \xdef\tr@nslatettop{\tr@nslatettop\first@}
+ \xdef\last@@resttop{\first@}
+ \innerloopcount=\triple@countttop
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>3 \innerloopcount=1 \fi
+ \xdef\triple@countttop{\the\innerloopcount}
+ \fi\fi
+ \ifx\collect@resbottom\yes
+ \ifnum\tr@nsseqbottom=\loopcount
+ \xdef\last@resbottom{\last@@resbottom}
+ \xdef\tr@nslatebottom{\tr@nslatebottom\first@}
+ \xdef\last@@resbottom{\first@}
+ \innerloopcount=\triple@countbottom
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>3 \innerloopcount=1 \fi
+ \xdef\triple@countbottom{\the\innerloopcount}
+ \fi\fi
+ \ifx\collect@resbbottom\yes
+ \ifnum\tr@nsseqbbottom=\loopcount
+ \xdef\last@resbbottom{\last@@resbbottom}
+ \xdef\tr@nslatebbottom{\tr@nslatebbottom\first@}
+ \xdef\last@@resbbottom{\first@}
+ \innerloopcount=\triple@countbbottom
+ \advance\innerloopcount by 1
+ \ifnum\innerloopcount>3 \innerloopcount=1 \fi
+ \xdef\triple@countbbottom{\the\innerloopcount}
+ \fi\fi
+ \innerloopcount=\csname mol@weight\the\loopcount\endcsname
+ \advance\innerloopcount by \csname \prefix@ mw\first@\endcsname
+ \expandafter\xdef\csname mol@weight\the\loopcount\endcsname{%
+ \the\innerloopcount}
+ \innerloopcount=\csname ch@rge\the\loopcount\endcsname
+ \advance\innerloopcount by \csname pepcharge\first@\endcsname
+ \expandafter\xdef\csname ch@rge\the\loopcount\endcsname{%
+ \the\innerloopcount}
+ \else
+ \ifnum\loopcount=\rule@num \xdef\ruler@{\ruler@ -} \fi
+ \ifx\collect@valtop\yes
+ \ifnum\v@lseqtop=\loopcount
+ \xdef\v@ltop{\v@ltop,N}
+ \fi\fi
+ \ifx\collect@valttop\yes
+ \ifnum\v@lseqttop=\loopcount
+ \xdef\v@lttop{\v@lttop,N}
+ \fi\fi
+ \ifx\collect@valbottom\yes
+ \ifnum\v@lseqbottom=\loopcount
+ \xdef\v@lbottom{\v@lbottom,N}
+ \fi\fi
+ \ifx\collect@valbbottom\yes
+ \ifnum\v@lseqbbottom=\loopcount
+ \xdef\v@lbbottom{\v@lbbottom,N}
+ \fi\fi
+ \ifx\collect@restop\yes
+ \ifnum\tr@nsseqtop=\loopcount
+ \xdef\tr@nslatetop{\tr@nslatetop -}
+ \fi\fi
+ \ifx\collect@resttop\yes
+ \ifnum\tr@nsseqttop=\loopcount
+ \xdef\tr@nslatettop{\tr@nslatettop -}
+ \fi\fi
+ \ifx\collect@resbottom\yes
+ \ifnum\tr@nsseqbottom=\loopcount
+ \xdef\tr@nslatebottom{\tr@nslatebottom -}
+ \fi\fi
+ \ifx\collect@resbbottom\yes
+ \ifnum\tr@nsseqbbottom=\loopcount
+ \xdef\tr@nslatebbottom{\tr@nslatebbottom -}
+ \fi\fi
+ \fi
+ \ifnum\loopcount<\seq@count \repeat
+ \ifx\collect@cons@graphtop\yes
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \xdef\v@ltop{\v@ltop,\cons@val}
+ \fi
+ \ifx\collect@cons@graphttop\yes
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \xdef\v@lttop{\v@lttop,\cons@val}
+ \fi
+ \ifx\collect@cons@graphbottom\yes
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \xdef\v@lbottom{\v@lbottom,\cons@val}
+ \fi
+ \ifx\collect@cons@graphbbottom\yes
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \xdef\v@lbbottom{\v@lbbottom,\cons@val}
+ \fi
+ \ifx\collect@cons@colors\y@
+ \outerloopcount=1\relax
+ \temp@count=0\relax
+ \sum@up@cons
+ \outerloopcount=\cons@val
+ \advance\outerloopcount by 4
+ \divide\outerloopcount by 5
+ \multiply\outerloopcount by 5
+ \ifnum\outerloopcount<5\relax\outerloopcount=5\fi
+ \xdef\c@nscol{\c@nscol\the\outerloopcount,}
+ \fi
+
+ \global\advance\cons@count by 1\relax
+ \global\csname res@count0\endcsname=\cons@count
+ \ifnum\rule@num=0
+ \ifnum\cons@count=\rule@tens
+ \xdef\ruler@{\ruler@ !<\rule@tens>}
+ \innerloopcount=\rule@tens \advance\innerloopcount by \ruler@step
+ \ifnum\innerloopcount=0 \innerloopcount=1 \fi
+ \advance\innerloopcount by -1
+ \ifnum\innerloopcount=\ruler@step
+ \else \advance\innerloopcount by 1 \fi
+ \xdef\rule@tens{\the\innerloopcount}
+ \else
+ \xdef\ruler@{\ruler@ -}
+ \fi
+ \fi
+ \advance\pos@count by 1
+ \ifregionalshadenow \calc@regshade \fi
+ \ifregionaltintnow \calc@regtint \fi
+ \ifregionalemphnow \calc@regemph \fi
+ \ifframenow \calc@frame \fi
+ \iftopfeaturenow \xdef\bottop@{top} \calc@feature \fi
+ \ifttopfeaturenow \xdef\bottop@{ttop} \calc@feature \fi
+ \ifbottomfeaturenow \xdef\bottop@{bottom} \calc@feature \fi
+ \ifbbottomfeaturenow \xdef\bottop@{bbottom} \calc@feature \fi
+ \ifall@fshade \all@funcshade
+ \else
+ \ifnum\cons@num>0 \loopcount=\cons@num \else \loopcount=\seq@count \fi
+ \xdef\match@case{0} \xdef\m@x{1}
+ \iffuncmode
+ \xdef\prfx{\prefix@} \xdef\prefix@{func} \xdef\c@se{3} \check@sim
+ \xdef\prefix@{\prfx}
+ \else \xdef\c@se{1} \check@ident \fi
+ \ifcase\match@case \unc@nserved \or \c@nserved \or \allm@tch \else \functi@nal \fi
+ \fi
+ \expandafter\ifnum\csname res@count\start@seq\endcsname<\end@num\relax
+ \c@nsensus
+ \else
+ \global\stop@true
+ \loopcount=\pos@count \advance\loopcount by -1 \relax
+ \res@perline=\loopcount
+ \iftopfeature \xdef\bottop@{top} \calc@feature \fi
+ \ifttopfeature \xdef\bottop@{ttop} \calc@feature \fi
+ \ifbottomfeature \xdef\bottop@{bottom} \calc@feature \fi
+ \ifbbottomfeature \xdef\bottop@{bbottom} \calc@feature \fi
+ \pos@count=0
+ \fi
+ \fi}
+
+\def\c@unt{%
+ \advance\loopcount by 1
+ \xdef\seq@line{\csname sequence\the\loopcount\endcsname}
+ \expandafter\residue@get\seq@line
+ \xdef\first@{\csname res\the\loopcount\endcsname}
+ \expandafter\check@char\first@
+ \ifletter
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=0
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \fi
+ \ifnum\rule@num=\loopcount
+ \temp@count=\csname res@count\the\loopcount\endcsname
+ \divide\temp@count by \ruler@step
+ \multiply\temp@count by \ruler@step
+ \ifnum\temp@count<0 \else \advance\temp@count by \ruler@step \fi
+ \xdef\rule@tens{\the\temp@count}
+ \fi
+ \fi
+ \ifnum\loopcount<\seq@count \c@unt\fi}
+\def\count@first{%
+ \advance\end@count by 1
+ \ifnum\end@count<\start@number
+ \loopcount=0
+ \c@unt
+ \count@first
+ \fi}
+\def\findc@nsensus{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname sequence\the\loopcount\endcsname{%
+ \csname sequence\the\loopcount\endcsname @}
+ \ifnum\loopcount<\seq@count \repeat
+ \end@count=0 \count@first \end@count=0 \xdef\start@number{0}
+ \regionalshadenowfalse \regionalemphnowfalse \regionaltintnowfalse
+ \framenowfalse
+ \topfeaturenowfalse \bottomfeaturenowfalse
+ \ttopfeaturenowfalse \bbottomfeaturenowfalse
+ \innerloopcount=\cons@count
+ \advance\innerloopcount by \res@perline \advance\innerloopcount by 1
+ \loopcount=0
+ \ifregionalshade
+ \expandafter\ifx\csname start\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionalshadenowtrue
+ \fi
+ \fi
+ \fi
+ \ifregionaltint
+ \expandafter\ifx\csname tintstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname tintstart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionaltintnowtrue
+ \fi
+ \fi
+ \fi
+ \ifregionalemph
+ \expandafter\ifx\csname emphstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname emphstart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionalemphnowtrue
+ \fi
+ \fi
+ \fi
+ \ifframe@
+ \expandafter\ifx\csname framestart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname framestart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \framenowtrue
+ \fi
+ \fi
+ \fi
+ \iftopfeature
+ \xdef\bottop@{top}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \topfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifttopfeature
+ \xdef\bottop@{ttop}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \ttopfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifbottomfeature
+ \xdef\bottop@{bottom}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \bottomfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifbbottomfeature
+ \xdef\bottop@{bbottom}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \bbottomfeaturenowtrue
+ \fi
+ \fi
+ \fi
+\loop
+ \advance\loopcount by 1
+ \ifnumbers@left
+ \innerloopcount=\csname seq@len\the\loopcount\endcsname
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=%
+ \innerloopcount
+ \else
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=0
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \fi
+ \fi
+ \ifnames@right
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \the\csname res@count\the\loopcount\endcsname)}
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ <\csname newseqname\the\loopcount\endcsname>
+ \the\csname res@count\the\loopcount\endcsname)}
+ \fi
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=%
+ \innerloopcount
+ \else
+ \global\advance\csname res@count\the\loopcount\endcsname by -1
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=0
+ \global\advance\csname res@count\the\loopcount\endcsname by -1
+ \fi
+ \fi
+ \else
+ \ifnames@right
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{}
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ <\csname newseqname\the\loopcount\endcsname>}
+ \fi
+ \fi
+ \innerloopcount=\csname res@count\the\loopcount\endcsname
+ \advance\innerloopcount by \res@perline \advance\innerloopcount by 1
+ \ifregionalshade
+ \expandafter\ifx\csname start\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionalshadenowtrue
+ \fi
+ \fi
+ \fi
+ \ifregionaltint
+ \expandafter\ifx\csname tintstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname tintstart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionaltintnowtrue
+ \fi
+ \fi
+ \fi
+ \ifregionalemph
+ \expandafter\ifx\csname emphstart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname emphstart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \regionalemphnowtrue
+ \fi
+ \fi
+ \fi
+ \ifframe@
+ \expandafter\ifx\csname framestart\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname framestart\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \framenowtrue
+ \fi
+ \fi
+ \fi
+ \iftopfeature
+ \xdef\bottop@{top}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \topfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifttopfeature
+ \xdef\bottop@{ttop}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \ttopfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifbottomfeature
+ \xdef\bottop@{bottom}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \bottomfeaturenowtrue
+ \fi
+ \fi
+ \fi
+ \ifbbottomfeature
+ \xdef\bottop@{bbottom}
+ \expandafter\ifx\csname start\bottop@\the\loopcount\endcsname\ampers@nd
+ \else
+ \expandafter\ifnum\csname start\bottop@\the\loopcount\endcsname>%
+ \innerloopcount
+ \else
+ \bbottomfeaturenowtrue
+ \fi
+ \fi
+ \fi
+\ifnum\loopcount<\seq@count \repeat
+ \c@nsensus}
+
+%%%%% Output routines
+
+\def\white@box{%
+ \bgroup
+ \fboxsep-0.5pt\fboxrule0.5pt
+ \fcolorbox{Black}{White}{\box@hstrut\box@wstrut}\egroup}
+\def\box@rule{\vrule depth\box@depth height\box@height width\box@width}
+\def\box@hstrut{\vrule depth\box@depth height\box@height width 0pt}
+\def\box@wstrut{\vrule depth 0pt height 0pt width\box@width}
+\def\do@legend{%
+ \baselineskip=1.2\baselineskip
+ \xdef\first@{White}
+ \fontfamily{\legend@family}%
+ \fontseries{\legend@series}%
+ \fontshape{\legend@shape}%
+ \iffuncmode
+ \ifnum\fgroup@num>0
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\third@{\csname fg@color\the\loopcount\endcsname}%
+ \noindent%
+ \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi%
+ \ifnumbers@\ifnumbers@left\hbox to \number@width{\hss}\fi\fi%
+ \hbox to \hspace@legend{\hss}%
+ \ifx\third@\first@\white@box\else\textcolor{\third@}{\box@rule}\fi%
+ \xdef\third@{\csname fg@textcolor\the\loopcount\endcsname}%
+ \def\res@@style{\csname func@style\the\loopcount\endcsname}%
+ \def\temp@{X}\xdef\low@up{lower}%
+ \expandafter\ifx\csname funcm@tch\the\loopcount\endcsname\low@up%
+ \def\temp@{x}\fi%
+ \ifhidechar\xdef\temp@{}\fi%
+ \kern-\box@width\textcolor{\third@}{\hbox to \box@width{%
+ \res@@style{\hss\temp@\hss}}}%
+ \kern2ex\textcolor{\legend@fg}{%
+ \legend@size{\csname fgroup@name\the\loopcount\endcsname}}
+ \newline\hbox{}%
+ \ifnum\loopcount<\fgroup@num \repeat
+ \fi
+ \else
+ \noindent
+ \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi%
+ \ifnumbers@\ifnumbers@left \hbox to \number@width{\hss}\fi\fi%
+ \hbox to \hspace@legend{\hss}%
+ \ifx\Nomatch\first@\white@box\else\textcolor{\Nomatch}{\box@rule}\fi%
+ \def\res@@style{\csname no@style\endcsname}%
+ \def\temp@{X}\xdef\low@up{lower}\ifx\resn@m@tch\low@up\def\temp@{x}\fi%
+ \ifhidechar\xdef\temp@{}\fi%
+ \kern-\box@width\textcolor{\TextNomatch}{\hbox to \box@width{%
+ \res@@style{\hss\temp@\hss}}}%
+ \textcolor{\legend@fg}{%
+ \ifgerm@n\kern2ex\legend@size{nicht konserviert}%
+ \else\ifsp@nish\kern2ex\legend@size{no conservado}%
+ \else\kern2ex\legend@size{non conserved}\fi\fi}
+ \newline\hbox{}\noindent%
+ \ifsimmode%
+ \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi
+ \ifnumbers@\ifnumbers@left \hbox to \number@width{\hss}\fi\fi
+ \hbox to \hspace@legend{\hss}%
+ \ifx\Similar\first@\white@box\else\textcolor{\Similar}{\box@rule}\fi
+ \def\res@@style{\csname sim@style\endcsname}%
+ \def\temp@{X}\xdef\low@up{lower}\ifx\ressimm@tch\low@up\def\temp@{x}\fi%
+ \ifhidechar\xdef\temp@{}\fi%
+ \kern-\box@width\textcolor{\TextSimilar}{\hbox to \box@width{%
+ \res@@style{\hss\temp@\hss}}}%
+ \textcolor{\legend@fg}{%
+ \ifgerm@n\kern2ex\legend@size{\"ahnlich}%
+ \else\ifsp@nish\kern2ex\legend@size{similar}%
+ \else\kern2ex\legend@size{similar}\fi\fi}
+ \newline\hbox{}\noindent%
+ \fi%
+ \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi
+ \ifnumbers@\ifnumbers@left \hbox to \number@width{\hss}\fi\fi
+ \hbox to \hspace@legend{\hss}%
+ \ifx\Identical\first@\white@box\else\textcolor{\Identical}{\box@rule}\fi
+ \def\res@@style{\csname id@style\endcsname}%
+ \def\temp@{X}\xdef\low@up{lower}\ifx\resm@tch\low@up\def\temp@{x}\fi%
+ \ifhidechar\xdef\temp@{}\fi%
+ \kern-\box@width\textcolor{\TextIdentical}{\hbox to \box@width{%
+ \res@@style{\hss\temp@\hss}}}%
+ \textcolor{\legend@fg}{%
+ \ifgerm@n\kern2ex\legend@size{konserviert}%
+ \else\ifsp@nish\kern2ex\legend@size{conservado}%
+ \else\kern2ex\legend@size{conserved}\fi\fi}
+ \newline\hbox{}\noindent%
+ \ifall@shade%
+ \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi
+ \ifnumbers@\ifnumbers@left \hbox to \number@width{\hss}\fi\fi
+ \hbox to \hspace@legend{\hss}%
+ \ifx\Allmatch\first@\white@box\else\textcolor{\Allmatch}{\box@rule}\fi
+ \def\res@@style{\csname all@style\endcsname}%
+ \def\temp@{X}\xdef\low@up{lower}\ifx\res@llm@tch\low@up\def\temp@{x}\fi%
+ \ifhidechar\xdef\temp@{}\fi%
+ \kern-\box@width\textcolor{\TextAllmatch}{\hbox to \box@width{%
+ \res@@style{\hss\temp@\hss}}}%
+ \textcolor{\legend@fg}{%
+ \ifgerm@n\kern2ex\legend@size{alle identisch}%
+ \else\ifsp@nish\kern2ex\legend@size{todos id\'enticos}%
+ \else\kern2ex\legend@size{all match}\fi\fi}
+ \newline\hbox{}\noindent
+ \fi
+ \fi
+}
+\def\put@name<#1>#2@{%
+ \ifnames@%
+ \expandafter\ifx\csname hide@name\the\loopcount\endcsname\yes%
+ \xdef\temp@{}\else\xdef\temp@{#1}\fi%
+ \expandafter\ifx\csname name@col\the\loopcount\endcsname\yes%
+ \def\second@{\names@fg}%
+ \else\def\second@{\csname name@col\the\loopcount\endcsname}\fi%
+ \fontfamily{\namestext@family}%
+ \fontseries{\namestext@series}%
+ \fontshape{\namestext@shape}%
+ \selectfont%
+ \textcolor{\second@}{%
+ \hbox to \name@width{\@kern\namestext@size{\temp@}\hss}}\fi%
+ \xdef\first@{#2@}%
+}
+\def\put@number#1)#2@{%
+ \ifnumbers@%
+ \expandafter\ifx\csname hide@number\the\loopcount\endcsname\yes%
+ \xdef\temp@{}\else\xdef\temp@{#1}\fi%
+ \expandafter\ifx\csname number@col\the\loopcount\endcsname\yes%
+ \def\second@{\numbering@fg}%
+ \else\def\second@{\csname number@col\the\loopcount\endcsname}\fi%
+ \fontfamily{\numbertext@family}%
+ \fontseries{\numbertext@series}%
+ \fontshape{\numbertext@shape}%
+ \selectfont%
+ \textcolor{\second@}{%
+ \hbox to \number@width{\hss\numbertext@size{\temp@}\@kern}}\fi%
+ \xdef\first@{#2@}%
+}
+\def\special@shade#1)#2#3#4@{%
+ \xdef\second@{\second@#1}%
+ \xdef\boxc@l@r{\csname bgseqregion\second@\endcsname}%
+ \xdef\textc@l@r{\csname fgseqregion\second@\endcsname}%
+ \xdef\first@{#4@}%
+ \xdef\second@{#3}%
+ \def\res@@style{\csname relax\endcsname}%
+}
+\def\get@second@#1#2@{\xdef\second@{#1}\xdef\first@{#2@}}
+\def\next@char#1#2#3@{%
+ \xdef\first@{#3@}%
+ \xdef\second@{#2}%
+ \xdef\last@{#1}%
+ \xdef\temp@@{}%
+ \ifx\last@\ampers@nd\def\last@{0}\expandafter\special@shade\first@%
+ \else%
+ \iffuncmode%
+ \xdef\boxc@l@r{\csname fg@color#1\endcsname}%
+ \xdef\textc@l@r{\csname fg@textcolor#1\endcsname}%
+ \def\res@@style{\csname func@style#1\endcsname}%
+ \if\last@ *\def\last@{0}\fi
+ \if\last@ /\def\last@{10}\fi
+ \else%
+ \ifcase#1\xdef\boxc@l@r{\Allmatch}\xdef\textc@l@r{\TextAllmatch}%
+ \def\res@@style{\all@style}%
+ \or\xdef\boxc@l@r{\Identical}\xdef\textc@l@r{\TextIdentical}%
+ \def\res@@style{\id@style}%
+ \or\xdef\boxc@l@r{\Similar}\xdef\textc@l@r{\TextSimilar}%
+ \def\res@@style{\sim@style}%
+ \or\xdef\boxc@l@r{\Nomatch}\xdef\textc@l@r{\TextNomatch}%
+ \def\res@@style{\no@style}%
+ \or\xdef\boxc@l@r{\ConsNomatch}\xdef\textc@l@r{\ConsTextNomatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\ConsMatch}\xdef\textc@l@r{\ConsTextMatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\ConsAllmatch}\xdef\textc@l@r{\ConsTextAllmatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\gap@bg}\xdef\textc@l@r{\gap@fg}%
+ \def\res@@style{\csname relax\endcsname}%
+ \else\xdef\boxc@l@r{White}\xdef\textc@l@r{White}%
+ \def\res@@style{\csname relax\endcsname}%
+ \fi\fi\fi%
+ \ifx\second@\comm@%
+ \def\temp@{\res@style}%
+ \expandafter\get@second@\first@%
+ \else%
+ \def\temp@{\csname relax\endcsname}%
+ \fi%
+ \ifx\second@\equ@l%
+ \xdef\temp@@{\light@}%
+ \expandafter\get@second@\first@%
+ \fi%
+ \textcolor{\temp@@\boxc@l@r}{\box@rule}%
+ \ifhidechar%
+ \ifx\second@\o@%
+ \def\second@{\gap@rule}%
+ \hbox to -\box@width{\hss\textcolor{\temp@@\textc@l@r}%
+ {\residues@size{\res@@style{\temp@{\second@}}}}\hss}%
+ \kern\box@width%
+ \fi%
+ \else%
+ \ifx\second@\o@\def\second@{\gap@rule}\fi%
+ \hbox to -\box@width{\hss\textcolor{\temp@@\textc@l@r}%
+ {\residues@size{\res@@style{\temp@{\second@}}}}\hss}%
+ \kern\box@width\fi%
+}
+\def\put@char{%
+ \ifnum\innerloopcount>\res@perline
+ \else
+ \expandafter\next@char\first@
+ \advance\innerloopcount by 1
+ \put@char%
+ \fi}
+\def\next@cons#1#2#3@{%
+ \xdef\last@{#1}%
+ \ifx\last@\ampers@nd\def\last@{0}\expandafter\special@shade\first@%
+ \else%
+ \ifx\collect@cons@colors\y@%
+ \expandafter\get@item\first@@@%
+ \xdef\first@@@{\first@}%
+ \ifx\box@scale\y@%
+ \xdef\boxc@l@r{\c@nssc@le\fourth@}%
+ \else%
+ \xdef\boxc@l@r{\c@nssc@le}%
+ \fi%
+ \ifx\text@scale\y@%
+ \xdef\textc@l@r{\c@nsc@l\fourth@}%
+ \else%
+ \xdef\textc@l@r{\c@nsc@l}%
+ \fi%
+ \def\res@@style{\csname relax\endcsname}%
+ \else%
+ \ifcase#1\xdef\boxc@l@r{\Allmatch}\xdef\textc@l@r{\TextAllmatch}%
+ \def\res@@style{\all@style}%
+ \or\xdef\boxc@l@r{\Identical}\xdef\textc@l@r{\TextIdentical}%
+ \def\res@@style{\id@style}%
+ \or\xdef\boxc@l@r{\Similar}\xdef\textc@l@r{\TextSimilar}%
+ \def\res@@style{\sim@style}%
+ \or\xdef\boxc@l@r{\Nomatch}\xdef\textc@l@r{\TextNomatch}%
+ \def\res@@style{\no@style}%
+ \or\xdef\boxc@l@r{\ConsNomatch}\xdef\textc@l@r{\ConsTextNomatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\ConsMatch}\xdef\textc@l@r{\ConsTextMatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\ConsAllmatch}\xdef\textc@l@r{\ConsTextAllmatch}%
+ \def\res@@style{\csname relax\endcsname}%
+ \or\xdef\boxc@l@r{\gap@bg}\xdef\textc@l@r{\gap@fg}%
+ \def\res@@style{\csname relax\endcsname}%
+ \else\xdef\boxc@l@r{White}\xdef\textc@l@r{White}%
+ \def\res@@style{\csname relax\endcsname}%
+ \fi\fi\fi%
+ \xdef\first@{#3@}%
+ \xdef\second@{#2}%
+ \ifx\second@\comm@%
+ \def\temp@{\res@style}%
+ \expandafter\get@second@\first@%
+ \else%
+ \def\temp@{\csname relax\endcsname}%
+ \fi%
+ \textcolor{\boxc@l@r}{\box@rule}%
+ \ifhidechar%
+ \ifx\second@\o@%
+ \def\second@{\gap@rule}%
+ \hbox to -\box@width{\hss\textcolor{\textc@l@r}%
+ {\residues@size{\res@@style{\temp@{\second@}}}}\hss}%
+ \kern\box@width%
+ \fi%
+ \else%
+ \ifx\second@\o@\def\second@{\gap@rule}\fi%
+ \hbox to -\box@width{\hss\textcolor{\textc@l@r}%
+ {\residues@size{\res@@style{\temp@{\second@}}}}\hss}%
+ \kern\box@width\fi%
+}
+\def\put@cons{%
+ \ifnum\innerloopcount>\res@perline
+ \else
+ \expandafter\next@cons\first@
+ \advance\innerloopcount by 1
+ \put@cons%
+ \fi}
+\def\put@line{%
+ \ifnames@right\else\def\@kern{\kern0em}\expandafter\put@name\first@\fi
+ \ifnumbers@left\def\@kern{\kern1em}\expandafter\put@number\first@\fi
+ \fontfamily{\residues@family}%
+ \fontseries{\residues@series}%
+ \fontshape{\residues@shape}%
+ \selectfont%
+ \ifx\cons@now\y@%
+ \innerloopcount=1\relax\put@cons%
+ \else
+ \innerloopcount=1\relax\put@char%
+ \fi
+ \ifnumbers@left\else\def\@kern{\kern0em}\expandafter\put@number\first@\fi
+ \ifnames@right\def\@kern{\kern1em}\expandafter\put@name\first@\fi
+ \newline\hbox{}%
+}
+
+\def\set@consensus{%
+ \ifnames@right
+ \ifnumbers@left
+ \xdef\consensus{)\consensus<\cons@name>}%
+ \else
+ \xdef\consensus{\consensus)<\cons@name>}%
+ \fi
+ \else
+ \ifnumbers@left
+ \xdef\consensus{<\cons@name>)\consensus}%
+ \else
+ \xdef\consensus{<\cons@name>\consensus)}%
+ \fi
+ \fi}
+
+\def\get@rulenum<#1>#2@{%
+ \xdef\first@{#2@}%
+ \ifcase\rule@top
+ \def\third@{\ensuremath{\,\stackrel{\mathtt{#1}}{.}}}%
+ \else
+ \def\third@{\bottomruler@size\ensuremath{\,\stackrel{.}{\mathtt{#1}}}}%
+ \fi}
+
+\def\next@rulechar#1#2@{%
+ \xdef\third@{#1}%
+ \xdef\first@{#2@}%
+ \xdef\second@{!}%
+ \ifx\third@\second@ \expandafter\get@rulenum\first@%
+ \else \xdef\third@{}\fi
+ \hbox to \box@width{\hss\third@\hss}%
+ }
+
+\def\put@rulechar{%
+ \ifnum\innerloopcount>\res@perline
+ \else
+ \expandafter\next@rulechar\first@
+ \advance\innerloopcount by 1
+ \put@rulechar%
+ \fi}
+
+\def\put@ruler{%
+ \ifnames@right
+ \ifnumbers@left \xdef\ruler@{)\ruler@<>}\else\xdef\ruler@{\ruler@)<>}\fi
+ \else
+ \ifnumbers@left \xdef\ruler@{<>)\ruler@}\else\xdef\ruler@{<>\ruler@)}\fi
+ \fi
+ \xdef\first@{\ruler@ @}%
+ \ifnames@right\else\def\@kern{\kern0em}\expandafter\put@name\first@\fi
+ \ifnumbers@left\def\@kern{\kern1em}\expandafter\put@number\first@\fi
+ \vspace{-0.25\baselineskip}%
+ \innerloopcount=1\relax\textcolor{\ruler@fg}{\put@rulechar}%
+ \newline\hbox{}%
+}
+\def\get@firstfill#1#2&{\xdef\second@@{#1}\xdef\fill@char{#2&}}
+\def\get@firstv@l#1,#2&{\xdef\second@@{#1}\xdef\fill@char{#2&}}
+\def\get@tripletfill#1#2#3#4&{%
+ \multiply\temp@count by -1%
+ \def\second@@{#1}\def\second@@@{#2}\def\second@@@@{#3}\def\fill@char{#4&}}
+\def\putfeature@style#1{%
+ \residues@size%
+ \setbox1=\hbox{\ensuremath{\overrightarrow{\hbox{}}}}%
+ \arrow@height=\ht1%
+ \arrow@width=\wd1%
+ \xdef\second@@{#1}%
+ \xdef\last@{\second@@::&}\expandafter\test@fill\last@%
+ \xdef\last@{empty}%
+ \ifx\second@@\last@%
+ \hbox to \second@\box@width{\hss}%
+ \else%
+ \xdef\last@{translate}%
+ \ifx\second@@\last@%
+ \fontfamily{\featurestyles@family}%
+ \fontseries{\featurestyles@series}%
+ \fontshape{\featurestyles@shape}%
+ \selectfont%
+ \xdef\fill@char{\fill@char &}%
+ \if\seq@type N%
+ \loop%
+ \expandafter\get@firstfill\fill@char%
+ \if\second@@ -\def\second@@{\hss}\fi%
+ \hbox to \box@width{\hss\textcolor{\f@color}{\featurestyles@size{\second@@}}\hss}%
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \else%
+ \temp@count=1%
+ \loop%
+ \expandafter\get@tripletfill\fill@char%
+ \if\second@@ -\ifnum\tr@nsstyle>0\hbox to \box@width{\hss}\fi%
+ \else%
+ \ifcase\tr@nsstyle%
+ \hbox{\trans@size\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\,\hss}}%
+ \or%
+ \ifnum\temp@count=1%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}}%
+ \else%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}}%
+ \fi%
+ \or%
+ \ifnum\temp@count=1%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss}}}%
+ \else%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\hss}}}%
+ \fi%
+ \or%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}}%
+ \or%
+ \vbox{\trans@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@\hss}}}%
+ \fi%
+ \fi%
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \fi%
+ \else%
+ \xdef\last@{brace}%
+ \ifx\second@@\last@%
+ \xdef\last@{top}%
+ \textcolor{\f@color}{%
+ \ifx\bottop@\last@%
+ \ensuremath{\overbrace{\hbox to \second@\box@width{\hss%
+ \rule[0.2\arrow@height]{0pt}{0pt}\hss}}}%
+ \else%
+ \xdef\last@{ttop}%
+ \ifx\bottop@\last@%
+ \ensuremath{\overbrace{\hbox to \second@\box@width{\hss%
+ \rule[0.2\arrow@height]{0pt}{0pt}\hss}}}%
+ \else%
+ \raisebox{1.75\arrow@height}{\ensuremath{\underbrace{\hbox to %
+ \second@\box@width{}}}}%
+ \fi\fi}%
+ \else%
+ \xdef\last@{fill}%
+ \ifx\second@@\last@%
+ \fontfamily{\featurestyles@family}%
+ \fontseries{\featurestyles@series}%
+ \fontshape{\featurestyles@shape}%
+ \selectfont%
+ \ifx\bottop@\temp@\xdef\last@{0.35}\else\xdef\last@{0}\fi%
+ \kern0.15\box@width%
+ \loopcount=0\relax%
+ \loop%
+ \advance\loopcount by 1\relax%
+ \raisebox{\last@\arrow@height}{%
+ \hbox to \box@width{\hss{\textcolor{\f@color}{\featurestyles@size\fill@char}}\hss}}%
+ \ifnum\loopcount<\second@ \repeat%
+ \else%
+ \xdef\last@{bar}%
+ \ifx\second@@\last@%
+ \setlength\arrow@width{\pm@shift\box@height}%
+ \setlength\arrow@width{\b@r@stretch\arrow@width}%
+ \ifx\fill@char\N@%
+ \raisebox{\pm@shift\box@height}{\vrule width\box@width}%
+ \else%
+ \kern-0.6\box@width%
+ \ifx\frame@color\back@color%
+ \else%
+ \setlength\arrow@height{\box@height}%
+ \advance\arrow@height by -\pm@shift\box@height%
+ \setlength\arrow@height{\b@r@stretch\arrow@height}%
+ \raisebox{\arrow@width}{%
+ \hbox to \box@width{\hss{\textcolor{\back@color}{\vrule depth\arrow@width%
+ height\arrow@height width\box@width}}\hss}}%
+ \kern-\box@width%
+ \fi%
+ \setlength\arrow@height{\fill@char\box@height}%
+ \setlength\arrow@height{\b@r@stretch\arrow@height}%
+ \divide\arrow@height by 100\relax%
+ \ifdim\arrow@height<0pt%
+ \arrow@height=-\arrow@height%
+ \raisebox{\arrow@width}{%
+ \hbox to \box@width{\hss{\textcolor{\frame@color}{\vrule depth\arrow@height width0.8\box@width}}\hss}}%
+ \else%
+ \raisebox{\arrow@width}{%
+ \hbox to \box@width{\hss{\textcolor{\frame@color}{\vrule height\arrow@height width0.8\box@width}}\hss}}\fi%
+ \kern-\box@width%
+ \raisebox{\arrow@width}{\textcolor{Black}{\vrule height0.25pt depth0.25pt width\box@width}}%
+ \fi%
+ \else%
+ \xdef\last@{color}%
+ \ifx\second@@\last@%
+ \setlength\arrow@height{\fill@char\box@height}%
+ \setlength\arrow@height{\sc@le@stretch\arrow@height}%
+ \divide\arrow@height by 100\relax%
+ \raisebox{0.2\box@height}{%
+ \hbox to \box@width{\hss{\textcolor{\f@color}{\vrule height\arrow@height width\box@width}}\hss}}%
+ \else%
+ \xdef\last@{plotcolor}%
+ \ifx\second@@\last@%
+ \xdef\fill@char{\fill@char,&}%
+ \loop%
+ \expandafter\get@firstv@l\fill@char%
+ \ifx\second@@\N@\hbox to \box@width{\hss}%
+ \else
+ \loopcount=\second@@%
+ \advance\loopcount by -\pm@shift%
+ \advance\loopcount by 4%
+ \divide\loopcount by 5%
+ \multiply\loopcount by 5%
+ \ifnum\loopcount>100\loopcount=100\fi%
+ \ifnum\loopcount<5\loopcount=5\fi%
+ \setlength\arrow@height{50\box@height}%
+ \divide\arrow@height by 100\relax%
+ \setlength\arrow@height{\sc@le@stretch\arrow@height}%
+ \raisebox{0.2\box@height}{%
+ \hbox to \box@width{\hss{\textcolor{\f@color\the\loopcount}{\vrule height\arrow@height width\box@width}}\hss}}%
+ \fi
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \else%
+ \xdef\last@{plotbar}%
+ \ifx\second@@\last@%
+ \xdef\fill@char{\fill@char,&}%
+ \ifnum\pm@shift>0%
+ \setlength\arrow@width{0pt}%
+ \else
+ \setlength\arrow@width{-\pm@shift\box@height}%
+ \divide\arrow@width by 100%
+ \setlength\arrow@width{\b@r@stretch\arrow@width}%
+ \fi%
+ \loop%
+ \expandafter\get@firstv@l\fill@char%
+ \ifx\second@@\N@\hbox to \box@width{\hss}%
+ \else\relax%
+ \ifx\frame@color\back@color%
+ \else%
+ \setlength\arrow@height{\b@r@stretch\box@height}%
+ \hbox to \box@width{\hss{\textcolor{\back@color}%
+ {\vrule height\arrow@height width\box@width}}\hss}%
+ \kern-\box@width%
+ \fi%
+ \setlength\arrow@height{\second@@\box@height}%
+ \divide\arrow@height by 100\relax%
+ \setlength\arrow@height{\b@r@stretch\arrow@height}%
+ \ifdim\arrow@height<0pt%
+ \arrow@height=-\arrow@height%
+ \raisebox{\arrow@width}{%
+ \hbox to \box@width{\hss{\textcolor{\frame@color}%
+ {\vrule depth\arrow@height width0.8\box@width}}\hss}}%
+ \else%
+ \raisebox{\arrow@width}{%
+ \hbox to \box@width{\hss{\textcolor{\frame@color}%
+ {\vrule height\arrow@height width0.8\box@width}}\hss}}\fi%
+ \kern-\box@width%
+ \raisebox{\arrow@width}{\textcolor{Black}%
+ {\vrule height0.25pt depth0.25pt width\box@width}}%
+ \fi
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \else%
+ \xdef\last@{helix}%
+ \ifx\second@@\last@%
+ \fontfamily{\rmdefault}%
+ \fontseries{\mddefault}%
+ \fontshape{\itdefault}%
+ \selectfont%
+ \ifx\bottop@\temp@\xdef\last@{0.35}\else\xdef\last@{0}\fi%
+ \kern0.15\box@width%
+ \setbox1=\hbox{\ensuremath{\smile}\kern-1.13exo\kern-1.02ex}%
+ \arrow@width=\second@\box@width%
+ \divide\arrow@width by \wd1%
+ \arrow@width=2\wd1%
+ \loop%
+ \textcolor{\f@color}{\raisebox{-0.25ex}{\ensuremath{\smile}}%
+ \kern-1.13ex\raisebox{0.3ex}{o}}\kern-1.02ex%
+ \advance\arrow@width by \wd1\relax%
+ \ifdim\arrow@width<\second@\box@width \repeat%
+ \textcolor{\f@color}{\raisebox{-0.25ex}{\ensuremath{\smile}}}%
+ \else%
+ \xdef\last@{box}%
+ \ifx\second@@\last@%
+ \fontfamily{\featurestyles@family}%
+ \fontseries{\featurestyles@series}%
+ \fontshape{\featurestyles@shape}%
+ \selectfont%
+ \kern-\second@\box@width%
+ \bgroup%
+ \textcolor{\back@color}{%
+ \vrule width\second@\box@width height\box@height depth\box@depth}%
+ \kern-\second@\box@width%
+ \fboxsep-\rule@@thick\fboxrule\rule@@thick%
+ \textcolor{\frame@color}{%
+ \fbox{\makebox[\second@\box@width]%
+ {\vrule\@height\box@height\@depth\box@depth \@width\z@}}}%
+ \egroup%
+ \setbox1=\hbox{\residues@size{\fill@char}}%
+ \temp@count=\wd1 \xdef\wd@{\the\temp@count}%
+ \width@tmp=\second@\box@width%
+ \temp@count=\width@tmp%
+ \xdef\sb@{\the\temp@count}%
+ \ifnum\wd@>\sb@ \xdef\fill@char{}\fi%
+ \hbox to -\second@\box@width{\hss\textcolor{\f@color}%
+ {\residues@size{\fill@char}}\hss}%
+ \else%
+ \expandafter\get@shape\second@@%
+ \xdef\last@{arrow}%
+ \ifx\second@@\last@%
+ \kern-0.75\box@width%
+ \ifx\bottop@\temp@ \xdef\last@{0.35}\else\xdef\last@{-0.55}\fi%
+ \textcolor{\f@color}{%
+ \raisebox{\last@\arrow@height}{%
+ \if\first@@ ,%
+ \rule{0.1\arrow@height}{\arrow@height}\kern-0.35\arrow@height%
+ \else%
+ \if\first@@ |%
+ \rule{0.1\arrow@height}{2\arrow@height}\kern-0.35\arrow@height%
+ \else%
+ \if\first@@ `\xdef\first@@{'}\fi%
+ \if\first@@ '%
+ \rule[\arrow@height]%
+ {0.1\arrow@height}{\arrow@height}\kern-0.35\arrow@height%
+ \else%
+ \if\first@@ -%
+ \rule{0pt}{0pt}\kern-0.35\arrow@height%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \if\third@@ v%
+ \if\first@@ v%
+ \ensuremath{\overleftarrow{\hbox to %
+ \second@\box@width{\rule[0.4\arrow@height]{0pt}{0pt}\hss}}}%
+ \kern-\arrow@width%
+ \ensuremath{\overrightarrow{\hbox%
+ {\rule[0.4\arrow@height]{0pt}{0pt}\hss}}}%
+ \else%
+ \ensuremath{\overrightarrow{\hbox to %
+ \second@\box@width{\rule[0.4\arrow@height]{0pt}{0pt}\hss}}}%
+ \fi%
+ \else%
+ \if\first@@ v%
+ \ensuremath{\overleftarrow{\hbox to %
+ \second@\box@width{\rule[0.4\arrow@height]{0pt}{0pt}\hss}}}%
+ \else
+ \kern0.35\arrow@height%
+ \rule[0.9\arrow@height]{\second@\box@width}{0.1\arrow@height}%
+ \kern0.35\arrow@height%
+ \fi
+ \if\third@@ ,%
+ \kern-0.4\arrow@height\rule{0.1\arrow@height}{\arrow@height}%
+ \else%
+ \if\third@@ |%
+ \kern-0.4\arrow@height\rule{0.1\arrow@height}{2\arrow@height}%
+ \else%
+ \if\third@@ `\xdef\third@@{'}\fi%
+ \if\third@@ '%
+ \kern-0.4\arrow@height%
+ \rule[\arrow@height]{0.1\arrow@height}{\arrow@height}%
+ \fi%
+ \fi%
+ \fi%
+ \fi}}%
+ \else%
+ \xdef\last@{doublearrow}%
+ \ifx\second@@\last@%
+ \setbox1=\hbox{\ensuremath{\Rightarrow}}%
+ \arrow@height=\ht1%
+ \arrow@width=\wd1%
+ \setbox1=\hbox to \second@\box@width{}%
+ \width@tmp=\wd1%
+ \kern-0.75\box@width%
+ \xdef\temp@{top}%
+ \ifx\bottop@\temp@ \xdef\last@{0.25}%
+ \else%
+ \xdef\temp@{ttop}%
+ \ifx\bottop@\temp@ \xdef\last@{0.25}%
+ \else%
+ \xdef\last@{-0.25}\fi\fi%
+ \textcolor{\f@color}{%
+ \raisebox{\last@\arrow@height}{%
+ \if\first@@ ,%
+ \rule[-0.5\arrow@height]{0.1\arrow@height}{1.5\arrow@height}%
+ \kern-0.1\arrow@height%
+ \else%
+ \if\first@@ |%
+ \rule[-0.5\arrow@height]{0.1\arrow@height}{2.25\arrow@height}%
+ \kern-0.1\arrow@height%
+ \else%
+ \if\first@@ `\xdef\first@@{'}\fi%
+ \if\first@@ '%
+ \rule[0.4\arrow@height]%
+ {0.1\arrow@height}{1.5\arrow@height}%
+ \kern-0.1\arrow@height%
+ \else%
+ \if\first@@ <%
+ \ensuremath{\Leftarrow}\kern-0.5\arrow@width%
+ \advance\width@tmp by -0.5\arrow@width
+ \else
+ \rule{0pt}{0pt}%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \if\third@@ >%
+ \advance\width@tmp by -0.5\arrow@width%
+ \rule[0.37\arrow@height]{\width@tmp}{0.1\arrow@height}%
+ \kern-\width@tmp%
+ \rule[0.9\arrow@height]{\width@tmp}{0.1\arrow@height}%
+ \kern-0.5\arrow@width\ensuremath{\Rightarrow}%
+ \else%
+ \rule[0.37\arrow@height]{\width@tmp}{0.1\arrow@height}%
+ \kern-\width@tmp%
+ \rule[0.9\arrow@height]{\width@tmp}{0.1\arrow@height}%
+ \if\third@@ ,%
+ \kern-0.05\arrow@height%
+ \rule[-0.5\arrow@height]{0.1\arrow@height}{1.5\arrow@height}%
+ \else%
+ \if\third@@ |%
+ \kern-0.05\arrow@height%
+ \rule[-0.5\arrow@height]{0.1\arrow@height}{2.25\arrow@height}%
+ \else%
+ \if\third@@ `\xdef\third@@{'}\fi%
+ \if\third@@ '%
+ \kern-0.05\arrow@height%
+ \rule[0.4\arrow@height]{0.1\arrow@height}{1.5\arrow@height}%
+ \fi%
+ \fi%
+ \fi%
+ \fi}}%
+ \else
+ \loopcount=0\relax%
+ \width@tmp=\arrow@height%
+ \temp@@length=\rule@@thick%
+ \advance\width@tmp by -0.5\temp@@length%
+ \if\first@@ o\xdef\first@@{O}\fi%
+ \if\third@@ o\xdef\third@@{O}\fi%
+ \ifx\bottop@\temp@ \else \advance\width@tmp by -0.4\arrow@height\fi%
+ \textcolor{\f@color}{%
+ \if\first@@ ,%
+ \rule{\temp@@length}{\arrow@height}\kern-\temp@@length%
+ \else%
+ \if\first@@ |%
+ \rule{\temp@@length}{2\arrow@height}\kern-\temp@@length%
+ \else%
+ \if\first@@ O%
+ \raisebox{0.06ex}{\ensuremath{\bullet}}\kern-0.55ex%
+ \rule[\width@tmp]{0.65ex}{\temp@@length}%
+ \else%
+ \if\first@@ <%
+ \raisebox{0.06ex}{\ensuremath{\blacktriangleleft}}\kern-0.35ex%
+ \else
+ \if\first@@ `\xdef\first@@{'}\fi%
+ \if\first@@ '%
+ \advance\width@tmp by 0.5\temp@@length%
+ \rule[\width@tmp]{\temp@@length}{\arrow@height}\kern-\temp@@length%
+ \advance\width@tmp by -0.5\temp@@length%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \loopcount=\second@%
+ \if\first@@ <\advance\loopcount by -1\relax\ifnum\loopcount<0 \loopcount=0\fi\fi%
+ \if\third@@ >\advance\loopcount by -1\relax\ifnum\loopcount<0 \loopcount=0\fi\fi%
+ \if\first@@ O\advance\loopcount by -1\relax\ifnum\loopcount<0 \loopcount=0\fi\fi%
+ \if\third@@ O\advance\loopcount by -1\relax\ifnum\loopcount<0 \loopcount=0\fi\fi%
+ \xdef\second@{\the\loopcount}%
+ \rule[\width@tmp]{\second@\box@width}{\temp@@length}%
+ \if\third@@ ,%
+ \kern-\temp@@length\rule{\temp@@length}{\arrow@height}%
+ \else%
+ \if\third@@ |%
+ \kern-\temp@@length\rule{\temp@@length}{2\arrow@height}%
+ \else%
+ \if\third@@ O%
+ \rule[\width@tmp]{0.65ex}{\temp@@length}%
+ \kern-0.55ex\raisebox{0.06ex}{\ensuremath{\bullet}}%
+ \else%
+ \if\third@@ >%
+ \kern-0.35ex\raisebox{0.06ex}{\ensuremath{\blacktriangleright}}%
+ \else
+ \if\third@@ `\xdef\third@@{'}\fi%
+ \if\third@@ '%
+ \advance\width@tmp by 0.5\temp@@length%
+ \kern-\temp@@length\rule[\width@tmp]{\temp@@length}{\arrow@height}%
+ \fi%
+ \fi%
+ \fi%
+ \fi
+ \fi}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+}
+\def\next@featuretext&#1;#2;#3@{%
+ \xdef\first@{#3@}%
+ \xdef\last@{#2::&}\expandafter\test@fill\last@%
+ \ifx\f@color\comm@\xdef\f@color{Black}\fi%
+ \fontfamily{\featuretext@family}%
+ \fontseries{\featuretext@series}%
+ \fontshape{\featuretext@shape}%
+ \selectfont%
+ \xdef\last@{translate}%
+ \ifx\last@\second@@%
+ \xdef\fill@char{\fill@char &}%
+ \if\seq@type N
+ \loop%
+ \expandafter\get@firstfill\fill@char%
+ \if\second@@ -\def\second@@{\hss}\fi%
+ \hbox to \box@width{\hss\textcolor{\f@color}{%
+ \featuretext@size{\strut\second@@}}\hss}%
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \else
+ \hbox to #1\box@width{\hss%
+ \temp@count=1%
+ \loop%
+ \expandafter\get@tripletfill\fill@char%
+ \if\second@@ -\ifnum\tr@nstextstyle>0\hbox to \box@width{\hss}\fi%
+ \else%
+ \ifcase\tr@nstextstyle%
+ \hbox{\transtext@size\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\,\hss}}%
+ \or%
+ \ifnum\temp@count=1%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}}%
+ \else%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}}%
+ \fi%
+ \or%
+ \ifnum\temp@count=1%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss}}}%
+ \else%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}%
+ {\hss\second@@\second@@@\second@@@@\hss}}}%
+ \fi%
+ \or%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}{\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@}}}%
+ \or%
+ \vbox{\transtext@size%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@\hss}}%
+ \hbox to \box@width{\textcolor{\f@color}{\hss\second@@@@\hss}}}%
+ \fi%
+ \fi%
+ \ifx\fill@char\ampers@nd\else\repeat%
+ \hss}
+ \fi%
+ \else%
+ \textcolor{\f@color}{%
+ \hbox to #1\box@width{\hss\featuretext@size{\strut\fourth@}\hss}}%
+ \fi%
+}
+\def\put@featuretext{%
+ \if\first@ @%
+ \else
+ \expandafter\next@featuretext\first@%
+ \put@featuretext%
+ \fi}
+\def\next@featurestyle&#1;#2;#3@{%
+ \xdef\first@{#2}%
+ \xdef\second@{#1}%
+ \ifx\first@\ampers@nd \hbox to \second@\box@width{\hss}%
+ \else%
+ \hbox to \second@\box@width%
+ {\hss\expandafter\putfeature@style{\first@}\hss}\fi%
+ \xdef\first@{#3@}%
+}
+\def\put@featurestyle{%
+ \if\first@ @%
+ \else
+ \expandafter\next@featurestyle\first@%
+ \put@featurestyle%
+ \fi
+}
+\def\put@feature{%
+ \vspace{-\baselineskip}%
+ \newline\hbox{}%
+ \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi%
+ \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi%
+ \xdef\temp@{ttop}%
+ \ifx\temp@\bottop@%
+ \xdef\first@{\csname textfeature\bottop@\endcsname @}%
+ \put@featuretext%
+ \else%
+ \xdef\temp@{top}%
+ \ifx\temp@\bottop@%
+ \xdef\first@{\csname textfeature\bottop@\endcsname @}%
+ \put@featuretext%
+ \else
+ \xdef\first@{\csname stylefeature\bottop@\endcsname @}%
+ \put@featurestyle%
+ \fi\fi%
+ \newline\hbox{}%
+ \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi%
+ \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi%
+ \ifx\temp@\bottop@%
+ \xdef\first@{\csname stylefeature\bottop@\endcsname @}%
+ \put@featurestyle%
+ \else%
+ \xdef\temp@{ttop}%
+ \ifx\temp@\bottop@%
+ \xdef\first@{\csname stylefeature\bottop@\endcsname @}%
+ \put@featurestyle%
+ \else
+ \xdef\first@{\csname textfeature\bottop@\endcsname @}%
+ \put@featuretext%
+ \fi\fi%
+ \newline\hbox{}%
+}
+\def\put@@@frame#1{%
+ \xdef\last@{#1[,]&}\expandafter\opt@color\last@%
+ \xdef\second@@{\fourth@}%
+ \ifx\f@color\comm@%
+ \xdef\third@@{0.2\box@width}%
+ \else%
+ \xdef\third@@{\f@color}%
+ \fi%
+ \setlength\arrow@width{\temp@@length}%
+ \advance\arrow@width by -\third@@%
+ \textcolor{\second@@}{%
+ \rule{\second@\box@width}{\third@@}%
+ \kern-\second@\box@width%
+ \rule{\third@@}{\arrow@width}%
+ \kern-\third@@%
+ \rule[\arrow@width]{\second@\box@width}{\third@@}%
+ \kern-\third@@%
+ \rule{\third@@}{\arrow@width}}%
+}
+\def\next@frame&#1;#2;#3@{%
+ \xdef\first@{#2}%
+ \xdef\second@{#1}%
+ \ifx\first@\ampers@nd \hbox to \second@\box@width{\hss}%
+ \else%
+ \expandafter\put@@@frame{\first@}%
+ \fi%
+ \xdef\first@{#3@}%
+}
+\def\put@@frame{%
+ \if\first@ @%
+ \else
+ \expandafter\next@frame\first@%
+ \put@@frame%
+ \fi%
+}
+\def\put@frame{%
+ \temp@count=\seq@count%
+ \setlength\temp@@length{\box@height}%
+ \advance\temp@@length by \box@depth%
+ \setlength\arrow@height{0.5\temp@@length}%
+ \setlength\temp@@length{\temp@count\temp@@length}%
+ \advance\temp@@length by \arrow@height%
+ \setlength\arrow@width{\sep@space}%
+ \setlength\arrow@width{\seq@gap@num\arrow@width}%
+ \advance\temp@@length by \arrow@width%
+ \vspace{\arrow@height}%
+ \vspace{-\temp@@length}%
+ \vspace{-\baselineskip}%
+ \ifshow@cons\ifnum\cons@top=1 \vspace{-\baselineskip}\fi\fi%
+ \newline\hbox{}%
+ \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi%
+ \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi%
+ \xdef\first@{\styleframe @}%
+ \put@@frame%
+ \vspace{-\arrow@height}%
+ \ifshow@cons\ifnum\cons@top=1 \vspace{\baselineskip}\fi\fi%
+ \newline\hbox{}%
+}
+\def\set@lines{%
+ \pos@count=1
+ \xdef\frame@pos{1}%
+ \xdef\featurepostop{1}\xdef\featureposbottom{1}%
+ \xdef\featureposttop{1}\xdef\featureposbbottom{1}%
+ \findc@nsensus%
+ \noindent%
+ \ifnum\feature@ttop=1
+ \ifnum\featureonttop=0 \xdef\feature@ttop{0} \fi
+ \xdef\bottop@{ttop}%
+ \put@feature%
+ \vspace{\tt@sp@ce}%
+ \vspace{-\baselineskip}%
+ \newline\hbox{}%
+ \else
+ \iffix@\ifttopfeature \vspace{\tt@sp@ce}\newline\hbox{}\newline\hbox{}\fi\fi
+ \fi
+ \ifnum\feature@top=1
+ \ifnum\featureontop=0 \xdef\feature@top{0} \fi
+ \xdef\bottop@{top}%
+ \put@feature%
+ \vspace{\t@sp@ce}%
+ \vspace{-\baselineskip}%
+ \newline\hbox{}%
+ \else
+ \iffix@\iftopfeature \vspace{\t@sp@ce}\newline\hbox{}\newline\hbox{}\fi\fi
+ \fi
+ \ifnum\rule@num<0 \else \ifnum\rule@top=0 \loopcount=0 \put@ruler \fi\fi
+ \set@consensus
+ \ifshow@cons\ifnum\cons@top=0
+ \xdef\cons@now{y}%
+ \xdef\first@{\consensus @}%
+ \xdef\first@@@{\c@nscol @}%
+ \loopcount=0\relax%
+ \put@line%
+ \xdef\c@nscol{}%
+ \xdef\cons@now{no}%
+ \fi\fi
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\second@{\csname hide@seq\the\loopcount\endcsname}%
+ \xdef\first@{noshade}\nosh@defalse%
+ \ifx\second@\first@ \nosh@detrue \xdef\second@{false}\fi
+ \xdef\first@{false}%
+ \ifx\second@\first@
+ \ifnames@right
+ \ifnumbers@left
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ <\csname newseqname\the\loopcount\endcsname>}%
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ \the\csname res@count\the\loopcount\endcsname)%
+ <\csname newseqname\the\loopcount\endcsname>}%
+ \fi
+ \else
+ \ifnumbers@left
+ \else
+ \expandafter\xdef\csname seq\the\loopcount\endcsname{%
+ \csname seq\the\loopcount\endcsname%
+ \the\csname res@count\the\loopcount\endcsname)}%
+ \fi
+ \fi
+ \xdef\first@{\csname seq\the\loopcount\endcsname @}%
+ \expandafter\ifx\csname seq@gap\the\loopcount\endcsname\yes%
+ \ifnum\finger@linenum=0\seq@skip%
+ \else%
+ \ifnum\loopcount<\seq@count\seq@skip\fi%
+ \fi%
+ \fi%
+ \put@line%
+ \fi
+ \ifnum\loopcount<\seq@count\repeat
+ \ifshow@cons\ifnum\cons@top=1
+ \xdef\cons@now{y}%
+ \xdef\first@{\consensus @}%
+ \xdef\first@@@{\c@nscol @}%
+ \loopcount=0\relax%
+ \put@line%
+ \xdef\c@nscol{}%
+ \xdef\cons@now{no}%
+ \fi\fi
+ \ifnum\frame@=1
+ \ifnum\frame@on=0 \xdef\frame@{0}\fi
+ \put@frame
+ \fi
+ \ifnum\rule@num<0
+ \else
+ \ifnum\rule@top=1
+ \loopcount=0\relax%
+ \put@ruler%
+ \vspace{0.25\baselineskip}%
+ \fi
+ \fi
+ \ifnum\feature@bottom=1
+ \ifnum\featureonbottom=0 \xdef\feature@bottom{0}\fi
+ \xdef\bottop@{bottom}%
+ \vspace{\b@sp@ce}%
+ \if\bottom@stretch y%
+ \vspace{-\box@height}%
+ \vspace{\b@r@stretch\box@height}%
+ \fi%
+ \put@feature
+ \else
+ \iffix@
+ \if\bottom@stretch y%
+ \vspace{-\box@height}%
+ \vspace{\b@r@stretch\box@height}%
+ \fi%
+ \ifbottomfeature
+ \vspace{\b@sp@ce}\newline\hbox{}\newline\hbox{}
+ \fi
+ \fi
+ \fi
+ \ifnum\feature@bbottom=1
+ \ifnum\featureonbbottom=0 \xdef\feature@bbottom{0}\fi
+ \xdef\bottop@{bbottom}%
+ \vspace{\bb@sp@ce}%
+ \if\bbottom@stretch y%
+ \vspace{-\box@height}%
+ \vspace{\b@r@stretch\box@height}%
+ \fi%
+ \put@feature
+ \else
+ \iffix@
+ \if\bbottom@stretch y%
+ \vspace{-\box@height}%
+ \vspace{\b@r@stretch\box@height}%
+ \fi%
+ \ifbbottomfeature
+ \vspace{\bb@sp@ce}\newline\hbox{}\newline\hbox{}
+ \fi
+ \fi
+ \fi
+ \xdef\consensus{} \xdef\ruler@{}
+ \xdef\styleframe{}
+ \xdef\textfeaturetop{} \xdef\textfeaturebottom{}
+ \xdef\textfeaturettop{} \xdef\textfeaturebbottom{}
+ \xdef\stylefeaturetop{} \xdef\stylefeaturebottom{}
+ \xdef\stylefeaturettop{} \xdef\stylefeaturebbottom{}
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \xdef\seq@line{\csname sequence\the\loopcount\endcsname}
+ \expandafter\remove@fromseq\seq@line
+ \ifnum\loopcount<\seq@count \repeat}
+
+\def\block@output{%
+ \expandafter\ifnum\csname res@count\start@seq\endcsname<\end@num\relax
+ \message{.}
+ \ifx\out@put\y@
+ \vbox{\set@lines}\par
+\block@skip
+ \else
+ \pos@count=1
+ \findc@nsensus
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1\relax
+ \xdef\seq@line{\csname sequence\the\loopcount\endcsname}
+ \expandafter\remove@fromseq\seq@line
+ \ifnum\loopcount<\seq@count \repeat
+ \fi
+ \ifstop@
+ \else
+ \advance\seq@pointer by -\res@perline
+ \ifnum\seq@pointer>\res@perline \block@output \fi
+ \fi
+ \fi}
+
+%%%%% Basic input routines
+
+\def\savedseqlength#1#2#3{%
+ \expandafter\xdef\csname savelength#1seq#2\endcsname{#3}}
+
+\def\set@savedseqlength{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\ifx%
+ \csname savelength\@lign@count seq\the\loopcount\endcsname\relax
+ \else
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{%
+ \csname savelength\@lign@count seq\the\loopcount\endcsname}
+ \fi
+ \ifnum\loopcount<\seq@count\repeat
+}
+
+\def\save@lengths{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1\relax
+ \immediate\write\@auxout{%
+ \string\savedseqlength{\@lign@count}{\the\loopcount}%
+ {\expandafter\the\csname res@count\the\loopcount\endcsname}}
+ \ifnum\loopcount<\seq@count \repeat
+}
+
+\def\do@cleanup{%
+ \expandafter\firstchar@get\third@
+ \expandafter\check@char\first@
+ \ifletter
+ \xdef\second@{\second@\first@}
+ \else
+ \ifnumber
+ \ifx\first@\gre@ter
+ \xdef\second@{\second@{$>$}}
+ \else
+ \ifx\first@\sm@ller
+ \xdef\second@{\second@{$<$}}
+ \else
+ \xdef\second@{\second@\first@}
+ \fi\fi
+ \else
+ \ifnum\code@num=6
+ \xdef\second@{\second@\#}
+ \else
+ \ifnum\code@num=14
+ \xdef\second@{\second@\%}
+ \else
+ \xdef\second@{\second@\noexpand\string\first@}
+ \fi\fi
+ \fi
+ \fi
+ \ifx\third@\@t \else \do@cleanup \fi
+}
+
+\def\cleanup@name{%
+ \xdef\third@{\csname seqname\the\loopcount\endcsname @}
+ \xdef\second@{}
+ \do@cleanup
+ \expandafter\xdef\csname newseqname\the\loopcount\endcsname{\second@}
+}
+
+\def\clear@seq{%
+ \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\def\csname sequence\the\loopcount\endcsname{}
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\consensus{}
+ \xdef\constopo{}
+ \xdef\frame@on{0}
+ \xdef\textfeaturetop{} \xdef\featureontop{0}
+ \xdef\textfeaturettop{} \xdef\featureonttop{0}
+ \xdef\textfeaturebottom{} \xdef\featureonbottom{0}
+ \xdef\textfeaturebbottom{}\xdef\featureonbbottom{0}
+ \xdef\styleframe{}
+ \xdef\stylefeaturetop{}
+ \xdef\stylefeaturettop{}
+ \xdef\stylefeaturebottom{}
+ \xdef\stylefeaturebbottom{}}
+\def\do@count{%
+ \expandafter\res@get\seq@line
+ \if\first@\ampers@nd
+ \else
+ \advance\innerloopcount by 1
+ \expandafter\check@char\first@
+ \ifletter
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \expandafter\ifnum\csname res@count\the\loopcount\endcsname=0
+ \global\advance\csname res@count\the\loopcount\endcsname by 1
+ \fi
+ \fi
+ \do@count
+ \fi}
+\def\residue@@count{%
+ \xdef\seq@line{\csname sequence\the\loopcount\endcsname &@}
+ \innerloopcount=0 \do@count
+ \advance\loopcount by 1
+ \ifnum\loopcount>\seq@count \else\residue@@count\fi}
+\def\residue@count{%
+ \expandafter\res@get\seq@line
+ \if\first@\ampers@nd
+ \else
+ \advance\innerloopcount by 1
+ \ifstart@ \advance\res@count by 1
+ \else
+ \ifnum\start@seq=0
+ \advance\end@count by 1
+ \else
+ \expandafter\check@char\first@
+ \ifletter \advance\end@count by 1 \fi
+ \fi
+ \ifnum\end@count=\start@num\relax
+ \xdef\start@number{\the\innerloopcount}
+ \ifnum\start@seq=0
+ \cons@count=\start@number
+ \advance\cons@count by -1
+ \fi
+ \start@true \res@count=1
+ \fi
+ \fi
+ \residue@count
+ \fi}
+\def\read@loop{%
+ \read\alignfile to \inline
+ \xdef\last@{\expandafter\string\inline}
+ \ifx\last@\par@
+ \else
+ \xdef\inline{\inline @}
+ \expandafter\seq@get\inline
+ \ifstop@
+ \else
+ \innerloopcount=\csname @rd\the\loopcount\endcsname\relax
+ \expandafter\ifx\csname seq@name\the\loopcount\endcsname\first@
+ \expandafter\xdef\csname sequence\the\innerloopcount\endcsname{%
+ \csname sequence\the\innerloopcount\endcsname\seq@line}
+ \ifnum\start@seq=0
+ \ifnum\loopcount=1
+ \res@count=0 \innerloopcount=0
+ \xdef\seq@line{\seq@line &@} \residue@count
+ \fi
+ \else
+ \ifnum\innerloopcount=\start@seq
+ \res@count=0 \innerloopcount=0
+ \xdef\seq@line{\seq@line &@} \residue@count
+ \fi
+ \fi
+ \advance\loopcount by 1
+ \ifnum\loopcount>\seq@count
+ \ifstart@
+ \else
+ \loopcount=1\residue@@count\clear@seq
+ \fi
+ \advance\seq@pointer by \res@count
+ \ifnum\seq@pointer>\res@perline \block@output \fi
+ \loopcount=1
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifeof\alignfile \else \read@loop \fi}
+\def\read@fasta{%
+ \read\alignfile to \inline
+ \xdef\last@{\expandafter\string\inline}
+ \ifx\last@\par@
+ \else
+ \xdef\seq@line{\inline}
+ \xdef\inline{\inline @}
+ \expandafter\firstchar@get\inline
+ \ifstop@
+ \else
+ \ifx\first@\gre@ter
+ \advance\loopcount by 1\relax
+ \expandafter\seq@get\third@
+ \xdef\seq@name{\first@}
+ \xdef\second@{\first@ &}
+ \ifx\second@\ampers@nd \xdef\seq@name{seq\the\loopcount}\fi
+ \innerloopcount=\csname @rd\the\loopcount\endcsname\relax
+ \else
+ \expandafter\ifx\csname seq@name\the\loopcount\endcsname\seq@name
+ \expandafter\xdef\csname sequence\the\innerloopcount\endcsname{%
+ \csname sequence\the\innerloopcount\endcsname\seq@line}
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifeof\alignfile
+ \ifnum\start@seq=0
+ \xdef\seq@line{\csname sequence1\endcsname &@}
+ \else
+ \xdef\seq@line{\csname sequence\start@seq\endcsname &@}
+ \fi
+ \res@count=0
+ \innerloopcount=0
+ \residue@count
+ \advance\seq@pointer by \res@count
+ \ifnum\seq@pointer>\res@perline \block@output \fi
+ \else
+ \read@fasta
+ \fi}
+\def\read@lines{%
+ \openin\alignfile = \alignfilename
+ \clear@seq
+ \ifnum\start@seq>0
+ \xdef\start@seq{\csname @rd\start@seq\endcsname} \fi
+ \loopcount=\start@num
+ \advance\loopcount by -\csname res@count\start@seq\endcsname\relax
+ \expandafter\ifnum\csname res@count\start@seq\endcsname<\start@num\relax
+ \xdef\start@num{\the\loopcount}
+ \else \start@true \fi
+ \loopcount=\end@num
+ \advance\loopcount by -\csname res@count\start@seq\endcsname\relax
+ \res@count=0 \seq@pointer=0 \end@count=0
+ \xdef\start@number{0}
+ \ifx\f@st@\y@
+ \loopcount=0
+ \read@fasta
+ \else
+ \loopcount=1
+ \read@loop
+ \fi
+ \ifnum\seq@pointer>0
+ \ifstop@
+ \else
+ \res@count=\res@perline
+ \res@perline=\seq@pointer
+ \block@output
+ \fi
+ \fi
+ \message{)}
+ \closein\alignfile}
+
+%%%%% Read alignment, decide whether MSF or ALN, interpret
+
+\def\readalignfile#1{%
+ \def\alignfilename{#1}
+ \xdef\first@{byhand}
+ \ifx\alignfilename\first@
+ \else
+ \openin\alignfile = #1
+ \ifeof\alignfile
+ \PackageError{TeXshade}
+ {File `#1' not found}
+ {\MessageBreak
+ The alignment file you specified is missing or you have \MessageBreak
+ misspelled it. \MessageBreak\MessageBreak
+ Stop here, otherwise you're likely getting in trouble. \MessageBreak
+ Type X <return> to quit. \MessageBreak
+}
+ \else
+ \message{(\alignfilename :}
+ \xdef\seq@type{} \xdef\he@der{no} \xdef\f@st@{no}
+ \xdef\first@line{y}
+ \seq@count=0 \loopcount=0 \innerloopcount=0 \temp@count=0
+ \loop
+ \read\alignfile to \inline
+ \xdef\test@{\expandafter\string\inline}
+ \ifx\test@\par@ \innerloopcount=0
+ \else
+ \xdef\msfline{\inline & & & & @}
+ \expandafter\inf@@get\msfline
+ \ifx\first@\@msf \expandafter\type@get\msfline \fi
+ \ifx\second@\@msf \expandafter\type@get\msfline \fi
+ \ifx\third@\@msf \expandafter\type@get\msfline \fi
+ \ifx\first@\n@me \advance\loopcount by 1\relax
+ \expandafter\xdef\csname seqname\the\loopcount\endcsname{\second@}
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{\fourth@}
+ \fi
+ \ifx\first@\he@derend
+ \ifnum\loopcount>0 \xdef\he@der{yes} \fi
+ \fi
+ \xdef\alnline{\inline @}
+ \expandafter\check@letter\alnline
+ \ifletter
+ \expandafter\seq@get\alnline
+ \advance\innerloopcount by 1\relax
+ \seq@count=\innerloopcount
+ \expandafter\xdef\csname newseqname\the\seq@count\endcsname{\first@}
+ \else
+ \expandafter\firstchar@get\alnline
+ \ifx\first@\gre@ter
+ \ifx\first@line\y@ \xdef\f@st@{y}\fi
+ \expandafter\seq@get\third@
+ \advance\temp@count by 1\relax
+ \xdef\second@{\first@ &}
+ \ifx\second@\ampers@nd \xdef\first@{seq\the\temp@count}\fi
+ \expandafter\xdef\csname seq@name\the\temp@count\endcsname{\first@}
+ \fi
+ \fi
+ \fi
+ \xdef\first@line{n}
+ \ifeof\alignfile \else\repeat
+ \closein\alignfile
+ \xdef\first@{no}
+ \ifx\he@der\first@
+ \loopcount=0
+ \ifx\f@st@\y@
+ \seq@count=\temp@count \loopcount=0
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname seqname\the\loopcount\endcsname{%
+ \csname seq@name\the\loopcount\endcsname}
+ \expandafter\xdef\csname newseqname\the\loopcount\endcsname{%
+ \csname seq@name\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{99999999}
+ \ifnum\loopcount<\seq@count \repeat
+ \else
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname seqname\the\loopcount\endcsname{%
+ \csname newseqname\the\loopcount\endcsname}
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{99999999}
+ \ifnum\loopcount<\seq@count \repeat
+ \fi
+ \else
+ \seq@count=\loopcount \loopcount=0 \box@width=0pt
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname newseqname\the\loopcount\endcsname{%
+ \csname seqname\the\loopcount\endcsname}
+ \ifnum\loopcount<\seq@count \repeat
+ \fi
+ \set@savedseqlength
+ \ifnum\seq@count>\max@seqnumber \set@maxseqnumber\seq@count \fi
+ \loopcount=0 \xdef\seq@order{}
+ \expandafter\xdef\csname stack@reg\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@tintreg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@top\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@bottom\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@bbottom\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname seq@start\the\loopcount\endcsname{1}
+ \expandafter\xdef\csname name@col\the\loopcount\endcsname{yes}
+ \expandafter\xdef\csname number@col\the\loopcount\endcsname{yes}
+ \loop
+ \advance\loopcount by 1
+ \expandafter\xdef\csname @rd\the\loopcount\endcsname{\the\loopcount}
+ \csname res@count\the\loopcount\endcsname=0
+ \cleanup@name
+ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n}
+ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n}
+ \expandafter\xdef\csname hide@seq\the\loopcount\endcsname{false}
+ \expandafter\xdef\csname hide@name\the\loopcount\endcsname{no}
+ \expandafter\xdef\csname name@col\the\loopcount\endcsname{yes}
+ \expandafter\xdef\csname hide@number\the\loopcount\endcsname{no}
+ \expandafter\xdef\csname number@col\the\loopcount\endcsname{yes}
+ \expandafter\xdef\csname stack@reg\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@tintreg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@emphreg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@framereg\the\loopcount\endcsname{&;&;&;@}
+ \expandafter\xdef\csname stack@top\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@ttop\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@bottom\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname stack@bbottom\the\loopcount\endcsname{&;&;&;&;@}
+ \expandafter\xdef\csname seq@gap\the\loopcount\endcsname{no}
+ \expandafter\xdef\csname seq@start\the\loopcount\endcsname{1}
+ \expandafter\xdef\csname mol@weight\the\loopcount\endcsname{0}
+ \expandafter\xdef\csname ch@rge\the\loopcount\endcsname{0}
+ \ifnum\loopcount=1 \xdef\seq@order{\the\loopcount}
+ \else \xdef\seq@order{\seq@order,\the\loopcount}\fi
+ \ifnum\loopcount<\seq@count \repeat
+ \xdef\seq@order{\seq@order,@}
+ \killseq@count=\seq@count
+ \seq@percent=100
+ \ifnum\seq@count>0 \divide\seq@percent by \seq@count \fi
+ \if\seq@type P \xdef\prefix@{pep}
+ \else \if\seq@type p \xdef\prefix@{pep} \xdef\seq@type{P}
+ \else \seqtype{N} \xdef\prefix@{DNA} \fi\fi
+ \fi
+ \fi
+}
+
+%%%%% TeXshade
+
+\def\calc@widths{%
+ \fontfamily{\residues@family}
+ \fontseries{\residues@series}
+ \fontshape{\residues@shape}
+ \selectfont
+ \setbox1=\hbox{\residues@size{W}}\box@width=\wd1
+ \global\setlength\box@width{\char@stretch\box@width}
+ \box@height=1.2\ht1
+ \setbox1=\hbox{\residues@size{g}}\box@depth=1.1\dp1
+ \global\setlength\box@height{\line@stretch\box@height}
+ \global\setlength\box@depth{\line@stretch\box@depth}
+ \baselineskip=\box@height \advance\baselineskip by \box@depth
+ \lineskip=0pt
+ \ifshow@cons\setbox1=\hbox{\cons@name}\name@width=\wd1\else\name@width=0pt\fi
+ \loopcount=0
+ \expandafter\getregion@fromstack{\the\loopcount}
+ \expandafter\getregion@fromtintstack{\the\loopcount}
+ \expandafter\getregion@fromemphstack{\the\loopcount}
+ \expandafter\getregion@fromframestack{\the\loopcount}
+ \xdef\bottop@{top} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{ttop} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{bottom} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{bbottom}\expandafter\getregion@fromfstack{\the\loopcount}
+ \fontfamily{\namestext@family}
+ \fontseries{\namestext@series}
+ \fontshape{\namestext@shape}
+ \selectfont
+ \loopcount=1
+ \loop
+ \setbox1=\hbox{\namestext@size\csname newseqname\the\loopcount\endcsname}
+ \ifnum\wd1>\name@width \name@width=\wd1 \fi
+ \ifnum\ht1>\box@height
+ \box@height=1.1\ht1
+ \global\setlength\box@height{\line@stretch\box@height}
+ \baselineskip=\box@height \advance\baselineskip by \box@depth
+ \fi
+ \ifnum\dp1>\box@depth
+ \box@depth=1.1\dp1
+ \global\setlength\box@depth{\line@stretch\box@depth}
+ \baselineskip=\box@height \advance\baselineskip by \box@depth
+ \fi
+ \expandafter\getregion@fromstack{\the\loopcount}
+ \expandafter\getregion@fromtintstack{\the\loopcount}
+ \expandafter\getregion@fromemphstack{\the\loopcount}
+ \expandafter\getregion@fromframestack{\the\loopcount}
+ \xdef\bottop@{top} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{ttop} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{bottom} \expandafter\getregion@fromfstack{\the\loopcount}
+ \xdef\bottop@{bbottom}\expandafter\getregion@fromfstack{\the\loopcount}
+ \innerloopcount = \csname seq@len\the\loopcount\endcsname
+ \advance\innerloopcount by \csname seq@start\the\loopcount\endcsname
+ \advance\innerloopcount by -1
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{\the\innerloopcount}
+ \ifsh@wg@ps
+ \expandafter\xdef\csname seq@len\the\loopcount\endcsname{99999999}
+ \fi
+ \advance\loopcount by 1
+ \ifnum\loopcount>\seq@count \else \repeat
+ \advance\name@width by 1em
+ \fontfamily{\numbertext@family}
+ \fontseries{\numbertext@series}
+ \fontshape{\numbertext@shape}
+ \selectfont
+ \setbox1=\hbox{\numbertext@size\num@width}
+ \number@width=\wd1
+ \advance\number@width by 1em
+ \loopcount=\textwidth
+ \ifnames@ \advance\loopcount by -\name@width \fi
+ \ifnumbers@ \advance\loopcount by -\number@width \fi
+ \divide\loopcount by \box@width
+ \divide\loopcount by 5 \multiply\loopcount by 5
+ \ifrpl@fix\else
+ \ifnum\res@perline>\loopcount \res@perline=\loopcount\fi\fi
+ \ifnum\finger@linenum>0
+ \width@tmp=\textwidth
+ \ifnames@ \advance\width@tmp by -\name@width \fi
+ \ifnumbers@ \advance\width@tmp by -\number@width \fi
+ \divide\width@tmp by \finger@linenum
+ \global\setlength\box@width{\width@tmp}
+ \fi
+ \center@fill=\textwidth
+ \ifnames@ \advance\center@fill by -\name@width \fi
+ \ifnumbers@ \advance\center@fill by -\number@width \fi
+ \width@tmp=\box@width \multiply\width@tmp by \res@perline
+ \advance\center@fill by -\width@tmp
+ \ifx\out@put\y@\leftskip\c@factor\center@fill\fi
+}
+
+\def\multiple@dssp{%
+ \advance\loopcount by 1
+ \include@DSSP
+ \ifnum\loopcount<\dssp@num\multiple@dssp\fi}
+
+\def\multiple@stride{%
+ \advance\loopcount by 1
+ \include@stride
+ \ifnum\loopcount<\stride@num\multiple@stride\fi}
+
+\def\multiple@PHD{%
+ \advance\loopcount by 1
+ \include@PHD
+ \ifnum\loopcount<\PHD@num\multiple@PHD\fi}
+
+\def\multiple@HMMTOP{%
+ \advance\loopcount by 1
+ \include@HMMTOP
+ \ifnum\loopcount<\HMMTOP@num\multiple@HMMTOP\fi}
+
+\newenvironment{texshade}[2][&]%
+ {\standarddefinitions
+ \c@d@ns
+ \xdef\first@{#1}\ifx\first@\ampers@nd\else\input{#1}\fi
+ \readalignfile{#2}
+ }%
+ {\ifnum\seq@count>0
+ \loopcount=0
+ \ifnum\loopcount<\dssp@num \multiple@dssp\fi
+ \loopcount=0
+ \ifnum\loopcount<\stride@num \multiple@stride\fi
+ \loopcount=0
+ \ifnum\loopcount<\PHD@num \multiple@PHD\fi
+ \loopcount=0
+ \ifnum\loopcount<\HMMTOP@num \multiple@HMMTOP\fi
+ \loopcount=1 \kill@seqnow
+ \reorder@seqs\seq@order \seq@count=\killseq@count
+ \ifnum\csname res@count\start@seq\endcsname<0
+ \ifnum\start@num>0
+ \loopcount=\start@num
+ \advance\loopcount by -1
+ \xdef\start@num{\the\loopcount}
+ \fi
+ \fi
+ \ifnum\rule@num>0
+ \loopcount=\csname res@count\rule@num\endcsname
+ \divide\loopcount by \ruler@step
+ \multiply\loopcount by \ruler@step
+ \ifnum\loopcount<0 \else \advance\loopcount by \ruler@step \fi
+ \xdef\rule@tens{\the\loopcount}
+ \else
+ \xdef\rule@tens{\ruler@step}
+ \fi
+ \xdef\first@{top}
+ \ifx\cap@pos\first@
+ \xdef\@captype{figure}
+ \ifx\c@pshort\n@
+ \caption{\c@p}
+ \else
+ \caption[\c@pshort]{\c@p}
+ \fi
+ \fi
+ \bgroup
+ \ifx\out@put\y@\bigskip\fi
+ \iffuncmode \show@consfalse \fi
+ \ifall@fshade \iffuncmode \else \all@fshadefalse \fi\fi
+ \ifnum\finger@linenum>0
+ \show@consfalse
+ \hidechartrue
+ \message{<fingerprinting---please wait>}
+ \fi
+ \calc@widths
+ \read@lines
+ \save@lengths
+ \iflegend@
+ \vspace{\vspace@legend}
+ \setbox1=\vbox{\do@legend}
+ \vbox{\do@legend}\par
+ \ifnum\ht1<-\vspace@legend
+ \vspace{-\ht1}\vspace{-\vspace@legend}
+ \fi
+ \fi
+ \egroup
+ \xdef\first@{bottom}
+ \ifx\cap@pos\first@
+ \vspace{-\baselineskip}
+ \xdef\@captype{figure}
+ \ifx\c@pshort\n@
+ \caption{\c@p}
+ \else
+ \caption[\c@pshort]{\c@p}
+ \fi
+ \fi
+ \fi}
+
+\def\standarddefinitions{%
+\xdef\prfx{pep}\clear@groups\clear@sims
+\xdef\prfx{DNA}\clear@groups\clear@sims
+\clearfuncgroups
+\loopcount=\@lign@count
+\advance\loopcount by 1\relax
+\xdef\@lign@count{\the\loopcount}
+\start@true \xdef\start@num{1} \xdef\start@seq{0}
+\stop@false \xdef\end@num{99999999} \xdef\seq@regions{0}
+\cons@count=0 \csname res@count0\endcsname=0
+\regionalshadefalse\regionalemphfalse\regionaltintfalse
+\frame@false
+\topfeaturefalse\bottomfeaturefalse
+\ttopfeaturefalse\bbottomfeaturefalse
+\all@fshadefalse\hidecharfalse
+\xdef\finger@linenum{0}
+\xdef\dssp@num{0} \xdef\stride@num{0} \xdef\PHD@num{0} \xdef\HMMTOP@num{0}
+\xdef\bottop@{top} \expandafter\xdef\csname feature@\bottop@\endcsname{0}
+\xdef\bottop@{ttop} \expandafter\xdef\csname feature@\bottop@\endcsname{0}
+\xdef\bottop@{bottom} \expandafter\xdef\csname feature@\bottop@\endcsname{0}
+\xdef\bottop@{bbottom}\expandafter\xdef\csname feature@\bottop@\endcsname{0}
+\xdef\frame@{0}
+\xdef\show@Hdssp{no} \xdef\show@Gdssp{no} \xdef\show@Idssp{no}
+\xdef\show@Edssp{no} \xdef\show@Bdssp{no} \xdef\show@Tdssp{no}
+\xdef\show@Sdssp{no}
+\xdef\show@Hstride{no} \xdef\show@Gstride{no} \xdef\show@Istride{no}
+\xdef\show@Estride{no} \xdef\show@Bstride{no} \xdef\show@Tstride{no}
+\xdef\show@itop{no} \xdef\show@etop{no} \xdef\show@TMtop{no}
+\xdef\show@i@HMMTOP{no} \xdef\show@e@HMMTOP{no} \xdef\show@TM@HMMTOP{no}
+\xdef\show@Hsec{no} \xdef\show@Esec{no}
+\xdef\collect@restop{no} \xdef\collect@resttop{no}
+\xdef\collect@resbottom{no} \xdef\collect@resbbottom{no}
+\xdef\tr@nslatetop{} \xdef\tr@nslatettop{}
+\xdef\tr@nslatebottom{} \xdef\tr@nslatebbottom{}
+\xdef\tr@nsseqtop{0} \xdef\tr@nsseqttop{0}
+\xdef\tr@nsseqbottom{0} \xdef\tr@nsseqbbottom{0}
+\xdef\triple@counttop{0} \xdef\triple@countttop{0}
+\xdef\triple@countbottom{0} \xdef\triple@countbbottom{0}
+\xdef\last@@restop{} \xdef\last@@resttop{}
+\xdef\last@@resbottom{} \xdef\last@@resbbottom{}
+\xdef\out@put{y} \xdef\m@p{no}
+\xdef\t@sp@ce{0mm} \xdef\tt@sp@ce{0mm}
+\xdef\b@sp@ce{0mm} \xdef\bb@sp@ce{0mm}
+\xdef\seq@gap@num{0}
+\xdef\h@ndalign{no} \xdef\sep@space{0pt}
+\xdef\c@pshort{n}
+\xdef\bottom@stretch{n} \xdef\bbottom@stretch{n}
+\xdef\c@nscol{} \xdef\c@nssc@le{ColdHot}
+\xdef\collect@cons@colors{no} \xdef\cons@now{no}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% %%%%%
+%%%%% Default parameter settings for the LaTeX ``TeXshade'' package %%%%%
+%%%%% %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% %%%%%
+%%%%% Under any circumstances: %%%%%
+%%%%% %%%%%
+%%%%% DO NOT CHANGE ANY SETTINGS !!! %%%%%
+%%%%% %%%%%
+%%%%% Please define your personal parameter file! Store your new file %%%%%
+%%%%% together with this style-file in the same directory and load the %%%%%
+%%%%% file by naming it as an optional parameter in the `texshade' en- %%%%%
+%%%%% vironment. The file `texshade.def' can be used as a template for %%%%%
+%%%%% the new creation. See the manual for further help. %%%%%
+%%%%% %%%%%
+%%%%% THANK YOU !!! %%%%%
+%%%%% %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\shadingmode{identical} % Shade identical residues only
+\shadingcolors{blues} % Select the blue color scheme for shading
+\constoallseqs % Calculate consensus considering all seqs
+\threshold{50} % Consensus threshold percentage is 50
+\residuesperline{999} % As many residues as possible per line
+\numberingwidth{9999} % Assign space for 4 digit numbering
+\charstretch{1.15} % Stretch character width 1.15fold
+\linestretch{1} % Do not stretch lines
+\gapchar{.} % . is printed in sequence gaps
+\gaprule{0.3pt} % If a rule is printed in gaps use 0.3 pt
+\gapcolors{Black}{White} % Gap symbols appear `Black on White'
+\numberingcolor{Black} % Numbering color is `Black'
+\shownumbering{left} % Show sequence numbering on the left
+\namescolor{Black} % Names' color is `Black'
+\shownames{right} % Show sequence names on the right
+\consensuscolors{Black}{White} % All consensus symbols/letters
+ {Black}{White} % appear `Black on White'
+ {Black}{White} %
+\showconsensus{bottom} % Show consensus line at bottom with
+\defconsensus{{}}{*}{!} % Blank =no match; * =match; ! =all match
+\showleadinggaps % Show gap symbols before sequence start
+\rulercolor{Black} % Ruler's color is `Black'
+\hideruler % Do not show the ruler
+\rulersteps{10} % Ruler ticks every 10 residues
+\legendcolor{Black} % Legend text color is `Black'
+\hidelegend % Do not show the legend
+\alignment{center} % Center alignment on page
+\medsepline % Medium height if separation line is on
+\medblockskip % Medium skip between sequence blocks
+\flexblockspace % Use optimized space between blocks
+\featurerule{0.5ex} % Set feature rule thickness to 1/2 ex
+\bargraphstretch{1} % Do not stretch bars in feature graphs
+\colorscalestretch{1} % Do not stretch color scales in features
+\backtranstext{horizontal} % Horizontal triplets in feature texts
+\backtranslabel{alternating} % Alternating triplets in feature styles
+\setfamily{residues}{tt} % Use typewriter family for residues
+\setseries{residues}{md} % Use normal series for residues
+\setshape {residues}{up} % Use upright shape for residues
+\setsize {residues}{normalsize} % Use normal size for residues
+\setfamily{numbering}{tt} % Use typewriter family for numbering
+\setseries{numbering}{md} % Use normal series for numbering
+\setshape {numbering}{up} % Use upright shape for numbering
+\setsize {numbering}{normalsize} % Use normal size for numbering
+\setfamily{names}{tt} % Use typewriter family for names
+\setseries{names}{md} % Use normal series for names
+\setshape {names}{up} % Use upright shape for names
+\setsize {names}{normalsize} % Use normal size for names
+\setfamily{features}{rm} % Use roman family for feature texts
+\setseries{features}{md} % Use normal series for feature texts
+\setshape {features}{it} % Use italics shape for feature texts
+\setsize {features}{normalsize} % Use normal size for feature texts
+\setfamily{featurestyles}{tt} % Use typewriter family for feature styles
+\setseries{featurestyles}{md} % Use normal series for feature styles
+\setshape {featurestyles}{up} % Use upright shape for feature styles
+\setsize {featurestyles}{normalsize}% Use normal size for feature styles
+\setfamily{legend}{tt} % Use typewriter family for legend texts
+\setseries{legend}{md} % Use normal series for legend texts
+\setshape {legend}{up} % Use upright shape for legend texts
+\setsize {legend}{normalsize} % Use normal size for legend texts
+\tintdefault{medium} % Use medium tint intensity
+\emphdefault{it} % Use italics to emphasize regions
+\showonPHDsec{alpha,beta} % Show helices and strands (PHD input)
+\showonPHDtopo{internal,external,TM}% Show int., ext. and TM's (PHD input)
+\showonHMMTOP{TM} % Show TM's (not int/ext on HMMTOP input)
+\showonSTRIDE{alpha,3-10,pi,beta} % Show helices and strands (STRIDE input)
+\showonDSSP{alpha,3-10,pi,beta} % Show helices and strands (DSSP input)
+\secondcolumnDSSP % Use numbering from 2. column in DSSP
+\appearance{PHDtopo}{internal} % \
+ {bottom}{'-'} % \
+ {int.\ \Alphacount} % |
+\appearance{PHDtopo}{external} % |
+ {top}{,-,} % |
+ {ext.\ \Alphacount} % |
+\appearance{PHDtopo}{TM}{top} % |
+ {box[LightGray]:TM\numcount}{} % |
+\appearance{HMMTOP}{internal} % |
+ {bottom}{'-'} % |
+ {int.\ \Alphacount} % |
+\appearance{HMMTOP}{external} % |
+ {top}{,-,} % |
+ {ext.\ \Alphacount} % |
+\appearance{HMMTOP}{TM}{top} % |
+ {helix}{TM\numcount} % |
+\appearance{PHDsec}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % |
+\appearance{PHDsec}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{STRIDE}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % | Definitions for the appearance of
+\appearance{STRIDE}{3-10}{top} % \
+ {fill:$\circ$}{3$_{10}$} % > secondary structures included from|
+\appearance{STRIDE}{pi} % /
+ {top}{---}{$\pi$} % | PHD-, STRIDE-, or DSSP-files.
+\appearance{STRIDE}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{STRIDE}{bridge} % |
+ {top}{fill:$\uparrow$}{} % |
+\appearance{STRIDE}{turn} % |
+ {top}{,-,}{turn} % |
+\appearance{DSSP}{alpha}{top} % |
+ {box:$\alpha$\numcount}{} % |
+\appearance{DSSP}{3-10}{top} % |
+ {fill:$\circ$}{3$_{10}$} % |
+\appearance{DSSP}{pi} % |
+ {top}{---}{$\pi$} % |
+\appearance{DSSP}{beta}{top} % |
+ {-->}{$\beta$\numcount} % |
+\appearance{DSSP}{bridge} % |
+ {top}{fill:$\uparrow$}{} % |
+\appearance{DSSP}{turn} % |
+ {top}{,-,}{turn} % |
+\appearance{DSSP}{bend}{top} % /
+ {fill:$\diamond$}{} % /
+
+\pepgroups{FYW,ILVM,RK,DE,GA,ST,NQ} % Amino acid grouping due to similarity
+
+\pepsims{F}{YW} % Y and W are similar to F
+\pepsims{Y}{WF} % W and F are similar to Y
+\pepsims{W}{YF} % Y and F are similar to W
+
+\pepsims{I}{LVM} % L, V and M are similar to I
+\pepsims{L}{VMI} % V, M and I are similar to L
+\pepsims{V}{MIL} % M, I and L are similar to V
+
+\pepsims{R}{KH} % K and H are similar to R
+\pepsims{K}{HR} % H and R are similar to K
+\pepsims{H}{RK} % R and K are similar to H
+
+\pepsims{A}{GS} % G and S are similar to A
+\pepsims{G}{A} % A (but not S) is similar to G
+
+\pepsims{S}{TA} % T and A are similar to S
+\pepsims{T}{S} % S (but not A) is similar to T
+
+\pepsims{D}{EN} % E and N (but not Q) are similar to D
+\pepsims{E}{DQ} % D and Q (but not N) are similar to E
+\pepsims{N}{QD} % Q and D (but not E) are similar to N
+\pepsims{Q}{NE} % N and E (but not D) are similar to Q
+
+\DNAgroups{GAR,CTY} % Nucleotide grouping due to similarity
+
+\DNAsims{A}{GR} % G and R are similar to A
+\DNAsims{G}{AR} % A and R are similar to G
+\DNAsims{R}{AG} % A and G are similar to R
+
+\DNAsims{C}{TY} % T and Y are similar to C
+\DNAsims{T}{CY} % C and Y are similar to T
+\DNAsims{Y}{CT} % C and T are similar to Y
+
+}
+\catcode`\@=12
+\endinput
+%%
+%% End of file `texshade.sty'.