mergedWith
inline fun <K, V> Map<K, V>.mergedWith(other: Map<K, V>, resolve: (key: K, current: V, incoming: V) -> V): Map<K, V>
Returns a map combining this map with other, calling resolve for keys present in both.
resolve receives the key, this map's value, and the value from other, and its result is used for that key. Keys only present in one map keep their value. The receiver is not modified.