refactor rule
add token-directive