protected void performChoice(int choice) {
		if (choice == 1) {
			decoding = new ViterbiDecoding(hmm);
		}
		else if (choice == 2) {
			decoding = new PosteriorDecoding(hmm);
		}
		else if (choice == 3) {
			if (decoding != null){
				DecodingReporter reporter = null;
				try {
					reporter = new DecodingReporter("");
				} catch (Exception e) {

				}
				reporter.displayReport("", decoding);
			}
		}
		else if (choice == 4) {
			if (decoding != null) {
				boolean done = false; 
				DecodingReporter reporter = null;
				while (!done) {
					String filename = getLine("Enter a file path");
					try {
						reporter = new DecodingReporter(filename);
						done = true;
					} catch (Exception e) {
						System.out.println("Unable to open file.");
					} finally {
						reporter.close();
					}
				}
				String reportName = getLine("Enter a report title");
				reporter.generateDecodingReport(reportName, decoding);
				reporter.close();
			}
		}
	}