static List<UExpression> findIndirectUsages(UExpression expression, boolean allowStringModifications) {
    UExpression passThrough = StringFlowUtil.goUp(expression, allowStringModifications, NlsInfo.factory());
    ULocalVariable uVar = getVariableToSearch(passThrough);
    if (uVar != null && NlsInfo.fromUVariable(uVar).getNlsStatus() == ThreeState.UNSURE) {
      List<UExpression> usages = findUsages(passThrough, uVar);
      if (usages != null) return usages;
    }
    return Collections.singletonList(passThrough);
  }
static List<UExpression> findIndirectUsages(UExpression expression, boolean allowStringModifications)