added all work I've done so far, bad organziation.