package Ġname . deny ago . comment tree . data Ċ Ċ data Ġclass ĠComment ( val Ġid : ĠInt , Ġval Ġtext : ĠString ) Ġ{ ĊĠĠĠ Ġconstructor ( id : ĠInt ) Ġ: Ġthis ( id , Ġ"") Ċ } Ċ Ċ data Ġclass ĠNode ( val Ġcomment : ĠComment , Ġval Ġchildren : ĠList < Node >) Ġ{ ĊĠĠĠ Ġconstructor ( id : ĠInt ) Ġ: Ġthis ( Comment ( id ), Ġempty List < Node >()) ĊĠĠĠ Ġconstructor ( id : ĠInt , Ġchildren : ĠList < Node >) Ġ: Ġthis ( Comment ( id ), Ġchildren ) ĊĊĠĠĠ Ġval Ġid : ĠInt Ġby Ġlazy Ġ{ Ġcomment . id Ġ} ĊĊĠĠĠ Ġfun Ġto List (): ĠList < Node > Ġ= ĠlistOf ( Node ( id )) Ġ+ Ġchildren . flatMap Ġ{ Ġit . toList () Ġ} Ċ } Ċ