private void removeNodeHash( Node<K, V> node ) {
        final Node<K, V>[] buckets = mKeyBuckets;
        final int          idx     = (node.mHash & (buckets.length - 1));

        Node<K, V> parent = null;
        Node<K, V> n      = buckets[idx];

        while( n != null ) {
            if( n == node ) {
                mModCount++;
                mKeyCount--;

                if( parent == null ) {
                    buckets[idx] = n.mNext;
                } else {
                    parent.mNext = n.mNext;
                }

                break;
            }

            parent = n;
            n = n.mNext;
        }
    }