package Ġdev . not robots . android stuff . extensions Ċ Ċ fun Ġ< T > ĠIterable < T >. sub List ( var arg Ġindexes : ĠInt ): ĠList < T > Ġ{ ĊĠĠĠ Ġreturn Ġindexes . map Ġ{ Ġelement At ( it ) Ġ} Ċ } Ċ Ċ fun Ġ< T > ĠIterable < T >. sub List ( indexes : ĠList < Int >): ĠList < T > Ġ{ ĊĠĠĠ Ġreturn Ġindexes . map Ġ{ Ġelement At ( it ) Ġ} Ċ } Ċ Ċ fun Ġ< T > ĠIterable < T >. chunk ed ( size : ĠInt , Ġcount : Ġ( T ) Ġ-> ĠInt ): ĠList < List < T >> Ġ{ ĊĠĠĠ Ġval Ġchunk List Ġ= Ġmutable ListOf < List < T >>() ĊĠĠĠ Ġvar Ġchunk Ġ= Ġmutable ListOf < T >() ĊĠĠĠ Ġvar Ġchunk Size Ġ= Ġ 0 ĊĊĠĠĠ Ġif Ġ( size Ġ<= Ġ 0 Ġ|| Ġcount () Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠlistOf ( toList ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfor Ġ(( i , Ġe ) Ġin Ġwith Index ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġc Ġ= Ġcount ( e ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( c Ġ> Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠException (" Element 's Ġsize Ġat Ġposition Ġ$ i Ġis Ġgreater Ġthan Ġthe Ġmax Ġsize Ġof Ġeach Ġchunk ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( c Ġ+ Ġchunk Size Ġ> Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchunk List . add ( chunk ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchunk Ġ= Ġmutable ListOf () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchunk Size Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġchunk . add ( e ) ĊĠĠĠĠĠĠĠ Ġchunk Size Ġ+= Ġc ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġchunk List . add ( chunk ) ĊĊĠĠĠ Ġreturn Ġchunk List Ċ } Ċ Ċ fun Ġ< T > ĠIterable < T >. content Equals ( other : ĠIterable < T >, Ġcomparator : Ġ( a : ĠT , Ġb : ĠT ) Ġ-> ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( count () Ġ== Ġ 0 Ġ&& Ġother . count () Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġif Ġ( count () Ġ!= Ġother . count ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġall Indexed Ġ{ Ġi , Ġel Ġ-> ĊĠĠĠĠĠĠĠ Ġcomparator ( el , Ġother . elementAt ( i )) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġ< T > ĠIterable < T >. all Indexed ( predicate : Ġ( Int , ĠT ) Ġ-> ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( count () Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfor Ġ(( index , Ġelement ) Ġin Ġthis . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! predicate ( index , Ġelement )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġtrue Ċ }