improving arrayList