package Ġmain Ċ Ċ import Ġjava . io . File Ċ import Ġjava . net . URL Ċ import Ġjava . net . URL Encoder Ċ Ċ fun Ġmain () Ċ { ĊĠĠĠ Ġval Ġfile Ġ= ĠFile (" csv Ġfile ") ĊĊĠĠĠ Ġtrust All Ssl () ĊĠĠĠ Ġfile . forEach Line Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlocation Ġ= Ġget Location ( it ) ĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠgetState Ac ronym ( getState ( location )) ĊĠĠĠĠĠĠĠ Ġval Ġcity Ġ= Ġget City ( location ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( city . isNotEmpty () Ġ&& Ġlocation . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠnumberOf R aces Ġ= Ġget NumberOf R aces ( city , Ġstate ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( numberOf R aces ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread . sleep ( 1 5 0 0 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ("- 1 ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ // Ġgets Ġlist Ġof Ġr aces Ġon Ġrunning Ġin Ġthe Ġusa Ċ fun Ġget NumberOf R aces ( city Name : ĠString , Ġstate Abbre viation : ĠString ?) Ġ: ĠInt Ġ{ ĊĠĠĠ Ġvar Ġurl Ġ= Ġ" https :// running int he usa . com / race / list /% s -% s / all - dates " ĊĠĠĠ Ġvar Ġurl With State And City Ġ= Ġurl . format ( city Name . toLowerCase (). replace (" Ġ", Ġ"% 2 0 "), Ġstate Abbre viation ?. toLowerCase ()) ĊĊĠĠĠ Ġvar Ġresult Ġ= ĠURL ( url With State And City ). read Text () ĊĊĠĠĠ Ġval Ġregex Ġ= ĠRegex (""" 1 Ġto Ġ\ d * Ġof Ġ(\ d *) """) ĊĠĠĠ Ġval Ġmatch Result Ġ= Ġregex . find ( result ) Ġ?: Ġreturn Ġ 0 ĊĊĠĠĠ Ġvar Ġstring Value Ġ= Ġmatch Result ?. groups ?. get ( 1 )?. value !! ĊĠĠĠ Ġreturn ĠInteger . parseInt ( stringValue ) Ċ }