package Ġcom . an tour age . we aver lib . other . statistic Ċ Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* Ċ Ċ internal Ġclass ĠStop watch Ġ{ ĊĠĠĠ Ġprivate Ġvar ĠstartTime : ĠLong Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġstop Time : ĠLong Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġrunning Ġ= Ġfalse ĊĠĠĠ Ġprivate Ġvar Ġcurrent Duration : ĠLong Ġ= Ġ 0 ĊĊĠĠĠ Ġfun Ġstart () Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . current Duration Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġthis . startTime Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠ Ġthis . running Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġresume () Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . startTime Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠ Ġthis . running Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĊĊĠĠĠ Ġfun Ġstop If Running () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( running ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . stop Time Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . running Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . current Duration Ġ+= Ġget Elapsed Time () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Elapsed Time (): ĠLong Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( running ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . currentTimeMillis () Ġ- ĠstartTime ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġstop Time Ġ- ĠstartTime ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġoutput Fmt Ġ= ĠSimpleDateFormat (" HH : mm : ss ", ĠLocale . EN GL ISH ) ĊĠĠĠĠĠĠĠ Ġoutput Fmt . time Zone Ġ= ĠTime Zone . getTime Zone (" UTC ") ĊĊĠĠĠĠĠĠĠ Ġval Ġt Ġ= Ġcurrent Duration ĊĠĠĠĠĠĠĠ Ġreturn Ġoutput Fmt . format ( t ) ĊĠĠĠ Ġ} Ċ }