final--matt (not finished)

theres so many variables >_<