Added lots o comments