refactor code by module Tokenable