Finished Program, working prototype