public static <V> Optional<V> getValueIgnoreCase(Map<String, V> map, String key) {
        for (Map.Entry<String, V> entry : map.entrySet()) {
            if (Objects.equals(entry.getKey().toLowerCase(), key.toLowerCase())) {
                return Optional.of(entry.getValue());
            }
        }
        return Optional.empty();
    }
@Test
    public void testGetValueIgnoreCase() {
        Map<String, String> hashMap = new HashMap<>();
        hashMap.put("Key1", "Value1");
        hashMap.put("Key2", "Value2");

        // Get value from HashMap with case-insensitive key lookup
        String key = "key1";
        Optional<String> value = getValueIgnoreCase(hashMap, key);
        Assert.assertTrue(value.isPresent());
    }