package Ġde . end uni . monster l air Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroidx . appcompat . app . AppCompat Delegate Ċ import Ġde . end uni . monster l air . common . persistence . database . Database Initializer Ċ import Ġde . end uni . monster l air . common . view . Dark Mode Manager Ċ import Ġkotlinx . coroutines . Coroutine ExceptionHandler Ċ import Ġkotlinx . coroutines . Experimental Cor outines Api Ċ import Ġkotlinx . coroutines . Main Scope Ċ import Ġkotlinx . coroutines . launch Ċ import Ġorg . k oin . android . ext . android . inject Ċ import Ġorg . k oin . android . ext . k oin . android Context Ċ import Ġorg . k oin . core . context . start K oin Ċ import Ġtim ber . log . Tim ber Ċ Ċ @ Experimental Cor outines Api Ċ class ĠMon ster L air Application Ġ: ĠApplication () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġdatabase Initializer : ĠDatabase Initializer Ġby Ġinject () ĊĊĠĠĠ Ġprivate Ġval Ġdark Mode Manager : ĠDark Mode Manager Ġby Ġinject () ĊĊĠĠĠ Ġprivate Ġval Ġhandler Ġ= ĠCor outine ExceptionHandler Ġ{ Ġ_, Ġexception Ġ-> ĊĠĠĠĠĠĠĠ ĠTim ber . e ( exception , Ġ" Ca ught Ġexception ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . plant ( Tim ber . Debug Tree ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġstart K oin Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġandroid Context ( this @ Monster L air Application ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodules ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Module , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġh az ards Module , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmonster Module , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġencounter Module , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtre asure Module , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapp Module ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠTim ber . d (" Initialized ĠK oin ") ĊĊĠĠĠĠĠĠĠ Ġif Ġ( android . os . Build . VERSION . SDK _ INT Ġ< Ġ 2 9 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( dark Mode Manager . is Dark Mode Enabled ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAppCompat Delegate . setDefault Night Mode ( AppCompat Delegate . MODE _ N IGHT _ YES ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAppCompat Delegate . setDefault Night Mode ( AppCompat Delegate . MODE _ N IGHT _ NO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠMain Scope (). launch ( handler ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Initializer . initialize () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" Initialized ĠDatabase ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ} Ċ Ċ }