package Ġic fp 2 0 1 9 . analy zers Ċ Ċ import Ġic fp 2 0 1 9 . core . Analyzer Ċ import Ġic fp 2 0 1 9 . model . Board Cell Ċ import Ġic fp 2 0 1 9 . model . GameState Ċ import Ġic fp 2 0 1 9 . model . Robot Id Ċ import Ġorg . j gr ap ht . alg . interfaces . Short est Path Algorithm Ċ import Ġorg . j gr ap ht . alg . short est path . Di jk stra Short est Path Ċ import Ġorg . j gr ap ht . graph . Default Edge Ċ Ċ object ĠShort est Path Using Di jk stra Ġ: ĠAnalyzer < Short est Path Algorithm < Board Cell , ĠDefault Edge >> Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġanalyze ( initialState : ĠGameState ): Ġ( robot Id : ĠRobot Id , Ġstate : ĠGameState ) Ġ-> ĠShort est Path Algorithm < Board Cell , ĠDefault Edge > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcomplete Graph Ġ= ĠBoard Cells Graph Analyzer . analyze ( initialState ) ĊĠĠĠĠĠĠĠ Ġreturn Ġ{ Ġrobot Id , Ġgraph State Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgraph Ġ= Ġcomplete Graph ( robot Id , Ġgraph State ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠD ijk stra Short est Path ( graph ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ