public Object next() throws NoSuchElementException {
        	if (this.seuraava == null)
        		throw new NoSuchElementException();
        	
        	// Palautetaan seuraava elementti
        	Elementti palautettava = seuraava;
        	boolean seuraavaLoytynyt = false;
        	
        	// Sitten etsitn onko sit seuraavaa elementti olemassa
        	if (seuraava.annaSeuraava() != null) {
        		seuraava = seuraava.annaSeuraava();
        	} else {
        		seuraava = null;
        		while (taulukonPositio < listat.length -1 && !seuraavaLoytynyt) {
        			taulukonPositio++;
        			if (listat[taulukonPositio].annaAlku() == null) {
            			continue;
        			} else {
        				seuraava = listat[taulukonPositio].annaAlku();
        				seuraavaLoytynyt = true;
        			}
        			if (taulukonPositio >= listat.length) {
        				seuraavaLoytynyt = true;
        			}
        		}
        	}        	
            return palautettava.annaAvain();
        }