import java.util.*; class Test { public static LinkedMultiValueMap main(Map queryParams) { return queryParams.entrySet().stream() .collect(LinkedMultiValueMap::new, (m, e) -> m.add(e.getKey(), e.getValue()), LinkedMultiValueMap::putAll); } } class LinkedMultiValueMap extends HashMap> { public LinkedMultiValueMap() {} public LinkedMultiValueMap(int initialCapacity) {} public LinkedMultiValueMap(Map> otherMap) {} public void add(K key, V value) {} public void putAll(Map> m) {} }