package Ġio . ro ver . campaign s . core . data . graphql . operations . data Ċ Ċ import Ġio . ro ver . campaign s . core . data . domain . Attributes Ċ import Ġio . ro ver . campaign s . core . data . graphql . safe GetString Ċ import Ġorg . json . JSONObject Ċ Ċ fun ĠJSONObject . toString Hash (): ĠMap < String , ĠString > Ġ{ ĊĠĠĠ Ġreturn Ġthis . keys (). as Sequence (). associate Ġ{ Ġkey Ġ-> ĊĠĠĠĠĠĠĠ ĠPair ( key , Ġthis . safe GetString ( key )) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠAttributes . encode Json (): ĠJSONObject Ġ{ ĊĠĠĠ Ġthis . map Ġ{ Ġ(_, Ġvalue ) Ġ-> ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") Ġval ĠnewValue Ġ= Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠMap < *, Ġ*> Ġ-> Ġ( value Ġas ĠAttributes ). encode Json () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠCollection < *> Ġ-> Ġorg . json . JSONArray ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠnewValue ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġorg . json . JSONObject ( this ) Ċ } Ċ Ċ fun ĠJSONObject . to Attributes Hash (): ĠAttributes Ġ{ ĊĠĠĠ Ġreturn Ġthis . keys (). as Sequence (). map Ġ{ Ġkey Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġget ( key ) ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġis ĠJSONObject ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( key , Ġvalue . to Attributes Hash ()) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}. associate Ġ{ Ġit Ġ} Ċ } Ċ