package Ġjp . gree . tech con . common . util Ċ Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġkotlinx . coroutines . flow . collect Ċ import Ġkotlinx . coroutines . launch Ċ import Ġkotlinx . io . core . Closeable Ċ Ċ fun Ġ< T > ĠFlow < T >. wrap (): ĠC Flow < T > Ġ= ĠC Flow ( this ) Ċ Ċ class ĠC Flow < T >( private Ġval Ġorigin : ĠFlow < T >) Ġ: ĠFlow < T > Ġby Ġorigin Ġ{ ĊĠĠĠ Ġfun Ġwatch ( block : Ġ( T ) Ġ-> ĠUnit ): ĠClose able Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscope Ġ= ĠCor outine Scope Builder (). build () ĊĠĠĠĠĠĠĠ Ġval Ġjob Ġ= Ġscope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcollect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠClose able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġclose () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjob . cancel () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ