package Ġcom . re vol ut . dfd Ċ Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġkotlinx . coroutines . flow . emit All Ċ import Ġkotlinx . coroutines . flow . on Completion Ċ import Ġjava . util . concurrent . Concurrent HashMap Ċ Ċ internal Ġfun Ġ< T > ĠFlow < T >. concat With ( next Flow : ĠFlow < T >) Ġ= Ġon Completion Ġ{ ĊĠĠĠ Ġemit All ( next Flow ) Ċ } Ċ Ċ internal Ġinline Ġfun Ġ< K , ĠV > ĠConcurrent HashMap < K , ĠV >. get OrCreate ( key : ĠK , Ġcreator : Ġ() Ġ-> ĠV ): ĠV Ġ= ĊĠĠĠ Ġget ( key ) Ġ?: Ġcreator (). let Ġ{ Ġdefault Ġ-> ĊĠĠĠĠĠĠĠ Ġput If Absent ( key , Ġdefault ) ĊĠĠĠĠĠĠĠ Ġdefault ĊĠĠĠ Ġ}