package Ġorg . xt im ms . ride bus . ui . details . stop Ċ Ċ import Ġandroid . view . View Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġeu . dav idea . flex ible adapter . Flex ible Adapter Ċ import Ġeu . dav idea . flex ible adapter . items . Abstract Flex ible Item Ċ import Ġeu . dav idea . flex ible adapter . items . IF lex ible Ċ import Ġorg . xt im ms . ride bus . R Ċ import Ġorg . xt im ms . ride bus . data . database . entity . Route Ċ Ċ class ĠSto ps On Route Item ( val Ġroute : ĠRoute ) Ġ: ĊĠĠĠ ĠAbstract Flex ible Item < Stops On Route Holder >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Res (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . stops _ route _ item ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate ViewHolder ( view : ĠView , Ġadapter : ĠFlex ible Adapter < IF lex ible < RecyclerView . ViewHolder >> ): ĠSto ps On Route Holder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠSto ps On Route Holder ( view , Ġadapter Ġas ĠSto ps On Route Adapter ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbind ViewHolder ( ĊĠĠĠĠĠĠĠ Ġadapter : ĠFlex ible Adapter < IF lex ible < RecyclerView . ViewHolder >>, ĊĠĠĠĠĠĠĠ Ġholder : ĠSto ps On Route Holder , ĊĠĠĠĠĠĠĠ Ġposition : ĠInt , ĊĠĠĠĠĠĠĠ Ġpayload s : ĠList < Any ?> ? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġis ĠSto ps On Route Item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġroute . route Id Ġ== Ġother . route . route Id ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġroute . route Id . hashCode () ĊĠĠĠ Ġ} Ċ } Ċ