private void step6_7(Beat beat) {
		System.out.println("6-7: Find chord");
		
		//List<ChordMark> chords = Chord.getChords(beat);	
		//boolean foundChord = chords.size() > 0;
		ChordMark chordMark = Chord.getChord(beat.getToneMap(), beat);
		boolean foundChord = chordMark != null;
		
		// ak je to zakladny akord tj. +, - tak potom nechaj tak, inak skus co by sa naslo ak by sme rozdrobili dobu na dve mensie
		if(foundChord && !chordMark.getChord().equals(Chord.MAJOR_TRIAD) && !chordMark.getChord().equals(Chord.MINOR_TRIAD)) {
			System.out.println("\tChord is not + or -, it is " + chordMark + "  trying to divide the beat");
			// skus co by bolo na polovicnej dobe
			long beat1StartTick = beat.startTick;
			long beat1EndTick =  beat.startTick + ((beat.endTick - beat.startTick) / 2);
			long beat2StartTick = beat1EndTick + 1;
			long beat2EndTick = beat.endTick;
			
			Beat beat1 = new Beat(beat.measure, beat1StartTick, beat1EndTick, beat.orderInMeasure, beat.orderInSong);
			Beat beat2 = new Beat(beat.measure, beat2StartTick, beat2EndTick, beat.orderInMeasure + 1, beat.orderInSong + 1);
			
			// doba 1.1
			List<RawNote> notesToAdd = new LinkedList<RawNote>();
			for(RawNote n: beat.notes) {
				if(n.startTick >= beat1.startTick && n.startTick <= beat1.endTick) {
					long newNoteStartTick = n.startTick;
					long newNoteEndTick = Math.min(n.endTick, beat1.endTick);
					RawNote newNote = new RawNote(newNoteStartTick, newNoteEndTick, n.midiNum, n.track, RawNote.resolution);
					
					notesToAdd.add(newNote);
				}
			}
			beat1.notes = new LinkedList<RawNote>(notesToAdd);
			
			// doba 1.2
			notesToAdd.clear();
			for(RawNote n: beat.notes) {
				if(n.endTick >= beat2.startTick) {
					long newNoteStartTick = Math.max(beat2.startTick, n.startTick);
					long newNoteEndTick = n.endTick;
					RawNote newNote = new RawNote(newNoteStartTick, newNoteEndTick, n.midiNum, n.track, RawNote.resolution);
					
					notesToAdd.add(newNote);
					
				}
			}
			beat2.notes = new LinkedList<RawNote>(notesToAdd);
			
			ChordMark subChord1 = Chord.getChord(beat1.getToneMap(), beat1);
			System.out.println("Subbeat1: \n" + beat1);
			System.out.println("\n\t\tAvailable chords: " + Chord.getChordsInfo(beat1));
			System.out.println("\t\tChord selected: " + subChord1);
			
			ChordMark subChord2 = Chord.getChord(beat2.getToneMap(), beat2);
			System.out.println("Subbeat2: \n" + beat2);
			System.out.println("\n\t\tAvailable chords: " + Chord.getChordsInfo(beat2));
			System.out.println("\t\tChord selected: " + subChord2);
			
			
			System.out.println("\t\tSubChord1: " + subChord1 + ", SubChord2: " + subChord2 + "\n\t\tmeasure: " + (beat.measure + 1) + ", beat: " + (beat.orderInMeasure + 1));
			
			
		}
		
			
		if(!foundChord) {
			System.out.println("\tNot found going to step 10");
			step10(beat);
		} else {
			System.out.println("\tFound chord " + chordMark);
			
			System.out.println("\tAvailable chords: " + Chord.getChordsInfo(beat));
			
			System.out.print("\tGoing to step 2\n");
			
			// nastav znacku pre dobu
			beat.setChordMark(chordMark);
			
			step2();
		}
	}