package Ġoption als Ċ Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġr ux Ġon Ġ 0 4 / 0 5 / 1 7 . Ċ Ġ*/ Ċ Ċ data Ġclass ĠK Person ( val Ġname : ĠString , Ġval Ġaddress : ĠK Address ? Ġ= Ġnull ) Ċ data Ġclass ĠK Address ( val Ġstreet : ĠString ?, Ġval Ġzip : ĠString ?, Ġval ĠupdatedAt : ĠDate ) Ċ Ċ fun Ġdisplay ( person : ĠK Person ) Ġ{ ĊĠĠĠ Ġprintln ("${ person . name } Ġmoved Ġto Ġ" ĊĠĠĠĠĠĠĠ Ġ+ Ġ"${ person . address ?. street Ġ?: Ġ" unknown Ġplace "} Ġ" ĊĠĠĠĠĠĠĠ Ġ+ Ġ"${ person . address ?. zip . or Empty ()} Ġon Ġ" ĊĠĠĠĠĠĠĠ Ġ+ Ġ"${ person . address ?. updatedAt ?. to GMT String () Ġ?: Ġ" unknown Ġdate "} Ġ") Ċ } Ċ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġval Ġaddress Ġ= ĠK Address (" 2 2 ĠNew ĠStreet ", Ġ" EC 1 ĠAB ", ĠDate ( 1 9 9 5 , Ġ 1 0 , Ġ 1 )) ĊĠĠĠ Ġval Ġad am Ġ= ĠK Person (" Adam ", Ġaddress ) ĊĠĠĠ Ġdisplay ( adam ) ĊĊĠĠĠ Ġval Ġp eter Ġ= ĠK Person (" P eter ", Ġnull ) ĊĠĠĠ Ġdisplay ( pe ter ) Ċ }