package Ġio . mu un . apollo . presentation . ui . fragments . flow _ intro Ċ Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġandroidx . fragment . app . Fragment State Pager Adapter Ċ import Ġio . mu un . apollo . presentation . ui . fragments . explanation _ block . Explanation Page Fragment Ċ Ċ abstract Ġclass ĠFlow Intro Pager ( fm : ĠFragment Manager ) Ġ: ĠFragment State Pager Adapter ( fm ) Ġ{ ĊĊĠĠĠ Ġclass ĠPage ( ĊĠĠĠĠĠĠĠ Ġ@ Drawable Res Ġval Ġimage Res : ĠInt , ĊĠĠĠĠĠĠĠ Ġ@ String Res Ġval Ġtitle Res : ĠInt , ĊĠĠĠĠĠĠĠ Ġ@ String Res Ġval Ġbody Res : ĠInt ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġval Ġpages Ġby Ġlazy Ġ{ Ġcreate Page List () Ġ} ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġcreate Page List (): ĠList < Page > ĊĊĠĠĠ Ġoverride Ġfun Ġget Count () Ġ= ĊĠĠĠĠĠĠĠ Ġpages . size ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ( position : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠ Ġpages [ position ]. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEx planation Page Fragment . create ( it . image Res , Ġit . title Res , Ġit . body Res ) ĊĠĠĠĠĠĠĠ Ġ} Ċ }