def METHOD_NAME(self, proxyIndex: QModelIndex) -> QModelIndex:
    if not proxyIndex.isValid():
        return QModelIndex()
    source_model = self.sourceModel()
    iter_index = source_model.index(self._iter, 0, QModelIndex())
    if not iter_index.isValid() or not source_model.hasChildren(iter_index):
        return QModelIndex()
    real_index = source_model.index(self._real, 0, iter_index)
    if not real_index.isValid() or not source_model.hasChildren(real_index):
        return QModelIndex()
    step_index = source_model.index(self._step, 0, real_index)
    if not step_index.isValid() or not source_model.hasChildren(step_index):
        return QModelIndex()
    job_index = source_model.index(
        proxyIndex.row(), proxyIndex.column(), step_index
    )
    return job_index