package Ġorg . sage b ion etwork s . assessment model Ċ Ċ import Ġandroid . os . Build Ċ import Ġjava . time . Instant Ċ import Ġjava . time . LocalDate Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . time . format . DateTime Formatter Ċ import Ġjava . util .* Ċ import Ġkotlin . reflect . K Class Ċ Ċ actual Ġclass ĠPlatform Ġactual Ġconstructor () Ġ{ ĊĠĠĠ Ġactual Ġval Ġplatform : ĠString Ġ= Ġ" Android " Ċ } Ċ Ċ actual Ġclass ĠProduct ( actual Ġval Ġuser : ĠString ) Ġ{ ĊĠĠĠ Ġfun Ġandroid Specific Operation () Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" I Ġam Ġ${ Build . MODEL } Ġby Ġ${ Build . MAN U FACT UR ER }") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString () Ġ= Ġ" Android Ġproduct Ġof Ġ$ user Ġfor Ġ${ Build . MODEL }" Ċ } Ċ Ċ actual Ġobject ĠFactory Ġ{ ĊĠĠĠ Ġactual Ġfun Ġcreate ( config : ĠMap < String , ĠString >) Ġ= ĊĠĠĠĠĠĠĠ ĠProduct ( config [" user "] !! ) ĊĊĠĠĠ Ġactual Ġval Ġplatform : ĠString Ġ= Ġ" android " Ċ } Ċ Ċ actual Ġobject ĠUUID Generator Ġ{ ĊĠĠĠ Ġactual Ġfun Ġuuid String () Ġ: ĠString Ġ= ĠUUID . randomUUID (). toString () Ċ } Ċ Ċ actual Ġobject ĠDate Generator Ġ{ ĊĠĠĠ Ġactual Ġfun Ġnow String (): ĠString Ġ= ĠLocalDateTime . now (). format ( DateTime Formatter . ISO _ DATE _ TIME ) ĊĠĠĠ Ġactual Ġfun Ġcurrent Year (): ĠInt Ġ= ĠLocalDate . now (). year Ċ } Ċ