refactored string tokens model