a s s L i s t I t e m { a b s t r a c t f u n g e t T y p e ( ) : T y p e e n u m c l a s s T y p e ( v a l i d : I n t ) { C a p t i o n ( 1 0 ) , S u b C a p t i o n ( 2 0 ) , C a t e g o r y ( 3 0 ) ; c o m p a n i o n o b j e c t { f u n f r o m ( i d : I n t ) : T y p e { r e t u r n v a l u e s ( ) . f i r s t { i t . i d = = i d } } } } c l a s s C a p t i o n I t e m ( v a l t i t l e : S t r i n g ) : L i s t I t e m ( ) { o v e r r i d e f u n g e t T y p e ( ) : T y p e { r e t u r n T y p e . C a p t i o n } } c l a s s S u b C a p t i o n I t e m ( v a l t i t l e : S t r i n g ) : L i s t I t e m ( ) {