}
String chr = genome == null ? tokens[5] : genome.getChromosomeAlias(tokens[5]);
int start = Integer.parseInt(tokens[6]);
int end = Integer.parseInt(tokens[7]);
BasicFeature feature = new BasicFeature(chr, start, end);
String strandString = tokens[3].trim();
char strand = (strandString.length() == 0) ? ' ' : strandString.charAt(0);
if (strand == '-') {
feature.setStrand(Strand.NEGATIVE);
} else if (strand == '+') {
feature.setStrand(Strand.POSITIVE);
} else {
feature.setStrand(Strand.NONE);
}
String name = tokens[10];
feature.setName(name);
feature.setIdentifier(name);
MultiMap<String, String> attributes = new MultiMap<String, String>();
attributes.put("Smith Waterman score", tokens[1]);
attributes.put("base mismatches per thousand", tokens[2]);
attributes.put("bases deleted per thousand", tokens[3]);
attributes.put("bases inserted per thousand", tokens[4]);
attributes.put("repeat class", tokens[11]);
attributes.put("repeat family", tokens[12]);
attributes.put("repeat start", tokens[13]);
attributes.put("repeat end", tokens[14]);
feature.setAttributes(attributes);
return feature;
}