worked on cs758 asst-9, basically finished it, but still working on optimization