refactor name rule