Carnegie Mellon University :: 15-112 Term Project