nmemb /= 2;
pivot = (const char *)base + (nmemb * size);
rc = compar( key, pivot );
if ( rc > 0 )
{
base = (const char *)pivot + size;
nmemb /= 2;
pivot = (const char *)base + (nmemb * size);
rc = compar( key, pivot );
if ( rc > 0 )
{
base = (const char *)pivot + size;