package Ġfr . xg ou chet . re he ars al . ext ĊĊ Ċ fun ĠString . get Abstract ( length : ĠInt ): ĠString Ġ{ ĊĠĠĠ Ġreturn Ġif Ġ( length Ġ>= Ġlength ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbuild Abstract ( this , Ġlength ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġthis ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġbuild Abstract ( content : ĠString , Ġlength : ĠInt ): ĠString Ġ{ ĊĠĠĠ Ġval Ġbuilder Ġ= ĠStringBuilder () ĊĠĠĠ Ġval Ġfirst Line Ġ= Ġcontent . split ("\ n "). first () ĊĠĠĠ Ġval Ġtokens Ġ= Ġfirst Line . split (" Ġ") ĊĊĠĠĠ Ġtokens . forEach Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . length Ġ< Ġlength Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . append (" Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . append ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġbuilder . append (" âĢ¦ ") ĊĠĠĠ Ġreturn Ġbuilder . toString () Ċ } Ċ