// Path: src/main/java/tests/maptests/IMapTest.java
// public interface IMapTest {
//     public void setup( final int[] keys, final float fillFactor, final int oneFailureOutOf );
// 
//     public int test();
// }
// 
// Path: src/main/java/tests/maptests/ITestSet.java
// public interface ITestSet {
//     public IMapTest getTest();
//     public IMapTest putTest();
//     public IMapTest removeTest();
// }


import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import tests.maptests.IMapTest;
import tests.maptests.ITestSet;
package tests.maptests.prim_object;


/**
 * FastUtil Int2ObjectOpenHashMap test
 */
public class FastUtilIntObjectMapTest implements ITestSet
{
    @Override
    public IMapTest getTest() {
        return new FastUtilIntObjectGetTest();
    }

    @Override
    public IMapTest putTest() {
        return new FastUtilIntObjectPutTest();
    }

    @Override
    public IMapTest removeTest() {
        return new FastUtilIntObjectRemoveTest();
    }

    private static class FastUtilIntObjectGetTest extends AbstractPrimObjectGetTest {
        private Int2ObjectOpenHashMap<Integer> m_map;

        @Override
        public void setup(int[] keys, float fillFactor, int oneFailOutOf) {
            super.setup(keys, fillFactor, oneFailOutOf );
            m_map = new Int2ObjectOpenHashMap<>( keys.length, fillFactor );
            for ( int key : keys ) m_map.put( key % oneFailOutOf == 0 ? key + 1 : key, Integer.valueOf(key) );
        }

        @Override
// Path: src/main/java/tests/maptests/IMapTest.java
// public interface IMapTest {
//     public void setup( final int[] keys, final float fillFactor, final int oneFailureOutOf );
// 
//     public int test();
// }
// 
// Path: src/main/java/tests/maptests/ITestSet.java
// public interface ITestSet {
//     public IMapTest getTest();
//     public IMapTest putTest();
//     public IMapTest removeTest();
// }


// Path: src/main/java/tests/maptests/prim_object/FastUtilIntObjectMapTest.java
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import tests.maptests.IMapTest;
import tests.maptests.ITestSet;

package tests.maptests.prim_object;


/**
 * FastUtil Int2ObjectOpenHashMap test
 */
public class FastUtilIntObjectMapTest implements ITestSet
{
    @Override
    public IMapTest getTest() {
        return new FastUtilIntObjectGetTest();
    }

    @Override
    public IMapTest putTest() {
        return new FastUtilIntObjectPutTest();
    }

    @Override
    public IMapTest removeTest() {
        return new FastUtilIntObjectRemoveTest();
    }

    private static class FastUtilIntObjectGetTest extends AbstractPrimObjectGetTest {
        private Int2ObjectOpenHashMap<Integer> m_map;

        @Override
        public void setup(int[] keys, float fillFactor, int oneFailOutOf) {
            super.setup(keys, fillFactor, oneFailOutOf );
            m_map = new Int2ObjectOpenHashMap<>( keys.length, fillFactor );
            for ( int key : keys ) m_map.put( key % oneFailOutOf == 0 ? key + 1 : key, Integer.valueOf(key) );
        }

        @Override
        public int test() {