package Ġcom . k ne el awk . mod pack attribut or . data . manifest Ċ Ċ import Ġcom . k ne el awk . mod pack attribut or . data . req JsonObject Ċ import Ġcom . k ne el awk . mod pack attribut or . data . req Long Ċ import Ġcom . k ne el awk . mod pack attribut or . data . req String Ċ import Ġt orn ad of x .* Ċ import Ġjavax . json . JsonObject Ċ Ċ data Ġclass ĠManifest Json ( ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġm inecraft : ĠMinecraft Json Ġ= ĠMinecraft Json (), ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġmanifest Type : ĠString Ġ= Ġ" minecraft Mod pack ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġmanifest Version : ĠLong Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġname : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġversion : ĠString Ġ= Ġ" 0 . 0 . 1 ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġauthor : ĠString Ġ= Ġ" Unknown ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġproject ID : ĠLong ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġfiles : ĠList < File Json > Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġoverrides : ĠString Ġ= Ġ" overrides ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġadditional Java Args : ĠString ? Ġ= Ġnull Ċ ) Ġ: ĠJson Model , ĠManifest Data Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠtoJSON ( json : ĠJson Builder ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" minecraft ", Ġm inecraft ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" manifest Type ", Ġmanifest Type ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" manifest Version ", Ġmanifest Version ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" name ", Ġname ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" version ", Ġversion ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" author ", Ġauthor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproject ID ?. let Ġ{ Ġadd (" project ID ", Ġit ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" files ", Ġfiles ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" overrides ", Ġoverrides ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Java Args ?. let Ġ{ Ġadd (" additional Java Args ", Ġit ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Model ( json : ĠJsonObject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm inecraft Ġ= Ġreq JsonObject (" minecraft "). to Model () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanifest Type Ġ= Ġstring (" manifest Type ") Ġ?: Ġ" minecraft Mod pack " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanifest Version Ġ= Ġlong (" manifest Version ") Ġ?: Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġreq String (" name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġversion Ġ= Ġstring (" version ") Ġ?: Ġ" 0 . 0 . 1 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġauthor Ġ= Ġstring (" author ") Ġ?: Ġ" Unknown " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproject ID Ġ= Ġlong (" project ID ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfiles Ġ= Ġjson Array (" files ") ?. to Model () Ġ?: Ġempty List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverrides Ġ= Ġstring (" overrides ") Ġ?: Ġ" overrides " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Java Args Ġ= Ġstring (" additional Java Args ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠFile Json ( ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġproject ID : ĠLong Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġfile ID : ĠLong Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġrequired : ĠBoolean Ġ= Ġtrue Ċ ) Ġ: ĠJson Model , ĠFile Data Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠtoJSON ( json : ĠJson Builder ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" project ID ", Ġproject ID ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" file ID ", Ġfile ID ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" required ", Ġrequired ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Model ( json : ĠJsonObject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproject ID Ġ= Ġreq Long (" project ID ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile ID Ġ= Ġreq Long (" file ID ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequired Ġ= Ġboolean (" required ") Ġ?: Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠMinecraft Json ( ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġversion : ĠString Ġ= Ġ" 1 . 0 ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġmod Lo aders : ĠList < Mod Loader Json > Ġ= Ġempty List () Ċ ) Ġ: ĠJson Model , ĠMinecraft Data Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠtoJSON ( json : ĠJson Builder ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" version ", Ġversion ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" mod Lo aders ", Ġmod Lo aders . toJSON ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Model ( json : ĠJsonObject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġversion Ġ= Ġreq String (" version ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmod Lo aders Ġ= Ġjson Array (" mod Lo aders ") ?. to Model () Ġ?: Ġempty List () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠMod Loader Json ( ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġid : ĠString Ġ= Ġ" unknown ", ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġprimary : ĠBoolean Ġ= Ġtrue Ċ ) Ġ: ĠJson Model , ĠMod Loader Data Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠtoJSON ( json : ĠJson Builder ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" id ", Ġid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd (" primary ", Ġprimary ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Model ( json : ĠJsonObject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( json ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġreq String (" id ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprimary Ġ= Ġboolean (" primary ") Ġ?: Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ