Would be nice to avoid duplicating all these tokens for each mode. Maybe make them internal in one of them and get them there from the other.