// Path: src/main/java/exceptions/InvalidCommandLineException.java
// public class InvalidCommandLineException extends Exception {
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = 1L;
// 
// }
// 
// Path: src/main/java/exceptions/InvalidGenomicCoordsException.java
// public class InvalidGenomicCoordsException extends Exception {
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = 1L;
// 
// }


import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import exceptions.InvalidCommandLineException;
import exceptions.InvalidGenomicCoordsException;
import htsjdk.samtools.SAMSequenceDictionary;
import htsjdk.samtools.SAMSequenceRecord;
				GenomicCoords gc= new GenomicCoords(reg, terminalWindowSize, checkGc.getSamSeqDict(), checkGc.getFastaFile(), false);
				this.add(gc);
			} catch (Exception e){
				//
			}
		}
	}

	/** Prepare a list of strings of positions ready to be written to 
	 * the ~/.asciigenome_history file.
	 * @throws IOException 
	 * */
	public List<String> prepareHistoryForHistoryFile(String historyFile, int maxPos) throws IOException {

		if(maxPos < 0){
			maxPos= 0;
		}

		List<String> positions= new ASCIIGenomeHistory(historyFile).getPositions(); 
		
		// Now add the positions visited in this session
		// We need to find the positions that were not inherited from
		// ASCIIGenomeHistory.
		List<String> newPositions= new ArrayList<String>();
		for(GenomicCoords gc : this.currentSessionHistory){
			newPositions.add(gc.toStringRegion());
		}
		
		for(String x : positions){
			// Remove from newPositions the positions taken from dot file
// Path: src/main/java/exceptions/InvalidCommandLineException.java
// public class InvalidCommandLineException extends Exception {
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = 1L;
// 
// }
// 
// Path: src/main/java/exceptions/InvalidGenomicCoordsException.java
// public class InvalidGenomicCoordsException extends Exception {
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = 1L;
// 
// }


// Path: src/main/java/samTextViewer/GenomicCoordsHistory.java
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import exceptions.InvalidCommandLineException;
import exceptions.InvalidGenomicCoordsException;
import htsjdk.samtools.SAMSequenceDictionary;
import htsjdk.samtools.SAMSequenceRecord;

				GenomicCoords gc= new GenomicCoords(reg, terminalWindowSize, checkGc.getSamSeqDict(), checkGc.getFastaFile(), false);
				this.add(gc);
			} catch (Exception e){
				//
			}
		}
	}

	/** Prepare a list of strings of positions ready to be written to 
	 * the ~/.asciigenome_history file.
	 * @throws IOException 
	 * */
	public List<String> prepareHistoryForHistoryFile(String historyFile, int maxPos) throws IOException {

		if(maxPos < 0){
			maxPos= 0;
		}

		List<String> positions= new ASCIIGenomeHistory(historyFile).getPositions(); 
		
		// Now add the positions visited in this session
		// We need to find the positions that were not inherited from
		// ASCIIGenomeHistory.
		List<String> newPositions= new ArrayList<String>();
		for(GenomicCoords gc : this.currentSessionHistory){
			newPositions.add(gc.toStringRegion());
		}
		
		for(String x : positions){
			// Remove from newPositions the positions taken from dot file
			if(newPositions.size() > 0 && newPositions.get(0).equals(x)){