Final Project for IDIA 618