package Ġio Ċ Ċ import Ġjava . io . Serializable Ċ Ċ data Ġclass ĠSerializable Model ( val Ġstates : ĠList < Serializable State >, Ġval Ġedges : ĠList < Serializable Edge >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġagents : ĠList < Serializable Agent >, Ġval Ġprops : ĠList < Serializable Prop >) Ġ: ĠSerializable Ċ Ċ data Ġclass ĠSerializable State ( val Ġname : ĠString , Ġval Ġx Pos : ĠDouble , Ġval Ġy Pos : ĠDouble , Ġval Ġprops : ĠList < Serializable Prop >): ĠSerializable Ċ Ċ data Ġclass ĠSerializable Edge ( val Ġparent 1 : ĠSerializable State , Ġval Ġparent 2 : ĠSerializable State , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġid : ĠString , Ġval Ġagents : ĠList < Serializable Agent >): ĠSerializable Ċ Ċ data Ġclass ĠSerializable Agent ( val Ġname : ĠString , Ġval Ġis Selected : ĠBoolean ): ĠSerializable Ċ Ċ data Ġclass ĠSerializable Prop ( val Ġprop String : ĠString , Ġval Ġis Selected : ĠBoolean ): ĠSerializable