package Ġcom . f antasy 1 0 2 2 . an alytic . analytics . tracker Ċ Ċ import Ġandroid . app . Application Ċ import Ġcom . f antasy 1 0 2 2 . an alytic . analytics . Event ĊĊ Ċ abstract Ġclass ĠBase Tracker < T >( val Ġcontext : ĠApplication , Ġval Ġis Debug : ĠBoolean ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġsetup Tracker ( context , Ġis Debug ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġtrack Event ( event : ĠEvent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( is Own Event ( event . target ) Ġ&& Ġaccept Event ( event )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtransformed Event Ġ= Ġtransform Event ( event ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost Event ( transformed Event ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis Own Event (@ Event . Companion . Tracker Target Ġtarget : ĠLong ): ĠBoolean { ĊĠĠĠĠĠĠĠ Ġreturn Ġ( target Ġand Ġget Tracker Target ()) Ġ=== Ġget Tracker Target () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġsetup Tracker ( context : ĠApplication , Ġis Debug : ĠBoolean ) ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġaccept Event ( event : ĠEvent ): ĠBoolean ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġtransform Event ( event : ĠEvent ): ĠT ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġpost Event ( transformed Event : ĠT ) ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġget Tracker Target (): Long Ċ }