@Override public long remove(long key) {
        final long valueAddr = hsa.get(key);
        if (valueAddr == NULL_ADDRESS) {
            return nullValue;
        }
        final long oldValue = mem.getLong(valueAddr);
        hsa.remove(key);
        return oldValue;
    }
@Test(expected = AssertionError.class)
    @RequireAssertEnabled
    public void test_removeIfEquals_Value() {
        map.remove(newKey(), MISSING_VALUE);
    }