Muutamia toiminnallisuuksia muutettu, kaipaa refractorointia