@Override
	public boolean remove(Object o) 
	{
		if (o != null) {
			int i = index(o.hashCode());
			synchronized (table[i]) {
				Node<E> p = table[i], n = p.next;
				while (n != null) {
					if (n.element == o || n.element.equals(o)) {
						p.next = n.next;
						return true;
					}
					p = n;
					n = n.next;
				}
			}
		}
		return false;
	}