Finished Everything including bonus code.