complete final exercise