public JPanel generateInfo() {
		statistics.setBackground(Color.white);

		boolean compressStats = true;

		JLabel mafLabel = new JLabel();
		JLabel gpcLabel = new JLabel();
		JLabel hwpLabel = new JLabel();

		double maf = data.getMaf();
		double mafAvg = totalMaf / totalSamples;
		
		
		double mafScore = (maf - mafAvg) * Math.sqrt(2 * data.getSampleNum()) / Math.sqrt(mafAvg * (1 - mafAvg));
		
		if (longStats) {
			if (mafScore > 3) {
				mafLabel.setText("<html><b><u>MAF: " + nf.format(data.getMaf())
						+ "</u></b></html>");
			} else {
				mafLabel.setText("MAF: " + nf.format(data.getMaf()));
			}

			if (1 - data.getGenopc() > 0.02) {
				gpcLabel.setText("<html><b><u>GPC: " + nf.format(data.getGenopc())
						+ "</u></b></html>");
			} else {
				gpcLabel.setText("GPC: " + nf.format(data.getGenopc()));
			}
			if (data.getHwpval() < 10e-5) {
				hwpLabel.setText("<html><b><u>HWE pval: "
						+ formatPValue(data.getHwpval()) + "</u></b></html>");
			} else {
				hwpLabel.setText("HWE pval: " + formatPValue(data.getHwpval()));
			}
		} else {
			if (mafScore > 3) {
				mafLabel.setText("<html><b><u>" + nf.format(data.getMaf())
						+ "</u></b>/</html>");
			} else {
				mafLabel.setText(nf.format(data.getMaf()) + "/");
			}
			if (1 - data.getGenopc() > 0.02) {
				gpcLabel.setText("<html><b><u>" + nf.format(data.getGenopc())
						+ "</u></b>/</html>");
			} else {
				gpcLabel.setText(nf.format(data.getGenopc()) + "/");
			}
			if (data.getHwpval() < 10e-5) {
				hwpLabel.setText("<html><b><u>" + formatPValue(data.getHwpval())
						+ "</u></b></html>");
			} else {
				hwpLabel.setText(formatPValue(data.getHwpval()));
			}
		}

		statistics.add(mafLabel);
		statistics.add(gpcLabel);
		statistics.add(hwpLabel);

		return statistics;
	}