lisätty paljon tilastointia, hieman viilailuja