incomplete version of lab3