Ċ object ĠMer chant Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlanguage Ġ= ĠLanguage () ĊĠĠĠ Ġprivate Ġval Ġcost Ledger Ġ= ĠCost Ledger () ĊĊĠĠĠ Ġprivate Ġfun ĠList < String >. is Mapping (): ĠBoolean Ġ= ĠLanguage . is Mapping ( this ) ĊĠĠĠ Ġprivate Ġfun ĠList < String >. is Cost Ledger (): ĠBoolean Ġ= ĠCost Ledger . is Info ( this ) ĊĠĠĠ Ġprivate Ġfun ĠList < String >. is Question (): ĠBoolean Ġ= ĠQuestion . is Question ( this ) ĊĊĠĠĠ Ġfun Ġfeed ( input : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlines Ġ= Ġinput . lines () ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġarray ListOf < String >() ĊĠĠĠĠĠĠĠ Ġfor Ġ( line Ġin Ġlines ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġwords Ġ= Ġline . split (" Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwords . is Mapping () Ġ-> Ġlanguage . en rich ( words ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwords . is Cost Ledger () Ġ-> Ġcost Ledger . add ( words , Ġlanguage ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwords . is Question () Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquestion Ġ= ĠQuestion ( words ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . add ( question . get Answer ( cost Ledger , Ġlanguage )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġresult . join ToString ("\ n ") ĊĠĠĠ Ġ} Ċ Ċ } Ċ