SE ELSE erro de sintaxe no arquivo em lotes?

Sou iniciante na gravação de arquivos em lotes e estou escrevendo um script que abre aleatoriamente uma das três páginas da web e faz um loop após um atraso. Recebo constantemente um erro de sintaxe quando o executo, mas não consigo identificar onde ele 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

Ajuda seria muito apreciada, e obrigado antecipadamente!

questionAnswers(2)

yourAnswerToTheQuestion