public int getIdentityFromOrdinal(int fromOrdinal) {
        int hashCode = HashCodes.hashInt(fromOrdinal);

        int bucket = hashCode & (fromOrdinalsMap.length - 1);

        while(fromOrdinalsMap[bucket] != -1L) {
            if((int)fromOrdinalsMap[bucket] == fromOrdinal) {
                if((fromOrdinalsMap[bucket] & Long.MIN_VALUE) != 0L)
                    return pivotedToOrdinalClusters.get((int)((fromOrdinalsMap[bucket] & Long.MAX_VALUE) >> 32));
                return (int)(fromOrdinalsMap[bucket] >> 32);
            }
            bucket = (bucket + 1) & (fromOrdinalsMap.length - 1);
        }

        return -1;
    }
@Test
    public void testFromIdentityOrdinals() {
        Assert.assertEquals(1, map.getIdentityFromOrdinal(1));
        Assert.assertEquals(4, map.getIdentityFromOrdinal(2));
        Assert.assertEquals(7, map.getIdentityFromOrdinal(3));
        Assert.assertEquals(5025, map.getIdentityFromOrdinal(100));
        Assert.assertEquals(-1, map.getIdentityFromOrdinal(200));
    }