Reorganising internal modules so Token and Exp no longer need to be parameterised