Updated to fix an error. Codes fully functional.