import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main(String[] args)
{
Map<String, List<String>> masterList = new HashMap<String, List<String>>();
List<String> finalPNList = new ArrayList<String>();
List<String> modifier = new ArrayList<String>();
List<String> skipped = new ArrayList<String>();
masterList.put("A", Arrays.asList("123","123","456"));
masterList.put("B", Arrays.asList("123","789","789"));
for (Map.Entry<String, List<String>> e : masterList.entrySet()) {
String key = e.getKey();
List<String> val = e.getValue();
System.out.println(modifier.size());
for (String s : val) {
if (modifier.isEmpty())
finalPNList.add(s);
else if (!modifier.isEmpty() && masterList.get("A").contains(s)) {
// s has been added by parent process so SKIP!
skipped.add(s);
} else
finalPNList.add(s);
}
modifier.add(key);
}
System.out.println(finalPNList);
}
}