package Ġro . cn mv . q ube . ft c . aut onomy Ċ Ċ import Ġcom . qual comm . robot core . event loop . op mode . Aut onomous Ċ import Ġcom . qual comm . robot core . util . Elapsed Time Ċ import Ġro . cn mv . q ube . ft c . hardware . Hardware Ċ import Ġro . cn mv . q ube . ft c . hardware . sensors . T FO D Ċ import Ġro . cn mv . q ube . ft c . wait Millis Ċ Ċ @ Aut onomous Ċ class ĠAut onomy Red Cr ater Ġ: ĠAut onomy Base () Ġ{ ĊĠĠĠ Ġval Ġstr afe Dist Ġ= Ġ 1 1 . 0 ĊĠĠĠ Ġval Ġtimer Ġ= ĠE lapsed Time () ĊĊĠĠĠ Ġoverride Ġfun Ġpre Init () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO : Ġobject Ġdetection ĊĠĠĠĠĠĠĠ Ġgold Position Ġ= ĠT FO D . Positions . RIGHT ĊĠĠĠĠĠĠĠ Ġval Ġm ata Ġ= Ġtf od . is Gold () ĊĠĠĠĠĠĠĠ Ġhw . marker . marker . position Ġ= Ġ 0 . 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġpre Init Loop () Ġ{ ĊĠĠĠĠĠĠĠ Ġtelemetry . addData (" Gold Pos ", Ġgold Position ) ĊĠĠĠĠĠĠĠ Ġtelemetry . add Line (" READY ") ĊĠĠĠĠĠĠĠ Ġtelemetry . update () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠHardware . run () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO : Ġde - latch ĊĊĠĠĠĠĠĠĠ Ġtimer . reset () ĊĊĠĠĠĠĠĠĠ Ġremove Gold () ĊĠĠĠĠĠĠĠ Ġtf od . stop () ĊĊĠĠĠĠĠĠĠ Ġfollow Trajectory ( array ListOf ( Pair (- 9 0 . 0 , Ġ- 1 1 5 . 0 ), ĠPair ( 0 . 0 , Ġ- 4 5 . 0 ))) ĊĠĠĠĠĠĠĠ Ġstr afe Ġ( 1 0 0 0 , Ġ- 4 5 . 0 , Ġstr afe Speed ) ĊĠĠĠĠĠĠĠ Ġfollow Trajectory ( array ListOf ( Pair (- 1 2 0 . 0 , Ġ- 4 5 . 0 ))) ĊĠĠĠĠĠĠĠ Ġstr afe ( 1 0 0 0 , Ġ- 4 5 . 0 , Ġstr afe Speed ) ĊĠĠĠĠĠĠĠ Ġfollow Trajectory ( array ListOf ( Pair ( 0 . 0 , Ġ 4 5 . 0 ))) ĊĠĠĠĠĠĠĠ Ġdrop Marker () ĊĠĠĠĠĠĠĠ Ġwait Millis ( 5 0 0 ) ĊĊĠĠĠĠĠĠĠ Ġfollow Trajectory ( array ListOf ( Pair ( 0 . 0 , Ġ- 4 5 . 0 ))) ĊĠĠĠĠĠĠĠ Ġstr afe ( 1 0 0 0 , Ġ- 4 5 . 0 , Ġstr afe Speed ) ĊĠĠĠĠĠĠĠ Ġfollow Trajectory ( array ListOf ( Pair ( 1 6 0 . 0 , Ġ- 4 5 . 0 ))) ĊĊĠĠĠĠĠĠĠ Ġtelemetry . addData (" Elapsed Ġtime ", Ġtimer . seconds ()) ĊĠĠĠĠĠĠĠ Ġtelemetry . update () ĊĠĠĠĠĠĠĠ Ġwait Millis ( 1 0 0 0 ); ĊĠĠĠ Ġ} Ċ } Ċ