ALG 1521 CodeReview