public static Consensus getConsensus (Alignment layoutMap) {
		int numOfCols = getNumberOfColumns(layoutMap);
		Consensus consensus = new Consensus(layoutMap.getLayoutID());
		double f1score = 0.0;
		double f2score = 0.0;
		for (int col = 0; col < numOfCols; col++) {	
			char[] column = getColumn(layoutMap,col);
			Metasymbol consensusSymbol;
			if (layoutMap.hasQualities) {
				char[] qualityColumn = getQualityColumn(layoutMap, col);
				consensusSymbol = getConsensusMetasymbolWithQuality(column, qualityColumn);
			} else {
				consensusSymbol = getConsensusMetasymbol(column);
			}
			consensus.getSymbols().add(consensusSymbol);
			f1score += getColumnScore(column, consensusSymbol);
			if (column.length > 0) {
				f2score += getColumnScore(column, consensusSymbol) / column.length;
			}
		}
		consensus.setConsensusScore(0.5 * f1score + 0.5 * f2score);
		return consensus;
	}