pretty much done with homework 3