package org.seqcode.genome.sequence.seqfunctions; import java.util.HashMap; import java.util.Map; /** * Scores Helix Twist (degrees) of a sequence using score defined by Remo Rohs' lab. * Source: * http://rohslab.cmb.usc.edu/DNAshape/ * Zhou,T., Yang,L., Lu,Y., Dror,I., Dantas Machado,A.C., Ghane,T., Di Felice,R. and Rohs,R. * DNAshape: a method for the high-throughput prediction of DNA structural features on a genomic scale. * Nucleic Acids Res. (2013) 41, W56-W62. * * @author mahony * */ public class HelixTwistStructureFunction implements SeqFunction{ //Variables final int scoreDimension = 1; int scoringOffset = 1; int scoreWindowSize = 5; boolean isBetweenNucs = true; final String[] labels = {"HelT"}; final String description = "Helix Twist (Rohs)"; Map<String, Double> structureA = new HashMap<String, Double>(); Map<String, Double> structureB = new HashMap<String, Double>(); public HelixTwistStructureFunction(){ loadStructureValues(); } public double[][] score(String seq) throws SeqFunctionException { if(seq.length()<scoreWindowSize) throw new SeqFunctionException("Sequence too short for HelixTwistStructureFunction"); double [][] scores = new double[scoreDimension][seq.length()]; String seqU = seq.toUpperCase(); for(int i=0; i<seqU.length(); i++) scores[0][i]=0; Double lastBscore =0.0; for(int i=0; i<seqU.length()-scoreWindowSize+1; i++){ String kmer = seqU.substring(i, i+scoreWindowSize); if(i==0){ scores[0][i+scoringOffset]=structureA.get(kmer); }else{ scores[0][i+scoringOffset]=(structureA.get(kmer)+lastBscore)/2; } scores[0][i+scoringOffset+1]=structureB.get(kmer); lastBscore = structureB.get(kmer); } return scores; } public int scoreDimension() { return scoreDimension; } public int scoringOffset() { return scoringOffset; } public int scoreWindowSize() { return scoreWindowSize; } public boolean isBetweenNucleotides() { return isBetweenNucs; } public String[] dimensionLabels() { return labels; } public String scoreDescription() { return description; } public double getMaxScore(){return 38.05;} public double getMinScore(){return 30.94;} private void loadStructureValues(){ structureA.put("AAAAA", 37.74); structureA.put("AAAAT", 36.93); structureA.put("AAAAG", 37.02); structureA.put("AAAAC", 37.13); structureA.put("AAATA", 37.22); structureA.put("AAATT", 37.52); structureA.put("AAATG", 36.86); structureA.put("AAATC", 36.55); structureA.put("AAAGA", 36.69); structureA.put("AAAGT", 36.93); structureA.put("AAAGG", 35.88); structureA.put("AAAGC", 36.56); structureA.put("AAACA", 36.59); structureA.put("AAACT", 35.86); structureA.put("AAACG", 36.57); structureA.put("AAACC", 36.34); structureA.put("AATAA", 32.44); structureA.put("AATAT", 33.17); structureA.put("AATAG", 33.54); structureA.put("AATAC", 32.78); structureA.put("AATTA", 33.31); structureA.put("AATTT", 35.11); structureA.put("AATTG", 33.37); structureA.put("AATTC", 33.75); structureA.put("AATGA", 32.87); structureA.put("AATGT", 33.25); structureA.put("AATGG", 32.12); structureA.put("AATGC", 32.67); structureA.put("AATCA", 33.01); structureA.put("AATCT", 33.30); structureA.put("AATCG", 32.89); structureA.put("AATCC", 33.31); structureA.put("AAGAA", 32.30); structureA.put("AAGAT", 32.88); structureA.put("AAGAG", 32.31); structureA.put("AAGAC", 32.56); structureA.put("AAGTA", 33.24); structureA.put("AAGTT", 33.58); structureA.put("AAGTG", 33.10); structureA.put("AAGTC", 33.16); structureA.put("AAGGA", 32.55); structureA.put("AAGGT", 32.53); structureA.put("AAGGG", 31.94); structureA.put("AAGGC", 32.34); structureA.put("AAGCA", 32.29); structureA.put("AAGCT", 32.14); structureA.put("AAGCG", 32.27); structureA.put("AAGCC", 32.49); structureA.put("AACAA", 34.60); structureA.put("AACAT", 35.12); structureA.put("AACAG", 34.88); structureA.put("AACAC", 34.68); structureA.put("AACTA", 35.56); structureA.put("AACTT", 36.30); structureA.put("AACTG", 35.45); structureA.put("AACTC", 36.03); structureA.put("AACGA", 34.71); structureA.put("AACGT", 35.24); structureA.put("AACGG", 35.14); structureA.put("AACGC", 35.06); structureA.put("AACCA", 35.26); structureA.put("AACCT", 35.92); structureA.put("AACCG", 35.23); structureA.put("AACCC", 35.80); structureA.put("ATAAA", 34.60); structureA.put("ATAAT", 35.02); structureA.put("ATAAG", 35.15); structureA.put("ATAAC", 34.54); structureA.put("ATATA", 34.46); structureA.put("ATATT", 35.25); structureA.put("ATATG", 35.37); structureA.put("ATATC", 35.01); structureA.put("ATAGA", 34.25); structureA.put("ATAGT", 35.53); structureA.put("ATAGG", 34.50); structureA.put("ATAGC", 34.96); structureA.put("ATACA", 34.63); structureA.put("ATACT", 34.44); structureA.put("ATACG", 34.59); structureA.put("ATACC", 34.56); structureA.put("ATTAA", 35.37); structureA.put("ATTAT", 35.90); structureA.put("ATTAG", 35.33); structureA.put("ATTAC", 35.53); structureA.put("ATTTA", 36.55); structureA.put("ATTTT", 37.68); structureA.put("ATTTG", 37.28); structureA.put("ATTTC", 36.70); structureA.put("ATTGA", 34.93); structureA.put("ATTGT", 35.45); structureA.put("ATTGG", 34.93); structureA.put("ATTGC", 35.34); structureA.put("ATTCA", 36.06); structureA.put("ATTCT", 36.11); structureA.put("ATTCG", 35.86); structureA.put("ATTCC", 35.60); structureA.put("ATGAA", 35.03); structureA.put("ATGAT", 34.82); structureA.put("ATGAG", 34.93); structureA.put("ATGAC", 35.10); structureA.put("ATGTA", 35.76); structureA.put("ATGTT", 35.94); structureA.put("ATGTG", 35.86); structureA.put("ATGTC", 35.42); structureA.put("ATGGA", 34.46); structureA.put("ATGGT", 34.88); structureA.put("ATGGG", 34.56); structureA.put("ATGGC", 34.93); structureA.put("ATGCA", 35.12); structureA.put("ATGCT", 34.56); structureA.put("ATGCG", 35.00); structureA.put("ATGCC", 34.66); structureA.put("ATCAA", 35.38); structureA.put("ATCAT", 36.14); structureA.put("ATCAG", 35.80); structureA.put("ATCAC", 35.64); structureA.put("ATCTA", 36.79); structureA.put("ATCTT", 37.56); structureA.put("ATCTG", 36.37); structureA.put("ATCTC", 36.47); structureA.put("ATCGA", 35.76); structureA.put("ATCGT", 36.22); structureA.put("ATCGG", 35.60); structureA.put("ATCGC", 35.82); structureA.put("ATCCA", 36.24); structureA.put("ATCCT", 36.16); structureA.put("ATCCG", 36.59); structureA.put("ATCCC", 36.09); structureA.put("AGAAA", 36.43); structureA.put("AGAAT", 36.60); structureA.put("AGAAG", 36.79); structureA.put("AGAAC", 36.45); structureA.put("AGATA", 36.52); structureA.put("AGATT", 37.53); structureA.put("AGATG", 36.48); structureA.put("AGATC", 36.68); structureA.put("AGAGA", 35.80); structureA.put("AGAGT", 35.66); structureA.put("AGAGG", 35.39); structureA.put("AGAGC", 35.84); structureA.put("AGACA", 36.49); structureA.put("AGACT", 36.01); structureA.put("AGACG", 36.41); structureA.put("AGACC", 36.10); structureA.put("AGTAA", 34.75); structureA.put("AGTAT", 34.73); structureA.put("AGTAG", 35.18); structureA.put("AGTAC", 34.74); structureA.put("AGTTA", 35.60); structureA.put("AGTTT", 36.86); structureA.put("AGTTG", 36.24); structureA.put("AGTTC", 35.93); structureA.put("AGTGA", 34.23); structureA.put("AGTGT", 34.67); structureA.put("AGTGG", 34.38); structureA.put("AGTGC", 34.58); structureA.put("AGTCA", 35.06); structureA.put("AGTCT", 34.89); structureA.put("AGTCG", 35.27); structureA.put("AGTCC", 34.97); structureA.put("AGGAA", 34.39); structureA.put("AGGAT", 34.37); structureA.put("AGGAG", 34.13); structureA.put("AGGAC", 34.49); structureA.put("AGGTA", 35.24); structureA.put("AGGTT", 35.61); structureA.put("AGGTG", 35.25); structureA.put("AGGTC", 35.04); structureA.put("AGGGA", 33.86); structureA.put("AGGGT", 34.17); structureA.put("AGGGG", 33.78); structureA.put("AGGGC", 34.00); structureA.put("AGGCA", 34.03); structureA.put("AGGCT", 34.00); structureA.put("AGGCG", 34.34); structureA.put("AGGCC", 33.71); structureA.put("AGCAA", 36.94); structureA.put("AGCAT", 36.89); structureA.put("AGCAG", 36.97); structureA.put("AGCAC", 36.67); structureA.put("AGCTA", 37.56); structureA.put("AGCTT", 38.05); structureA.put("AGCTG", 37.48); structureA.put("AGCTC", 37.66); structureA.put("AGCGA", 36.83); structureA.put("AGCGT", 37.02); structureA.put("AGCGG", 36.72); structureA.put("AGCGC", 36.76); structureA.put("AGCCA", 37.62); structureA.put("AGCCT", 37.47); structureA.put("AGCCG", 37.23); structureA.put("AGCCC", 37.30); structureA.put("ACAAA", 35.41); structureA.put("ACAAT", 35.55); structureA.put("ACAAG", 35.43); structureA.put("ACAAC", 35.22); structureA.put("ACATA", 35.48); structureA.put("ACATT", 36.13); structureA.put("ACATG", 35.70); structureA.put("ACATC", 35.37); structureA.put("ACAGA", 35.00); structureA.put("ACAGT", 34.72); structureA.put("ACAGG", 34.61); structureA.put("ACAGC", 35.03); structureA.put("ACACA", 35.28); structureA.put("ACACT", 34.61); structureA.put("ACACG", 35.35); structureA.put("ACACC", 34.83); structureA.put("ACTAA", 31.57); structureA.put("ACTAT", 31.86); structureA.put("ACTAG", 32.22); structureA.put("ACTAC", 31.68); structureA.put("ACTTA", 33.06); structureA.put("ACTTT", 33.88); structureA.put("ACTTG", 33.13); structureA.put("ACTTC", 32.77); structureA.put("ACTGA", 31.46); structureA.put("ACTGT", 31.75); structureA.put("ACTGG", 31.51); structureA.put("ACTGC", 31.49); structureA.put("ACTCA", 32.14); structureA.put("ACTCT", 31.76); structureA.put("ACTCG", 31.96); structureA.put("ACTCC", 31.81); structureA.put("ACGAA", 33.73); structureA.put("ACGAT", 33.64); structureA.put("ACGAG", 33.69); structureA.put("ACGAC", 33.73); structureA.put("ACGTA", 34.34); structureA.put("ACGTT", 34.53); structureA.put("ACGTG", 34.48); structureA.put("ACGTC", 34.30); structureA.put("ACGGA", 33.01); structureA.put("ACGGT", 33.29); structureA.put("ACGGG", 33.23); structureA.put("ACGGC", 33.55); structureA.put("ACGCA", 33.71); structureA.put("ACGCT", 33.00); structureA.put("ACGCG", 33.20); structureA.put("ACGCC", 33.32); structureA.put("ACCAA", 34.70); structureA.put("ACCAT", 34.55); structureA.put("ACCAG", 34.39); structureA.put("ACCAC", 34.37); structureA.put("ACCTA", 34.99); structureA.put("ACCTT", 35.68); structureA.put("ACCTG", 35.08); structureA.put("ACCTC", 34.93); structureA.put("ACCGA", 34.18); structureA.put("ACCGT", 34.47); structureA.put("ACCGG", 34.12); structureA.put("ACCGC", 34.31); structureA.put("ACCCA", 34.63); structureA.put("ACCCT", 34.42); structureA.put("ACCCG", 34.56); structureA.put("ACCCC", 34.28); structureA.put("TAAAA", 35.60); structureA.put("TAAAT", 35.79); structureA.put("TAAAG", 35.70); structureA.put("TAAAC", 35.72); structureA.put("TAATA", 35.37); structureA.put("TAATT", 35.92); structureA.put("TAATG", 35.43); structureA.put("TAATC", 35.28); structureA.put("TAAGA", 34.89); structureA.put("TAAGT", 35.16); structureA.put("TAAGG", 34.66); structureA.put("TAAGC", 34.85); structureA.put("TAACA", 35.32); structureA.put("TAACT", 34.85); structureA.put("TAACG", 35.27); structureA.put("TAACC", 35.08); structureA.put("TATAA", 31.78); structureA.put("TATAT", 32.12); structureA.put("TATAG", 31.96); structureA.put("TATAC", 31.78); structureA.put("TATTA", 32.48); structureA.put("TATTT", 33.85); structureA.put("TATTG", 32.40); structureA.put("TATTC", 32.92); structureA.put("TATGA", 31.46); structureA.put("TATGT", 32.21); structureA.put("TATGG", 31.26); structureA.put("TATGC", 31.62); structureA.put("TATCA", 31.94); structureA.put("TATCT", 32.48); structureA.put("TATCG", 31.89); structureA.put("TATCC", 32.31); structureA.put("TAGAA", 31.57); structureA.put("TAGAT", 31.29); structureA.put("TAGAG", 31.40); structureA.put("TAGAC", 31.64); structureA.put("TAGTA", 31.63); structureA.put("TAGTT", 32.10); structureA.put("TAGTG", 31.70); structureA.put("TAGTC", 31.53); structureA.put("TAGGA", 31.66); structureA.put("TAGGT", 31.46); structureA.put("TAGGG", 31.16); structureA.put("TAGGC", 31.51); structureA.put("TAGCA", 31.39); structureA.put("TAGCT", 31.13); structureA.put("TAGCG", 31.38); structureA.put("TAGCC", 31.35); structureA.put("TACAA", 33.40); structureA.put("TACAT", 34.06); structureA.put("TACAG", 33.82); structureA.put("TACAC", 33.60); structureA.put("TACTA", 34.42); structureA.put("TACTT", 35.21); structureA.put("TACTG", 34.47); structureA.put("TACTC", 34.56); structureA.put("TACGA", 33.57); structureA.put("TACGT", 34.30); structureA.put("TACGG", 33.73); structureA.put("TACGC", 33.93); structureA.put("TACCA", 34.38); structureA.put("TACCT", 34.69); structureA.put("TACCG", 34.43); structureA.put("TACCC", 34.53); structureA.put("TTAAA", 34.67); structureA.put("TTAAT", 34.44); structureA.put("TTAAG", 34.81); structureA.put("TTAAC", 34.36); structureA.put("TTATA", 34.57); structureA.put("TTATT", 34.83); structureA.put("TTATG", 34.54); structureA.put("TTATC", 34.59); structureA.put("TTAGA", 34.40); structureA.put("TTAGT", 34.45); structureA.put("TTAGG", 34.35); structureA.put("TTAGC", 34.68); structureA.put("TTACA", 34.60); structureA.put("TTACT", 34.55); structureA.put("TTACG", 34.26); structureA.put("TTACC", 34.64); structureA.put("TTTAA", 35.63); structureA.put("TTTAT", 35.94); structureA.put("TTTAG", 35.72); structureA.put("TTTAC", 35.53); structureA.put("TTTTA", 36.72); structureA.put("TTTTT", 38.01); structureA.put("TTTTG", 36.92); structureA.put("TTTTC", 37.00); structureA.put("TTTGA", 35.30); structureA.put("TTTGT", 35.77); structureA.put("TTTGG", 35.20); structureA.put("TTTGC", 35.29); structureA.put("TTTCA", 35.90); structureA.put("TTTCT", 36.02); structureA.put("TTTCG", 35.88); structureA.put("TTTCC", 35.97); structureA.put("TTGAA", 34.59); structureA.put("TTGAT", 34.60); structureA.put("TTGAG", 34.65); structureA.put("TTGAC", 34.61); structureA.put("TTGTA", 35.27); structureA.put("TTGTT", 35.64); structureA.put("TTGTG", 35.72); structureA.put("TTGTC", 34.98); structureA.put("TTGGA", 34.57); structureA.put("TTGGT", 34.60); structureA.put("TTGGG", 34.28); structureA.put("TTGGC", 34.72); structureA.put("TTGCA", 34.61); structureA.put("TTGCT", 34.41); structureA.put("TTGCG", 34.85); structureA.put("TTGCC", 34.50); structureA.put("TTCAA", 34.80); structureA.put("TTCAT", 35.39); structureA.put("TTCAG", 35.08); structureA.put("TTCAC", 34.80); structureA.put("TTCTA", 36.55); structureA.put("TTCTT", 36.52); structureA.put("TTCTG", 36.46); structureA.put("TTCTC", 36.61); structureA.put("TTCGA", 34.95); structureA.put("TTCGT", 36.00); structureA.put("TTCGG", 35.61); structureA.put("TTCGC", 35.53); structureA.put("TTCCA", 36.04); structureA.put("TTCCT", 36.26); structureA.put("TTCCG", 35.82); structureA.put("TTCCC", 36.01); structureA.put("TGAAA", 34.89); structureA.put("TGAAT", 35.03); structureA.put("TGAAG", 35.10); structureA.put("TGAAC", 35.12); structureA.put("TGATA", 35.75); structureA.put("TGATT", 36.14); structureA.put("TGATG", 35.36); structureA.put("TGATC", 35.60); structureA.put("TGAGA", 35.17); structureA.put("TGAGT", 35.29); structureA.put("TGAGG", 34.61); structureA.put("TGAGC", 34.81); structureA.put("TGACA", 35.30); structureA.put("TGACT", 35.14); structureA.put("TGACG", 35.16); structureA.put("TGACC", 35.47); structureA.put("TGTAA", 33.74); structureA.put("TGTAT", 34.26); structureA.put("TGTAG", 33.91); structureA.put("TGTAC", 33.68); structureA.put("TGTTA", 34.78); structureA.put("TGTTT", 35.22); structureA.put("TGTTG", 34.70); structureA.put("TGTTC", 34.81); structureA.put("TGTGA", 33.59); structureA.put("TGTGT", 33.88); structureA.put("TGTGG", 33.07); structureA.put("TGTGC", 33.55); structureA.put("TGTCA", 34.20); structureA.put("TGTCT", 34.36); structureA.put("TGTCG", 34.23); structureA.put("TGTCC", 34.09); structureA.put("TGGAA", 33.80); structureA.put("TGGAT", 33.69); structureA.put("TGGAG", 33.85); structureA.put("TGGAC", 33.79); structureA.put("TGGTA", 34.30); structureA.put("TGGTT", 34.89); structureA.put("TGGTG", 34.81); structureA.put("TGGTC", 34.30); structureA.put("TGGGA", 33.23); structureA.put("TGGGT", 33.53); structureA.put("TGGGG", 33.26); structureA.put("TGGGC", 33.45); structureA.put("TGGCA", 33.34); structureA.put("TGGCT", 33.35); structureA.put("TGGCG", 33.36); structureA.put("TGGCC", 33.23); structureA.put("TGCAA", 35.49); structureA.put("TGCAT", 35.60); structureA.put("TGCAG", 35.64); structureA.put("TGCAC", 35.46); structureA.put("TGCTA", 36.48); structureA.put("TGCTT", 37.13); structureA.put("TGCTG", 36.65); structureA.put("TGCTC", 36.61); structureA.put("TGCGA", 35.53); structureA.put("TGCGT", 35.83); structureA.put("TGCGG", 35.63); structureA.put("TGCGC", 35.52); structureA.put("TGCCA", 36.44); structureA.put("TGCCT", 36.26); structureA.put("TGCCG", 36.20); structureA.put("TGCCC", 36.27); structureA.put("TCAAA", 34.64); structureA.put("TCAAT", 34.60); structureA.put("TCAAG", 34.53); structureA.put("TCAAC", 34.69); structureA.put("TCATA", 35.10); structureA.put("TCATT", 34.98); structureA.put("TCATG", 35.00); structureA.put("TCATC", 34.64); structureA.put("TCAGA", 34.38); structureA.put("TCAGT", 34.41); structureA.put("TCAGG", 34.07); structureA.put("TCAGC", 34.29); structureA.put("TCACA", 34.48); structureA.put("TCACT", 33.87); structureA.put("TCACG", 34.66); structureA.put("TCACC", 34.15); structureA.put("TCTAA", 31.27); structureA.put("TCTAT", 31.88); structureA.put("TCTAG", 31.57); structureA.put("TCTAC", 30.99); structureA.put("TCTTA", 32.43); structureA.put("TCTTT", 33.18); structureA.put("TCTTG", 32.47); structureA.put("TCTTC", 32.42); structureA.put("TCTGA", 31.28); structureA.put("TCTGT", 31.60); structureA.put("TCTGG", 31.02); structureA.put("TCTGC", 31.17); structureA.put("TCTCA", 31.77); structureA.put("TCTCT", 31.70); structureA.put("TCTCG", 31.51); structureA.put("TCTCC", 31.48); structureA.put("TCGAA", 32.98); structureA.put("TCGAT", 32.77); structureA.put("TCGAG", 33.01); structureA.put("TCGAC", 33.06); structureA.put("TCGTA", 33.73); structureA.put("TCGTT", 33.66); structureA.put("TCGTG", 33.99); structureA.put("TCGTC", 33.65); structureA.put("TCGGA", 32.77); structureA.put("TCGGT", 32.64); structureA.put("TCGGG", 32.86); structureA.put("TCGGC", 32.47); structureA.put("TCGCA", 33.31); structureA.put("TCGCT", 32.44); structureA.put("TCGCG", 32.65); structureA.put("TCGCC", 32.60); structureA.put("TCCAA", 33.66); structureA.put("TCCAT", 33.69); structureA.put("TCCAG", 33.74); structureA.put("TCCAC", 33.75); structureA.put("TCCTA", 34.64); structureA.put("TCCTT", 34.90); structureA.put("TCCTG", 34.22); structureA.put("TCCTC", 34.17); structureA.put("TCCGA", 33.64); structureA.put("TCCGT", 34.60); structureA.put("TCCGG", 33.60); structureA.put("TCCGC", 33.51); structureA.put("TCCCA", 33.69); structureA.put("TCCCT", 33.60); structureA.put("TCCCG", 34.12); structureA.put("TCCCC", 33.65); structureA.put("GAAAA", 36.32); structureA.put("GAAAT", 35.77); structureA.put("GAAAG", 35.91); structureA.put("GAAAC", 36.01); structureA.put("GAATA", 35.93); structureA.put("GAATT", 36.17); structureA.put("GAATG", 35.63); structureA.put("GAATC", 35.53); structureA.put("GAAGA", 35.03); structureA.put("GAAGT", 35.22); structureA.put("GAAGG", 34.75); structureA.put("GAAGC", 34.96); structureA.put("GAACA", 35.68); structureA.put("GAACT", 35.24); structureA.put("GAACG", 35.71); structureA.put("GAACC", 35.45); structureA.put("GATAA", 31.94); structureA.put("GATAT", 32.32); structureA.put("GATAG", 32.43); structureA.put("GATAC", 32.10); structureA.put("GATTA", 32.72); structureA.put("GATTT", 33.42); structureA.put("GATTG", 32.75); structureA.put("GATTC", 32.93); structureA.put("GATGA", 32.03); structureA.put("GATGT", 32.37); structureA.put("GATGG", 31.66); structureA.put("GATGC", 31.96); structureA.put("GATCA", 32.48); structureA.put("GATCT", 32.82); structureA.put("GATCG", 32.29); structureA.put("GATCC", 32.41); structureA.put("GAGAA", 31.51); structureA.put("GAGAT", 31.47); structureA.put("GAGAG", 31.39); structureA.put("GAGAC", 31.76); structureA.put("GAGTA", 31.76); structureA.put("GAGTT", 32.41); structureA.put("GAGTG", 31.79); structureA.put("GAGTC", 31.83); structureA.put("GAGGA", 31.53); structureA.put("GAGGT", 31.49); structureA.put("GAGGG", 31.33); structureA.put("GAGGC", 31.38); structureA.put("GAGCA", 31.46); structureA.put("GAGCT", 31.33); structureA.put("GAGCG", 31.47); structureA.put("GAGCC", 31.39); structureA.put("GACAA", 33.76); structureA.put("GACAT", 34.24); structureA.put("GACAG", 34.25); structureA.put("GACAC", 34.03); structureA.put("GACTA", 34.57); structureA.put("GACTT", 35.44); structureA.put("GACTG", 34.65); structureA.put("GACTC", 34.87); structureA.put("GACGA", 34.18); structureA.put("GACGT", 34.58); structureA.put("GACGG", 34.10); structureA.put("GACGC", 34.21); structureA.put("GACCA", 34.68); structureA.put("GACCT", 34.84); structureA.put("GACCG", 34.65); structureA.put("GACCC", 34.81); structureA.put("GTAAA", 34.25); structureA.put("GTAAT", 34.68); structureA.put("GTAAG", 34.34); structureA.put("GTAAC", 34.23); structureA.put("GTATA", 34.63); structureA.put("GTATT", 34.79); structureA.put("GTATG", 34.49); structureA.put("GTATC", 34.46); structureA.put("GTAGA", 34.42); structureA.put("GTAGT", 34.24); structureA.put("GTAGG", 34.06); structureA.put("GTAGC", 34.48); structureA.put("GTACA", 34.52); structureA.put("GTACT", 33.82); structureA.put("GTACG", 34.20); structureA.put("GTACC", 34.23); structureA.put("GTTAA", 35.05); structureA.put("GTTAT", 35.50); structureA.put("GTTAG", 35.18); structureA.put("GTTAC", 35.06); structureA.put("GTTTA", 36.40); structureA.put("GTTTT", 36.95); structureA.put("GTTTG", 36.33); structureA.put("GTTTC", 36.17); structureA.put("GTTGA", 34.93); structureA.put("GTTGT", 35.25); structureA.put("GTTGG", 31.76); structureA.put("GTTGC", 35.02); structureA.put("GTTCA", 35.57); structureA.put("GTTCT", 35.70); structureA.put("GTTCG", 35.58); structureA.put("GTTCC", 35.48); structureA.put("GTGAA", 34.78); structureA.put("GTGAT", 34.03); structureA.put("GTGAG", 34.48); structureA.put("GTGAC", 34.60); structureA.put("GTGTA", 34.99); structureA.put("GTGTT", 35.07); structureA.put("GTGTG", 35.12); structureA.put("GTGTC", 34.92); structureA.put("GTGGA", 34.34); structureA.put("GTGGT", 34.18); structureA.put("GTGGG", 34.09); structureA.put("GTGGC", 34.20); structureA.put("GTGCA", 34.64); structureA.put("GTGCT", 34.03); structureA.put("GTGCG", 34.69); structureA.put("GTGCC", 34.22); structureA.put("GTCAA", 34.78); structureA.put("GTCAT", 35.47); structureA.put("GTCAG", 35.20); structureA.put("GTCAC", 35.33); structureA.put("GTCTA", 36.16); structureA.put("GTCTT", 36.40); structureA.put("GTCTG", 36.44); structureA.put("GTCTC", 36.17); structureA.put("GTCGA", 35.51); structureA.put("GTCGT", 35.70); structureA.put("GTCGG", 35.42); structureA.put("GTCGC", 35.46); structureA.put("GTCCA", 36.11); structureA.put("GTCCT", 36.03); structureA.put("GTCCG", 36.17); structureA.put("GTCCC", 35.97); structureA.put("GGAAA", 36.46); structureA.put("GGAAT", 35.99); structureA.put("GGAAG", 35.39); structureA.put("GGAAC", 36.02); structureA.put("GGATA", 36.04); structureA.put("GGATT", 36.57); structureA.put("GGATG", 36.16); structureA.put("GGATC", 36.29); structureA.put("GGAGA", 35.79); structureA.put("GGAGT", 35.76); structureA.put("GGAGG", 35.57); structureA.put("GGAGC", 35.75); structureA.put("GGACA", 36.22); structureA.put("GGACT", 35.78); structureA.put("GGACG", 36.13); structureA.put("GGACC", 35.80); structureA.put("GGTAA", 34.56); structureA.put("GGTAT", 34.69); structureA.put("GGTAG", 34.52); structureA.put("GGTAC", 34.34); structureA.put("GGTTA", 35.30); structureA.put("GGTTT", 36.20); structureA.put("GGTTG", 35.52); structureA.put("GGTTC", 35.19); structureA.put("GGTGA", 34.04); structureA.put("GGTGT", 34.36); structureA.put("GGTGG", 33.92); structureA.put("GGTGC", 34.16); structureA.put("GGTCA", 34.83); structureA.put("GGTCT", 34.74); structureA.put("GGTCG", 34.74); structureA.put("GGTCC", 34.71); structureA.put("GGGAA", 33.66); structureA.put("GGGAT", 33.66); structureA.put("GGGAG", 33.49); structureA.put("GGGAC", 33.99); structureA.put("GGGTA", 34.33); structureA.put("GGGTT", 34.89); structureA.put("GGGTG", 34.41); structureA.put("GGGTC", 34.36); structureA.put("GGGGA", 33.55); structureA.put("GGGGT", 33.44); structureA.put("GGGGG", 33.25); structureA.put("GGGGC", 33.56); structureA.put("GGGCA", 33.82); structureA.put("GGGCT", 33.51); structureA.put("GGGCG", 33.85); structureA.put("GGGCC", 33.57); structureA.put("GGCAA", 36.34); structureA.put("GGCAT", 36.28); structureA.put("GGCAG", 36.22); structureA.put("GGCAC", 36.31); structureA.put("GGCTA", 37.31); structureA.put("GGCTT", 37.74); structureA.put("GGCTG", 37.17); structureA.put("GGCTC", 37.09); structureA.put("GGCGA", 36.20); structureA.put("GGCGT", 36.67); structureA.put("GGCGG", 36.31); structureA.put("GGCGC", 36.24); structureA.put("GGCCA", 37.04); structureA.put("GGCCT", 36.64); structureA.put("GGCCG", 36.85); structureA.put("GGCCC", 36.61); structureA.put("GCAAA", 34.35); structureA.put("GCAAT", 34.49); structureA.put("GCAAG", 34.37); structureA.put("GCAAC", 34.80); structureA.put("GCATA", 34.78); structureA.put("GCATT", 35.25); structureA.put("GCATG", 34.82); structureA.put("GCATC", 34.59); structureA.put("GCAGA", 33.98); structureA.put("GCAGT", 33.95); structureA.put("GCAGG", 33.94); structureA.put("GCAGC", 34.49); structureA.put("GCACA", 35.01); structureA.put("GCACT", 33.99); structureA.put("GCACG", 34.75); structureA.put("GCACC", 34.26); structureA.put("GCTAA", 31.43); structureA.put("GCTAT", 31.21); structureA.put("GCTAG", 31.36); structureA.put("GCTAC", 31.25); structureA.put("GCTTA", 32.17); structureA.put("GCTTT", 32.81); structureA.put("GCTTG", 32.11); structureA.put("GCTTC", 32.06); structureA.put("GCTGA", 31.14); structureA.put("GCTGT", 31.35); structureA.put("GCTGG", 30.94); structureA.put("GCTGC", 31.29); structureA.put("GCTCA", 31.45); structureA.put("GCTCT", 31.62); structureA.put("GCTCG", 31.41); structureA.put("GCTCC", 31.38); structureA.put("GCGAA", 32.71); structureA.put("GCGAT", 32.49); structureA.put("GCGAG", 32.59); structureA.put("GCGAC", 32.70); structureA.put("GCGTA", 33.14); structureA.put("GCGTT", 33.41); structureA.put("GCGTG", 33.34); structureA.put("GCGTC", 33.02); structureA.put("GCGGA", 32.42); structureA.put("GCGGT", 32.31); structureA.put("GCGGG", 32.30); structureA.put("GCGGC", 32.46); structureA.put("GCGCA", 32.79); structureA.put("GCGCT", 32.08); structureA.put("GCGCG", 32.44); structureA.put("GCGCC", 32.32); structureA.put("GCCAA", 33.00); structureA.put("GCCAT", 33.39); structureA.put("GCCAG", 33.53); structureA.put("GCCAC", 33.11); structureA.put("GCCTA", 34.04); structureA.put("GCCTT", 34.57); structureA.put("GCCTG", 33.99); structureA.put("GCCTC", 33.92); structureA.put("GCCGA", 32.95); structureA.put("GCCGT", 33.79); structureA.put("GCCGG", 33.41); structureA.put("GCCGC", 33.44); structureA.put("GCCCA", 33.75); structureA.put("GCCCT", 33.54); structureA.put("GCCCG", 33.78); structureA.put("GCCCC", 33.68); structureA.put("CAAAA", 35.51); structureA.put("CAAAT", 35.49); structureA.put("CAAAG", 35.41); structureA.put("CAAAC", 35.28); structureA.put("CAATA", 35.12); structureA.put("CAATT", 35.62); structureA.put("CAATG", 35.08); structureA.put("CAATC", 34.92); structureA.put("CAAGA", 34.77); structureA.put("CAAGT", 34.94); structureA.put("CAAGG", 34.98); structureA.put("CAAGC", 34.57); structureA.put("CAACA", 35.19); structureA.put("CAACT", 34.76); structureA.put("CAACG", 35.01); structureA.put("CAACC", 31.89); structureA.put("CATAA", 31.48); structureA.put("CATAT", 32.04); structureA.put("CATAG", 31.84); structureA.put("CATAC", 31.46); structureA.put("CATTA", 32.40); structureA.put("CATTT", 33.42); structureA.put("CATTG", 32.41); structureA.put("CATTC", 32.69); structureA.put("CATGA", 31.75); structureA.put("CATGT", 32.00); structureA.put("CATGG", 31.61); structureA.put("CATGC", 31.54); structureA.put("CATCA", 31.93); structureA.put("CATCT", 32.25); structureA.put("CATCG", 32.14); structureA.put("CATCC", 32.03); structureA.put("CAGAA", 31.59); structureA.put("CAGAT", 31.12); structureA.put("CAGAG", 31.18); structureA.put("CAGAC", 31.42); structureA.put("CAGTA", 31.52); structureA.put("CAGTT", 31.73); structureA.put("CAGTG", 31.61); structureA.put("CAGTC", 31.46); structureA.put("CAGGA", 31.21); structureA.put("CAGGT", 31.38); structureA.put("CAGGG", 31.11); structureA.put("CAGGC", 31.14); structureA.put("CAGCA", 31.23); structureA.put("CAGCT", 31.01); structureA.put("CAGCG", 31.20); structureA.put("CAGCC", 31.16); structureA.put("CACAA", 33.59); structureA.put("CACAT", 33.53); structureA.put("CACAG", 33.74); structureA.put("CACAC", 33.35); structureA.put("CACTA", 34.28); structureA.put("CACTT", 34.91); structureA.put("CACTG", 34.30); structureA.put("CACTC", 34.12); structureA.put("CACGA", 33.77); structureA.put("CACGT", 34.05); structureA.put("CACGG", 33.81); structureA.put("CACGC", 33.73); structureA.put("CACCA", 34.27); structureA.put("CACCT", 34.31); structureA.put("CACCG", 34.05); structureA.put("CACCC", 34.14); structureA.put("CTAAA", 34.35); structureA.put("CTAAT", 34.46); structureA.put("CTAAG", 34.71); structureA.put("CTAAC", 34.54); structureA.put("CTATA", 34.63); structureA.put("CTATT", 35.89); structureA.put("CTATG", 35.03); structureA.put("CTATC", 33.89); structureA.put("CTAGA", 34.35); structureA.put("CTAGT", 35.00); structureA.put("CTAGG", 34.19); structureA.put("CTAGC", 34.66); structureA.put("CTACA", 35.06); structureA.put("CTACT", 34.13); structureA.put("CTACG", 34.25); structureA.put("CTACC", 34.30); structureA.put("CTTAA", 34.68); structureA.put("CTTAT", 35.03); structureA.put("CTTAG", 35.04); structureA.put("CTTAC", 34.87); structureA.put("CTTTA", 36.11); structureA.put("CTTTT", 37.18); structureA.put("CTTTG", 36.30); structureA.put("CTTTC", 36.10); structureA.put("CTTGA", 34.76); structureA.put("CTTGT", 35.05); structureA.put("CTTGG", 34.56); structureA.put("CTTGC", 34.89); structureA.put("CTTCA", 35.14); structureA.put("CTTCT", 35.47); structureA.put("CTTCG", 35.11); structureA.put("CTTCC", 35.02); structureA.put("CTGAA", 34.21); structureA.put("CTGAT", 34.24); structureA.put("CTGAG", 34.47); structureA.put("CTGAC", 34.37); structureA.put("CTGTA", 34.82); structureA.put("CTGTT", 34.91); structureA.put("CTGTG", 35.20); structureA.put("CTGTC", 34.79); structureA.put("CTGGA", 33.98); structureA.put("CTGGT", 34.21); structureA.put("CTGGG", 33.88); structureA.put("CTGGC", 34.28); structureA.put("CTGCA", 34.50); structureA.put("CTGCT", 33.86); structureA.put("CTGCG", 34.24); structureA.put("CTGCC", 33.75); structureA.put("CTCAA", 34.56); structureA.put("CTCAT", 35.10); structureA.put("CTCAG", 34.84); structureA.put("CTCAC", 34.92); structureA.put("CTCTA", 35.31); structureA.put("CTCTT", 35.92); structureA.put("CTCTG", 35.60); structureA.put("CTCTC", 35.65); structureA.put("CTCGA", 35.17); structureA.put("CTCGT", 35.94); structureA.put("CTCGG", 34.73); structureA.put("CTCGC", 35.13); structureA.put("CTCCA", 35.80); structureA.put("CTCCT", 36.23); structureA.put("CTCCG", 35.79); structureA.put("CTCCC", 35.58); structureA.put("CGAAA", 35.62); structureA.put("CGAAT", 35.52); structureA.put("CGAAG", 35.23); structureA.put("CGAAC", 35.61); structureA.put("CGATA", 35.68); structureA.put("CGATT", 36.19); structureA.put("CGATG", 35.83); structureA.put("CGATC", 35.54); structureA.put("CGAGA", 35.18); structureA.put("CGAGT", 35.21); structureA.put("CGAGG", 34.97); structureA.put("CGAGC", 35.31); structureA.put("CGACA", 35.73); structureA.put("CGACT", 35.38); structureA.put("CGACG", 35.57); structureA.put("CGACC", 35.73); structureA.put("CGTAA", 33.58); structureA.put("CGTAT", 34.16); structureA.put("CGTAG", 34.02); structureA.put("CGTAC", 33.97); structureA.put("CGTTA", 34.89); structureA.put("CGTTT", 35.48); structureA.put("CGTTG", 35.10); structureA.put("CGTTC", 34.90); structureA.put("CGTGA", 33.80); structureA.put("CGTGT", 33.84); structureA.put("CGTGG", 33.53); structureA.put("CGTGC", 33.78); structureA.put("CGTCA", 34.29); structureA.put("CGTCT", 34.44); structureA.put("CGTCG", 34.26); structureA.put("CGTCC", 34.01); structureA.put("CGGAA", 34.24); structureA.put("CGGAT", 32.93); structureA.put("CGGAG", 33.51); structureA.put("CGGAC", 33.80); structureA.put("CGGTA", 34.27); structureA.put("CGGTT", 34.48); structureA.put("CGGTG", 34.36); structureA.put("CGGTC", 34.17); structureA.put("CGGGA", 33.56); structureA.put("CGGGT", 33.51); structureA.put("CGGGG", 33.22); structureA.put("CGGGC", 33.44); structureA.put("CGGCA", 33.58); structureA.put("CGGCT", 33.27); structureA.put("CGGCG", 33.59); structureA.put("CGGCC", 33.23); structureA.put("CGCAA", 35.42); structureA.put("CGCAT", 35.58); structureA.put("CGCAG", 35.64); structureA.put("CGCAC", 35.54); structureA.put("CGCTA", 36.72); structureA.put("CGCTT", 37.15); structureA.put("CGCTG", 36.67); structureA.put("CGCTC", 36.68); structureA.put("CGCGA", 35.66); structureA.put("CGCGT", 35.90); structureA.put("CGCGG", 35.54); structureA.put("CGCGC", 35.70); structureA.put("CGCCA", 36.34); structureA.put("CGCCT", 36.31); structureA.put("CGCCG", 36.24); structureA.put("CGCCC", 36.18); structureA.put("CCAAA", 34.57); structureA.put("CCAAT", 34.40); structureA.put("CCAAG", 34.61); structureA.put("CCAAC", 34.44); structureA.put("CCATA", 34.97); structureA.put("CCATT", 34.87); structureA.put("CCATG", 34.66); structureA.put("CCATC", 34.54); structureA.put("CCAGA", 33.91); structureA.put("CCAGT", 34.39); structureA.put("CCAGG", 34.05); structureA.put("CCAGC", 34.09); structureA.put("CCACA", 34.79); structureA.put("CCACT", 34.11); structureA.put("CCACG", 34.18); structureA.put("CCACC", 34.27); structureA.put("CCTAA", 31.45); structureA.put("CCTAT", 31.71); structureA.put("CCTAG", 31.47); structureA.put("CCTAC", 31.41); structureA.put("CCTTA", 32.34); structureA.put("CCTTT", 32.79); structureA.put("CCTTG", 32.51); structureA.put("CCTTC", 32.02); structureA.put("CCTGA", 30.94); structureA.put("CCTGT", 31.34); structureA.put("CCTGG", 31.17); structureA.put("CCTGC", 31.18); structureA.put("CCTCA", 31.54); structureA.put("CCTCT", 31.44); structureA.put("CCTCG", 31.50); structureA.put("CCTCC", 31.42); structureA.put("CCGAA", 32.67); structureA.put("CCGAT", 32.57); structureA.put("CCGAG", 32.31); structureA.put("CCGAC", 32.81); structureA.put("CCGTA", 33.27); structureA.put("CCGTT", 33.45); structureA.put("CCGTG", 33.70); structureA.put("CCGTC", 33.08); structureA.put("CCGGA", 32.84); structureA.put("CCGGT", 32.44); structureA.put("CCGGG", 32.53); structureA.put("CCGGC", 32.61); structureA.put("CCGCA", 33.13); structureA.put("CCGCT", 32.34); structureA.put("CCGCG", 32.35); structureA.put("CCGCC", 32.31); structureA.put("CCCAA", 32.76); structureA.put("CCCAT", 33.45); structureA.put("CCCAG", 33.54); structureA.put("CCCAC", 33.55); structureA.put("CCCTA", 34.12); structureA.put("CCCTT", 34.22); structureA.put("CCCTG", 34.07); structureA.put("CCCTC", 33.87); structureA.put("CCCGA", 33.58); structureA.put("CCCGT", 33.75); structureA.put("CCCGG", 33.24); structureA.put("CCCGC", 33.41); structureA.put("CCCCA", 33.49); structureA.put("CCCCT", 33.61); structureA.put("CCCCG", 33.62); structureA.put("CCCCC", 33.41); structureB.put("AAAAA", 38.01); structureB.put("AAAAT", 37.68); structureB.put("AAAAG", 37.18); structureB.put("AAAAC", 36.95); structureB.put("AAATA", 33.85); structureB.put("AAATT", 35.11); structureB.put("AAATG", 33.42); structureB.put("AAATC", 33.42); structureB.put("AAAGA", 33.18); structureB.put("AAAGT", 33.88); structureB.put("AAAGG", 32.79); structureB.put("AAAGC", 32.81); structureB.put("AAACA", 35.22); structureB.put("AAACT", 36.86); structureB.put("AAACG", 35.48); structureB.put("AAACC", 36.20); structureB.put("AATAA", 34.83); structureB.put("AATAT", 35.25); structureB.put("AATAG", 35.89); structureB.put("AATAC", 34.79); structureB.put("AATTA", 35.92); structureB.put("AATTT", 37.52); structureB.put("AATTG", 35.62); structureB.put("AATTC", 36.17); structureB.put("AATGA", 34.98); structureB.put("AATGT", 36.13); structureB.put("AATGG", 34.87); structureB.put("AATGC", 35.25); structureB.put("AATCA", 36.14); structureB.put("AATCT", 37.53); structureB.put("AATCG", 36.19); structureB.put("AATCC", 36.57); structureB.put("AAGAA", 36.52); structureB.put("AAGAT", 37.56); structureB.put("AAGAG", 35.92); structureB.put("AAGAC", 36.40); structureB.put("AAGTA", 35.21); structureB.put("AAGTT", 36.30); structureB.put("AAGTG", 34.91); structureB.put("AAGTC", 35.44); structureB.put("AAGGA", 34.90); structureB.put("AAGGT", 35.68); structureB.put("AAGGG", 34.22); structureB.put("AAGGC", 34.57); structureB.put("AAGCA", 37.13); structureB.put("AAGCT", 38.05); structureB.put("AAGCG", 37.15); structureB.put("AAGCC", 37.74); structureB.put("AACAA", 35.64); structureB.put("AACAT", 35.94); structureB.put("AACAG", 34.91); structureB.put("AACAC", 35.07); structureB.put("AACTA", 32.10); structureB.put("AACTT", 33.58); structureB.put("AACTG", 31.73); structureB.put("AACTC", 32.41); structureB.put("AACGA", 33.66); structureB.put("AACGT", 34.53); structureB.put("AACGG", 33.45); structureB.put("AACGC", 33.41); structureB.put("AACCA", 34.89); structureB.put("AACCT", 35.61); structureB.put("AACCG", 34.48); structureB.put("AACCC", 34.89); structureB.put("ATAAA", 35.94); structureB.put("ATAAT", 35.90); structureB.put("ATAAG", 35.03); structureB.put("ATAAC", 35.50); structureB.put("ATATA", 32.12); structureB.put("ATATT", 33.17); structureB.put("ATATG", 32.04); structureB.put("ATATC", 32.32); structureB.put("ATAGA", 31.88); structureB.put("ATAGT", 31.86); structureB.put("ATAGG", 31.71); structureB.put("ATAGC", 31.21); structureB.put("ATACA", 34.26); structureB.put("ATACT", 34.73); structureB.put("ATACG", 34.16); structureB.put("ATACC", 34.69); structureB.put("ATTAA", 34.44); structureB.put("ATTAT", 35.02); structureB.put("ATTAG", 34.46); structureB.put("ATTAC", 34.68); structureB.put("ATTTA", 35.79); structureB.put("ATTTT", 36.93); structureB.put("ATTTG", 35.49); structureB.put("ATTTC", 35.77); structureB.put("ATTGA", 34.60); structureB.put("ATTGT", 35.55); structureB.put("ATTGG", 34.40); structureB.put("ATTGC", 34.49); structureB.put("ATTCA", 35.03); structureB.put("ATTCT", 36.60); structureB.put("ATTCG", 35.52); structureB.put("ATTCC", 35.99); structureB.put("ATGAA", 35.39); structureB.put("ATGAT", 36.14); structureB.put("ATGAG", 35.10); structureB.put("ATGAC", 35.47); structureB.put("ATGTA", 34.06); structureB.put("ATGTT", 35.12); structureB.put("ATGTG", 33.53); structureB.put("ATGTC", 34.24); structureB.put("ATGGA", 33.69); structureB.put("ATGGT", 34.55); structureB.put("ATGGG", 33.45); structureB.put("ATGGC", 33.39); structureB.put("ATGCA", 35.60); structureB.put("ATGCT", 36.89); structureB.put("ATGCG", 35.58); structureB.put("ATGCC", 36.28); structureB.put("ATCAA", 34.60); structureB.put("ATCAT", 34.82); structureB.put("ATCAG", 34.24); structureB.put("ATCAC", 34.03); structureB.put("ATCTA", 31.29); structureB.put("ATCTT", 32.88); structureB.put("ATCTG", 31.12); structureB.put("ATCTC", 31.47); structureB.put("ATCGA", 32.77); structureB.put("ATCGT", 33.64); structureB.put("ATCGG", 32.57); structureB.put("ATCGC", 32.49); structureB.put("ATCCA", 33.69); structureB.put("ATCCT", 34.37); structureB.put("ATCCG", 32.93); structureB.put("ATCCC", 33.66); structureB.put("AGAAA", 36.02); structureB.put("AGAAT", 36.11); structureB.put("AGAAG", 35.47); structureB.put("AGAAC", 35.70); structureB.put("AGATA", 32.48); structureB.put("AGATT", 33.30); structureB.put("AGATG", 32.25); structureB.put("AGATC", 32.82); structureB.put("AGAGA", 31.70); structureB.put("AGAGT", 31.76); structureB.put("AGAGG", 31.44); structureB.put("AGAGC", 31.62); structureB.put("AGACA", 34.36); structureB.put("AGACT", 34.89); structureB.put("AGACG", 34.44); structureB.put("AGACC", 34.74); structureB.put("AGTAA", 34.55); structureB.put("AGTAT", 34.44); structureB.put("AGTAG", 34.13); structureB.put("AGTAC", 33.82); structureB.put("AGTTA", 34.85); structureB.put("AGTTT", 35.86); structureB.put("AGTTG", 34.76); structureB.put("AGTTC", 35.24); structureB.put("AGTGA", 33.87); structureB.put("AGTGT", 34.61); structureB.put("AGTGG", 34.11); structureB.put("AGTGC", 33.99); structureB.put("AGTCA", 35.14); structureB.put("AGTCT", 36.01); structureB.put("AGTCG", 35.38); structureB.put("AGTCC", 35.78); structureB.put("AGGAA", 36.26); structureB.put("AGGAT", 36.16); structureB.put("AGGAG", 36.23); structureB.put("AGGAC", 36.03); structureB.put("AGGTA", 34.69); structureB.put("AGGTT", 35.92); structureB.put("AGGTG", 34.31); structureB.put("AGGTC", 34.84); structureB.put("AGGGA", 33.60); structureB.put("AGGGT", 34.42); structureB.put("AGGGG", 33.61); structureB.put("AGGGC", 33.54); structureB.put("AGGCA", 36.26); structureB.put("AGGCT", 37.47); structureB.put("AGGCG", 36.31); structureB.put("AGGCC", 36.64); structureB.put("AGCAA", 34.41); structureB.put("AGCAT", 34.56); structureB.put("AGCAG", 33.86); structureB.put("AGCAC", 34.03); structureB.put("AGCTA", 31.13); structureB.put("AGCTT", 32.14); structureB.put("AGCTG", 31.01); structureB.put("AGCTC", 31.33); structureB.put("AGCGA", 32.44); structureB.put("AGCGT", 33.00); structureB.put("AGCGG", 32.34); structureB.put("AGCGC", 32.08); structureB.put("AGCCA", 33.35); structureB.put("AGCCT", 34.00); structureB.put("AGCCG", 33.27); structureB.put("AGCCC", 33.51); structureB.put("ACAAA", 35.77); structureB.put("ACAAT", 35.45); structureB.put("ACAAG", 35.05); structureB.put("ACAAC", 35.25); structureB.put("ACATA", 32.21); structureB.put("ACATT", 33.25); structureB.put("ACATG", 32.00); structureB.put("ACATC", 32.37); structureB.put("ACAGA", 31.60); structureB.put("ACAGT", 31.75); structureB.put("ACAGG", 31.34); structureB.put("ACAGC", 31.35); structureB.put("ACACA", 33.88); structureB.put("ACACT", 34.67); structureB.put("ACACG", 33.84); structureB.put("ACACC", 34.36); structureB.put("ACTAA", 34.45); structureB.put("ACTAT", 35.53); structureB.put("ACTAG", 35.00); structureB.put("ACTAC", 34.24); structureB.put("ACTTA", 35.16); structureB.put("ACTTT", 36.93); structureB.put("ACTTG", 34.94); structureB.put("ACTTC", 35.22); structureB.put("ACTGA", 34.41); structureB.put("ACTGT", 34.72); structureB.put("ACTGG", 34.39); structureB.put("ACTGC", 33.95); structureB.put("ACTCA", 35.29); structureB.put("ACTCT", 35.66); structureB.put("ACTCG", 35.21); structureB.put("ACTCC", 35.76); structureB.put("ACGAA", 36.00); structureB.put("ACGAT", 36.22); structureB.put("ACGAG", 35.94); structureB.put("ACGAC", 35.70); structureB.put("ACGTA", 34.30); structureB.put("ACGTT", 35.24); structureB.put("ACGTG", 34.05); structureB.put("ACGTC", 34.58); structureB.put("ACGGA", 34.60); structureB.put("ACGGT", 34.47); structureB.put("ACGGG", 33.75); structureB.put("ACGGC", 33.79); structureB.put("ACGCA", 35.83); structureB.put("ACGCT", 37.02); structureB.put("ACGCG", 35.90); structureB.put("ACGCC", 36.67); structureB.put("ACCAA", 34.60); structureB.put("ACCAT", 34.88); structureB.put("ACCAG", 34.21); structureB.put("ACCAC", 34.18); structureB.put("ACCTA", 31.46); structureB.put("ACCTT", 32.53); structureB.put("ACCTG", 31.38); structureB.put("ACCTC", 31.49); structureB.put("ACCGA", 32.64); structureB.put("ACCGT", 33.29); structureB.put("ACCGG", 32.44); structureB.put("ACCGC", 32.31); structureB.put("ACCCA", 33.53); structureB.put("ACCCT", 34.17); structureB.put("ACCCG", 33.51); structureB.put("ACCCC", 33.44); structureB.put("TAAAA", 36.72); structureB.put("TAAAT", 36.55); structureB.put("TAAAG", 36.11); structureB.put("TAAAC", 36.40); structureB.put("TAATA", 32.48); structureB.put("TAATT", 33.31); structureB.put("TAATG", 32.40); structureB.put("TAATC", 32.72); structureB.put("TAAGA", 32.43); structureB.put("TAAGT", 33.06); structureB.put("TAAGG", 32.34); structureB.put("TAAGC", 32.17); structureB.put("TAACA", 34.78); structureB.put("TAACT", 35.60); structureB.put("TAACG", 34.89); structureB.put("TAACC", 35.30); structureB.put("TATAA", 34.57); structureB.put("TATAT", 34.46); structureB.put("TATAG", 34.63); structureB.put("TATAC", 34.63); structureB.put("TATTA", 35.37); structureB.put("TATTT", 37.22); structureB.put("TATTG", 35.12); structureB.put("TATTC", 35.93); structureB.put("TATGA", 35.10); structureB.put("TATGT", 35.48); structureB.put("TATGG", 34.97); structureB.put("TATGC", 34.78); structureB.put("TATCA", 35.75); structureB.put("TATCT", 36.52); structureB.put("TATCG", 35.68); structureB.put("TATCC", 36.04); structureB.put("TAGAA", 36.55); structureB.put("TAGAT", 36.79); structureB.put("TAGAG", 35.31); structureB.put("TAGAC", 36.16); structureB.put("TAGTA", 34.42); structureB.put("TAGTT", 35.56); structureB.put("TAGTG", 34.28); structureB.put("TAGTC", 34.57); structureB.put("TAGGA", 34.64); structureB.put("TAGGT", 34.99); structureB.put("TAGGG", 34.12); structureB.put("TAGGC", 34.04); structureB.put("TAGCA", 36.48); structureB.put("TAGCT", 37.56); structureB.put("TAGCG", 36.72); structureB.put("TAGCC", 37.31); structureB.put("TACAA", 35.27); structureB.put("TACAT", 35.76); structureB.put("TACAG", 34.82); structureB.put("TACAC", 34.99); structureB.put("TACTA", 31.63); structureB.put("TACTT", 33.24); structureB.put("TACTG", 31.52); structureB.put("TACTC", 31.76); structureB.put("TACGA", 33.73); structureB.put("TACGT", 34.34); structureB.put("TACGG", 33.27); structureB.put("TACGC", 33.14); structureB.put("TACCA", 34.30); structureB.put("TACCT", 35.24); structureB.put("TACCG", 34.27); structureB.put("TACCC", 34.33); structureB.put("TTAAA", 35.63); structureB.put("TTAAT", 35.37); structureB.put("TTAAG", 34.68); structureB.put("TTAAC", 35.05); structureB.put("TTATA", 31.78); structureB.put("TTATT", 32.44); structureB.put("TTATG", 31.48); structureB.put("TTATC", 31.94); structureB.put("TTAGA", 31.27); structureB.put("TTAGT", 31.57); structureB.put("TTAGG", 31.45); structureB.put("TTAGC", 31.43); structureB.put("TTACA", 33.74); structureB.put("TTACT", 34.75); structureB.put("TTACG", 33.58); structureB.put("TTACC", 34.56); structureB.put("TTTAA", 34.67); structureB.put("TTTAT", 34.60); structureB.put("TTTAG", 34.35); structureB.put("TTTAC", 34.25); structureB.put("TTTTA", 35.60); structureB.put("TTTTT", 37.74); structureB.put("TTTTG", 35.51); structureB.put("TTTTC", 36.32); structureB.put("TTTGA", 34.64); structureB.put("TTTGT", 35.41); structureB.put("TTTGG", 34.57); structureB.put("TTTGC", 34.35); structureB.put("TTTCA", 34.89); structureB.put("TTTCT", 36.43); structureB.put("TTTCG", 35.62); structureB.put("TTTCC", 36.46); structureB.put("TTGAA", 34.80); structureB.put("TTGAT", 35.38); structureB.put("TTGAG", 34.56); structureB.put("TTGAC", 34.78); structureB.put("TTGTA", 33.40); structureB.put("TTGTT", 34.60); structureB.put("TTGTG", 33.59); structureB.put("TTGTC", 33.76); structureB.put("TTGGA", 33.66); structureB.put("TTGGT", 34.70); structureB.put("TTGGG", 32.76); structureB.put("TTGGC", 33.00); structureB.put("TTGCA", 35.49); structureB.put("TTGCT", 36.94); structureB.put("TTGCG", 35.42); structureB.put("TTGCC", 36.34); structureB.put("TTCAA", 34.59); structureB.put("TTCAT", 35.03); structureB.put("TTCAG", 34.21); structureB.put("TTCAC", 34.78); structureB.put("TTCTA", 31.57); structureB.put("TTCTT", 32.30); structureB.put("TTCTG", 31.59); structureB.put("TTCTC", 31.51); structureB.put("TTCGA", 32.98); structureB.put("TTCGT", 33.73); structureB.put("TTCGG", 32.67); structureB.put("TTCGC", 32.71); structureB.put("TTCCA", 33.80); structureB.put("TTCCT", 34.39); structureB.put("TTCCG", 34.24); structureB.put("TTCCC", 33.66); structureB.put("TGAAA", 35.90); structureB.put("TGAAT", 36.06); structureB.put("TGAAG", 35.14); structureB.put("TGAAC", 35.57); structureB.put("TGATA", 31.94); structureB.put("TGATT", 33.01); structureB.put("TGATG", 31.93); structureB.put("TGATC", 32.48); structureB.put("TGAGA", 31.77); structureB.put("TGAGT", 32.14); structureB.put("TGAGG", 31.54); structureB.put("TGAGC", 31.45); structureB.put("TGACA", 34.20); structureB.put("TGACT", 35.06); structureB.put("TGACG", 34.29); structureB.put("TGACC", 34.83); structureB.put("TGTAA", 34.60); structureB.put("TGTAT", 34.63); structureB.put("TGTAG", 35.06); structureB.put("TGTAC", 34.52); structureB.put("TGTTA", 35.32); structureB.put("TGTTT", 36.59); structureB.put("TGTTG", 35.19); structureB.put("TGTTC", 35.68); structureB.put("TGTGA", 34.48); structureB.put("TGTGT", 35.28); structureB.put("TGTGG", 34.79); structureB.put("TGTGC", 35.01); structureB.put("TGTCA", 35.30); structureB.put("TGTCT", 36.49); structureB.put("TGTCG", 35.73); structureB.put("TGTCC", 36.22); structureB.put("TGGAA", 36.04); structureB.put("TGGAT", 36.24); structureB.put("TGGAG", 35.80); structureB.put("TGGAC", 36.11); structureB.put("TGGTA", 34.38); structureB.put("TGGTT", 35.26); structureB.put("TGGTG", 34.27); structureB.put("TGGTC", 34.68); structureB.put("TGGGA", 33.69); structureB.put("TGGGT", 34.63); structureB.put("TGGGG", 33.49); structureB.put("TGGGC", 33.75); structureB.put("TGGCA", 36.44); structureB.put("TGGCT", 37.62); structureB.put("TGGCG", 36.34); structureB.put("TGGCC", 37.04); structureB.put("TGCAA", 34.61); structureB.put("TGCAT", 35.12); structureB.put("TGCAG", 34.50); structureB.put("TGCAC", 34.64); structureB.put("TGCTA", 31.39); structureB.put("TGCTT", 32.29); structureB.put("TGCTG", 31.23); structureB.put("TGCTC", 31.46); structureB.put("TGCGA", 33.31); structureB.put("TGCGT", 33.71); structureB.put("TGCGG", 33.13); structureB.put("TGCGC", 32.79); structureB.put("TGCCA", 33.34); structureB.put("TGCCT", 34.03); structureB.put("TGCCG", 33.58); structureB.put("TGCCC", 33.82); structureB.put("TCAAA", 35.30); structureB.put("TCAAT", 34.93); structureB.put("TCAAG", 34.76); structureB.put("TCAAC", 34.93); structureB.put("TCATA", 31.46); structureB.put("TCATT", 32.87); structureB.put("TCATG", 31.75); structureB.put("TCATC", 32.03); structureB.put("TCAGA", 31.28); structureB.put("TCAGT", 31.46); structureB.put("TCAGG", 30.94); structureB.put("TCAGC", 31.14); structureB.put("TCACA", 33.59); structureB.put("TCACT", 34.23); structureB.put("TCACG", 33.80); structureB.put("TCACC", 34.04); structureB.put("TCTAA", 34.40); structureB.put("TCTAT", 34.25); structureB.put("TCTAG", 34.35); structureB.put("TCTAC", 34.42); structureB.put("TCTTA", 34.89); structureB.put("TCTTT", 36.69); structureB.put("TCTTG", 34.77); structureB.put("TCTTC", 35.03); structureB.put("TCTGA", 34.38); structureB.put("TCTGT", 35.00); structureB.put("TCTGG", 33.91); structureB.put("TCTGC", 33.98); structureB.put("TCTCA", 35.17); structureB.put("TCTCT", 35.80); structureB.put("TCTCG", 35.18); structureB.put("TCTCC", 35.79); structureB.put("TCGAA", 34.95); structureB.put("TCGAT", 35.76); structureB.put("TCGAG", 35.17); structureB.put("TCGAC", 35.51); structureB.put("TCGTA", 33.57); structureB.put("TCGTT", 34.71); structureB.put("TCGTG", 33.77); structureB.put("TCGTC", 34.18); structureB.put("TCGGA", 33.64); structureB.put("TCGGT", 34.18); structureB.put("TCGGG", 33.58); structureB.put("TCGGC", 32.95); structureB.put("TCGCA", 35.53); structureB.put("TCGCT", 36.83); structureB.put("TCGCG", 35.66); structureB.put("TCGCC", 36.20); structureB.put("TCCAA", 34.57); structureB.put("TCCAT", 34.46); structureB.put("TCCAG", 33.98); structureB.put("TCCAC", 34.34); structureB.put("TCCTA", 31.66); structureB.put("TCCTT", 32.55); structureB.put("TCCTG", 31.21); structureB.put("TCCTC", 31.53); structureB.put("TCCGA", 32.77); structureB.put("TCCGT", 33.01); structureB.put("TCCGG", 32.84); structureB.put("TCCGC", 32.42); structureB.put("TCCCA", 33.23); structureB.put("TCCCT", 33.86); structureB.put("TCCCG", 33.56); structureB.put("TCCCC", 33.55); structureB.put("GAAAA", 37.00); structureB.put("GAAAT", 36.70); structureB.put("GAAAG", 36.10); structureB.put("GAAAC", 36.17); structureB.put("GAATA", 32.92); structureB.put("GAATT", 33.75); structureB.put("GAATG", 32.69); structureB.put("GAATC", 32.93); structureB.put("GAAGA", 32.42); structureB.put("GAAGT", 32.77); structureB.put("GAAGG", 32.02); structureB.put("GAAGC", 32.06); structureB.put("GAACA", 34.81); structureB.put("GAACT", 35.93); structureB.put("GAACG", 34.90); structureB.put("GAACC", 35.19); structureB.put("GATAA", 34.59); structureB.put("GATAT", 35.01); structureB.put("GATAG", 33.89); structureB.put("GATAC", 34.46); structureB.put("GATTA", 35.28); structureB.put("GATTT", 36.55); structureB.put("GATTG", 34.92); structureB.put("GATTC", 35.53); structureB.put("GATGA", 34.64); structureB.put("GATGT", 35.37); structureB.put("GATGG", 34.54); structureB.put("GATGC", 34.59); structureB.put("GATCA", 35.60); structureB.put("GATCT", 36.68); structureB.put("GATCG", 35.54); structureB.put("GATCC", 36.29); structureB.put("GAGAA", 36.61); structureB.put("GAGAT", 36.47); structureB.put("GAGAG", 35.65); structureB.put("GAGAC", 36.17); structureB.put("GAGTA", 34.56); structureB.put("GAGTT", 36.03); structureB.put("GAGTG", 34.12); structureB.put("GAGTC", 34.87); structureB.put("GAGGA", 34.17); structureB.put("GAGGT", 34.93); structureB.put("GAGGG", 33.87); structureB.put("GAGGC", 33.92); structureB.put("GAGCA", 36.61); structureB.put("GAGCT", 37.66); structureB.put("GAGCG", 36.68); structureB.put("GAGCC", 37.09); structureB.put("GACAA", 34.98); structureB.put("GACAT", 35.42); structureB.put("GACAG", 34.79); structureB.put("GACAC", 34.92); structureB.put("GACTA", 31.53); structureB.put("GACTT", 33.16); structureB.put("GACTG", 31.46); structureB.put("GACTC", 31.83); structureB.put("GACGA", 33.65); structureB.put("GACGT", 34.30); structureB.put("GACGG", 33.08); structureB.put("GACGC", 33.02); structureB.put("GACCA", 34.30); structureB.put("GACCT", 35.04); structureB.put("GACCG", 34.17); structureB.put("GACCC", 34.36); structureB.put("GTAAA", 35.53); structureB.put("GTAAT", 35.53); structureB.put("GTAAG", 34.87); structureB.put("GTAAC", 35.06); structureB.put("GTATA", 31.78); structureB.put("GTATT", 32.78); structureB.put("GTATG", 31.46); structureB.put("GTATC", 32.10); structureB.put("GTAGA", 30.99); structureB.put("GTAGT", 31.68); structureB.put("GTAGG", 31.41); structureB.put("GTAGC", 31.25); structureB.put("GTACA", 33.68); structureB.put("GTACT", 34.74); structureB.put("GTACG", 33.97); structureB.put("GTACC", 34.34); structureB.put("GTTAA", 34.36); structureB.put("GTTAT", 34.54); structureB.put("GTTAG", 34.54); structureB.put("GTTAC", 34.23); structureB.put("GTTTA", 35.72); structureB.put("GTTTT", 37.13); structureB.put("GTTTG", 35.28); structureB.put("GTTTC", 36.01); structureB.put("GTTGA", 34.69); structureB.put("GTTGT", 35.22); structureB.put("GTTGG", 34.44); structureB.put("GTTGC", 34.80); structureB.put("GTTCA", 35.12); structureB.put("GTTCT", 36.45); structureB.put("GTTCG", 35.61); structureB.put("GTTCC", 36.02); structureB.put("GTGAA", 34.80); structureB.put("GTGAT", 35.64); structureB.put("GTGAG", 34.92); structureB.put("GTGAC", 35.33); structureB.put("GTGTA", 33.60); structureB.put("GTGTT", 34.68); structureB.put("GTGTG", 33.35); structureB.put("GTGTC", 34.03); structureB.put("GTGGA", 33.75); structureB.put("GTGGT", 34.37); structureB.put("GTGGG", 33.55); structureB.put("GTGGC", 33.11); structureB.put("GTGCA", 35.46); structureB.put("GTGCT", 36.67); structureB.put("GTGCG", 35.54); structureB.put("GTGCC", 36.31); structureB.put("GTCAA", 34.61); structureB.put("GTCAT", 35.10); structureB.put("GTCAG", 34.37); structureB.put("GTCAC", 34.60); structureB.put("GTCTA", 31.64); structureB.put("GTCTT", 32.56); structureB.put("GTCTG", 31.42); structureB.put("GTCTC", 31.76); structureB.put("GTCGA", 33.06); structureB.put("GTCGT", 33.73); structureB.put("GTCGG", 32.81); structureB.put("GTCGC", 32.70); structureB.put("GTCCA", 33.79); structureB.put("GTCCT", 34.49); structureB.put("GTCCG", 33.80); structureB.put("GTCCC", 33.99); structureB.put("GGAAA", 35.97); structureB.put("GGAAT", 35.60); structureB.put("GGAAG", 35.02); structureB.put("GGAAC", 35.48); structureB.put("GGATA", 32.31); structureB.put("GGATT", 33.31); structureB.put("GGATG", 32.03); structureB.put("GGATC", 32.41); structureB.put("GGAGA", 31.48); structureB.put("GGAGT", 31.81); structureB.put("GGAGG", 31.42); structureB.put("GGAGC", 31.38); structureB.put("GGACA", 34.09); structureB.put("GGACT", 34.97); structureB.put("GGACG", 34.01); structureB.put("GGACC", 34.71); structureB.put("GGTAA", 34.64); structureB.put("GGTAT", 34.56); structureB.put("GGTAG", 34.30); structureB.put("GGTAC", 34.23); structureB.put("GGTTA", 35.08); structureB.put("GGTTT", 36.34); structureB.put("GGTTG", 31.89); structureB.put("GGTTC", 35.45); structureB.put("GGTGA", 34.15); structureB.put("GGTGT", 34.83); structureB.put("GGTGG", 34.27); structureB.put("GGTGC", 34.26); structureB.put("GGTCA", 35.47); structureB.put("GGTCT", 36.10); structureB.put("GGTCG", 35.73); structureB.put("GGTCC", 35.80); structureB.put("GGGAA", 36.01); structureB.put("GGGAT", 36.09); structureB.put("GGGAG", 35.58); structureB.put("GGGAC", 35.97); structureB.put("GGGTA", 34.53); structureB.put("GGGTT", 35.80); structureB.put("GGGTG", 34.14); structureB.put("GGGTC", 34.81); structureB.put("GGGGA", 33.65); structureB.put("GGGGT", 34.28); structureB.put("GGGGG", 33.41); structureB.put("GGGGC", 33.68); structureB.put("GGGCA", 36.27); structureB.put("GGGCT", 37.30); structureB.put("GGGCG", 36.18); structureB.put("GGGCC", 36.61); structureB.put("GGCAA", 34.50); structureB.put("GGCAT", 34.66); structureB.put("GGCAG", 33.75); structureB.put("GGCAC", 34.22); structureB.put("GGCTA", 31.35); structureB.put("GGCTT", 32.49); structureB.put("GGCTG", 31.16); structureB.put("GGCTC", 31.39); structureB.put("GGCGA", 32.60); structureB.put("GGCGT", 33.32); structureB.put("GGCGG", 32.31); structureB.put("GGCGC", 32.32); structureB.put("GGCCA", 33.23); structureB.put("GGCCT", 33.71); structureB.put("GGCCG", 33.23); structureB.put("GGCCC", 33.57); structureB.put("GCAAA", 35.29); structureB.put("GCAAT", 35.34); structureB.put("GCAAG", 34.89); structureB.put("GCAAC", 35.02); structureB.put("GCATA", 31.62); structureB.put("GCATT", 32.67); structureB.put("GCATG", 31.54); structureB.put("GCATC", 31.96); structureB.put("GCAGA", 31.17); structureB.put("GCAGT", 31.49); structureB.put("GCAGG", 31.18); structureB.put("GCAGC", 31.29); structureB.put("GCACA", 33.55); structureB.put("GCACT", 34.58); structureB.put("GCACG", 33.78); structureB.put("GCACC", 34.16); structureB.put("GCTAA", 34.68); structureB.put("GCTAT", 34.96); structureB.put("GCTAG", 34.66); structureB.put("GCTAC", 34.48); structureB.put("GCTTA", 34.85); structureB.put("GCTTT", 36.56); structureB.put("GCTTG", 34.57); structureB.put("GCTTC", 34.96); structureB.put("GCTGA", 34.29); structureB.put("GCTGT", 35.03); structureB.put("GCTGG", 34.09); structureB.put("GCTGC", 34.49); structureB.put("GCTCA", 34.81); structureB.put("GCTCT", 35.84); structureB.put("GCTCG", 35.31); structureB.put("GCTCC", 35.75); structureB.put("GCGAA", 35.53); structureB.put("GCGAT", 35.82); structureB.put("GCGAG", 35.13); structureB.put("GCGAC", 35.46); structureB.put("GCGTA", 33.93); structureB.put("GCGTT", 35.06); structureB.put("GCGTG", 33.73); structureB.put("GCGTC", 34.21); structureB.put("GCGGA", 33.51); structureB.put("GCGGT", 34.31); structureB.put("GCGGG", 33.41); structureB.put("GCGGC", 33.44); structureB.put("GCGCA", 35.52); structureB.put("GCGCT", 36.76); structureB.put("GCGCG", 35.70); structureB.put("GCGCC", 36.24); structureB.put("GCCAA", 34.72); structureB.put("GCCAT", 34.93); structureB.put("GCCAG", 34.28); structureB.put("GCCAC", 34.20); structureB.put("GCCTA", 31.51); structureB.put("GCCTT", 32.34); structureB.put("GCCTG", 31.14); structureB.put("GCCTC", 31.38); structureB.put("GCCGA", 32.47); structureB.put("GCCGT", 33.55); structureB.put("GCCGG", 32.61); structureB.put("GCCGC", 32.46); structureB.put("GCCCA", 33.45); structureB.put("GCCCT", 34.00); structureB.put("GCCCG", 33.44); structureB.put("GCCCC", 33.56); structureB.put("CAAAA", 36.92); structureB.put("CAAAT", 37.28); structureB.put("CAAAG", 36.30); structureB.put("CAAAC", 36.33); structureB.put("CAATA", 32.40); structureB.put("CAATT", 33.37); structureB.put("CAATG", 32.41); structureB.put("CAATC", 32.75); structureB.put("CAAGA", 32.47); structureB.put("CAAGT", 33.13); structureB.put("CAAGG", 32.51); structureB.put("CAAGC", 32.11); structureB.put("CAACA", 34.70); structureB.put("CAACT", 36.24); structureB.put("CAACG", 35.10); structureB.put("CAACC", 35.52); structureB.put("CATAA", 34.54); structureB.put("CATAT", 35.37); structureB.put("CATAG", 35.03); structureB.put("CATAC", 34.49); structureB.put("CATTA", 35.43); structureB.put("CATTT", 36.86); structureB.put("CATTG", 35.08); structureB.put("CATTC", 35.63); structureB.put("CATGA", 35.00); structureB.put("CATGT", 35.70); structureB.put("CATGG", 34.66); structureB.put("CATGC", 34.82); structureB.put("CATCA", 35.36); structureB.put("CATCT", 36.48); structureB.put("CATCG", 35.83); structureB.put("CATCC", 36.16); structureB.put("CAGAA", 36.46); structureB.put("CAGAT", 36.37); structureB.put("CAGAG", 35.60); structureB.put("CAGAC", 36.44); structureB.put("CAGTA", 34.47); structureB.put("CAGTT", 35.45); structureB.put("CAGTG", 34.30); structureB.put("CAGTC", 34.65); structureB.put("CAGGA", 34.22); structureB.put("CAGGT", 35.08); structureB.put("CAGGG", 34.07); structureB.put("CAGGC", 33.99); structureB.put("CAGCA", 36.65); structureB.put("CAGCT", 37.48); structureB.put("CAGCG", 36.67); structureB.put("CAGCC", 37.17); structureB.put("CACAA", 35.72); structureB.put("CACAT", 35.86); structureB.put("CACAG", 35.20); structureB.put("CACAC", 35.12); structureB.put("CACTA", 31.70); structureB.put("CACTT", 33.10); structureB.put("CACTG", 31.61); structureB.put("CACTC", 31.79); structureB.put("CACGA", 33.99); structureB.put("CACGT", 34.48); structureB.put("CACGG", 33.70); structureB.put("CACGC", 33.34); structureB.put("CACCA", 34.81); structureB.put("CACCT", 35.25); structureB.put("CACCG", 34.36); structureB.put("CACCC", 34.41); structureB.put("CTAAA", 35.72); structureB.put("CTAAT", 35.33); structureB.put("CTAAG", 35.04); structureB.put("CTAAC", 35.18); structureB.put("CTATA", 31.96); structureB.put("CTATT", 33.54); structureB.put("CTATG", 31.84); structureB.put("CTATC", 32.43); structureB.put("CTAGA", 31.57); structureB.put("CTAGT", 32.22); structureB.put("CTAGG", 31.47); structureB.put("CTAGC", 31.36); structureB.put("CTACA", 33.91); structureB.put("CTACT", 35.18); structureB.put("CTACG", 34.02); structureB.put("CTACC", 34.52); structureB.put("CTTAA", 34.81); structureB.put("CTTAT", 35.15); structureB.put("CTTAG", 34.71); structureB.put("CTTAC", 34.34); structureB.put("CTTTA", 35.70); structureB.put("CTTTT", 37.02); structureB.put("CTTTG", 35.41); structureB.put("CTTTC", 35.91); structureB.put("CTTGA", 34.53); structureB.put("CTTGT", 35.43); structureB.put("CTTGG", 34.61); structureB.put("CTTGC", 34.37); structureB.put("CTTCA", 35.10); structureB.put("CTTCT", 36.79); structureB.put("CTTCG", 35.23); structureB.put("CTTCC", 35.39); structureB.put("CTGAA", 35.08); structureB.put("CTGAT", 35.80); structureB.put("CTGAG", 34.84); structureB.put("CTGAC", 35.20); structureB.put("CTGTA", 33.82); structureB.put("CTGTT", 34.88); structureB.put("CTGTG", 33.74); structureB.put("CTGTC", 34.25); structureB.put("CTGGA", 33.74); structureB.put("CTGGT", 34.39); structureB.put("CTGGG", 33.54); structureB.put("CTGGC", 33.53); structureB.put("CTGCA", 35.64); structureB.put("CTGCT", 36.97); structureB.put("CTGCG", 35.64); structureB.put("CTGCC", 36.22); structureB.put("CTCAA", 34.65); structureB.put("CTCAT", 34.93); structureB.put("CTCAG", 34.47); structureB.put("CTCAC", 34.48); structureB.put("CTCTA", 31.40); structureB.put("CTCTT", 32.31); structureB.put("CTCTG", 31.18); structureB.put("CTCTC", 31.39); structureB.put("CTCGA", 33.01); structureB.put("CTCGT", 33.69); structureB.put("CTCGG", 32.31); structureB.put("CTCGC", 32.59); structureB.put("CTCCA", 33.85); structureB.put("CTCCT", 34.13); structureB.put("CTCCG", 33.51); structureB.put("CTCCC", 33.49); structureB.put("CGAAA", 35.88); structureB.put("CGAAT", 35.86); structureB.put("CGAAG", 35.11); structureB.put("CGAAC", 35.58); structureB.put("CGATA", 31.89); structureB.put("CGATT", 32.89); structureB.put("CGATG", 32.14); structureB.put("CGATC", 32.29); structureB.put("CGAGA", 31.51); structureB.put("CGAGT", 31.96); structureB.put("CGAGG", 31.50); structureB.put("CGAGC", 31.41); structureB.put("CGACA", 34.23); structureB.put("CGACT", 35.27); structureB.put("CGACG", 34.26); structureB.put("CGACC", 34.74); structureB.put("CGTAA", 34.26); structureB.put("CGTAT", 34.59); structureB.put("CGTAG", 34.25); structureB.put("CGTAC", 34.20); structureB.put("CGTTA", 35.27); structureB.put("CGTTT", 36.57); structureB.put("CGTTG", 35.01); structureB.put("CGTTC", 35.71); structureB.put("CGTGA", 34.66); structureB.put("CGTGT", 35.35); structureB.put("CGTGG", 34.18); structureB.put("CGTGC", 34.75); structureB.put("CGTCA", 35.16); structureB.put("CGTCT", 36.41); structureB.put("CGTCG", 35.57); structureB.put("CGTCC", 36.13); structureB.put("CGGAA", 35.82); structureB.put("CGGAT", 36.59); structureB.put("CGGAG", 35.79); structureB.put("CGGAC", 36.17); structureB.put("CGGTA", 34.43); structureB.put("CGGTT", 35.23); structureB.put("CGGTG", 34.05); structureB.put("CGGTC", 34.65); structureB.put("CGGGA", 34.12); structureB.put("CGGGT", 34.56); structureB.put("CGGGG", 33.62); structureB.put("CGGGC", 33.78); structureB.put("CGGCA", 36.20); structureB.put("CGGCT", 37.23); structureB.put("CGGCG", 36.24); structureB.put("CGGCC", 36.85); structureB.put("CGCAA", 34.85); structureB.put("CGCAT", 35.00); structureB.put("CGCAG", 34.24); structureB.put("CGCAC", 34.69); structureB.put("CGCTA", 31.38); structureB.put("CGCTT", 32.27); structureB.put("CGCTG", 31.20); structureB.put("CGCTC", 31.47); structureB.put("CGCGA", 32.65); structureB.put("CGCGT", 33.20); structureB.put("CGCGG", 32.35); structureB.put("CGCGC", 32.44); structureB.put("CGCCA", 33.36); structureB.put("CGCCT", 34.34); structureB.put("CGCCG", 33.59); structureB.put("CGCCC", 33.85); structureB.put("CCAAA", 35.20); structureB.put("CCAAT", 34.93); structureB.put("CCAAG", 34.56); structureB.put("CCAAC", 31.76); structureB.put("CCATA", 31.26); structureB.put("CCATT", 32.12); structureB.put("CCATG", 31.61); structureB.put("CCATC", 31.66); structureB.put("CCAGA", 31.02); structureB.put("CCAGT", 31.51); structureB.put("CCAGG", 31.17); structureB.put("CCAGC", 30.94); structureB.put("CCACA", 33.07); structureB.put("CCACT", 34.38); structureB.put("CCACG", 33.53); structureB.put("CCACC", 33.92); structureB.put("CCTAA", 34.35); structureB.put("CCTAT", 34.50); structureB.put("CCTAG", 34.19); structureB.put("CCTAC", 34.06); structureB.put("CCTTA", 34.66); structureB.put("CCTTT", 35.88); structureB.put("CCTTG", 34.98); structureB.put("CCTTC", 34.75); structureB.put("CCTGA", 34.07); structureB.put("CCTGT", 34.61); structureB.put("CCTGG", 34.05); structureB.put("CCTGC", 33.94); structureB.put("CCTCA", 34.61); structureB.put("CCTCT", 35.39); structureB.put("CCTCG", 34.97); structureB.put("CCTCC", 35.57); structureB.put("CCGAA", 35.61); structureB.put("CCGAT", 35.60); structureB.put("CCGAG", 34.73); structureB.put("CCGAC", 35.42); structureB.put("CCGTA", 33.73); structureB.put("CCGTT", 35.14); structureB.put("CCGTG", 33.81); structureB.put("CCGTC", 34.10); structureB.put("CCGGA", 33.60); structureB.put("CCGGT", 34.12); structureB.put("CCGGG", 33.24); structureB.put("CCGGC", 33.41); structureB.put("CCGCA", 35.63); structureB.put("CCGCT", 36.72); structureB.put("CCGCG", 35.54); structureB.put("CCGCC", 36.31); structureB.put("CCCAA", 34.28); structureB.put("CCCAT", 34.56); structureB.put("CCCAG", 33.88); structureB.put("CCCAC", 34.09); structureB.put("CCCTA", 31.16); structureB.put("CCCTT", 31.94); structureB.put("CCCTG", 31.11); structureB.put("CCCTC", 31.33); structureB.put("CCCGA", 32.86); structureB.put("CCCGT", 33.23); structureB.put("CCCGG", 32.53); structureB.put("CCCGC", 32.30); structureB.put("CCCCA", 33.26); structureB.put("CCCCT", 33.78); structureB.put("CCCCG", 33.22); structureB.put("CCCCC", 33.25); } }