put vocab logic all in one place