package Ġcom . f ory ou and me . core . ext Ċ Ċ fun Ġ< T > Ġcatch To Null ( block : Ġ() Ġ-> ĠT ): ĠT ? Ġ= ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġblock () ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( e . is Coroutine Exception ()) Ġthrow Ġe ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ Ċ fun Ġcatch ( block : Ġ() Ġ-> ĠUnit , Ġerror : Ġ( Throwable ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġblock () ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġerror ( e ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġfun Ġ< T > Ġcatch To Null Suspend ( block : Ġsuspend Ġ() Ġ-> ĠT ): ĠT ? Ġ= ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġblock () ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( e . is Coroutine Exception ()) Ġthrow Ġe ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ Ċ suspend Ġfun Ġcatch Suspend ( block : Ġsuspend Ġ() Ġ-> ĠUnit , Ġerror : Ġsuspend Ġ( Throwable ) Ġ-> ĠUnit ) Ġ= ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġblock () ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( e . is Coroutine Exception ()) Ġthrow Ġe ĊĠĠĠĠĠĠĠ Ġerror ( e ) ĊĠĠĠ Ġ} Ċ