def checkCalcsTreeWalk(self, parentChildRels, concept, isStatementSheet, inNestedTotal, conceptsUsed, visited):
        if concept not in visited:
            visited.add(concept)
            siblingRels = parentChildRels.fromModelObject(concept)
            foundTotalAtThisLevel = False
            for iSibling, rel in enumerate(siblingRels):
                reasonPresumedTotal = self.presumptionOfTotal(rel, siblingRels, iSibling, isStatementSheet, False, inNestedTotal)
                if reasonPresumedTotal:
                    foundTotalAtThisLevel = True
                    self.checkForCalculations(parentChildRels, siblingRels, iSibling, rel.toModelObject, rel, reasonPresumedTotal, isStatementSheet, conceptsUsed, False, set())
            if foundTotalAtThisLevel: # try nested tree walk to look for lower totals
                inNestedTotal = True
            for rel in siblingRels:
                self.checkCalcsTreeWalk(parentChildRels, rel.toModelObject, isStatementSheet, inNestedTotal, conceptsUsed, visited)
            visited.remove(concept)
-  EFM-strict validation 6.15.2/3: finding presumed totals in presentation and inspecting for 
dataset/ETHPy150Open Arelle/Arelle/arelle/ValidateFiling.py/ValidateFiling.checkCalcsTreeWalk