Final project for Prof. Okada's CSC 821/621 group A2