package Ġfoo Ċ Ċ // ĠCHECK _ CONTAIN S _ NO _ CALL S : Ġadd Ċ Ċ data Ġclass ĠState ( var Ġcount : ĠInt Ġ= Ġ 0 ) Ċ Ċ inline Ġfun Ġrepeat ( times : ĠInt , Ġaction : Ġ() Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 1 .. times ) Ġ{ ĊĠĠĠĠĠĠĠ Ġaction () ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġadd ( state : ĠState , Ġa : ĠInt , Ġb : ĠInt ): ĠInt Ġ{ ĊĠĠĠ Ġ[ inline ] Ġfun Ġinc ( a : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġa Ġ+ Ġ 1 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ[ inline ] Ġfun Ġinc 1 ( a : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinc ( a ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġrepeat ( a ) Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġ[ inline ] Ġfun Ġinc 2 ( a : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġinc 1 ( a ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġrepeat ( b ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ[ inline ] Ġfun ĠState . inc () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ= Ġinc 2 ( count ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate . inc () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġstate . count Ċ } Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ ĠassertEquals ( 2 0 , Ġadd ( State (), Ġ 4 , Ġ 5 )) ĊĊĠĠĠ Ġreturn Ġ" OK " Ċ }