package Ġspace . nab oo . memory . game Ċ Ċ import Ġspace . nab oo . memory . image . Image Spec Ċ import Ġspace . nab oo . memory . models . Board Ċ import Ġspace . nab oo . memory . models . images . Image Loader Impl Ċ import Ġspace . nab oo . memory . serializer . Storage Ċ Ċ interface ĠGame Contract Ġ{ ĊĊĠĠĠ Ġinterface ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġdisplay Board ( board : ĠBoard ) ĊĠĠĠĠĠĠĠ Ġfun Ġdisplay Error ( error : ĠThrowable ) ĊĠĠĠĠĠĠĠ Ġfun Ġget Card Back Drawable () Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġfun Ġshow Loading () ĊĠĠĠĠĠĠĠ Ġfun ĠgetImage Loader (): ĠImage Loader Impl ĊĠĠĠĠĠĠĠ Ġfun Ġflip ( position : ĠInt , Ġimage Spec : ĠImage Spec , Ġend Action : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ) ĊĠĠĠĠĠĠĠ Ġfun Ġdisplay Moves ( moves : ĠInt ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠPres enter Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġrestart Game ( view Width : ĠInt , Ġview Height : ĠInt ) ĊĠĠĠĠĠĠĠ Ġfun Ġon Card Clicked ( position : ĠInt ) ĊĠĠĠĠĠĠĠ Ġfun Ġrestore Game ( storage : ĠStorage , Ġview Width : ĠInt , Ġview Height : ĠInt ) ĊĠĠĠĠĠĠĠ Ġfun Ġsave State ( storage : ĠStorage ) ĊĠĠĠĠĠĠĠ Ġfun Ġdestroy () ĊĠĠĠ Ġ} Ċ Ċ } Ċ