<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def use(self, kind, name):
 """ Mark a node name as used. """

        try:
            params = self._parse(name)
            index = int(params['index'], 10)
            if index in self._free[kind]:
                self._free[kind].remove(index)
            top = self._top[kind]
            if index > top:
                self._free[kind].update(range(top + 1, index))
                self._top[kind] = index
        except ValueError:
            log.warning(
                "Cannot extract numerical index"
                " from node name `%s`!", name)