package Ġmm . inventory . app . product planner . item Ċ Ċ import Ġmm . inventory . domain . shared . types . ItemId Ċ Ċ data Ġclass ĠItem AppId ( val Ġid : ĠString ) Ġ: ĠItem Id Ċ Ċ fun ĠItem Id . to AppId (): ĠItem AppId ? Ġ= ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis ĠItem AppId Ġ-> Ġthis ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠ Ġ} Ċ Ċ fun ĠItem Id . as AppId (): ĠItem AppId Ġ= ĊĠĠĠ Ġthis . to AppId () Ġ?: Ġthrow ĠIllegalArgumentException (" Unknown Ġimplementation : Ġ${ this . java Class . name }. ") Ċ