This code could cause an overflow in the targets List
1481 for (int k=0; k<sources.size(); k++) {
1482 sourceIds.put(sources.get(k).getIndex(),"");
1483 }
1484 for (int k=0; k<sources.size(); k++) {
1485 targetIds.put(targets.get(k).getIndex(),"");
1486 }
must be
1481 for (int k=0; k<sources.size(); k++) {
1482 sourceIds.put(sources.get(k).getIndex(),"");
1483 }
1484 for (int k=0; k<targets.size(); k++) {
1485 targetIds.put(targets.get(k).getIndex(),"");
1486 }
Thank you