I'd wanted to make an RecyclerView which will display the response from api call. Everything is setup by MVVM, and Retrofit. My Main struggle is about adapter class, it's basicly displaying same values in every text view. The response is correct for sure (I've checked it by logger) another thing I saw is the copying all response over and over (in console) how I may solve it to have properly displayed response?

**MainActivity**

```
@Override
        public void onChanged(Map<String, Double> stringDoubleMap) {

    private HashMap<String, Double> rates = new HashMap<>();

            if (rates.size() > 0){
                rates.clear();
            }
            if (!stringDoubleMap.isEmpty()){
                rates.putAll(stringDoubleMap);
                CurrencyAdapter adapter = new CurrencyAdapter(rates);
                recyclerView.setAdapter(adapter);
            }
        }

```

**Adapter**

```
HashMap<String, Double> asd = new HashMap();

public CurrencyAdapter(HashMap<String, Double> rates){
    this.asd = rates;
    Log.i(TAG, "CurrencyAdapter: constructor "+asd.size());
}

@NonNull
@Override
public CurrencyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.currency_item, parent, false);
    return new CurrencyViewHolder(view);
}

@Override
public void onBindViewHolder(@NonNull CurrencyViewHolder holder, int position) {

    for (Map.Entry<String, Double> entry : asd.entrySet()){
        System.out.println(entry.getKey());
        holder.mNationality.setText(entry.getKey());
        holder.mValue.setText(String.valueOf(entry.getValue()));

    }
    Log.i(TAG, "onBindViewHolder: "+asd.size());
}

```