public static String changeCodonRandomly(String inCodon) throws Exception
	{
		if ( inCodon.length() != 3)
			throw new Exception("Invalid codon");
		
		int randomPos = random.nextInt(3);
		
		if ( randomPos < 0 || randomPos > 2)
			throw new Exception("Logic error");
			
		StringBuffer buff = new StringBuffer();
		
		for ( int x=0; x <= 2; x++ )
		{
			if ( x == randomPos)
			{
				char c = getRandomNucleotide();
				
				while ( c == inCodon.charAt(x))
					c = getRandomNucleotide();
					
				buff.append(c);
			}
			else
			{
				buff.append(inCodon.charAt(x));
			}
		}	
		
		return buff.toString();
	}