added checksum calculation (user story 2)