SI ELSE error de sintaxis dentro del archivo por lotes?

Soy nuevo en la escritura de archivos por lotes y estoy escribiendo un script que abre aleatoriamente una de las tres páginas web y bucles después de un retraso. Constantemente recibo un error de sintaxis cuando lo ejecuto, pero no puedo determinar dónde está.

:main
@echo on
set location=""
set /A num=%random% %% 10 
if /A"%num%"=="0"
(
    set location="yahoo.com"
) 
else if /A"%num%"=="1"
(
    set location="msn.com"
)
else
(
    set location="google.com"
)

start "Chrome" chrome --new-window %location%
timeout /t 30 /nobreak >NUL
goto main

La ayuda sería muy apreciada, y gracias de antemano!

Respuestas a la pregunta(2)

Su respuesta a la pregunta