package Ġuk . co . b acon i . pk a . td Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġuk . co . b acon i . pk a . common . AccessToken Ċ import Ġuk . co . b acon i . pk a . td . errors . Error Activity Ċ import Ġuk . co . b acon i . pk a . td . errors . to Error Parcel Ċ import Ġuk . co . b acon i . pk a . td . settings . Settings Ċ Ċ class ĠNo N re ApiKey Exception ( message : ĠString ) Ġ: ĠException ( message ) Ċ Ċ fun ĠAppCompatActivity . provide AccessToken (): ĠAccess Token Ġ{ ĊĠĠĠ Ġval Ġn re ApiKey Ġ= ĠSettings . N re ApiKey . get Setting ( this )?. trim () ĊĠĠĠ Ġif ( n re ApiKey . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠNo N re ApiKey Exception (" Unable Ġto Ġfind Ġan ĠN RE Ġapi Ġkey Ġfrom Ġthe Ġapp Ġsettings .") ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAccess Token ( n re ApiKey ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠStart Ġan Ġactivity Ġin Ġa Ġmore ĠKotlin Ġd sl Ġway . Ċ Ġ*/ Ċ inline Ġfun Ġ< re ified ĠA > ĠContext . startActivity ( block : ĠIntent . () Ġ-> ĠUnit Ġ= Ġ{}) Ġ{ ĊĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠA :: class . java ). apply ( block ) ĊĠĠĠ ĠstartActivity ( intent ) Ċ } Ċ Ċ /** Ċ Ġ* ĠStart Ġan Ġerror Ġactivity Ġfor Ġa Ġgiven ĠThrowable . Ċ Ġ*/ Ċ fun ĠContext . start Error Activity ( throwable : ĠThrowable ) Ġ{ ĊĠĠĠ ĠstartActivity < Error Activity > Ġ{ ĊĠĠĠĠĠĠĠ Ġput Extra ( Error Activity . ERROR _ PAR CEL , Ġthrowable . to Error Parcel ()) ĊĠĠĠ Ġ} Ċ }