impl is complete, compiles, and runs. still checking outputs