Final version for Sprint 2 revision.