package Ġcom . kr akt un . k bot example Ċ Ċ import Ġcom . kr akt un . k bot . data . Configurator Ċ import Ġcom . kr akt un . k bot example . bots . Server Bot Ċ import Ġcom . kr akt un . k bot example . bots . Test Bot Ċ import Ġcom . kr akt un . k bot example . data . Database Manager Ċ import Ġcom . kr akt un . k bot example . utils . on Shutdown Ċ import Ġcom . kr akt un . k bot example . utils . onStart Ċ import Ġcom . kr akt un . k utils . log . println DT K Ċ Ċ class ĠMain Ċ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġval Ġmain Thread Ġ= ĠThread . currentThread () ĊĠĠĠ ĠRuntime . get Runtime (). add Shutdown Hook ( ĊĠĠĠĠĠĠĠ ĠThread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Shutdown () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmain Thread . join () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠInterruptedException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) ĊĠĠĠ ĠonStart () ĊĠĠĠ ĠConfigurator . with DataManager ( bot Username Ġ= ĠTEST _ NAME , Ġd Ġ= ĠDatabase Manager ) ĊĠĠĠĠĠĠĠ Ġ. with DataManager ( bot Username Ġ= ĠMAIN _ NAME , Ġd Ġ= ĠDatabase Manager ) ĊĠĠĠĠĠĠĠ Ġ. with Logging Ġ{ Ġs Ġ-> Ġprintln DT K (" K BOT _ LOG ", Ġs ) Ġ} ĊĠĠĠ ĠTest Bot () ĊĠĠĠ ĠServer Bot () Ċ } Ċ