import Ġjava . util . logging . Level Ċ Ċ fun Ġ< P 1 , ĠP 2 , ĠR > ĠFunction 2 < P 1 , ĠP 2 , ĠR >. cur ried (): Ġ( P 1 ) Ġ-> Ġ( P 2 ) Ġ-> ĠR Ġ= ĊĠĠĠ Ġ{ Ġp 1 Ġ-> ĊĠĠĠĠĠ Ġ{ Ġp 2 Ġ-> ĊĠĠĠĠĠĠĠ Ġthis ( p 1 , Ġp 2 ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ fun Ġ< P 1 , ĠP 2 , ĠP 3 , ĠR > ĠFunction 3 < P 1 , ĠP 2 , ĠP 3 , ĠR >. cur ried (): Ġ( P 1 ) Ġ-> Ġ( P 2 ) Ġ-> Ġ( P 3 ) Ġ-> ĠR Ġ= ĊĠĠĠ Ġ{ Ġp 1 Ġ-> ĊĠĠĠĠĠ Ġ{ Ġp 2 Ġ-> ĊĠĠĠĠĠĠĠ Ġ{ Ġp 3 Ġ-> ĊĠĠĠĠĠĠĠĠĠ Ġthis ( p 1 , Ġp 2 , Ġp 3 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ fun Ġlogger ( level : ĠLevel , Ġapp ender : ĠAppend able , Ġmsg : ĠString ): ĠNothing Ġ= ĠTODO () Ċ Ċ fun Ġcur ry Example () Ġ{ ĊĠ Ġval Ġlogger : Ġ( Level ) Ġ-> Ġ( Append able ) Ġ-> Ġ( String ) Ġ-> ĠUnit Ġ= Ġ:: logger . cur ried () ĊĠ Ġval Ġlogger 2 : Ġ( Append able ) Ġ-> Ġ( String ) Ġ-> ĠUnit Ġ= Ġlogger ( Level . SEVERE ) ĊĠ Ġval Ġlogger 3 : Ġ( String ) Ġ-> ĠUnit Ġ= Ġlogger 2 ( System . out ) ĊĠ Ġlogger 3 (" my Ġmessage ") Ċ }