El codigo esta perfecto!. Es muy importante ser capaz de resolver problemas por sí mismo, y eso es lo que has hecho.
Entiendes que el error estaba en el último }. Esto significa que el código se estaba ejecutando una vez más de lo que debía. Esto es un error común, pero es importante ser capaz de identificarlo y corregirlo.
Todo el mundo los hace, incluso los programadores más experimentados. Lo importante es aprender de tus errores y seguir practicando.
No olvides de cerrar el tema como solucionado.
Saludos"