@Override public boolean remove(Object object) {synchronized (CopyOnWriteArrayList.this) {int index = indexOf(object);if (index == -1) {return false;}remove(index);return true;}}
public virtual bool remove(object o){lock (this){int index = indexOf(o);if (index == -1){return false;}remove(index);return true;}}