Made some additions
rename named some aspects and used linq