vähän vielä javadocceja ja muutama kommentti selventämään toimintaa