kirillrakhman
operator fun <T, R> MutableMap<T,List<R>>.plusAssign(pair: Pair<T,List<R>>) { put(pair.first, get(pair.first).orEmpty() + pair.second) }