private void addNonChordTones(int voiceIndx) {
		// Get the current note, the previous note, and the interval between them.
		Note currNote = chordTones[voiceIndx];
		Note prevNote = prevBeat.getChordTones()[voiceIndx];
		int interval = Math.abs(currNote.getInterval(prevNote));
		
		// If you can add a passing tone, add it.
		if (interval == 3 || interval == 4) {
			try {
				generatePassingTone(voiceIndx);
			} catch (IllegalArgumentException ex) {
				// whoops
			}
		}
		
		// If the voice didn't leap into the previous note, but did into this
		// one, and if there isn't already a non-chord tone, add an
		// appogiatura
		boolean prevNoteLeaped = prevBeat.getLeaps()[voiceIndx];
		if (!containsNonChordTone && !prevNoteLeaped && leaped[voiceIndx]) {
			// There's only a 60% chance of this happening
			float insertNonChordTone = randomizer.nextFloat();
			if (insertNonChordTone < 0.6 - .1 * voiceIndx) {
				return;
			}
			
			generateNeighborTone(voiceIndx);
		}
	}