def METHOD_NAME(self, hintmodes, does_hint, hintcls, get_check, hintpack):
    for hintname, raw_check in hintpack.items():
        check = get_check(raw_check)
        item = self.logic.placement.locations[check]
        if does_hint:
            self.hinted_checks.append(check)
        status: Enum
        if item in self.logic.get_sots_items():
            status = STATUS.required
        elif item in self.logic.get_useful_items():
            status = STATUS.useful
        else:
            status = STATUS.useless
        self.hints[hintname] = hintcls(hintmodes[status], hintname, item)