package Ġor iente ering . data Ċ Ċ import Ġor iente ering . main . format Ċ Ċ /** Ċ Ġ* ĠRoute Ġdata Ġof Ġa Ġvehicle . Ċ Ġ* Ċ Ġ* Ġ@ param Ġvertex Path Ġsequence Ġof Ġvertices . Ċ Ġ* Ġ@ param Ġtarget Path Ġsequence Ġof Ġtargets . Ċ Ġ* Ġ@ param Ġscore Ġsum Ġof Ġscores Ġof Ġtargets Ġvisited Ġby Ġroute . Ċ Ġ* Ġ@ param Ġlength Ġsum Ġof Ġlengths Ġof Ġedges Ġon Ġroute . Ċ Ġ* Ġ@ param Ġreduced Cost Ġsum Ġof Ġreduced Ġcosts Ġof Ġtargets Ġvisited Ġby Ġroute . Ċ Ġ*/ Ċ data Ġclass ĠRoute ( ĊĠĠĠ Ġval Ġvertex Path : ĠList < Int >, ĊĠĠĠ Ġval Ġtarget Path : ĠList < Int >, ĊĠĠĠ Ġval Ġscore : ĠDouble , ĊĠĠĠ Ġval Ġlength : ĠDouble , ĊĠĠĠ Ġval Ġreduced Cost : ĠDouble Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠ Ġother Ġ!= Ġnull Ġ&& Ġ( other Ġis ĠRoute ) Ġ&& Ġvertex Path Ġ== Ġother . vertex Path ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ= Ġvertex Path . hashCode () ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġ" vertex Path =$ vertex Path ", ĊĠĠĠĠĠĠĠ Ġ" target Path =$ target Path ", ĊĠĠĠĠĠĠĠ Ġ" score =${ score . format ( 2 )} ", ĊĠĠĠĠĠĠĠ Ġ" length =${ length . format ( 2 )} ", ĊĠĠĠĠĠĠĠ Ġ" reduced Cost =${ reduced Cost . format ( 2 )}" ĊĠĠĠ Ġ). join ToString (", Ġ", Ġ" Route (", Ġ") ") Ċ } Ċ