@SuppressWarnings ("unchecked")
	protected final GEntry removeEntry(final GKey key, final boolean verifyLength) {
		if (this._size_ == 0) return null;
		final Object[] table = this._table_;
		final int hash = this.getKeyHash(key);
		final int index = this.getIndex(hash, table.length);
		GEntry item = (GEntry)table[index];
		for (GEntry last = null, next; item != null; last = item, item = next) {
			next = this.getEntryNext(item);
			if (this.getEntryEquals(item, key, hash)) {
				if (last == null) {
					this._table_[index] = next;
				} else {
					this.setEntryNext(last, next);
				}
				this._size_--;
				if (!verifyLength) return item;
				this.verifyLength();
				return item;
			}
		}
		return null;
	}