@Override
    public V compute(String key, BiFunction<? super String, ? super V, ? extends V> remappingFunction) {
        return Map.super.compute(key.toLowerCase(), remappingFunction);
    }
@Test
    void compute() {
        Map<String, Object> map = new LowerCaseLinkHashMap<>(lowerCaseLinkHashMap);
        Object result = map.compute("key", (key,value)-> key.toUpperCase());
        Assertions.assertEquals("KEY", result);
        Assertions.assertEquals("KEY", map.get("key"));

        result = map.compute("key", (key, value) -> null);
        Assertions.assertNull(result);
        Assertions.assertFalse(map.containsKey("key"));

        result = map.compute("compute", (key,value)-> key.toUpperCase());
        Assertions.assertEquals("COMPUTE", result);
        Assertions.assertEquals("COMPUTE", map.get("compute"));
    }