private void adjustBlockListeners(List<OBlock> oldRange,List<OBlock> newRange,Tracker tracker){
  Iterator<OBlock> iter=newRange.iterator();
  while (iter.hasNext()) {
    OBlock b=iter.next();
    if (oldRange.contains(b)) {
      oldRange.remove(b);
      continue;
    }
    addBlockListener(b,tracker);
  }
  iter=oldRange.iterator();
  while (iter.hasNext()) {
    removeBlockListener(iter.next(),tracker);
  }
}

private void adjustBlockListeners ( List < OBlock > oldRange , List < OBlock > newRange , Tracker tracker ) { Iterator < OBlock > iter = newRange . iterator ( ) ; while ( iter . hasNext ( ) ) { OBlock b = iter . next ( ) ; if ( oldRange . contains ( b ) ) { oldRange . remove ( b ) ; continue ; } addBlockListener ( b , tracker ) ; } iter = oldRange . iterator ( ) ; while ( iter . hasNext ( ) ) { removeBlockListener ( iter . next ( ) , tracker ) ; } }
do venn diagram between the two sets . keep listeners held in common . add new listeners . remove old .
