fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġvar Ġresult : Int Ġ= Ġphi ( 2 5 ) ĊĠĠĠ Ġprintln ( result ) ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ċ } Ċ Ċ private Ġfun Ġgcd ( a : ĠInt , Ġb : ĠInt ): ĠInt Ġ{ ĊĠĠĠ Ġreturn Ġif Ġ( a Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġb ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġgcd ( b Ġ% Ġa , Ġa ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġphi ( n : ĠInt ): ĠInt Ġ{ ĊĠĠĠ Ġvar Ġresult Ġ= Ġ 1 ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 2 .. ( n - 1 )) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( gcd ( i , Ġn ) Ġ== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult ++ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġresult Ċ } Ċ