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);
}
}