if (!translateLeftFactoredDecision(block, rules[0], false, DecisionFactorMode.COMBINED_FACTOR, true)) {
BlockAST unfactoredBlock = null; if (translateLeftFactoredDecision(block, factoredElement, true, DecisionFactorMode.FULL_FACTOR, false)) { if (!translateLeftFactoredDecision(block, factoredElement, true, DecisionFactorMode.PARTIAL_FACTORED, false)) { if (!translateLeftFactoredDecision(unfactoredBlock, factoredElement, true, DecisionFactorMode.PARTIAL_UNFACTORED, false)) { throw new IllegalStateException("expected unfactored alts for partial factorization");
if (!translateLeftFactoredDecision(cloned, factoredRule, variant, mode, includeFactoredElement)) { return null;