fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġfor Ġ( x Ġin Ġ 0 Ġ.. Ġ 8 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfoo ( x , ĠUnit ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln (" Done ") Ċ } Ċ Ċ var Ġglobal Ġ= Ġ 4 2 Ċ Ċ fun Ġfoo ( x : ĠInt , Ġunit : ĠUnit ) Ġ{ ĊĠĠĠ Ġvar Ġlocal Ġ= Ġ 5 ĊĠĠĠ Ġval Ġy : ĠUnit Ġ= Ġwhen Ġ( x ) Ġ{ ĊĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{} ĊĠĠĠĠĠĠĠĠ 1 Ġ-> Ġlocal Ġ= Ġ 6 ĊĠĠĠĠĠĠĠĠ 2 Ġ-> Ġglobal Ġ= Ġ 4 3 ĊĠĠĠĠĠĠĠĠ 3 Ġ-> Ġunit ĊĠĠĠĠĠĠĠĠ 4 Ġ-> ĠUnit ĊĠĠĠĠĠĠĠĠ 5 Ġ-> Ġbar () ĊĠĠĠĠĠĠĠĠ 6 Ġ-> Ġreturn ĊĠĠĠĠĠĠĠĠ 7 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbar () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ 8 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġz : ĠAny Ġ= ĠUnit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġz Ġas ĠUnit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠError () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġif Ġ( y Ġ!== ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" Fail Ġat Ġx Ġ= Ġ$ x ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġbar () Ġ{ Ċ }