Finished. I'm about to make it pass compilation.