private static @Nullable Exact tryEvaluate(DfaValue dfaLeft, RelationType relationType, DfaValue dfaRight) {
      DfaValue sentinel = dfaLeft.getFactory().getSentinel();
      if ((dfaLeft == sentinel) || (dfaRight == sentinel)) {
        return fromBoolean((dfaLeft == sentinel && dfaRight == sentinel) == (relationType == RelationType.EQ));
      }
      if (dfaLeft == dfaRight && dfaLeft instanceof DfaBinOpValue) {
        return fromBoolean(relationType.isSubRelation(RelationType.EQ));
      }
      DfType leftType = dfaLeft.getDfType();
      DfType rightType = dfaRight.getDfType();

      return DfaCondition.tryEvaluate(leftType, relationType, rightType);
    }
private static @Nullable Exact tryEvaluate(DfaValue dfaLeft, RelationType relationType, DfaValue dfaRight)