use utility as much as possible