public MatchIterator getEqualOrdinals(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 new PivotedMatchIterator((int)((fromOrdinalsMap[bucket] & Long.MAX_VALUE) >> 32));
                return new SingleMatchIterator((int)(fromOrdinalsMap[bucket] >> 32));
            }
            bucket = (bucket + 1) & (fromOrdinalsMap.length - 1);
        }

        return EmptyMatchIterator.INSTANCE;
    }
@Test
    public void testFromOrdinals() {
        assertMatchIterator(map.getEqualOrdinals(1), 1, 2, 3);
        assertMatchIterator(map.getEqualOrdinals(2), 4, 5, 6);
        assertMatchIterator(map.getEqualOrdinals(3), 7, 8, 9);
        assertMatchIterator(map.getEqualOrdinals(100), 5025);
        assertMatchIterator(map.getEqualOrdinals(200));
    }