package Ġeu . t ib . ork g . prototype . cont ributions . domain . model Ċ Ċ import Ġcom . fasterxml . jackson . databind . annotation . Json Deserialize Ċ import Ġcom . fasterxml . jackson . databind . annotation . Json Serialize Ċ import Ġeu . t ib . ork g . prototype . cont ributions . application . json . Contributor Id Deserializer Ċ import Ġeu . t ib . ork g . prototype . cont ributions . application . json . Contributor Id Serializer Ċ import Ġjava . util . UUID Ċ Ċ @ Json Deserialize ( using Ġ= ĠContributor Id Deserializer :: class ) Ċ @ Json Serialize ( using Ġ= ĠContributor Id Serializer :: class ) Ċ data Ġclass ĠContributor Id ( val Ġvalue : ĠUUID ) Ġ{ ĊĊĠĠĠ Ġconstructor ( s : ĠString ) Ġ: Ġthis ( UUID . fromString ( s )) ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate Unknown Contributor () Ġ= ĠContributor Id ( UUID ( 0 , Ġ 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString () Ġ= Ġvalue . toString () Ċ } Ċ