package Ġcom . google . cloud b owl Ċ Ċ import Ġjava . util . Random Ċ import Ġjavax . ws . rs . Cons umes Ċ import Ġjavax . ws . rs . POST Ċ import Ġjavax . ws . rs . Path Ċ import Ġjavax . ws . rs . Produces Ċ import Ġjavax . ws . rs . core . MediaType Ċ Ċ @ Path ("/ { s : .* }") Ċ class ĠApp Ġ{ ĊĠĠĠ Ġdata Ġclass ĠSelf ( val Ġhref : ĠString ) ĊĊĠĠĠ Ġdata Ġclass ĠLinks ( val Ġself : ĠSelf ) ĊĊĠĠĠ Ġdata Ġclass ĠPlayer State ( val Ġx : ĠInt , Ġval Ġy : ĠInt , Ġval Ġdirection : ĠString , Ġval Ġwas Hit : ĠBoolean , Ġval Ġscore : ĠInt ) ĊĊĠĠĠ Ġdata Ġclass ĠA rena ( val Ġdims : ĠList < Int >, Ġval Ġstate : ĠMap < String , ĠPlayer State >) ĊĊĠĠĠ Ġdata Ġclass ĠA rena Update ( val Ġ_ links : ĠLinks , Ġval Ġarena : ĠA rena ) ĊĊĠĠĠ Ġ@ POST ĊĠĠĠ Ġ@ Produces ( MediaType . TEXT _ PLAIN ) ĊĠĠĠ Ġ@ Cons umes ( MediaType . APPLICATION _ JSON ) ĊĠĠĠ Ġfun Ġindex ( arena Update : ĠA rena Update ?): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln ( arena Update ) ĊĠĠĠĠĠĠĠ Ġval Ġcommands Ġ= ĠarrayOf (" F ", Ġ" R ", Ġ" L ", Ġ" T ") ĊĠĠĠĠĠĠĠ Ġval Ġi Ġ= ĠRandom (). nextInt ( 4 ) ĊĠĠĠĠĠĠĠ Ġreturn Ġcommands [ i ] ĊĠĠĠ Ġ} Ċ } Ċ