lab3 complete attempt