touch up
added some more commends into the code to help understand what's going on