refactor targeting method