code is a bit cleaner + comments