package Ġcom . m are k kw iec ien . sap per Ċ Ċ class ĠSimple Console Display Ġ: ĠDisplay Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġgame Over ( x : ĠInt , Ġy : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" k ab oom ! Ġat Ġ$ x , Ġ$ y Ġthere Ġwas Ġa Ġmine Ġand Ġnow ĠYou Ġare Ġdead Ġ:) ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġne ighbours ( x : ĠInt , Ġy : ĠInt , Ġne ighbours : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" for Ġelement Ġat Ġ$ x , Ġ$ y Ġthere Ġare Ġ$ ne ighbours Ġmine ( s ) Ġnearby ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠSimple Console UI Controller Ġ{ ĊĠĠĠ Ġprivate Ġval Ġdisplay Ġ= ĠSimple Console Display () ĊĠĠĠ Ġprivate Ġvar Ġsap per Game Ġ= ĠS apper Game ( 5 , Ġ 5 , Ġ 5 , Ġdisplay ) ĊĠĠĠ Ġprivate Ġvar Ġplaying Ġ= Ġtrue ĊĊĠĠĠ Ġfun Ġrun () Ġ{ ĊĠĠĠĠĠĠĠ Ġwhile Ġ( playing ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparse Command ( sap per Game ). execute () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnew Game ( size X : ĠInt , Ġsize Y : ĠInt , Ġmine Number : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsap per Game Ġ= ĠS apper Game ( size X , Ġsize Y , Ġmine Number , Ġdisplay ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġstop () Ġ{ ĊĠĠĠĠĠĠĠ Ġplaying Ġ= Ġfalse ĊĠĠĠ Ġ} Ċ } Ċ