inline Ġfun Ġa ( l : Ġ() Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġb ( l ) ĊĊĠĠĠ Ġ// check Ġta ht Ġnested Ġnot Ġrecognized Ġas Ġcycle ĊĠĠĠ Ġc Ġ{ ĊĠĠĠĠĠĠĠ Ġc Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ inline Ġfun Ġb ( p : Ġ() Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġp () ĊĠĠĠ Ġa ( p ) Ċ } Ċ Ċ inline Ġfun Ġc ( p : Ġ() Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġp () Ċ }