refactor to user commons chain