package Ġio . github . deb op . ja vers . examples Ċ Ċ import Ġorg . ja vers . core . met amodel . annotation . Id Ċ import Ġorg . ja vers . core . met amodel . annotation . TypeName Ċ import Ġjava . time . Z onedDateTime Ċ Ċ enum Ġclass ĠPosition Ġ{ ĊĠĠĠ ĠAssistant , ĊĠĠĠ ĠSecret ary , ĊĠĠĠ ĠDeveloper , ĊĠĠĠ ĠSpecial ist , ĊĠĠĠ ĠSale sw oman , ĊĠĠĠ ĠScr um Master , ĊĠĠĠ ĠT own s man , ĊĠĠĠ ĠHero Ċ } Ċ Ċ data Ġclass ĠAddress ( var Ġcity : ĠString , Ġvar Ġstreet : ĠString Ġ= Ġ"") Ċ Ċ @ TypeName (" Person ") Ċ data Ġclass ĠPerson (@ Id Ġval Ġlogin : ĠString , Ġvar Ġname : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġaddresses : ĠMutable List < Address > Ġ= Ġmutable ListOf () ĊĠĠĠ Ġval Ġaddress Map : ĠMutable Map < String , ĠAddress > Ġ= Ġmutable Map Of () ĊĠĠĠ Ġvar Ġposition : ĠPosition ? Ġ= Ġnull Ċ } Ċ Ċ @ TypeName (" Employee ") Ċ data Ġclass ĠEmployee (@ Id Ġval Ġname : ĠString , Ġvar Ġsalary : ĠInt Ġ= Ġ 1 0 0 0 , Ġval Ġposition : ĠPosition Ġ= ĠPosition . Developer ) Ġ{ ĊĊĠĠĠ Ġvar Ġage : ĠInt ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġboss : ĠEmployee ? Ġ= Ġnull ĊĠĠĠ Ġval Ġsub ord inates : ĠMutable List < Employee > Ġ= Ġmutable ListOf () ĊĊĠĠĠ Ġvar Ġprimary Address : ĠAddress ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġpostal Address : ĠAddress ? Ġ= Ġnull ĊĠĠĠ Ġval Ġskills : ĠMutable Set < String > Ġ= Ġmutable Set Of () ĊĠĠĠ Ġval Ġperformance : ĠMutable Map < Int , ĠString > Ġ= Ġmutable Map Of () ĊĠĠĠ Ġvar Ġlast Promotion Date : ĠZ onedDateTime ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġadd Sub ord inates ( var arg Ġemp s : ĠEmployee ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsub ord inates . addAll ( emp s ) ĊĠĠĠĠĠĠĠ Ġemp s . forEach Ġ{ Ġit . boss Ġ= Ġthis Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ @ TypeName (" Boss ") Ċ data Ġclass ĠBo ss (@ Id Ġval Ġname : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġsu ord inates : ĠMutable Collection < Person > Ġ= Ġmutable ListOf () Ċ }