package Ġno . nav . hel se . risk Ċ Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Assertions . assertTrue Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠV ur der ing Builder Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvari abler () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġno ent all Ġ= ĠlistOf ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠĠĠĠĠ Ġval Ġv ur der ing Ġ= ĠV ur der ing Builder () ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 4 , Ġid Ġ= Ġ" SJ EK K - 1 ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtek st Ġ= Ġtek st (" To Ġfor sk j elli ge Ġver dier Ġ( {} % Ġog Ġ{} %) Ġ 5 % Ġ 6 % Ġopp Ġ( 7 % ): Ġ{}", Ġ 3 0 0 0 , Ġ 4 . 5 4 , Ġno ent all ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . build (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" To Ġfor sk j elli ge Ġver dier Ġ( 3 0 0 0 % Ġog Ġ 4 . 5 4 %) Ġ 5 % Ġ 6 % Ġopp Ġ( 7 % ): Ġ[ 1 , Ġ 2 , Ġ 3 ] "), Ġthis . be gr unnel ser ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" SJ EK K - 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" To Ġfor sk j elli ge Ġver dier Ġ( 3 0 0 0 % Ġog Ġ 4 . 5 4 %) Ġ 5 % Ġ 6 % Ġopp Ġ( 7 % ): Ġ[ 1 , Ġ 2 , Ġ 3 ]", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvari abler Ġ= ĠlistOf (" 3 0 0 0 ", Ġ" 4 . 5 4 ", Ġ"[ 1 , Ġ 2 , Ġ 3 ] "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` vari abler Ġfor Ġpass erte Ġs jek ker `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv ur der ing Ġ= ĠV ur der ing Builder () ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 4 , Ġid Ġ= Ġ" SJ EK K - 1 ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp assert ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtek st Ġ= Ġtek st (" Hel t Ġg rei Ġver di : Ġ{} .", Ġ 3 0 0 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . build (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" Hel t Ġg rei Ġver di : Ġ 3 0 0 0 ."), Ġthis . pass erte S jek ker ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" SJ EK K - 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" Hel t Ġg rei Ġver di : Ġ 3 0 0 0 .", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvari abler Ġ= ĠlistOf (" 3 0 0 0 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġet Par Be gr unnel ser () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv ur der ing Ġ= ĠV ur der ing Builder () ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 4 , Ġid Ġ= Ġ" SJ EK K - 1 ") Ġ{ Ġresult at (" FE IL - 1 ", Ġscore Ġ= Ġ 1 ) Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 6 ) Ġ{ Ġresult at (" no e Er Fe il ", Ġscore Ġ= Ġ 2 ) Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 7 ) Ġ{ Ġresult at (" enda Mer Er Fe il ", Ġscore Ġ= Ġ 4 ) Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . build ( 5 ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" FE IL - 1 ", Ġ" no e Er Fe il ", Ġ" enda Mer Er Fe il "), Ġthis . be gr unnel ser ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( this . be gr unnel ser S om Al ene K re ver Man ue ll Be handling . isEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( emptyList < String >(), Ġpass erte S jek ker ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" SJ EK K - 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" FE IL - 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" no e Er Fe il ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 2 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" enda Mer Er Fe il ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 7 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` to Ġpass erte Ġs jek ker Ġog Ġ 2 Ġik ke - akt uelle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv ur der ing Ġ= ĠV ur der ing Builder () ĊĠĠĠĠĠĠĠ Ġv ur der ing . p assert S je kk ( ve kt Ġ= Ġ 4 , Ġ" ser Ġgre it Ġut ") ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 5 ) Ġ{ Ġp assert (" np ") Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 1 0 ) Ġ{ Ġik ke A kt ue ll (" S je kk Ġ 3 Ġik ke Ġrelevant ") Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . ik ke A kt ue ll S je kk (" S je kk Ġ 4 Ġer Ġik ke Ġakt ue ll ") ĊĠĠĠĠĠĠĠ Ġv ur der ing . build ( 5 ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( emptyList < String >(), Ġthis . be gr unnel ser ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( this . be gr unnel ser S om Al ene K re ver Man ue ll Be handling . isEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" ser Ġgre it Ġut ", Ġ" np "), Ġthis . pass erte S jek ker ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" ser Ġgre it Ġut ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" np ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" S je kk Ġ 3 Ġik ke Ġrelevant ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 4 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" S je kk Ġ 4 Ġer Ġik ke Ġakt ue ll ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbe gr unnel ser S om Al ene K re ver Man ue ll Be handling () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv ur der ing Ġ= ĠV ur der ing Builder () ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 5 , Ġk ategor ier Ġ= ĠlistOf (" Type - 1 ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult at (" no e Er Fe il ", Ġ 1 , Ġy t ter lig ere K ategor ier Ġ= ĠlistOf (" Type - 1 B ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . ny S je kk ( ve kt Ġ= Ġ 5 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling (" No e Ġer ĠAL vor lig Ġfe il ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġv ur der ing . build ( 1 0 ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" no e Er Fe il ", Ġ" No e Ġer ĠAL vor lig Ġfe il "), Ġthis . be gr unnel ser ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" No e Ġer ĠAL vor lig Ġfe il "), Ġthis . be gr unnel ser S om Al ene K re ver Man ue ll Be handling ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" no e Er Fe il ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk ategor ier Ġ= ĠlistOf (" Type - 1 ", Ġ" Type - 1 B ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" No e Ġer ĠAL vor lig Ġfe il ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` s je kk Ġdeleg ert Ġtil Ġfunk s jon `() Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġs je kk ( info : ĠList < Int >): ĠV ur der ing Builder . S je kk result at Builder . () Ġ-> ĠS je kk result at Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( info . isEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġik ke A kt ue ll (" In gen Ġdata ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġif Ġ( info . size Ġ== Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġp assert (" K un Ġett Ġelement ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġresult at ("${ info . size } Ġelement er ", Ġscore Ġ= Ġinfo . size ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 5 , Ġs je kk Ġ= Ġs je kk ( emptyList ())) ĊĠĠĠĠĠĠĠ Ġ}. build (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" In gen Ġdata ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 5 , Ġs je kk Ġ= Ġs je kk ( listOf ( 1 ))) ĊĠĠĠĠĠĠĠ Ġ}. build (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" K un Ġett Ġelement ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 5 , Ġs je kk Ġ= Ġs je kk ( listOf ( 1 , Ġ 2 , Ġ 3 ))) ĊĠĠĠĠĠĠĠ Ġ}. build (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" 3 Ġelement er ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġthis . s je kk result at ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ny S je kk Ġreturn er er Ġs je kk result ate t Ġ( kan Ġi Ġs j eld ne Ġtil f eller Ġt enk es Ġreg ler Ġsom Ġav h enger Ġav Ġresult ate t Ġf ra Ġand re Ġreg ler Ġi Ġsam me Ġv ur der ing st jen este )` () Ġ{ ĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 1 1 , Ġid Ġ= Ġ" ent est ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling (" ja uda ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. also Ġ{ Ġs je kk res Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkotlin . test . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" ent est ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" ja uda ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvari abler Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 1 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 1 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġs je kk res ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 9 , Ġid Ġ= Ġ" ann ent est ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġp assert (" all Ġgood ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. also Ġ{ Ġs je kk res Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkotlin . test . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" ann ent est ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" all Ġgood ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvari abler Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 9 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġs je kk res ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠV ur der ing Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġny S je kk ( ve kt Ġ= Ġ 2 0 , Ġid Ġ= Ġ" t red jet est ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġik ke A kt ue ll (" nothing Ġto Ġcheck ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. also Ġ{ Ġs je kk res Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkotlin . test . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS je kk result at ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" t red jet est ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe gr un n else Ġ= Ġ" nothing Ġto Ġcheck ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvari abler Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscore Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv ek t Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk re ver Man ue ll Be handling Ġ= Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġs je kk res ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ