Broke it trying to refactor... working through the kinks