package Ġcom . world turn er . util Ċ Ċ fun ĠString . to Code Points (): ĠCollection < Int > Ġ{ ĊĠĠĠ Ġreturn Ġobject Ġ: ĠCollection < Int > Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġiterator (): ĠIterator < Int > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠIterator < Int > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġnext Index Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġhas Next (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnext Index Ġ< Ġlength ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnext (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġcode Point At ( next Index ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnext Index Ġ+= ĠCharacter . char Count ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠisEmpty (): ĠBoolean Ġ= Ġlength Ġ== Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġsize : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ= Ġcode Point Count ( 0 , Ġlength ) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcontains ( element : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlength Ġ= Ġlength ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( offset Ġ< Ġlength ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcode Point Ġ= Ġcode Point At ( offset ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( element Ġ== Ġelement ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoffset Ġ+= ĠCharacter . char Count ( code Point ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcontains All ( elements : ĠCollection < Int >): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelements . all Ġ{ Ġcontains ( it ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ