Program: 133282
Project: 133282
Buggy source:
private void getRates(String name,String params){
  for (int i=0; i < extensions.size(); i++) {
    IExtension extension=extensions.get(i);
    final IRateSource rs=extension.createRateSource(name + "String_Node_Str" + params);
    if (rs != null) {
      final String preferredFiatCurrency=rs.getPreferredFiatCurrency();
      final Set<String> fiatCurrencies=rs.getFiatCurrencies();
      final Set<String> cryptoCurrencies=rs.getCryptoCurrencies();
      System.out.println("String_Node_Str" + preferredFiatCurrency);
      System.out.println("String_Node_Str");
      for (      String fiatCurrency : fiatCurrencies) {
        System.out.println("String_Node_Str" + fiatCurrency);
      }
      System.out.println("String_Node_Str");
      String selectedCryptoCurrency=null;
      for (      String cryptoCurrency : cryptoCurrencies) {
        if (selectedCryptoCurrency == null) {
          selectedCryptoCurrency=cryptoCurrency;
        }
        System.out.println("String_Node_Str" + cryptoCurrency);
      }
      final BigDecimal exchangeRateLast=rs.getExchangeRateLast(selectedCryptoCurrency,preferredFiatCurrency);
      if (exchangeRateLast != null) {
        System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ exchangeRateLast.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ preferredFiatCurrency);
      }
 else {
        System.err.println("String_Node_Str");
      }
      if (rs instanceof IRateSourceAdvanced) {
        IRateSourceAdvanced rsa=(IRateSourceAdvanced)rs;
        for (        String fiatCurrency : fiatCurrencies) {
          System.out.println("String_Node_Str" + fiatCurrency);
          final BigDecimal buyPrice=rsa.getExchangeRateForBuy(selectedCryptoCurrency,fiatCurrency);
          if (buyPrice != null) {
            System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ buyPrice.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ fiatCurrency);
          }
 else {
            System.err.println("String_Node_Str");
          }
          final BigDecimal sellPrice=rsa.getExchangeRateForSell(selectedCryptoCurrency,fiatCurrency);
          if (sellPrice != null) {
            System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ sellPrice.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ fiatCurrency);
          }
 else {
            System.err.println("String_Node_Str");
          }
        }
      }
      return;
    }
  }
  System.err.println("String_Node_Str");
}

Fixed version (ground truth):
private void getRates(String name,String params){
  for (int i=0; i < extensions.size(); i++) {
    IExtension extension=extensions.get(i);
    final IRateSource rs=extension.createRateSource(name + "String_Node_Str" + params);
    if (rs != null) {
      final String preferredFiatCurrency=rs.getPreferredFiatCurrency();
      final Set<String> fiatCurrencies=rs.getFiatCurrencies();
      final Set<String> cryptoCurrencies=rs.getCryptoCurrencies();
      System.out.println("String_Node_Str" + preferredFiatCurrency);
      System.out.println("String_Node_Str");
      for (      String fiatCurrency : fiatCurrencies) {
        System.out.println("String_Node_Str" + fiatCurrency);
      }
      System.out.println("String_Node_Str");
      String selectedCryptoCurrency=params;
      for (      String cryptoCurrency : cryptoCurrencies) {
        if (selectedCryptoCurrency == null) {
          selectedCryptoCurrency=cryptoCurrency;
        }
        System.out.println("String_Node_Str" + cryptoCurrency);
      }
      final BigDecimal exchangeRateLast=rs.getExchangeRateLast(selectedCryptoCurrency,preferredFiatCurrency);
      if (exchangeRateLast != null) {
        System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ exchangeRateLast.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ preferredFiatCurrency);
      }
 else {
        System.err.println("String_Node_Str");
      }
      if (rs instanceof IRateSourceAdvanced) {
        IRateSourceAdvanced rsa=(IRateSourceAdvanced)rs;
        for (        String fiatCurrency : fiatCurrencies) {
          System.out.println("String_Node_Str" + fiatCurrency);
          final BigDecimal buyPrice=rsa.getExchangeRateForBuy(selectedCryptoCurrency,fiatCurrency);
          if (buyPrice != null) {
            System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ buyPrice.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ fiatCurrency);
          }
 else {
            System.err.println("String_Node_Str");
          }
          final BigDecimal sellPrice=rsa.getExchangeRateForSell(selectedCryptoCurrency,fiatCurrency);
          if (sellPrice != null) {
            System.out.println("String_Node_Str" + selectedCryptoCurrency + "String_Node_Str"+ sellPrice.stripTrailingZeros().toPlainString()+ "String_Node_Str"+ fiatCurrency);
          }
 else {
            System.err.println("String_Node_Str");
          }
        }
      }
      return;
    }
  }
  System.err.println("String_Node_Str");
}