e.printStackTrace();
	public static void main(String[] args) {				String atrFileName = null;		String gtrFileName = null;		      if(args.length==0) {         JOptionPane.showMessageDialog(null, "No input files specified.");           System.exit(0);      }      if(args.length==1) {         JOptionPane.showMessageDialog(null, "Must specify a cdt file and either a gtr or atr file or both a gtr and atr file.");           System.exit(0);      }      String cdtFileName = args[0];		if(args.length==2) {			String s = args[1];				if(s.toLowerCase().endsWith(".atr")) {				atrFileName = s;			} else {				gtrFileName = s;			}		} else if(args.length==3) {			String s = args[1];				if(s.toLowerCase().endsWith(".atr")) {				atrFileName = s;				gtrFileName = args[2];			} else {				gtrFileName = s;				atrFileName = args[2];			}		}						CdtParser cdtParser = new CdtParser();		try {			cdtParser.parse(cdtFileName, atrFileName, gtrFileName);		} catch(Exception e) {			JOptionPane.showMessageDialog(null, "Parsing of cdt file failed.");			System.exit(0);		}		Dendrogram geneTree = null;		if(cdtParser.geneTreeRoot != null) {			try {				geneTree = new Dendrogram(cdtParser.geneTreeRoot, SwingConstants.HORIZONTAL);				geneTree.setLeafNodeSpacing(0, 4);			} catch(Exception e) {				JOptionPane.showMessageDialog(null, "Parsing of gtr file failed.");				System.exit(0);			}		}				Dendrogram sampleTree = null;		if(cdtParser.arrayTreeRoot != null) {			try {				sampleTree = new Dendrogram(cdtParser.arrayTreeRoot, SwingConstants.VERTICAL);				sampleTree.setLeafNodeSpacing(0, 4);			} catch(Exception e) {				JOptionPane.showMessageDialog(null, "Parsing of atr file failed.");				System.exit(0);			}		}		HCL p = new HCL(cdtParser.matrix, cdtParser.minValue, cdtParser.maxValue, sampleTree, geneTree);		HCLFrame f = new HCLFrame(p);	}