package Ġcom . software hut . mobile . kotlin _ ko ans . i _ coroutines ._ 1 _ c ancellation _ timeout . solutions Ċ Ċ import Ġkotlinx . coroutines .* Ċ Ċ // ĠMARK Ġsolution Ċ fun Ġtask 1 a (): ĠJob Ġ{ ĊĠĠĠ Ġreturn ĠGlobal Scope . launch Ġ{ ĊĠĠĠĠĠĠĠ Ġlaunch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlong Running Work () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdelay ( 1 _ 0 0 0 ) ĊĠĠĠĠĠĠĠ Ġcancel () ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġfun Ġlong Running Work () Ġ{ ĊĠĠĠ Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcounter Ġ= Ġ 0 L ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 .. 1 0 0 _ 0 0 0 _ 0 0 0 _ 0 0 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( isActive . not ()) Ġ{ Ġreturn @ with Context Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcounter ++ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }