// Ġ! LANGUAGE : Ġ+ New Inference Ċ Ċ class ĠIn < in ĠI > Ċ Ċ fun Ġ< S > Ġselect ( x : ĠS , Ġy : ĠS ): ĠS Ġ= Ġx Ċ Ċ fun Ġ< T > Ġfoo ( a : ĠArray < In < T >>, Ġb : ĠArray < In < String >>) Ġ= ĊĠĠĠ Ġselect ( a , Ġb )[ 0 ]. of Type ( true ) Ċ Ċ inline Ġfun Ġ< re ified ĠK > ĠIn < K >. of Type ( y : ĠAny ?) Ġ= ĊĠĠĠ Ġy Ġis ĠK Ċ Ċ fun Ġtest () Ġ{ ĊĠĠĠ Ġval Ġa 1 Ġ= ĠarrayOf ( In < Int >()) ĊĠĠĠ Ġval Ġa 2 Ġ= ĠarrayOf ( In < String >()) ĊĠĠĠ Ġfoo ( a 1 , Ġa 2 ) Ċ }