import Ġkotlin . test .* Ċ Ċ fun Ġbox () Ġ{ ĊĠĠĠ Ġexpect (- 1 ) Ġ{ Ġint ArrayOf ( 1 , Ġ 2 , Ġ 3 ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġindex Ġ+ Ġa Ġ- Ġb Ġ} Ġ} ĊĠĠĠ Ġexpect (- 1 . to Long ()) Ġ{ Ġlong ArrayOf ( 1 , Ġ 2 , Ġ 3 ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġindex Ġ+ Ġa Ġ- Ġb Ġ} Ġ} ĊĠĠĠ Ġexpect (- 1 F ) Ġ{ Ġfloat ArrayOf ( 1 F , Ġ 2 F , Ġ 3 F ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġindex Ġ+ Ġa Ġ- Ġb Ġ} Ġ} ĊĠĠĠ Ġexpect (- 1 . 0 ) Ġ{ Ġdouble ArrayOf ( 1 . 0 , Ġ 2 . 0 , Ġ 3 . 0 ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġindex Ġ+ Ġa Ġ- Ġb Ġ} Ġ} ĊĠĠĠ Ġexpect (' 2 ') Ġ{ Ġchar ArrayOf (' 1 ', Ġ' 3 ', Ġ' 2 '). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġif Ġ( a Ġ> Ġb Ġ&& Ġindex Ġ== Ġ 1 ) Ġa Ġelse Ġb Ġ} Ġ} ĊĠĠĠ Ġexpect ( true ) Ġ{ Ġboolean ArrayOf ( true , Ġtrue , Ġfalse ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġa Ġ&& Ġb Ġ|| Ġindex Ġ== Ġ 2 Ġ} Ġ} ĊĠĠĠ Ġexpect ( false ) Ġ{ Ġboolean ArrayOf ( true , Ġtrue ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġa Ġ&& Ġb Ġ&& Ġindex Ġ!= Ġ 1 Ġ} Ġ} ĊĠĠĠ Ġexpect ( 1 . to Byte ()) Ġ{ Ġbyte ArrayOf ( 3 , Ġ 2 , Ġ 1 ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġif Ġ( index Ġ!= Ġ 2 ) Ġ( a Ġ- Ġb ). to Byte () Ġelse Ġa . to Byte () Ġ} Ġ} ĊĠĠĠ Ġexpect ( 1 . to Short ()) Ġ{ Ġshort ArrayOf ( 3 , Ġ 2 , Ġ 1 ). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġif Ġ( index Ġ!= Ġ 2 ) Ġ( a Ġ- Ġb ). to Short () Ġelse Ġa . to Short () Ġ} Ġ} ĊĊĠĠĠ Ġassert Fails With < Unsupported OperationException > Ġ{ ĊĠĠĠĠĠĠĠ Ġint ArrayOf (). reduce Indexed Ġ{ Ġindex , Ġa , Ġb Ġ-> Ġa Ġ+ Ġb Ġ} ĊĠĠĠ Ġ} Ċ } Ċ