Event: Round 6: Upper, John - Toivo Saastamoinen
Site: https://lichess.org/broadcast/lichess-meetup-toronto-2025/round-6/q92FaaUn/MzBsLb5k
Date: 2025-10-20
White: Upper, John
WhiteElo: 1747
Black: Toivo Saastamoinen
Result: 1-0
ECO: A05
Opening: Zukertort Opening: Quiet System
Variant: Standard
TimeControl: 3+2

1. Nf3 { [%eval 0.1] [%clk 0:03:01] } 1... Nf6 { [%eval 0.18] [%clk 0:03:03] } 2. e3 { [%eval 0.01] [%clk 0:03:00] } 2... g6 { [%eval 0.24] [%clk 0:03:05] } 3. b3 { [%eval -0.12] [%clk 0:03:01] } 3... Bg7 { [%eval -0.04] [%clk 0:03:05] } 4. Bb2 { [%eval -0.11] [%clk 0:03:02] } 4... O-O { [%eval 0.14] [%clk 0:03:05] } 5. c4 { [%eval -0.08] [%clk 0:02:59] } 5... d6 { [%eval 0.0] [%clk 0:03:06] } 6. d4 { [%eval 0.0] [%clk 0:02:58] } 6... Nbd7 { [%eval 0.11] [%clk 0:03:07] } 7. Nc3 { [%eval 0.18] [%clk 0:02:52] } 7... Re8 { [%eval 0.25] [%clk 0:03:08] } 8. Be2 { [%eval 0.13] [%clk 0:02:51] } 8... e5 { [%eval 0.15] [%clk 0:03:08] } 9. h3 { [%eval -0.01] [%clk 0:02:51] } 9... e4 { [%eval 0.21] [%clk 0:03:03] } 10. Nd2 { [%eval 0.17] [%clk 0:02:51] } 10... c6 { [%eval 0.26] [%clk 0:02:57] } 11. Qc2 { [%eval 0.23] [%clk 0:02:44] } 11... d5?! { [%eval 0.8] } { Inaccuracy. Nf8 was best. } { [%clk 0:02:58] } 12. O-O-O? { [%eval -0.46] } { Mistake. cxd5 was best. } { [%clk 0:02:26] } 12... a5 { [%eval -0.57] [%clk 0:02:51] } 13. g4 { [%eval -0.5] [%clk 0:02:24] } 13... Nb6 { [%eval -0.47] [%clk 0:02:39] } 14. c5 { [%eval -0.7] [%clk 0:02:19] } 14... Nbd7 { [%eval -0.71] [%clk 0:02:34] } 15. g5 { [%eval -0.67] [%clk 0:02:03] } 15... Nh5 { [%eval -0.66] [%clk 0:02:27] } 16. h4 { [%eval -0.62] [%clk 0:01:46] } 16... f6? { [%eval 0.66] } { Mistake. b6 was best. } { [%clk 0:02:10] } 17. Bxh5 { [%eval 0.56] [%clk 0:01:42] } 17... gxh5 { [%eval 0.37] [%clk 0:02:10] } 18. gxf6?? { [%eval -2.02] } { Blunder. Rdg1 was best. } { [%clk 0:01:37] } 18... Nxf6 { [%eval -1.91] [%clk 0:02:05] } 19. Rdg1 { [%eval -1.72] [%clk 0:01:36] } 19... Ng4 { [%eval -2.06] [%clk 0:01:59] } 20. Nf1 { [%eval -1.99] [%clk 0:01:36] } 20... Kh8 { [%eval -1.92] [%clk 0:01:56] } 21. Ng3 { [%eval -1.9] [%clk 0:01:33] } 21... Rf8 { [%eval -2.07] [%clk 0:01:47] } 22. Nd1 { [%eval -1.93] [%clk 0:01:34] } 22... Bf5?? { [%eval 1.77] } { Blunder. Nf6 was best. } { [%clk 0:01:40] } 23. Nxh5?? { [%eval -0.36] } { Blunder. f3 was best. } { [%clk 0:01:25] } 23... Bh6 { [%eval -0.36] [%clk 0:01:29] } 24. Qe2 { [%eval -0.55] [%clk 0:01:12] } 24... a4?? { [%eval 2.48] } { Blunder. Rg8 was best. } { [%clk 0:01:15] } 25. Rxg4 { [%eval 2.32] [%clk 0:01:05] } 25... axb3 { [%eval 2.24] [%clk 0:01:15] } 26. axb3 { [%eval 2.26] [%clk 0:00:58] } 26... Qa5?! { [%eval 3.12] } { Inaccuracy. Bxg4 was best. } { [%clk 0:01:14] } 27. Rg3 { [%eval 3.36] [%clk 0:00:38] } 27... Qc7 { [%eval 3.61] [%clk 0:00:53] } 28. Rhg1 { [%eval 3.46] [%clk 0:00:39] } 28... Rg8? { [%eval 5.83] } { Mistake. b5 was best. } { [%clk 0:00:52] } 29. Rxg8+ { [%eval 5.86] [%clk 0:00:37] } 29... Rxg8 { [%eval 6.01] [%clk 0:00:52] } 30. Rxg8+ { [%eval 6.22] [%clk 0:00:37] } 30... Kxg8 { [%eval 6.07] [%clk 0:00:52] } 31. Nf6+ { [%eval 5.74] [%clk 0:00:36] } 31... Kh8 { [%eval 7.03] [%clk 0:00:50] } 32. Qh5 { [%eval 6.79] [%clk 0:00:34] } 32... Bg6 { [%eval 7.42] [%clk 0:00:44] } 33. Qxh6 { [%eval 7.27] [%clk 0:00:35] } 33... Qf7 { [%eval 7.47] [%clk 0:00:37] } 34. Qg5 { [%eval 6.87] [%clk 0:00:32] } 34... Qg7 { [%eval 8.6] [%clk 0:00:36] } 35. Kd2 { [%eval 7.78] [%clk 0:00:30] } 35... h6 { [%eval 8.52] [%clk 0:00:37] } 36. Qe5 { [%eval 8.3] [%clk 0:00:31] } 36... Bh5? { [%eval #3] } { Checkmate is now unavoidable. Bf7 was best. } { [%clk 0:00:00] } 1-0