@Override public boolean add(ITEM e) { if ( ! permitAddAfterFreeze) throwIfFrozen(); return super.add(e); }
@Override public boolean remove(Object o) { throwIfFrozen(); return super.remove(o); }
@Override public void add(int index, ITEM e) { throwIfFrozen(); super.add(index, e); }
@Override public boolean removeAll(Collection<?> c) { throwIfFrozen(); return super.removeAll(c); }
@Override public boolean addAll(int index, Collection<? extends ITEM> a) { throwIfFrozen(); return super.addAll(index, a); }
@Override public ITEM set(int index, ITEM e) { throwIfFrozen(); return super.set(index, e); }
@Override public ITEM remove(int index) { throwIfFrozen(); return super.remove(index); }
@Override public void clear() { throwIfFrozen(); super.clear(); }
@Override public boolean addAll(Collection<? extends ITEM> a) { if ( ! permitAddAfterFreeze) throwIfFrozen(); return super.addAll(a); }
@Override protected void removeRange(int fromIndex, int toIndex) { throwIfFrozen(); super.removeRange(fromIndex, toIndex); }
@Override public boolean retainAll(Collection<?> c) { throwIfFrozen(); return super.retainAll(c); }