Aunque me aparece este error, todos los paréntesis, llaves y puntos y comas estan bien. La verdad No se pero no creo que sea por eso.
es una lastima que el compilador no se ponga de acuerdo contigo... pero te digo algo, el compilador es muy raro que se dañe (y cuando se daña, notarás el error super complejo), sus errores son verdaderos más allá de lo que tu creas o no XD
a primera vista, si te sobra un '}' en la linea 116 como el compilador indica... ponte poco a poco a revisar el programa y te doy un consejo, cuando crees una función, condiciona u otro que lleve cualquiera de (){}[] ""(comillas dobles) ''(comillas simples) crea la de abrir y cerrar de una vez... despues escribes todo lo que vas a colocar adentro así evitas que te sobren o falten