From 6ac5a582db630b5c8ebfa1eacf9978c8afcd09ab Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 6 Oct 2026 18:23:20 +0000 Subject: [PATCH] Add app source for F-Droid release (v1.0.43) Adds the full Android source tree with unit tests, fastlane store metadata and the Gradle wrapper. The archive shipped without gradle-wrapper.jar, so the official Gradle 9.7.1 wrapper jar is included to make ./gradlew work from a fresh clone. .gitignore now also excludes build output and keystores. README gains build instructions and an updated structure tree. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_015g6ECVSKcBG8CJPrqC3G5o --- .gitignore | 16 +- README.md | 15 + app/build.gradle.kts | 80 + app/proguard-rules.pro | 4 + app/src/main/AndroidManifest.xml | 72 + app/src/main/assets/openings/courses.tsv | 24 + app/src/main/assets/openings/explorer.txt | 32384 ++++++++++++++++ app/src/main/assets/openings/names.tsv | 3815 ++ app/src/main/assets/puzzles.json | 1 + .../cc/skysparkle/matewave/MainActivity.kt | 357 + .../cc/skysparkle/matewave/MatewaveApp.kt | 23 + .../java/cc/skysparkle/matewave/ai/ChessAI.kt | 328 + .../skysparkle/matewave/audio/SoundManager.kt | 320 + .../cc/skysparkle/matewave/clock/GameClock.kt | 126 + .../skysparkle/matewave/clock/TimeControl.kt | 28 + .../matewave/data/DeviceIdentity.kt | 25 + .../skysparkle/matewave/data/GameSaveStore.kt | 102 + .../skysparkle/matewave/data/ProfileStore.kt | 253 + .../cc/skysparkle/matewave/engine/Board.kt | 121 + .../skysparkle/matewave/engine/ChessEngine.kt | 374 + .../cc/skysparkle/matewave/engine/Material.kt | 66 + .../cc/skysparkle/matewave/engine/Move.kt | 44 + .../cc/skysparkle/matewave/engine/Notation.kt | 96 + .../cc/skysparkle/matewave/engine/Piece.kt | 53 + .../matewave/network/AppPermissions.kt | 24 + .../matewave/network/BatteryOptimization.kt | 30 + .../matewave/network/BleTransport.kt | 1243 + .../matewave/network/ConnectionTransport.kt | 191 + .../matewave/network/DualHostTransport.kt | 102 + .../skysparkle/matewave/network/Heartbeat.kt | 86 + .../matewave/network/LanTransport.kt | 663 + .../matewave/network/MessageDispatcher.kt | 25 + .../skysparkle/matewave/network/NetworkLog.kt | 53 + .../matewave/network/NetworkMetrics.kt | 58 + .../matewave/network/NetworkRequirements.kt | 60 + .../skysparkle/matewave/network/Transports.kt | 33 + .../matewave/openings/OpeningBook.kt | 96 + .../matewave/openings/OpeningCourses.kt | 230 + .../matewave/presence/LocalPresence.kt | 178 + .../matewave/presence/PresenceHub.kt | 37 + .../matewave/presence/PresenceService.kt | 94 + .../matewave/presence/PresenceSettings.kt | 21 + .../cc/skysparkle/matewave/puzzles/Puzzle.kt | 96 + .../matewave/security/DeviceKeys.kt | 161 + .../matewave/security/KnownPeers.kt | 95 + .../matewave/security/SessionAuth.kt | 108 + .../skysparkle/matewave/settings/AppLinks.kt | 19 + .../matewave/settings/BoardAppearance.kt | 50 + .../matewave/settings/FeedbackSettings.kt | 16 + .../skysparkle/matewave/settings/Haptics.kt | 50 + .../matewave/settings/LastGameSetup.kt | 31 + .../matewave/share/ApkShareServer.kt | 128 + .../skysparkle/matewave/share/ApkSharing.kt | 22 + .../cc/skysparkle/matewave/stats/Stats.kt | 76 + .../matewave/ui/components/AppBackground.kt | 81 + .../matewave/ui/components/AppBottomBar.kt | 153 + .../matewave/ui/components/AppDialog.kt | 184 + .../matewave/ui/components/AppIcon.kt | 35 + .../ui/components/CapturedPiecesRow.kt | 57 + .../matewave/ui/components/ChatDialog.kt | 145 + .../matewave/ui/components/ChatImage.kt | 124 + .../matewave/ui/components/ChessBoardView.kt | 341 + .../matewave/ui/components/GlassUi.kt | 213 + .../matewave/ui/components/ListUi.kt | 113 + .../matewave/ui/components/MovesBar.kt | 132 + .../matewave/ui/components/PermissionGate.kt | 130 + .../matewave/ui/components/PromotionDialog.kt | 62 + .../matewave/ui/components/SetupStyle.kt | 58 + .../matewave/ui/components/TimeControlGrid.kt | 71 + .../matewave/ui/screens/AccountScreen.kt | 510 + .../matewave/ui/screens/AppearanceScreen.kt | 184 + .../matewave/ui/screens/ConnectionScreen.kt | 315 + .../matewave/ui/screens/FriendsScreen.kt | 330 + .../matewave/ui/screens/GameScreen.kt | 570 + .../matewave/ui/screens/LicensesScreen.kt | 215 + .../matewave/ui/screens/MainMenuScreen.kt | 371 + .../matewave/ui/screens/OpeningStudyScreen.kt | 301 + .../ui/screens/OpeningTrainerScreen.kt | 175 + .../matewave/ui/screens/PermissionsScreen.kt | 294 + .../matewave/ui/screens/PuzzleScreen.kt | 218 + .../matewave/ui/screens/SettingsScreen.kt | 289 + .../matewave/ui/screens/ShareApkScreen.kt | 238 + .../matewave/ui/screens/VsAiSetupScreen.kt | 164 + .../cc/skysparkle/matewave/ui/theme/Glass.kt | 39 + .../skysparkle/matewave/ui/theme/Palette.kt | 13 + .../cc/skysparkle/matewave/ui/theme/Theme.kt | 41 + .../matewave/viewmodel/GameViewModel.kt | 1445 + .../viewmodel/OpeningStudyViewModel.kt | 305 + .../drawable-nodpi/art_caro_kann_advance.webp | Bin 0 -> 17462 bytes .../art_caro_kann_classical.webp | Bin 0 -> 20938 bytes .../main/res/drawable-nodpi/art_catalan.webp | Bin 0 -> 21698 bytes .../main/res/drawable-nodpi/art_dragon.webp | Bin 0 -> 21770 bytes .../main/res/drawable-nodpi/art_dutch.webp | Bin 0 -> 25660 bytes .../main/res/drawable-nodpi/art_english.webp | Bin 0 -> 19056 bytes .../drawable-nodpi/art_french_advance.webp | Bin 0 -> 23856 bytes .../main/res/drawable-nodpi/art_grunfeld.webp | Bin 0 -> 24556 bytes .../main/res/drawable-nodpi/art_italian.webp | Bin 0 -> 26286 bytes .../res/drawable-nodpi/art_kings_gambit.webp | Bin 0 -> 22436 bytes .../res/drawable-nodpi/art_kings_indian.webp | Bin 0 -> 20066 bytes .../main/res/drawable-nodpi/art_london.webp | Bin 0 -> 24158 bytes .../main/res/drawable-nodpi/art_najdorf.webp | Bin 0 -> 16778 bytes .../res/drawable-nodpi/art_nimzo_indian.webp | Bin 0 -> 26382 bytes .../main/res/drawable-nodpi/art_petrov.webp | Bin 0 -> 21190 bytes app/src/main/res/drawable-nodpi/art_pirc.webp | Bin 0 -> 22306 bytes app/src/main/res/drawable-nodpi/art_qga.webp | Bin 0 -> 13538 bytes .../res/drawable-nodpi/art_qgd_orthodox.webp | Bin 0 -> 21358 bytes .../res/drawable-nodpi/art_ruy_lopez.webp | Bin 0 -> 21722 bytes .../res/drawable-nodpi/art_scandinavian.webp | Bin 0 -> 25836 bytes .../main/res/drawable-nodpi/art_scotch.webp | Bin 0 -> 23472 bytes app/src/main/res/drawable-nodpi/art_slav.webp | Bin 0 -> 27464 bytes .../main/res/drawable-nodpi/art_tarrasch.webp | Bin 0 -> 20104 bytes .../main/res/drawable-nodpi/art_vienna.webp | Bin 0 -> 22126 bytes app/src/main/res/drawable-nodpi/bg_forest.jpg | Bin 0 -> 233565 bytes .../res/drawable-nodpi/bg_profile_default.jpg | Bin 0 -> 29783 bytes app/src/main/res/drawable-nodpi/ic_add.png | Bin 0 -> 3117 bytes .../main/res/drawable-nodpi/ic_add_photo.png | Bin 0 -> 5304 bytes app/src/main/res/drawable-nodpi/ic_ai_app.png | Bin 0 -> 4226 bytes .../main/res/drawable-nodpi/ic_approve.png | Bin 0 -> 5080 bytes .../main/res/drawable-nodpi/ic_arrow_back.png | Bin 0 -> 3797 bytes .../res/drawable-nodpi/ic_arrow_forward.png | Bin 0 -> 3995 bytes .../drawable-nodpi/ic_background_activity.png | Bin 0 -> 7881 bytes .../res/drawable-nodpi/ic_black_colour.png | Bin 0 -> 5679 bytes .../main/res/drawable-nodpi/ic_bluetooth.png | Bin 0 -> 5521 bytes .../main/res/drawable-nodpi/ic_board_view.png | Bin 0 -> 3685 bytes app/src/main/res/drawable-nodpi/ic_book.png | Bin 0 -> 1736 bytes app/src/main/res/drawable-nodpi/ic_cancel.png | Bin 0 -> 7625 bytes app/src/main/res/drawable-nodpi/ic_chat.png | Bin 0 -> 5246 bytes .../main/res/drawable-nodpi/ic_check_box.png | Bin 0 -> 4749 bytes .../drawable-nodpi/ic_check_permission.png | Bin 0 -> 6149 bytes .../res/drawable-nodpi/ic_communication.png | Bin 0 -> 5239 bytes app/src/main/res/drawable-nodpi/ic_copy.png | Bin 0 -> 3990 bytes .../main/res/drawable-nodpi/ic_copyright.png | Bin 0 -> 5706 bytes app/src/main/res/drawable-nodpi/ic_crown.png | Bin 0 -> 2184 bytes .../res/drawable-nodpi/ic_default_avatar.png | Bin 0 -> 7475 bytes app/src/main/res/drawable-nodpi/ic_draw.png | Bin 0 -> 6483 bytes app/src/main/res/drawable-nodpi/ic_edit.png | Bin 0 -> 4482 bytes .../main/res/drawable-nodpi/ic_encrypted.png | Bin 0 -> 5116 bytes app/src/main/res/drawable-nodpi/ic_error.png | Bin 0 -> 6178 bytes .../main/res/drawable-nodpi/ic_friends.png | Bin 0 -> 7890 bytes .../res/drawable-nodpi/ic_go_settings.png | Bin 0 -> 7046 bytes app/src/main/res/drawable-nodpi/ic_hint.png | Bin 0 -> 1676 bytes app/src/main/res/drawable-nodpi/ic_home.png | Bin 0 -> 5217 bytes .../main/res/drawable-nodpi/ic_infinity.png | Bin 0 -> 6581 bytes app/src/main/res/drawable-nodpi/ic_info.png | Bin 0 -> 4116 bytes app/src/main/res/drawable-nodpi/ic_key.png | Bin 0 -> 5190 bytes .../ic_launcher_background_img.png | Bin 0 -> 18623 bytes .../res/drawable-nodpi/ic_launcher_card.jpg | Bin 0 -> 15283 bytes .../drawable-nodpi/ic_launcher_foreground.png | Bin 0 -> 26824 bytes .../main/res/drawable-nodpi/ic_license.png | Bin 0 -> 6228 bytes app/src/main/res/drawable-nodpi/ic_music.png | Bin 0 -> 3577 bytes .../res/drawable-nodpi/ic_no_encryption.png | Bin 0 -> 5844 bytes .../res/drawable-nodpi/ic_notification.png | Bin 0 -> 4592 bytes app/src/main/res/drawable-nodpi/ic_online.png | Bin 0 -> 8011 bytes .../res/drawable-nodpi/ic_permissions.png | Bin 0 -> 6401 bytes app/src/main/res/drawable-nodpi/ic_policy.png | Bin 0 -> 2214 bytes .../res/drawable-nodpi/ic_profile_photo.png | Bin 0 -> 6507 bytes app/src/main/res/drawable-nodpi/ic_puzzle.png | Bin 0 -> 5209 bytes .../main/res/drawable-nodpi/ic_quick_game.png | Bin 0 -> 5107 bytes .../res/drawable-nodpi/ic_random_colour.png | Bin 0 -> 13469 bytes app/src/main/res/drawable-nodpi/ic_repo.png | Bin 0 -> 5362 bytes app/src/main/res/drawable-nodpi/ic_review.png | Bin 0 -> 2167 bytes .../main/res/drawable-nodpi/ic_settings.png | Bin 0 -> 6188 bytes app/src/main/res/drawable-nodpi/ic_share.png | Bin 0 -> 5758 bytes .../drawable-nodpi/ic_signal_disconnected.png | Bin 0 -> 7176 bytes .../res/drawable-nodpi/ic_sound_effect.png | Bin 0 -> 5043 bytes app/src/main/res/drawable-nodpi/ic_star.png | Bin 0 -> 1830 bytes .../main/res/drawable-nodpi/ic_star_badge.png | Bin 0 -> 2367 bytes .../res/drawable-nodpi/ic_stat_background.png | Bin 0 -> 5659 bytes app/src/main/res/drawable-nodpi/ic_timer.png | Bin 0 -> 2140 bytes .../main/res/drawable-nodpi/ic_vibration.png | Bin 0 -> 3923 bytes .../res/drawable-nodpi/ic_white_colour.png | Bin 0 -> 5199 bytes app/src/main/res/drawable-nodpi/ic_wifi.png | Bin 0 -> 6654 bytes .../main/res/drawable-nodpi/ic_wifi_local.png | Bin 0 -> 6899 bytes .../main/res/drawable-nodpi/logo_knight.png | Bin 0 -> 37921 bytes .../res/drawable-nodpi/piece_black_bishop.png | Bin 0 -> 3933 bytes .../res/drawable-nodpi/piece_black_king.png | Bin 0 -> 3153 bytes .../res/drawable-nodpi/piece_black_knight.png | Bin 0 -> 3686 bytes .../res/drawable-nodpi/piece_black_pawn.png | Bin 0 -> 2394 bytes .../res/drawable-nodpi/piece_black_queen.png | Bin 0 -> 3700 bytes .../res/drawable-nodpi/piece_black_rook.png | Bin 0 -> 1978 bytes .../res/drawable-nodpi/piece_white_bishop.png | Bin 0 -> 3925 bytes .../res/drawable-nodpi/piece_white_king.png | Bin 0 -> 3116 bytes .../res/drawable-nodpi/piece_white_knight.png | Bin 0 -> 3687 bytes .../res/drawable-nodpi/piece_white_pawn.png | Bin 0 -> 2372 bytes .../res/drawable-nodpi/piece_white_queen.png | Bin 0 -> 3641 bytes .../res/drawable-nodpi/piece_white_rook.png | Bin 0 -> 1969 bytes .../res/mipmap-anydpi-v26/ic_launcher.xml | 6 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 6 + app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3832 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 4789 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2156 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2784 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 5592 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 6944 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 9503 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 11580 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 13950 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 16782 bytes app/src/main/res/raw/license_apache_2_0.txt | 202 + app/src/main/res/raw/sfx_capture.ogg | Bin 0 -> 6571 bytes app/src/main/res/raw/sfx_move.ogg | Bin 0 -> 5538 bytes app/src/main/res/raw/sfx_select.ogg | Bin 0 -> 4614 bytes app/src/main/res/values-de/strings.xml | 358 + app/src/main/res/values-ja/strings.xml | 357 + app/src/main/res/values-lt/strings.xml | 360 + app/src/main/res/values-ru/strings.xml | 366 + app/src/main/res/values-zh/strings.xml | 357 + app/src/main/res/values/strings.xml | 358 + .../main/res/xml/data_extraction_rules.xml | 15 + app/src/main/res/xml/file_paths.xml | 4 + .../main/res/xml/network_security_config.xml | 6 + .../cc/skysparkle/matewave/ChessAITest.kt | 75 + .../cc/skysparkle/matewave/ChessEngineTest.kt | 78 + .../cc/skysparkle/matewave/GameMessageTest.kt | 32 + .../cc/skysparkle/matewave/MaterialTest.kt | 52 + .../cc/skysparkle/matewave/NotationTest.kt | 60 + .../skysparkle/matewave/OpeningCoursesTest.kt | 40 + .../cc/skysparkle/matewave/OpeningSrsTest.kt | 148 + .../cc/skysparkle/matewave/PuzzleDataTest.kt | 42 + .../cc/skysparkle/matewave/SessionAuthTest.kt | 49 + build.gradle.kts | 4 + .../metadata/android/en-US/changelogs/1.txt | 1 + .../android/en-US/full_description.txt | 38 + .../metadata/android/en-US/images/icon.png | Bin 0 -> 39942 bytes .../en-US/images/phoneScreenshots/1.png | Bin 0 -> 244857 bytes .../en-US/images/phoneScreenshots/2.png | Bin 0 -> 392125 bytes .../en-US/images/phoneScreenshots/3.png | Bin 0 -> 334620 bytes .../en-US/images/phoneScreenshots/4.png | Bin 0 -> 323814 bytes .../en-US/images/phoneScreenshots/5.png | Bin 0 -> 346636 bytes .../android/en-US/short_description.txt | 1 + fastlane/metadata/android/en-US/title.txt | 1 + .../metadata/android/ru-RU/changelogs/1.txt | 1 + .../android/ru-RU/full_description.txt | 38 + .../android/ru-RU/short_description.txt | 1 + fastlane/metadata/android/ru-RU/title.txt | 1 + gradle.properties | 8 + gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes gradle/wrapper/gradle-wrapper.properties | 5 + gradlew | 242 + gradlew.bat | 92 + settings.gradle.kts | 17 + tools/sfx/generate_sfx.py | 121 + 242 files changed, 54260 insertions(+), 1 deletion(-) create mode 100644 app/build.gradle.kts create mode 100644 app/proguard-rules.pro create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/assets/openings/courses.tsv create mode 100644 app/src/main/assets/openings/explorer.txt create mode 100644 app/src/main/assets/openings/names.tsv create mode 100644 app/src/main/assets/puzzles.json create mode 100644 app/src/main/java/cc/skysparkle/matewave/MainActivity.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/MatewaveApp.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ai/ChessAI.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/audio/SoundManager.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/clock/GameClock.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/clock/TimeControl.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/data/DeviceIdentity.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/data/GameSaveStore.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/data/ProfileStore.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/Board.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/ChessEngine.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/Material.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/Move.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/Notation.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/engine/Piece.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/AppPermissions.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/BatteryOptimization.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/BleTransport.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/ConnectionTransport.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/DualHostTransport.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/Heartbeat.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/LanTransport.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/MessageDispatcher.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/NetworkLog.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/NetworkMetrics.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/NetworkRequirements.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/network/Transports.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/openings/OpeningBook.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/openings/OpeningCourses.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/presence/LocalPresence.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/presence/PresenceHub.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/presence/PresenceService.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/presence/PresenceSettings.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/puzzles/Puzzle.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/security/DeviceKeys.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/security/KnownPeers.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/security/SessionAuth.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/settings/AppLinks.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/settings/BoardAppearance.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/settings/FeedbackSettings.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/settings/Haptics.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/settings/LastGameSetup.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/share/ApkShareServer.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/share/ApkSharing.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/stats/Stats.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/AppBackground.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/AppBottomBar.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/AppDialog.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/AppIcon.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/CapturedPiecesRow.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/ChatDialog.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/ChatImage.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/ChessBoardView.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/GlassUi.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/ListUi.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/MovesBar.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/PermissionGate.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/PromotionDialog.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/SetupStyle.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/components/TimeControlGrid.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/AccountScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/AppearanceScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/ConnectionScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/FriendsScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/GameScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/LicensesScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/MainMenuScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningStudyScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningTrainerScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/PermissionsScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/PuzzleScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/SettingsScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/ShareApkScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/screens/VsAiSetupScreen.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/theme/Glass.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/theme/Palette.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/ui/theme/Theme.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/viewmodel/GameViewModel.kt create mode 100644 app/src/main/java/cc/skysparkle/matewave/viewmodel/OpeningStudyViewModel.kt create mode 100644 app/src/main/res/drawable-nodpi/art_caro_kann_advance.webp create mode 100644 app/src/main/res/drawable-nodpi/art_caro_kann_classical.webp create mode 100644 app/src/main/res/drawable-nodpi/art_catalan.webp create mode 100644 app/src/main/res/drawable-nodpi/art_dragon.webp create mode 100644 app/src/main/res/drawable-nodpi/art_dutch.webp create mode 100644 app/src/main/res/drawable-nodpi/art_english.webp create mode 100644 app/src/main/res/drawable-nodpi/art_french_advance.webp create mode 100644 app/src/main/res/drawable-nodpi/art_grunfeld.webp create mode 100644 app/src/main/res/drawable-nodpi/art_italian.webp create mode 100644 app/src/main/res/drawable-nodpi/art_kings_gambit.webp create mode 100644 app/src/main/res/drawable-nodpi/art_kings_indian.webp create mode 100644 app/src/main/res/drawable-nodpi/art_london.webp create mode 100644 app/src/main/res/drawable-nodpi/art_najdorf.webp create mode 100644 app/src/main/res/drawable-nodpi/art_nimzo_indian.webp create mode 100644 app/src/main/res/drawable-nodpi/art_petrov.webp create mode 100644 app/src/main/res/drawable-nodpi/art_pirc.webp create mode 100644 app/src/main/res/drawable-nodpi/art_qga.webp create mode 100644 app/src/main/res/drawable-nodpi/art_qgd_orthodox.webp create mode 100644 app/src/main/res/drawable-nodpi/art_ruy_lopez.webp create mode 100644 app/src/main/res/drawable-nodpi/art_scandinavian.webp create mode 100644 app/src/main/res/drawable-nodpi/art_scotch.webp create mode 100644 app/src/main/res/drawable-nodpi/art_slav.webp create mode 100644 app/src/main/res/drawable-nodpi/art_tarrasch.webp create mode 100644 app/src/main/res/drawable-nodpi/art_vienna.webp create mode 100644 app/src/main/res/drawable-nodpi/bg_forest.jpg create mode 100644 app/src/main/res/drawable-nodpi/bg_profile_default.jpg create mode 100644 app/src/main/res/drawable-nodpi/ic_add.png create mode 100755 app/src/main/res/drawable-nodpi/ic_add_photo.png create mode 100755 app/src/main/res/drawable-nodpi/ic_ai_app.png create mode 100644 app/src/main/res/drawable-nodpi/ic_approve.png create mode 100644 app/src/main/res/drawable-nodpi/ic_arrow_back.png create mode 100644 app/src/main/res/drawable-nodpi/ic_arrow_forward.png create mode 100755 app/src/main/res/drawable-nodpi/ic_background_activity.png create mode 100644 app/src/main/res/drawable-nodpi/ic_black_colour.png create mode 100755 app/src/main/res/drawable-nodpi/ic_bluetooth.png create mode 100644 app/src/main/res/drawable-nodpi/ic_board_view.png create mode 100644 app/src/main/res/drawable-nodpi/ic_book.png create mode 100644 app/src/main/res/drawable-nodpi/ic_cancel.png create mode 100644 app/src/main/res/drawable-nodpi/ic_chat.png create mode 100755 app/src/main/res/drawable-nodpi/ic_check_box.png create mode 100644 app/src/main/res/drawable-nodpi/ic_check_permission.png create mode 100644 app/src/main/res/drawable-nodpi/ic_communication.png create mode 100644 app/src/main/res/drawable-nodpi/ic_copy.png create mode 100644 app/src/main/res/drawable-nodpi/ic_copyright.png create mode 100644 app/src/main/res/drawable-nodpi/ic_crown.png create mode 100755 app/src/main/res/drawable-nodpi/ic_default_avatar.png create mode 100644 app/src/main/res/drawable-nodpi/ic_draw.png create mode 100644 app/src/main/res/drawable-nodpi/ic_edit.png create mode 100644 app/src/main/res/drawable-nodpi/ic_encrypted.png create mode 100755 app/src/main/res/drawable-nodpi/ic_error.png create mode 100755 app/src/main/res/drawable-nodpi/ic_friends.png create mode 100755 app/src/main/res/drawable-nodpi/ic_go_settings.png create mode 100644 app/src/main/res/drawable-nodpi/ic_hint.png create mode 100755 app/src/main/res/drawable-nodpi/ic_home.png create mode 100644 app/src/main/res/drawable-nodpi/ic_infinity.png create mode 100755 app/src/main/res/drawable-nodpi/ic_info.png create mode 100644 app/src/main/res/drawable-nodpi/ic_key.png create mode 100644 app/src/main/res/drawable-nodpi/ic_launcher_background_img.png create mode 100644 app/src/main/res/drawable-nodpi/ic_launcher_card.jpg create mode 100644 app/src/main/res/drawable-nodpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/drawable-nodpi/ic_license.png create mode 100755 app/src/main/res/drawable-nodpi/ic_music.png create mode 100644 app/src/main/res/drawable-nodpi/ic_no_encryption.png create mode 100755 app/src/main/res/drawable-nodpi/ic_notification.png create mode 100644 app/src/main/res/drawable-nodpi/ic_online.png create mode 100644 app/src/main/res/drawable-nodpi/ic_permissions.png create mode 100644 app/src/main/res/drawable-nodpi/ic_policy.png create mode 100644 app/src/main/res/drawable-nodpi/ic_profile_photo.png create mode 100755 app/src/main/res/drawable-nodpi/ic_puzzle.png create mode 100644 app/src/main/res/drawable-nodpi/ic_quick_game.png create mode 100644 app/src/main/res/drawable-nodpi/ic_random_colour.png create mode 100755 app/src/main/res/drawable-nodpi/ic_repo.png create mode 100644 app/src/main/res/drawable-nodpi/ic_review.png create mode 100755 app/src/main/res/drawable-nodpi/ic_settings.png create mode 100644 app/src/main/res/drawable-nodpi/ic_share.png create mode 100755 app/src/main/res/drawable-nodpi/ic_signal_disconnected.png create mode 100755 app/src/main/res/drawable-nodpi/ic_sound_effect.png create mode 100644 app/src/main/res/drawable-nodpi/ic_star.png create mode 100644 app/src/main/res/drawable-nodpi/ic_star_badge.png create mode 100755 app/src/main/res/drawable-nodpi/ic_stat_background.png create mode 100644 app/src/main/res/drawable-nodpi/ic_timer.png create mode 100644 app/src/main/res/drawable-nodpi/ic_vibration.png create mode 100644 app/src/main/res/drawable-nodpi/ic_white_colour.png create mode 100644 app/src/main/res/drawable-nodpi/ic_wifi.png create mode 100755 app/src/main/res/drawable-nodpi/ic_wifi_local.png create mode 100644 app/src/main/res/drawable-nodpi/logo_knight.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_bishop.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_king.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_knight.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_pawn.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_queen.png create mode 100644 app/src/main/res/drawable-nodpi/piece_black_rook.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_bishop.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_king.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_knight.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_pawn.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_queen.png create mode 100644 app/src/main/res/drawable-nodpi/piece_white_rook.png create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/raw/license_apache_2_0.txt create mode 100644 app/src/main/res/raw/sfx_capture.ogg create mode 100644 app/src/main/res/raw/sfx_move.ogg create mode 100644 app/src/main/res/raw/sfx_select.ogg create mode 100644 app/src/main/res/values-de/strings.xml create mode 100644 app/src/main/res/values-ja/strings.xml create mode 100644 app/src/main/res/values-lt/strings.xml create mode 100644 app/src/main/res/values-ru/strings.xml create mode 100644 app/src/main/res/values-zh/strings.xml create mode 100644 app/src/main/res/values/strings.xml create mode 100644 app/src/main/res/xml/data_extraction_rules.xml create mode 100644 app/src/main/res/xml/file_paths.xml create mode 100644 app/src/main/res/xml/network_security_config.xml create mode 100644 app/src/test/java/cc/skysparkle/matewave/ChessAITest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/ChessEngineTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/GameMessageTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/MaterialTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/NotationTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/OpeningCoursesTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/OpeningSrsTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/PuzzleDataTest.kt create mode 100644 app/src/test/java/cc/skysparkle/matewave/SessionAuthTest.kt create mode 100644 build.gradle.kts create mode 100644 fastlane/metadata/android/en-US/changelogs/1.txt create mode 100644 fastlane/metadata/android/en-US/full_description.txt create mode 100644 fastlane/metadata/android/en-US/images/icon.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/1.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/2.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/3.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/4.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/5.png create mode 100644 fastlane/metadata/android/en-US/short_description.txt create mode 100644 fastlane/metadata/android/en-US/title.txt create mode 100644 fastlane/metadata/android/ru-RU/changelogs/1.txt create mode 100644 fastlane/metadata/android/ru-RU/full_description.txt create mode 100644 fastlane/metadata/android/ru-RU/short_description.txt create mode 100644 fastlane/metadata/android/ru-RU/title.txt create mode 100644 gradle.properties create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 settings.gradle.kts create mode 100644 tools/sfx/generate_sfx.py diff --git a/.gitignore b/.gitignore index 634100f..6c97a72 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,24 @@ +# Gradle / Android Studio +.gradle/ +build/ +local.properties +.idea/ +*.iml +.kotlin/ +captures/ +.externalNativeBuild/ +.cxx/ + +# Signing keys - never commit these +*.jks +*.keystore + # OS .DS_Store Thumbs.db # Editors .vscode/ -.idea/ *.swp # Local scratch diff --git a/README.md b/README.md index 16657be..4cfdf25 100644 --- a/README.md +++ b/README.md @@ -64,14 +64,29 @@ Compare the SHA-256 checksum against the value listed in [CHANGELOG.md](CHANGELO sha256sum Matewawe-v1.0.42.apk ``` +## Building from source + +Open the project in Android Studio (a version that supports AGP 9.2) and run the `app` configuration, or: + +```sh +./gradlew assembleDebug +./gradlew testDebugUnitTest # JVM unit tests +``` + +Nearby multiplayer needs two physical devices — the emulator has no real Bluetooth, and mDNS discovery is often blocked on emulator networks. + ## Repository structure ``` . +├── app/ # Android app source (Kotlin, Jetpack Compose) and unit tests ├── assets/ # Icon and README images │ └── screenshots/ # App screenshots +├── fastlane/ # F-Droid store listing, screenshots and changelogs +├── gradle/ # Gradle wrapper +├── tools/ # Helper scripts (sound effect generation) ├── CHANGELOG.md # Per-version build dates, sizes and checksums (links to GitHub Releases) ├── LICENSE # GNU GPLv3 └── README.md diff --git a/app/build.gradle.kts b/app/build.gradle.kts new file mode 100644 index 0000000..4788bfd --- /dev/null +++ b/app/build.gradle.kts @@ -0,0 +1,80 @@ +plugins { + id("com.android.application") + + id("org.jetbrains.kotlin.plugin.compose") +} + +android { + namespace = "cc.skysparkle.matewave" + + compileSdk = 37 + + defaultConfig { + applicationId = "cc.skysparkle.matewave" + minSdk = 26 + targetSdk = 36 + versionCode = 1 + versionName = "1.0.43" + } + + buildTypes { + release { + isMinifyEnabled = true + isShrinkResources = true + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + } + + buildFeatures { + compose = true + } + + testOptions { + unitTests.isReturnDefaultValues = true + } + + // F-Droid rejects the Google-encrypted dependency metadata block in APKs. + dependenciesInfo { + includeInApk = false + includeInBundle = true + } + + packaging { + jniLibs { + keepDebugSymbols += "**/libandroidx.graphics.path.so" + } + } + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + + kotlin { + compilerOptions { + freeCompilerArgs.add("-opt-in=androidx.compose.material3.ExperimentalMaterial3Api") + } + } +} + +dependencies { + implementation(platform("androidx.compose:compose-bom:2026.09.00")) + implementation("androidx.compose.material3:material3") + implementation("androidx.compose.ui:ui") + implementation("androidx.activity:activity-compose:1.13.0") + + implementation("androidx.core:core-ktx:1.18.0") + implementation("androidx.navigation:navigation-compose:2.9.7") + + implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.11.0") + + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.11.0") + + implementation("com.google.zxing:core:3.5.4") + + testImplementation("junit:junit:4.13.2") + testImplementation("org.json:json:20240303") +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..ffb2e7a --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,4 @@ +# Compose, AndroidX and coroutines ship their own consumer rules, and the app uses no +# reflection. Only keep line numbers so release crash reports stay readable. +-keepattributes SourceFile,LineNumberTable +-renamesourcefileattribute SourceFile diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..f461721 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/assets/openings/courses.tsv b/app/src/main/assets/openings/courses.tsv new file mode 100644 index 0000000..9e3beb1 --- /dev/null +++ b/app/src/main/assets/openings/courses.tsv @@ -0,0 +1,24 @@ +W C50 Italian Game: Giuoco Piano e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Bd2 Bxd2 Nbxd2 d5 exd5 Nxd5 Qb3 +W C84 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 +W C44 Scotch Game e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nf6 Nxc6 bxc6 e5 Qe7 Qe2 Nd5 c4 +W C29 Vienna Game: Vienna Gambit e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Nf3 Be7 d4 O-O Bd3 +W C39 King's Gambit Accepted: Kieseritzky Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 +W D60 Queen's Gambit Declined: Orthodox Defense d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 +W D26 Queen's Gambit Accepted: Classical Defense d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 a4 +W A48 London System d4 d5 Bf4 Nf6 e3 e6 Nf3 c5 c3 Nc6 Nbd2 Bd6 Bg3 +W A20 English Opening: King's English Variation c4 e5 Nc3 Nf6 g3 d5 cxd5 Nxd5 Bg2 Nb6 Nf3 Nc6 O-O +W E01 Catalan Opening: Open Defense d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Nf3 Be7 O-O O-O Qc2 +B B90 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e5 Nb3 Be6 f3 Be7 +B B70 Sicilian Defense: Dragon Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 +B C02 French Defense: Advance Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 a3 c4 +B B18 Caro-Kann Defense: Classical Variation e4 c6 d4 d5 Nc3 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 h6 Nf3 Nd7 +B B12 Caro-Kann Defense: Advance Variation e4 c6 d4 d5 e5 Bf5 Nf3 e6 Be2 c5 +B B01 Scandinavian Defense: Main Line e4 d5 exd5 Qxd5 Nc3 Qa5 d4 Nf6 Nf3 c6 Bc4 Bf5 +B B08 Pirc Defense: Classical Variation e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 Be2 O-O O-O c6 +B C42 Petrov's Defense: Classical Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 +B D17 Slav Defense: Czech Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 e6 Bxc4 Bb4 +B E91 King's Indian Defense: Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 +B E32 Nimzo-Indian Defense: Classical Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 O-O a3 Bxc3 Qxc3 d5 +B D85 Grünfeld Defense: Exchange Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Nf3 c5 +B A86 Dutch Defense: Leningrad Variation d4 f5 g3 Nf6 Bg2 g6 Nf3 Bg7 O-O O-O c4 d6 +B D32 Queen's Gambit Declined: Tarrasch Defense d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 diff --git a/app/src/main/assets/openings/explorer.txt b/app/src/main/assets/openings/explorer.txt new file mode 100644 index 0000000..d67b16c --- /dev/null +++ b/app/src/main/assets/openings/explorer.txt @@ -0,0 +1,32384 @@ +#games 179550 +0 e4 55030 3479 49450 +0 d4 23993 1497 19765 +0 e3 2414 186 2874 +0 c4 2781 175 2361 +0 Nf3 2212 141 2047 +0 g3 1028 66 1134 +0 b3 880 57 870 +0 f4 824 39 744 +0 d3 705 53 844 +0 Nc3 558 40 539 +0 b4 408 28 397 +0 a3 246 16 240 +0 c3 188 10 260 +0 g4 144 9 226 +0 h4 57 10 113 +0 f3 62 5 84 +0 h3 43 1 85 +0 a4 18 3 64 +0 Nh3 2 0 26 +0 Na3 2 1 16 +20 e5 0 0 9 +10 e5 179 12 185 +10 d5 137 8 133 +10 e6 57 4 57 +10 Nf6 52 6 43 +10 c5 34 3 30 +10 g6 31 1 28 +10 c6 17 0 16 +10 d6 16 2 13 +10 Nc6 15 1 11 +10 b6 8 0 13 +10 f5 4 1 4 +10 a6 3 0 2 +5 d5 796 59 719 +5 e6 313 25 273 +5 c5 227 15 214 +5 Nf6 170 8 204 +5 Nc6 199 7 172 +5 d6 140 6 129 +5 g6 93 7 88 +5 b6 81 5 79 +5 c6 58 2 66 +5 e5 65 4 54 +5 f5 20 0 25 +5 f6 21 1 7 +5 b5 7 1 7 +5 a6 7 1 7 +5 h6 7 0 1 +5 h5 4 0 1 +19 e5 0 0 11 +19 d5 1 0 4 +12 e5 86 4 59 +12 d5 57 7 65 +12 e6 33 2 24 +12 c5 9 0 24 +12 g6 14 0 13 +12 Nf6 10 0 16 +12 b6 13 1 12 +12 c6 6 0 12 +12 d6 9 2 7 +18 e5 7 0 23 +18 d5 2 0 15 +18 e6 4 1 8 +18 b6 3 1 4 +7 e5 258 20 272 +7 d5 196 10 185 +7 e6 121 6 108 +7 Nf6 53 5 59 +7 b6 67 4 44 +7 c5 45 5 62 +7 d6 40 1 51 +7 g6 35 1 34 +7 c6 28 1 24 +7 Nc6 16 2 14 +7 f6 6 0 4 +7 f5 2 1 5 +7 a5 6 0 1 +7 h6 3 0 3 +11 e5 177 16 183 +11 d5 93 7 67 +11 e6 45 1 56 +11 Nf6 18 1 17 +11 g6 10 0 20 +11 c6 9 0 10 +11 Nc6 7 2 9 +11 d6 11 1 6 +11 b6 9 0 8 +11 c5 8 0 4 +11 b5 4 0 3 +11 a5 2 0 5 +11 f5 2 0 4 +11 g5 5 0 1 +13 e5 56 4 107 +13 d5 45 2 55 +13 e6 26 1 26 +13 b6 14 1 16 +13 Nf6 9 0 15 +13 c5 9 1 14 +13 c6 11 0 5 +13 g6 6 1 9 +13 d6 6 0 6 +4 e5 957 66 869 +4 e6 423 19 294 +4 Nf6 295 25 323 +4 c5 304 17 280 +4 d5 265 11 157 +4 g6 131 7 122 +4 d6 118 7 85 +4 c6 84 4 93 +4 b6 74 8 57 +4 Nc6 43 2 33 +4 f5 32 6 26 +4 a6 16 0 6 +4 b5 13 1 6 +4 f6 9 0 3 +4 h5 5 0 4 +4 g5 5 0 2 +9 d5 231 18 263 +9 e5 183 12 224 +9 e6 82 4 118 +9 c5 40 4 55 +9 b6 40 6 36 +9 Nf6 24 1 39 +9 g6 21 2 36 +9 d6 30 2 26 +9 c6 24 2 23 +9 Nc6 9 1 11 +9 h6 8 0 2 +9 f5 2 0 5 +9 f6 4 1 1 +9 a6 2 0 3 +2 d5 11754 729 8873 +2 e6 3706 220 2979 +2 Nf6 2855 230 3253 +2 d6 1025 55 774 +2 c5 904 55 837 +2 g6 800 51 696 +2 b6 695 42 598 +2 c6 620 34 564 +2 e5 596 26 476 +2 f5 395 22 337 +2 Nc6 296 13 154 +2 b5 104 8 81 +2 a6 62 7 48 +2 f6 55 3 25 +2 a5 42 1 27 +2 h6 31 1 19 +2 h5 25 0 18 +2 g5 15 0 4 +2 Na6 9 0 2 +3 e5 954 73 1159 +3 d5 446 45 525 +3 e6 309 24 344 +3 c5 220 10 309 +3 b6 99 6 122 +3 d6 115 8 86 +3 Nf6 61 7 105 +3 c6 68 4 79 +3 g6 58 5 76 +3 Nc6 33 2 34 +3 f5 11 0 13 +3 a6 12 1 9 +3 g5 5 0 3 +3 a5 6 0 2 +3 h6 4 0 3 +3 f6 5 0 2 +3 h5 4 0 2 +1 e5 25387 1559 20754 +1 c5 8211 583 9440 +1 e6 6427 389 6435 +1 d5 4711 309 3807 +1 c6 2441 174 2356 +1 d6 2198 128 1807 +1 b6 1405 82 1280 +1 g6 1344 97 1195 +1 Nf6 1003 57 1040 +1 Nc6 941 59 688 +1 a6 290 23 243 +1 g5 232 5 177 +1 f5 96 4 96 +1 f6 78 2 38 +1 h6 62 1 35 +1 a5 70 4 23 +1 h5 67 0 21 +1 b5 38 1 9 +1 Nh6 17 1 2 +1 Na6 12 1 4 +16 e5 16 3 23 +16 d5 15 1 19 +16 e6 8 0 10 +16 c5 5 0 8 +16 c6 3 0 9 +16 g6 6 0 3 +16 b6 4 0 3 +16 d6 2 1 4 +8 d5 308 17 277 +8 e6 145 5 124 +8 c5 70 4 74 +8 e5 39 5 73 +8 Nf6 41 0 37 +8 g6 40 1 32 +8 b6 35 3 30 +8 d6 38 0 22 +8 c6 38 0 20 +8 Nc6 27 2 26 +8 f5 23 2 13 +8 a6 8 0 6 +8 f6 4 0 2 +8 b5 2 0 4 +8 h6 3 0 2 +6 d5 283 22 313 +6 e5 270 14 316 +6 e6 130 8 126 +6 c5 60 5 92 +6 c6 50 3 70 +6 b6 63 0 49 +6 Nf6 47 5 54 +6 g6 39 8 46 +6 d6 46 1 39 +6 Nc6 16 0 18 +6 a6 12 0 2 +6 f5 2 0 7 +6 h5 5 0 0 +14 e5 63 0 67 +14 d5 40 3 84 +14 e6 7 0 20 +14 c5 7 1 12 +14 d6 8 1 10 +14 g6 4 2 6 +14 Nc6 1 1 6 +14 b6 2 1 4 +14 c6 2 0 5 +14 g5 2 0 4 +14 Nf6 3 0 2 +17 e5 12 0 41 +17 d5 11 0 11 +17 e6 1 1 10 +17 c6 3 0 7 +17 c5 1 0 4 +17 Nc6 2 0 3 +15 e5 23 5 53 +15 d5 11 1 24 +15 e6 10 0 6 +15 g6 3 1 7 +15 b6 4 1 4 +15 c5 0 1 7 +15 d6 2 0 3 +30 Nf3 6 1 6 +30 d4 4 0 1 +25 e4 25 4 14 +25 d4 13 1 10 +25 Nf3 10 1 10 +25 d3 3 0 2 +31 d4 4 0 4 +26 e4 12 1 6 +26 Nf3 10 0 7 +26 d3 4 1 5 +26 d4 5 1 3 +26 e3 2 0 4 +28 e4 4 0 6 +28 Nf3 4 0 6 +28 d4 3 0 2 +23 e4 63 3 35 +23 d4 31 4 37 +23 Nf3 15 0 28 +23 e3 22 1 15 +23 b3 1 0 6 +23 Nxd5 1 0 4 +29 d4 6 0 7 +29 Nf3 5 1 1 +29 e4 3 1 2 +22 Nf3 64 3 51 +22 e4 57 3 49 +22 d4 32 2 42 +22 e3 8 0 12 +22 d3 7 3 9 +22 a3 4 0 5 +22 b3 3 1 4 +24 d4 18 2 16 +24 Nf3 17 0 18 +24 e4 17 1 11 +24 a3 1 1 4 +24 e3 2 0 3 +27 e4 17 0 2 +27 d4 6 1 11 +27 Nf3 5 0 12 +38 d4 90 5 67 +38 g3 38 1 32 +38 Nc3 18 1 22 +38 e4 14 0 21 +38 c4 14 0 6 +38 e3 10 0 7 +38 Ng5 6 0 6 +38 c3 3 0 4 +38 b3 5 0 2 +37 g3 62 2 74 +37 d4 52 2 53 +37 c4 29 2 23 +37 Nc3 8 0 18 +37 e3 4 0 14 +37 b3 5 1 7 +37 d3 4 0 4 +46 g3 4 0 3 +41 g3 30 2 24 +41 d4 16 1 21 +41 e4 20 0 16 +41 e3 6 1 6 +41 Nc3 4 0 5 +36 g3 82 3 69 +36 d4 47 3 40 +36 c4 41 4 30 +36 e4 25 2 26 +36 c3 10 1 11 +36 e3 9 2 8 +36 Nc3 5 0 8 +36 d3 4 0 8 +36 b3 1 0 4 +36 Ne5 2 0 3 +42 g3 26 1 23 +42 d4 12 0 11 +42 c4 6 1 10 +42 e4 4 0 7 +42 b3 3 0 4 +42 e3 4 0 2 +42 Nc3 2 0 4 +34 d4 309 28 258 +34 g3 229 18 208 +34 c4 123 5 77 +34 e3 41 5 58 +34 Nc3 19 0 48 +34 b3 25 1 15 +34 e4 16 1 16 +34 Ng5 11 0 8 +34 d3 10 1 5 +34 c3 5 0 5 +34 Nd4 2 0 7 +34 Ne5 3 0 5 +39 d4 55 3 47 +39 g3 33 1 23 +39 e4 14 1 15 +39 c4 9 0 8 +39 Nc3 6 0 9 +39 e3 7 0 7 +39 Ng5 9 0 4 +39 c3 2 0 5 +39 b3 2 1 3 +43 Nxe5 28 1 24 +43 d4 15 0 12 +43 e4 8 1 8 +43 g3 5 1 2 +43 Nc3 4 0 3 +43 d3 3 1 2 +35 g3 85 14 97 +35 d4 93 5 63 +35 c4 42 1 36 +35 e4 37 2 18 +35 Nc3 15 0 18 +35 e3 12 0 18 +35 b3 13 2 6 +35 Ne5 9 0 9 +44 d4 9 0 4 +44 g3 2 0 9 +44 c4 6 0 4 +45 d4 9 1 4 +45 e4 5 0 0 +40 g3 35 3 24 +40 d4 21 3 20 +40 e4 10 0 13 +40 c4 11 0 6 +40 Nc3 5 0 9 +40 e3 1 0 5 +40 c3 2 0 3 +57 c4 6 0 11 +57 d3 4 0 3 +58 c4 9 1 5 +58 d3 3 0 2 +55 c4 3 0 13 +55 b3 3 0 4 +59 c4 5 0 10 +53 c4 19 5 30 +53 d3 9 1 21 +53 b3 17 0 3 +53 d4 5 0 3 +60 d3 4 0 4 +60 c4 4 1 3 +52 d3 39 0 21 +52 c4 16 2 19 +52 b3 13 2 2 +52 e4 5 0 7 +52 e3 6 0 4 +52 b4 2 0 3 +54 c4 16 2 12 +54 b3 8 0 2 +54 d3 5 0 3 +56 c4 6 0 6 +56 d3 6 0 3 +61 h4 4 0 4 +61 b3 1 0 5 +61 a5 1 0 4 +74 Bb2 13 2 13 +68 Bb2 51 5 56 +77 Bb2 5 0 1 +69 Bb2 65 4 43 +70 Bb2 43 4 57 +73 Bb2 28 1 22 +66 Bb2 185 9 170 +66 e3 4 1 4 +66 d4 4 0 1 +71 Bb2 38 1 49 +65 Bb2 243 19 241 +65 e4 4 0 7 +65 e3 1 0 7 +65 g3 3 0 2 +65 d4 2 0 3 +65 c3 2 0 3 +67 Bb2 114 5 98 +76 Bb2 2 1 5 +75 Bb2 5 0 3 +72 Bb2 33 1 30 +78 Bb2 3 0 2 +85 b5 6 1 5 +82 Bb2 16 0 10 +89 Bb2 2 0 3 +87 Bb2 7 0 5 +88 bxc5 5 0 2 +84 Bb2 9 0 8 +80 Bb2 71 5 49 +80 b5 6 1 10 +80 Nf3 3 1 3 +80 d4 4 0 2 +80 a3 4 0 1 +86 Bb2 9 0 6 +79 Bb2 132 7 126 +79 b5 37 8 34 +79 Ba3 2 1 10 +79 a3 4 0 5 +81 Bb2 38 1 42 +81 b5 3 0 8 +91 Bb2 2 0 3 +83 Bb2 9 0 18 +97 d4 5 0 6 +96 d4 7 1 4 +98 d4 4 1 6 +99 d4 6 0 1 +94 d4 16 1 20 +94 b4 11 0 8 +94 e3 6 0 7 +94 Qa4 3 0 6 +94 Nf3 4 0 4 +94 d3 2 0 5 +101 d4 4 0 5 +93 b4 27 0 20 +93 d4 10 0 28 +93 e4 7 2 18 +93 e3 4 0 10 +93 Nf3 3 0 11 +93 d3 2 0 7 +93 Qb3 1 1 4 +95 d4 9 1 12 +95 b4 10 0 1 +95 e4 3 0 2 +100 d4 2 0 4 +111 Nc3 18 2 16 +111 d4 11 0 6 +111 g3 4 0 2 +111 d3 3 0 2 +111 e3 3 0 2 +104 Nc3 180 15 186 +104 d4 28 1 40 +104 e3 19 3 29 +104 b3 15 1 27 +104 g3 18 2 19 +104 Nf3 24 2 12 +104 d3 8 1 6 +113 Nc3 12 0 0 +114 cxb5 9 1 5 +110 Nc3 37 7 32 +110 d4 14 0 5 +110 e3 8 0 4 +110 e4 8 0 3 +110 b3 4 0 5 +110 Nf3 1 0 4 +105 Nc3 162 9 150 +105 Nf3 36 1 33 +105 e3 30 4 33 +105 b3 22 0 22 +105 g3 25 1 17 +105 d4 12 1 7 +105 d3 8 1 9 +105 e4 6 0 6 +109 Nc3 38 2 43 +109 d4 13 1 18 +109 b3 5 0 10 +109 e3 8 0 6 +109 g3 7 1 4 +109 Nf3 5 0 4 +109 d3 3 0 2 +106 cxd5 156 8 74 +106 e3 37 2 25 +106 Nc3 35 1 21 +106 d4 10 0 11 +106 c5 9 0 10 +106 b3 3 0 6 +106 g3 6 0 3 +106 d3 4 0 3 +106 Nf3 5 0 1 +108 Nc3 73 3 42 +108 d4 15 1 12 +108 e3 10 1 7 +108 g3 7 0 8 +108 b3 5 1 8 +108 Nf3 5 1 4 +102 Nc3 560 43 469 +102 e3 101 4 89 +102 g3 66 2 61 +102 d3 54 5 65 +102 b3 61 7 46 +102 e4 36 2 53 +102 d4 35 1 36 +102 Nf3 30 2 21 +102 a3 6 0 11 +102 b4 2 0 5 +103 Nc3 212 9 154 +103 d4 57 4 39 +103 g3 40 5 20 +103 e3 37 0 27 +103 b3 28 0 14 +103 Nf3 24 1 14 +103 d3 11 0 11 +103 e4 7 0 6 +112 Nc3 15 1 15 +112 d4 10 2 6 +112 g3 4 0 2 +112 e3 1 2 2 +115 Nc3 4 0 2 +107 Nc3 58 6 56 +107 d4 20 0 19 +107 b3 17 0 14 +107 g3 11 0 10 +107 e3 6 1 9 +107 d3 8 0 7 +107 Nf3 8 0 0 +107 e4 3 0 4 +116 Nc3 3 0 2 +127 e3 3 1 4 +127 e4 3 0 3 +123 e3 11 0 15 +123 e4 5 1 13 +123 d4 2 0 3 +123 g3 3 0 2 +122 e3 15 3 7 +122 e4 6 0 15 +122 Nf3 2 1 3 +122 d4 3 1 1 +121 e4 12 2 14 +121 e3 13 0 12 +121 g3 4 0 8 +121 d4 0 1 6 +121 c4 4 1 2 +121 Nf3 3 0 2 +126 e4 10 0 10 +126 e3 5 1 4 +126 g3 4 0 3 +118 e3 94 11 103 +118 e4 31 5 40 +118 g3 26 0 24 +118 Nf3 22 0 25 +118 d4 17 1 16 +118 c3 9 0 6 +118 Bf4 5 1 8 +118 Nc3 6 0 6 +118 c4 4 0 7 +118 h3 5 0 3 +118 f4 3 0 4 +118 Be3 3 0 3 +118 Qd2 1 0 4 +125 e3 13 0 10 +125 e4 5 2 7 +125 d4 5 0 3 +119 e3 53 6 63 +119 e4 47 1 67 +119 g3 36 1 31 +119 Nf3 16 1 24 +119 d4 9 1 11 +119 Be3 3 1 4 +119 f3 3 0 3 +119 Nc3 2 1 3 +120 e3 38 0 33 +120 e4 19 1 38 +120 Nf3 5 0 8 +120 d4 5 1 4 +120 g3 6 0 3 +120 c4 2 0 5 +120 c3 0 0 5 +120 Bf4 2 0 3 +120 f4 2 0 3 +130 e3 3 1 1 +124 e4 8 1 14 +124 e3 5 0 10 +124 g3 3 0 3 +142 Nf3 50 4 41 +142 c4 54 1 36 +142 d5 65 1 18 +142 e3 38 2 19 +142 e4 19 3 12 +142 Bf4 16 1 5 +142 c3 5 1 10 +142 Nc3 12 0 3 +142 f3 12 0 2 +142 g3 5 0 2 +142 f4 5 0 0 +142 a3 3 0 2 +142 Bg5 5 0 0 +134 c4 1420 114 1459 +134 Nf3 493 46 541 +134 e3 231 22 353 +134 Nc3 213 11 195 +134 Bf4 119 10 130 +134 Bg5 94 9 141 +134 f3 55 2 90 +134 g3 40 4 75 +134 c3 30 3 61 +134 d5 29 3 58 +134 a3 41 0 37 +134 f4 40 1 32 +134 h3 14 1 24 +134 e4 12 0 18 +134 b3 9 1 10 +134 Nd2 6 0 4 +134 h4 5 0 2 +134 Qd3 1 0 5 +134 g4 1 1 4 +146 c4 13 0 7 +146 e4 6 0 5 +146 e3 5 0 5 +146 Nf3 6 0 2 +146 Bf4 5 0 3 +146 f3 3 0 2 +144 c4 24 2 16 +144 e4 12 2 9 +144 e3 8 2 5 +144 Nf3 6 0 5 +144 Bg5 4 0 2 +143 e4 42 1 34 +143 e3 16 2 13 +143 Nf3 14 3 13 +143 c4 15 2 6 +143 Bf4 3 0 3 +143 f3 4 0 1 +138 c4 227 12 162 +138 e3 107 8 111 +138 e4 93 2 89 +138 Nf3 92 7 72 +138 Nc3 45 6 19 +138 Bf4 31 2 37 +138 f3 23 2 32 +138 c3 12 2 13 +138 g3 16 0 9 +138 Bg5 17 0 7 +138 d5 12 0 11 +138 a3 5 0 5 +138 f4 5 1 3 +138 h3 3 0 6 +138 b3 5 0 2 +138 Qd3 0 0 5 +138 h4 0 0 5 +136 d5 306 14 211 +136 dxc5 162 17 182 +136 e3 101 6 126 +136 Nf3 117 3 92 +136 c4 115 6 82 +136 c3 42 1 53 +136 Bf4 14 2 25 +136 f3 6 1 20 +136 e4 8 3 14 +136 Nc3 7 2 8 +136 g3 5 0 8 +136 Bg5 11 0 2 +136 a3 5 0 5 +139 c4 258 15 184 +139 e4 82 4 89 +139 e3 71 7 83 +139 Nf3 82 4 67 +139 Bf4 36 1 39 +139 Nc3 21 2 19 +139 f3 16 0 23 +139 g3 15 0 13 +139 Bg5 14 0 8 +139 a3 8 0 8 +139 c3 3 0 11 +139 d5 1 0 6 +139 f4 6 0 1 +139 b3 2 0 4 +139 h3 2 0 3 +132 c4 4909 310 3197 +132 Nf3 1941 140 1434 +132 e3 1589 105 1553 +132 Nc3 1041 41 546 +132 Bf4 784 43 640 +132 f3 342 15 283 +132 e4 248 12 221 +132 g3 182 15 203 +132 c3 160 12 188 +132 a3 157 8 115 +132 Bg5 123 5 92 +132 f4 83 6 92 +132 h3 69 9 73 +132 b3 49 3 55 +132 Qd3 31 4 63 +132 h4 15 0 24 +132 Nd2 9 0 16 +132 Be3 6 0 15 +132 b4 6 0 13 +132 g4 2 0 5 +132 Bd2 0 0 7 +132 Qd2 3 0 2 +132 a4 2 0 3 +135 c4 362 26 260 +135 e4 170 4 116 +135 Nf3 156 9 84 +135 e3 121 7 118 +135 Bf4 53 3 48 +135 Nc3 33 3 22 +135 f3 24 0 31 +135 Bg5 24 2 17 +135 d5 16 1 23 +135 c3 17 0 10 +135 g3 13 0 12 +135 f4 16 0 9 +135 a3 8 0 2 +135 h3 4 0 6 +135 b3 4 0 5 +140 dxe5 317 14 220 +140 d5 91 2 76 +140 e3 53 5 51 +140 c4 55 1 45 +140 Nf3 39 1 20 +140 f3 14 2 19 +140 c3 6 0 14 +140 e4 6 0 8 +140 Nc3 3 0 7 +140 g3 1 0 6 +140 Bg5 4 0 2 +133 c4 1359 89 962 +133 Nf3 580 30 428 +133 e4 452 30 452 +133 e3 391 27 401 +133 Bf4 218 16 184 +133 a3 261 10 101 +133 f3 111 5 89 +133 Nc3 92 4 72 +133 g3 59 1 56 +133 c3 44 3 62 +133 d5 34 1 45 +133 Bg5 37 1 32 +133 f4 24 2 28 +133 b3 13 1 16 +133 h3 13 0 13 +133 h4 7 0 9 +133 Qd3 1 0 6 +133 Be3 2 0 4 +141 c4 156 10 133 +141 Nf3 65 4 38 +141 e3 37 3 48 +141 Bf4 26 3 29 +141 Nc3 35 0 20 +141 g3 18 1 11 +141 e4 13 0 7 +141 f3 9 0 9 +141 Bg5 11 0 6 +141 d5 6 0 7 +141 f4 5 0 8 +141 c3 6 0 5 +141 a3 3 0 3 +145 c4 20 3 8 +145 Nf3 11 0 7 +145 e4 8 0 5 +145 e3 6 0 1 +145 Bf4 3 0 2 +145 Nc3 4 0 1 +149 c4 5 0 0 +149 Bxg5 4 0 1 +137 c4 285 16 211 +137 e4 130 7 114 +137 Nf3 112 10 85 +137 e3 88 6 87 +137 Nc3 69 2 28 +137 Bf4 35 3 41 +137 f3 21 2 30 +137 g3 11 2 18 +137 c3 9 1 15 +137 d5 6 1 15 +137 Bg5 9 0 13 +137 f4 6 1 10 +137 b3 9 0 8 +137 a3 7 0 8 +148 e4 4 0 7 +148 e3 5 0 3 +148 c4 3 0 3 +148 Nf3 3 0 2 +148 Bf4 4 0 1 +147 c4 12 0 2 +147 e4 5 0 6 +147 Nf3 4 1 3 +147 e3 4 0 2 +160 d4 11 0 7 +160 d3 6 0 5 +160 b3 3 0 4 +160 Nf3 1 0 5 +160 Qf3 3 0 2 +157 d4 19 2 20 +157 b3 7 1 20 +157 g3 8 0 11 +157 d3 5 1 10 +157 Nf3 4 1 4 +157 Qf3 2 0 5 +157 g4 3 0 4 +157 Ne2 0 0 6 +157 Qe2 2 0 4 +157 Nc3 3 0 3 +162 g3 4 0 1 +155 d4 18 0 25 +155 d3 10 1 23 +155 Qf3 19 2 12 +155 b3 9 0 8 +155 g3 7 0 8 +155 Nf3 5 0 9 +155 Bc4 6 0 6 +155 Qe2 6 0 3 +155 Nc3 4 1 3 +155 e4 2 0 5 +155 f4 5 0 2 +155 c3 0 0 5 +154 d4 51 1 53 +154 d3 29 2 40 +154 g3 20 1 30 +154 b3 22 2 25 +154 Nf3 7 0 25 +154 c3 14 1 15 +154 f4 13 0 17 +154 Qe2 5 0 20 +154 Nc3 8 0 12 +154 Ne2 8 0 10 +154 Be2 9 0 9 +154 Bc4 7 0 11 +154 Qh5 6 0 11 +154 Qf3 2 1 12 +154 c4 7 0 5 +154 e4 8 0 3 +154 a3 1 1 3 +158 d4 17 2 15 +158 b3 12 0 15 +158 d3 8 1 12 +158 g3 7 0 6 +158 Qf3 4 0 3 +158 Qe2 1 1 4 +158 Bc4 0 0 5 +158 f4 4 0 1 +152 d4 90 13 100 +152 d3 61 6 71 +152 g3 51 4 65 +152 b3 57 1 43 +152 Qe2 27 3 33 +152 Nf3 22 1 34 +152 f4 24 1 26 +152 Qf3 15 4 21 +152 Nc3 12 0 25 +152 Ne2 16 3 10 +152 c4 11 2 15 +152 Be2 10 0 16 +152 c3 10 1 15 +152 a3 17 0 8 +152 Bb5 7 1 6 +152 Bd3 5 1 5 +152 h3 2 0 7 +152 Qh5 4 0 4 +152 e4 3 1 2 +152 f3 1 0 4 +156 d4 40 2 17 +156 Qe2 27 1 17 +156 d3 9 3 7 +156 g3 6 1 11 +156 Qf3 13 1 2 +156 Nf3 5 0 10 +156 b3 5 0 7 +156 f4 3 0 6 +151 d4 145 11 156 +151 d3 143 9 154 +151 b3 140 6 147 +151 g3 101 12 104 +151 Nf3 55 3 91 +151 c3 56 4 49 +151 Be2 52 2 53 +151 Nc3 33 3 69 +151 Qh5 43 3 54 +151 Bc4 28 4 59 +151 Qf3 30 2 44 +151 Qe2 26 2 37 +151 e4 15 1 29 +151 Ne2 25 0 17 +151 c4 13 1 27 +151 f4 14 0 12 +151 a3 11 1 10 +151 Bd3 7 1 11 +151 Nh3 3 1 7 +151 f3 3 1 4 +151 h3 2 2 4 +151 Bb5 2 1 4 +151 h4 2 0 3 +153 d4 80 7 87 +153 d3 45 4 54 +153 g3 30 1 40 +153 b3 42 0 24 +153 Nf3 33 0 24 +153 Qe2 19 3 22 +153 Qf3 18 0 18 +153 Ne2 7 1 10 +153 f4 7 0 10 +153 Nc3 5 1 8 +153 Be2 2 2 9 +153 e4 4 1 7 +153 c3 4 0 8 +153 a3 3 0 3 +153 c4 4 0 2 +161 d4 5 0 2 +159 d3 15 1 13 +159 d4 11 1 16 +159 Qf3 5 1 4 +159 Qe2 3 0 6 +159 g3 3 0 5 +159 Nf3 5 1 2 +159 b3 3 0 4 +159 Be2 1 0 5 +159 Bc4 2 0 4 +159 Nc3 1 0 5 +177 Nf3 343 19 246 +177 d4 268 16 195 +177 Bc4 110 4 64 +177 Nc3 44 5 43 +177 f4 56 4 27 +177 d3 27 6 32 +177 Bb5 35 1 24 +177 c3 22 0 20 +177 Qh5 6 1 10 +177 Qf3 6 1 4 +177 f3 5 0 5 +177 c4 5 0 4 +176 e5 466 32 449 +176 Nc3 325 18 285 +176 d3 105 3 132 +176 Nf3 37 0 64 +176 f3 12 0 25 +176 Qf3 19 0 16 +176 Bc4 13 2 18 +176 d4 8 0 14 +176 Bd3 3 0 14 +176 f4 5 0 9 +176 Qe2 5 1 2 +186 d4 10 1 2 +183 d4 27 2 9 +183 Nf3 17 1 6 +183 Bc4 14 1 1 +178 d4 118 10 106 +178 Nf3 89 7 65 +178 Bc4 30 3 20 +178 f4 10 1 13 +178 d3 15 0 7 +178 Nc3 7 0 14 +178 c4 5 1 4 +178 a4 4 0 2 +178 g3 3 1 2 +178 e5 5 0 1 +178 f3 3 0 3 +185 Nf3 12 0 2 +185 d4 9 0 2 +185 Bxb5 9 0 1 +185 f4 1 0 4 +174 d4 495 27 385 +174 Nf3 386 25 381 +174 Bc4 179 15 144 +174 f4 62 2 91 +174 Nc3 86 5 50 +174 d3 59 1 68 +174 f3 29 4 33 +174 Qf3 20 0 23 +174 c4 20 2 13 +174 e5 12 1 21 +174 g3 16 0 14 +174 b3 9 0 6 +174 Be2 11 0 3 +174 Qh5 4 0 10 +174 Bd3 5 0 6 +174 c3 1 0 7 +174 Bb5 2 0 5 +174 Ne2 1 0 4 +169 Nf3 4351 313 4677 +169 Bc4 1084 82 1364 +169 d4 581 26 699 +169 f4 556 36 566 +169 Nc3 521 41 488 +169 d3 287 20 396 +169 c3 215 13 273 +169 c4 210 22 238 +169 Qh5 60 1 146 +169 e5 56 5 125 +169 b3 63 8 82 +169 Qf3 43 4 81 +169 f3 33 3 74 +169 Ne2 43 4 37 +169 g3 28 2 38 +169 b4 27 2 25 +169 Bb5 12 1 29 +169 a3 10 0 22 +169 Na3 7 0 8 +169 Be2 3 0 10 +169 Bd3 8 0 3 +169 Nh3 1 0 6 +169 a4 2 0 4 +169 Qe2 3 0 3 +172 d4 957 58 787 +172 Nf3 708 62 778 +172 Bc4 232 14 191 +172 f4 166 15 175 +172 Nc3 138 15 98 +172 d3 83 1 105 +172 c4 48 2 34 +172 e5 28 1 47 +172 Qf3 18 0 34 +172 f3 12 1 16 +172 Qh5 11 0 17 +172 b3 11 0 15 +172 g3 8 0 13 +172 Ne2 3 1 16 +172 c3 5 0 10 +172 a3 4 0 3 +171 exd5 3208 205 2371 +171 e5 782 46 682 +171 Nf3 190 9 188 +171 Nc3 200 14 156 +171 d3 90 12 127 +171 d4 81 9 59 +171 f3 31 4 71 +171 Qf3 29 2 42 +171 Bb5 24 2 18 +171 Bd3 13 1 20 +171 f4 14 1 16 +171 Qe2 8 1 14 +171 Bc4 8 1 8 +171 Qh5 7 1 8 +171 c4 6 0 6 +171 g3 4 0 2 +171 c3 3 0 2 +173 d4 916 44 677 +173 Nf3 609 46 554 +173 Bc4 211 15 160 +173 f4 156 4 106 +173 Nc3 111 6 74 +173 d3 66 6 66 +173 c4 26 1 29 +173 Qf3 13 1 24 +173 f3 11 0 20 +173 b3 12 2 16 +173 h3 12 0 13 +173 Bb5 8 1 12 +173 Qh5 10 1 8 +173 Ne2 4 1 7 +173 g3 3 0 7 +173 e5 4 0 4 +173 Bd3 5 0 2 +173 c3 5 0 1 +173 a3 1 0 5 +173 h4 3 0 2 +168 Nf3 15168 976 12145 +168 Bc4 3099 192 2485 +168 f4 2175 67 1373 +168 d4 1641 81 1291 +168 Qh5 745 57 814 +168 d3 767 46 775 +168 Nc3 790 56 606 +168 Qf3 255 17 266 +168 c4 196 21 183 +168 f3 87 5 166 +168 c3 120 2 118 +168 b3 83 6 86 +168 Ne2 48 8 69 +168 a3 44 3 58 +168 g3 28 3 61 +168 Bb5 38 1 45 +168 h4 16 3 35 +168 g4 12 1 19 +168 Bd3 13 2 17 +168 h3 16 0 12 +168 Be2 14 0 11 +168 Nh3 6 2 12 +168 Qe2 2 0 11 +168 a4 4 0 6 +168 Qg4 3 0 4 +168 Na3 2 1 3 +168 b4 2 0 3 +170 d4 2683 149 2294 +170 Nf3 1876 127 2019 +170 f4 415 19 428 +170 Bc4 294 18 325 +170 e5 291 16 309 +170 Nc3 276 17 291 +170 d3 217 18 251 +170 c4 108 4 59 +170 b3 42 2 69 +170 Qf3 44 7 48 +170 f3 22 1 75 +170 Ne2 20 1 27 +170 Qh5 15 2 30 +170 c3 16 1 28 +170 a3 26 0 17 +170 g3 9 2 30 +170 Bb5 10 1 21 +170 Qe2 13 0 18 +170 Bd3 11 0 10 +170 Be2 7 0 13 +170 Nh3 5 1 13 +170 h4 5 0 9 +170 h3 1 0 7 +170 g4 3 0 3 +180 exf5 55 2 62 +180 e5 20 1 12 +180 Nc3 6 1 6 +180 Nf3 3 0 3 +180 d3 5 0 1 +181 d4 28 0 14 +181 Nf3 25 1 8 +181 Bc4 8 1 4 +181 Nc3 6 0 3 +181 d3 4 0 2 +181 Qh5 2 0 3 +179 d4 120 3 68 +179 Bc4 30 0 31 +179 Nf3 29 0 22 +179 Nc3 20 1 11 +179 d3 14 1 15 +179 Qh5 2 0 8 +179 f4 5 0 2 +179 Qg4 3 0 3 +175 d4 510 30 416 +175 Nf3 350 31 310 +175 Bc4 146 7 131 +175 f4 96 9 80 +175 d3 57 6 63 +175 Nc3 58 5 51 +175 e5 26 2 39 +175 Qf3 24 1 25 +175 f3 9 3 13 +175 g3 9 1 12 +175 c4 12 1 9 +175 b3 9 0 12 +175 c3 9 0 11 +175 Ne2 7 0 1 +175 Bb5 4 0 1 +175 Qg4 2 0 3 +184 d4 24 0 6 +184 Nf3 20 0 5 +184 Bc4 10 0 4 +182 d4 26 1 14 +182 Nf3 12 0 9 +182 Bc4 10 0 3 +182 f4 2 0 3 +191 e4 4 0 4 +192 e4 1 0 4 +189 e4 5 0 9 +189 Kf2 4 0 2 +189 d4 3 1 1 +188 e4 9 1 6 +188 e3 1 0 6 +190 e4 4 0 1 +205 Nf3 18 1 18 +205 e4 4 1 3 +200 Nf3 36 0 26 +207 Nf3 7 0 3 +209 Nf3 1 0 4 +202 Nf3 20 0 12 +202 e4 6 0 7 +202 e3 4 2 6 +202 d4 3 0 2 +198 Nf3 50 3 53 +198 e3 9 1 11 +198 e4 9 0 5 +204 Nf3 22 0 13 +204 e4 8 0 1 +204 c4 3 0 3 +196 Nf3 233 14 180 +196 e3 41 1 51 +196 d4 14 1 22 +196 c4 8 0 4 +196 e4 3 0 3 +196 Nc3 2 0 3 +203 Nf3 27 0 13 +203 e3 6 0 5 +199 fxe5 18 3 31 +199 e3 13 2 25 +199 e4 4 0 6 +199 Nf3 4 0 5 +199 f5 0 0 5 +197 Nf3 99 3 68 +197 e3 10 1 21 +197 e4 14 1 14 +197 d4 12 0 10 +197 c4 3 0 3 +206 Nf3 15 0 8 +206 e3 2 2 2 +201 Nf3 26 1 18 +201 e3 4 0 4 +201 e4 4 0 3 +201 d4 4 0 3 +220 Bg2 14 0 11 +217 Bg2 34 4 38 +217 Nf3 8 1 10 +221 Bg2 7 0 2 +216 Bg2 54 0 33 +216 Nf3 5 0 1 +214 Bg2 42 5 67 +214 Nf3 15 0 19 +215 Bg2 32 3 53 +215 Nf3 12 0 7 +215 f4 3 0 2 +211 Bg2 216 17 228 +211 Nf3 49 2 37 +211 f4 8 1 10 +211 d4 3 0 8 +211 b3 1 0 8 +211 e3 3 1 3 +211 Bh3 1 0 5 +211 h4 2 0 4 +219 Bg2 41 0 29 +219 Nf3 3 1 6 +212 Bg2 203 11 246 +212 Nf3 36 1 19 +212 f4 7 0 11 +212 Bh3 2 1 10 +212 h4 6 1 3 +212 b3 3 0 6 +212 e3 2 0 6 +212 d4 4 0 2 +212 e4 3 0 3 +213 Bg2 108 6 105 +213 Nf3 11 1 11 +222 Bg2 2 0 4 +218 Bg2 30 7 41 +218 Nf3 2 1 2 +234 g5 3 0 2 +227 Nc3 1 1 5 +227 g5 1 0 4 +225 g5 30 1 55 +225 Bg2 7 2 12 +225 e3 1 0 4 +228 g5 3 1 4 +224 g5 39 0 35 +224 Bg2 7 0 13 +224 h4 8 0 6 +224 e4 2 0 4 +224 Nf3 2 0 3 +226 e4 4 0 3 +226 d4 2 0 3 +229 g5 2 0 5 +236 d4 6 0 6 +235 e4 6 0 25 +235 Nf3 0 0 5 +237 a3 1 1 6 +242 h5 2 0 7 +242 d3 2 0 7 +242 g3 3 0 4 +241 h5 5 1 13 +241 g4 6 2 8 +241 g3 4 0 6 +241 a4 3 1 5 +241 d3 2 1 3 +241 e4 1 0 4 +243 h5 6 0 2 +252 g6 1 1 4 +252 d5 3 0 3 +251 d5 5 0 4 +251 e6 3 1 1 +251 g6 1 0 4 +250 e5 9 0 10 +250 d6 10 1 2 +250 d5 4 0 1 +254 Bb7 3 0 4 +256 Nc6 5 0 2 +255 Nc6 3 0 2 +265 d4 6 0 7 +265 Nf6 2 0 9 +265 e6 2 0 4 +267 d4 0 0 5 +264 e6 10 2 7 +264 Nf6 6 1 10 +264 Nc6 4 1 5 +264 Bf5 3 0 4 +264 c5 1 0 5 +266 e5 11 0 5 +266 d4 4 0 1 +263 d4 43 1 20 +263 dxe4 9 2 10 +263 e6 3 0 3 +263 Nf6 4 0 2 +269 e6 3 0 2 +272 Nc6 43 3 37 +272 d6 14 0 6 +272 Bc5 2 0 4 +276 Nc6 1 1 3 +274 exd4 19 0 32 +274 Nc6 5 0 3 +274 d6 2 2 2 +275 Nc6 3 0 4 +273 Nf6 20 1 20 +273 Nc6 12 0 7 +273 d6 9 1 8 +273 Bb4 2 1 6 +273 Bc5 5 0 2 +273 c6 2 0 3 +280 d5 8 0 4 +279 d5 8 2 8 +281 d5 7 0 2 +281 d6 5 0 2 +286 Bg7 4 0 12 +285 Bg7 6 1 10 +284 Bg7 17 0 2 +289 e5 10 1 13 +289 Nf6 4 0 5 +289 d5 2 0 4 +293 h6 3 0 3 +291 e5 7 0 4 +287 d5 59 2 44 +287 Nf6 13 1 5 +287 e6 7 0 10 +287 d6 5 1 3 +287 e5 3 1 2 +292 e5 6 0 5 +290 e5 8 0 21 +288 e5 23 0 22 +288 d5 6 0 3 +288 Nf6 2 1 5 +299 d5 1 0 8 +299 Nc6 4 0 4 +298 g6 13 1 8 +298 e6 4 1 6 +298 c5 5 0 2 +298 d5 3 0 2 +297 d5 13 1 20 +297 g6 11 0 18 +297 e6 9 1 6 +297 Nc6 11 0 2 +297 d6 5 0 2 +300 d5 2 0 7 +296 g6 24 1 25 +296 d5 9 0 21 +296 e6 6 1 12 +296 Nc6 10 0 4 +296 c5 3 0 2 +296 d6 1 0 4 +303 Bb7 3 0 3 +308 Bb7 4 0 5 +305 Bb7 15 1 21 +307 Bb7 4 1 4 +306 Bb7 17 0 15 +304 Bb7 30 1 22 +315 Nc6 3 0 4 +313 Nc6 4 1 5 +313 g6 3 0 2 +311 Nc6 23 1 14 +311 d6 7 1 5 +311 Nf6 4 1 3 +311 e6 3 1 3 +316 Nc6 1 0 5 +310 cxd4 29 3 27 +310 d6 7 0 2 +310 Nc6 4 0 4 +310 e6 2 0 5 +314 Nc6 3 1 1 +314 d5 1 0 4 +312 Nc6 11 0 7 +312 d6 7 1 5 +312 e6 3 0 7 +312 g6 2 1 5 +309 Nc6 34 0 23 +309 e6 18 0 5 +309 d6 11 1 9 +309 d5 9 0 11 +309 g6 7 1 11 +309 Nf6 1 0 5 +309 b6 0 1 5 +323 d5 2 0 3 +321 d5 5 1 7 +320 d5 10 0 8 +322 d5 4 0 6 +319 d5 21 1 14 +319 d6 2 0 8 +330 Nf6 3 0 20 +330 d4 4 0 9 +330 e6 3 0 9 +330 c5 2 0 3 +330 Bg4 3 0 2 +336 e5 1 0 6 +331 Nc6 6 0 4 +331 Nf6 4 0 5 +331 e6 6 0 2 +331 c5 3 0 2 +328 dxc4 27 2 24 +328 c6 31 1 17 +328 e6 20 0 13 +328 d4 19 0 11 +328 Nf6 8 1 7 +328 Bg4 5 0 3 +328 Nc6 5 0 1 +328 c5 3 1 1 +334 Nc6 4 0 4 +326 Nc6 84 8 59 +326 e6 80 4 58 +326 Nf6 53 10 51 +326 Bg4 24 0 35 +326 c5 12 2 16 +326 c6 17 1 8 +326 Bf5 9 0 10 +326 f6 10 0 5 +326 g6 7 0 6 +326 h6 2 1 4 +326 Qd6 1 1 4 +329 Nc6 9 1 16 +329 Nf6 11 2 9 +329 c5 6 1 11 +329 e6 5 1 8 +329 Bg4 2 0 6 +329 Bf5 1 0 4 +332 dxe4 7 1 15 +332 d4 4 0 1 +327 c5 45 6 50 +327 Nc6 43 3 44 +327 Nf6 33 4 31 +327 e6 31 2 26 +327 Bg4 20 1 17 +327 c6 21 1 16 +327 Bf5 10 1 8 +327 d4 8 0 3 +327 e5 6 0 4 +327 g6 4 0 5 +327 b6 4 0 1 +342 e5 2 0 7 +341 e5 5 0 3 +341 Nf6 4 0 2 +338 Nf6 11 0 13 +338 e6 13 2 8 +338 g6 6 0 7 +338 e5 6 0 4 +338 Nc6 4 0 6 +338 Bg4 3 1 4 +338 c5 4 0 2 +340 e5 13 1 7 +339 e5 15 0 13 +339 g6 5 1 5 +339 Nf6 7 0 2 +347 d6 6 1 10 +347 Nc6 4 0 4 +347 Qe7 6 0 1 +347 Nf6 4 0 2 +347 Bc5 3 0 2 +348 exd4 3 0 6 +348 e4 3 0 3 +348 d6 5 0 0 +349 d6 0 0 8 +349 Nc6 4 1 0 +357 d5 3 0 13 +360 d6 1 0 4 +360 d5 4 0 1 +359 d5 6 1 4 +355 d5 17 0 15 +355 d6 6 1 4 +355 c6 5 0 2 +355 Nf6 2 0 3 +355 c5 1 0 4 +354 d5 42 3 34 +354 d6 11 0 4 +354 c5 8 0 3 +354 Nf6 6 0 2 +354 b6 5 0 3 +354 f5 2 0 5 +354 c6 5 0 2 +354 h6 2 1 2 +358 d5 5 0 9 +356 d5 11 0 8 +356 d6 4 0 2 +356 Bc5 3 1 1 +353 d5 49 10 67 +353 d6 6 2 5 +353 b6 6 0 7 +353 Ne7 6 0 4 +353 Nf6 6 0 2 +353 c5 3 1 3 +363 Nf6 4 0 1 +361 Nf6 4 0 4 +362 Nf6 0 0 9 +364 e6 2 0 3 +370 Bg7 5 0 8 +372 Bg7 2 0 3 +369 Bg7 10 0 5 +367 Bg7 18 3 18 +371 Bg7 1 0 5 +368 Bg7 8 0 13 +366 Bg7 30 2 23 +373 g6 0 0 5 +373 e6 1 0 4 +375 Bb7 9 1 4 +377 Nc6 1 0 5 +379 d5 2 0 5 +382 e5 8 0 2 +380 dxc4 5 2 9 +380 e6 7 1 7 +380 d4 4 1 7 +381 e5 1 1 10 +381 c5 0 0 5 +388 d5 6 1 1 +387 d5 6 1 4 +387 Nf6 1 1 6 +387 d6 3 0 2 +386 d5 21 0 12 +386 Nc6 5 0 2 +386 Nf6 4 0 2 +390 d5 5 0 2 +389 Nf6 2 0 3 +392 d5 5 1 6 +392 d6 4 0 3 +394 d5 3 0 2 +395 Bg7 6 0 4 +396 Bg7 6 0 3 +400 Nf6 3 0 4 +400 e5 2 2 2 +400 d5 2 0 4 +401 g6 13 4 20 +401 e6 13 0 14 +401 d5 9 0 9 +401 d6 7 0 4 +401 Nc6 5 0 3 +403 Bb7 63 4 41 +404 Nc6 10 1 14 +404 d5 6 2 12 +404 d6 13 0 5 +404 e6 5 1 9 +404 Nf6 7 0 7 +404 b6 2 0 3 +405 d5 16 1 18 +406 e6 58 3 36 +406 Nc6 43 1 28 +406 c5 27 3 33 +406 Nf6 17 0 17 +406 d4 9 0 20 +406 Bf5 13 1 11 +406 c6 5 0 8 +406 e5 3 1 6 +406 f6 7 0 3 +407 e5 3 1 4 +409 e5 15 0 18 +409 e6 9 0 11 +409 Nf6 6 0 8 +409 Nd7 1 0 5 +410 Nc6 118 9 137 +410 d6 56 3 53 +410 f6 14 4 15 +410 e4 14 0 9 +410 d5 9 1 6 +410 Qf6 8 0 5 +410 Bd6 8 2 3 +410 Bc5 6 0 4 +410 Qe7 3 0 4 +410 Nf6 2 0 3 +416 d5 41 1 47 +416 d6 23 1 7 +416 Nf6 10 1 19 +416 f6 6 0 5 +416 b6 5 0 6 +416 Qe7 4 0 4 +416 Bc5 5 0 1 +416 c5 3 0 3 +417 Nf6 1 0 4 +419 Nf6 16 0 17 +419 f6 7 1 11 +419 Bg7 7 0 2 +421 Nd4 3 0 2 +422 g6 3 0 4 +422 e6 4 0 1 +422 d6 4 0 1 +424 Bb7 6 0 4 +425 e6 3 0 2 +426 d5 4 0 7 +427 e6 25 2 15 +427 Nf6 7 1 10 +427 Nc6 8 0 9 +427 d4 6 2 1 +427 Bf5 5 0 3 +427 e5 5 0 2 +427 a6 4 0 2 +427 f6 4 0 2 +427 c6 5 0 1 +428 a6 1 1 3 +432 e5 3 0 3 +433 d6 35 0 40 +433 Bxb4 32 0 33 +433 Nc6 20 1 15 +433 f6 15 3 13 +433 e4 11 2 11 +433 Qf6 8 0 6 +433 Nf6 2 1 2 +436 d5 3 0 3 +434 d5 15 1 11 +434 a6 2 4 4 +434 Nf6 4 2 4 +434 d6 3 0 6 +434 b6 4 1 4 +434 Bc5 3 0 3 +437 Nf6 12 1 21 +437 d5 8 0 9 +437 Bxb4 6 0 2 +440 Nf6 7 0 12 +440 f6 1 0 5 +442 Bb7 6 1 4 +444 d5 5 0 1 +448 Bd7 1 0 4 +446 e5 4 0 5 +445 e6 7 0 7 +445 Nc6 4 0 3 +447 e5 2 0 3 +456 Nc6 2 0 9 +452 d5 14 0 7 +452 Nf6 5 0 2 +453 exd4 3 0 15 +453 e4 3 0 8 +455 d5 2 0 6 +454 Nf6 4 1 6 +459 d5 3 0 5 +459 d6 4 1 0 +462 Bg7 2 0 4 +463 e5 5 2 8 +463 Nf6 5 0 2 +463 e6 3 0 3 +464 Nf6 4 0 1 +464 e6 4 0 1 +468 g6 59 7 59 +468 e6 44 2 44 +468 d5 19 2 21 +468 e5 20 1 15 +468 c5 11 2 21 +468 d6 8 0 5 +468 Nc6 2 0 10 +468 c6 6 1 4 +468 Ng8 4 0 1 +473 g6 12 2 4 +473 e6 7 0 5 +471 g6 8 0 13 +471 e6 1 1 7 +469 e6 5 0 13 +469 g6 5 0 10 +469 d5 7 1 7 +469 e5 6 0 1 +470 g6 4 0 11 +470 e6 4 1 4 +470 e5 1 1 6 +470 c5 2 0 5 +470 d5 5 0 1 +472 g6 6 0 4 +472 d5 5 0 4 +472 e6 1 0 6 +472 c5 1 2 3 +472 c6 3 0 2 +475 Nf6 5 0 0 +476 a6 6 1 4 +477 Bb7 34 7 29 +482 Bb7 1 0 4 +481 Bb7 2 0 5 +478 Bb7 12 0 5 +479 Bb7 8 0 4 +480 Bb7 7 0 2 +483 Nc6 59 2 70 +483 e6 30 2 23 +483 Nf6 14 1 16 +483 d6 19 2 10 +483 e5 14 1 10 +483 b6 7 1 14 +483 g6 8 0 3 +483 a6 7 0 1 +484 Nc6 18 1 14 +484 Nf6 6 0 4 +484 e6 3 0 7 +484 d6 5 0 3 +486 Nc6 9 0 6 +486 Nf6 4 0 6 +486 e6 2 0 3 +489 Nc6 3 1 6 +488 cxd4 10 0 4 +485 Nc6 5 2 17 +485 d6 3 0 7 +485 e5 8 0 0 +485 Nf6 6 1 1 +485 e6 3 0 3 +487 Nc6 5 1 6 +487 e6 6 0 5 +487 d6 4 0 4 +491 d5 25 2 26 +491 e6 6 0 1 +491 d6 0 0 7 +491 g6 0 0 5 +496 d5 3 0 3 +493 d5 3 0 7 +492 d5 7 0 14 +494 d5 4 0 5 +495 d5 3 1 4 +500 dxc4 19 1 10 +500 d4 15 0 6 +506 dxc4 4 0 1 +503 dxc4 1 0 4 +498 Qxd5 141 6 69 +498 Nf6 10 0 4 +501 dxc4 6 0 10 +499 dxc4 16 1 8 +499 d4 4 0 7 +499 e6 4 0 2 +499 e5 4 0 1 +499 Nf6 4 0 1 +504 dxc4 4 0 3 +507 e5 28 0 20 +507 Nf6 20 1 9 +507 e6 13 1 4 +507 g6 1 1 5 +511 e5 1 1 6 +508 Nf6 3 0 5 +509 e5 2 0 5 +509 Nf6 6 0 0 +510 e5 2 0 4 +513 Nf6 176 14 167 +513 Nc6 75 5 75 +513 d6 77 6 41 +513 Bc5 54 5 56 +513 f5 38 1 40 +513 Bb4 43 4 31 +513 c6 39 2 18 +513 c5 20 4 18 +513 g6 7 0 8 +513 Qf6 6 0 7 +513 a6 5 0 1 +513 Qh4 5 0 0 +513 f6 4 0 1 +513 d5 4 1 0 +520 Nc6 16 0 11 +520 e4 4 2 4 +521 Nf6 2 0 4 +521 Nc6 2 0 3 +517 Nf6 18 2 15 +517 Nc6 10 0 7 +517 Bc5 9 2 4 +517 d6 5 2 7 +517 f5 4 1 5 +517 d5 4 0 1 +516 Nf6 15 2 27 +516 Bc5 6 0 15 +516 d6 7 1 6 +516 Nc6 6 0 3 +516 d5 5 1 2 +516 Bb4 5 0 2 +516 c5 3 0 3 +516 f5 1 1 3 +519 exd4 16 0 23 +519 e4 9 1 6 +519 d6 3 0 2 +514 Nc6 18 1 20 +514 Nf6 21 1 16 +514 Bc5 8 1 10 +514 d5 11 0 7 +514 d6 11 0 7 +514 f5 9 0 7 +514 c5 5 0 8 +514 e4 3 0 4 +514 Bb4 4 0 1 +518 Nf6 14 1 26 +518 Bc5 5 1 8 +518 d6 3 0 6 +518 c5 2 0 5 +518 Nc6 2 0 4 +515 Nf6 13 0 15 +515 Bc5 11 0 11 +515 Nc6 8 1 9 +515 d6 10 0 8 +515 f5 7 1 5 +515 d5 5 0 6 +515 c6 4 0 1 +523 d5 65 3 58 +523 Nf6 29 1 26 +523 d6 25 1 10 +523 c5 22 1 12 +523 Ne7 11 0 6 +523 b6 9 0 8 +523 c6 6 2 8 +523 Bb4 7 0 7 +523 Be7 10 0 1 +523 Bc5 7 0 3 +523 Nc6 6 0 2 +523 g6 3 0 4 +523 a6 2 0 3 +528 d5 11 1 6 +528 b6 4 0 1 +528 Nf6 4 0 1 +527 d5 10 0 6 +527 Nf6 5 0 4 +529 d5 5 0 2 +524 d5 14 1 15 +524 d6 11 0 3 +524 Nf6 7 1 6 +524 c5 9 0 3 +524 c6 3 1 2 +526 d5 17 0 12 +526 Nf6 4 0 5 +525 d5 18 4 10 +525 Nf6 8 0 2 +525 d6 4 0 1 +531 Nf6 13 0 9 +532 Nf6 5 2 5 +532 e6 5 0 1 +533 Nf6 4 0 2 +536 Bg7 55 6 52 +542 Bg7 7 0 0 +538 Bg7 17 0 14 +541 Bg7 6 0 7 +537 Bg7 18 0 18 +540 Bg7 6 1 9 +543 Bg7 3 0 4 +539 Bg7 9 0 10 +547 g6 3 0 6 +547 e5 3 0 3 +548 e5 3 0 5 +548 d6 2 0 3 +553 Bb7 1 1 3 +551 Bb7 15 3 7 +552 Bb7 5 0 13 +558 cxd4 0 0 5 +556 d6 6 0 3 +556 d5 0 0 5 +555 d6 4 1 3 +555 Nc6 0 0 5 +557 Nc6 1 0 4 +562 d5 4 1 4 +561 d5 3 0 7 +570 Nc6 4 0 4 +571 Nf6 4 0 2 +567 c5 3 0 6 +567 Nc6 1 0 7 +567 e6 5 0 2 +567 Nf6 2 0 5 +567 Bg4 2 0 3 +569 e5 3 0 3 +572 e6 2 0 3 +568 e6 3 0 3 +568 c5 1 0 5 +564 e5 52 5 58 +564 e6 15 3 13 +564 c5 6 0 9 +564 Nf6 5 2 6 +564 c6 4 1 4 +564 Bf5 3 0 4 +564 Nc6 4 0 2 +565 dxe4 12 3 20 +565 e6 6 1 4 +565 d4 5 0 5 +565 c6 2 0 4 +566 e5 9 0 11 +566 e6 5 0 1 +566 Nf6 0 0 5 +573 e5 3 0 2 +577 e5 6 0 3 +577 e6 2 0 3 +578 g6 2 1 2 +583 Nc6 11 1 18 +583 d6 3 0 4 +584 exd4 2 1 7 +584 e4 2 0 4 +580 d5 21 4 36 +580 Nc6 3 1 14 +580 d6 8 1 6 +580 Nf6 9 0 1 +581 d5 11 0 17 +581 Nc6 8 1 14 +581 d6 14 0 8 +581 Nf6 5 0 10 +581 Bc5 5 0 9 +582 d5 13 1 17 +582 Bc5 5 0 4 +582 Nc6 5 0 3 +593 d5 1 0 4 +591 d5 1 1 3 +588 d5 20 0 22 +588 d6 7 0 2 +588 c5 4 0 1 +588 Qe7 4 0 1 +589 d5 7 1 18 +599 Bg7 3 0 10 +598 Bg7 7 0 14 +600 Bg7 2 0 3 +606 d6 3 0 4 +606 e6 5 1 0 +601 d5 19 2 9 +601 Nf6 13 0 8 +601 d6 6 0 10 +601 e6 6 1 6 +601 f6 3 1 5 +607 d5 3 1 1 +602 e5 11 0 19 +602 e6 9 0 6 +602 d5 9 1 4 +602 Nf6 12 0 0 +602 d6 7 0 2 +603 Ne5 32 1 12 +603 Nb4 16 0 3 +603 Nb8 11 0 2 +603 Na5 4 0 1 +604 d5 16 1 3 +604 e5 8 0 9 +604 Nf6 5 1 3 +605 e5 9 2 6 +605 d5 3 1 3 +609 d5 5 0 1 +618 e6 42 3 31 +618 g6 19 3 38 +618 d6 20 2 29 +618 d5 22 0 19 +618 c5 1 1 5 +618 b6 4 1 2 +618 Nc6 2 0 3 +619 e6 31 3 44 +619 Ne4 16 1 24 +619 g6 16 2 21 +619 d5 14 1 16 +619 c5 6 1 8 +619 d6 2 1 10 +619 h6 5 0 8 +617 d5 70 5 77 +617 e6 48 5 46 +617 g6 42 0 38 +617 Nc6 27 0 14 +617 d6 11 1 9 +617 e5 4 0 6 +617 c5 4 0 2 +629 d5 2 0 3 +615 g6 163 11 178 +615 e6 131 15 162 +615 d5 102 5 102 +615 c5 28 6 44 +615 d6 30 7 30 +615 Nc6 16 0 11 +615 b6 7 1 7 +615 e5 6 0 1 +615 c6 3 0 3 +624 d5 15 0 8 +624 e6 8 0 12 +624 g6 10 0 6 +624 Nc6 3 0 3 +624 c5 3 0 2 +628 g6 4 1 4 +622 g6 8 1 19 +622 d5 8 0 15 +622 e6 5 0 11 +622 c5 0 1 7 +622 d6 3 1 1 +614 e6 475 41 479 +614 g6 430 37 478 +614 c5 125 13 167 +614 e5 115 6 136 +614 d5 140 9 74 +614 d6 66 4 81 +614 c6 26 4 8 +614 Nc6 21 0 15 +614 b6 9 0 7 +614 Ng8 3 0 4 +614 Ne4 2 0 4 +614 h6 3 0 2 +623 d6 10 0 16 +623 c6 5 1 14 +623 e6 6 2 11 +623 g6 5 0 7 +623 c5 0 0 5 +616 g6 68 7 114 +616 e6 64 6 89 +616 d5 51 4 78 +616 c5 8 0 21 +616 d6 13 2 13 +616 Nc6 12 0 15 +616 b6 2 1 10 +616 Ne4 2 2 2 +616 Ng8 2 0 3 +627 Nxe4 4 0 7 +627 g6 0 0 5 +620 d5 19 1 39 +620 g6 12 0 22 +620 e6 12 1 12 +620 d6 4 0 5 +620 Nc6 4 0 5 +620 c5 2 0 5 +625 d5 15 1 8 +625 e6 14 0 6 +625 d6 4 0 4 +625 g6 3 0 5 +621 g6 15 1 21 +621 e6 9 1 21 +621 d5 9 2 12 +621 c5 2 0 8 +621 d6 1 0 6 +626 g6 5 0 11 +626 d5 7 1 4 +626 e6 2 0 5 +633 b6 8 0 3 +634 b6 3 0 3 +643 b5 3 0 2 +642 b5 3 0 2 +639 b5 7 1 8 +639 b6 8 1 6 +641 b6 2 0 3 +640 b6 3 1 4 +640 b5 4 1 2 +648 Bb7 3 0 2 +646 Bb7 8 2 11 +647 bxc4 12 2 5 +645 Bb7 12 2 12 +644 Bb7 30 0 29 +644 b4 2 1 3 +655 Bb7 27 2 34 +659 Bb7 15 0 6 +654 Bb7 38 5 18 +653 Bb7 84 6 67 +653 c5 2 0 3 +661 Bb7 3 0 5 +664 Bb7 5 0 2 +657 Bb7 11 1 13 +650 Bb7 189 11 151 +650 Ba6 11 0 0 +650 c5 5 0 2 +650 g6 2 0 4 +650 e6 4 0 1 +650 d6 5 0 0 +650 c6 5 0 0 +660 Bb7 10 0 9 +651 Bb7 95 8 101 +652 Bb7 86 2 83 +652 c5 1 0 4 +652 g6 3 0 2 +656 Bb7 18 2 29 +662 Bb7 3 1 3 +658 Bb7 13 0 7 +663 Bb7 2 0 6 +666 Bb7 0 0 5 +673 cxd4 11 1 19 +678 cxd4 6 0 1 +676 cxd4 6 2 6 +670 cxd4 61 2 55 +670 e6 21 0 17 +670 Nf6 9 1 4 +670 Nc6 6 0 5 +670 d5 7 0 4 +670 b6 3 0 2 +679 cxd4 3 0 4 +672 cxd4 24 1 28 +672 e6 8 0 7 +672 d5 5 0 4 +672 Nc6 1 0 5 +672 c4 2 0 3 +671 cxd4 80 4 66 +671 e6 19 1 10 +671 Nc6 4 0 1 +667 d6 131 11 79 +667 e6 63 1 58 +667 e5 44 1 28 +667 Nf6 36 0 32 +667 c4 9 0 6 +667 Qa5 7 0 1 +667 b5 5 0 3 +668 e6 51 11 69 +668 Qa5 63 3 40 +668 e5 18 1 27 +668 Nc6 15 2 22 +668 b6 6 0 13 +668 Nf6 3 0 4 +669 cxd4 67 5 77 +669 e6 13 0 25 +669 d5 7 0 6 +669 Nf6 2 0 7 +669 g6 4 1 4 +675 cxd4 5 3 10 +674 cxd4 3 1 17 +677 cxd4 5 0 4 +684 d5 25 1 28 +684 d6 6 0 5 +688 d5 11 0 5 +685 d5 11 0 13 +685 e6 1 0 4 +685 Nf6 2 2 1 +683 d5 66 3 53 +683 e6 3 1 5 +683 d6 4 0 2 +689 d5 4 0 7 +690 d5 2 0 10 +680 d5 192 10 142 +680 d6 20 3 12 +680 e6 16 0 11 +680 Nf6 11 0 4 +680 b6 4 0 4 +680 g6 2 1 4 +680 f6 2 0 3 +682 d5 55 5 60 +682 e6 4 0 8 +682 d6 3 0 5 +682 b5 3 0 2 +681 d5 57 3 57 +681 e6 5 0 13 +681 d6 8 1 8 +681 Nf6 4 0 3 +686 d5 8 0 15 +692 d5 5 0 1 +687 d5 14 0 11 +694 d5 2 0 3 +712 e6 3 0 7 +699 e6 187 13 160 +699 Nf6 169 9 161 +699 Nc6 186 12 126 +699 Bf5 88 3 82 +699 c6 43 2 39 +699 c5 32 3 27 +699 f6 18 0 10 +699 h6 10 0 11 +699 g6 11 0 5 +699 Bg4 7 1 5 +699 a6 7 0 4 +699 f5 6 0 3 +699 e5 3 0 2 +705 f6 28 1 26 +705 h6 24 0 24 +705 Nf6 16 1 13 +705 Nc6 17 1 8 +705 e6 16 0 2 +705 c6 5 1 10 +705 c5 4 0 3 +705 Bf5 4 0 2 +698 Nf6 325 14 198 +698 e6 321 10 152 +698 Nc6 127 5 65 +698 c6 111 6 58 +698 Bf5 63 0 23 +698 c5 20 1 21 +698 g6 21 2 4 +698 f5 9 0 2 +698 f6 7 0 4 +698 Bg4 6 0 4 +698 h6 3 0 6 +698 e5 5 1 2 +698 a6 3 0 4 +698 b6 5 0 1 +698 Qd6 2 2 1 +696 e6 466 36 324 +696 Nf6 390 33 339 +696 Nc6 383 22 253 +696 c6 156 13 124 +696 Bf5 142 12 125 +696 Bg4 143 7 102 +696 c5 91 7 69 +696 g6 41 6 29 +696 h6 37 0 16 +696 f6 29 0 16 +696 f5 10 0 9 +696 e5 3 2 8 +696 a6 10 0 2 +696 Qd6 3 0 8 +696 b6 9 1 1 +696 Nd7 3 0 2 +709 Nf6 5 0 27 +709 e6 12 1 10 +709 Nc6 5 1 11 +709 c6 3 0 4 +709 g6 3 1 1 +709 c5 0 0 5 +704 e6 35 2 31 +704 Nc6 37 0 26 +704 Nf6 35 1 20 +704 Bf5 13 1 13 +704 c5 12 4 8 +704 c6 7 0 7 +704 g6 4 0 2 +704 Bg4 2 0 3 +708 e6 15 0 17 +708 Nf6 14 1 8 +708 Nc6 9 1 9 +708 c6 3 0 6 +708 Bf5 3 0 6 +708 c5 0 1 7 +713 e6 2 0 4 +703 e6 42 4 50 +703 Nf6 36 0 52 +703 Nc6 25 0 29 +703 Bf5 13 2 17 +703 c6 13 1 12 +703 c5 10 1 11 +703 h6 2 1 5 +703 g6 6 0 0 +703 e5 4 0 2 +703 Qd6 2 0 3 +695 dxc4 1512 79 801 +695 e6 1353 91 948 +695 c6 834 69 652 +695 Nf6 532 32 341 +695 e5 169 12 142 +695 Bf5 166 15 114 +695 c5 100 5 61 +695 Nc6 107 3 55 +695 g6 26 1 18 +695 Be6 26 0 9 +695 h6 17 2 14 +695 b6 21 1 10 +695 f5 12 0 16 +695 Bg4 8 0 9 +695 f6 4 0 2 +695 a6 3 0 3 +697 e6 433 27 411 +697 Nf6 329 27 410 +697 Nc6 284 18 245 +697 Bf5 157 11 142 +697 c6 123 8 122 +697 c5 84 4 98 +697 a6 34 2 36 +697 g6 31 1 20 +697 e5 18 3 27 +697 f5 12 1 15 +697 f6 16 1 7 +697 Qd6 11 0 5 +697 h6 9 1 5 +697 b6 8 1 3 +697 h5 9 0 0 +697 Bg4 6 0 1 +697 Bd7 5 0 2 +697 Be6 3 0 2 +697 Nd7 3 0 2 +701 dxe4 146 7 151 +701 e6 41 1 25 +701 c6 23 3 20 +701 Nf6 14 0 6 +701 e5 7 0 6 +701 Nc6 8 0 5 +701 c5 4 1 3 +700 e6 91 3 77 +700 Nc6 72 4 59 +700 Nf6 53 1 42 +700 Bf5 36 3 26 +700 c6 29 1 28 +700 c5 18 0 27 +700 g6 12 0 5 +700 f6 8 1 7 +700 f5 6 0 4 +700 e5 4 1 4 +700 Qd6 4 0 1 +706 e6 16 1 20 +706 Bf5 19 0 15 +706 Nf6 18 2 12 +706 Nc6 7 0 17 +706 c6 5 0 11 +706 f5 4 1 7 +706 c5 3 0 7 +702 Nc6 48 2 47 +702 e6 40 6 48 +702 Nf6 35 4 44 +702 Bf5 20 2 15 +702 c6 12 1 16 +702 c5 10 0 17 +702 Bg4 4 0 5 +702 f6 4 0 3 +702 g6 4 0 2 +702 f5 3 0 2 +707 Nf6 13 2 24 +707 e6 16 3 16 +707 Nc6 10 4 16 +707 Bf5 8 0 7 +707 c5 8 0 5 +710 e6 8 0 9 +710 Nf6 3 0 3 +710 Nc6 1 0 4 +710 c5 1 0 4 +722 Nf6 16 2 15 +722 e6 6 0 8 +722 g6 8 0 3 +722 Nd7 3 0 7 +722 Nc6 7 0 2 +722 f6 2 0 3 +725 f6 7 1 3 +725 g6 3 0 5 +725 Nf6 3 0 2 +723 e6 6 2 5 +723 Nf6 8 0 4 +723 g6 2 1 5 +723 Nc6 5 0 3 +723 e5 4 0 2 +720 Nf6 35 3 25 +720 e6 35 1 13 +720 g6 20 1 13 +720 e5 16 1 7 +720 Bg4 11 0 8 +720 Nc6 10 1 5 +720 Nd7 4 0 4 +720 c6 3 1 3 +720 c5 3 1 1 +720 f5 4 0 1 +727 g6 3 0 3 +727 e6 2 0 3 +718 Nf6 103 8 83 +718 e6 82 3 46 +718 g6 45 6 52 +718 e5 32 6 35 +718 c6 12 0 10 +718 c5 16 1 4 +718 Nc6 15 0 5 +718 Bf5 11 1 4 +718 Nd7 9 0 3 +718 b6 6 1 2 +718 f5 5 0 4 +718 f6 4 0 3 +718 Bg4 5 0 2 +718 Bd7 3 0 3 +726 g6 5 0 4 +726 e6 1 0 7 +726 Nf6 5 0 3 +726 c6 3 0 3 +721 Nf6 24 1 29 +721 e6 31 3 20 +721 e5 20 0 14 +721 g6 9 2 22 +721 Nd7 2 0 8 +721 Nc6 6 0 2 +721 f6 4 0 4 +721 c6 3 1 3 +721 c5 5 0 1 +721 b6 2 0 4 +721 a6 2 0 3 +721 Bf5 3 0 2 +719 Nf6 43 1 34 +719 e6 37 1 33 +719 e5 25 0 11 +719 g6 15 2 14 +719 c6 8 0 5 +719 Nc6 6 0 6 +719 f5 5 0 4 +719 b6 6 0 1 +719 d5 5 0 2 +719 a6 5 0 2 +719 Nd7 5 0 1 +719 c5 4 0 1 +724 e6 5 0 12 +724 Nf6 7 0 7 +724 g6 1 0 6 +729 Nf6 7 0 2 +728 Nf6 6 0 2 +728 e6 2 0 3 +741 exd4 2 0 5 +737 e4 14 0 12 +737 exd4 18 0 6 +737 Nc6 3 1 1 +739 exd4 3 0 10 +736 exd4 37 1 26 +736 e4 4 0 8 +736 d5 4 0 3 +734 d6 26 1 23 +734 Bc5 14 0 23 +734 Nf6 19 0 13 +734 f5 3 0 7 +734 c6 5 0 4 +734 e4 5 0 4 +733 Nc6 121 3 107 +733 d6 66 2 35 +733 f6 37 3 22 +733 Qe7 32 1 21 +733 Bc5 20 1 14 +733 d5 15 3 14 +733 Bb4 6 0 1 +735 exd4 30 3 33 +735 e4 6 1 8 +735 Nc6 4 0 4 +735 d6 5 0 1 +735 d5 3 0 2 +740 exd4 3 0 6 +738 exd4 8 2 12 +748 d5 66 7 64 +748 d6 29 1 29 +748 Nf6 25 1 16 +748 c5 18 3 20 +748 b6 14 1 11 +748 f5 10 2 8 +748 Nc6 10 0 7 +748 Qf6 7 0 9 +748 Be7 4 0 8 +748 c6 3 0 5 +748 Bb4 5 0 2 +748 g5 7 0 0 +748 g6 5 0 1 +755 d5 22 1 4 +755 Qxg5 3 0 18 +755 Be7 2 0 6 +751 d5 36 2 19 +751 c5 12 0 10 +751 d6 7 0 8 +751 Nc6 6 0 5 +751 b6 6 1 3 +751 Ne7 1 0 6 +751 Nf6 5 1 1 +751 Bb4 3 0 4 +751 Qf6 2 0 3 +751 Qe7 5 0 0 +745 d5 239 11 177 +745 c5 57 2 51 +745 d6 51 3 36 +745 Nf6 47 5 31 +745 Ne7 23 1 43 +745 b6 37 1 26 +745 Nc6 19 1 7 +745 f5 13 1 9 +745 c6 12 1 8 +745 Qe7 11 0 6 +745 h6 11 1 3 +745 g6 5 0 9 +745 Qf6 8 1 4 +745 Bd6 12 0 1 +745 Be7 9 0 3 +745 a6 7 0 5 +745 Bb4 8 1 2 +745 f6 6 0 3 +749 d5 75 5 36 +749 c5 40 1 17 +749 Nf6 27 2 8 +749 Nc6 29 0 7 +749 d6 19 1 7 +749 b6 16 0 6 +749 Qf6 14 1 4 +749 Be7 9 0 3 +749 Bd6 6 0 2 +749 g6 6 0 2 +749 f5 4 0 3 +749 c6 4 0 1 +749 Qh4 3 0 2 +757 d5 7 1 5 +757 Ne7 3 0 2 +753 d5 18 1 30 +753 c5 2 0 9 +753 d6 9 0 1 +753 Nf6 1 0 6 +753 b6 1 1 4 +753 Qf6 1 1 3 +744 d5 505 36 365 +744 d6 161 4 104 +744 c5 146 11 107 +744 Nf6 119 7 83 +744 Ne7 60 5 75 +744 b6 60 5 50 +744 c6 51 6 31 +744 f5 40 6 34 +744 Bb4 41 4 24 +744 Be7 33 1 24 +744 Nc6 32 2 9 +744 g6 22 1 13 +744 Qe7 24 1 8 +744 Qf6 14 0 14 +744 a6 10 0 7 +744 h6 6 0 5 +744 f6 9 0 0 +744 Qh4 6 0 2 +744 g5 6 0 1 +744 Bd6 5 0 1 +754 exd5 17 0 23 +754 e5 3 0 8 +754 d6 3 0 7 +747 d5 145 14 182 +747 c5 41 1 49 +747 d6 43 5 33 +747 Nf6 32 1 20 +747 b6 27 0 19 +747 Ne7 8 2 21 +747 f5 13 0 11 +747 c6 11 1 10 +747 Bb4 14 1 7 +747 Qe7 7 1 12 +747 g6 5 1 12 +747 Nc6 14 0 4 +747 Qf6 4 0 6 +747 Bd6 7 0 1 +747 a6 4 0 4 +747 Be7 1 0 4 +746 d5 160 6 164 +746 c5 58 6 74 +746 d6 44 6 45 +746 Nf6 34 2 25 +746 b6 16 4 27 +746 c6 20 2 15 +746 Ne7 14 0 22 +746 Nc6 19 1 12 +746 Qh4 12 0 16 +746 Qf6 17 0 5 +746 Bb4 16 0 6 +746 Qe7 7 1 12 +746 g6 8 0 6 +746 Be7 6 1 7 +746 a6 6 1 4 +746 h6 4 0 4 +746 f5 2 0 3 +750 d5 45 4 42 +750 d6 15 0 12 +750 c5 10 0 4 +750 b6 3 0 10 +750 Nf6 6 0 4 +750 Nc6 5 0 3 +750 Qf6 4 0 3 +750 Bb4 7 0 0 +750 g6 3 0 4 +750 f5 2 0 3 +756 d5 15 2 10 +756 d6 2 0 5 +756 c5 1 0 5 +756 Nf6 3 0 2 +752 d5 28 0 27 +752 c5 8 0 8 +752 Nf6 6 0 7 +752 d6 6 0 1 +752 b6 2 0 5 +758 d5 7 0 5 +758 c5 2 0 3 +759 d5 4 0 3 +765 Nf6 17 2 17 +765 d5 5 0 3 +770 Nf6 5 0 3 +770 h6 3 0 2 +766 Nf6 23 0 16 +763 Nf6 47 3 26 +763 e6 4 0 6 +763 g6 3 0 3 +763 d5 3 0 2 +773 Nf6 4 0 3 +762 Nf6 94 7 92 +762 e6 31 3 19 +762 g6 10 0 7 +762 d5 10 0 7 +762 d6 5 0 4 +771 Nf6 6 0 6 +764 Nf6 26 3 27 +764 g6 4 0 7 +764 d5 3 0 7 +768 fxe4 9 0 5 +769 Nf6 6 0 7 +772 Nf6 2 0 4 +767 Nf6 11 1 9 +776 e6 5 0 0 +775 Nh6 4 0 2 +775 e5 5 0 1 +788 Bg7 33 3 38 +793 Bg7 9 0 12 +787 Bg7 63 2 27 +785 Bg7 98 10 83 +796 Bg7 7 0 7 +795 Bg7 8 0 8 +791 Bg7 7 1 14 +783 Bg7 253 13 192 +783 Nf6 6 1 6 +783 d6 7 0 4 +783 e6 3 0 4 +783 c6 3 1 3 +783 d5 4 0 1 +783 b6 5 0 0 +792 Bg7 3 1 13 +786 Bg7 78 5 80 +786 e6 4 0 3 +784 Bg7 106 6 103 +784 d5 4 1 4 +784 Nf6 4 0 3 +784 d6 3 0 2 +789 Bg7 19 2 25 +794 Bg7 6 1 9 +790 Bg7 10 1 17 +807 e5 2 0 3 +806 d5 7 0 2 +812 d5 1 0 8 +812 e5 2 0 7 +811 d5 9 1 11 +811 g6 1 1 3 +811 e6 2 0 3 +813 Nc6 3 0 2 +813 g6 2 0 3 +828 Bb7 5 0 6 +830 Bb7 3 1 3 +827 Bb7 3 0 8 +829 Bb7 4 0 3 +824 Nc6 7 0 7 +824 Bb7 7 1 3 +824 c6 3 1 2 +825 Bb7 7 0 6 +823 Bb7 9 1 23 +822 Bb7 16 0 24 +831 Bb7 1 0 5 +832 Bb7 5 0 2 +826 Bb7 6 0 8 +845 e6 4 0 4 +845 Nc6 2 0 3 +844 d5 2 0 4 +844 d6 3 0 2 +842 d5 3 0 3 +843 d5 4 0 7 +838 Nc6 2 0 9 +838 d6 3 0 6 +841 d6 0 0 11 +841 Nc6 3 0 3 +841 d5 1 0 4 +846 d6 3 0 4 +846 e6 2 0 3 +837 d6 6 0 5 +837 Nc6 6 0 4 +837 e6 4 1 4 +837 d5 3 0 4 +839 d6 4 0 3 +839 e6 3 0 3 +839 Nc6 4 1 1 +848 Nc6 5 0 3 +835 d6 9 0 7 +835 d5 6 0 10 +835 Nc6 3 1 7 +835 e6 7 0 4 +835 e5 2 0 6 +835 g6 0 1 6 +834 cxd4 28 0 34 +834 d5 6 1 11 +834 e6 7 0 3 +834 g6 4 0 1 +849 Nc6 3 0 2 +840 g6 7 0 12 +836 d5 6 0 5 +836 Nc6 3 0 8 +836 d6 4 0 7 +836 e6 4 1 4 +856 d5 1 1 3 +852 d5 8 0 12 +853 d5 6 0 10 +851 d5 16 2 11 +854 d5 6 0 5 +873 c6 5 1 5 +870 e5 4 0 8 +867 Nf6 5 0 5 +867 e5 2 0 7 +867 c5 0 0 7 +867 e6 4 0 3 +868 e5 7 1 3 +868 c6 3 1 2 +864 e6 5 0 11 +864 Nc6 4 1 9 +864 Nf6 2 0 4 +863 e5 8 1 16 +863 e6 4 1 4 +863 c5 3 0 4 +863 c6 1 0 5 +863 Bf5 3 1 1 +866 Nf6 2 0 7 +866 e5 3 2 4 +866 e6 0 1 6 +872 e5 7 0 4 +862 e5 21 0 16 +862 e6 7 0 6 +862 c5 6 1 5 +862 Nf6 6 0 6 +862 Nc6 5 0 4 +862 d4 4 0 4 +871 e5 4 0 9 +871 c5 2 0 4 +869 e6 5 0 5 +869 c6 2 2 4 +860 e5 21 0 32 +860 e6 13 2 17 +860 Nf6 8 3 7 +860 c5 4 1 6 +860 Bf5 5 0 4 +860 c6 3 0 2 +859 e6 32 2 24 +859 Nf6 9 2 24 +859 Nc6 12 3 13 +859 c5 7 3 10 +859 Bf5 8 2 7 +859 e5 7 0 5 +859 c6 4 1 6 +865 Bf5 15 1 16 +861 e5 21 3 40 +861 e6 13 1 4 +861 Nf6 6 0 6 +861 c5 1 0 8 +875 e5 1 0 4 +884 Bg4 1 0 4 +880 e6 18 1 8 +880 Nf6 2 0 5 +883 e6 12 1 1 +881 e6 4 1 4 +879 Nf6 8 1 8 +879 e6 8 1 2 +879 e5 9 0 2 +879 g6 4 0 4 +882 e5 2 0 5 +896 d5 6 2 27 +896 Nf6 5 0 5 +896 Nc6 4 0 5 +896 d6 2 0 7 +896 Qf6 2 1 3 +904 d5 4 1 8 +893 d5 24 1 30 +893 Nf6 8 0 5 +893 Bc5 4 0 6 +893 Nc6 5 0 5 +893 d6 3 0 2 +893 e4 2 0 3 +894 d5 13 1 32 +894 Nf6 8 1 22 +894 Nc6 5 0 3 +894 d6 2 0 3 +900 d5 15 0 14 +891 Nc6 23 2 41 +891 d6 10 0 25 +891 e4 16 1 16 +905 d5 1 0 4 +898 d5 9 1 26 +898 Nc6 6 0 5 +898 d6 5 0 2 +898 Nf6 2 0 3 +897 d5 10 1 22 +897 Nf6 3 0 11 +897 Nc6 3 1 6 +897 d6 5 0 3 +895 Nc6 16 1 25 +895 d6 7 0 14 +895 Nf6 4 0 8 +895 Qf6 8 1 2 +895 g6 3 0 2 +895 Qe7 3 0 2 +903 d5 7 0 7 +889 d5 54 4 67 +889 Nc6 27 0 29 +889 d6 18 0 7 +889 e4 10 0 11 +889 Nf6 6 1 14 +889 Bc5 13 0 7 +889 g6 2 0 5 +892 d5 26 1 25 +892 Nc6 7 0 5 +892 d6 5 1 6 +892 Nf6 4 2 4 +892 Bc5 3 0 2 +892 e4 3 0 2 +892 c5 3 0 2 +901 Nf6 2 1 8 +901 Nc6 4 0 2 +901 d6 1 0 4 +888 d5 76 5 96 +888 d6 18 1 20 +888 Nf6 11 2 14 +888 Nc6 16 1 10 +888 Bc5 10 0 5 +888 f5 2 0 5 +888 Qf6 3 0 2 +887 exd4 58 7 73 +887 e4 47 4 57 +887 Nc6 13 0 9 +887 d6 13 0 4 +887 d5 2 0 6 +899 Nf6 3 0 11 +899 d5 3 0 5 +899 d6 1 1 3 +899 Nc6 2 0 3 +906 d5 2 1 2 +902 exf4 8 0 7 +902 d6 4 0 1 +890 d5 55 7 54 +890 Nc6 16 1 14 +890 f5 6 0 9 +890 Nf6 6 0 8 +890 Bc5 3 0 6 +890 e4 5 0 4 +890 Qf6 4 1 0 +890 d6 1 1 3 +920 d5 1 1 7 +919 d5 3 0 4 +917 d5 2 0 3 +914 d5 10 0 9 +914 Nf6 4 0 6 +914 d6 3 0 5 +915 d5 6 2 15 +915 d6 6 0 2 +916 d5 5 0 6 +916 d6 5 0 2 +916 Nf6 1 0 4 +913 d5 16 0 10 +913 d6 7 0 2 +913 Qf6 4 0 4 +922 d5 2 0 4 +911 d5 17 2 28 +911 d6 11 1 8 +911 Qe7 4 0 3 +911 c5 3 0 3 +910 d5 38 5 52 +910 b6 7 0 8 +910 Nf6 5 1 7 +910 d6 8 0 5 +910 c5 3 0 4 +910 c6 3 0 3 +910 Ne7 1 1 3 +918 d5 4 0 6 +912 d5 12 0 24 +912 d6 3 1 2 +912 Nf6 3 0 2 +912 b6 2 0 3 +925 Nf6 3 0 2 +933 Bg7 1 0 4 +935 Bg7 1 0 5 +931 Bg7 4 1 2 +929 Bg7 2 0 6 +928 Bg7 5 0 4 +932 Bg7 3 0 3 +926 Bg7 15 1 12 +927 Bg7 7 1 15 +930 Bg7 3 0 4 +942 e5 11 1 6 +942 a6 8 0 4 +942 Nd4 2 0 7 +942 Nf6 4 0 1 +942 Ne5 4 0 1 +938 e6 29 3 17 +938 e5 30 1 16 +938 Nf6 24 0 17 +938 a6 10 0 6 +938 Ne5 4 0 2 +938 g6 5 0 1 +939 e5 19 2 25 +939 Nf6 12 1 6 +939 e6 2 0 5 +939 d6 4 1 2 +936 e5 166 8 129 +936 d5 45 4 42 +936 Nf6 42 1 33 +936 d6 29 1 15 +936 e6 20 1 6 +936 f5 6 1 9 +936 b6 7 1 2 +936 f6 5 0 2 +936 a6 5 0 2 +936 h6 2 1 3 +944 Nf6 1 0 7 +944 g6 4 1 3 +943 e5 7 0 6 +943 d5 4 0 8 +943 Nf6 5 0 1 +947 e5 2 0 3 +941 e5 11 1 17 +941 d5 2 3 7 +941 d6 0 1 5 +937 d5 104 8 90 +937 e5 72 2 62 +937 e6 44 3 21 +937 Nf6 26 1 13 +937 d6 12 0 6 +940 e5 24 1 12 +940 d5 10 1 8 +940 d6 6 2 1 +940 e6 5 0 2 +940 b6 4 0 1 +954 Nxe4 9 0 11 +956 e5 2 0 7 +956 d5 1 0 4 +949 d5 136 13 158 +949 e5 95 4 70 +949 d6 22 1 33 +949 Nc6 25 0 11 +949 c6 13 0 3 +949 c5 9 0 2 +949 e6 7 0 3 +949 g6 7 0 1 +951 Nxe4 30 0 53 +951 e5 1 0 4 +958 e5 4 0 2 +953 e5 3 0 10 +953 d5 6 0 2 +953 d6 3 0 2 +950 d5 32 1 57 +950 e5 35 0 37 +950 d6 12 0 12 +950 e6 5 1 7 +950 Nc6 6 0 5 +950 Ng8 4 0 5 +950 g6 2 1 3 +955 Nxe4 6 0 12 +948 Nd5 391 25 413 +948 Ne4 36 3 12 +948 Ng8 20 2 15 +948 Ng4 7 0 4 +948 Nh5 6 0 3 +952 d5 5 0 10 +952 e5 4 0 5 +957 Nxe4 4 0 5 +961 b6 2 1 2 +960 b6 9 2 1 +960 c6 3 0 2 +960 a4 3 0 2 +965 b5 16 1 12 +965 e6 7 1 4 +965 b6 2 1 3 +968 b5 5 0 12 +964 b5 51 5 46 +964 b6 10 2 10 +964 h6 14 0 4 +964 Nc6 6 0 1 +967 b5 11 0 6 +963 b5 84 5 77 +963 b6 7 4 11 +963 h6 11 0 5 +963 Nf6 5 0 5 +963 e6 3 0 3 +966 b5 9 1 10 +974 a6 3 0 2 +994 Bb7 1 0 5 +980 Bb7 161 14 127 +980 e6 5 1 6 +980 Ba6 4 0 3 +992 Bb7 5 0 6 +990 Bb7 10 0 3 +982 Bb7 77 4 45 +979 Bb7 347 22 368 +979 Ba6 10 1 6 +979 e6 8 0 1 +979 g6 6 1 1 +985 Bb7 18 0 23 +991 Bb7 2 0 7 +989 Bb7 8 0 6 +993 Bb7 1 0 7 +986 Bb7 19 1 12 +983 Bb7 53 1 66 +978 Bb7 436 25 353 +978 Ba6 12 2 5 +978 g6 7 0 10 +978 e6 11 0 4 +978 d6 7 0 6 +978 Nc6 4 0 2 +978 d5 4 0 2 +978 a5 3 0 2 +987 Bb7 9 0 18 +984 Bb7 24 4 30 +981 Bb7 55 2 89 +988 Bb7 16 0 14 +1012 a6 5 0 17 +1012 Nc6 3 0 6 +1012 g6 3 1 1 +997 Nc6 410 34 507 +997 e6 385 28 513 +997 d6 191 15 242 +997 a6 24 3 35 +997 Nf6 18 1 28 +997 g6 16 0 19 +997 e5 16 0 7 +997 b6 8 0 9 +1015 Nc6 0 0 5 +1014 d6 3 0 3 +1014 Nc6 2 0 3 +1000 Nc6 195 16 207 +1000 d6 138 6 136 +1000 e6 108 16 85 +1000 g6 32 0 25 +1000 a6 17 1 20 +1000 e5 12 1 7 +1000 b6 9 0 4 +1000 Nf6 4 0 3 +1009 Nc6 19 3 14 +1009 d6 12 0 16 +1009 e6 10 1 3 +996 Nc6 1684 125 1814 +996 d6 1415 114 1611 +996 e6 792 53 850 +996 g6 197 4 203 +996 a6 76 5 81 +996 b6 64 4 45 +996 d5 39 2 23 +996 Nf6 30 3 25 +996 e5 7 1 6 +996 h6 7 1 4 +996 Qa5 9 0 2 +996 f6 5 1 2 +996 Qc7 5 0 2 +1007 Nc6 24 4 45 +1007 d6 6 0 18 +1007 e6 2 0 8 +1007 e5 6 0 2 +1004 e6 17 0 64 +1004 d6 13 1 36 +1004 Nf6 7 0 29 +1004 Nc6 7 0 9 +1004 g6 7 0 4 +1004 b6 5 0 3 +1013 d6 2 0 8 +1013 Nc6 3 0 6 +1013 e6 2 0 5 +1006 Nc6 26 1 37 +1006 d6 15 1 14 +1006 e6 8 3 12 +1006 e5 6 2 7 +1006 d5 0 1 5 +1006 Nf6 2 0 3 +1011 cxb4 11 0 15 +1011 e6 5 1 3 +1011 b6 5 1 2 +1011 d6 2 0 3 +1002 Nc6 83 6 77 +1002 d6 46 0 61 +1002 e6 25 2 40 +1002 d5 21 1 31 +1002 Nf6 11 2 26 +1002 e5 10 1 19 +1002 g6 7 0 9 +1002 a6 4 0 4 +1002 b6 3 0 3 +1003 Nc6 97 5 124 +1003 d6 44 7 50 +1003 e6 29 6 32 +1003 g6 11 2 17 +1003 e5 12 1 10 +1003 Nf6 5 1 3 +1003 b6 5 0 1 +1001 Nc6 118 8 147 +1001 d6 75 7 101 +1001 e6 50 5 79 +1001 g6 16 0 24 +1001 e5 10 0 21 +1001 d5 6 0 12 +1001 b6 4 0 3 +998 cxd4 410 19 591 +998 e6 64 2 44 +998 d6 38 3 18 +998 Nc6 30 0 17 +998 b6 15 1 15 +998 g6 4 1 5 +998 Nf6 3 0 4 +998 d5 6 0 1 +998 c4 4 0 1 +1005 Nc6 28 4 78 +1005 e6 12 0 22 +1005 d6 10 1 13 +1005 d5 3 0 6 +1008 Nc6 13 2 35 +1008 d6 7 1 15 +1008 e6 4 0 10 +1008 g6 1 0 9 +1008 b6 5 0 0 +999 Nc6 206 9 186 +999 d6 115 13 120 +999 e6 106 9 112 +999 d5 68 2 79 +999 g6 27 3 33 +999 b6 12 0 11 +999 e5 6 0 11 +999 a6 7 0 5 +999 Nf6 2 0 6 +1010 Nc6 14 2 13 +1010 d6 3 0 14 +1010 e6 6 0 7 +1022 d5 174 11 145 +1022 e6 30 2 31 +1022 b5 9 1 3 +1022 a6 8 0 0 +1022 d6 2 0 3 +1024 d5 106 13 82 +1024 e6 11 1 7 +1024 e5 5 0 4 +1024 d6 6 1 1 +1024 h6 2 0 3 +1033 d5 3 1 16 +1021 d5 564 53 640 +1021 e6 50 4 55 +1021 d6 37 2 33 +1021 b5 14 0 15 +1021 g6 11 1 16 +1021 Nf6 6 0 6 +1021 e5 6 0 5 +1021 c5 2 0 3 +1021 f6 3 0 2 +1028 d5 12 0 24 +1028 e6 4 0 4 +1030 Nf6 6 0 10 +1035 d5 4 0 2 +1031 d5 8 0 12 +1034 d5 5 0 8 +1026 d5 33 2 26 +1026 e5 7 0 2 +1026 e6 1 0 4 +1025 d5 64 1 91 +1025 e6 9 0 5 +1025 d6 3 0 5 +1020 d5 785 49 679 +1020 e6 77 3 47 +1020 d6 29 2 24 +1020 b5 24 2 9 +1020 g6 13 0 7 +1020 h6 3 1 6 +1020 Nf6 5 1 4 +1020 f6 3 0 2 +1027 d5 14 1 28 +1027 e6 3 0 14 +1027 d6 4 0 4 +1029 d5 10 1 9 +1023 d5 125 13 146 +1023 e6 15 1 10 +1023 d6 8 1 8 +1023 e5 4 0 7 +1023 b5 3 0 3 +1023 g6 5 0 1 +1032 d5 6 0 7 +1032 e6 1 0 4 +1044 c6 18 1 15 +1044 Bd7 6 0 2 +1048 dxc4 3 1 5 +1045 dxe4 6 1 11 +1045 d4 1 0 6 +1039 d4 109 7 87 +1039 dxe4 61 4 46 +1039 Nf6 12 1 9 +1039 c6 8 1 8 +1039 e6 6 0 3 +1038 dxe4 158 8 165 +1038 d4 4 0 10 +1038 e6 8 0 4 +1038 c6 7 0 3 +1038 Nf6 4 1 3 +1047 dxe4 4 1 6 +1047 d4 3 0 2 +1043 dxe4 10 2 30 +1043 Nf6 3 0 7 +1043 d4 7 0 2 +1049 dxe4 4 1 2 +1049 Nf6 3 0 4 +1050 dxe4 3 0 4 +1040 dxe4 52 8 88 +1040 d4 14 1 24 +1040 e6 6 1 3 +1040 Nf6 4 1 3 +1040 e5 4 0 3 +1040 c6 4 0 2 +1041 dxe4 64 6 52 +1041 e6 7 1 1 +1041 c6 3 0 4 +1037 d4 211 14 159 +1037 e6 193 6 160 +1037 Nc6 145 10 125 +1037 c5 70 6 94 +1037 Bf5 62 4 71 +1037 f6 55 1 52 +1037 c6 8 1 10 +1037 Be6 7 0 1 +1037 Nf6 6 0 1 +1037 Nh6 5 0 2 +1037 Qd7 5 0 0 +1037 h5 3 2 0 +1037 a6 2 0 3 +1036 Qxd5 2542 149 1715 +1036 Nf6 460 46 490 +1036 c6 75 4 71 +1036 e6 47 2 38 +1036 e5 43 1 39 +1036 Bf5 7 0 6 +1036 Qd6 8 1 2 +1036 Qd7 4 0 2 +1036 Nc6 1 0 4 +1036 Bg4 2 1 2 +1042 dxe4 18 1 48 +1042 d4 5 1 14 +1042 e5 3 1 3 +1046 dxe4 14 1 13 +1064 c6 7 0 6 +1064 Bd7 1 1 4 +1055 e6 73 3 47 +1055 Nf6 41 3 54 +1055 e5 29 1 19 +1055 g6 17 3 19 +1055 c6 7 2 6 +1055 f5 10 0 2 +1055 Nc6 7 2 3 +1055 c5 7 1 3 +1057 Nf6 32 1 22 +1057 e5 21 3 15 +1057 g6 17 1 19 +1057 e6 16 0 6 +1057 f5 6 0 1 +1057 c6 5 0 1 +1057 Nc6 3 1 2 +1057 c5 3 0 2 +1057 a6 2 0 3 +1066 Nf6 3 0 4 +1054 Nf6 155 13 187 +1054 e5 120 8 96 +1054 e6 103 6 59 +1054 g6 53 10 94 +1054 Nc6 31 2 21 +1054 Bg4 27 0 21 +1054 c5 24 1 15 +1054 c6 20 1 14 +1054 f5 22 2 11 +1054 Nd7 12 0 14 +1054 h6 2 0 9 +1054 a6 8 0 2 +1054 b6 6 2 1 +1054 d5 4 0 5 +1054 f6 6 0 2 +1054 Bd7 4 0 2 +1060 Nf6 3 0 8 +1060 e6 5 0 5 +1060 e5 2 0 4 +1060 g6 1 1 3 +1065 g6 5 0 2 +1065 Nf6 3 0 3 +1062 Nf6 4 0 7 +1062 e5 3 0 3 +1059 Nf6 10 0 9 +1059 e6 8 0 2 +1059 e5 5 0 5 +1059 g6 3 1 5 +1058 e5 14 1 20 +1058 Nf6 12 2 14 +1058 e6 10 2 10 +1058 g6 7 0 12 +1058 c5 8 0 1 +1058 Nc6 3 1 3 +1053 Nf6 325 15 291 +1053 e6 173 11 116 +1053 g6 133 6 115 +1053 e5 82 4 62 +1053 c6 52 1 25 +1053 Nc6 31 1 14 +1053 f5 23 1 7 +1053 c5 15 1 15 +1053 Nd7 8 0 11 +1053 b6 9 1 6 +1053 d5 11 1 1 +1053 Bd7 10 1 1 +1053 a6 10 1 0 +1053 f6 8 0 2 +1053 h6 7 0 2 +1053 Be6 6 0 1 +1053 h5 3 0 3 +1068 dxe5 3 0 3 +1061 e5 2 0 6 +1061 e6 2 0 5 +1061 Nf6 3 0 3 +1056 e5 39 2 28 +1056 Nf6 28 1 21 +1056 g6 23 0 23 +1056 e6 23 0 12 +1056 c5 10 0 8 +1056 Nc6 11 0 3 +1056 f5 5 1 3 +1056 c6 4 0 3 +1056 Nd7 4 0 3 +1063 Nf6 5 0 4 +1063 g6 0 0 5 +1088 c6 13 0 14 +1088 Nf6 9 0 9 +1088 Nc6 7 0 10 +1088 a6 3 1 5 +1088 Bc5 3 0 4 +1074 Nf6 981 58 828 +1074 Nc6 773 55 711 +1074 d6 432 21 304 +1074 Bc5 369 24 308 +1074 c6 115 7 79 +1074 Qf6 62 4 46 +1074 h6 53 8 33 +1074 Qh4 53 2 32 +1074 a6 45 2 19 +1074 f5 18 1 33 +1074 f6 29 2 15 +1074 g6 23 0 13 +1074 Be7 17 3 16 +1074 Nh6 26 1 7 +1074 Qe7 22 0 5 +1074 c5 14 1 10 +1074 d5 15 0 5 +1074 b6 15 1 4 +1074 Ne7 7 0 4 +1074 Bb4 8 0 2 +1074 Bd6 5 0 2 +1074 a5 2 0 5 +1074 Qg5 5 0 2 +1074 h5 4 1 2 +1091 Nc6 4 1 7 +1091 d6 4 0 2 +1091 Bc5 0 0 5 +1093 Nf6 7 0 4 +1093 Nc6 2 0 4 +1079 Nc6 250 18 190 +1079 Nf6 214 19 175 +1079 d6 142 2 83 +1079 Bc5 66 7 59 +1079 Bb4 37 3 34 +1079 c6 19 1 25 +1079 f5 13 3 15 +1079 c5 6 0 5 +1079 a6 8 1 2 +1079 Qf6 9 0 2 +1079 Qh4 5 1 2 +1079 d5 4 0 3 +1079 f6 3 0 3 +1079 g6 2 0 4 +1079 b6 5 0 1 +1085 Nc6 14 6 26 +1085 d6 14 0 17 +1085 Nf6 10 2 11 +1085 Bc5 5 0 7 +1085 d5 2 0 4 +1073 Nc6 8015 569 7269 +1073 d6 3823 238 2750 +1073 Nf6 1389 88 1050 +1073 Qf6 458 22 300 +1073 Bc5 282 12 189 +1073 f6 323 7 104 +1073 d5 219 7 144 +1073 f5 180 12 173 +1073 Bd6 164 8 59 +1073 c6 36 1 24 +1073 Qe7 39 2 15 +1073 b6 29 1 11 +1073 Bb4 32 0 8 +1073 c5 24 2 12 +1073 g6 20 1 12 +1073 h6 16 0 7 +1073 g5 15 1 2 +1073 Be7 12 1 2 +1073 h5 7 0 2 +1073 Qh4 8 0 0 +1073 a6 7 0 1 +1073 Nh6 7 0 0 +1073 Qg5 5 0 1 +1073 Ne7 3 0 2 +1073 a5 3 0 2 +1073 Na6 4 0 1 +1095 Nf6 1 0 5 +1095 Nc6 1 0 4 +1080 Nf6 89 6 103 +1080 Nc6 68 2 70 +1080 d6 29 1 30 +1080 Bc5 22 3 18 +1080 Qf6 18 3 21 +1080 f6 7 1 5 +1080 d5 6 0 1 +1080 h6 1 0 4 +1080 Be7 3 0 2 +1077 Nc6 259 27 373 +1077 d6 156 8 163 +1077 Nf6 115 8 113 +1077 Qf6 93 12 109 +1077 g6 62 1 11 +1077 Qe7 25 1 24 +1077 Bc5 9 0 5 +1077 d5 7 0 3 +1077 Bd6 6 0 2 +1077 Nh6 2 0 5 +1086 Nf6 15 0 21 +1086 Nc6 4 1 9 +1086 Bc5 7 0 7 +1086 d6 2 2 10 +1086 d5 8 0 1 +1084 Nf6 24 1 22 +1084 Nc6 11 2 21 +1084 d6 12 2 19 +1084 Bc5 10 1 11 +1084 Qh4 5 0 2 +1084 d5 4 0 2 +1083 Nf6 47 0 50 +1083 Nc6 18 0 18 +1083 Bc5 16 1 19 +1083 d5 13 0 7 +1083 d6 8 0 7 +1083 c6 7 0 2 +1083 Be7 0 0 5 +1081 Nc6 58 4 50 +1081 Nf6 45 5 46 +1081 d6 38 3 29 +1081 Bc5 29 4 26 +1081 c5 13 1 10 +1081 f5 3 0 6 +1081 c6 2 1 6 +1081 g6 1 2 3 +1081 Qh4 1 0 5 +1078 Nc6 217 14 235 +1078 Nf6 145 9 155 +1078 d6 132 7 131 +1078 Bc5 71 7 106 +1078 d5 58 2 53 +1078 h6 30 0 20 +1078 Qf6 23 0 17 +1078 c6 15 1 9 +1078 Bb4 11 2 11 +1078 f5 14 0 8 +1078 c5 9 1 7 +1078 g6 8 2 2 +1078 f6 4 0 7 +1078 Qh4 8 0 2 +1078 Bd6 5 0 2 +1078 Be7 3 0 2 +1078 b6 4 0 1 +1076 exd4 968 52 928 +1076 Nc6 191 5 128 +1076 d6 167 7 79 +1076 Nf6 58 4 30 +1076 f6 58 0 28 +1076 d5 45 6 24 +1076 Qh4 30 2 18 +1076 Qf6 34 2 13 +1076 Bd6 24 1 17 +1076 Qe7 15 1 12 +1076 f5 13 0 4 +1076 Bb4 6 0 4 +1076 c5 6 0 1 +1076 c6 6 0 1 +1076 b6 4 0 2 +1082 Nc6 21 3 58 +1082 Nf6 15 2 31 +1082 d6 20 0 24 +1082 d5 8 0 14 +1082 Bc5 5 0 17 +1082 Qh4 2 0 5 +1082 f5 3 0 2 +1075 exf4 1102 32 678 +1075 Nc6 365 9 259 +1075 d6 279 9 148 +1075 d5 124 6 122 +1075 Bc5 63 3 56 +1075 Qh4 63 1 39 +1075 f6 48 1 16 +1075 Nf6 31 1 12 +1075 f5 19 2 16 +1075 Qf6 22 1 10 +1075 Bd6 24 0 7 +1075 Qe7 17 1 3 +1075 Be7 2 0 4 +1087 Nf6 6 2 18 +1087 Nc6 6 0 17 +1087 d6 3 1 10 +1087 Bc5 3 0 8 +1087 d5 4 0 6 +1090 Nf6 1 1 6 +1090 Nc6 3 0 3 +1090 d6 4 0 2 +1092 Nf6 9 0 4 +1089 Nf6 5 1 14 +1089 Bc5 2 1 7 +1089 Nc6 3 1 3 +1089 d5 3 0 2 +1116 c6 9 1 12 +1103 d5 105 8 157 +1103 d6 39 4 39 +1103 c6 23 1 23 +1103 c5 23 0 24 +1103 b6 18 2 19 +1103 Nf6 20 0 14 +1103 Nc6 14 1 6 +1103 Ne7 3 0 10 +1103 Qe7 10 0 3 +1103 a6 5 1 6 +1103 Qh4 5 0 6 +1103 g6 7 0 4 +1103 Bc5 4 0 6 +1103 Be7 4 0 1 +1103 f6 3 0 2 +1118 d5 4 0 7 +1119 d5 2 0 7 +1105 d5 109 8 148 +1105 d6 34 1 25 +1105 c5 20 2 22 +1105 c6 19 2 9 +1105 Ne7 12 0 17 +1105 b6 9 1 17 +1105 Bb4 14 1 8 +1105 Nc6 12 1 8 +1105 Nf6 10 1 8 +1105 g6 8 0 5 +1105 Be7 8 0 4 +1105 Bc5 6 0 4 +1105 a6 5 0 4 +1111 d5 8 0 17 +1111 d6 5 1 0 +1101 d5 779 73 1025 +1101 c5 193 7 216 +1101 d6 220 14 175 +1101 b6 101 3 143 +1101 c6 98 5 97 +1101 Nf6 114 3 73 +1101 Nc6 74 3 48 +1101 Ne7 51 1 56 +1101 g6 49 4 37 +1101 Qe7 31 4 27 +1101 Bc5 30 2 20 +1101 Be7 25 2 21 +1101 h6 25 0 16 +1101 a6 16 1 15 +1101 f6 15 2 13 +1101 f5 15 0 9 +1101 Qf6 10 0 11 +1101 e5 3 1 4 +1101 g5 6 0 2 +1101 Bd6 3 0 4 +1101 Bb4 3 0 3 +1120 d5 1 0 6 +1117 d5 3 0 10 +1117 c5 3 0 3 +1109 d5 5 2 21 +1109 Nc6 12 0 4 +1109 b6 3 2 4 +1109 Nf6 6 0 2 +1109 Ne7 3 0 3 +1109 g6 3 0 2 +1112 Nf6 5 1 14 +1112 d5 4 1 6 +1112 g6 1 0 5 +1114 d5 6 0 6 +1114 c5 3 0 2 +1114 b6 4 0 1 +1108 d5 20 0 37 +1108 b6 4 0 6 +1108 c5 5 0 4 +1108 Qf6 2 0 4 +1108 Nf6 1 1 3 +1113 d5 6 1 20 +1113 d6 3 0 2 +1107 d5 34 2 21 +1107 c5 10 1 18 +1107 d6 18 0 6 +1107 c6 13 1 8 +1107 b6 6 0 3 +1107 Nc6 6 0 1 +1107 Nf6 7 0 0 +1106 d5 97 7 128 +1106 d6 25 0 19 +1106 Qe7 11 2 24 +1106 c6 16 0 16 +1106 b6 16 3 8 +1106 c5 12 1 14 +1106 Nf6 9 2 9 +1106 Ne7 6 0 6 +1106 Nc6 4 1 7 +1106 Be7 4 0 4 +1106 Qf6 3 0 3 +1106 g6 3 1 1 +1106 Bc5 1 1 3 +1100 d5 1311 86 1341 +1100 d6 297 17 179 +1100 c5 191 10 201 +1100 b6 148 8 122 +1100 c6 150 8 106 +1100 Ne7 96 7 106 +1100 Nf6 129 3 54 +1100 Nc6 62 1 25 +1100 Qh4 41 3 42 +1100 g6 52 0 20 +1100 Qe7 46 0 24 +1100 Be7 28 3 25 +1100 a6 27 1 12 +1100 Bb4 18 1 4 +1100 Qf6 17 0 5 +1100 h6 11 0 10 +1100 f5 12 0 6 +1100 f6 8 0 4 +1100 Bd6 7 0 0 +1100 Qg5 5 0 1 +1100 a5 5 0 1 +1100 h5 3 0 3 +1100 e5 4 0 1 +1104 d5 96 6 105 +1104 d6 62 6 76 +1104 Nc6 36 4 26 +1104 c5 21 0 31 +1104 b6 14 0 20 +1104 f6 7 0 13 +1104 Bc5 10 0 6 +1104 g6 5 0 6 +1104 Qh4 10 0 1 +1104 Qg5 4 0 6 +1104 c6 5 0 4 +1104 Ne7 5 0 3 +1104 Be7 3 0 2 +1104 a6 2 0 3 +1104 f5 3 0 2 +1110 d5 8 1 37 +1110 d6 4 0 8 +1110 Nf6 3 0 6 +1110 Qe7 1 0 5 +1110 c6 1 0 4 +1102 d5 173 9 243 +1102 d6 51 3 22 +1102 c5 26 0 37 +1102 b6 19 0 23 +1102 Qh4 16 1 22 +1102 Ne7 17 2 19 +1102 c6 19 2 16 +1102 Nc6 17 0 9 +1102 Nf6 16 0 10 +1102 Qe7 9 0 8 +1102 Be7 11 1 5 +1102 g6 12 0 3 +1102 Bc5 7 0 3 +1102 f5 1 1 4 +1102 Qf6 4 0 1 +1115 d5 7 0 17 +1115 c5 2 1 3 +1121 d5 2 0 5 +1126 Nf6 3 0 5 +1125 d6 11 0 7 +1124 Nf6 44 2 56 +1131 e6 3 1 1 +1130 e6 8 0 2 +1130 e5 5 0 3 +1134 g6 2 0 3 +1129 e5 8 0 5 +1129 Kf7 5 0 2 +1129 e6 3 0 2 +1136 g4 25 0 26 +1138 g4 12 0 7 +1138 e5 3 0 3 +1137 g4 21 0 22 +1140 h6 0 0 5 +1139 g4 10 0 10 +1135 g4 84 3 58 +1135 e6 16 0 7 +1135 Bh6 6 0 0 +1135 h6 3 0 2 +1141 g4 4 0 2 +1157 Bg7 4 0 1 +1145 Bg7 128 7 119 +1145 e6 8 0 2 +1145 Nc6 2 0 6 +1148 Bg7 53 5 44 +1156 Bg7 7 0 1 +1144 Bg7 319 29 284 +1144 e6 3 1 6 +1144 d6 4 0 5 +1144 b6 3 0 4 +1144 f6 6 0 1 +1144 c6 3 0 4 +1150 Bg7 20 1 22 +1154 Bg7 4 0 12 +1155 Bg7 6 0 8 +1153 Bg7 10 1 9 +1147 Bg7 49 6 61 +1143 Bg7 448 27 387 +1143 e6 14 0 7 +1143 c6 8 0 6 +1143 d6 8 0 6 +1143 Nf6 5 2 3 +1143 d5 6 0 0 +1143 b6 4 0 2 +1149 Bg7 19 2 33 +1149 e6 2 0 3 +1151 Bg7 7 3 13 +1146 Bg7 87 8 71 +1146 e6 3 1 2 +1152 Bg7 8 1 10 +1160 h4 3 0 3 +1159 d6 8 0 0 +1159 h4 4 0 2 +1164 e6 7 0 1 +1163 e6 5 0 1 +1162 e6 6 0 9 +1162 a6 8 0 1 +1162 g6 1 1 4 +1168 dxe4 3 0 4 +1171 Nc6 2 0 4 +1174 d5 6 1 6 +1174 Nf6 5 0 6 +1174 d6 4 0 4 +1176 d5 9 0 10 +1176 g6 7 0 7 +1176 e6 8 0 3 +1176 d6 4 0 2 +1176 Nc6 4 0 1 +1177 b5 7 0 3 +1178 Bb7 1 0 4 +1179 Bb7 18 0 10 +1182 Bb7 3 0 2 +1181 Bb7 4 2 6 +1180 Bb7 5 0 6 +1183 Nc6 16 2 20 +1183 d5 11 0 15 +1183 d6 5 0 7 +1183 g6 7 1 3 +1183 e6 7 0 3 +1184 Nc6 1 1 5 +1184 d5 3 0 2 +1184 d6 1 0 4 +1185 Nc6 2 0 3 +1186 d5 18 0 11 +1188 d5 3 0 2 +1189 c5 50 2 44 +1189 Nc6 43 4 34 +1189 e6 38 4 26 +1189 Nf6 28 2 20 +1189 Bg4 22 2 17 +1189 Bf5 14 0 9 +1189 c6 12 0 8 +1189 f5 5 0 8 +1189 g6 5 0 4 +1189 d4 3 0 5 +1189 f6 4 0 3 +1192 dxc4 2 0 3 +1191 e6 4 1 5 +1191 Nc6 2 0 5 +1191 Nf6 2 0 5 +1191 Bf5 2 0 4 +1190 Nf6 8 0 14 +1190 Nc6 9 0 8 +1190 c5 6 0 10 +1190 e6 8 0 3 +1190 Bf5 1 0 6 +1190 c6 2 0 3 +1190 d4 2 0 3 +1195 g6 4 0 3 +1195 e5 4 0 2 +1195 Nf6 4 0 2 +1195 Nc6 4 0 1 +1196 e5 2 0 3 +1198 exf4 8 1 19 +1198 Nc6 2 0 4 +1197 d6 12 2 27 +1202 d5 46 2 35 +1202 c5 9 0 8 +1202 b6 10 0 1 +1202 Bc5 4 0 4 +1202 Nf6 6 0 2 +1202 d6 6 1 1 +1202 f5 0 0 5 +1202 Bd6 4 0 1 +1202 Nc6 2 0 3 +1202 Ne7 3 0 2 +1205 d5 3 0 4 +1203 d5 5 0 11 +1204 d5 4 1 2 +1207 Nf6 7 0 4 +1209 Bg7 25 1 16 +1212 Bg7 3 0 3 +1210 Bg7 3 0 4 +1213 b6 6 0 2 +1213 d5 3 0 5 +1214 g6 10 1 13 +1214 d5 7 1 10 +1214 e6 4 1 5 +1214 e5 5 1 3 +1214 Ng4 3 0 3 +1215 d5 2 1 6 +1215 g6 3 0 2 +1217 c6 31 0 20 +1217 Nc6 12 0 12 +1217 Bb7 7 0 1 +1219 Nc6 16 0 23 +1219 d6 8 1 15 +1219 e6 6 2 9 +1219 d5 5 0 10 +1219 Nf6 0 2 5 +1219 g6 3 0 4 +1220 g6 5 0 6 +1220 Nc6 4 0 5 +1220 d6 3 0 4 +1221 d5 25 3 42 +1221 d6 2 0 4 +1222 d5 12 0 4 +1224 e5 61 6 69 +1224 e6 44 5 33 +1224 Nf6 32 1 36 +1224 c6 20 2 41 +1224 c5 14 0 20 +1224 Nc6 10 0 11 +1224 Bf5 10 2 4 +1224 Bg4 7 1 5 +1224 d4 7 0 4 +1224 b6 2 0 3 +1225 Nf6 10 0 11 +1225 c6 11 0 6 +1225 c5 4 0 11 +1225 e6 8 0 3 +1225 Bg4 7 1 1 +1225 Nc6 4 0 3 +1226 Nc6 3 0 3 +1232 e5 10 0 9 +1232 e6 9 0 3 +1232 c6 7 0 5 +1232 c5 4 0 2 +1232 g6 2 0 3 +1233 e5 3 1 3 +1234 d5 93 3 111 +1234 Nf6 22 2 34 +1234 Nc6 20 3 25 +1234 Bc5 17 1 28 +1234 d6 15 1 16 +1234 f5 14 0 6 +1234 Qf6 9 0 8 +1234 c6 6 1 9 +1234 Ne7 3 0 3 +1235 Nc6 15 0 8 +1235 e4 10 1 5 +1235 d6 3 0 3 +1239 d5 1 0 4 +1241 exd4 3 0 2 +1236 exf4 4 0 6 +1238 d5 4 0 1 +1243 d5 57 5 63 +1243 d6 9 0 9 +1243 c6 9 0 5 +1243 Qe7 7 1 5 +1243 Nf6 3 0 5 +1243 g6 5 0 2 +1243 c5 1 0 5 +1243 Ne7 0 0 5 +1244 d5 7 1 9 +1246 Bg7 25 7 36 +1252 c6 3 1 6 +1252 Bxg4 3 1 1 +1251 e5 17 1 27 +1251 e6 0 0 18 +1251 g6 7 0 3 +1251 Bf5 3 0 3 +1256 d5 4 0 5 +1255 Qxg5 26 0 21 +1255 d5 2 0 9 +1255 Bc5 3 0 2 +1257 d5 3 0 2 +1262 Bg7 2 0 4 +1264 Nf6 2 0 9 +1264 d5 2 0 5 +1264 Nc6 1 0 5 +1269 e5 3 0 3 +1267 h6 2 0 5 +1273 d5 1 1 3 +1271 d5 4 0 3 +1270 d5 2 0 5 +1276 d5 4 0 2 +1283 d4 9 1 2 +1282 f4 4 0 1 +1282 d3 2 0 3 +1286 e4 4 0 1 +1288 Nb5 4 0 3 +1288 Ne4 2 0 3 +1294 Nf3 0 0 5 +1293 Nf3 3 1 4 +1292 e4 2 2 3 +1292 Nf3 4 0 3 +1298 exd4 4 0 1 +1297 Qh5 5 0 1 +1297 d4 3 0 2 +1302 e5 3 0 2 +1299 Nce2 41 1 17 +1299 Nd5 2 0 3 +1300 Nxe4 7 1 6 +1300 f3 1 1 3 +1304 d4 25 1 12 +1304 e4 11 2 12 +1304 e3 5 0 6 +1304 d3 0 0 5 +1305 e4 12 0 2 +1309 d5 2 0 3 +1308 Qxd4 19 0 32 +1313 Nf3 3 0 3 +1312 Nf3 6 0 8 +1312 d4 3 1 2 +1314 Nf3 5 1 2 +1319 e4 5 0 3 +1319 a3 3 1 1 +1320 e5 5 0 0 +1322 d4 1 0 9 +1322 e4 3 0 2 +1323 e4 4 1 4 +1324 d4 12 0 1 +1324 Nf3 5 0 0 +1326 d4 2 0 3 +1327 d4 1 0 4 +1325 e4 6 0 13 +1328 Nxf7 3 0 3 +1329 Nc3 5 0 2 +1331 d5 3 1 2 +1331 c4 5 0 1 +1330 c4 24 0 8 +1330 Nc3 6 1 11 +1330 e3 8 1 5 +1330 g3 11 0 3 +1330 Bf4 5 0 4 +1332 c4 1 0 4 +1335 Bb5 5 0 2 +1336 d4 2 0 8 +1336 Bc4 4 0 4 +1336 Bb5 1 0 4 +1339 Bg2 1 1 4 +1338 Bg2 3 0 2 +1337 d3 12 0 10 +1337 Bg2 9 0 7 +1337 e4 1 0 5 +1340 d4 1 0 5 +1344 Nc3 3 0 2 +1343 Nc3 1 0 6 +1342 Nc3 3 0 6 +1342 d4 5 1 1 +1342 g3 4 0 1 +1346 c4 6 1 8 +1346 e3 4 0 3 +1346 Nc3 1 0 4 +1348 Bg5 4 1 1 +1348 c4 3 0 2 +1347 c4 6 0 7 +1347 Nc3 1 0 6 +1355 Bg2 8 0 4 +1356 Bg2 3 0 2 +1353 Bg2 7 0 20 +1357 Bg2 1 0 4 +1354 Bg2 6 1 11 +1352 Bg2 24 1 24 +1358 Bg2 3 0 3 +1359 e4 2 0 4 +1360 e3 8 0 7 +1360 c4 4 1 9 +1362 Nc3 7 0 4 +1362 d3 3 0 4 +1362 e5 3 0 3 +1363 Bg2 30 1 22 +1365 d4 3 1 4 +1366 d4 3 0 2 +1367 Nc3 13 0 5 +1367 d4 4 0 2 +1367 e3 1 1 3 +1369 Nc3 2 0 3 +1368 Nc3 3 0 3 +1374 d5 3 0 3 +1372 Nxd4 20 2 21 +1372 c3 7 1 2 +1372 Qxd4 2 0 3 +1373 dxc5 5 0 1 +1378 d4 3 0 5 +1379 d4 4 0 4 +1382 Bg2 32 0 22 +1387 Bg2 1 0 5 +1388 Bg2 0 1 5 +1385 Bg2 7 0 11 +1384 Bg2 10 1 9 +1383 Bg2 16 0 4 +1386 Bg2 7 1 11 +1389 Bb2 2 0 3 +1390 cxd5 3 1 2 +1391 e3 6 0 3 +1392 e5 3 0 3 +1393 Bg2 21 1 14 +1394 Bg2 2 0 8 +1395 d4 3 0 11 +1395 e4 0 0 5 +1396 Nb5 1 0 4 +1396 Ne4 2 0 3 +1397 d4 3 0 6 +1401 Bb2 6 0 3 +1402 Bb2 3 0 4 +1403 Bb2 6 0 1 +1410 cxd5 4 0 1 +1409 cxd5 5 0 2 +1406 e3 14 0 5 +1406 d4 7 1 5 +1406 cxd5 3 0 3 +1406 b3 4 0 1 +1408 e3 12 0 5 +1408 d3 4 0 3 +1405 e3 8 0 7 +1405 Qa4 9 0 4 +1405 e4 4 1 5 +1405 Nc3 4 0 5 +1405 Na3 2 1 2 +1407 d4 7 0 1 +1407 b3 4 0 2 +1407 e3 2 0 3 +1407 g3 4 0 1 +1417 e3 10 0 7 +1417 Nc3 1 0 8 +1417 Ne5 5 0 4 +1417 c4 4 0 4 +1414 e3 25 5 23 +1414 c4 24 2 7 +1414 Bf4 16 0 3 +1414 Nc3 7 0 10 +1414 c3 2 0 4 +1414 a3 4 0 2 +1414 g3 1 0 4 +1414 h3 0 0 5 +1416 c4 25 4 14 +1416 e3 12 2 8 +1416 Bg5 6 1 7 +1416 Nc3 1 1 8 +1416 Bf4 5 1 1 +1418 dxc5 4 0 7 +1418 c4 5 0 3 +1418 c3 3 2 2 +1419 c4 7 0 2 +1419 e3 7 0 1 +1415 c4 40 1 13 +1415 e3 20 2 17 +1415 Nc3 4 0 13 +1415 Bg5 4 0 5 +1415 Bf4 5 0 1 +1415 c3 2 0 3 +1421 e3 5 0 1 +1425 c4 4 0 7 +1425 Bb5 2 0 5 +1426 c4 6 1 3 +1426 d4 5 0 1 +1427 c4 4 0 6 +1428 c4 4 1 5 +1431 Ng5 6 1 13 +1439 Bg2 10 1 8 +1437 Bg2 18 1 15 +1434 Bg2 34 2 40 +1434 d4 8 1 4 +1435 Bg2 31 4 30 +1443 Bg2 4 0 1 +1433 Bg2 43 6 50 +1438 Bg2 19 1 15 +1440 Bg2 5 0 2 +1436 Bg2 29 2 26 +1442 Bg2 3 0 5 +1445 Nc3 3 0 2 +1447 c4 3 0 4 +1450 dxe5 3 0 2 +1448 c4 3 1 2 +1448 e4 3 0 2 +1449 c4 4 0 1 +1454 d4 6 1 3 +1454 Bc4 4 0 1 +1457 Bg2 7 0 2 +1455 Bg2 7 0 8 +1455 d3 6 0 5 +1456 Bg2 5 1 5 +1459 Nxc6 3 0 2 +1458 Nf3 4 1 5 +1463 Nxd4 3 0 5 +1468 d4 2 0 10 +1471 Bb2 6 1 3 +1472 cxd5 2 0 6 +1472 g3 3 0 3 +1472 Nc3 3 0 2 +1472 d4 3 0 2 +1473 d4 4 0 1 +1477 c4 21 2 9 +1477 e3 10 1 15 +1477 Bg5 4 0 3 +1477 Nc3 4 0 2 +1478 c4 8 0 1 +1485 d4 3 0 5 +1486 e5 2 0 4 +1486 exd5 4 0 2 +1487 d4 3 0 2 +1492 Bg2 6 0 4 +1493 Bg2 5 0 2 +1491 Bg2 6 0 7 +1494 Bg2 3 1 3 +1489 Bg2 48 10 66 +1490 Bg2 6 2 5 +1497 Bg2 0 0 8 +1499 d4 3 0 3 +1500 d4 2 0 3 +1501 Nc3 5 0 4 +1501 d4 4 0 1 +1502 c4 6 3 6 +1502 e4 8 0 4 +1502 c3 2 0 3 +1503 d4 1 0 5 +1504 d4 6 0 8 +1505 Bg2 30 2 21 +1507 d3 1 0 4 +1506 d3 0 0 5 +1508 d3 8 1 3 +1510 cxd5 2 0 4 +1511 c3 8 0 2 +1514 d3 4 1 7 +1512 Qa4 5 2 9 +1513 cxd5 7 1 7 +1516 g3 0 0 5 +1515 g3 1 1 10 +1517 c3 6 1 1 +1519 d3 0 1 6 +1518 cxd5 5 1 4 +1520 d3 3 0 2 +1522 g3 5 0 2 +1523 g3 4 0 2 +1521 g3 20 0 12 +1524 d4 5 0 2 +1526 cxd5 5 1 3 +1527 d3 4 0 3 +1528 g3 3 0 2 +1529 d3 5 0 4 +1530 g3 6 0 3 +1536 e3 4 0 3 +1535 e3 2 0 6 +1535 Bxf6 5 0 0 +1534 e3 2 1 8 +1534 d3 3 2 3 +1534 Bxf6 3 0 2 +1539 e3 20 1 13 +1539 f3 16 1 9 +1539 c4 10 1 6 +1539 a3 5 1 4 +1539 d3 5 0 3 +1539 c3 3 0 3 +1540 e3 4 0 5 +1540 c4 4 0 2 +1544 c4 2 0 4 +1541 d3 2 1 5 +1542 e3 8 0 2 +1543 e3 4 1 2 +1546 e3 4 0 5 +1546 d3 0 0 5 +1546 g3 2 1 2 +1546 c4 3 0 2 +1552 e3 6 0 6 +1552 g3 3 1 1 +1548 e3 23 0 15 +1548 Nf3 8 0 3 +1548 g3 3 0 3 +1548 d4 5 0 0 +1550 e3 5 0 8 +1550 Nf3 3 0 2 +1549 e3 10 1 14 +1549 Nf3 7 1 5 +1549 d3 2 0 8 +1549 g3 6 0 3 +1549 d4 2 1 2 +1553 e3 3 0 3 +1551 Nf3 6 0 7 +1551 e3 3 0 6 +1547 e3 26 0 11 +1547 d3 8 0 7 +1547 Nf3 8 1 4 +1547 g3 4 0 4 +1547 a3 3 1 3 +1547 f3 3 0 2 +1555 e3 4 0 1 +1559 d3 3 0 5 +1557 e3 5 0 5 +1557 d3 2 0 4 +1557 c4 2 0 4 +1558 e3 4 0 5 +1558 c4 2 0 3 +1567 e3 3 1 2 +1561 e3 71 3 65 +1561 c4 13 2 19 +1561 g3 3 0 18 +1561 e4 9 1 8 +1561 d3 7 0 8 +1561 Nc3 7 1 4 +1561 Nf3 3 1 7 +1561 d4 3 1 5 +1566 e3 4 0 1 +1565 Bxe5 7 0 2 +1562 e3 30 2 25 +1562 c4 7 0 4 +1562 g3 5 1 5 +1562 d3 3 0 7 +1562 e4 4 0 4 +1562 f3 3 0 3 +1564 e3 8 0 3 +1563 e3 7 3 8 +1577 Bxg7 4 0 1 +1573 e3 4 1 6 +1573 d3 2 0 4 +1571 e3 14 0 17 +1571 d3 8 0 7 +1571 Nf3 8 0 4 +1571 g3 4 1 7 +1571 f3 1 0 4 +1572 g3 6 0 0 +1572 e3 3 0 3 +1572 d3 3 0 2 +1572 f3 3 0 2 +1572 c4 5 0 0 +1582 Bxg7 7 0 1 +1580 Bxf6 5 0 5 +1580 c4 4 0 2 +1581 e3 4 0 1 +1581 g3 2 1 2 +1583 e3 3 0 2 +1585 b5 4 0 1 +1594 e3 3 0 2 +1592 b5 7 0 8 +1591 e3 4 0 2 +1591 Nf3 1 0 4 +1598 e3 4 0 1 +1590 e3 15 1 7 +1590 a3 3 1 3 +1590 g4 3 0 2 +1599 e3 1 1 3 +1602 Bxe5 32 0 32 +1603 b5 16 0 11 +1603 a3 3 1 3 +1606 Nf3 3 0 3 +1601 c4 5 0 12 +1601 e3 7 0 9 +1601 b5 9 0 5 +1601 e4 6 0 3 +1601 d3 2 0 6 +1605 d3 5 2 4 +1605 e3 2 0 3 +1604 a3 9 2 6 +1604 b5 5 0 1 +1614 Bb2 3 0 3 +1611 Bb2 4 1 4 +1610 c4 2 2 4 +1613 Bb2 4 1 3 +1609 Bb2 12 1 11 +1612 Bb2 1 0 5 +1617 Bxg7 6 0 1 +1615 a3 7 0 9 +1615 b5 4 1 11 +1616 e3 4 0 5 +1620 f3 4 0 3 +1624 e3 4 0 3 +1628 d4 10 0 5 +1630 cxd4 3 0 7 +1630 Qxd4 0 0 8 +1646 g3 5 0 6 +1646 Nf3 1 2 7 +1646 d3 2 0 3 +1649 e4 3 1 1 +1644 cxd5 13 2 17 +1645 g3 6 0 6 +1645 Nf3 6 0 3 +1645 d3 3 1 2 +1645 e4 2 0 3 +1643 e4 19 0 14 +1643 d4 7 0 8 +1643 g3 7 2 5 +1643 Nf3 5 0 6 +1643 d3 4 0 6 +1642 g3 22 1 22 +1642 e4 9 3 16 +1642 d4 16 2 6 +1642 d3 6 0 10 +1642 Nf3 5 1 2 +1652 g3 5 0 2 +1651 g3 8 2 2 +1654 Bb2 0 1 7 +1653 Bb2 8 0 13 +1657 c5 4 0 2 +1655 Nc3 2 0 8 +1656 Nc3 4 0 6 +1659 Nf3 4 0 5 +1667 Bg2 1 2 3 +1666 Bg2 1 0 4 +1664 Bg2 5 0 4 +1671 d4 9 2 9 +1671 Nf3 5 2 7 +1671 d3 10 0 3 +1671 e4 3 2 5 +1671 e3 4 0 3 +1673 Bb2 2 0 4 +1674 Nc3 10 0 2 +1676 Nc3 4 0 1 +1677 g3 24 1 17 +1677 Nf3 11 0 26 +1677 d3 16 1 6 +1677 e4 4 0 9 +1677 e3 3 0 8 +1679 g3 5 0 5 +1679 e4 2 1 4 +1679 e3 3 0 2 +1682 d3 1 0 8 +1682 Nf3 1 1 3 +1680 g3 7 0 3 +1680 d3 4 0 3 +1680 e4 4 1 1 +1681 Nf3 3 0 4 +1681 e4 4 0 2 +1681 e3 2 1 3 +1678 g3 10 1 11 +1678 Nf3 8 0 5 +1678 e4 4 0 2 +1678 d3 3 1 1 +1683 g3 5 0 1 +1685 d4 10 0 8 +1685 Nc3 5 1 3 +1686 d4 3 0 2 +1688 d4 3 0 2 +1687 d4 2 0 3 +1689 Bb2 9 0 6 +1690 Bb2 4 0 6 +1691 Bb2 2 0 3 +1692 Nc3 2 0 3 +1693 Qxd4 7 0 3 +1694 a3 3 1 7 +1694 Nf3 1 1 7 +1695 Nf3 1 0 4 +1699 Bg2 3 1 5 +1701 Bg2 4 0 3 +1700 Bg2 4 0 4 +1702 cxd5 13 1 20 +1702 d4 6 1 2 +1707 cxd5 3 0 3 +1708 c5 2 0 4 +1708 cxd5 2 0 3 +1709 Nf3 2 0 3 +1712 Ne4 13 0 5 +1711 e4 3 0 6 +1711 e3 5 0 1 +1711 Qa4 5 1 0 +1714 bxc4 1 0 4 +1716 Nc3 5 0 2 +1715 Nc3 117 5 62 +1715 b3 15 1 3 +1715 Nf3 5 0 2 +1717 e4 2 0 6 +1717 e3 2 0 3 +1719 exd4 2 0 3 +1718 Bxc4 15 1 8 +1725 Nf3 5 0 4 +1725 g3 4 0 3 +1725 e4 6 0 1 +1724 g3 10 0 6 +1724 d4 9 0 1 +1724 Nf3 4 0 4 +1724 d3 2 0 5 +1724 e4 3 0 2 +1726 g3 4 1 1 +1728 Bb2 1 1 5 +1729 Nc3 3 0 3 +1732 Bg2 1 0 4 +1738 Nd5 11 0 6 +1738 Nf3 10 0 7 +1738 Qb3 8 1 5 +1738 a3 2 1 7 +1738 e4 4 1 0 +1738 d3 4 0 1 +1736 Nf3 22 2 10 +1736 g3 11 1 13 +1736 e4 8 1 10 +1736 d3 3 1 13 +1736 e3 8 0 8 +1734 Nf3 20 0 21 +1734 g3 20 1 14 +1734 e4 12 1 19 +1734 d3 16 0 13 +1734 e3 4 1 3 +1734 a3 3 1 2 +1733 d3 49 3 48 +1733 g3 38 4 35 +1733 e4 38 5 25 +1733 Nf3 30 0 27 +1733 e3 5 1 17 +1733 a3 3 0 6 +1733 d4 6 0 2 +1733 Qc2 3 0 3 +1742 g3 3 0 4 +1740 g3 7 2 6 +1740 Nf3 6 2 5 +1740 e4 7 0 4 +1739 Nf3 12 0 5 +1739 e4 10 1 1 +1739 g3 6 1 3 +1739 e3 3 0 5 +1739 d4 3 0 2 +1735 g3 23 0 13 +1735 Nf3 23 3 9 +1735 d3 13 1 9 +1735 e4 9 1 3 +1735 e3 6 1 3 +1737 d3 13 1 13 +1737 g3 14 0 3 +1737 e4 6 0 7 +1737 d4 3 0 6 +1737 e3 0 0 5 +1747 Nc3 9 0 3 +1747 e4 3 0 3 +1748 Nd4 3 2 4 +1753 Bb2 9 1 3 +1752 Bb2 10 0 6 +1751 Bb2 17 2 13 +1754 Bb2 5 0 6 +1755 Bb2 4 1 5 +1762 Bd2 4 0 2 +1758 Nc3 2 0 4 +1758 e4 1 0 5 +1760 e4 5 0 1 +1757 e4 7 2 9 +1757 Nc3 5 0 8 +1757 g3 0 0 6 +1757 Nf3 1 0 4 +1759 g3 3 0 2 +1766 Nc3 3 1 1 +1765 Qxd4 12 0 18 +1765 Nf3 3 0 4 +1776 a3 4 0 1 +1770 a3 6 1 5 +1768 a3 12 1 11 +1768 Nc3 1 0 4 +1769 a3 17 0 6 +1769 h3 3 1 2 +1769 d4 0 0 5 +1774 Nc3 1 0 5 +1771 a3 5 0 5 +1772 Nc3 6 0 2 +1773 a3 4 0 4 +1777 Nc3 9 1 14 +1777 d3 5 0 8 +1780 Nc3 2 0 3 +1783 Bg2 10 0 9 +1784 Bg2 7 1 8 +1782 Bg2 9 0 12 +1785 Bg2 9 0 5 +1786 Bg2 4 0 3 +1797 d4 7 0 0 +1799 Nf3 4 0 1 +1793 d4 6 0 2 +1790 e4 11 0 11 +1790 g3 8 0 3 +1790 d3 4 1 3 +1790 Nf3 1 0 6 +1790 d4 4 0 1 +1794 d4 3 0 2 +1792 g3 10 1 2 +1792 e4 5 0 3 +1792 d3 2 0 4 +1792 Nf3 3 0 3 +1795 e4 3 0 3 +1789 cxd5 40 1 30 +1789 d4 11 1 13 +1789 d3 4 0 5 +1789 e3 4 0 5 +1789 g3 4 0 2 +1791 d4 11 0 2 +1791 g3 7 0 4 +1802 g3 6 1 3 +1806 Bb2 5 0 4 +1805 cxd5 8 0 6 +1807 cxd5 4 0 2 +1810 Nc3 5 1 3 +1811 d5 6 0 2 +1808 e3 4 0 4 +1808 c5 2 0 4 +1808 cxd5 3 0 2 +1808 Nc3 2 0 3 +1814 a3 3 0 4 +1813 Nf3 8 0 3 +1813 a3 1 0 6 +1813 cxd5 5 0 1 +1816 Bg2 7 0 1 +1815 Bg2 12 2 6 +1815 cxd5 2 2 2 +1818 g3 4 0 2 +1818 d4 4 0 2 +1818 d3 2 0 3 +1819 g3 3 0 2 +1821 Bg2 4 0 1 +1822 d4 22 2 18 +1822 g3 13 2 6 +1822 e4 11 1 7 +1822 Nf3 5 0 9 +1822 b3 3 0 2 +1822 Qb3 1 1 3 +1824 Nc3 12 0 13 +1824 d4 5 0 1 +1825 e4 5 0 5 +1826 e4 6 0 6 +1826 Nf3 1 0 7 +1826 e3 5 0 2 +1826 Nc3 4 0 2 +1827 d4 2 1 6 +1829 Bg2 6 0 8 +1835 f3 5 1 3 +1835 Nf3 2 2 1 +1837 Qxd4 0 0 5 +1856 g3 15 1 11 +1856 Ne2 10 2 12 +1856 a3 7 0 5 +1856 Nf3 4 0 8 +1856 Nc3 3 1 2 +1856 c3 2 0 3 +1856 f3 1 1 3 +1856 Qe2 2 0 3 +1857 Ne2 8 1 2 +1857 g3 5 1 4 +1863 dxe4 8 3 12 +1864 exd5 6 1 3 +1869 Bg2 0 0 5 +1867 Bg2 7 0 9 +1868 Bg2 5 0 1 +1874 c3 3 1 10 +1876 Qxd4 2 1 7 +1879 a3 1 0 4 +1879 g3 2 1 2 +1878 Ne2 4 1 8 +1878 a3 6 1 6 +1878 Nd2 3 1 3 +1878 Qe2 3 1 2 +1886 Nf3 2 0 4 +1883 Nf3 3 0 5 +1885 Nf3 1 0 7 +1882 exd5 4 0 7 +1882 Nf3 2 0 3 +1884 Nc3 5 0 2 +1884 f4 3 0 3 +1884 Nf3 5 0 0 +1888 Bg2 5 0 3 +1889 Bg2 5 0 3 +1887 Bg2 13 1 16 +1892 g3 6 0 3 +1892 f3 1 0 5 +1892 Nc3 2 0 4 +1896 exd5 2 0 9 +1896 e5 0 0 6 +1898 Nc3 3 0 4 +1898 f4 2 0 4 +1899 Bg2 2 0 3 +1903 c4 3 0 3 +1903 g3 3 0 2 +1903 e3 3 0 2 +1902 c4 11 0 0 +1902 Bf4 2 1 4 +1902 e3 2 0 3 +1904 e3 2 0 3 +1906 e4 2 0 3 +1911 Nc3 6 0 0 +1910 e3 2 1 2 +1910 cxd5 3 0 2 +1908 d5 8 0 14 +1909 Nf3 4 0 2 +1914 a3 8 0 1 +1915 e4 9 0 1 +1913 e4 16 0 7 +1913 f4 10 0 2 +1913 Bf4 3 1 1 +1917 Nf3 4 0 2 +1917 c4 5 0 0 +1918 d5 1 0 4 +1920 d5 4 2 4 +1926 e3 13 0 11 +1926 Nc3 6 0 7 +1925 e3 12 1 17 +1925 Nc3 4 0 10 +1925 Nf3 3 1 1 +1923 e3 20 2 16 +1923 Nc3 7 0 8 +1923 Nf3 6 0 0 +1923 a3 3 0 2 +1924 e3 9 3 16 +1924 Nc3 4 0 9 +1924 Be5 2 0 4 +1924 Nf3 1 0 5 +1931 Bf4 5 0 9 +1931 Bh4 6 0 5 +1931 Nf3 2 0 3 +1934 Bxf6 5 1 4 +1933 Bxf6 10 0 8 +1933 e3 3 1 5 +1935 Bxf6 1 1 5 +1930 Bxf6 7 1 19 +1930 e4 8 1 11 +1930 e3 7 0 7 +1930 Nc3 4 0 2 +1930 Nf3 3 0 2 +1932 Bxf6 10 2 15 +1932 e3 5 0 4 +1936 Bxf6 4 0 6 +1940 Bf4 18 0 6 +1940 Nf3 3 0 3 +1937 Bf4 34 0 15 +1937 Nf3 14 1 23 +1937 Bg5 11 3 9 +1937 e4 2 0 14 +1937 g3 4 0 2 +1937 f3 0 1 5 +1937 e3 3 0 3 +1941 e4 4 1 4 +1941 Bg5 6 0 1 +1942 dxe5 2 0 3 +1938 e4 21 3 19 +1938 a3 17 2 12 +1938 Bf4 4 0 3 +1938 Nf3 4 0 2 +1938 Bg5 1 0 4 +1939 e4 17 0 22 +1939 Bf4 19 0 4 +1939 Bg5 2 0 3 +1950 e3 2 0 4 +1950 Nc3 3 0 3 +1951 c4 1 1 4 +1951 e3 4 0 1 +1948 e3 8 0 11 +1948 g3 6 1 9 +1948 d5 3 0 12 +1948 c3 3 4 4 +1948 c4 1 1 3 +1947 e3 34 2 36 +1947 c4 21 0 18 +1947 g3 15 0 7 +1947 Nc3 7 1 12 +1947 Bg5 10 0 9 +1947 Bf4 9 1 5 +1947 c3 4 0 6 +1949 c4 11 2 10 +1949 e3 7 1 7 +1949 g3 5 1 4 +1949 Bf4 1 1 5 +1946 e3 46 5 54 +1946 c4 20 4 35 +1946 g3 16 1 24 +1946 Bf4 14 2 16 +1946 Bg5 13 1 10 +1946 c3 8 1 9 +1946 Nc3 8 0 6 +1946 e4 2 0 3 +1945 c4 24 5 55 +1945 e3 29 2 35 +1945 Bf4 39 0 19 +1945 g3 25 1 28 +1945 Nc3 11 0 15 +1945 Bg5 15 0 10 +1945 c3 6 1 7 +1945 b3 5 1 1 +1945 Nbd2 3 1 1 +1957 e3 3 0 2 +1954 e3 10 0 5 +1954 Nf3 4 0 2 +1955 e3 4 0 10 +1955 Nf3 3 0 2 +1956 e3 7 0 2 +1956 Nf3 3 0 3 +1959 Bb2 4 1 3 +1961 Nf3 3 0 3 +1962 Nf3 2 0 3 +1960 Bg5 1 0 9 +1960 Nf3 2 1 2 +1972 Nc3 11 0 8 +1972 d5 5 0 1 +1972 e3 3 0 2 +1974 Nc3 2 0 3 +1973 Nc3 6 0 3 +1967 d5 71 8 82 +1967 Nc3 23 3 39 +1967 e3 15 1 15 +1967 Nf3 9 1 18 +1967 dxc5 4 0 12 +1971 Nc3 13 3 5 +1971 Nf3 8 0 2 +1969 Nc3 59 4 29 +1969 cxd5 28 1 11 +1969 e3 20 0 13 +1969 Nf3 8 2 10 +1969 c5 12 1 6 +1969 Bg5 5 0 2 +1970 Nc3 56 3 59 +1970 Nf3 6 1 16 +1970 Bg5 1 0 4 +1968 dxe5 68 3 60 +1968 d5 22 3 41 +1968 Nc3 11 0 14 +1968 e3 11 0 9 +1968 Nf3 1 0 7 +1968 Bg5 2 0 4 +1965 Nc3 315 25 280 +1965 Nf3 66 10 101 +1965 a3 31 2 34 +1965 e3 12 2 23 +1965 g3 27 1 8 +1965 Bg5 13 1 13 +1965 c5 3 0 5 +1965 d5 1 0 4 +1965 b3 3 0 2 +1966 Nc3 350 27 380 +1966 Nf3 40 7 45 +1966 e3 9 0 20 +1966 b3 13 2 11 +1966 Bg5 4 1 8 +1966 g3 5 0 4 +1978 c4 2 0 10 +1977 c4 4 0 10 +1979 dxe6 2 1 5 +1987 Nf3 4 0 7 +1988 Nf3 0 0 5 +1985 Nf3 3 0 8 +1985 dxc5 1 0 6 +1984 Nf3 17 2 25 +1984 Bd3 11 0 14 +1984 c4 8 1 13 +1984 f4 6 0 9 +1984 c3 2 0 6 +1986 Nf3 8 1 4 +1986 Bd3 1 1 4 +1983 Nf3 22 1 30 +1983 Bd3 17 3 16 +1983 c4 8 0 14 +1983 f4 7 0 5 +1983 c3 2 0 4 +1983 b3 0 0 6 +1983 Nc3 0 1 5 +1982 Nf3 21 2 42 +1982 Bd3 14 2 17 +1982 c4 11 0 17 +1982 f4 8 1 8 +1982 b3 4 1 4 +1982 g3 2 1 5 +1982 c3 1 0 5 +1982 Nc3 0 0 5 +1997 e4 3 0 4 +1993 h4 6 0 12 +1993 Nc3 3 0 6 +1993 e4 3 0 5 +1993 g4 1 0 5 +1996 e4 2 0 4 +1995 e4 4 1 6 +1994 e4 6 0 17 +1994 h4 5 0 4 +1999 e3 15 0 5 +2001 e3 3 0 4 +2000 e3 11 0 4 +2002 e3 3 0 3 +2006 Bg2 2 0 3 +2005 Bg2 8 2 11 +2007 Bg2 1 0 6 +2004 Bg2 8 1 18 +2003 Bg2 14 1 18 +2009 Nf3 5 1 4 +2010 Nf3 1 0 4 +2008 Nf3 4 0 8 +2011 Nc3 7 0 2 +2013 e4 3 0 2 +2016 Nc3 8 0 5 +2021 e3 5 0 7 +2022 e4 5 1 2 +2022 e3 4 1 1 +2023 Nf3 8 0 8 +2024 f3 9 0 8 +2024 Bd3 9 0 3 +2024 d5 3 0 7 +2024 Bxb5 3 0 4 +2024 Nd2 1 0 5 +2026 e3 10 1 17 +2026 Nc3 10 1 11 +2026 f3 5 0 2 +2026 Nf3 2 0 4 +2027 Nf3 9 0 3 +2027 e3 5 0 1 +2028 Bf4 29 4 7 +2028 e4 4 0 4 +2029 e3 23 2 22 +2029 g3 15 2 8 +2029 Bg5 12 0 5 +2029 Nc3 6 0 10 +2029 c4 10 0 5 +2029 Bf4 8 0 6 +2029 Nbd2 4 1 4 +2029 c3 4 0 4 +2031 e3 3 0 4 +2032 Bb2 4 0 2 +2033 f3 4 0 3 +2033 e3 0 1 4 +2033 Nf3 2 0 3 +2034 Nc3 139 5 87 +2034 Nf3 18 2 22 +2034 d5 13 1 19 +2034 e3 10 1 17 +2034 f3 4 1 1 +2040 Nc3 5 0 0 +2041 e4 6 0 7 +2042 Nf3 36 2 34 +2042 f3 25 0 25 +2042 c4 10 3 8 +2042 f4 9 1 6 +2042 Nc3 1 0 6 +2042 c3 2 1 3 +2042 a3 2 1 3 +2043 d5 26 1 36 +2043 Bd3 27 0 16 +2043 Nc3 13 0 16 +2043 f3 11 0 9 +2043 e5 2 0 4 +2046 e4 15 2 23 +2046 h4 3 0 5 +2047 e3 3 0 2 +2048 Nf3 8 0 3 +2048 f3 5 0 3 +2051 Bxb8 9 1 13 +2051 Qxd4 2 0 5 +2052 Qxd4 5 0 0 +2053 Qxd4 6 2 6 +2057 e3 3 0 3 +2056 e3 4 0 1 +2054 Nxd4 52 2 41 +2054 Qxd4 7 0 12 +2058 c3 4 0 2 +2055 c3 10 0 4 +2055 d5 1 0 6 +2055 e3 3 0 2 +2060 Qxd4 3 0 4 +2061 cxd4 21 1 25 +2061 Qxd4 3 0 2 +2062 Nf3 4 0 1 +2066 Qxd4 46 2 53 +2066 Nf3 25 1 9 +2066 e3 6 0 1 +2067 d5 14 0 6 +2072 c4 28 0 24 +2072 Nc3 4 0 3 +2074 Bd2 4 0 1 +2075 e4 2 0 3 +2073 e4 6 0 5 +2069 c4 82 6 51 +2069 e4 34 3 19 +2069 Nc3 5 0 3 +2069 Nf3 5 0 1 +2071 c4 22 1 8 +2071 e4 10 0 13 +2071 dxe6 12 0 6 +2070 c4 35 1 32 +2070 dxe6 21 0 18 +2070 e4 5 0 5 +2079 a3 5 0 4 +2079 Nc3 2 1 5 +2079 e4 2 0 4 +2077 Nc3 35 1 14 +2077 Bd2 15 1 11 +2077 c3 9 1 8 +2077 Qd2 3 0 4 +2080 cxb6 5 0 7 +2078 b4 6 1 5 +2078 Nf3 3 0 7 +2078 e4 1 0 5 +2076 b4 15 2 25 +2076 Be3 12 4 10 +2076 Nf3 8 2 8 +2076 e4 5 0 5 +2076 Nc3 1 2 6 +2076 e3 4 1 4 +2085 Nf3 1 0 6 +2082 exd4 43 4 51 +2082 Qxd4 21 1 24 +2084 c3 4 0 2 +2083 dxc5 4 0 8 +2083 c3 4 0 7 +2083 Nf3 2 0 5 +2087 Qxd4 1 0 8 +2088 Qxd4 3 1 16 +2089 Qxd4 3 0 4 +2090 Bxb8 6 0 10 +2090 Nc3 4 1 10 +2090 e3 10 0 3 +2090 Nf3 5 0 1 +2091 Nf3 2 0 4 +2092 e3 9 0 4 +2093 e4 6 0 2 +2096 e3 23 1 25 +2096 g3 10 0 6 +2096 c4 9 0 5 +2096 Bf4 8 0 6 +2096 Bg5 9 0 2 +2096 Nc3 3 0 4 +2104 Nc3 9 0 3 +2101 Nc3 112 4 69 +2101 cxd5 28 1 24 +2101 e3 22 1 23 +2101 c5 13 2 11 +2101 Nf3 9 1 11 +2102 Nc3 14 3 8 +2103 Nc3 9 0 6 +2107 Nc3 2 0 3 +2106 Nc3 1 0 4 +2108 Nf3 16 1 23 +2108 c4 16 3 15 +2108 f4 8 1 6 +2108 Bd3 4 0 4 +2108 g3 1 0 6 +2108 a3 4 0 1 +2112 e5 43 2 28 +2112 exd5 5 0 18 +2112 Nc3 6 1 6 +2114 c4 2 0 3 +2113 e5 3 0 6 +2116 e4 7 0 12 +2117 e3 5 0 1 +2118 Bg2 8 0 10 +2118 Bh3 4 0 1 +2120 Nc3 2 0 3 +2124 e3 43 2 31 +2124 Nc3 35 1 27 +2124 Nf3 6 0 16 +2130 f3 3 0 2 +2123 e3 83 6 63 +2123 Nc3 66 5 41 +2123 Nf3 28 1 13 +2122 e3 69 6 66 +2122 Nc3 72 2 66 +2122 Nf3 19 1 15 +2122 Qd3 2 0 4 +2122 h3 3 0 2 +2131 Nc3 5 0 3 +2126 dxc5 11 2 12 +2126 e3 9 0 4 +2126 Nc3 5 1 6 +2126 c3 4 0 1 +2125 e3 14 0 16 +2125 Nc3 10 2 17 +2125 Nf3 6 0 3 +2125 a3 7 0 2 +2125 Bxb8 4 0 1 +2121 Nc3 60 3 65 +2121 e3 74 4 46 +2121 Nf3 15 3 21 +2121 a3 26 2 10 +2121 e4 3 0 2 +2121 c3 2 1 2 +2121 Qd3 1 0 4 +2132 e3 4 0 1 +2127 e3 10 0 3 +2127 Nc3 4 0 4 +2129 Nc3 8 0 3 +2128 e3 8 0 1 +2128 Nc3 1 0 4 +2141 e3 3 0 2 +2137 e3 11 1 6 +2136 Bxf6 9 1 7 +2136 e3 6 0 5 +2139 e3 3 1 3 +2138 Bxd8 16 0 2 +2134 Bh4 23 1 17 +2134 Bf4 5 0 9 +2135 Bh4 20 0 19 +2135 Bf4 4 0 4 +2146 Bf4 45 0 7 +2146 Nf3 6 0 6 +2146 f3 5 0 4 +2146 e3 2 0 4 +2151 Bf4 5 0 0 +2144 Bf4 80 2 20 +2144 Nf3 17 0 14 +2144 e4 11 2 12 +2144 e3 9 1 5 +2144 g3 2 0 6 +2142 Bf4 205 3 62 +2142 Nf3 44 5 46 +2142 Bg5 31 2 19 +2142 f3 11 0 20 +2142 g3 14 1 12 +2142 e3 7 0 15 +2142 h3 5 1 6 +2142 e4 4 1 7 +2154 e4 2 0 3 +2155 Bf4 4 0 1 +2147 e3 15 1 6 +2147 dxc5 2 0 8 +2145 e4 80 3 24 +2145 Nf3 11 1 14 +2145 Bf4 13 0 6 +2145 e3 3 1 5 +2145 h3 0 0 5 +2153 dxe5 3 0 2 +2143 a3 201 3 47 +2143 e4 34 3 30 +2143 Nf3 30 3 30 +2143 Bf4 29 0 15 +2143 g3 11 1 13 +2143 e3 8 0 9 +2143 f3 4 0 1 +2149 Bf4 5 0 0 +2150 e4 4 0 1 +2148 Bf4 18 1 3 +2161 e3 49 5 36 +2161 Bf4 25 2 39 +2161 c4 24 0 12 +2161 g3 16 1 18 +2161 Nc3 12 1 9 +2161 c3 1 3 5 +2161 h3 6 0 1 +2162 e3 48 3 43 +2162 Ne5 32 0 12 +2162 g3 14 0 12 +2162 Bf4 14 1 9 +2162 h3 14 0 6 +2162 Nc3 4 1 7 +2162 Nbd2 4 1 3 +2162 c4 3 1 4 +2162 Bg5 5 0 1 +2159 e3 144 9 87 +2159 Bf4 56 4 40 +2159 g3 56 2 28 +2159 c4 46 3 34 +2159 Nc3 34 2 30 +2159 c3 18 0 18 +2159 Bg5 16 0 5 +2159 a3 5 1 3 +2158 e3 121 8 91 +2158 c4 63 5 54 +2158 g3 60 5 55 +2158 Bf4 53 6 42 +2158 Nc3 27 4 34 +2158 Bg5 31 3 29 +2158 c3 15 1 8 +2158 h3 9 1 5 +2158 Ne5 3 0 6 +2158 Nbd2 1 0 7 +2158 a3 4 0 2 +2169 Bf4 5 0 1 +2163 e3 26 2 24 +2163 dxc5 15 3 20 +2163 c3 18 1 8 +2163 Bf4 13 1 3 +2163 c4 11 0 5 +2163 Nc3 2 0 4 +2160 e3 47 3 41 +2160 Bf4 30 4 20 +2160 c4 28 2 17 +2160 g3 17 1 21 +2160 Bg5 18 0 3 +2160 c3 9 2 3 +2160 Nc3 4 1 7 +2160 a3 1 0 4 +2168 dxe5 2 1 2 +2157 e3 157 7 111 +2157 Bf4 69 9 52 +2157 g3 74 4 40 +2157 c4 65 6 35 +2157 Nc3 26 2 33 +2157 Bg5 35 2 13 +2157 c3 15 3 14 +2157 h3 5 2 4 +2157 a3 7 0 2 +2157 Ne5 5 0 3 +2157 b3 3 1 2 +2157 e4 1 0 4 +2157 Nbd2 2 0 3 +2167 e3 2 0 3 +2166 e3 10 0 5 +2166 Nc3 5 0 4 +2166 c4 6 0 1 +2166 Bf4 4 0 3 +2164 e3 9 3 8 +2164 c4 9 0 6 +2164 Bf4 8 2 4 +2164 g3 5 1 5 +2164 Nc3 3 0 4 +2164 c3 3 0 2 +2165 Nc3 6 0 5 +2165 e3 8 0 2 +2165 Bf4 8 0 2 +2165 g3 5 0 3 +2165 c4 4 0 2 +2175 e4 2 0 4 +2173 c4 1 0 8 +2173 Qb5 2 0 6 +2173 Bg5 0 0 5 +2176 e4 2 0 3 +2174 e4 7 0 5 +2182 e3 5 0 7 +2182 Nf3 3 1 6 +2180 Nf3 17 0 12 +2180 e3 19 0 9 +2181 e3 19 0 10 +2181 Nf3 12 1 6 +2183 Nf3 9 3 2 +2183 dxc5 3 0 4 +2184 h3 3 0 3 +2179 Nf3 17 2 18 +2179 e3 14 0 8 +2189 Bb2 7 1 6 +2188 Bb2 9 0 5 +2192 Bb2 0 1 5 +2190 Bb2 1 0 4 +2187 Bb2 11 0 10 +2197 e3 5 0 6 +2197 Nf3 3 0 3 +2197 Nd2 1 2 2 +2196 e3 9 0 12 +2196 Nf3 11 0 7 +2196 Bf4 2 0 3 +2195 e3 10 0 18 +2195 Nf3 9 0 9 +2195 Bg5 10 0 5 +2195 g3 3 0 2 +2195 Qa4 1 0 4 +2195 f3 1 0 4 +2199 e3 3 0 5 +2199 dxc5 2 0 4 +2199 Nf3 2 1 2 +2198 e3 3 1 7 +2198 Nf3 4 0 1 +2194 Nf3 21 3 19 +2194 e3 9 1 14 +2194 Bf4 3 0 6 +2194 Nd2 2 0 3 +2213 cxd5 12 0 2 +2213 Nc3 5 0 1 +2213 c5 5 0 1 +2209 Nc3 120 12 73 +2209 cxd5 22 1 13 +2209 e3 9 0 14 +2209 Nf3 7 1 6 +2209 Qb3 4 1 4 +2209 Bf4 3 0 2 +2217 Nc3 3 0 4 +2211 Nc3 42 3 16 +2211 e3 25 0 12 +2211 cxd5 21 0 11 +2211 Nf3 15 0 13 +2207 Nc3 285 11 161 +2207 cxd5 94 6 45 +2207 e3 53 3 54 +2207 Nf3 59 4 45 +2207 Bg5 20 2 11 +2207 c5 7 2 10 +2207 Bf4 7 1 4 +2207 a3 3 1 4 +2207 g3 2 1 2 +2215 cxd5 10 1 5 +2215 Nc3 6 0 4 +2210 cxd5 35 1 17 +2210 dxc5 25 3 17 +2210 Nc3 26 0 12 +2210 e3 11 1 8 +2210 Nf3 3 0 5 +2206 Nc3 437 34 323 +2206 Nf3 141 10 116 +2206 e3 122 8 106 +2206 cxd5 82 9 57 +2206 c5 20 4 21 +2206 Bf4 11 3 6 +2206 g3 9 1 5 +2206 a3 4 0 3 +2206 b3 3 0 3 +2204 Nc3 636 35 298 +2204 e3 432 13 214 +2204 e4 243 12 159 +2204 Nf3 122 11 64 +2204 Qa4 55 4 49 +2204 a4 6 2 5 +2204 d5 7 0 4 +2208 dxe5 82 4 71 +2208 Nc3 42 3 20 +2208 e3 21 3 27 +2208 cxd5 17 1 18 +2208 Nf3 4 1 2 +2205 Nc3 814 54 515 +2205 Nf3 171 16 138 +2205 e3 167 9 119 +2205 cxd5 88 5 67 +2205 a3 55 2 50 +2205 c5 29 3 37 +2205 Bf4 13 1 9 +2205 g3 10 0 3 +2205 e4 2 0 5 +2216 Nc3 6 0 8 +2216 cxd5 3 0 4 +2212 Nc3 13 0 11 +2212 e3 6 0 6 +2212 cxd5 5 0 0 +2214 Nc3 10 0 5 +2214 cxd5 6 1 5 +2223 Nf3 39 3 34 +2223 c4 35 2 27 +2223 Bd3 23 3 14 +2223 f4 15 1 11 +2223 Nc3 7 2 8 +2223 g4 6 0 7 +2223 h3 8 0 4 +2223 a3 8 0 3 +2223 c3 3 0 7 +2223 b3 2 0 6 +2223 g3 2 0 4 +2223 Bb5 1 0 4 +2222 Nf3 79 4 65 +2222 c4 54 3 32 +2222 f4 52 0 36 +2222 Bb5 9 0 26 +2222 Bd3 20 2 13 +2222 Nc3 12 2 15 +2222 c3 13 3 12 +2222 a3 14 2 11 +2222 b3 6 0 10 +2222 h3 7 1 8 +2222 g3 8 0 3 +2221 Nf3 87 10 94 +2221 c4 59 2 70 +2221 Bd3 53 7 53 +2221 f4 44 1 36 +2221 c3 15 1 33 +2221 Nc3 19 1 24 +2221 h3 19 0 15 +2221 Bb5 8 0 16 +2221 Nd2 6 1 10 +2221 g3 3 1 13 +2221 f3 4 0 12 +2221 b3 4 1 8 +2221 a3 5 0 7 +2221 Bd2 1 2 6 +2231 c4 4 0 1 +2226 Nf3 10 0 9 +2226 c4 8 2 5 +2226 Bd3 5 0 5 +2226 Nc3 3 0 4 +2225 Nf3 17 0 26 +2225 c3 17 2 19 +2225 dxc5 19 1 17 +2225 c4 10 0 14 +2225 f4 9 1 4 +2225 Bb5 1 0 6 +2225 Bd3 3 0 4 +2225 a3 4 0 1 +2224 Nf3 29 2 37 +2224 f4 22 2 17 +2224 c4 22 1 16 +2224 Bd3 16 0 20 +2224 c3 7 0 9 +2224 b3 4 0 5 +2224 Nc3 4 0 5 +2224 g3 7 1 0 +2224 f3 5 1 0 +2224 a3 4 0 2 +2228 dxe5 5 0 9 +2228 Nf3 1 2 6 +2228 f4 3 1 4 +2228 c3 1 0 4 +2220 Nf3 132 12 125 +2220 f4 75 6 59 +2220 Bd3 77 2 44 +2220 c4 63 3 55 +2220 c3 5 2 30 +2220 Nc3 14 0 20 +2220 Bb5 7 0 22 +2220 a3 18 2 9 +2220 g3 8 0 18 +2220 b3 12 0 5 +2220 f3 5 0 5 +2220 h3 4 0 5 +2229 Nf3 2 0 4 +2229 Bd3 3 0 3 +2230 c4 4 0 1 +2227 Nf3 8 0 7 +2227 c4 9 0 3 +2227 f4 5 0 4 +2232 c4 3 1 1 +2242 Nc3 10 0 2 +2242 e5 3 0 3 +2241 Nc3 15 1 6 +2241 e5 7 1 10 +2241 exd5 1 0 4 +2239 Nc3 100 5 115 +2239 f3 38 2 24 +2239 d5 4 0 1 +2243 exd5 1 0 4 +2240 Nc3 19 0 11 +2240 exd5 15 1 7 +2240 e5 7 0 6 +2249 g4 22 1 18 +2249 h4 11 1 4 +2247 c3 32 1 22 +2247 h4 18 2 13 +2247 e4 9 1 10 +2247 g4 7 0 5 +2247 g3 2 0 8 +2248 h4 28 0 16 +2248 Nc3 11 0 9 +2248 g4 7 1 8 +2248 e4 1 0 4 +2251 e4 10 0 15 +2251 h4 4 0 3 +2251 c3 2 0 4 +2250 h4 10 0 14 +2250 e4 10 1 8 +2250 g3 4 0 3 +2250 g4 5 0 2 +2246 h4 48 2 36 +2246 g3 25 0 16 +2246 g4 9 1 12 +2246 e4 8 0 11 +2253 e4 5 0 3 +2253 h4 1 1 3 +2252 e4 5 0 1 +2252 h4 4 0 1 +2258 e3 10 0 6 +2258 Nf3 7 0 5 +2260 e3 2 0 11 +2260 Nf3 4 0 4 +2259 Nf3 9 1 7 +2259 e3 6 1 2 +2263 dxc5 1 0 4 +2261 e3 3 0 8 +2261 Nf3 2 0 3 +2257 e3 9 0 9 +2257 Nf3 5 1 8 +2262 Nf3 2 1 5 +2267 Bg2 18 2 15 +2270 Bg2 2 0 4 +2264 Bg2 39 2 34 +2264 Nf3 4 0 1 +2264 e3 1 0 4 +2266 Bg2 25 4 36 +2266 Nf3 2 0 4 +2269 Bg2 6 0 11 +2268 Bg2 9 1 13 +2265 Bg2 23 4 35 +2265 Bh3 6 1 4 +2265 e3 4 1 2 +2265 Nf3 3 0 3 +2271 Bg2 4 0 2 +2272 Bg2 4 0 1 +2277 Nf3 4 0 2 +2276 c3 3 2 2 +2276 Nf3 2 0 4 +2276 e3 2 2 1 +2274 Bg5 6 0 10 +2274 Nf3 5 2 7 +2278 Nf3 4 0 3 +2275 Nf3 12 3 8 +2275 a3 3 0 4 +2279 Bg5 1 0 6 +2287 e3 4 0 2 +2286 e4 0 0 5 +2283 e3 11 2 6 +2283 Nc3 3 0 4 +2285 e3 4 0 1 +2289 Bh4 7 1 1 +2290 e4 2 0 5 +2292 e4 4 1 2 +2294 e4 2 1 3 +2301 e3 4 0 3 +2297 e3 9 2 3 +2297 c4 4 0 8 +2297 Bg5 9 0 3 +2297 g3 4 0 6 +2297 Nc3 3 0 2 +2300 dxe5 7 1 6 +2300 Bg5 6 0 0 +2298 e3 9 1 3 +2298 Bg5 10 0 2 +2298 c4 5 0 6 +2299 e3 5 1 2 +2299 Bg5 4 0 2 +2299 g3 3 0 2 +2316 Nc3 10 1 2 +2315 Nc3 10 0 3 +2317 Nc3 9 0 2 +2309 Nc3 84 7 57 +2309 Nf3 8 0 13 +2309 e3 7 0 4 +2309 Bg5 4 1 2 +2318 Nc3 5 0 1 +2314 d5 7 0 1 +2314 Nc3 4 0 1 +2313 Nc3 7 0 6 +2312 d5 12 0 10 +2312 dxe5 5 4 10 +2312 Nc3 6 1 8 +2312 Nf3 5 0 3 +2312 e3 4 1 3 +2310 Nc3 64 2 23 +2310 Nf3 4 1 10 +2310 e4 6 0 8 +2310 e3 5 0 3 +2320 Nc3 3 0 3 +2311 Nc3 29 4 35 +2311 Nf3 4 2 5 +2311 e4 5 0 6 +2311 e3 3 0 4 +2325 c4 4 0 2 +2324 e4 1 0 4 +2327 Nf3 4 0 13 +2327 f4 8 0 8 +2327 c4 2 1 4 +2327 Bd3 4 0 2 +2329 dxe5 4 0 5 +2329 Nf3 4 0 4 +2328 Nf3 9 2 7 +2328 f4 8 1 5 +2328 c4 7 0 2 +2330 Nf3 3 1 6 +2330 Bd3 1 1 6 +2344 d5 3 0 2 +2339 Nc3 24 1 19 +2339 Bd3 10 0 5 +2341 dxe5 14 0 3 +2341 d5 8 0 8 +2340 h4 11 0 4 +2340 f3 5 1 6 +2340 Nf3 6 0 4 +2340 c4 4 0 4 +2340 d5 1 0 5 +2340 e5 2 0 3 +2340 Nc3 2 0 3 +2342 Nf3 3 1 3 +2342 Nc3 5 0 2 +2352 e4 6 0 6 +2351 e4 4 0 10 +2353 e4 1 0 4 +2354 e3 6 0 2 +2355 Bg2 6 0 2 +2357 Qxd4 2 0 5 +2358 Ng1 7 0 2 +2358 Nfd2 3 0 4 +2358 Ne5 3 0 3 +2359 Nxd4 15 0 5 +2361 cxd4 3 0 9 +2363 e3 3 0 3 +2362 Qxd4 29 1 22 +2362 Nf3 8 0 1 +2366 e4 7 0 15 +2366 c4 5 0 6 +2367 c4 6 0 8 +2367 Bg5 8 0 1 +2367 Nc3 3 0 3 +2369 c4 4 0 2 +2365 e4 18 1 17 +2365 c4 8 0 5 +2368 c4 3 0 3 +2377 c3 4 0 1 +2375 Nf3 12 1 10 +2375 e3 5 0 1 +2371 Nf3 69 1 60 +2371 f4 32 0 22 +2371 Bf4 10 1 9 +2371 e4 1 0 4 +2371 e3 2 1 2 +2374 Nf3 18 1 15 +2374 f4 7 0 4 +2376 exd6 10 2 8 +2372 exd6 52 2 32 +2372 Nf3 5 0 1 +2373 exf6 33 2 20 +2378 exd4 16 2 19 +2378 Qxd4 11 1 11 +2383 Qxd4 2 0 4 +2384 Qxd4 8 2 12 +2395 c3 4 0 2 +2393 Nc3 3 0 5 +2391 Nc3 6 0 5 +2387 e3 15 0 2 +2387 Nc3 3 0 6 +2387 Bg5 3 0 4 +2392 e3 5 0 2 +2389 Nc3 5 0 5 +2389 e3 5 1 2 +2388 e3 4 2 6 +2388 d5 4 0 5 +2388 Bxb8 6 0 1 +2388 dxc5 0 0 5 +2385 Nc3 29 3 35 +2385 e3 19 1 21 +2385 a3 8 1 4 +2385 Nf3 6 2 3 +2386 Nc3 10 0 10 +2386 e3 6 1 9 +2386 Nf3 4 0 3 +2386 a3 4 0 3 +2390 Nc3 4 0 2 +2390 Nf3 5 0 0 +2396 Bg3 5 0 0 +2399 e3 2 0 14 +2398 Bxd8 21 1 4 +2410 e4 5 0 0 +2402 e3 8 0 1 +2402 dxc5 1 0 4 +2401 a3 14 0 2 +2401 Nf3 6 1 4 +2401 e3 5 0 5 +2401 e4 7 0 3 +2403 e4 6 0 4 +2427 Bd2 4 1 0 +2427 c3 3 0 2 +2425 e3 4 0 1 +2417 e3 9 0 1 +2417 c4 3 0 2 +2415 Bf4 7 0 11 +2415 e3 4 0 8 +2415 g3 1 0 9 +2415 e4 2 1 5 +2415 c4 4 0 3 +2415 Bg5 2 0 3 +2414 Bg5 14 0 5 +2414 e3 10 1 5 +2414 c4 6 2 5 +2414 Nc3 2 2 8 +2414 g3 5 0 1 +2414 Bf4 3 0 2 +2420 Bg5 7 0 2 +2423 Bg5 3 0 2 +2416 e3 8 0 6 +2416 c4 8 0 3 +2416 Bf4 5 0 4 +2416 g3 5 0 4 +2416 Bg5 3 1 4 +2416 Nc3 5 0 2 +2412 e3 13 0 11 +2412 dxc5 7 0 10 +2412 c3 12 1 4 +2412 Bg5 9 0 7 +2412 c4 3 0 6 +2412 e4 4 0 2 +2412 g3 3 0 2 +2419 Bg5 8 0 0 +2411 e3 65 3 52 +2411 Bg5 52 2 26 +2411 Bf4 42 3 33 +2411 g3 30 2 18 +2411 c4 26 1 22 +2411 c3 15 0 10 +2411 Nc3 3 0 9 +2413 c4 11 1 8 +2413 g3 11 0 5 +2413 e3 8 1 5 +2413 e4 6 0 4 +2413 Bg5 8 0 2 +2413 Nc3 3 0 5 +2413 Bf4 2 1 3 +2418 g3 6 0 4 +2418 e3 1 1 4 +2436 Nc3 5 0 0 +2432 Nc3 22 0 1 +2431 Nc3 19 0 3 +2431 c4 3 2 1 +2431 e3 3 0 2 +2435 e4 11 0 0 +2434 Nc3 10 0 2 +2434 Nf3 3 0 3 +2430 e3 24 0 9 +2430 dxc5 9 1 4 +2429 Nc3 45 3 12 +2429 c4 11 1 6 +2429 e3 6 1 8 +2429 Nf3 9 0 5 +2433 e4 12 1 2 +2433 Nc3 2 0 3 +2433 e3 4 0 1 +2439 Nc3 4 0 3 +2438 Nc3 5 0 0 +2443 Bb2 3 0 2 +2442 Bb2 6 1 5 +2444 Nf3 9 1 5 +2444 e3 4 0 9 +2444 c4 3 0 3 +2446 Nf3 5 0 1 +2458 Bd2 18 3 15 +2458 Nc3 23 1 9 +2459 Nc3 18 0 17 +2459 Nf3 8 0 1 +2459 e4 5 0 3 +2460 Nc3 12 1 2 +2460 Nf3 11 0 3 +2460 e3 4 0 2 +2454 Nc3 49 4 62 +2454 Nf3 1 1 9 +2454 e4 6 0 2 +2453 Nc3 78 6 48 +2453 Nf3 15 1 14 +2453 a3 9 0 9 +2453 Bg5 7 0 4 +2453 e3 2 0 6 +2453 g3 4 0 1 +2462 Nc3 22 0 7 +2463 Nf3 7 0 7 +2463 Nc3 5 0 4 +2464 Nc3 7 0 4 +2455 Nc3 38 2 30 +2455 e4 7 1 3 +2455 Nf3 5 0 6 +2455 e3 4 0 4 +2455 a3 2 1 2 +2452 d5 59 6 41 +2452 e3 38 2 30 +2452 Nf3 20 1 20 +2452 Nc3 22 1 9 +2452 dxc5 4 0 5 +2456 Nc3 28 4 18 +2456 e4 11 1 5 +2456 Nf3 5 1 6 +2450 Nc3 328 18 221 +2450 Nf3 46 4 43 +2450 e3 47 3 39 +2450 cxd5 37 6 30 +2450 c5 32 4 23 +2450 a3 4 0 4 +2450 b3 5 0 1 +2451 Nc3 111 4 65 +2451 Nf3 23 0 13 +2451 e4 11 0 19 +2451 e3 12 0 6 +2457 Nc3 25 2 19 +2457 Nf3 8 3 5 +2457 e3 2 1 2 +2466 Nc3 6 0 0 +2461 Nc3 14 0 6 +2461 Nf3 4 1 2 +2465 Nc3 5 0 4 +2472 dxe6 2 0 4 +2471 e4 2 0 3 +2470 Qxd5 16 0 22 +2481 c3 9 1 4 +2481 Bd2 5 0 2 +2478 Nf3 4 1 13 +2478 Bd3 1 0 4 +2478 f4 3 1 1 +2476 Bd3 6 0 5 +2476 f4 7 0 2 +2476 Nf3 6 0 3 +2476 c4 7 0 1 +2482 b3 1 0 5 +2477 Nf3 7 0 6 +2477 c4 7 0 4 +2474 Nf3 9 0 15 +2474 c3 12 0 11 +2474 dxc5 3 1 5 +2474 c4 4 0 4 +2474 a3 1 0 6 +2474 f4 5 0 1 +2474 Bd3 4 0 1 +2480 Nf3 4 1 5 +2473 Nf3 59 5 70 +2473 c4 21 2 24 +2473 f4 23 2 21 +2473 Bd3 18 1 24 +2473 c3 3 0 14 +2473 g3 6 4 3 +2473 a3 1 0 7 +2473 Nc3 4 0 4 +2473 b3 3 0 3 +2473 f3 3 0 3 +2475 Nf3 9 1 12 +2475 f4 12 1 6 +2475 c4 6 1 4 +2475 Bd3 4 0 2 +2475 Nc3 2 1 2 +2479 Nf3 4 0 5 +2483 Nf3 0 1 6 +2499 c3 9 0 3 +2499 Bd2 5 0 2 +2496 Nf3 11 0 5 +2496 e5 2 1 2 +2495 Nf3 3 0 6 +2495 c4 3 0 4 +2495 d5 1 0 5 +2492 e5 21 1 11 +2492 Nc3 4 0 8 +2492 Bd3 6 1 2 +2500 e5 2 0 3 +2498 e5 8 0 2 +2498 Nf3 6 0 2 +2497 Nc3 8 0 6 +2497 e5 0 0 5 +2493 Nf3 4 3 5 +2493 e5 2 0 8 +2493 Nc3 4 1 2 +2493 c4 2 0 3 +2490 c3 21 5 26 +2490 d5 18 1 23 +2490 Nf3 8 0 13 +2490 dxc5 4 0 8 +2494 Nf3 4 0 3 +2494 e5 1 1 5 +2494 Nc3 6 0 0 +2494 c4 5 0 0 +2489 e5 98 3 110 +2489 exd5 33 2 29 +2489 Nc3 18 0 16 +2489 Nd2 4 0 1 +2491 c4 15 1 11 +2491 Nf3 10 3 9 +2491 Nc3 3 1 8 +2491 f4 5 0 4 +2491 d5 3 0 2 +2513 c3 7 0 0 +2511 e4 2 0 3 +2510 e4 3 0 4 +2512 e4 4 0 2 +2509 e4 2 0 8 +2508 e4 7 0 2 +2506 h4 18 2 18 +2506 g3 14 1 13 +2506 e4 9 1 7 +2506 g4 4 0 4 +2507 e4 12 0 11 +2516 e3 13 2 9 +2517 e3 2 0 3 +2522 Bg2 6 0 3 +2524 Bg2 2 0 5 +2521 Bg2 5 0 3 +2521 dxc5 2 0 4 +2520 Bg2 25 0 23 +2523 Bg2 6 0 1 +2526 Nf3 2 0 3 +2525 Nf3 7 0 5 +2527 Bg5 4 0 1 +2528 e3 11 2 7 +2528 Nc3 4 0 6 +2528 Nf3 1 0 4 +2532 Bf4 10 0 5 +2532 Nf3 2 0 6 +2532 Bg5 5 0 1 +2533 e3 11 0 9 +2533 c4 13 0 1 +2533 g3 9 1 2 +2533 Nc3 6 0 6 +2533 Bf4 6 0 4 +2534 c4 2 0 4 +2538 Nc3 67 5 69 +2538 Nf3 8 1 9 +2538 e3 7 0 3 +2541 Nc3 4 0 3 +2541 cxd5 4 0 1 +2542 Nc3 4 0 4 +2539 Nc3 18 3 11 +2539 Nf3 5 0 2 +2539 e3 4 0 3 +2540 Nc3 7 0 4 +2543 c4 4 0 4 +2544 Nf3 5 0 12 +2544 f4 7 1 2 +2544 c4 4 1 2 +2544 Bd3 5 1 1 +2545 Nf3 1 0 4 +2547 Nc3 2 0 5 +2550 Bg2 9 1 6 +2554 e3 7 1 13 +2554 Nc3 6 1 12 +2554 Nf3 6 1 5 +2554 Be5 8 0 1 +2554 e4 2 0 5 +2555 e3 4 0 3 +2555 e4 3 0 2 +2556 Bf4 51 0 10 +2556 Nf3 1 1 9 +2556 e4 6 1 4 +2557 e3 28 4 19 +2557 g3 8 3 15 +2557 Bf4 15 1 10 +2557 Nc3 8 0 10 +2557 e4 11 1 6 +2557 c4 9 0 8 +2557 c3 6 0 7 +2557 Bg5 6 0 3 +2557 b4 4 0 1 +2558 e3 6 0 5 +2559 Bb2 5 0 8 +2560 Nf3 3 1 4 +2560 e4 1 0 4 +2561 Nc3 166 7 102 +2561 Nf3 28 2 37 +2561 e3 23 0 26 +2561 e4 24 2 16 +2561 b3 5 2 2 +2562 Nc3 6 0 2 +2563 Nc3 4 0 4 +2564 Nc3 3 0 2 +2569 Nf3 28 1 24 +2569 c4 14 0 12 +2569 f4 4 2 8 +2569 c3 4 1 8 +2569 Bd3 8 0 3 +2569 Bd2 4 0 5 +2569 Nc3 3 1 4 +2569 g3 5 0 2 +2569 Bc4 2 0 4 +2569 b3 3 0 3 +2571 e5 36 4 42 +2571 Nf3 23 1 27 +2571 c4 13 0 6 +2571 f4 9 0 7 +2571 c3 9 0 7 +2571 Nc3 4 0 6 +2571 Be3 5 1 2 +2571 f3 2 0 3 +2573 e5 2 0 3 +2572 e5 3 0 2 +2575 e4 13 2 22 +2575 h4 6 0 3 +2576 e3 4 0 4 +2576 Nf3 1 1 3 +2577 Bg2 9 1 13 +2580 Bb2 1 0 8 +2581 Bb2 2 0 6 +2582 c4 1 1 3 +2585 Bg2 3 0 2 +2586 Bg2 2 0 3 +2588 Nce2 1 1 3 +2589 d4 1 0 4 +2590 f3 3 0 2 +2592 Qxb7 7 1 3 +2591 Bb5 2 0 4 +2591 Bc4 4 0 1 +2594 Bb2 5 0 6 +2595 f3 3 0 6 +2595 Nf3 2 1 2 +2596 Nf3 3 0 7 +2596 f3 5 0 3 +2596 c4 4 0 4 +2599 Nf3 5 0 8 +2604 Nce2 3 0 2 +2606 d4 2 0 6 +2609 g3 3 0 2 +2610 g3 1 0 4 +2608 g3 0 0 10 +2611 Bc4 3 0 4 +2614 Bb2 4 0 4 +2616 Bb2 2 0 3 +2613 Bb2 6 0 4 +2615 Bb2 4 1 4 +2624 g3 4 0 1 +2627 exd4 22 0 25 +2627 Qxd4 5 0 8 +2628 dxc5 5 0 4 +2632 Nf3 7 0 8 +2634 Bg2 3 0 6 +2633 Bg2 5 0 4 +2635 Bg2 3 0 6 +2636 Bg2 2 1 4 +2637 g3 1 1 3 +2638 Bb2 7 0 11 +2640 c4 4 1 3 +2640 f4 4 0 2 +2641 Bg2 5 0 5 +2642 Ba4 4 1 4 +2643 Bg4 1 0 5 +2651 d4 0 0 5 +2650 d4 3 0 7 +2655 g3 2 0 4 +2656 g3 1 0 5 +2653 g3 8 1 16 +2654 g3 4 1 4 +2666 Bb2 4 0 3 +2665 Bb2 5 0 6 +2664 Bb2 2 1 5 +2667 Bb2 2 0 4 +2662 Bb2 15 0 11 +2662 Qh5 5 0 3 +2663 Bb2 7 0 5 +2668 d4 2 0 3 +2670 cxd5 3 0 3 +2674 Ne2 3 1 1 +2674 g3 1 1 3 +2672 g3 7 0 9 +2672 Ne2 2 0 6 +2672 c3 1 0 6 +2672 b3 5 0 2 +2673 g3 3 1 4 +2673 Ne2 3 1 1 +2673 b3 2 0 3 +2680 Nf3 5 2 4 +2679 Nc3 3 0 5 +2679 Nf3 2 0 5 +2679 c4 1 0 5 +2681 c4 1 1 3 +2683 dxe5 3 0 2 +2678 Nf3 6 0 9 +2678 c4 8 1 5 +2678 Nc3 3 1 3 +2678 c3 6 0 1 +2685 Nf3 11 1 8 +2685 Bd3 4 0 3 +2688 Bg2 6 0 6 +2689 Bg2 1 0 7 +2686 Bg2 20 3 34 +2686 b3 1 0 4 +2687 Bg2 12 1 3 +2693 g3 2 0 5 +2692 g3 16 1 8 +2694 Qe2 4 1 0 +2696 Nf3 4 0 3 +2696 c4 1 1 3 +2700 Bg2 1 0 5 +2703 Qh5 3 0 2 +2702 Nf3 2 0 3 +2701 Bb3 6 1 17 +2701 Bb5 0 1 6 +2706 b3 2 0 4 +2708 d4 2 0 3 +2707 Bg4 13 1 19 +2707 Nf3 5 0 4 +2707 d4 3 0 3 +2714 Nf3 0 0 6 +2714 Bb5 1 0 5 +2713 d4 3 0 6 +2713 Bb5 0 0 7 +2713 Nf3 3 0 3 +2717 c3 6 0 5 +2717 a3 3 0 2 +2718 d4 14 0 19 +2718 Nc3 3 0 6 +2718 Bb5 3 1 4 +2718 Bc4 2 0 4 +2719 d4 6 0 14 +2719 Nc3 2 0 3 +2720 Nd4 7 1 11 +2720 Ng1 8 0 3 +2723 g3 5 0 5 +2725 g3 2 0 3 +2722 g3 9 1 21 +2724 g3 5 0 2 +2728 Bc4 3 1 4 +2727 Bc4 0 0 7 +2726 c4 2 0 7 +2726 Bb5 0 0 5 +2726 e4 1 0 4 +2729 Bc4 5 0 3 +2730 Bb5 6 0 12 +2730 Bc4 8 0 8 +2732 Qxe5 4 0 6 +2733 Nf3 4 0 1 +2731 Bc4 5 0 6 +2742 Bb2 9 0 6 +2738 Bb2 25 0 25 +2741 Bb2 4 0 14 +2737 Bb2 43 2 50 +2737 Qh5 5 0 9 +2737 g3 4 2 3 +2739 Bb2 17 0 7 +2740 Bb2 7 0 10 +2743 Bb2 1 0 4 +2745 d4 2 0 3 +2747 d4 3 0 3 +2744 d4 20 1 13 +2746 d4 4 0 5 +2751 Nc3 2 1 5 +2757 Ne2 6 0 4 +2756 g3 3 1 5 +2754 Ne2 17 1 19 +2754 b3 10 0 18 +2754 g3 16 0 9 +2754 c3 5 1 13 +2754 Be2 7 1 6 +2754 Qe2 5 1 5 +2754 Nf3 3 0 6 +2754 Nc3 1 0 5 +2754 Nd2 2 0 3 +2755 Ne2 4 0 4 +2755 g3 4 0 3 +2755 f3 1 0 5 +2763 dxe5 8 0 4 +2763 d5 5 0 2 +2765 dxe5 2 0 5 +2764 dxe5 9 0 2 +2762 d5 27 3 27 +2762 Nc3 5 0 19 +2762 f3 7 1 2 +2762 c4 3 0 2 +2761 exd4 38 4 39 +2761 Qxd4 20 3 33 +2766 Nc3 2 0 4 +2766 d3 0 0 5 +2771 exf4 8 0 7 +2777 Bg2 2 0 4 +2774 Bg2 13 0 10 +2776 Bg2 3 0 7 +2779 Bg2 4 1 0 +2773 Bg2 41 4 47 +2773 b3 10 1 5 +2778 Bg2 4 0 3 +2775 Bg2 1 0 6 +2785 d4 4 0 3 +2784 d4 7 0 4 +2787 g3 5 2 13 +2788 g3 6 0 2 +2794 Nc3 2 0 3 +2792 Bb2 14 0 9 +2793 Bb2 7 0 1 +2799 g3 3 0 2 +2796 f3 3 0 6 +2796 Ne2 4 1 4 +2796 c3 2 0 7 +2796 g3 2 0 3 +2797 f3 3 1 1 +2800 f4 16 3 6 +2800 c4 8 0 13 +2800 Nf3 5 0 14 +2800 Nc3 4 0 4 +2800 b3 1 1 5 +2800 g3 3 1 3 +2807 Nf3 4 0 4 +2810 Bg2 3 0 2 +2811 Bg2 2 0 3 +2808 Bg2 12 0 17 +2808 b3 0 0 5 +2809 Bg2 2 1 2 +2816 g3 2 0 6 +2817 Bc4 4 0 3 +2818 Nc3 3 0 2 +2819 Ne2 4 0 1 +2820 Nf3 1 0 5 +2821 Bg2 2 0 3 +2824 Bc4 0 0 5 +2823 Bxc6 8 0 2 +2822 Bxc6 5 1 3 +2822 Nf3 5 0 3 +2829 d3 8 0 8 +2829 Nc3 7 0 5 +2830 Qf3 4 0 1 +2828 Nf3 9 1 3 +2828 Qf3 6 0 5 +2828 Bxf7 4 0 1 +2828 d3 2 0 3 +2828 Nc3 4 0 1 +2827 Nf3 7 3 9 +2827 d4 8 0 2 +2827 d3 3 0 4 +2834 Nf3 8 1 3 +2833 Nf3 11 2 16 +2833 Bc4 4 0 3 +2839 Nc3 22 1 19 +2839 e5 12 0 8 +2839 d3 4 0 1 +2839 Bc4 2 0 3 +2838 exd5 30 2 22 +2838 e5 8 1 11 +2838 Nc3 3 1 3 +2840 Bc4 10 0 4 +2840 d4 10 0 3 +2840 Nc3 5 0 5 +2840 Bb5 1 1 3 +2837 Bc4 54 1 39 +2837 Bb5 43 3 29 +2837 d4 24 1 26 +2837 Nc3 27 1 14 +2837 c3 10 0 9 +2837 d3 1 1 4 +2841 d4 7 1 2 +2841 Bb5 3 0 2 +2842 exf5 3 1 5 +2848 Qf3 2 1 3 +2854 Nc3 1 2 2 +2853 Nf3 5 0 5 +2853 Nc3 1 0 5 +2859 e5 16 0 7 +2859 Nc3 4 1 4 +2859 d5 6 0 1 +2856 e5 62 4 59 +2856 exd5 25 4 21 +2856 Nc3 13 0 7 +2860 d5 5 0 3 +2857 d5 57 0 49 +2857 Nf3 8 2 5 +2857 dxe5 7 0 3 +2858 Nf3 11 1 5 +2858 d5 11 0 4 +2858 c4 9 1 1 +2858 Nc3 5 0 1 +2858 e5 1 1 4 +2862 exd5 3 1 6 +2862 e5 7 0 2 +2863 Nf3 3 1 1 +2861 Nf3 17 0 8 +2864 Nf3 4 0 2 +2866 Qf3 2 0 5 +2866 d3 3 0 2 +2867 Nf3 1 0 5 +2872 Nf3 12 0 4 +2872 d4 4 0 1 +2872 d3 3 0 2 +2874 Nf3 6 0 1 +2873 Bc4 4 0 1 +2869 exd5 76 9 71 +2869 e5 51 4 71 +2869 d3 1 0 6 +2869 d4 3 0 2 +2871 d4 7 1 18 +2871 Nf3 6 0 6 +2871 Bc4 5 0 4 +2870 Nf3 48 3 37 +2870 Bc4 16 0 9 +2870 f4 13 0 6 +2870 d3 6 1 8 +2870 d4 7 0 7 +2877 Bc4 8 0 15 +2877 d3 2 0 10 +2877 d4 6 0 5 +2877 Qe2 5 0 5 +2877 Bd3 2 0 7 +2877 Nc3 2 0 6 +2877 Be2 4 0 1 +2880 Bc4 2 0 7 +2888 Nf3 3 0 2 +2883 e5 16 0 22 +2883 exd5 7 1 13 +2883 Nc3 2 0 5 +2883 Bg5 2 0 5 +2883 Nf3 1 0 5 +2885 f4 4 0 2 +2885 Nf3 3 0 3 +2884 Nf3 12 0 11 +2884 Bg5 4 0 8 +2884 f4 6 0 3 +2884 Nc3 4 0 4 +2890 Nc3 2 0 5 +2891 d4 158 11 183 +2891 c4 142 11 141 +2891 Bc4 49 1 41 +2891 Nf3 21 1 27 +2891 Nc3 11 1 7 +2891 f4 3 0 3 +2892 d3 18 1 6 +2892 f3 6 0 2 +2894 Qxg4 5 0 3 +2893 d4 17 0 9 +2895 Qxh5 6 0 1 +2896 Nc3 2 0 3 +2903 Bb3 12 0 5 +2903 Bd5 2 1 4 +2906 Nf3 0 0 6 +2906 d4 3 0 2 +2910 Bc4 5 0 0 +2907 d4 25 4 31 +2907 c4 10 0 2 +2907 a3 6 0 0 +2908 d4 3 0 7 +2908 Bc4 5 2 1 +2909 Bc4 8 0 2 +2911 Nc3 3 0 4 +2912 Nf3 37 1 19 +2912 c4 10 2 15 +2912 a4 11 1 11 +2912 Bd3 11 0 9 +2912 f4 3 0 7 +2912 a3 0 1 6 +2912 Nc3 2 0 4 +2912 d5 2 0 4 +2912 c3 4 0 1 +2913 c4 1 1 3 +2917 Nf3 7 1 9 +2920 d3 41 6 44 +2920 Qf3 29 2 21 +2920 Bd5 38 2 12 +2920 Nc3 17 0 17 +2920 Qh5 13 1 11 +2920 Bxf7 7 2 7 +2920 Nf3 10 0 5 +2920 f3 3 1 4 +2924 Bf3 10 0 3 +2925 d4 27 2 11 +2925 Nf3 20 1 8 +2925 d3 6 0 11 +2925 Bc4 8 0 3 +2925 f3 4 0 2 +2925 Be2 3 0 2 +2927 Bxa6 6 1 3 +2926 Nc3 176 15 172 +2926 d3 46 3 65 +2926 Bc4 56 1 49 +2926 d4 30 0 34 +2926 Bd3 13 0 20 +2926 e5 8 1 9 +2926 Qe2 6 0 3 +2926 c3 2 0 5 +2926 Bb5 3 1 2 +2926 Be2 2 0 3 +2930 Bc4 14 0 17 +2931 Bc4 2 0 5 +2934 Nc3 11 0 5 +2934 d3 7 1 7 +2935 Nf3 12 0 18 +2935 Nc3 16 1 11 +2935 c4 10 0 10 +2935 f3 2 0 8 +2935 f4 2 0 4 +2935 c3 3 0 2 +2935 h3 3 0 2 +2937 Bxa6 8 1 2 +2937 c4 3 0 2 +2936 Nc3 134 5 112 +2936 Bd3 139 11 100 +2936 d5 93 6 83 +2936 f3 34 2 23 +2936 e5 7 0 12 +2936 c4 8 0 6 +2936 Nf3 6 1 6 +2936 Nd2 6 0 2 +2936 c3 4 0 4 +2944 d4 8 0 16 +2945 Nc3 8 1 16 +2945 d4 6 3 8 +2945 d3 3 0 2 +2946 d3 18 1 34 +2946 Nc3 25 0 28 +2946 e5 9 1 15 +2946 Nf3 1 0 8 +2947 Bg2 15 0 12 +2948 Bc4 3 0 8 +2948 Ba4 2 0 8 +2951 Nf3 119 12 167 +2951 c3 65 6 83 +2951 Nc3 61 2 47 +2951 Qh5 36 6 49 +2951 Qf3 33 3 53 +2951 d3 44 1 41 +2951 a3 21 4 29 +2951 Bxf7 13 0 15 +2951 f4 6 0 7 +2951 a4 1 0 4 +2951 Ne2 2 0 3 +2955 d3 7 0 11 +2955 e5 6 0 7 +2955 Nc3 3 0 4 +2954 a4 5 1 7 +2954 Nf3 4 1 6 +2954 Qh5 4 1 5 +2954 Qf3 3 0 7 +2954 a3 4 0 4 +2953 Nf3 55 5 63 +2953 Qf3 36 0 45 +2953 Nc3 21 4 36 +2953 d3 17 0 28 +2953 Qh5 20 1 16 +2953 h3 10 2 15 +2953 c3 8 2 14 +2953 d4 6 1 11 +2953 a3 11 0 6 +2953 Bxf7 2 0 4 +2953 f4 4 0 1 +2957 Nf3 7 0 3 +2952 Nf3 122 10 153 +2952 Nc3 92 5 109 +2952 d3 31 3 58 +2952 d4 17 1 38 +2952 Qf3 16 1 29 +2952 a3 20 1 23 +2952 e5 16 2 22 +2952 Qe2 19 0 20 +2952 c3 13 3 20 +2952 Bb3 11 1 9 +2952 Nh3 11 0 8 +2952 f4 6 0 7 +2952 Qh5 2 0 7 +2952 a4 3 1 2 +2952 b3 3 0 2 +2952 Ne2 2 0 3 +2956 Qf3 5 0 5 +2956 Nf3 3 0 3 +2956 c3 3 0 2 +2962 Nf3 69 7 68 +2962 f4 43 3 33 +2962 g3 21 4 21 +2962 Bb5 20 0 26 +2962 Bc4 19 1 19 +2962 d3 8 1 19 +2962 a3 4 0 5 +2962 Nge2 5 0 3 +2966 Nf3 7 0 3 +2963 Nf3 35 4 58 +2963 f4 38 1 10 +2963 Bc4 21 0 21 +2963 g3 18 1 6 +2963 d3 12 0 10 +2963 Bb5 8 0 10 +2963 a3 2 0 6 +2963 d4 1 0 7 +2963 h3 2 0 3 +2967 Nf3 5 1 4 +2964 Nf3 44 11 29 +2964 f4 21 1 8 +2964 g3 15 1 12 +2964 Bc4 10 2 10 +2964 d3 5 0 7 +2964 d4 4 1 5 +2964 a3 2 0 6 +2964 Bb5 3 0 4 +2965 d3 9 0 14 +2965 f4 11 0 5 +2965 Nf3 6 0 2 +2970 Nbc3 10 3 10 +2970 c4 5 0 1 +2971 Nbc3 6 0 12 +2971 Ng3 3 0 2 +2972 Nbc3 9 1 0 +2973 d4 739 47 696 +2973 Bc4 323 21 397 +2973 Bb5 257 26 251 +2973 Nc3 160 18 199 +2973 c3 116 9 141 +2973 d3 23 0 42 +2973 c4 30 0 31 +2973 e5 9 0 17 +2973 b3 10 1 9 +2973 Be2 6 1 7 +2973 a3 5 0 6 +2973 g3 3 0 7 +2973 Bd3 1 0 4 +2980 Nc3 18 2 9 +2980 e5 6 1 6 +2980 d4 2 0 4 +2977 d4 34 3 23 +2977 Bc4 9 1 20 +2977 Nc3 10 0 14 +2977 c3 11 0 6 +2977 Be2 3 1 5 +2978 d4 36 2 18 +2978 Bc4 14 2 17 +2978 Nc3 3 0 3 +2978 Bb5 2 0 3 +2978 c3 2 0 3 +2979 exd5 21 2 10 +2979 e5 6 0 5 +2979 d4 2 0 4 +2979 Nc3 5 0 1 +2974 d4 675 43 661 +2974 Bc4 284 24 368 +2974 Nc3 148 13 228 +2974 Bb5 112 20 139 +2974 c3 117 5 97 +2974 c4 20 0 23 +2974 d3 16 0 23 +2974 Be2 5 2 17 +2974 h3 7 1 16 +2974 b3 6 3 11 +2974 e5 7 0 10 +2974 g3 7 1 5 +2974 Bd3 4 2 3 +2974 b4 3 0 2 +2981 Nxe5 3 0 3 +2975 d4 414 26 419 +2975 Nc3 99 9 131 +2975 Bc4 102 9 128 +2975 c3 53 2 64 +2975 c4 24 1 21 +2975 d3 25 1 16 +2975 e5 13 1 18 +2975 b3 13 2 13 +2975 Be2 12 1 13 +2975 Bb5 11 1 13 +2975 g3 11 0 5 +2975 a3 10 0 5 +2976 d4 97 0 104 +2976 Bc4 32 3 36 +2976 c3 28 1 26 +2976 Nc3 24 0 25 +2976 d3 3 0 2 +2976 c4 3 0 2 +2976 Bb5 2 0 3 +2982 d4 3 1 2 +2986 Bc4 9 3 31 +2986 c3 11 1 13 +2987 Bc4 5 0 12 +2989 Bc4 3 0 2 +2993 Qxc5 6 0 5 +2992 Qxc5 5 0 19 +2992 Qf3 1 0 4 +2995 Bc4 4 0 3 +2991 Bc4 12 1 28 +2990 Nf3 5 0 15 +2990 e5 2 0 14 +2990 Bc4 4 0 12 +2990 d3 3 0 10 +2994 Qxc5 4 0 3 +2999 Bb2 25 1 31 +3003 exd5 0 1 4 +3000 Bb2 15 1 10 +3002 Bb2 5 1 6 +3001 Bb2 8 2 10 +3005 a3 8 0 10 +3009 d4 58 4 41 +3009 Nf3 11 1 13 +3009 Bb5 3 1 5 +3009 a3 5 0 4 +3009 Bc4 3 0 2 +3013 e5 8 1 13 +3013 f3 0 1 4 +3012 exd5 16 1 16 +3012 e5 3 0 12 +3010 d4 41 0 40 +3010 Nf3 2 0 8 +3010 h3 0 0 7 +3014 d4 4 0 10 +3014 Nf3 3 0 8 +3011 d4 22 2 28 +3011 Nf3 1 0 5 +3015 d4 7 0 7 +3018 Nc3 52 1 45 +3018 Nf3 24 2 39 +3018 d3 11 1 16 +3018 Na3 6 0 8 +3018 a3 1 1 4 +3019 Nc3 29 2 22 +3019 d3 5 0 9 +3019 Nf3 3 2 9 +3022 Nc3 5 0 4 +3022 Nf3 0 1 4 +3020 Nc3 16 1 11 +3020 d3 7 1 8 +3020 Nf3 3 3 6 +3021 Nc3 8 1 12 +3025 Nf3 21 2 28 +3025 Nc3 13 3 29 +3025 c3 14 0 20 +3025 Be3 16 1 15 +3025 f4 8 1 12 +3025 c4 15 0 6 +3025 h3 9 0 6 +3025 Be2 5 0 5 +3025 g3 5 1 4 +3025 a3 5 0 5 +3025 Bd2 3 0 2 +3025 Bf4 2 0 3 +3030 Nc3 3 0 3 +3030 exd5 2 0 3 +3026 Nc3 15 3 21 +3026 Nf3 19 0 19 +3026 h3 8 2 12 +3026 f4 5 0 11 +3026 Be3 6 0 8 +3026 c4 5 0 9 +3026 g3 6 1 4 +3026 Be2 4 0 7 +3026 c3 4 0 3 +3029 Nf3 4 0 7 +3027 Nf3 17 0 18 +3027 Nc3 7 1 24 +3027 f4 4 0 6 +3027 c3 1 0 8 +3027 g3 2 2 4 +3027 Be2 4 0 4 +3027 c4 5 2 1 +3027 h3 1 0 5 +3027 Ne2 4 0 1 +3028 Nf3 5 0 7 +3028 f4 4 0 2 +3028 Nc3 3 0 3 +3035 d5 14 0 8 +3035 dxc5 9 0 6 +3035 Nf3 3 0 2 +3036 dxc5 5 1 6 +3036 d5 4 0 4 +3032 Qxd4 180 11 360 +3032 c3 142 1 149 +3032 Nf3 82 7 65 +3032 e5 1 0 5 +3034 dxc5 23 2 11 +3034 d5 10 1 4 +3033 d5 21 0 10 +3033 dxc5 15 0 14 +3033 Nf3 12 0 8 +3033 c3 7 0 3 +3033 e5 1 1 4 +3041 Nf3 15 4 46 +3041 f4 12 0 24 +3043 exd6 3 0 3 +3043 f4 3 1 2 +3043 Nf3 2 0 3 +3042 Nf3 5 0 6 +3042 d4 2 0 5 +3042 f4 2 0 3 +3045 Nc3 5 1 23 +3045 c3 3 0 4 +3046 Nc3 6 0 10 +3047 Nc3 2 0 6 +3048 Nc3 0 0 6 +3050 Nf3 184 8 149 +3050 c3 6 1 8 +3050 Bc4 5 0 8 +3050 d3 1 0 11 +3050 e5 3 0 4 +3050 d4 4 0 1 +3057 Nf3 4 0 5 +3055 Nf3 10 0 10 +3053 exd5 34 1 36 +3053 e5 24 0 31 +3053 Nf3 7 1 8 +3051 Nf3 100 9 96 +3051 Bc4 2 1 11 +3051 d3 4 2 2 +3051 c3 1 1 5 +3056 Nf3 5 0 9 +3052 Nf3 96 9 96 +3052 e5 2 0 6 +3052 d3 3 0 3 +3054 Nf3 23 3 26 +3059 Bg2 11 2 12 +3060 Bg2 2 0 9 +3061 Bg2 5 0 7 +3064 Bb3 8 1 3 +3062 exd5 173 11 136 +3062 Bb3 1 0 4 +3063 Nf3 9 0 9 +3063 Nc3 4 1 5 +3063 d3 6 0 3 +3063 d4 3 0 4 +3067 exd5 39 7 35 +3067 Nf3 24 1 9 +3067 d4 16 4 10 +3067 e5 6 0 9 +3067 d3 6 0 8 +3067 a3 7 0 3 +3067 Qf3 4 0 4 +3069 Nf3 3 0 4 +3068 d4 6 1 0 +3068 Nf3 2 0 3 +3072 exd5 2 1 9 +3072 e5 1 0 7 +3076 d4 4 0 7 +3076 c4 4 0 3 +3073 exd5 355 34 400 +3073 e5 105 12 130 +3073 Nc3 56 5 54 +3073 Ne5 22 1 18 +3073 d4 6 0 13 +3073 Bd3 10 0 7 +3073 d3 6 1 7 +3073 Bc4 2 0 4 +3075 d4 20 1 10 +3075 Bc4 7 1 9 +3075 Nc3 7 0 6 +3074 d4 23 3 19 +3074 Nc3 15 0 11 +3074 Bc4 6 1 11 +3074 d3 3 0 2 +3077 d4 4 0 8 +3077 Bc4 3 0 7 +3082 exd5 9 0 14 +3082 e5 2 0 4 +3084 Qf3 4 0 6 +3086 exd5 3 0 8 +3087 e5 4 0 1 +3088 cxd5 14 1 9 +3088 exd5 8 1 9 +3088 Nc3 7 0 4 +3089 Nf3 4 0 1 +3091 exd5 20 0 27 +3091 Nc3 10 0 17 +3091 e5 7 0 10 +3091 Nf3 4 0 8 +3091 f3 5 0 7 +3091 Nd2 4 0 6 +3091 f4 3 0 4 +3091 c3 2 1 3 +3100 e5 4 0 2 +3097 Nf3 12 0 1 +3094 e5 366 17 327 +3094 exd5 232 16 183 +3094 Nc3 138 11 133 +3094 Nd2 17 1 11 +3094 f3 16 3 10 +3094 c4 5 1 5 +3094 Bd3 5 0 5 +3094 Nf3 4 0 2 +3096 c4 8 1 7 +3096 Nf3 5 1 7 +3096 Nc3 6 0 4 +3096 e5 3 0 2 +3095 Nf3 27 0 11 +3095 c4 16 2 7 +3095 Nc3 13 0 8 +3095 e5 8 1 11 +3095 f4 8 0 2 +3095 d5 1 0 4 +3098 Nf3 5 0 0 +3102 d4 9 1 18 +3102 exd6 4 0 9 +3103 d4 2 0 12 +3105 exd5 2 0 3 +3110 Nf3 2 0 3 +3106 e5 70 8 82 +3106 exd5 43 5 48 +3106 Nf3 6 0 10 +3106 d3 4 0 5 +3108 Nf3 6 0 4 +3108 d4 2 1 3 +3109 Nf3 3 0 2 +3109 fxe5 1 0 4 +3107 Nf3 12 1 10 +3112 exd5 4 0 3 +3115 Bd3 5 0 0 +3114 Bd3 16 0 10 +3114 Ba4 2 1 3 +3118 Nf3 1 0 5 +3117 Bxe4 6 1 11 +3121 e5 5 0 2 +3121 d3 3 0 2 +3122 Nf3 6 0 1 +3119 Nce2 66 1 34 +3119 Nd5 16 4 20 +3119 Nb1 11 1 13 +3119 Nb5 12 1 11 +3119 Na4 3 0 8 +3120 Nxe4 59 4 42 +3128 e5 3 1 2 +3127 exd5 4 0 1 +3125 d3 2 0 3 +3124 Ng5 81 7 86 +3124 Ne5 54 1 34 +3124 Ng1 12 0 18 +3124 Nd4 5 0 11 +3124 Nh4 5 0 8 +3126 exd5 7 0 3 +3129 Qxe4 3 1 6 +3132 e5 2 0 3 +3133 Bc4 5 0 2 +3131 Qxe4 10 1 29 +3140 e5 3 1 2 +3138 Nf3 9 0 10 +3138 c3 0 1 6 +3137 dxe4 33 7 63 +3137 Nc3 10 0 9 +3137 d4 6 0 7 +3137 f3 1 1 4 +3143 Nc3 34 3 31 +3143 Bc4 11 0 5 +3143 d5 6 0 1 +3143 c4 4 0 3 +3143 Qe2 3 0 3 +3143 f3 1 1 3 +3153 d4 7 0 1 +3150 d4 48 3 56 +3150 f4 4 0 5 +3150 d3 3 1 3 +3150 Nf3 3 0 4 +3148 d4 100 8 82 +3148 Nf3 21 1 25 +3148 f4 9 1 10 +3148 Bb5 12 0 3 +3154 exf6 5 0 0 +3155 d4 5 0 2 +3156 d4 5 0 0 +3158 d4 2 0 3 +3149 f4 20 0 21 +3149 d4 14 2 22 +3149 Nf3 16 0 16 +3149 c3 13 1 15 +3149 Bb5 5 1 10 +3152 d4 5 1 7 +3146 Nf3 61 4 55 +3146 d3 50 3 41 +3146 f4 41 1 22 +3146 Bc4 26 1 20 +3146 c3 20 3 7 +3146 Bd3 3 0 6 +3146 Bb5 2 2 1 +3147 d4 146 4 121 +3147 f4 17 1 17 +3147 Nf3 17 1 15 +3147 Bb5 5 0 1 +3147 c3 4 0 2 +3151 exf6 20 0 23 +3151 d4 22 1 18 +3151 Nf3 9 0 3 +3151 f4 3 0 3 +3160 Nc3 150 22 200 +3160 c4 104 7 115 +3160 d4 104 9 75 +3160 Nf3 53 5 46 +3160 Bc4 18 2 28 +3160 Bb5 13 0 9 +3160 d6 6 0 5 +3160 Qf3 5 0 2 +3160 d3 1 0 5 +3160 h3 4 0 1 +3165 Nc3 6 1 1 +3166 Nc3 3 0 2 +3159 Nc3 1846 102 1200 +3159 Nf3 298 19 197 +3159 d4 227 16 165 +3159 c4 60 3 45 +3159 Qf3 58 5 45 +3159 d3 35 3 27 +3159 Be2 7 1 13 +3159 b3 2 0 3 +3161 dxc6 55 2 49 +3161 Nc3 11 0 10 +3161 d4 4 1 6 +3161 Nf3 4 0 4 +3163 dxe6 28 0 12 +3163 Nc3 5 1 15 +3162 dxe6 33 1 34 +3162 Nc3 4 1 2 +3162 d4 4 0 1 +3170 d3 2 1 5 +3169 fxe4 18 1 45 +3172 d3 6 1 6 +3172 Nc3 6 0 4 +3173 Ba4 7 0 3 +3181 Qf3 3 1 1 +3176 d3 18 1 22 +3176 Nc3 11 1 11 +3176 Qf3 5 0 6 +3176 Nf3 3 0 8 +3176 Bxf7 2 0 3 +3177 Qf3 9 1 4 +3177 Nf3 7 0 4 +3177 d4 4 0 3 +3175 d4 19 1 18 +3175 Nf3 20 1 8 +3175 Qf3 9 1 6 +3175 d3 13 0 3 +3175 Nc3 3 0 2 +3180 exf5 7 0 0 +3178 Qf3 6 0 7 +3178 Nf3 2 2 4 +3178 d3 2 0 4 +3178 d4 4 1 0 +3183 d3 8 0 8 +3183 Nf3 8 1 5 +3183 f4 4 0 3 +3183 d4 4 0 2 +3183 Bc4 4 0 1 +3184 Nf3 11 3 4 +3184 d3 4 0 4 +3186 f4 7 0 1 +3186 Nf3 3 0 4 +3186 d4 4 0 1 +3187 exf5 4 0 1 +3185 Nf3 5 1 6 +3185 d4 3 0 8 +3185 f4 5 0 2 +3192 Nbc3 1 0 4 +3208 Bc4 3 0 2 +3198 Be2 8 0 5 +3198 h3 8 0 4 +3198 Bc4 6 0 6 +3198 d4 4 0 5 +3197 d4 9 0 9 +3197 Bc4 8 0 4 +3197 Nc3 6 1 4 +3197 Bb5 6 1 3 +3202 d4 6 0 5 +3202 Nc3 2 0 5 +3193 Nc3 97 8 126 +3193 d3 17 2 20 +3193 Bc4 10 1 16 +3193 e5 14 2 11 +3193 d4 7 0 4 +3193 Bd3 8 0 3 +3193 Qe2 1 0 4 +3204 Nc3 5 0 0 +3199 d4 8 0 6 +3199 Nc3 6 1 4 +3199 Bc4 6 0 2 +3200 d4 8 1 11 +3200 Nc3 7 0 2 +3200 Bc4 4 0 1 +3206 exd5 2 0 3 +3194 d4 36 1 41 +3194 Bc4 46 0 29 +3194 Nc3 25 5 19 +3194 d3 3 1 1 +3195 d4 55 1 32 +3195 Bc4 17 1 10 +3195 Nc3 11 2 7 +3195 Bb5 6 2 1 +3195 Bd3 4 0 1 +3195 e5 2 0 3 +3195 c3 5 0 0 +3201 exf5 5 1 4 +3201 e5 5 0 4 +3201 Nc3 7 0 1 +3196 d4 28 6 44 +3196 Bc4 13 2 24 +3196 Nc3 7 2 12 +3196 b3 1 0 4 +3196 c3 1 0 4 +3203 Nc3 2 0 3 +3209 Bc4 2 0 4 +3210 Nh3 4 0 2 +3215 d3 2 0 3 +3216 Bb2 3 0 2 +3217 Nc3 10 0 8 +3219 Nc3 5 0 5 +3218 Nc3 6 0 2 +3220 Nc3 3 1 3 +3222 Nf3 3 0 4 +3222 f4 2 0 3 +3221 Nf3 4 0 7 +3221 Nc3 5 1 4 +3221 Be3 1 0 5 +3223 Nc3 3 1 6 +3223 Nf3 3 0 2 +3224 Nf3 2 0 4 +3238 Nf3 4 0 1 +3232 d5 9 0 7 +3232 Nf3 10 1 4 +3235 Nf3 3 0 5 +3235 f4 2 0 3 +3227 Nc3 209 6 178 +3227 Bd3 83 7 69 +3227 f3 14 0 13 +3227 e5 10 0 11 +3227 Nd2 3 0 4 +3227 Nf3 2 0 4 +3234 dxc5 5 1 4 +3234 d5 7 0 3 +3234 Nf3 2 0 4 +3231 Nf3 19 0 4 +3231 c4 8 0 5 +3231 d5 6 1 5 +3231 f4 7 0 3 +3231 Nc3 4 0 4 +3237 e5 6 1 1 +3230 dxe5 53 3 33 +3230 d5 17 1 21 +3230 Nf3 6 0 2 +3228 Nf3 52 2 38 +3228 c4 37 3 19 +3228 Nc3 28 1 13 +3228 f4 14 1 8 +3228 e5 8 0 12 +3228 d5 9 0 10 +3228 Bd3 10 1 4 +3228 f3 8 1 6 +3233 Nc3 7 0 3 +3233 exf5 5 0 1 +3233 e5 4 0 2 +3233 Bd3 4 0 1 +3229 Nf3 27 1 31 +3229 Nc3 29 1 16 +3229 c4 23 1 14 +3229 f4 21 0 13 +3229 d5 7 1 11 +3229 Be3 7 0 8 +3229 c3 2 2 5 +3229 e5 4 0 5 +3229 Bd3 4 0 3 +3229 Bc4 1 0 4 +3247 Nc3 3 0 2 +3253 Nf3 9 0 2 +3256 Nf3 3 0 2 +3249 Nc3 12 0 10 +3249 d3 6 0 5 +3249 e5 5 1 3 +3252 Nf3 8 0 6 +3248 Nf3 24 1 12 +3248 fxe5 8 1 7 +3248 f5 3 0 7 +3251 Nf3 21 0 10 +3250 Nf3 16 0 15 +3250 d4 4 0 5 +3261 Qh5 1 0 5 +3261 Bxc6 4 0 1 +3260 d3 5 0 4 +3259 Bc4 5 0 10 +3259 Ba4 7 0 4 +3267 Nf3 115 16 108 +3267 Qh5 61 4 35 +3267 Qf3 49 2 48 +3267 d3 56 0 34 +3267 c3 30 1 25 +3267 Bxf7 25 0 24 +3267 Nc3 21 1 19 +3267 a3 6 0 4 +3276 Nf3 5 0 4 +3276 Qh5 5 1 1 +3276 Qf3 1 0 4 +3276 Nc3 2 0 3 +3265 Nf3 256 16 249 +3265 Qf3 96 9 98 +3265 d3 98 9 93 +3265 c3 88 11 90 +3265 Nc3 84 7 60 +3265 Qh5 57 3 43 +3265 a3 43 0 35 +3265 Bxf7 27 0 17 +3265 Bd5 5 0 5 +3265 f4 6 0 3 +3265 a4 4 0 2 +3265 Nh3 3 0 3 +3265 Ne2 3 0 2 +3282 Qf3 3 0 2 +3264 d3 398 27 332 +3264 Nf3 220 7 186 +3264 Nc3 211 13 137 +3264 Qf3 102 9 113 +3264 Bxf7 13 1 17 +3264 d4 14 0 10 +3264 c3 8 1 9 +3264 g4 5 0 5 +3264 f3 3 0 5 +3277 d3 12 0 3 +3277 Nf3 7 1 1 +3278 Nf3 7 0 1 +3278 d3 6 0 1 +3278 Qf3 4 0 1 +3269 Nf3 20 2 18 +3269 Qf3 15 1 7 +3269 Nc3 14 1 6 +3269 d3 11 0 7 +3286 Qf3 3 0 2 +3271 Qf3 19 0 8 +3271 Nc3 11 0 10 +3271 d3 12 1 8 +3271 Nf3 8 0 4 +3272 Nf3 12 1 6 +3272 Qf3 8 1 2 +3272 Qh5 6 0 2 +3272 a4 2 0 4 +3272 d3 4 0 2 +3272 a3 4 0 2 +3281 Nf3 4 0 1 +3279 Qh5 7 0 0 +3279 Nf3 2 1 4 +3268 Nf3 26 2 19 +3268 Qh5 23 2 8 +3268 Qf3 16 0 15 +3268 d3 14 1 15 +3268 Nc3 10 1 5 +3268 Bxf7 9 0 6 +3268 a3 7 1 0 +3268 c3 4 0 3 +3280 exd5 11 0 3 +3266 Nf3 131 6 73 +3266 Qf3 82 3 62 +3266 d3 52 3 39 +3266 Qh5 48 5 24 +3266 Nc3 32 2 35 +3266 c3 23 0 18 +3266 h3 20 0 20 +3266 Bxf7 17 2 9 +3266 d4 15 0 4 +3266 a3 5 0 13 +3266 Nh3 3 0 2 +3273 exf5 8 1 15 +3273 Qh5 2 0 5 +3273 Qf3 1 0 5 +3273 Bxg8 1 0 4 +3273 d3 3 0 2 +3274 Nf3 7 1 3 +3274 d3 7 0 3 +3275 Nf3 4 0 5 +3275 Qf3 4 0 4 +3275 Nc3 6 0 0 +3275 d3 5 0 1 +3270 Nf3 12 2 8 +3270 Qf3 9 1 11 +3270 Qh5 13 1 3 +3270 d3 7 1 2 +3270 Nc3 4 2 2 +3270 Bxf7 3 1 3 +3288 Nf3 1 0 4 +3297 Nf3 16 3 10 +3297 Nge2 5 0 3 +3297 a3 4 0 4 +3297 Nd5 4 0 3 +3297 d3 2 0 4 +3297 Bc4 1 0 4 +3296 Nf3 34 3 33 +3296 Bc4 10 1 4 +3296 f4 7 0 5 +3296 g4 4 1 1 +3296 d3 3 0 3 +3296 a3 2 0 4 +3296 Na4 1 1 3 +3293 Nf3 126 11 101 +3293 Bc4 34 1 33 +3293 f4 30 1 12 +3293 d3 20 0 12 +3293 a3 22 1 6 +3293 Bb5 7 2 12 +3293 g3 5 2 1 +3294 Nf3 97 10 78 +3294 f4 41 2 20 +3294 Bc4 26 4 21 +3294 d3 12 1 25 +3294 a3 14 1 10 +3294 d4 10 1 5 +3294 g3 7 0 3 +3302 Nf3 5 0 1 +3303 Nf3 3 1 2 +3301 Nf3 3 1 2 +3307 Nf3 5 0 1 +3298 Nf3 13 0 9 +3298 Bc4 3 0 6 +3295 Nf3 60 1 40 +3295 Bc4 24 1 17 +3295 f4 25 0 7 +3295 d3 8 0 6 +3295 a3 9 0 3 +3295 d4 5 0 5 +3299 exf5 7 2 9 +3299 Nf3 3 0 4 +3311 Nbc3 4 0 4 +3308 Nbc3 11 3 22 +3308 Ng3 3 3 2 +3310 Nbc3 7 2 10 +3312 exd5 2 0 3 +3309 Nbc3 10 0 16 +3325 Bc4 9 0 3 +3325 Nxe5 8 0 2 +3325 c3 8 0 1 +3325 a3 5 0 1 +3317 Bc4 108 2 71 +3317 Nxe5 65 2 47 +3317 d4 37 3 21 +3317 Nc3 30 2 24 +3317 c3 19 3 9 +3317 d3 7 0 7 +3317 Be2 2 0 3 +3321 Bc4 81 2 22 +3321 d4 40 2 18 +3321 Nc3 17 3 9 +3321 c3 13 0 2 +3321 d3 3 0 3 +3321 a3 5 0 1 +3330 Nxe5 3 1 1 +3313 Bc4 3193 211 2792 +3313 Bb5 2255 156 1982 +3313 d4 1160 99 1039 +3313 Nc3 842 64 728 +3313 c3 231 14 278 +3313 d3 132 5 154 +3313 a3 58 5 91 +3313 b3 53 4 53 +3313 c4 31 1 42 +3313 Be2 21 5 38 +3313 h3 13 1 23 +3313 g3 11 2 14 +3313 Bd3 5 0 12 +3313 Nxe5 3 0 6 +3313 a4 2 0 6 +3315 Nc3 462 30 347 +3315 Nxe5 371 31 282 +3315 Bc4 265 5 166 +3315 d3 142 14 119 +3315 d4 83 4 65 +3315 Bd3 14 0 22 +3315 Ng5 19 1 8 +3315 Qe2 10 1 14 +3315 c3 5 0 10 +3315 Bb5 7 0 4 +3315 b3 5 0 3 +3315 a3 2 0 3 +3323 Bc4 18 0 6 +3323 Nc3 12 1 4 +3323 d3 3 1 3 +3316 Bc4 148 6 102 +3316 Nc3 142 4 72 +3316 d4 82 7 60 +3316 d3 43 2 25 +3316 c3 17 0 7 +3316 Be2 7 1 8 +3316 b3 5 2 8 +3316 a3 5 0 4 +3316 Bb5 1 0 4 +3332 Nxh4 6 0 0 +3324 Bc4 13 1 2 +3324 Nxe5 5 0 2 +3324 d3 4 0 1 +3326 Bc4 11 1 6 +3326 Nxe5 8 1 3 +3322 Bc4 14 1 11 +3322 Nxe5 7 0 7 +3322 Nc3 11 0 0 +3322 d4 3 0 5 +3319 exd5 120 4 70 +3319 Nxe5 46 0 26 +3319 Nc3 20 0 11 +3319 d3 9 2 11 +3319 d4 10 1 10 +3319 Bd3 6 0 7 +3319 Qe2 4 0 2 +3319 Bb5 2 0 4 +3314 Bc4 1696 85 1205 +3314 d4 1045 72 688 +3314 Nc3 482 32 359 +3314 h3 218 17 187 +3314 c3 106 4 81 +3314 Bb5 93 9 86 +3314 d3 76 4 56 +3314 Be2 39 5 21 +3314 c4 20 6 19 +3314 g3 17 1 18 +3314 b3 15 1 12 +3314 Bd3 8 1 9 +3314 a3 3 0 2 +3320 exf5 68 3 96 +3320 Nxe5 57 7 38 +3320 d3 19 0 14 +3320 Nc3 19 1 12 +3320 Bc4 9 0 6 +3320 d4 3 1 3 +3318 Bc4 127 2 30 +3318 d4 73 3 29 +3318 Nc3 41 1 16 +3318 Nxe5 49 0 6 +3318 Nh4 10 1 5 +3318 c3 6 0 3 +3318 d3 4 0 4 +3318 a3 3 0 5 +3329 Nxe5 8 1 2 +3327 Nxe5 9 0 3 +3327 Bc4 5 1 4 +3327 d4 3 0 2 +3327 Nc3 2 0 3 +3328 Nc3 6 0 1 +3328 Nxe5 4 0 2 +3328 Bc4 4 0 2 +3344 Bc4 10 2 14 +3344 d3 9 0 3 +3342 Bc4 42 0 42 +3342 c3 21 1 23 +3341 Bc4 37 1 42 +3341 d3 37 3 38 +3341 g4 4 1 3 +3341 h3 3 0 5 +3341 Nh3 3 0 5 +3341 Nc3 2 1 3 +3345 Bc4 8 2 12 +3345 d3 4 0 2 +3347 exd5 5 0 1 +3343 Bc4 18 0 20 +3343 d3 5 1 7 +3346 Bc4 4 0 4 +3356 Qxe5 9 0 4 +3358 Bc4 4 0 1 +3350 Bc4 192 17 264 +3350 Bb5 29 8 49 +3350 c3 17 1 23 +3350 Nf3 10 1 20 +3350 Nc3 8 0 5 +3350 d3 1 0 4 +3352 Qxe5 108 8 97 +3352 Qf3 7 0 11 +3355 Nf3 11 0 9 +3355 Bc4 5 0 8 +3355 Nc3 7 1 4 +3355 d3 2 0 3 +3353 Nf3 33 6 35 +3353 Bc4 28 1 33 +3353 Nc3 18 2 10 +3353 d3 10 2 18 +3353 g4 1 1 3 +3357 Qxe5 5 0 3 +3351 Bc4 125 5 123 +3351 Bb5 21 2 20 +3351 Nf3 5 1 9 +3351 Nc3 4 0 3 +3354 Qxe5 61 1 8 +3362 Nc3 3 0 2 +3361 Nc3 4 1 6 +3360 Nc3 11 0 12 +3360 d3 3 0 4 +3364 Nc3 7 0 0 +3363 h3 1 1 4 +3363 Nc3 0 1 5 +3368 Bb2 9 1 9 +3366 Bb2 11 2 14 +3365 d3 10 1 14 +3365 Bb2 7 0 4 +3367 Bb2 10 2 15 +3373 d4 8 1 8 +3373 Nf3 3 0 3 +3373 d3 2 0 3 +3372 d4 8 0 8 +3372 Bb5 5 0 3 +3371 d3 15 0 21 +3371 f3 6 0 9 +3371 d4 7 0 5 +3371 Qf3 6 0 2 +3371 Bd3 5 0 3 +3371 Qa4 3 0 3 +3376 d4 5 0 0 +3374 d4 3 0 3 +3374 exd5 4 0 1 +3375 d4 5 0 4 +3381 Nf3 10 0 12 +3381 Nc3 9 3 6 +3381 d3 7 1 4 +3378 Nc3 50 2 32 +3378 Nf3 4 0 7 +3378 d3 2 2 4 +3378 a3 2 0 5 +3379 Nc3 26 2 18 +3379 d3 14 3 23 +3379 f3 3 0 2 +3382 Nc3 6 0 4 +3382 d3 4 0 4 +3382 Nf3 3 1 1 +3384 Nc3 1 1 3 +3380 Nc3 32 2 19 +3380 d3 1 1 3 +3383 exf5 2 0 3 +3395 Bd2 8 1 8 +3395 c3 3 1 3 +3390 Nf3 22 0 38 +3390 Nc3 15 2 10 +3390 h3 8 1 16 +3390 c4 8 0 3 +3390 f4 5 0 5 +3390 Qe2 2 1 6 +3390 Ne2 2 1 5 +3390 Be2 2 0 4 +3390 c3 1 0 5 +3387 Nf3 63 4 60 +3387 Nc3 37 3 41 +3387 c4 38 2 14 +3387 f4 17 1 19 +3387 c3 15 0 21 +3387 h3 12 0 22 +3387 Be3 12 2 9 +3387 Be2 5 0 9 +3387 a3 6 1 5 +3387 f3 3 0 7 +3387 Ne2 2 0 6 +3387 g3 2 0 5 +3387 h4 1 1 4 +3388 Nf3 40 2 48 +3388 Nc3 25 1 19 +3388 f4 12 1 17 +3388 Bg5 8 2 20 +3388 h3 13 2 6 +3388 Be2 8 0 13 +3388 c4 13 0 3 +3388 f3 5 0 7 +3388 Ne2 6 0 4 +3388 a3 4 0 4 +3388 Be3 3 0 5 +3388 c3 3 1 2 +3393 Nf3 10 0 9 +3393 Nc3 6 0 2 +3394 Nf3 8 0 1 +3394 h3 4 0 1 +3391 exd5 27 1 17 +3391 Nc3 8 0 15 +3391 Nf3 4 1 7 +3391 f3 5 0 3 +3391 Nd2 3 0 2 +3389 Nf3 38 0 52 +3389 Nc3 35 2 19 +3389 c4 16 1 7 +3389 f4 14 0 9 +3389 h3 6 1 13 +3389 Be3 9 1 3 +3389 Be2 5 0 6 +3389 c3 3 1 4 +3389 f3 0 0 6 +3389 a3 2 0 3 +3396 f3 5 0 0 +3399 Nf3 2 0 4 +3392 Nf3 9 0 8 +3392 Nc3 7 0 1 +3392 Ne2 3 0 3 +3392 f4 4 0 1 +3415 c3 5 0 3 +3412 d5 9 1 10 +3412 Nf3 10 0 3 +3412 dxe5 4 0 4 +3405 d5 124 2 71 +3405 Nf3 37 2 20 +3405 dxe5 18 0 25 +3405 c3 7 1 9 +3407 dxe5 25 3 13 +3407 Nf3 10 0 4 +3407 Nc3 4 1 7 +3407 Bg5 5 0 3 +3407 f3 4 0 1 +3413 d5 6 0 4 +3413 dxe5 3 0 3 +3413 Nf3 4 1 0 +3411 Nf3 16 0 3 +3411 dxe5 8 2 3 +3411 d5 7 0 6 +3410 Nc3 9 1 7 +3410 Nf3 12 0 3 +3410 Qd3 4 1 2 +3416 dxe5 4 0 1 +3409 dxe5 30 4 15 +3409 exd5 7 1 3 +3406 dxe5 81 4 33 +3406 d5 41 1 28 +3406 Nf3 25 1 10 +3406 c3 10 0 3 +3406 Bc4 6 0 1 +3404 Qxd4 339 26 562 +3404 c3 476 20 277 +3404 Nf3 127 5 64 +3404 e5 8 1 12 +3404 Bc4 11 0 6 +3404 f4 4 0 2 +3414 exf5 10 0 1 +3414 dxe5 3 0 3 +3408 dxe5 25 0 7 +3408 Nf3 15 0 7 +3408 d5 9 0 10 +3423 c3 2 0 5 +3423 Nc3 1 0 4 +3419 Nc3 7 1 20 +3419 c3 4 1 9 +3419 b3 3 0 10 +3419 Bb5 1 1 5 +3420 Nc3 5 0 6 +3420 c3 2 1 5 +3420 b3 1 1 5 +3420 Bc4 1 0 5 +3420 Ne2 1 0 4 +3424 g3 2 0 5 +3422 exd5 3 0 6 +3421 Nc3 4 0 10 +3421 c3 6 0 2 +3421 d4 3 0 4 +3430 Nf3 55 3 47 +3430 fxe5 6 0 4 +3436 Nf3 22 0 4 +3436 fxe5 2 0 3 +3427 Nf3 325 7 214 +3427 fxe5 20 2 13 +3427 Bc4 11 0 11 +3427 f5 1 0 8 +3427 Nc3 4 0 3 +3433 Nc3 13 1 5 +3433 fxe5 9 0 5 +3433 Nf3 7 0 2 +3437 Nf3 14 1 0 +3435 Nf3 17 1 7 +3431 g3 62 1 39 +3429 exd5 92 6 77 +3429 Nf3 19 0 19 +3429 fxe5 7 0 13 +3429 Nc3 3 0 9 +3428 Nf3 240 8 124 +3428 Bc4 14 0 8 +3428 fxe5 10 0 8 +3428 f5 8 0 1 +3428 h3 4 1 4 +3426 Nf3 1021 30 606 +3426 Bc4 40 1 36 +3426 d4 16 0 13 +3426 h4 16 0 10 +3426 Qf3 5 0 3 +3434 exf5 15 1 7 +3434 fxe5 1 0 5 +3432 Nf3 26 0 9 +3432 fxe5 13 0 1 +3432 f5 5 0 3 +3432 Bc4 3 0 2 +3442 Bg2 3 0 2 +3440 Bg2 3 0 14 +3439 Bg2 4 1 12 +3443 Bg2 2 0 6 +3441 Bg2 2 1 8 +3447 d3 8 0 2 +3448 f3 2 0 3 +3448 Nc3 1 0 4 +3452 Ba4 8 0 9 +3465 d4 2 0 4 +3459 d4 5 1 1 +3459 Nf3 4 0 2 +3458 d3 9 0 3 +3458 e5 5 0 5 +3458 Nc3 5 0 3 +3461 d3 5 0 2 +3463 Qf3 3 0 2 +3457 d4 4 0 6 +3457 Nf3 5 0 4 +3457 d3 2 1 3 +3457 a3 3 0 2 +3456 Nf3 5 0 6 +3456 d4 2 0 7 +3456 d3 6 0 3 +3456 Nc3 3 0 4 +3455 d4 8 1 7 +3455 Nf3 5 0 5 +3455 d3 1 0 5 +3453 exd5 100 7 144 +3453 Bb3 1 0 6 +3454 d4 27 3 12 +3454 Nf3 5 0 10 +3454 d3 4 0 7 +3454 a3 1 0 5 +3469 exd5 0 0 6 +3476 Nf3 3 0 3 +3476 d4 4 0 1 +3481 Nf3 4 0 4 +3480 Nf3 2 0 3 +3477 Nf3 6 0 3 +3477 a3 5 0 1 +3474 Nf3 5 0 5 +3474 d4 3 0 5 +3474 d3 1 0 4 +3478 Nf3 5 0 5 +3482 d4 1 0 4 +3475 Nf3 3 0 9 +3475 d4 3 1 4 +3472 Nf3 13 2 9 +3472 Bc4 5 0 2 +3472 a3 1 0 4 +3473 Nf3 4 2 4 +3473 d4 8 0 0 +3470 exd5 60 8 92 +3470 d4 14 0 15 +3470 Nf3 14 0 14 +3470 e5 7 0 7 +3470 d3 6 0 8 +3470 a3 2 0 3 +3470 b3 1 0 4 +3471 Nf3 13 0 13 +3471 d4 11 1 5 +3471 a3 3 0 3 +3471 d3 5 0 1 +3483 exd5 7 0 9 +3484 Nbc3 5 1 0 +3495 d4 17 1 12 +3495 Nc3 3 0 4 +3495 Bc4 5 1 1 +3496 d4 11 0 11 +3496 Nc3 6 0 5 +3496 Bc4 4 1 1 +3491 d4 24 1 25 +3491 Nc3 15 1 4 +3491 Bb5 15 0 4 +3491 Bc4 10 0 6 +3491 c3 4 0 3 +3491 e5 2 1 3 +3492 d4 22 1 30 +3492 Nc3 16 0 6 +3492 Bc4 6 0 6 +3492 e5 2 0 6 +3492 c3 3 0 2 +3490 e5 50 1 33 +3490 Nc3 33 2 23 +3490 d3 7 0 7 +3490 Bc4 9 0 5 +3490 Bd3 6 0 1 +3490 d4 4 0 1 +3494 d4 15 3 9 +3494 Bc4 4 0 5 +3494 Nc3 2 1 6 +3494 Bb5 5 0 1 +3494 c3 3 0 2 +3501 d4 4 0 4 +3501 Nc3 3 0 2 +3498 d4 8 0 6 +3498 Nc3 3 0 4 +3488 d4 47 1 66 +3488 Nc3 19 1 23 +3488 Bc4 11 0 21 +3488 e5 5 1 10 +3488 d3 8 0 2 +3488 Bb5 1 0 6 +3486 d4 57 1 73 +3486 Bc4 43 2 45 +3486 Nc3 40 1 39 +3486 e5 13 1 9 +3486 c3 12 0 9 +3486 d3 8 0 8 +3486 c4 5 0 6 +3486 Be2 3 1 6 +3486 Ne5 4 0 5 +3486 Bb5 0 0 7 +3486 a3 4 1 2 +3489 d4 53 2 50 +3489 Bc4 12 1 21 +3489 Nc3 18 2 11 +3489 c4 2 0 6 +3489 Ne5 3 0 3 +3489 e5 2 0 3 +3485 exd5 455 46 603 +3485 e5 185 14 248 +3485 Nc3 66 4 75 +3485 Ne5 29 2 17 +3485 d3 9 3 28 +3485 Bd3 11 2 15 +3485 d4 14 1 12 +3485 Bb5 5 0 13 +3485 Qe2 2 0 4 +3485 Be2 1 0 4 +3487 d4 113 5 78 +3487 Bc4 41 4 33 +3487 Nc3 33 2 32 +3487 e5 6 2 12 +3487 Bb5 5 0 7 +3487 c3 7 1 2 +3487 d3 4 0 6 +3487 b3 4 0 1 +3500 exf5 11 0 3 +3500 e5 2 0 3 +3499 d4 6 1 4 +3499 Nc3 3 0 2 +3499 Bc4 1 0 4 +3493 d4 24 1 16 +3493 Bc4 9 1 10 +3493 Nc3 8 2 3 +3493 e5 3 0 2 +3497 d4 9 0 5 +3497 Nc3 7 0 5 +3497 Bc4 4 0 4 +3508 Nf3 3 0 2 +3507 exd5 3 0 10 +3510 c3 5 0 2 +3509 exd5 1 1 11 +3509 e5 2 0 4 +3515 Qf3 4 1 9 +3516 exd5 3 0 4 +3518 e5 4 0 5 +3522 Bb2 4 0 6 +3523 Bb2 5 0 3 +3521 exd5 9 0 15 +3521 Bb2 4 0 14 +3521 e5 6 0 6 +3526 e5 2 1 7 +3526 exd5 2 0 5 +3529 Nc3 4 1 6 +3529 Nf3 2 0 6 +3529 d4 3 0 3 +3531 d4 8 1 5 +3531 Nc3 4 0 2 +3528 exd5 16 2 6 +3528 cxd5 8 0 8 +3528 Nc3 7 0 4 +3530 Nc3 8 0 3 +3530 d4 7 0 3 +3541 Nc3 2 1 4 +3541 Nf3 3 0 2 +3537 Be3 2 1 7 +3537 c4 1 0 8 +3537 Nf3 5 1 3 +3540 Nf3 1 1 4 +3540 Nc3 4 0 2 +3538 Nf3 5 0 4 +3538 Nc3 3 0 3 +3535 exd5 26 1 48 +3535 Nc3 19 0 33 +3535 e5 12 0 15 +3535 Nd2 12 1 2 +3535 Nf3 5 1 9 +3535 Qe2 6 3 6 +3535 f3 4 0 3 +3536 Nf3 7 0 5 +3536 Nc3 9 0 3 +3536 c4 3 0 2 +3561 c3 14 0 2 +3561 Bd2 4 0 2 +3559 Nf3 15 1 9 +3559 e5 2 0 3 +3559 Nc3 4 0 1 +3555 Nf3 33 0 8 +3555 d5 9 0 7 +3555 c3 6 0 2 +3555 Be3 6 0 2 +3555 c4 2 1 2 +3553 Nf3 18 2 25 +3553 c4 22 0 19 +3553 Nc3 17 1 22 +3553 f4 15 2 12 +3553 Bd3 12 0 6 +3553 e5 2 0 7 +3553 c3 2 1 4 +3553 Bg5 5 0 1 +3554 e5 75 2 34 +3554 Nc3 25 1 8 +3554 Bd3 13 0 6 +3554 Bg5 8 0 5 +3558 Nf3 10 0 9 +3558 c4 15 0 2 +3558 Nc3 7 0 2 +3558 f4 7 0 0 +3558 e5 3 0 3 +3562 Nf3 5 0 3 +3562 Nc3 4 0 1 +3556 Nc3 22 2 19 +3556 Nf3 4 0 6 +3556 Bd3 6 0 4 +3556 Qf3 3 0 5 +3556 e5 3 1 3 +3560 Nf3 9 1 5 +3560 c4 8 0 1 +3560 Nc3 2 0 4 +3551 Nf3 35 3 26 +3551 c4 26 2 28 +3551 Nc3 23 2 15 +3551 Bd3 15 0 10 +3551 e5 12 0 10 +3551 f4 11 0 8 +3551 d5 5 0 9 +3551 c3 3 1 3 +3551 g3 4 0 3 +3551 Bc4 4 0 1 +3550 Nf3 60 5 64 +3550 d5 58 2 56 +3550 c3 40 1 48 +3550 dxc5 17 0 18 +3550 Be3 7 2 5 +3550 e5 3 0 6 +3552 Nf3 38 1 31 +3552 c4 45 2 23 +3552 e5 17 2 15 +3552 Nc3 18 1 11 +3552 f4 14 0 9 +3552 Bd3 5 0 5 +3552 d5 4 1 4 +3552 a3 1 1 3 +3548 e5 542 33 644 +3548 exd5 431 32 410 +3548 Nc3 233 12 198 +3548 Nd2 71 8 53 +3548 Bd3 15 0 14 +3548 c4 8 0 8 +3548 f3 2 0 4 +3548 Be3 4 0 1 +3549 Nf3 74 6 55 +3549 c4 71 6 51 +3549 Nc3 49 1 15 +3549 f4 36 1 15 +3549 Bd3 30 1 12 +3549 d5 4 1 12 +3549 e5 2 0 9 +3549 Bc4 6 0 4 +3549 Be3 10 0 0 +3549 c3 6 0 2 +3564 exf5 4 0 3 +3564 e5 6 0 1 +3565 Nf3 2 0 3 +3557 Nf3 19 0 3 +3557 f4 9 0 2 +3557 c4 6 0 3 +3557 e5 7 0 2 +3557 Be3 4 0 1 +3563 Bd3 5 0 0 +3563 Nf3 3 0 2 +3577 d4 8 0 6 +3573 d4 24 2 12 +3573 Nf3 10 1 9 +3573 f4 2 1 4 +3580 d4 2 0 4 +3579 Nf3 9 0 0 +3575 d4 4 0 13 +3575 Nf3 3 0 4 +3574 Nf3 6 0 9 +3574 c3 5 0 3 +3574 f4 1 0 6 +3574 Bc4 4 0 3 +3581 d4 2 0 4 +3571 d4 72 3 68 +3571 exd6 22 3 30 +3571 Nf3 2 0 4 +3572 Nf3 23 0 16 +3572 exd6 14 2 22 +3572 d4 11 4 20 +3572 f4 12 0 15 +3576 exf6 3 0 7 +3576 d4 1 0 4 +3578 d4 4 0 5 +3589 Nc3 1 0 5 +3586 exd5 2 0 13 +3586 d4 3 0 7 +3586 Nc3 1 1 7 +3587 Nc3 2 0 4 +3603 Nf3 4 0 1 +3603 d4 3 0 2 +3601 Nf3 9 1 4 +3598 Nf3 13 0 5 +3596 Nf3 12 2 11 +3596 d4 5 0 7 +3599 e5 6 0 6 +3599 Nf3 5 0 3 +3599 Nc3 4 0 1 +3600 Nf3 8 0 5 +3595 g3 16 1 22 +3594 Nf3 15 0 13 +3594 d4 3 0 9 +3593 Nf3 22 0 31 +3597 Nf3 12 2 14 +3597 d4 5 0 1 +3591 e5 90 7 138 +3591 exd5 69 2 87 +3591 Nf3 8 0 8 +3591 Nc3 1 0 4 +3592 Nf3 43 3 16 +3592 d4 6 0 4 +3602 Nf3 12 0 3 +3606 Bg2 4 0 13 +3606 exd5 3 0 3 +3610 f4 2 0 3 +3611 Nf3 11 0 8 +3611 Nc3 6 0 9 +3611 Bc4 4 1 9 +3611 d4 6 1 6 +3611 g4 9 0 4 +3611 d3 1 0 5 +3611 b3 2 0 3 +3613 d4 5 0 0 +3616 d5 2 0 3 +3619 Qxg4 10 0 18 +3619 Nc3 5 0 1 +3620 Qxg4 8 0 3 +3622 Ne5 6 0 8 +3622 Nd4 7 0 3 +3622 Ng5 1 0 7 +3622 Ng1 5 0 2 +3624 Qxg4 4 0 5 +3626 Nf3 7 0 4 +3625 Qxg4 61 1 47 +3625 Be2 4 1 0 +3631 Qf3 55 2 47 +3631 Nf3 25 1 24 +3631 d3 14 2 11 +3631 c3 12 0 14 +3631 d4 9 1 12 +3631 Bxf7 6 0 4 +3631 Nc3 2 1 4 +3632 d4 4 0 1 +3634 d4 17 2 13 +3634 Nf3 10 2 7 +3634 d3 6 1 6 +3634 f4 9 0 1 +3634 Bc4 6 0 3 +3634 a3 3 0 3 +3635 Nbc3 4 0 1 +3636 d4 142 11 108 +3636 Bc4 89 10 80 +3636 Nc3 40 1 37 +3636 c3 22 2 16 +3636 e5 9 2 9 +3636 d3 6 1 11 +3636 g3 3 0 4 +3636 Bb5 2 1 3 +3636 Be2 1 1 3 +3642 Bc4 18 1 21 +3643 c3 0 0 8 +3643 Nc3 3 0 3 +3644 d4 4 0 5 +3645 d4 5 0 4 +3645 Nc3 4 0 2 +3646 c3 13 1 15 +3646 Nf3 10 0 9 +3646 Nc3 6 0 8 +3646 c4 3 1 5 +3646 f4 4 0 5 +3646 Be2 2 0 4 +3646 g3 2 0 3 +3647 Nf3 153 9 110 +3647 e5 67 3 76 +3647 Be3 53 2 36 +3647 c3 37 4 47 +3647 Nc3 49 2 32 +3647 f4 37 1 37 +3647 c4 36 5 32 +3647 Bc4 2 0 7 +3647 d5 3 0 2 +3647 b3 3 0 2 +3651 e5 2 1 2 +3650 Nf3 4 0 3 +3648 e5 7 0 3 +3654 d4 17 2 29 +3656 Nc3 3 1 8 +3657 Nf3 55 2 41 +3657 d4 19 5 12 +3657 e5 5 1 9 +3659 Bg2 7 1 9 +3668 fxe4 3 0 4 +3671 e3 2 0 4 +3670 e3 5 1 1 +3673 e3 6 0 8 +3675 e3 7 0 2 +3674 e3 4 0 3 +3678 d4 3 0 2 +3679 e3 1 0 4 +3680 e3 18 0 7 +3682 Nf3 4 1 5 +3683 d3 3 0 2 +3684 e4 9 0 7 +3684 e3 5 2 7 +3685 e3 7 0 9 +3686 e3 1 0 5 +3688 e3 5 0 3 +3687 e3 4 1 2 +3693 e3 10 0 7 +3700 e3 8 0 3 +3700 d3 4 0 4 +3699 e3 18 1 12 +3699 Ne5 3 1 2 +3696 e3 12 1 17 +3696 d4 20 1 8 +3696 b3 4 1 2 +3696 d3 3 1 2 +3698 e3 14 0 14 +3698 d3 4 1 1 +3698 d4 5 0 1 +3695 e3 30 2 25 +3695 c3 11 0 1 +3695 d4 2 0 9 +3695 d3 7 0 3 +3701 e3 7 0 7 +3697 e3 18 2 9 +3697 d4 10 1 8 +3697 d3 5 0 2 +3702 e3 3 0 7 +3705 e3 3 0 2 +3703 e3 3 0 3 +3708 e3 2 0 3 +3707 e3 4 1 3 +3712 Nf3 6 0 3 +3711 Nf3 4 0 7 +3713 Bb5 2 0 4 +3713 Nf3 2 0 4 +3714 Nf3 5 0 2 +3723 exf4 8 1 19 +3725 exd6 9 1 21 +3725 Nf3 2 1 5 +3728 e4 7 0 0 +3727 e3 6 0 2 +3727 e4 2 0 3 +3726 e3 26 2 20 +3726 d4 13 0 10 +3736 e3 2 0 3 +3737 Nf3 4 0 8 +3738 e5 4 0 1 +3739 e3 3 0 2 +3740 e3 12 0 8 +3740 e4 8 0 3 +3740 d4 2 1 2 +3742 Nf3 2 0 3 +3746 b3 3 0 5 +3748 b3 2 1 2 +3745 c4 3 0 2 +3750 Bg2 2 1 6 +3754 Bxb7 6 0 1 +3753 b3 3 0 4 +3752 b3 13 0 6 +3752 d4 2 0 4 +3752 e3 3 0 2 +3755 b3 3 0 5 +3755 c4 5 0 1 +3755 Bxc6 0 0 6 +3755 Nf3 2 0 3 +3758 d4 2 0 3 +3756 b3 4 0 7 +3757 b3 2 1 5 +3762 Bg2 3 0 5 +3763 Bg2 3 0 3 +3761 Bg2 4 0 6 +3764 b3 9 1 17 +3764 Nf3 3 0 6 +3764 d4 4 1 4 +3764 e3 3 0 4 +3766 Bg2 8 0 3 +3773 b3 3 1 2 +3773 e3 4 0 1 +3774 f3 3 1 2 +3772 b3 3 0 3 +3769 Nf3 10 0 11 +3769 b3 2 0 7 +3769 e3 3 0 4 +3769 d3 4 0 2 +3769 Nh3 0 0 6 +3771 b3 5 0 2 +3771 Nf3 4 0 1 +3770 b3 4 0 10 +3770 e3 5 1 6 +3770 d4 3 0 5 +3770 Nf3 1 0 5 +3770 d3 3 0 3 +3770 h4 1 1 3 +3767 b3 13 3 13 +3767 e3 12 1 13 +3767 d3 9 1 9 +3767 Nf3 8 0 7 +3767 d4 7 1 5 +3767 h4 2 0 4 +3767 c4 3 0 3 +3767 Nh3 0 0 6 +3767 f4 1 0 4 +3768 e3 12 1 4 +3768 b3 9 0 5 +3768 Nf3 5 0 5 +3768 d3 5 0 5 +3768 e4 1 1 4 +3768 d4 2 1 3 +3768 c3 3 0 2 +3768 c4 3 1 1 +3781 Bg2 7 1 1 +3782 Bg2 2 0 3 +3777 Bg2 8 0 6 +3777 d3 2 0 5 +3779 Bg2 4 0 9 +3778 Bg2 10 0 4 +3780 Bg2 7 0 2 +3783 Nf3 3 0 3 +3786 b3 6 0 2 +3784 b3 4 0 3 +3785 b3 3 0 2 +3789 Bg2 2 1 2 +3793 e3 6 0 9 +3793 b3 5 1 7 +3793 Nh3 0 0 5 +3792 b3 4 1 9 +3792 e3 4 1 3 +3792 Nf3 3 0 2 +3791 b3 6 2 9 +3791 e3 2 0 6 +3791 d3 3 0 5 +3791 Nf3 2 0 3 +3791 e4 2 0 3 +3796 b3 3 0 4 +3797 e3 3 1 2 +3790 e3 23 0 29 +3790 b3 20 0 22 +3790 d3 14 0 8 +3790 Nh3 5 1 14 +3790 Nf3 6 2 7 +3790 e4 6 0 8 +3790 d4 6 0 7 +3790 Nc3 2 0 5 +3790 c3 2 0 4 +3794 b3 7 0 3 +3794 e3 4 0 3 +3794 Nf3 2 0 3 +3795 b3 8 0 1 +3799 d4 13 0 6 +3800 Nd4 9 1 5 +3803 Qxd4 3 0 2 +3804 Nf3 3 0 4 +3809 e3 1 0 4 +3806 b3 13 2 31 +3806 e3 16 2 11 +3806 d4 4 1 6 +3806 d3 7 0 3 +3806 Nf3 7 0 3 +3806 c4 3 0 2 +3807 b3 5 0 6 +3814 Bg2 4 0 7 +3814 d3 3 1 2 +3815 c3 6 4 15 +3815 Nf3 6 2 2 +3815 d4 3 0 3 +3815 f4 3 0 3 +3815 d3 3 0 2 +3818 a3 15 1 21 +3818 h4 1 0 4 +3819 d4 0 0 8 +3820 a3 4 0 1 +3823 d4 26 0 21 +3824 a3 2 0 9 +3828 Nc3 0 0 6 +3831 Bg2 3 0 2 +3837 Nbd7 3 1 1 +3847 Qxd4 4 0 1 +3849 e4 3 0 2 +3851 e5 32 0 9 +3851 c5 6 1 6 +3853 Bf5 2 1 2 +3854 exf3 1 1 3 +3855 exd4 17 1 7 +3855 d6 4 0 2 +3856 Nf6 4 1 7 +3856 d6 3 1 1 +3856 Bb4 3 0 2 +3861 Nc6 16 0 24 +3863 Nc6 4 0 6 +3872 c5 4 0 1 +3874 d5 2 0 3 +3876 Nf6 3 0 8 +3876 Bc5 2 0 4 +3877 Kxf7 3 0 3 +3882 Nf6 2 0 4 +3881 dxc4 6 0 4 +3881 e6 5 0 3 +3881 Nf6 6 0 0 +3884 Nf6 5 0 2 +3888 exd4 2 0 4 +3894 e4 5 0 4 +3893 d5 3 0 6 +3893 Nf6 5 0 0 +3899 Bg7 3 0 5 +3900 Bg7 5 1 1 +3901 Bg7 4 0 1 +3902 c6 3 0 3 +3902 dxc4 2 0 3 +3908 Bg7 1 0 6 +3907 Bg7 5 0 5 +3909 e5 5 0 3 +3911 c6 4 0 4 +3911 e6 1 0 5 +3911 c5 1 0 4 +3913 d5 5 1 8 +3914 Bg7 22 1 22 +3917 e6 2 0 4 +3917 g6 3 0 3 +3922 e6 10 0 5 +3922 g6 8 0 3 +3922 e5 3 0 3 +3922 Nc6 4 0 1 +3923 cxd4 2 1 4 +3925 e5 3 0 3 +3925 g6 4 0 1 +3931 Nc6 10 0 11 +3931 g6 2 1 2 +3931 d6 1 0 4 +3932 dxc3 7 1 2 +3934 Qa5 4 0 1 +3935 cxd4 2 0 5 +3936 cxd4 3 0 4 +3937 g6 8 0 6 +3937 d6 7 0 4 +3937 d5 7 0 1 +3937 e6 3 0 4 +3937 Nf6 5 0 2 +3940 Nc6 4 0 4 +3940 e6 1 0 4 +3941 Nf6 5 0 3 +3942 d5 8 0 2 +3942 Nc6 5 0 0 +3943 Bg7 7 1 9 +3945 cxd5 3 1 1 +3948 Nf6 6 1 6 +3948 Bg4 2 0 4 +3948 e6 4 0 1 +3949 Bg4 1 0 4 +3954 Nf6 1 0 5 +3955 Nf6 3 0 2 +3957 Nf6 6 0 1 +3959 Nxd5 4 0 2 +3961 Nf6 2 1 3 +3960 e6 4 0 2 +3960 dxc4 4 0 1 +3964 c5 6 0 3 +3964 dxe3 3 0 2 +3967 Nc6 6 0 3 +3971 Nf6 6 0 0 +3978 Bxf3 3 0 4 +3975 Bxf3 5 0 1 +3981 Nf6 7 0 2 +3980 dxc4 7 2 3 +3980 e6 6 0 3 +3980 Nf6 5 0 0 +3979 Nf6 7 1 12 +3979 Bg4 4 2 5 +3979 Bf5 5 0 3 +3989 e6 2 0 3 +3987 e6 9 3 7 +3987 c6 7 1 3 +3987 dxc4 4 0 2 +3988 e6 3 1 3 +3988 Nc6 4 0 1 +3993 Nc6 3 0 2 +3992 e6 2 0 3 +3992 Nc6 1 0 4 +3999 c5 1 0 7 +3999 Nf6 2 0 4 +3997 Nf6 14 0 5 +3997 c6 13 0 2 +3997 dxc4 4 1 1 +3998 Nf6 7 0 4 +3998 c5 0 0 7 +4005 Bd7 1 0 5 +4004 e5 0 0 5 +4006 e6 4 1 1 +4010 Nf6 4 1 7 +4011 e6 3 1 2 +4011 Nf6 2 0 3 +4012 Bxf3 6 1 4 +4012 Nc6 3 0 5 +4012 e6 6 0 2 +4013 e5 17 1 31 +4013 Nf6 10 0 5 +4013 e6 6 0 2 +4015 e6 8 2 2 +4015 Bf5 5 0 6 +4015 c5 6 0 5 +4015 g6 5 0 6 +4015 c6 3 2 5 +4015 Nc6 1 0 5 +4016 Bb7 4 0 1 +4017 Nc6 28 2 40 +4017 Nf6 8 1 6 +4017 e6 4 1 3 +4018 Nd7 7 1 6 +4018 Nf6 6 0 1 +4020 Nf6 16 0 12 +4020 c5 4 1 3 +4020 f5 2 0 4 +4020 Bd6 2 0 3 +4021 Bg7 3 0 5 +4027 Bg7 4 0 1 +4028 exd4 2 1 2 +4030 g6 5 0 1 +4033 Bg7 5 1 5 +4035 Nc6 2 1 2 +4037 Nf6 1 0 6 +4038 Nf6 4 1 1 +4039 exd5 1 0 4 +4044 Nf6 6 1 3 +4044 c5 6 0 0 +4044 dxc4 4 0 1 +4045 Nf6 2 0 6 +4045 c5 2 0 3 +4051 exd5 4 0 2 +4053 Ng6 3 0 4 +4055 Bb7 4 0 7 +4057 Nf6 30 6 43 +4057 c5 7 2 9 +4057 Bd6 2 0 5 +4057 Nc6 2 0 5 +4057 c6 3 0 2 +4068 d6 3 0 5 +4069 Nf6 6 1 8 +4069 d6 9 0 5 +4069 d5 3 0 3 +4069 c6 4 0 2 +4071 Bg7 0 0 5 +4072 g6 6 1 0 +4073 cxd5 2 0 4 +4074 c5 5 0 0 +4074 Nf6 3 0 2 +4075 e5 2 1 5 +4076 Nc6 2 1 6 +4077 Qxd5 6 1 7 +4078 Nc6 0 0 5 +4079 Nf6 1 1 4 +4082 Qxd5 5 1 2 +4086 Nf6 4 0 5 +4086 Nc6 7 0 0 +4086 c5 5 0 1 +4087 e4 4 0 1 +4088 exd5 3 1 3 +4092 e6 3 0 2 +4097 Bg7 3 2 3 +4096 Bg7 2 1 7 +4101 e6 5 0 5 +4099 Nf6 10 0 6 +4099 e6 3 0 3 +4100 Nf6 8 0 1 +4100 e6 2 0 4 +4105 e5 3 0 3 +4115 e6 2 0 3 +4118 Nf6 3 0 2 +4117 e5 17 0 13 +4124 Nc6 4 1 5 +4125 Nc6 1 0 7 +4123 Nc6 9 1 10 +4126 Nc6 4 0 2 +4129 c5 6 0 4 +4133 Nf6 6 1 2 +4132 Nf6 4 0 3 +4131 Nf6 10 0 6 +4131 Nc6 7 0 0 +4134 Nf6 3 0 2 +4138 g6 3 0 3 +4151 d6 2 0 3 +4146 Bc5 4 2 4 +4146 f5 1 0 7 +4146 Nf6 3 0 3 +4149 d5 2 0 3 +4152 exd4 3 1 3 +4145 d5 37 3 39 +4145 Nf6 10 0 9 +4145 Bc5 8 0 7 +4145 d6 5 0 2 +4145 g6 3 0 2 +4148 Nf6 3 0 5 +4148 d5 3 1 1 +4147 d5 1 0 13 +4155 Nf6 7 2 8 +4155 Nc6 5 0 6 +4155 Be6 3 0 3 +4161 d5 5 0 1 +4162 d5 3 1 4 +4165 Be7 2 0 4 +4164 Be7 2 0 4 +4168 Nf6 6 0 2 +4167 Nf6 5 0 7 +4166 Nf6 6 0 13 +4166 c5 4 0 3 +4169 Nf6 4 1 6 +4177 exf6 4 0 5 +4184 Na5 3 0 4 +4184 Nb4 3 0 2 +4188 Nf6 9 1 4 +4188 Bxb4 3 0 3 +4192 Nf6 12 0 14 +4192 f6 3 0 11 +4192 Nc6 8 0 3 +4192 Qg5 3 0 2 +4193 Nd4 12 0 8 +4196 Nf6 1 0 5 +4200 Nf6 2 0 4 +4197 Nf6 6 0 4 +4199 Nf6 3 0 2 +4203 d5 4 1 3 +4207 axb5 2 2 4 +4208 d6 3 1 2 +4209 Bd6 7 0 5 +4212 d5 3 0 3 +4213 a6 0 1 5 +4213 d5 2 0 3 +4214 Nf6 1 0 5 +4217 e4 7 0 3 +4219 Nc6 0 0 7 +4218 d5 1 0 4 +4221 Nc6 0 2 4 +4220 Nc6 4 0 1 +4224 Nxd5 13 2 17 +4226 Nc6 3 0 3 +4233 c5 3 0 2 +4230 Bb4 3 0 3 +4230 d5 3 0 2 +4229 d5 7 0 3 +4229 Bb4 5 0 2 +4238 Bg7 3 1 2 +4237 Bg7 5 0 9 +4236 Bg7 14 1 4 +4235 d6 4 2 9 +4235 Bg7 2 1 4 +4234 Bg7 20 1 20 +4239 d5 3 0 2 +4240 Bg7 8 2 2 +4242 Bg7 8 0 13 +4244 Bb4 0 0 5 +4245 Bg7 4 0 5 +4246 Bg7 4 0 4 +4249 Bg7 5 0 4 +4251 e6 2 1 6 +4252 e6 5 0 1 +4250 g6 4 0 3 +4250 e6 0 1 4 +4256 e6 6 0 1 +4259 Nf6 7 0 6 +4259 g6 1 0 8 +4259 d6 2 0 3 +4260 g6 6 0 2 +4260 d6 6 0 2 +4258 g6 7 0 6 +4258 e6 5 0 4 +4258 d6 5 0 1 +4258 Nf6 3 0 2 +4258 e5 1 1 3 +4267 Bb7 1 1 3 +4266 Bb7 0 0 8 +4274 Nf6 2 0 8 +4278 Bg7 5 0 1 +4279 cxd4 9 0 8 +4281 cxd4 3 0 2 +4282 cxd4 3 0 2 +4288 Nc6 6 0 2 +4295 cxd5 12 1 19 +4297 cxd5 3 0 3 +4299 cxd5 2 0 3 +4301 e5 7 0 2 +4306 Nxd5 3 0 2 +4307 Qd8 49 2 33 +4307 Qa5 26 2 11 +4307 Qc6 14 0 3 +4307 Qe6 4 0 7 +4307 Qd6 7 0 2 +4307 Qf5 3 0 3 +4308 Nf6 6 0 2 +4312 Qxd4 2 0 3 +4313 e6 3 0 3 +4313 Nc6 2 1 2 +4314 g6 2 0 3 +4317 Nf6 6 0 1 +4326 Bc5 5 0 4 +4327 Bxc3 7 0 4 +4328 Bxc3 6 0 4 +4329 Bxc3 2 1 6 +4332 d6 9 2 4 +4332 Nc6 6 0 3 +4335 d6 0 0 8 +4336 Nf6 3 0 6 +4334 Nf6 1 1 3 +4334 d6 1 0 4 +4333 d6 4 0 3 +4333 Nf6 1 1 5 +4337 Nf6 12 0 10 +4337 Bc5 4 0 3 +4337 d6 2 0 3 +4340 Nf6 7 0 5 +4339 Nf6 7 1 6 +4339 Bc5 1 0 8 +4338 Nf6 8 1 6 +4338 Bc5 5 0 2 +4338 d6 3 0 2 +4346 Nc6 17 0 23 +4346 d6 6 0 1 +4343 Nc6 14 0 7 +4343 Bb4 8 2 7 +4343 Bc5 7 0 10 +4343 d5 9 0 6 +4343 d6 4 1 4 +4343 c6 3 0 5 +4343 Be7 2 0 6 +4347 d5 0 0 6 +4347 Bc5 2 0 3 +4347 Bb4 2 1 2 +4345 Bc5 6 2 10 +4345 Nc6 8 1 5 +4345 Bb4 10 2 2 +4345 c6 3 0 3 +4345 d6 3 0 2 +4345 Be7 3 0 2 +4344 d5 7 3 12 +4344 Bb4 9 0 5 +4344 Nc6 9 0 3 +4344 Bc5 4 0 5 +4344 d6 4 0 5 +4344 c6 4 1 4 +4351 Bc5 3 0 4 +4353 d6 2 2 3 +4353 Nc6 3 0 2 +4352 d6 4 1 1 +4355 d6 4 0 3 +4361 Nf6 9 1 1 +4361 Be6 4 1 3 +4361 Nc6 3 1 1 +4362 Nf6 3 1 2 +4362 Nc6 3 0 2 +4363 Nf6 4 0 1 +4360 Nf6 7 0 1 +4360 Nc6 3 0 2 +4365 Nf6 9 0 10 +4366 Nf6 13 0 1 +4373 d6 6 0 3 +4375 Nc6 12 0 8 +4375 d6 2 1 4 +4377 d6 1 1 3 +4377 Nc6 3 0 2 +4383 Nc6 2 0 3 +4382 Nc6 3 0 3 +4388 Nc6 11 0 12 +4390 Ba5 4 0 1 +4392 Nf6 6 1 5 +4392 Bc5 4 0 2 +4394 d5 5 0 4 +4394 Be7 3 0 2 +4396 exd4 0 0 5 +4400 Nf6 2 0 4 +4401 c6 2 0 5 +4401 Bb4 3 1 2 +4404 d6 4 0 3 +4405 Bc5 4 0 1 +4406 d5 3 0 3 +4407 Nf6 1 0 4 +4408 Nf6 2 0 3 +4411 Ng6 6 0 1 +4412 d5 2 0 6 +4417 Bb7 3 0 2 +4418 Nc6 4 0 2 +4423 exd5 36 1 27 +4425 Nf6 2 0 4 +4424 Nf6 5 1 8 +4424 dxc4 2 0 3 +4426 Nf6 3 0 4 +4430 Nf6 3 0 3 +4431 Be7 2 0 3 +4432 exd5 7 0 6 +4433 exd5 3 0 2 +4435 exd5 5 0 1 +4437 Nf6 1 0 4 +4440 d5 2 0 4 +4441 Nf6 3 0 2 +4442 Nf6 1 0 4 +4445 Nf6 8 2 2 +4445 c6 3 0 3 +4446 exd5 1 2 2 +4452 d6 6 0 6 +4452 e6 6 1 4 +4452 Nf6 2 0 6 +4452 b6 5 0 1 +4454 d6 3 1 2 +4454 e6 4 0 2 +4453 Nf6 4 0 3 +4458 Nf6 4 0 5 +4466 Nf6 3 0 2 +4467 g6 3 1 3 +4469 Nc6 0 0 5 +4471 Nf6 3 0 4 +4471 c5 3 1 2 +4473 Nc6 2 0 4 +4470 f5 6 1 3 +4470 Nf6 4 0 2 +4470 c5 2 0 3 +4478 Nf6 7 1 1 +4480 Qxd1 7 3 11 +4481 exd5 2 1 2 +4483 Nf6 1 0 6 +4485 d5 1 1 3 +4486 Nc6 2 1 4 +4489 Nc6 3 0 2 +4490 c5 3 0 3 +4494 Nf6 1 0 4 +4496 Qxd5 4 0 5 +4503 Nf6 6 0 7 +4507 exd5 1 0 8 +4519 e5 2 0 3 +4522 Qxd5 3 0 2 +4523 Nce7 3 0 13 +4523 Nd4 4 0 1 +4525 Na6 7 0 1 +4527 e6 6 0 5 +4527 Nf6 5 0 1 +4528 Ng6 5 0 2 +4533 Nce7 1 2 3 +4534 e6 4 0 2 +4534 Bf5 2 0 3 +4537 g6 1 0 5 +4536 g6 4 1 6 +4540 Bb4 3 0 3 +4540 d5 2 0 4 +4539 d5 11 1 8 +4539 c5 4 0 5 +4545 Bg7 1 0 4 +4544 Bg7 3 0 6 +4546 Bg7 1 0 5 +4543 Bg7 9 2 16 +4547 d5 0 0 7 +4548 g5 5 0 2 +4550 gxf6 5 1 4 +4551 exf6 9 0 8 +4552 e6 2 0 4 +4554 Qxf6 7 1 19 +4556 d5 3 0 4 +4555 Be7 6 1 3 +4555 h6 1 0 5 +4559 exf6 9 2 15 +4560 Bg7 5 0 4 +4561 exf6 4 0 6 +4562 d6 8 0 3 +4562 d5 3 0 2 +4564 c6 7 0 6 +4564 e6 9 0 4 +4564 Bf5 7 0 4 +4564 Nc6 5 0 1 +4566 h6 1 1 3 +4566 e6 2 0 3 +4565 e6 3 0 7 +4565 Nc6 3 0 2 +4565 g6 2 0 3 +4565 c6 2 0 3 +4567 dxe4 2 0 9 +4573 Ng4 2 0 3 +4575 d5 4 2 4 +4575 b6 5 0 3 +4575 c5 4 0 1 +4574 Bb4 14 2 12 +4574 d5 3 1 3 +4580 Bg7 15 0 3 +4581 Bg7 2 0 3 +4579 d6 4 0 19 +4579 Bg7 12 0 2 +4584 Bb7 1 1 3 +4589 cxd4 1 2 2 +4588 d6 1 0 5 +4586 cxd4 5 0 3 +4587 cxd4 5 1 8 +4596 Nc6 3 0 2 +4595 e6 5 0 2 +4595 Ne4 2 0 3 +4594 e6 3 1 7 +4594 Bf5 3 0 2 +4592 e6 6 0 7 +4592 dxc4 5 0 2 +4592 c6 3 0 4 +4591 e6 10 0 10 +4591 Bg4 3 1 12 +4591 Bf5 7 1 6 +4591 c6 5 0 5 +4593 Bf5 4 0 1 +4598 g6 6 1 5 +4599 g6 2 1 4 +4600 g6 3 0 3 +4605 d5 4 0 7 +4605 c5 3 0 4 +4605 Bb4 2 0 3 +4605 b6 2 2 1 +4606 Be7 5 1 3 +4606 d5 4 0 4 +4608 d5 2 0 5 +4607 d5 3 0 5 +4607 b6 2 0 3 +4603 b6 3 0 13 +4603 d5 5 1 9 +4603 Bb4 6 1 6 +4603 c5 5 2 6 +4602 d5 17 2 21 +4602 b6 12 1 13 +4602 c5 8 1 15 +4602 Bb4 3 1 3 +4604 d5 8 1 11 +4604 c5 4 0 4 +4604 b6 1 0 5 +4612 Bg7 34 0 17 +4615 Bg7 13 0 10 +4614 Bg7 9 0 9 +4614 d5 1 0 6 +4617 Bg7 5 1 1 +4616 Bg7 6 1 6 +4610 Bg7 21 5 50 +4610 d5 2 0 4 +4611 Bg7 26 2 29 +4611 d5 1 0 5 +4613 Bg7 20 1 27 +4620 Bf5 3 0 2 +4622 d5 4 0 6 +4625 Bg7 3 0 3 +4624 Bg7 6 0 2 +4626 Bg7 3 1 2 +4629 Bg7 1 0 8 +4630 Bg7 2 1 2 +4631 e6 2 0 3 +4635 Bb7 5 0 3 +4637 cxd4 18 2 30 +4637 g6 3 1 4 +4637 b5 1 0 4 +4639 cxd4 4 1 14 +4636 b5 40 5 46 +4636 e5 6 2 16 +4636 e6 11 0 6 +4636 d6 8 0 9 +4636 g6 5 1 5 +4640 e6 1 0 5 +4638 cxd4 6 1 9 +4638 g6 3 0 3 +4638 e6 3 0 2 +4641 d5 6 1 5 +4642 d5 5 0 1 +4643 dxc4 24 2 10 +4643 e6 20 1 6 +4643 c6 5 0 3 +4643 Bf5 2 1 4 +4646 dxc4 3 1 8 +4647 Nc6 3 1 1 +4644 Nxd5 20 0 6 +4644 Qxd5 8 1 5 +4645 e6 5 0 5 +4645 dxc4 4 0 2 +4649 g6 35 2 43 +4649 Nbd7 6 1 8 +4649 e6 3 0 2 +4650 g6 5 1 10 +4657 exd4 2 0 4 +4654 exd4 9 0 14 +4656 exd4 0 0 5 +4653 Bc5 14 2 34 +4653 Bb4 5 0 5 +4652 Ng4 48 3 50 +4652 Ne4 20 0 10 +4655 exd4 3 0 5 +4655 Bb4 4 0 1 +4663 Be7 7 0 9 +4658 Bb4 148 15 164 +4658 d5 85 5 63 +4658 c5 34 4 29 +4658 b6 29 1 16 +4658 g6 4 0 4 +4658 Be7 7 0 0 +4658 d6 3 0 2 +4659 d5 18 4 31 +4659 b6 18 2 29 +4659 Bb4 15 2 23 +4659 c5 7 1 15 +4659 Be7 4 0 2 +4660 d5 15 1 19 +4660 c5 3 0 7 +4660 b6 5 1 3 +4660 Be7 2 0 3 +4661 Bb4 4 0 8 +4661 d5 5 1 4 +4661 b6 2 0 5 +4661 c5 1 0 4 +4662 d5 8 1 4 +4662 Bb4 10 0 2 +4662 c5 8 0 1 +4671 Bg7 4 1 7 +4667 Bg7 240 14 231 +4667 d5 98 13 140 +4667 d6 10 0 7 +4668 Bg7 30 5 36 +4668 d5 7 2 9 +4670 Bg7 12 2 10 +4669 Bg7 8 0 19 +4672 Bg7 4 0 3 +4673 cxd5 2 0 10 +4675 fxe6 2 0 4 +4677 Bb7 0 0 5 +4678 cxd4 2 0 3 +4681 e6 4 0 5 +4681 Nc6 3 0 4 +4680 e6 6 0 7 +4680 Bg4 6 0 4 +4680 Bf5 0 1 7 +4682 e6 3 0 6 +4683 Bf5 2 0 3 +4686 g6 1 1 3 +4685 g6 3 0 3 +4688 d5 8 1 5 +4688 c5 5 2 7 +4687 d5 5 0 13 +4687 c5 7 1 5 +4687 b6 5 0 8 +4692 c5 0 0 6 +4689 c5 6 0 7 +4690 d5 3 0 2 +4695 Bg7 12 2 13 +4701 Bg7 0 0 5 +4694 Bg7 20 2 40 +4698 Bg7 3 1 4 +4696 Bg7 10 0 14 +4697 Bg7 7 1 7 +4699 Bg7 2 1 5 +4705 dxe4 2 0 4 +4703 e6 2 0 3 +4708 d5 2 1 4 +4709 Bg7 2 0 11 +4709 d6 4 0 6 +4710 Bg7 5 0 4 +4711 Bf5 11 0 0 +4712 g6 2 0 3 +4713 c5 6 0 0 +4714 Bg7 3 0 3 +4715 cxd4 2 0 3 +4716 e6 3 0 5 +4717 g6 1 0 6 +4718 d5 7 0 9 +4718 c5 0 0 7 +4719 Bg7 13 1 14 +4720 Bf5 3 0 2 +4722 Bg7 3 0 7 +4723 Bb7 5 0 1 +4725 c6 6 0 4 +4726 a6 4 0 2 +4726 b4 1 0 5 +4729 b4 2 0 7 +4729 a6 6 0 1 +4733 Bxe4 2 0 4 +4732 a6 3 0 2 +4730 a6 7 0 4 +4730 b4 2 0 4 +4736 e6 6 1 7 +4735 e6 4 1 8 +4735 g6 3 0 6 +4739 h6 4 0 1 +4741 g6 10 3 4 +4741 e6 7 0 2 +4741 d6 8 1 0 +4748 e6 4 0 1 +4748 g6 2 0 3 +4745 e6 6 0 1 +4746 e6 2 0 4 +4746 Bxf3 2 0 4 +4750 g6 3 0 2 +4747 e6 4 0 3 +4743 e6 11 0 12 +4743 g6 4 1 4 +4743 Bxf3 4 1 1 +4743 h6 4 0 1 +4744 g6 8 1 2 +4756 e6 50 3 41 +4756 g6 59 2 23 +4756 Nf6 6 0 9 +4756 d6 6 0 5 +4756 c6 4 0 3 +4756 c5 3 0 2 +4756 d5 5 0 0 +4757 e6 5 2 13 +4757 g6 8 0 8 +4758 e6 3 0 11 +4758 g6 3 1 3 +4759 g6 5 0 6 +4759 e6 1 1 9 +4762 g6 3 0 2 +4763 e6 11 0 16 +4763 g6 15 0 10 +4763 Nf6 4 0 2 +4768 g6 2 1 2 +4765 g6 7 2 5 +4765 e6 2 1 2 +4764 g6 14 0 9 +4764 e6 8 0 10 +4766 g6 2 0 4 +4766 e6 4 0 1 +4771 e6 9 0 8 +4771 g6 12 0 4 +4772 g6 5 0 9 +4772 e6 5 0 3 +4770 e6 9 0 17 +4770 g6 12 1 11 +4770 c6 3 0 2 +4773 g6 8 0 1 +4773 e6 2 0 5 +4775 e6 4 0 13 +4775 g6 6 2 6 +4776 e6 1 0 4 +4780 Rxb8 9 1 13 +4781 Nc6 2 0 4 +4783 Nc6 4 2 5 +4786 Nc6 21 1 19 +4786 e5 11 0 5 +4786 g6 7 0 6 +4786 d5 1 0 7 +4786 e6 6 0 1 +4786 Nf6 2 1 2 +4787 Nc6 6 0 10 +4789 Nf6 5 0 4 +4790 exd5 0 0 5 +4792 Nc6 3 0 4 +4793 g6 7 0 9 +4793 d5 5 1 6 +4793 d6 2 0 4 +4793 Nf6 2 0 3 +4797 Nc6 14 1 7 +4796 Nc6 41 2 46 +4796 e6 3 0 3 +4798 dxe3 4 0 1 +4799 Nf6 7 0 1 +4799 d6 5 0 0 +4800 e6 9 0 7 +4800 d6 5 0 6 +4800 e5 1 0 4 +4805 e6 32 3 14 +4805 e5 19 1 16 +4805 Nf6 14 1 6 +4805 g6 9 1 10 +4806 e6 12 2 5 +4806 Nf6 6 1 5 +4806 g6 9 0 1 +4806 e5 4 0 4 +4806 a6 2 0 3 +4809 f5 11 1 3 +4809 d6 10 0 5 +4811 fxe6 12 0 6 +4810 d6 8 0 11 +4812 exd5 17 1 14 +4812 b5 4 0 10 +4812 Nf6 9 0 5 +4813 fxe6 19 0 16 +4814 exd5 4 0 1 +4816 e6 1 1 3 +4819 Qxc5 15 1 11 +4818 Qxc5 34 1 14 +4821 Qxc5 3 0 4 +4820 Qxc5 9 1 8 +4822 Nc6 3 0 4 +4824 Nc6 1 0 5 +4823 Nc6 4 0 2 +4823 a5 1 1 3 +4827 Nf6 7 1 1 +4827 Nc6 2 1 2 +4830 Bxc5 1 2 5 +4828 Bxc5 8 1 8 +4826 a5 7 1 15 +4826 Nc6 4 1 4 +4831 Bxc5 3 0 3 +4829 Bxc5 5 0 5 +4834 Nc6 11 1 17 +4834 a6 4 0 1 +4833 d5 19 0 22 +4833 g6 5 1 12 +4833 Nf6 6 2 5 +4833 Nc6 6 1 6 +4833 d6 4 0 3 +4837 Nf6 1 0 4 +4837 d5 2 0 3 +4836 Nf6 1 0 6 +4839 Nc6 1 0 8 +4840 Nc6 3 1 13 +4841 Nc6 2 0 3 +4842 Rxb8 5 0 9 +4843 Bf5 2 1 3 +4844 Nd7 4 0 1 +4848 dxe4 4 0 1 +4854 Bg4 2 0 3 +4851 Nf6 4 0 3 +4849 Nf6 10 1 9 +4849 Bg4 8 0 6 +4849 Bf5 1 0 4 +4850 Nf6 6 0 2 +4855 e6 5 0 1 +4856 Nf6 42 3 30 +4856 dxc4 32 1 15 +4856 e6 28 0 18 +4856 Bf5 8 0 4 +4860 Nf6 3 0 4 +4860 dxc4 2 0 3 +4859 Bf5 6 0 5 +4859 Nf6 0 2 3 +4859 b6 3 0 2 +4857 cxd5 23 0 22 +4858 Nf6 5 1 10 +4858 Bf5 6 0 8 +4858 e6 6 0 2 +4858 dxc4 4 0 2 +4861 Nf6 4 2 4 +4861 g6 4 1 2 +4862 d5 5 0 3 +4863 g6 2 0 3 +4864 Bg7 1 0 4 +4865 Nf6 7 0 9 +4865 Bg4 2 0 4 +4865 Nd7 2 0 4 +4865 Bf5 2 1 3 +4866 Nf6 7 2 6 +4866 e6 0 1 5 +4866 Bf5 3 0 2 +4866 dxc4 5 0 0 +4867 Nf6 5 0 3 +4873 dxe4 4 0 3 +4871 Bf5 17 1 16 +4871 e6 12 0 4 +4871 f6 10 1 5 +4872 cxd5 4 0 15 +4876 dxe4 3 0 5 +4878 Nf6 2 0 5 +4878 Bf5 3 0 3 +4882 e6 16 0 17 +4882 Nf6 6 1 3 +4882 Nc6 5 0 4 +4882 c6 3 0 3 +4883 Nf6 1 0 6 +4883 e6 3 0 4 +4881 e6 19 1 14 +4881 Nf6 6 0 7 +4881 Nc6 8 0 5 +4881 c6 4 1 1 +4881 a6 2 0 3 +4886 Nf6 23 1 8 +4886 a6 13 0 10 +4886 e6 6 4 7 +4886 Bf5 10 0 6 +4886 f6 5 0 3 +4886 Nxd4 5 0 1 +4887 Nf6 9 0 4 +4887 f6 5 1 3 +4887 Bf5 7 0 2 +4885 Nf6 31 2 21 +4885 Bf5 19 1 16 +4885 e6 15 0 7 +4885 a6 10 1 8 +4885 f6 4 2 8 +4889 e6 21 1 22 +4889 a6 19 0 13 +4889 Nc6 12 0 5 +4889 c6 9 0 8 +4889 Bf5 5 0 10 +4890 e6 5 1 9 +4890 Nc6 9 0 0 +4888 e6 31 2 22 +4888 Bf5 10 1 12 +4888 Nc6 10 1 12 +4888 g6 4 0 6 +4888 c6 3 1 4 +4888 c5 2 0 3 +4896 cxd4 0 1 5 +4894 Nc6 4 0 4 +4894 e6 2 1 4 +4894 Qa5 2 1 4 +4895 e6 3 0 2 +4902 Rxb8 4 0 1 +4899 Nf6 4 1 4 +4899 e6 2 1 4 +4899 Bf5 2 0 3 +4898 Nf6 3 0 5 +4898 e6 2 0 6 +4898 Bf5 4 0 2 +4903 a6 15 0 16 +4903 Bd6 10 1 14 +4903 c5 7 0 16 +4903 Nf6 7 1 4 +4903 Bb4 4 1 2 +4903 f5 3 0 3 +4903 Nc6 5 0 1 +4905 Bd6 3 0 6 +4905 Nf6 6 0 2 +4905 c5 2 1 5 +4906 Nf6 9 1 3 +4906 Bd6 9 0 3 +4904 Nf6 25 1 18 +4904 Bd6 18 0 10 +4904 c5 6 1 9 +4904 a6 4 0 2 +4904 c6 4 0 1 +4913 Bg7 3 0 3 +4917 f6 5 0 2 +4918 exf6 7 1 7 +4921 Kxd8 10 0 2 +4923 Nc6 2 0 3 +4922 g5 11 1 6 +4922 e6 5 0 5 +4924 g5 9 0 7 +4924 Nf6 3 0 5 +4924 Nc6 3 0 2 +4926 e6 17 0 4 +4926 a6 17 0 2 +4928 e6 2 0 4 +4931 Nf6 20 0 4 +4931 Bf5 16 1 6 +4931 e6 15 0 2 +4931 a6 6 1 3 +4931 f6 5 0 2 +4931 e5 5 0 1 +4932 Nf6 7 0 5 +4932 Bg4 6 0 1 +4934 Bf5 3 1 1 +4933 dxe4 3 2 8 +4936 e6 52 0 16 +4936 a6 39 1 16 +4936 Nc6 46 1 9 +4936 Bf5 29 1 4 +4936 c6 12 0 6 +4936 h6 9 0 2 +4936 g6 4 0 3 +4936 Bd7 2 0 3 +4938 e6 13 2 6 +4938 h6 6 0 2 +4938 Nc6 3 0 2 +4937 Nc6 14 2 8 +4937 Bf5 10 1 12 +4937 e6 6 1 13 +4937 Bg4 7 1 6 +4941 Bf5 2 0 4 +4941 Nc6 1 0 4 +4941 e6 2 0 3 +4943 dxe4 3 1 5 +4939 Nc6 4 0 10 +4939 Bf5 4 0 4 +4939 e6 1 0 4 +4940 e6 10 0 3 +4940 Nc6 3 0 4 +4942 Nc6 2 0 3 +4946 cxd4 5 1 1 +4946 Nc6 3 0 2 +4950 Nf6 2 0 4 +4950 Bf5 4 0 1 +4949 Nf6 2 0 5 +4949 e6 5 0 2 +4948 e6 24 1 12 +4948 dxe4 27 1 7 +4948 Nf6 9 0 4 +4948 e5 5 0 0 +4957 Nf6 3 0 7 +4957 Bd6 6 0 1 +4957 Bb4 4 0 2 +4957 a6 4 0 2 +4956 Nf6 7 2 13 +4956 c5 8 1 5 +4956 Bb4 3 0 5 +4956 Nc6 3 0 3 +4954 Nf6 68 1 16 +4954 Nc6 26 2 8 +4954 c5 28 0 6 +4954 a6 11 0 6 +4954 Bd6 14 0 1 +4954 h6 11 0 3 +4954 c6 12 0 1 +4954 g6 8 0 3 +4954 f5 5 0 0 +4959 Nf6 5 0 3 +4955 dxe4 8 1 15 +4955 Bb4 6 0 5 +4955 c6 8 1 0 +4955 Nf6 4 0 3 +4955 c5 2 1 3 +4958 Nf6 6 1 6 +4963 Bg7 7 1 2 +4963 c6 6 0 1 +4965 e6 15 1 25 +4965 Nc6 5 1 9 +4965 Nf6 3 0 2 +4968 e6 9 0 6 +4968 Nf6 3 0 2 +4966 e6 8 0 4 +4966 c6 4 0 4 +4966 dxc4 4 0 4 +4964 e6 22 2 21 +4964 Nc6 10 0 6 +4964 Nf6 8 2 4 +4964 c6 2 1 2 +4967 e6 4 0 12 +4967 Nf6 6 0 3 +4974 Bxf3 10 0 3 +4974 Nf6 3 0 5 +4977 e6 3 1 2 +4976 Bxf3 4 1 4 +4972 Bf5 14 0 4 +4972 Bh5 10 0 7 +4978 Bxf3 2 1 2 +4971 Bxf3 11 0 12 +4971 e6 15 0 6 +4971 Nf6 13 1 7 +4971 Nc6 4 1 9 +4971 e5 1 1 3 +4973 Bxf3 7 0 8 +4973 e6 3 0 2 +4975 Bxf3 13 0 4 +4981 Nf6 16 1 15 +4981 Bf5 15 1 8 +4981 Bg4 9 2 9 +4981 f6 7 0 2 +4981 e6 5 0 4 +4986 f6 5 0 2 +4984 Nf6 16 0 14 +4984 Bf5 5 2 4 +4984 e6 3 0 6 +4984 Bg4 3 0 3 +4985 Nf6 5 0 6 +4985 Bf5 7 0 4 +4985 Bg4 1 0 5 +4983 dxc4 22 2 15 +4983 e6 9 1 11 +4983 Nf6 3 0 5 +4983 Bg4 4 0 1 +4980 Nf6 46 3 28 +4980 Bg4 29 2 23 +4980 Bf5 26 0 14 +4980 e6 17 3 5 +4980 a6 9 1 6 +4980 f6 9 0 5 +4980 e5 4 0 3 +4982 Nf6 23 0 9 +4982 Bg4 13 0 4 +4982 Bf5 5 2 6 +4982 e6 5 0 2 +4991 e6 17 1 10 +4991 Nc6 12 1 8 +4991 Bf5 10 1 9 +4991 Bg4 4 1 6 +4991 c5 5 1 2 +4991 g6 3 0 2 +4993 e6 12 0 12 +4993 Bg4 6 0 4 +4993 Nc6 4 0 4 +4993 Ne4 1 1 4 +4993 Bf5 3 1 1 +4992 e6 10 0 13 +4992 Nc6 7 2 8 +4992 Bf5 4 1 7 +4992 Bg4 3 1 2 +4994 e6 5 1 3 +4994 Bf5 4 0 2 +4989 e6 25 0 20 +4989 c6 13 1 15 +4989 dxc4 11 4 13 +4989 Bf5 6 0 2 +4988 e6 37 1 23 +4988 Bg4 18 1 19 +4988 Bf5 19 2 13 +4988 Nc6 23 1 9 +4988 g6 9 3 10 +4988 c6 5 0 6 +4988 c5 2 0 7 +4990 e6 27 2 19 +4990 Bf5 10 0 7 +4990 g6 7 3 6 +4990 Bg4 3 0 9 +4990 Nc6 4 0 3 +4990 c5 3 0 3 +4990 c6 2 0 4 +4995 e6 2 0 3 +5003 Nc6 7 0 3 +5002 Nc6 5 0 3 +5002 e6 5 0 2 +5002 cxd4 4 1 1 +5004 dxc4 4 0 3 +5004 cxd4 4 0 1 +5001 Nc6 7 1 11 +5001 e6 6 1 3 +5001 Qa5 1 1 3 +5000 Nc6 9 0 11 +5000 e6 8 0 4 +5000 cxd4 4 2 4 +5007 Nf6 12 1 7 +5007 Bg4 7 1 3 +5007 e6 4 1 3 +5007 Bf5 5 0 1 +5010 f6 6 0 0 +5008 Nf6 10 1 7 +5008 e6 8 0 3 +5008 dxc4 5 0 2 +5008 Bf5 1 1 3 +5006 e6 11 1 12 +5006 Nf6 13 0 9 +5006 Bg4 11 0 10 +5006 Bf5 4 2 5 +5009 Nf6 4 1 7 +5009 e6 4 0 2 +5009 Bg4 3 0 2 +5016 Nf6 25 5 22 +5016 c5 13 2 12 +5016 Bd6 11 1 1 +5016 Nc6 5 0 6 +5020 Be7 15 1 8 +5020 Nf6 7 1 1 +5020 f6 6 0 2 +5019 Nf6 9 1 15 +5019 c5 6 0 6 +5019 Bb4 3 0 4 +5019 Bd6 3 0 2 +5021 Nf6 7 2 5 +5021 c5 2 1 3 +5018 Nf6 19 0 14 +5018 c6 10 3 6 +5018 dxc4 12 1 5 +5018 c5 11 0 5 +5018 Bd6 3 0 2 +5015 Nf6 59 3 41 +5015 c5 33 3 35 +5015 Nc6 15 0 3 +5015 a6 10 0 5 +5015 f5 6 0 6 +5015 c6 5 0 5 +5015 Bd6 5 0 5 +5015 Be7 7 0 1 +5015 h6 5 0 2 +5015 b6 3 0 2 +5017 Nf6 28 3 14 +5017 c5 14 0 10 +5017 Nc6 7 0 4 +5017 f5 6 0 3 +5017 f6 4 0 2 +5035 Bg7 4 1 2 +5034 Bg7 3 0 2 +5034 dxc4 3 0 2 +5033 Bg7 6 3 8 +5036 Bg7 4 1 3 +5041 Nf6 4 0 1 +5039 Nf6 5 0 4 +5040 Nf6 6 0 1 +5044 dxe4 2 0 3 +5046 c6 2 0 3 +5049 dxe4 3 0 5 +5051 e6 2 0 5 +5050 e6 3 0 4 +5052 Nf6 5 0 5 +5052 Bg4 6 0 3 +5053 Nf6 9 0 4 +5053 Bf5 4 0 1 +5053 e5 1 0 4 +5054 e6 6 0 5 +5056 cxd4 5 1 1 +5059 Nf6 6 0 7 +5059 c5 2 1 6 +5059 Nc6 3 0 2 +5060 Nf6 7 0 1 +5060 c5 3 0 3 +5061 Nf6 3 0 2 +5065 Nf6 7 0 4 +5070 Bg4 4 0 3 +5069 e5 4 0 4 +5074 e6 3 0 2 +5073 Bf5 2 0 3 +5073 Nc6 3 0 2 +5072 Nc6 3 0 4 +5072 e6 2 0 4 +5083 Nf6 5 1 8 +5083 c5 8 0 5 +5083 f5 3 1 3 +5084 c5 1 0 5 +5084 Nf6 1 0 5 +5088 dxc4 5 0 1 +5087 Bxd5 10 0 2 +5090 e6 51 11 44 +5090 dxc4 57 1 19 +5090 Nf6 6 0 7 +5090 c6 3 0 2 +5093 e6 3 0 3 +5093 Bxb1 3 0 2 +5094 dxc4 2 1 2 +5091 Qxd5 13 0 7 +5091 Bxb1 7 1 5 +5092 e6 4 0 5 +5092 Bxb1 2 0 5 +5096 Nf6 1 0 4 +5097 dxc4 22 2 12 +5097 Nf6 5 1 3 +5097 Bf5 6 0 0 +5097 e6 6 0 0 +5100 Bg4 2 0 6 +5100 Bf5 4 0 2 +5100 dxc4 3 0 2 +5099 Qxd5 20 0 11 +5098 Bf5 10 0 1 +5098 e5 5 0 4 +5098 Nf6 4 0 2 +5098 e6 2 0 4 +5098 dxc4 4 0 1 +5105 e6 8 1 3 +5105 Ne4 5 1 2 +5105 dxc4 2 0 3 +5101 e6 124 7 63 +5101 c6 51 1 32 +5101 dxc4 55 0 26 +5101 Nc6 18 1 2 +5101 Bf5 10 0 11 +5101 g6 9 1 11 +5101 Bg4 9 0 5 +5101 a6 2 0 4 +5104 e6 18 0 16 +5104 Nc6 10 2 8 +5104 c6 4 1 7 +5104 dxc4 7 0 5 +5104 g6 5 0 4 +5104 Bg4 3 0 3 +5104 a6 4 0 1 +5106 Nc6 4 0 3 +5102 Nxd5 76 4 35 +5102 Qxd5 11 0 8 +5103 e6 24 2 28 +5103 c6 5 0 7 +5103 Bf5 4 1 5 +5103 Bg4 3 0 5 +5103 Nc6 3 0 3 +5110 Qxd5 10 1 5 +5114 cxd4 10 0 4 +5114 dxc4 9 0 3 +5114 e6 4 0 3 +5112 Qxd5 15 1 11 +5112 cxd4 13 0 2 +5112 c4 4 0 2 +5113 Qa5 10 0 2 +5113 e6 3 2 5 +5113 d4 3 0 5 +5113 dxc4 5 0 1 +5113 e5 1 1 3 +5115 cxd4 4 1 3 +5122 Nf6 5 2 5 +5117 Nf6 208 20 162 +5117 e6 134 7 86 +5117 dxc4 43 4 36 +5117 Bf5 25 2 20 +5117 a6 7 0 5 +5117 e5 6 0 4 +5117 g6 3 0 5 +5118 Nf6 74 4 67 +5118 e6 30 3 18 +5118 dxc4 13 1 9 +5118 Bg4 9 0 8 +5118 Bf5 8 0 6 +5121 Nf6 4 2 5 +5121 Bf5 5 1 4 +5121 b6 5 0 3 +5121 e5 2 1 2 +5120 cxd5 72 7 49 +5120 Qxd5 5 2 5 +5120 Nf6 3 0 2 +5119 Nf6 51 6 45 +5119 e6 30 2 28 +5119 Bf5 21 0 24 +5119 dxc4 5 0 3 +5119 g6 3 0 3 +5119 Nd7 4 0 1 +5123 Nf6 3 1 3 +5126 e6 161 5 67 +5126 Nf6 121 11 67 +5126 Nc6 97 6 28 +5126 c6 71 2 36 +5126 a6 37 5 39 +5126 Bf5 31 0 11 +5126 e5 18 2 16 +5126 Be6 21 2 4 +5126 b5 21 1 4 +5126 g6 13 0 6 +5126 c5 12 1 5 +5126 Bd7 10 0 6 +5126 b6 6 0 3 +5126 Nd7 3 0 2 +5129 Nf6 25 4 12 +5129 e6 16 0 14 +5129 b5 16 2 10 +5129 Bg4 15 1 6 +5129 Nc6 16 1 3 +5129 Bf5 7 0 7 +5129 c6 7 1 4 +5129 Be6 5 1 2 +5129 a6 3 1 1 +5130 Bd7 17 1 25 +5130 Nc6 19 3 16 +5130 c6 16 0 8 +5132 Nf6 4 0 1 +5127 b5 159 2 60 +5127 Nf6 70 2 35 +5127 e6 59 4 41 +5127 Be6 30 0 23 +5127 Bf5 32 0 16 +5127 Nc6 14 2 11 +5127 e5 14 2 9 +5127 Qd5 16 0 5 +5127 c5 7 0 4 +5127 c3 8 0 1 +5127 c6 6 0 3 +5127 g6 5 0 2 +5127 a6 6 0 1 +5128 e6 81 7 37 +5128 b5 58 3 50 +5128 e5 32 1 19 +5128 Nf6 28 0 19 +5128 Nc6 15 1 10 +5128 c5 11 0 7 +5128 Be6 3 0 3 +5128 g6 4 0 2 +5128 c6 3 0 2 +5128 a6 1 0 4 +5134 dxc4 17 0 10 +5134 exd4 15 3 6 +5134 Nc6 4 0 1 +5137 e4 3 1 2 +5136 Qxd5 12 1 16 +5133 d4 61 4 63 +5133 dxc4 8 0 3 +5133 Be6 4 0 3 +5135 exd4 10 1 12 +5135 dxc4 3 1 4 +5135 Nc6 3 0 5 +5135 e4 1 1 4 +5144 Nf6 2 0 6 +5138 Nf6 421 30 268 +5138 c6 123 7 66 +5138 Bb4 97 8 62 +5138 dxc4 82 2 48 +5138 c5 38 1 32 +5138 f5 15 3 19 +5138 Be7 9 0 9 +5138 Nc6 8 1 4 +5138 a6 4 1 3 +5138 h6 5 0 1 +5138 b6 4 0 1 +5139 Nf6 96 9 78 +5139 c6 20 1 12 +5139 c5 8 2 16 +5139 dxc4 17 1 6 +5139 Bb4 7 2 5 +5139 Nc6 5 0 8 +5139 Be7 6 1 1 +5139 b6 4 0 1 +5139 a6 4 0 1 +5139 f5 0 0 5 +5142 Nf6 22 1 30 +5142 c5 14 1 0 +5142 dxc4 4 0 6 +5142 c6 4 0 5 +5143 b6 10 0 14 +5143 Nf6 6 2 10 +5143 c6 9 1 3 +5143 Nc6 3 0 5 +5141 exd5 51 3 51 +5141 Qxd5 28 1 11 +5141 Nf6 3 0 3 +5140 Nf6 89 4 72 +5140 c6 19 1 10 +5140 c5 15 2 9 +5140 dxc4 15 2 5 +5140 Bb4 13 0 7 +5140 Nc6 6 0 5 +5140 f5 2 0 4 +5146 dxe4 1 0 4 +5145 Nf6 4 0 1 +5147 Nf6 5 0 4 +5149 Nf6 4 0 4 +5149 Bg7 2 0 4 +5150 Bg7 4 0 5 +5152 Nf6 8 0 5 +5153 Nf6 2 1 3 +5153 Qxd5 4 0 1 +5156 Bxd3 14 0 6 +5156 Bg6 3 2 1 +5156 e6 0 0 5 +5158 e6 4 1 5 +5154 e6 17 2 9 +5154 Nc6 10 0 14 +5154 Nf6 3 0 8 +5161 Nc6 5 0 3 +5163 e6 2 0 3 +5162 Nf6 1 0 4 +5155 e6 13 0 14 +5155 dxc4 12 1 4 +5155 c6 3 0 3 +5155 Nf6 3 0 2 +5157 e6 6 1 4 +5157 Nc6 4 0 4 +5159 Bg6 3 0 4 +5159 Be4 2 0 3 +5160 e6 3 0 2 +5169 Bd7 7 0 15 +5169 Nf6 1 0 4 +5170 Nf6 9 1 2 +5170 e5 6 0 5 +5170 e6 2 1 2 +5171 Nf6 7 1 4 +5171 Bf5 0 0 7 +5166 Nf6 24 2 13 +5166 Bg4 18 0 18 +5166 Bf5 14 0 14 +5166 f6 11 2 4 +5166 e6 4 0 6 +5166 e5 2 0 4 +5166 a6 2 0 4 +5173 e5 6 1 5 +5173 Nf6 4 1 1 +5173 Bf5 2 0 4 +5174 Nf6 3 0 5 +5174 e5 3 0 2 +5172 e5 4 0 6 +5172 Bf5 4 1 3 +5172 Nf6 4 1 2 +5167 dxc4 27 1 15 +5167 e6 9 2 7 +5167 e5 6 0 5 +5167 Nf6 4 0 3 +5167 Bf5 4 0 1 +5168 Bf5 14 0 12 +5168 Nf6 16 0 9 +5168 e6 8 0 6 +5168 f6 8 0 5 +5168 f5 2 0 4 +5175 Nf6 2 1 2 +5175 e5 4 0 1 +5184 c6 4 0 9 +5184 Bd7 3 0 7 +5179 e6 18 3 15 +5179 Nc6 17 1 10 +5179 Bg4 6 0 13 +5179 g6 3 2 6 +5179 c5 3 1 3 +5179 a6 2 0 3 +5182 e6 6 0 8 +5182 Bf5 3 0 4 +5182 Nc6 1 1 4 +5182 Bg4 1 0 4 +5177 e6 26 4 28 +5177 Bg4 21 3 29 +5177 Nc6 17 3 8 +5177 Bf5 6 0 10 +5177 g6 7 0 7 +5177 Ne4 4 0 3 +5177 c6 2 0 4 +5189 Bg4 2 0 3 +5188 e6 4 0 2 +5181 Bf5 2 0 9 +5181 e6 4 0 7 +5181 Bg4 5 0 6 +5181 Nc6 3 1 6 +5178 e6 20 1 17 +5178 c6 7 1 19 +5178 dxc4 12 0 12 +5178 Bf5 4 0 7 +5178 Nc6 3 0 7 +5178 Bg4 7 0 2 +5178 g6 5 0 0 +5180 e6 19 0 10 +5180 Bf5 5 1 8 +5180 Bg4 8 0 5 +5180 g6 3 0 4 +5180 Nc6 4 0 2 +5180 Ne4 1 0 5 +5183 Nc6 6 0 7 +5183 e6 7 0 2 +5183 Bf5 4 0 3 +5194 Nf6 2 0 3 +5192 Nc6 3 0 3 +5192 Bg4 3 0 3 +5193 dxc4 6 0 2 +5201 Bd7 1 0 5 +5196 e6 5 0 7 +5196 Nc6 2 0 9 +5196 cxd4 3 0 8 +5196 c4 3 0 2 +5197 Nc6 7 0 8 +5197 c4 3 0 5 +5197 cxd4 5 1 0 +5199 Nf6 2 0 5 +5199 e6 1 0 5 +5199 cxd4 4 0 2 +5198 e5 8 0 6 +5198 Nc6 5 0 2 +5198 Nf6 3 0 3 +5198 Qa5 2 0 3 +5200 Nc6 4 0 1 +5207 Nf6 11 0 9 +5207 e6 2 0 5 +5204 Nf6 7 1 9 +5204 Bg4 5 1 8 +5204 f6 5 0 4 +5204 Bf5 4 0 3 +5204 e6 3 0 4 +5206 e6 7 0 7 +5206 Nf6 6 1 7 +5206 dxc4 4 0 1 +5205 Bf5 6 1 4 +5205 Nf6 7 0 1 +5205 e6 2 0 4 +5205 f6 3 0 3 +5215 e4 0 1 5 +5214 Nc6 3 0 4 +5224 c6 6 0 11 +5224 Bd7 1 0 10 +5220 Nf6 34 1 20 +5220 c5 18 0 9 +5220 f5 4 0 6 +5220 Bb4 6 0 1 +5220 Nc6 4 0 1 +5220 a6 4 1 0 +5223 Nf6 6 0 5 +5223 c5 3 0 6 +5218 Nf6 52 4 50 +5218 c5 19 1 33 +5218 Nc6 12 1 10 +5218 f5 10 3 9 +5218 Bd6 8 0 2 +5218 h6 6 0 3 +5218 a6 5 1 2 +5218 Bb4 3 0 5 +5218 Be7 4 0 3 +5218 c6 3 1 2 +5218 f6 1 0 4 +5225 Nc6 5 0 1 +5225 c5 2 0 4 +5225 Nf6 3 1 1 +5227 Nf6 2 0 3 +5222 Nf6 1 1 9 +5222 c5 1 1 6 +5222 f5 1 0 7 +5221 Nf6 25 1 17 +5221 c6 11 0 11 +5221 dxc4 6 2 10 +5221 c5 8 0 3 +5221 Bd6 3 0 4 +5221 f5 3 0 2 +5219 c5 20 0 11 +5219 Nf6 13 2 13 +5219 f5 12 0 5 +5219 a6 7 0 7 +5219 Nc6 3 3 6 +5219 Bb4 6 1 2 +5219 Be7 4 0 5 +5219 Bd6 1 0 6 +5219 c6 5 0 1 +5226 f5 0 0 8 +5226 Nf6 1 0 4 +5232 e5 4 0 1 +5233 Bg7 6 0 5 +5235 Bg7 4 0 4 +5237 dxe4 7 0 1 +5239 Nf6 5 0 2 +5239 dxe4 3 1 1 +5239 e6 4 0 1 +5240 e6 2 0 5 +5242 Nf6 56 3 64 +5242 f5 15 1 17 +5242 Bf5 11 0 15 +5242 Nc6 8 0 8 +5242 e5 3 0 6 +5242 e6 6 0 2 +5243 exf3 30 2 14 +5243 Nf6 4 0 5 +5246 Nf6 5 0 4 +5246 dxe4 3 0 4 +5246 Bb4 3 0 2 +5247 exd5 8 0 3 +5247 Qxd5 5 1 4 +5249 Bg6 16 1 17 +5250 Nc6 5 1 2 +5251 Nf6 8 1 6 +5251 e5 10 0 5 +5251 Bf5 5 0 6 +5251 e6 4 0 4 +5253 dxe4 7 1 8 +5252 Bf5 3 0 8 +5252 e6 6 2 1 +5252 Nf6 4 0 2 +5257 e6 5 0 3 +5257 Bf5 3 0 3 +5259 dxe4 1 0 4 +5256 e6 10 0 3 +5256 Nc6 7 0 5 +5256 h5 2 0 3 +5260 dxe4 4 0 4 +5260 cxd4 2 0 5 +5260 e6 1 0 4 +5261 e6 2 0 3 +5264 dxe4 3 1 2 +5264 e6 3 0 2 +5263 Bf5 3 0 4 +5263 Nf6 3 0 4 +5270 c5 0 0 6 +5270 dxe4 1 0 4 +5268 c5 4 0 5 +5268 Nf6 5 0 3 +5268 Nc6 3 0 3 +5268 g6 5 0 1 +5269 Nf6 3 0 4 +5267 c5 14 1 7 +5267 Nf6 7 1 13 +5267 f5 6 0 5 +5267 Bb4 3 0 3 +5267 Nc6 6 0 0 +5271 e5 4 0 1 +5275 Nf6 4 0 2 +5275 e6 3 0 2 +5277 Bf5 2 0 5 +5282 Nf6 2 0 3 +5285 c5 4 0 1 +5286 Nf6 2 0 4 +5287 e6 12 1 7 +5287 Nc6 4 0 4 +5289 Nf6 20 1 9 +5289 Bf5 7 0 9 +5289 e5 1 0 9 +5289 e6 6 0 3 +5292 e6 11 2 10 +5292 g6 5 1 5 +5292 Nc6 4 1 4 +5292 c6 0 0 6 +5294 cxd4 3 0 5 +5295 Nf6 3 1 4 +5295 Bf5 2 0 3 +5296 c5 4 1 13 +5296 Nf6 7 0 8 +5296 Bd6 1 1 3 +5296 Be7 2 1 2 +5304 Nf6 1 0 4 +5306 e6 3 0 2 +5307 Bf5 2 1 2 +5309 Nf6 1 2 3 +5309 c5 4 0 1 +5314 g6 5 0 3 +5316 Bg7 4 0 1 +5318 Bg7 2 0 4 +5320 Bg7 2 1 3 +5324 g6 6 0 1 +5323 Nbd7 1 0 4 +5322 g6 2 1 3 +5325 g6 2 0 3 +5328 f6 5 0 0 +5327 Nc6 4 1 6 +5329 Be7 4 0 1 +5333 Bg7 4 0 2 +5332 Bg7 5 1 2 +5334 Bg7 3 0 2 +5338 Nbd7 27 2 38 +5338 g6 34 3 9 +5338 Bg4 6 1 1 +5338 e6 7 0 1 +5338 Nc6 4 1 1 +5338 e5 2 0 3 +5339 g6 3 0 7 +5339 Nbd7 2 0 4 +5340 Nbd7 4 0 1 +5348 exd4 5 1 8 +5346 f5 5 0 7 +5346 c6 3 0 2 +5347 dxe5 1 3 7 +5347 Nc6 4 1 3 +5351 Be7 20 1 5 +5351 Nf6 13 0 5 +5351 c6 7 1 2 +5351 f5 6 0 2 +5351 Nd7 1 0 5 +5351 b6 3 0 2 +5353 c6 1 0 4 +5355 e5 2 0 3 +5356 Bg7 26 3 32 +5357 Bg7 4 1 3 +5359 Bg7 3 0 4 +5358 Bg7 5 0 6 +5362 g6 1 0 6 +5363 g6 6 0 4 +5368 Be7 2 0 3 +5369 Be7 4 0 4 +5372 Bg7 1 1 5 +5371 Bg7 3 1 6 +5373 Ne5 3 0 2 +5375 Nbd7 7 0 4 +5374 Nbd7 7 0 7 +5374 g6 8 0 6 +5374 Bg4 4 0 2 +5377 Nf6 5 0 4 +5376 dxe5 10 0 1 +5379 Be7 2 1 3 +5378 Nf6 2 0 3 +5386 Bg7 4 0 1 +5385 Bg7 3 0 2 +5387 g6 3 0 3 +5389 Bg7 1 0 4 +5392 Nc6 2 0 4 +5393 d5 6 0 1 +5396 Bc5 5 0 1 +5396 Nf6 4 0 1 +5397 Nf6 2 0 3 +5398 f5 3 0 2 +5399 Nc6 21 1 13 +5399 Nf6 5 0 5 +5402 d6 3 0 3 +5401 d6 1 0 9 +5403 Bc5 3 0 6 +5408 Nf6 5 0 2 +5407 Nf6 5 1 10 +5407 c6 5 0 1 +5407 f5 3 0 3 +5411 d6 4 1 3 +5411 Nc6 4 0 2 +5415 Qe7 2 0 5 +5413 Qe7 26 1 35 +5413 d6 10 0 8 +5413 f6 7 0 7 +5413 Bc5 5 0 8 +5413 d5 10 0 1 +5417 Nxe5 2 1 2 +5414 d6 11 0 9 +5414 Bc5 4 0 5 +5414 f6 6 0 2 +5414 Qh4 1 0 4 +5414 d5 3 0 2 +5418 Nc6 12 1 14 +5420 Bxd6 8 2 8 +5421 Bxd6 34 2 26 +5421 Qxd6 10 0 4 +5421 cxd6 4 0 2 +5423 Nxf6 26 2 19 +5425 Nc6 7 0 6 +5425 d5 3 0 4 +5424 d5 5 1 7 +5424 Qe7 2 1 3 +5424 Nf6 3 0 3 +5426 Nc6 1 0 4 +5427 Nc6 5 1 12 +5428 Ba5 3 0 2 +5431 d5 6 0 1 +5435 Bb7 4 0 5 +5436 Bb7 3 1 2 +5439 Rxb8 6 0 1 +5438 exd5 3 0 4 +5440 Bxc5 0 0 5 +5437 cxd4 2 1 3 +5441 Nf6 7 1 15 +5441 Bd6 7 2 8 +5441 c5 4 0 4 +5441 Nc6 3 0 2 +5444 Nf6 3 1 2 +5443 Nc6 5 0 1 +5442 Bd6 4 0 10 +5442 c5 4 0 5 +5442 Nf6 4 0 4 +5445 Be7 1 0 4 +5446 Nd7 2 1 2 +5452 Qd8 2 0 9 +5453 Kxd8 8 1 4 +5454 g6 5 0 0 +5456 Bxc5 1 0 4 +5455 cxd4 8 0 0 +5458 Nf6 2 1 2 +5457 Nf6 6 0 0 +5460 dxe4 4 0 1 +5467 Ng6 6 0 8 +5468 g6 3 0 6 +5473 Be7 7 0 3 +5476 Nc6 1 0 4 +5475 d5 3 0 4 +5474 d5 4 0 3 +5474 Be7 4 0 1 +5479 Qb4 7 0 2 +5483 Bb7 5 0 4 +5486 Bb7 5 0 2 +5482 Bb7 5 0 3 +5481 Bb7 6 0 5 +5484 Bb7 4 0 3 +5490 f6 4 0 2 +5489 cxd4 7 1 1 +5491 cxd4 2 0 4 +5488 Bxc5 7 0 7 +5487 cxd4 6 0 4 +5492 cxd4 3 0 2 +5494 d5 6 0 0 +5497 Nf6 17 2 15 +5497 c5 10 1 9 +5497 Bd6 5 0 6 +5496 Nf6 16 1 15 +5496 Be7 17 0 8 +5496 f6 10 1 2 +5500 Nf6 7 0 2 +5500 c5 3 0 3 +5499 Nf6 10 1 11 +5499 c5 5 0 6 +5499 c6 4 0 1 +5499 dxc4 3 0 2 +5495 Nf6 28 1 30 +5495 c5 18 1 9 +5495 Bd6 3 0 3 +5495 c6 4 0 1 +5495 a6 2 1 2 +5498 Nf6 10 0 12 +5498 c5 10 1 4 +5502 Nf6 1 0 4 +5502 Nd7 4 0 1 +5503 c6 6 0 0 +5503 Bd7 3 0 2 +5510 Nf6 1 1 3 +5509 Nf6 5 0 4 +5512 Nf6 10 0 0 +5513 Nc6 5 0 2 +5513 d5 6 0 1 +5517 Bb7 9 0 2 +5518 Bb7 3 0 3 +5520 Bxc5 9 1 3 +5519 cxd4 10 0 4 +5519 Nc6 4 0 1 +5521 Nf6 9 0 5 +5521 Nc6 12 0 1 +5521 c5 9 1 2 +5521 b6 4 0 1 +5524 Nf6 3 0 3 +5522 dxc4 3 1 2 +5522 c5 3 0 2 +5523 c5 1 1 3 +5523 Nf6 2 0 3 +5528 Nf6 2 0 3 +5531 Nf6 3 1 5 +5532 c5 4 1 2 +5532 Nf6 4 0 1 +5533 Nf6 2 0 5 +5536 Bxd2 10 2 11 +5536 a5 2 0 3 +5537 Nf6 11 0 3 +5537 Bxc3 6 1 4 +5538 Nf6 7 0 6 +5538 a6 0 0 5 +5538 f5 4 0 1 +5539 Nf6 4 0 1 +5542 Nf6 5 0 0 +5544 g6 16 2 28 +5544 Ng6 20 1 19 +5544 c6 2 1 7 +5544 d5 6 0 3 +5544 a6 3 0 2 +5545 g6 0 0 5 +5550 Be7 3 0 2 +5547 Bb4 29 1 23 +5547 d5 21 2 7 +5547 Be7 14 1 2 +5547 c5 4 1 7 +5547 g6 3 0 2 +5547 c6 4 0 1 +5548 d5 5 0 6 +5548 Bb4 3 1 6 +5549 c5 1 0 4 +5549 d5 1 0 4 +5553 g6 20 0 7 +5557 Bb7 32 2 27 +5559 Bb7 3 0 5 +5560 Bb7 4 0 4 +5558 Bb7 6 1 3 +5565 cxd4 16 1 6 +5564 cxd4 12 1 9 +5564 Nc6 3 0 4 +5562 exd5 27 2 13 +5562 d6 16 3 13 +5562 Nf6 9 0 6 +5562 e5 2 0 4 +5566 Bxc5 3 0 5 +5563 cxd4 18 2 11 +5563 Nf6 7 0 4 +5563 d5 5 0 6 +5563 Nc6 6 0 3 +5567 d5 19 2 11 +5567 Bb4 4 0 2 +5569 d5 2 1 4 +5570 Nf6 149 13 133 +5570 dxc4 95 2 44 +5570 c6 25 1 17 +5570 c5 24 0 12 +5570 Bb4 18 0 5 +5570 a6 5 0 3 +5570 Be7 3 0 2 +5570 f5 3 2 0 +5571 Nf6 23 3 20 +5571 dxc4 12 1 10 +5571 c6 3 0 5 +5571 c5 5 0 3 +5575 dxc4 3 0 2 +5574 b6 18 2 6 +5574 Nf6 7 1 8 +5574 c6 4 1 7 +5573 exd5 24 3 24 +5573 Qxd5 11 0 6 +5572 Nf6 16 1 12 +5572 dxc4 12 0 12 +5572 c5 8 0 8 +5572 c6 4 0 4 +5577 Bd7 20 0 20 +5577 c6 21 1 12 +5577 Nf6 16 0 7 +5577 b6 9 1 8 +5577 Nd7 9 1 5 +5577 g6 9 0 3 +5577 Be7 7 0 4 +5577 a6 4 0 2 +5577 f6 5 0 0 +5578 Bd7 7 0 4 +5578 c6 6 0 4 +5580 g6 2 0 3 +5579 c6 4 0 5 +5579 Bd7 2 0 5 +5579 b6 2 0 3 +5581 Nf6 21 2 18 +5582 Nf6 5 3 5 +5583 Nf6 2 1 2 +5585 Bg7 12 0 6 +5586 Bg7 3 1 1 +5587 Nf6 3 0 3 +5588 Bxe6 2 0 4 +5590 Nf6 10 0 16 +5590 Qf6 4 0 2 +5591 Ba5 7 0 2 +5593 g6 2 1 9 +5593 Ng6 1 0 4 +5597 d5 6 0 2 +5600 g6 1 0 5 +5601 Bb7 6 0 5 +5602 Bb7 7 0 4 +5603 cxd4 5 0 5 +5607 cxd4 1 0 5 +5604 cxd4 4 0 6 +5606 cxd4 3 0 2 +5605 Bxc5 3 1 5 +5608 cxd4 4 0 1 +5610 d5 3 1 5 +5614 c5 7 0 8 +5614 Nf6 5 1 7 +5614 Nc6 2 0 4 +5611 Nf6 15 3 36 +5611 c5 16 0 16 +5611 Nc6 10 1 4 +5611 Bd6 5 0 2 +5611 c6 2 0 4 +5611 g6 2 1 2 +5615 c5 1 0 6 +5615 Nf6 1 0 6 +5612 Nf6 3 0 12 +5612 dxc4 6 0 1 +5612 c5 5 0 2 +5612 c6 2 1 3 +5612 f5 3 1 2 +5613 Nf6 3 0 9 +5613 c5 6 1 4 +5613 Nc6 2 0 4 +5613 f5 4 0 1 +5616 Nf6 5 2 2 +5621 Bd7 2 1 2 +5623 b6 3 1 2 +5622 b6 5 0 1 +5626 Nf6 4 0 5 +5627 Bg7 0 1 6 +5629 Bxd2 3 0 2 +5628 Ba5 6 0 0 +5630 d5 3 0 2 +5632 Ng6 2 0 4 +5635 Nd5 15 1 8 +5635 Ng8 4 0 2 +5638 g6 2 0 3 +5639 Qf5 6 0 1 +5641 Bb4 7 0 6 +5645 Bb7 2 1 2 +5643 Bb7 3 2 4 +5646 Bb7 2 0 3 +5644 Bb7 2 0 6 +5649 cxd4 4 0 9 +5647 cxd4 8 3 18 +5647 d5 2 2 3 +5647 Nf6 5 0 2 +5648 d6 5 1 8 +5648 exd5 6 0 7 +5648 e5 0 0 5 +5650 Bxc5 3 0 8 +5657 dxe4 7 0 3 +5657 Nf6 4 0 4 +5657 Bb4 2 0 4 +5657 c6 3 0 2 +5655 c5 33 0 58 +5655 Nc6 21 0 17 +5655 f6 17 1 12 +5655 Bb4 8 0 2 +5655 Ne7 4 1 4 +5655 c6 3 0 5 +5655 b6 3 1 3 +5655 a6 1 0 4 +5656 exd5 22 2 24 +5656 Qxd5 11 0 4 +5659 g6 5 0 1 +5659 c6 3 1 1 +5666 d5 2 0 4 +5668 Bb7 2 0 7 +5669 cxd4 3 0 2 +5672 dxe4 5 1 4 +5671 Nf6 3 0 4 +5671 Nc6 3 0 2 +5670 c5 4 1 4 +5670 g6 2 0 4 +5670 Nf6 2 0 4 +5674 c6 3 0 2 +5674 Bd7 3 0 2 +5675 Nf6 5 1 4 +5675 f5 3 1 3 +5675 c5 3 0 2 +5677 d5 4 0 2 +5679 cxd4 5 0 3 +5680 Bxc5 2 0 4 +5681 Nf6 8 0 8 +5681 c5 5 0 6 +5681 Nc6 3 0 3 +5681 b6 3 0 2 +5687 d5 3 0 2 +5686 e6 5 2 3 +5689 d5 5 0 1 +5690 g6 0 0 5 +5696 e6 4 0 2 +5695 e6 2 0 3 +5693 e6 6 0 1 +5692 e6 3 0 5 +5694 e6 6 1 2 +5698 e6 41 3 45 +5698 g6 17 1 12 +5698 d6 3 1 7 +5698 c6 3 0 3 +5699 e6 3 0 5 +5700 e6 6 0 2 +5702 Qxd5 4 0 1 +5704 Nf6 10 2 7 +5704 c6 4 0 2 +5705 Nf6 4 0 2 +5706 Nf6 3 0 2 +5707 Bg7 6 0 2 +5709 e6 2 0 6 +5710 e6 5 0 1 +5714 Nf6 2 0 5 +5715 e6 4 0 4 +5715 g6 3 1 1 +5719 f6 5 0 0 +5716 e6 3 0 4 +5716 d6 2 0 3 +5723 e6 20 0 3 +5723 d6 8 0 4 +5723 Nf6 8 0 1 +5728 d6 8 1 1 +5728 e6 4 0 4 +5729 e6 3 0 4 +5731 d6 3 0 3 +5726 d6 9 1 3 +5726 Nf6 4 1 5 +5726 e6 7 1 2 +5726 d5 1 1 4 +5726 b6 4 0 1 +5727 d6 4 1 5 +5727 b6 2 0 5 +5736 c5 1 0 4 +5739 d6 43 2 21 +5739 e6 38 2 20 +5739 c5 16 0 19 +5739 Nf6 21 1 10 +5739 b6 12 1 14 +5739 c6 15 1 9 +5739 Nc6 6 0 4 +5739 f5 4 0 2 +5740 d6 12 1 12 +5740 Nf6 7 0 4 +5740 e6 3 1 7 +5740 b6 3 0 5 +5741 d6 4 0 10 +5741 e6 8 0 3 +5741 b6 7 0 2 +5741 Nf6 1 0 4 +5742 d6 8 0 8 +5742 Nc6 6 1 1 +5742 e6 3 0 2 +5745 Bg7 4 0 4 +5755 e6 2 0 3 +5747 Nf6 7 1 5 +5747 d6 3 0 8 +5747 e6 6 0 5 +5747 b6 5 0 4 +5750 d6 2 1 2 +5748 e6 4 0 4 +5748 d6 3 0 2 +5748 b6 3 0 2 +5749 e6 2 2 2 +5749 b6 1 0 5 +5758 d6 13 1 6 +5758 b6 3 0 5 +5758 e6 2 0 5 +5761 e6 4 0 3 +5759 d6 3 0 4 +5757 e6 15 2 9 +5757 d6 9 1 15 +5757 b6 5 0 6 +5757 d5 4 1 4 +5760 e6 5 0 0 +5760 d6 1 0 4 +5767 e6 7 1 9 +5767 b6 2 1 6 +5767 d6 2 0 6 +5768 e6 5 0 0 +5771 c6 1 0 4 +5771 d6 2 1 2 +5771 d5 0 0 5 +5773 Nc6 1 0 6 +5776 Bg7 2 0 3 +5780 Nc6 3 1 3 +5781 Bb7 2 0 4 +5789 g6 2 0 4 +5794 Nc6 0 0 6 +5802 Nc6 3 0 5 +5801 d5 10 0 18 +5801 g6 3 0 4 +5804 Bg7 7 0 8 +5807 Nc6 2 0 3 +5810 Nf6 1 0 4 +5810 Bf5 3 0 2 +5812 Bf5 3 0 2 +5818 Nc6 2 0 3 +5820 Nf6 2 0 8 +5823 e6 1 0 6 +5824 Nc6 2 1 4 +5826 Nc6 5 0 8 +5826 e4 5 0 1 +5830 exd5 2 0 3 +5833 c5 2 0 4 +5847 Nf6 4 0 1 +5851 Bxd3 2 0 3 +5850 Be4 6 1 6 +5850 Nc6 3 0 2 +5854 Nf6 7 0 11 +5854 e4 8 1 5 +5854 c6 3 1 8 +5854 Be6 0 0 5 +5856 Nf6 6 0 1 +5857 g6 2 0 4 +5858 Be7 9 1 4 +5858 b6 7 0 4 +5861 Nbd7 1 1 3 +5863 g6 3 0 2 +5865 Nf6 1 1 8 +5865 c5 2 0 6 +5866 Bd7 0 1 4 +5869 Bxg4 6 0 5 +5869 Nf6 1 1 6 +5869 f5 2 0 4 +5870 e4 3 0 3 +5871 e4 2 0 3 +5875 c6 0 0 5 +5874 e4 1 0 5 +5879 exd4 6 0 8 +5879 e4 4 0 8 +5883 e4 1 0 5 +5885 d5 3 1 8 +5885 c5 3 0 3 +5886 d5 7 0 3 +5889 c5 3 0 9 +5889 Nf6 1 0 6 +5894 c6 0 0 5 +5897 Nf6 2 0 7 +5898 g6 3 0 4 +5898 d5 3 0 2 +5899 Be7 3 0 6 +5901 g6 2 0 4 +5902 d6 4 0 2 +5903 Bc5 5 0 8 +5903 d5 6 0 6 +5903 d6 6 0 4 +5903 Nf6 3 0 4 +5904 Nc6 1 0 11 +5905 Nc6 21 1 21 +5905 Bd6 11 0 15 +5905 d4 4 0 6 +5905 e4 2 1 4 +5906 Nc6 4 0 4 +5908 Nc6 4 0 3 +5909 d5 5 0 7 +5913 e4 14 0 10 +5913 exd4 4 0 3 +5916 Bc5 4 0 2 +5917 d5 1 1 3 +5922 d4 3 0 3 +5918 c5 5 1 2 +5918 Nf6 2 0 5 +5918 Nc6 4 0 1 +5918 Bd6 3 0 2 +5919 Nf6 4 0 7 +5919 c5 2 0 3 +5921 c5 1 0 4 +5921 Nf6 1 0 4 +5920 Nc6 3 0 2 +5920 Be6 4 0 1 +5931 Nce7 4 0 1 +5930 Nxe5 8 0 3 +5932 Nc6 0 0 5 +5933 dxe5 5 0 2 +5935 d5 5 0 15 +5934 Nf6 10 1 12 +5934 d6 12 0 8 +5936 d5 5 1 2 +5939 Nc6 11 2 23 +5939 d5 5 0 4 +5938 d5 14 1 14 +5938 Nf6 9 2 9 +5938 Nc6 5 1 5 +5938 Qe7 4 0 5 +5942 Nf6 3 0 2 +5944 Nf6 3 0 3 +5945 d5 1 0 5 +5947 Nf6 14 3 17 +5947 e4 15 0 8 +5947 c6 3 0 9 +5947 Be6 1 0 4 +5949 d5 3 0 3 +5951 d5 3 0 2 +5953 Nf6 2 1 9 +5956 Nf6 4 0 3 +5961 Nf6 1 0 5 +5959 Nf6 1 0 5 +5967 Nf6 2 0 3 +5966 Nf6 1 0 6 +5965 Nf6 2 0 5 +5965 c6 4 0 1 +5964 Nf6 4 1 4 +5964 c5 5 1 1 +5973 c5 6 0 4 +5973 Nf6 3 0 6 +5973 Nc6 2 0 4 +5983 dxc6 6 0 0 +5984 dxc6 3 1 3 +5987 e6 2 0 4 +5986 e6 2 0 5 +5991 Kxf7 4 0 1 +5989 Nf6 4 0 1 +5990 Nf6 5 0 3 +5994 d5 4 1 4 +5997 e5 3 0 2 +5998 Nf6 1 0 9 +5998 Bb4 4 1 2 +5998 d6 2 1 2 +6000 e5 9 0 8 +6000 d5 2 0 6 +6001 Nd5 7 0 3 +6001 Ng4 2 0 5 +6005 Bg4 5 1 6 +6004 Qxd5 30 2 22 +6009 Bg4 2 0 4 +6008 Bg4 3 0 2 +6012 a6 10 2 12 +6012 d6 9 0 2 +6012 Qf6 9 1 1 +6012 Nf6 6 0 5 +6012 Nd4 5 0 2 +6011 Bc5 16 0 14 +6011 Nf6 16 1 10 +6011 h6 7 0 5 +6011 f6 5 0 2 +6011 Be7 2 0 4 +6014 Nf6 13 0 10 +6014 Bb4 4 0 1 +6015 Nf6 3 0 5 +6015 d5 4 0 2 +6013 exd4 15 1 19 +6013 d6 3 0 2 +6019 d5 3 1 5 +6025 d5 2 0 3 +6024 Nd5 8 0 6 +6024 Ne4 7 0 0 +6029 dxe4 8 0 5 +6027 Bf5 30 3 32 +6027 e6 10 0 7 +6027 f6 10 0 6 +6027 g6 8 1 4 +6027 Nh6 1 0 6 +6028 Qxd5 25 4 20 +6030 Ne5 4 0 2 +6032 exd4 7 2 2 +6031 Nce7 37 0 43 +6031 Nd4 15 0 3 +6033 Nxe5 6 0 3 +6034 Nf6 4 0 2 +6035 exd5 9 0 3 +6040 Bf5 3 0 2 +6039 Qxd5 3 1 6 +6042 exf4 10 0 5 +6047 e5 5 0 4 +6055 dxe4 3 0 2 +6053 Ne4 30 0 26 +6053 Nfd7 8 2 23 +6053 d4 7 1 19 +6053 Ng4 4 0 3 +6052 Nxd5 73 9 70 +6058 g6 2 0 3 +6056 g6 3 1 7 +6056 Nc6 2 0 3 +6060 Bc5 4 0 2 +6060 Bb4 6 0 0 +6060 Nxe4 0 0 5 +6059 Nc6 26 1 27 +6059 d6 10 1 2 +6059 Bb4 3 0 5 +6059 Bc5 3 0 2 +6059 Bd6 4 1 0 +6062 d5 3 0 2 +6063 exd4 5 0 7 +6061 d5 7 0 4 +6061 exf4 3 0 2 +6064 d5 6 0 6 +6068 Nf6 1 0 6 +6067 d5 3 0 2 +6065 Nf6 1 0 9 +6066 d5 4 0 4 +6071 Nc6 1 0 5 +6076 dxe4 2 0 4 +6077 dxe4 1 0 5 +6073 Nfd7 8 0 19 +6073 Ng4 6 0 2 +6074 Nxd5 6 1 13 +6081 Be7 3 0 4 +6080 Nc6 2 0 8 +6080 d6 4 0 1 +6084 Nf6 2 0 3 +6087 Nb6 30 1 27 +6087 e6 12 0 11 +6087 c6 3 0 2 +6089 Nxc3 7 0 3 +6089 e6 3 0 2 +6088 d6 14 1 19 +6088 Nb6 2 0 3 +6088 Nc6 3 0 2 +6086 Nb6 123 10 135 +6086 Nb4 6 1 6 +6086 Nf4 11 0 0 +6085 d6 96 8 121 +6085 Nb6 19 2 33 +6085 e6 9 1 15 +6085 Nc6 12 0 6 +6085 c6 8 0 2 +6085 g6 3 0 3 +6085 f6 5 0 0 +6091 Nc5 7 1 4 +6091 Nxf2 8 0 2 +6092 Nc5 4 0 1 +6094 d6 3 0 4 +6094 e6 5 0 1 +6095 g6 5 0 0 +6097 Bb7 9 0 5 +6098 c6 2 1 3 +6099 Bb7 0 0 6 +6100 Bb7 3 0 2 +6104 Bb7 6 0 0 +6103 Bb7 5 0 2 +6102 Bb7 25 4 30 +6106 c6 4 2 1 +6105 c6 2 0 7 +6107 e6 5 0 1 +6108 Bb7 3 0 3 +6112 Bb7 11 0 9 +6115 Bb7 1 0 4 +6109 Bb7 36 1 19 +6114 Bb7 0 1 6 +6111 Bb7 11 1 11 +6117 Bb7 4 0 1 +6110 Bb7 6 2 15 +6116 Bb7 2 0 3 +6113 Bb7 3 0 7 +6118 c6 1 1 3 +6119 Bb7 7 1 9 +6122 Bxd5 16 2 7 +6122 c6 15 0 5 +6125 Kxf7 7 2 7 +6123 e6 9 0 10 +6123 g6 5 0 5 +6126 e6 4 0 3 +6121 e6 24 1 20 +6124 e6 7 0 7 +6124 g6 3 1 4 +6120 e6 27 4 28 +6120 g6 8 0 8 +6120 d5 3 1 2 +6132 e6 4 0 2 +6130 e6 6 0 7 +6130 g6 6 1 0 +6131 e6 0 0 7 +6129 g6 13 0 5 +6129 e6 5 2 6 +6135 Nxa6 6 1 3 +6138 Bxe4 22 0 16 +6138 e6 11 0 19 +6138 g6 14 0 8 +6138 c5 3 0 4 +6140 e6 5 0 8 +6140 g6 5 0 6 +6136 e6 71 10 77 +6136 g6 63 1 46 +6136 c5 7 2 20 +6136 d6 6 0 10 +6136 Nf6 7 0 8 +6136 Nc6 7 1 3 +6136 d5 5 0 1 +6142 g6 5 0 2 +6137 e6 11 2 32 +6137 g6 21 1 17 +6137 c5 2 0 5 +6137 d5 5 0 1 +6139 Bxe4 15 0 13 +6139 e6 6 0 12 +6139 g6 5 0 6 +6141 g6 3 0 4 +6141 e6 3 0 3 +6146 e6 13 0 14 +6148 e6 4 0 4 +6148 g6 5 0 0 +6149 e6 5 1 3 +6151 g6 12 0 4 +6150 e6 5 0 7 +6150 g6 2 0 5 +6152 e6 7 0 4 +6153 e6 2 0 3 +6157 Nxa6 8 1 2 +6160 e6 56 8 56 +6160 g6 43 2 21 +6160 d6 7 0 9 +6160 Nf6 9 1 2 +6160 d5 7 0 5 +6160 f5 5 0 1 +6160 c5 3 0 2 +6159 e6 62 4 61 +6159 g6 41 1 32 +6159 d6 8 0 6 +6159 d5 9 0 2 +6159 Nf6 3 0 3 +6166 e6 3 0 2 +6165 Bxe4 4 1 2 +6164 Bxe4 3 0 2 +6164 g6 3 0 2 +6161 e6 30 3 33 +6161 g6 24 1 26 +6161 c6 20 1 8 +6161 Nf6 8 0 12 +6161 d6 6 1 3 +6163 e6 5 0 3 +6163 g6 1 0 5 +6162 e6 21 2 16 +6162 g6 12 0 1 +6168 e6 5 0 4 +6168 d6 0 0 7 +6169 e6 4 1 10 +6169 g6 2 0 3 +6170 e6 4 1 4 +6170 g6 2 1 4 +6173 e6 15 0 19 +6173 g6 5 0 7 +6172 e6 11 0 25 +6172 g6 3 0 6 +6174 e6 5 1 9 +6176 g6 5 0 2 +6176 e6 4 0 2 +6178 b5 2 0 7 +6177 e6 0 0 5 +6177 b5 3 0 2 +6186 Kxf7 12 0 15 +6181 e6 23 0 23 +6181 Nf6 15 1 4 +6181 d6 7 0 10 +6181 a6 7 0 4 +6181 g6 2 1 5 +6181 e5 4 0 1 +6179 e6 42 5 73 +6179 d6 27 2 31 +6179 g6 9 2 22 +6179 Nf6 11 0 13 +6179 a6 7 0 11 +6179 h6 9 1 8 +6179 e5 8 2 7 +6183 e6 21 1 30 +6183 Nf6 4 1 14 +6183 Ne5 6 0 9 +6182 e6 28 6 36 +6182 g6 3 0 8 +6185 e6 6 2 18 +6185 g6 4 0 4 +6185 Nf6 1 2 4 +6185 a6 5 0 2 +6180 e6 26 3 27 +6180 Nf6 11 2 25 +6180 d6 10 0 9 +6180 e5 8 0 6 +6180 g6 4 0 10 +6180 a6 5 0 3 +6184 e6 16 0 13 +6184 d6 11 0 8 +6184 Nf6 6 0 7 +6184 e5 5 1 3 +6184 g6 3 0 5 +6187 e6 4 0 4 +6190 d5 2 0 5 +6191 d5 1 0 4 +6191 Ne4 4 0 1 +6194 e6 2 1 5 +6196 e6 2 0 7 +6195 e6 4 1 4 +6207 Kxf7 2 0 4 +6200 Nc6 12 2 14 +6200 e6 5 1 10 +6200 Nf6 1 1 11 +6198 Nc6 20 2 19 +6198 Nf6 13 2 18 +6198 e6 6 1 14 +6198 h6 6 0 4 +6198 Bg4 4 0 4 +6198 a6 2 0 4 +6199 e6 11 0 24 +6199 Nf6 16 0 15 +6199 Nc6 5 0 4 +6202 g6 11 0 5 +6202 e6 4 1 10 +6206 Nf6 1 0 4 +6206 a6 5 0 0 +6204 Nf6 5 1 1 +6204 Nc6 1 0 6 +6204 e6 1 1 4 +6201 Nc6 6 0 10 +6201 Nf6 9 0 3 +6201 e6 2 0 7 +6205 cxd4 5 1 10 +6203 Nf6 4 0 6 +6203 Nc6 3 1 5 +6203 e6 3 1 3 +6219 Nc6 5 1 3 +6211 Nc6 35 2 55 +6211 a6 31 2 31 +6211 Nf6 5 0 11 +6211 d6 5 1 5 +6211 Be7 3 0 4 +6211 d5 4 0 1 +6210 Nc6 39 2 55 +6210 d5 32 1 34 +6210 a6 21 4 39 +6210 Nf6 10 1 11 +6210 d6 8 1 4 +6210 h6 2 0 4 +6210 Qc7 2 0 3 +6220 d5 3 0 3 +6217 Nc6 8 0 8 +6217 a6 7 0 8 +6214 Nc6 8 0 11 +6214 a6 4 1 6 +6214 Nf6 1 0 5 +6222 Nf6 2 0 7 +6215 a6 8 0 8 +6215 d5 8 1 5 +6215 Nc6 2 0 8 +6218 a6 2 3 10 +6218 Nc6 5 0 5 +6218 d5 4 0 2 +6212 a6 8 1 16 +6212 Nc6 3 1 20 +6212 d5 12 1 11 +6212 Nf6 4 0 3 +6213 cxd4 13 0 28 +6213 d5 2 1 6 +6216 Nc6 8 1 10 +6216 a6 4 0 4 +6216 d5 2 1 4 +6227 Bg7 3 0 3 +6226 e6 4 0 5 +6232 e6 4 0 8 +6232 a6 7 0 4 +6232 d6 1 0 4 +6232 Nd4 2 0 3 +6233 e6 10 0 6 +6233 Nf6 4 1 3 +6233 d6 3 0 3 +6233 g6 0 0 5 +6229 e6 25 2 21 +6229 d6 19 3 16 +6229 g6 11 1 17 +6229 e5 8 1 9 +6229 Nf6 2 0 3 +6234 e6 4 0 8 +6234 d6 1 0 4 +6230 g6 15 1 10 +6230 e6 12 0 9 +6230 d6 7 0 4 +6230 e5 3 0 7 +6231 g6 6 1 8 +6231 d6 5 3 3 +6231 Nf6 7 0 2 +6231 e6 1 0 6 +6237 Nc6 4 0 2 +6243 Bd7 4 0 6 +6243 Nc6 4 0 4 +6240 e6 4 0 10 +6240 Nf6 8 0 3 +6240 Nc6 5 0 4 +6240 a6 2 0 3 +6238 Nf6 11 0 18 +6238 Nc6 9 0 18 +6238 a6 7 2 8 +6238 e6 2 1 10 +6238 g6 4 1 1 +6244 Nf6 0 0 5 +6242 Nc6 3 0 6 +6242 Nf6 4 0 2 +6245 cxd4 1 0 6 +6239 Nf6 15 0 5 +6239 Nc6 14 0 4 +6239 g6 5 0 1 +6241 Nf6 8 0 1 +6247 Nc6 4 0 2 +6255 a6 2 0 3 +6251 a6 4 1 8 +6251 Nc6 4 0 1 +6248 d5 17 3 8 +6248 Nc6 12 0 14 +6248 a6 9 4 5 +6252 d5 3 0 2 +6253 cxd4 2 1 5 +6249 d5 8 1 0 +6249 Nc6 6 0 2 +6250 d5 3 0 5 +6250 Nc6 4 0 3 +6250 a6 4 0 1 +6258 Bg7 5 0 2 +6256 Bg7 9 0 14 +6257 Bg7 7 0 5 +6259 e6 4 1 4 +6259 e5 1 2 2 +6261 Nf6 3 0 3 +6266 d6 47 11 55 +6266 a6 46 5 53 +6266 g6 39 3 56 +6266 e6 53 2 40 +6266 Nf6 24 0 7 +6266 Nd4 14 2 13 +6266 Qc7 8 1 17 +6266 Qb6 8 0 6 +6266 e5 7 1 3 +6266 d5 4 0 1 +6265 e6 173 13 218 +6265 d6 50 4 66 +6265 g6 30 2 42 +6265 e5 20 0 26 +6265 Nf6 24 1 16 +6265 a6 13 0 13 +6265 h6 8 1 12 +6273 e6 2 0 3 +6267 e6 56 5 51 +6267 d6 41 7 51 +6267 g6 20 1 39 +6267 e5 19 3 35 +6267 Nf6 11 1 12 +6267 a6 6 1 9 +6267 b6 4 0 1 +6272 d6 4 0 4 +6268 d6 19 4 32 +6268 e5 23 0 27 +6268 e6 23 2 23 +6268 d5 16 2 21 +6268 Nf6 13 1 15 +6268 g6 16 0 13 +6268 a6 1 0 9 +6270 e6 12 0 7 +6270 d6 5 0 12 +6270 e5 9 0 8 +6270 g6 2 0 3 +6269 d6 8 0 11 +6269 e6 4 0 11 +6269 e5 3 0 8 +6269 g6 3 0 8 +6264 cxd4 642 43 658 +6264 e6 38 0 11 +6264 d6 21 1 5 +6264 d5 6 0 12 +6264 b6 9 0 2 +6264 Nxd4 7 0 2 +6264 e5 3 1 2 +6264 g6 4 0 2 +6264 Nf6 4 1 0 +6271 d5 2 0 6 +6271 d6 2 0 6 +6275 e6 2 0 3 +6277 d5 9 0 2 +6277 d6 4 0 3 +6278 Nd5 2 1 5 +6281 e6 2 1 9 +6281 Nc6 4 0 6 +6281 d6 2 0 3 +6282 Nc6 5 0 9 +6282 d6 2 0 3 +6283 Nc6 4 0 3 +6280 cxd4 26 3 22 +6280 e6 5 0 0 +6286 Nc6 7 0 11 +6286 Bb7 5 2 6 +6287 Bb7 3 0 3 +6285 cxd4 30 1 16 +6285 Bb7 4 1 1 +6292 dxe4 1 0 4 +6291 Nc6 3 0 2 +6290 Qxd5 14 1 8 +6290 e6 3 0 2 +6297 Bd7 77 15 85 +6297 Nc6 29 3 42 +6297 Nd7 6 2 12 +6295 Nc6 93 9 108 +6295 e6 67 7 126 +6295 Nf6 74 4 95 +6295 a6 10 1 17 +6295 h6 17 1 8 +6295 g6 5 0 8 +6295 e5 10 0 2 +6295 Bg4 5 2 2 +6301 Nf6 2 2 10 +6301 Nc6 1 0 6 +6296 Nc6 52 3 79 +6296 Nf6 50 6 71 +6296 a6 16 0 27 +6296 e6 11 1 19 +6296 e5 8 0 13 +6296 g6 4 0 13 +6296 Bg4 1 3 3 +6296 h6 3 0 2 +6303 Nc6 3 1 5 +6303 Nf6 1 2 4 +6298 Nf6 42 1 47 +6298 Nc6 43 4 30 +6298 e6 4 0 12 +6298 e5 7 0 3 +6298 a6 8 0 2 +6298 g6 6 0 2 +6299 Nc6 9 0 9 +6299 Nf6 8 0 9 +6300 Nc6 9 0 14 +6300 Nf6 4 0 4 +6300 g6 2 0 3 +6294 cxd4 611 41 628 +6294 Nc6 18 0 4 +6294 Nf6 11 1 7 +6294 b6 10 0 6 +6294 g6 6 1 3 +6294 a6 4 0 5 +6294 Bg4 4 0 4 +6294 h6 6 0 0 +6304 d5 3 0 4 +6305 Nc6 5 1 2 +6302 Nc6 3 0 6 +6302 Nf6 0 1 6 +6318 a6 8 1 11 +6311 Nc6 35 3 52 +6311 a6 19 2 42 +6311 d5 24 1 15 +6311 Nf6 11 1 9 +6311 d6 5 1 3 +6311 Qc7 3 0 2 +6317 Nc6 4 0 8 +6317 d5 6 0 3 +6310 a6 30 3 52 +6310 Nc6 31 1 39 +6310 d5 24 1 22 +6310 Nf6 6 2 3 +6310 d6 4 0 6 +6320 d5 4 0 2 +6320 Nc6 4 0 1 +6316 d5 8 1 5 +6316 Nc6 2 0 4 +6312 d5 26 0 22 +6312 Nc6 11 1 21 +6312 Nf6 5 1 8 +6312 a6 9 0 5 +6313 Nc6 7 0 12 +6313 d5 7 0 3 +6313 a6 2 1 3 +6314 Nc6 11 0 8 +6314 d5 10 1 6 +6314 a6 3 0 2 +6309 cxd4 304 20 317 +6309 d5 70 4 70 +6309 Nf6 11 0 6 +6309 Nc6 11 0 6 +6309 b6 5 1 10 +6309 d6 5 0 2 +6309 a6 2 0 3 +6315 Nc6 5 1 8 +6315 d5 3 0 4 +6319 d5 3 0 2 +6319 Nc6 5 0 0 +6322 Bg7 24 3 28 +6322 e6 5 0 6 +6322 Nc6 3 0 2 +6324 Bg7 21 0 22 +6324 Nc6 3 0 2 +6323 Bg7 28 1 23 +6326 Bg7 3 0 2 +6325 Bg7 3 0 2 +6321 cxd4 80 0 87 +6321 Bg7 11 0 12 +6321 b6 3 0 3 +6329 e6 3 2 17 +6329 Ne5 3 0 8 +6329 Nf6 1 0 5 +6330 Nf6 4 0 3 +6330 d6 2 0 4 +6330 e6 2 0 3 +6331 e6 2 0 6 +6331 Nf6 3 0 4 +6334 Nxe4 3 0 14 +6336 e6 4 0 2 +6337 e6 6 1 19 +6337 g6 6 0 8 +6340 Nf6 3 0 9 +6338 Nf6 3 0 13 +6341 Nf6 2 0 9 +6339 Nc6 1 0 9 +6343 e6 6 0 13 +6343 e5 6 1 5 +6343 d6 6 0 4 +6343 Nf6 3 0 3 +6343 d5 2 0 3 +6344 Qxd5 0 1 4 +6345 e5 5 0 2 +6345 Nc6 4 1 1 +6345 Nf6 0 0 5 +6346 d6 1 1 5 +6346 Nc6 4 0 1 +6347 d5 4 0 4 +6348 bxa3 3 0 7 +6350 e5 4 0 3 +6350 d6 3 0 3 +6350 e6 2 0 3 +6349 cxd4 48 2 34 +6349 e6 5 2 2 +6349 b6 1 0 4 +6354 Nd5 7 1 13 +6357 e6 3 0 5 +6357 d4 0 0 5 +6356 Qxd5 16 1 16 +6359 Nc6 0 0 6 +6358 cxd4 35 0 36 +6362 d6 1 0 5 +6361 cxd4 3 0 10 +6363 cxd4 9 2 13 +6363 d5 8 0 14 +6365 cxd4 7 0 5 +6369 a6 2 0 4 +6366 d6 17 0 14 +6366 e6 10 0 12 +6366 g6 13 0 7 +6366 e5 5 0 8 +6366 Nf6 4 0 2 +6367 g6 4 0 16 +6367 d6 7 2 7 +6367 e6 4 0 9 +6367 e5 3 0 4 +6367 Nf6 5 0 1 +6368 g6 1 0 9 +6368 e6 3 0 3 +6371 Nc6 9 1 14 +6371 Nf6 9 0 3 +6371 e5 5 0 2 +6373 Nc6 1 1 5 +6373 Nf6 1 1 4 +6372 Nc6 2 0 5 +6372 Nf6 2 0 3 +6376 Nf6 6 1 4 +6376 Nc6 3 0 5 +6378 Nc6 1 1 4 +6377 Nc6 5 0 3 +6379 Bg7 8 1 12 +6383 e6 5 0 9 +6383 e5 6 1 1 +6383 d6 2 0 4 +6381 e6 5 1 8 +6381 Nf6 0 0 8 +6381 g6 3 1 4 +6381 e5 1 1 5 +6381 d6 4 0 1 +6380 g6 2 1 9 +6380 e6 4 1 7 +6380 e5 6 0 5 +6380 d6 5 0 3 +6382 e5 7 0 3 +6382 d6 3 0 6 +6382 e6 1 0 6 +6382 g6 1 0 4 +6385 e6 7 0 1 +6384 e6 4 0 3 +6384 g6 2 1 3 +6386 e6 3 0 4 +6393 Qxd5 2 0 3 +6401 Nf6 1 0 4 +6398 Nf6 2 0 5 +6394 Nc6 8 0 7 +6394 Nf6 3 1 9 +6395 Nc6 6 0 8 +6395 Nf6 7 0 4 +6395 g6 2 0 3 +6399 Nc6 4 0 6 +6397 Nc6 3 0 7 +6400 Nc6 4 0 1 +6400 Nf6 2 0 3 +6396 Nc6 2 1 7 +6396 Nf6 4 0 3 +6403 Nc6 3 0 5 +6405 d5 1 1 16 +6404 d5 12 0 5 +6404 Nc6 3 0 8 +6407 d5 1 0 4 +6410 Nc6 3 1 1 +6415 Bg7 3 0 3 +6413 Bg7 5 0 7 +6414 Bg7 4 0 2 +6416 Ne5 4 0 5 +6416 Nd4 5 0 3 +6417 e5 3 0 2 +6419 bxc5 5 1 6 +6423 Nc6 49 4 43 +6423 d6 9 1 9 +6423 e5 9 0 5 +6423 e6 7 1 6 +6421 Nc6 158 11 320 +6421 d6 4 0 15 +6421 Nf6 8 0 10 +6421 e6 6 0 8 +6422 dxc3 103 0 89 +6422 Nc6 11 1 13 +6422 e6 6 0 15 +6422 d3 9 0 11 +6422 e5 3 0 7 +6422 Nf6 2 0 7 +6422 d5 4 0 5 +6426 e6 3 0 2 +6425 dxc5 10 2 7 +6425 Qa5 6 0 2 +6429 d5 3 0 3 +6430 cxd4 5 0 2 +6427 exd5 9 0 4 +6427 e5 4 0 2 +6427 d6 4 0 1 +6428 Bxc5 14 0 12 +6432 d6 3 3 10 +6432 Qc7 5 0 6 +6432 f6 2 1 7 +6432 d5 2 0 7 +6432 g6 0 0 8 +6432 e6 1 0 5 +6433 e6 3 0 8 +6433 d6 2 0 8 +6433 d5 5 0 3 +6437 Nc6 2 0 3 +6440 g6 1 0 8 +6440 d6 0 1 6 +6440 e6 2 0 3 +6442 Nc6 4 0 7 +6444 Bg7 0 0 5 +6447 e6 3 0 6 +6445 d6 57 2 51 +6445 e6 61 3 41 +6445 g6 32 3 30 +6445 d5 11 0 12 +6445 Nf6 6 0 2 +6445 Qc7 2 0 5 +6445 e5 3 0 2 +6445 Nd4 3 0 2 +6446 d6 3 1 3 +6448 e6 0 0 5 +6452 Bb7 9 0 10 +6455 dxe4 7 1 8 +6454 Nc6 15 0 15 +6454 e6 4 0 6 +6454 Bf5 4 0 3 +6453 Qxd5 31 1 27 +6453 Nf6 2 0 8 +6457 Nc6 2 0 7 +6456 Nc6 57 4 50 +6456 Nf6 13 0 17 +6456 e6 12 1 12 +6456 g6 5 2 5 +6456 Bg4 4 0 3 +6456 Nd7 1 2 2 +6456 a6 3 0 2 +6459 Nc6 0 1 4 +6458 Nc6 4 0 1 +6460 exf4 4 0 6 +6461 d5 37 3 49 +6461 Nc6 30 3 25 +6461 a6 8 1 6 +6461 Nf6 8 1 4 +6461 Be7 5 0 6 +6461 d6 3 0 2 +6462 d5 2 0 3 +6464 Bg7 21 3 25 +6465 e5 3 0 4 +6465 d6 3 0 2 +6467 d5 1 0 5 +6467 Nc6 4 0 2 +6470 dxe4 1 0 4 +6469 cxd5 173 11 136 +6472 d5 0 0 5 +6471 d5 5 0 4 +6473 d5 4 0 2 +6476 dxe4 15 0 5 +6476 Bg4 3 0 3 +6480 dxe4 5 0 1 +6479 dxe4 4 0 4 +6477 dxe4 11 4 5 +6478 d4 3 0 5 +6475 cxd5 38 7 35 +6486 Bf5 0 0 7 +6485 cxd5 2 1 9 +6487 Bb7 3 0 2 +6496 dxc4 2 0 4 +6494 dxe4 5 0 6 +6491 dxe4 29 4 29 +6491 d4 11 0 12 +6491 Bg4 10 1 8 +6491 e6 4 0 1 +6492 dxe4 9 0 9 +6492 Nf6 7 1 4 +6492 Nd7 3 0 5 +6495 dxe4 4 1 5 +6493 dxe4 5 0 12 +6490 Bg4 39 4 62 +6490 Bf5 42 5 39 +6490 e6 13 3 18 +6490 Nd7 2 0 4 +6490 f6 3 0 2 +6490 c5 2 0 3 +6489 cxd5 345 32 391 +6489 Qxd5 9 1 8 +6498 e6 4 0 6 +6497 e6 5 0 3 +6497 g6 4 1 1 +6497 Nd7 3 0 2 +6502 d5 2 1 6 +6502 a6 3 0 3 +6501 a6 4 0 3 +6501 h6 4 0 2 +6500 d5 5 2 7 +6500 d6 5 1 6 +6500 a6 4 0 2 +6500 h6 5 0 1 +6505 d5 1 0 4 +6504 Bg7 4 0 8 +6506 cxd5 9 0 12 +6508 d5 4 0 1 +6509 cxd5 3 0 8 +6513 dxe4 4 0 1 +6511 cxd5 14 1 9 +6512 cxd5 8 1 9 +6516 dxe4 5 0 6 +6516 d4 3 0 6 +6520 dxe4 3 0 4 +6518 dxe4 3 0 6 +6517 Bf5 5 0 4 +6515 cxd5 17 0 25 +6519 dxe4 2 0 5 +6523 Nd5 4 0 2 +6531 dxe4 4 0 2 +6527 dxe4 96 9 102 +6527 Nf6 22 2 10 +6527 e6 12 0 14 +6528 dxe4 12 0 10 +6530 dxe4 4 1 4 +6525 Bf5 267 11 238 +6525 e6 61 4 51 +6525 c5 14 2 24 +6525 f6 12 0 9 +6525 Nd7 4 0 2 +6526 cxd5 221 14 177 +6526 Qxd5 6 1 4 +6529 dxe4 12 2 1 +6529 e6 4 0 4 +6533 Nf6 2 1 4 +6537 a6 5 0 4 +6537 d5 5 0 3 +6537 h6 8 0 0 +6538 d5 7 0 4 +6538 a6 2 1 2 +6540 d6 5 0 2 +6540 d5 1 0 5 +6540 a6 1 1 3 +6544 Bf5 6 0 12 +6544 e6 2 1 5 +6545 exd6 2 0 8 +6546 d5 1 0 4 +6547 cxd5 2 0 3 +6551 dxe4 5 0 10 +6552 dxe4 3 0 4 +6549 Bf5 43 7 45 +6549 e6 20 1 25 +6550 cxd5 40 5 45 +6556 Qh4 1 0 4 +6557 d6 4 0 2 +6558 cxd5 3 0 3 +6560 dxe4 8 0 5 +6560 Nf6 3 0 4 +6563 Nf6 2 0 10 +6564 d4 4 0 1 +6571 e5 1 0 4 +6569 e5 5 1 12 +6569 c5 4 0 1 +6570 e5 3 0 5 +6570 c6 5 0 1 +6570 a6 2 1 3 +6567 e5 47 1 26 +6567 c5 8 0 4 +6567 d3 6 0 2 +6568 e6 4 2 5 +6568 c6 4 0 7 +6568 e5 3 0 5 +6572 Bf5 18 2 12 +6572 Nf6 12 1 8 +6572 e5 8 0 5 +6572 Nc6 6 0 5 +6572 e6 3 0 7 +6572 Nd7 4 0 2 +6579 Qxd4 3 0 3 +6577 Nf6 15 0 11 +6577 Qd5 9 1 8 +6577 f6 13 0 4 +6577 Nc6 5 0 1 +6577 Nd7 1 0 4 +6578 Nf6 5 0 10 +6576 Nf6 28 5 40 +6576 Bf5 11 1 19 +6576 f5 16 0 7 +6576 f6 6 0 4 +6576 Qd5 5 0 5 +6576 e5 4 0 5 +6576 h6 5 0 2 +6580 e5 1 0 4 +6581 exd5 3 0 3 +6582 Nf6 3 1 4 +6585 Nf6 7 0 24 +6587 Nc6 1 0 5 +6588 e5 0 1 5 +6590 exd3 9 0 8 +6589 Qxd1 26 7 59 +6594 Nf6 5 0 2 +6593 Nf6 11 1 16 +6593 Bf5 5 2 3 +6593 f5 7 0 3 +6593 e5 3 0 4 +6593 Nc6 3 0 3 +6603 e6 3 0 2 +6600 e6 38 3 52 +6600 Nc6 4 0 2 +6601 e6 4 0 4 +6607 Bd7 6 0 2 +6605 Bg4 7 1 14 +6605 f6 6 0 3 +6604 Bf5 30 3 28 +6604 f6 27 3 31 +6604 e6 21 1 14 +6604 Nh6 9 0 0 +6604 a6 3 0 3 +6606 Bf5 4 0 4 +6616 Bd7 2 1 5 +6616 Nc6 2 0 5 +6614 Nc6 7 0 7 +6614 Bg4 5 0 4 +6615 Nc6 8 0 9 +6613 cxd4 5 1 8 +6613 e6 3 1 4 +6613 Nc6 2 0 5 +6613 c4 3 0 3 +6612 Nc6 15 0 14 +6621 e6 6 1 3 +6621 Nc6 7 0 2 +6621 c5 4 0 5 +6621 Bf5 3 0 4 +6623 Qd5 1 0 4 +6618 Nc6 13 0 18 +6618 c5 14 1 10 +6618 Bg4 11 1 10 +6618 Qd5 8 0 5 +6618 Bf5 4 0 8 +6618 e6 4 0 2 +6622 dxc3 9 2 1 +6622 d3 4 1 3 +6622 c5 3 0 2 +6619 c5 12 2 11 +6619 Nc6 13 0 9 +6619 Qd5 11 0 8 +6619 e6 5 0 5 +6619 Bf5 2 1 4 +6619 f6 4 0 2 +6620 c5 13 0 5 +6620 Bf5 7 0 6 +6620 e6 8 1 3 +6620 Qd5 7 0 2 +6620 Nc6 2 0 3 +6627 Nc6 4 0 3 +6627 c5 4 1 2 +6627 b6 2 0 4 +6625 c5 48 0 41 +6625 Nc6 22 0 22 +6625 b6 15 0 14 +6625 f6 14 0 6 +6625 a6 8 0 11 +6625 Bb4 10 0 9 +6625 c6 13 0 1 +6625 f5 6 1 6 +6625 Ne7 3 2 2 +6625 g6 1 1 3 +6626 c5 5 0 2 +6626 f5 4 0 2 +6626 Bc5 2 1 2 +6632 fxe5 8 0 0 +6631 fxe5 13 0 8 +6631 Nc6 4 1 9 +6630 Nxf6 10 0 18 +6630 gxf6 6 0 2 +6630 exf6 4 0 3 +6639 Bd7 6 0 6 +6639 c6 6 0 2 +6638 Nxd5 11 1 14 +6638 c6 4 0 9 +6634 Nxd5 97 13 137 +6634 c6 35 8 42 +6634 e6 10 1 13 +6634 Bg4 3 0 3 +6637 Nxd5 29 4 34 +6637 c6 13 1 9 +6637 Qxd5 6 0 1 +6635 c6 48 4 61 +6635 e6 44 3 39 +6635 e5 5 0 6 +6635 Bf5 3 0 2 +6642 Nxd5 1 0 4 +6636 Nxd5 54 3 38 +6636 c6 25 3 14 +6636 Qxd5 10 2 6 +6636 e6 10 1 6 +6636 Bg4 2 0 10 +6640 exd6 2 0 3 +6646 Qd8 494 39 374 +6646 Qa5 354 25 345 +6646 Qe6 449 16 249 +6646 Qe5 363 13 147 +6646 Qd6 74 3 55 +6646 Qc6 29 0 6 +6646 Qd7 20 0 8 +6646 Qd4 16 3 3 +6646 Qc5 17 0 3 +6646 Qf5 11 0 7 +6646 Qg5 5 1 0 +6647 Bg4 52 6 41 +6647 Qd8 52 5 31 +6647 Qe6 45 1 32 +6647 Nf6 26 2 23 +6647 Qe4 26 2 15 +6647 Qa5 19 1 17 +6647 Nc6 11 1 11 +6647 e5 18 0 5 +6647 Bf5 13 0 3 +6647 c6 6 0 7 +6647 e6 6 0 5 +6647 Qd6 9 0 2 +6647 g6 4 1 3 +6650 Qxf3 24 4 14 +6650 Qd8 9 0 6 +6650 Nf6 8 1 5 +6650 Qe6 8 0 6 +6650 Qe5 5 0 2 +6650 Qa5 1 0 4 +6649 Qd8 22 1 17 +6649 Qe6 11 0 6 +6649 Qe5 10 1 5 +6649 Qa5 3 0 11 +6649 Qe4 4 0 3 +6651 Qd8 5 0 9 +6651 Qa5 5 1 5 +6651 Nf6 9 0 1 +6651 Qe6 2 2 5 +6651 e5 4 0 1 +6648 Nc6 39 2 19 +6648 Qd8 19 2 36 +6648 Qe4 34 3 17 +6648 Qe6 27 2 20 +6648 Qa5 26 3 19 +6648 Nf6 23 4 21 +6648 e5 19 0 10 +6648 Bf5 13 0 6 +6648 c6 10 0 7 +6648 e6 9 0 3 +6648 c5 2 0 5 +6655 cxd5 7 0 7 +6655 Nf6 3 0 2 +6656 cxd5 1 1 4 +6654 Nxc6 48 1 41 +6654 e5 3 1 6 +6659 Nf6 3 0 15 +6658 Bxe6 24 0 12 +6661 exd5 3 1 1 +6660 Bxe6 25 1 34 +6663 e5 1 0 4 +6664 e5 4 1 22 +6664 Nf6 5 0 8 +6664 Nc6 2 0 6 +6664 e6 4 0 3 +6666 Nf6 3 0 2 +6665 exd3 5 1 3 +6673 Kxf7 2 0 3 +6670 c6 2 0 5 +6670 g6 4 0 2 +6669 g6 8 0 5 +6669 e5 2 0 4 +6669 c6 2 0 4 +6674 Nf6 3 0 2 +6678 Nf6 6 0 2 +6678 a6 3 0 3 +6678 Be7 3 0 2 +6679 a6 4 0 2 +6679 Nf6 2 1 2 +6680 a6 5 0 1 +6677 a6 7 0 5 +6677 c6 2 0 4 +6677 d5 2 0 4 +6682 Bxf5 6 0 0 +6684 Bg7 2 2 3 +6683 Nf6 2 0 3 +6686 Bg7 4 1 0 +6687 g6 4 0 3 +6690 g6 3 0 2 +6697 Bxf5 4 0 1 +6698 Bg7 5 1 4 +6699 Bg7 3 0 8 +6700 Bg7 5 0 2 +6704 Bh5 5 0 3 +6715 Nxe4 1 0 9 +6715 g6 4 0 2 +6715 e6 3 0 2 +6713 g6 41 3 44 +6713 Nbd7 21 1 21 +6713 e5 11 1 22 +6713 c6 6 0 15 +6713 c5 5 2 10 +6713 Bg4 4 0 10 +6713 Nc6 6 1 4 +6714 g6 10 1 9 +6714 Bg4 3 0 3 +6714 e5 2 0 3 +6717 Nxe4 4 0 2 +6716 dxe5 12 2 11 +6723 Nc6 3 0 2 +6722 Nc6 2 0 3 +6721 cxd4 4 0 3 +6724 Bg4 1 1 5 +6724 Nf6 2 0 3 +6727 Qxd5 2 0 3 +6729 Bg4 9 0 10 +6729 Nf6 12 0 1 +6729 h6 6 0 3 +6729 Be6 3 0 5 +6729 Be7 3 0 3 +6729 Nc6 2 0 3 +6730 Nc6 7 1 5 +6730 Bg4 8 1 2 +6730 Nf6 3 1 5 +6730 h6 3 1 3 +6728 Bg4 11 1 14 +6728 exd4 8 0 8 +6728 Nd7 6 0 6 +6728 Nc6 4 0 5 +6733 Nf6 6 1 4 +6733 Be7 3 0 2 +6732 Be7 16 0 8 +6732 Nf6 11 0 9 +6732 c6 11 0 3 +6732 g6 3 0 2 +6732 Bd7 3 1 1 +6732 b6 1 0 4 +6741 Nf6 4 0 1 +6740 dxe5 5 0 1 +6739 Bxf5 4 1 4 +6743 Bg7 12 2 22 +6744 Bg7 7 2 10 +6746 Bg7 1 0 4 +6742 Bg7 27 6 40 +6752 g6 5 0 1 +6752 Nbd7 1 0 5 +6754 c6 4 0 2 +6755 Bg7 3 1 3 +6759 f5 3 0 2 +6763 Bg7 2 0 4 +6766 g6 5 0 1 +6765 Ne5 9 0 5 +6767 e5 1 0 4 +6770 g6 28 3 24 +6770 Nbd7 29 2 16 +6770 e5 10 2 12 +6770 Nc6 4 0 8 +6770 Bg4 6 0 4 +6770 c6 3 0 2 +6769 g6 77 5 70 +6769 Nbd7 58 1 56 +6769 Bg4 28 0 11 +6769 c6 15 0 23 +6769 e5 8 0 6 +6769 a6 7 0 1 +6769 Nc6 6 0 2 +6769 e6 2 0 5 +6772 dxe5 4 0 10 +6771 g6 7 0 6 +6771 Nbd7 4 0 3 +6777 cxd4 1 0 4 +6775 Qa5 4 0 3 +6778 Nf6 8 0 0 +6779 Nf6 5 0 1 +6780 cxd5 2 1 2 +6783 e6 4 1 0 +6785 Nf6 5 1 4 +6785 f5 2 0 8 +6785 c6 4 0 5 +6784 Nc6 23 1 23 +6784 dxe5 23 2 8 +6789 c6 6 1 3 +6789 Be7 6 0 2 +6789 Nf6 4 0 2 +6789 a6 5 0 0 +6787 Be7 12 1 7 +6787 Nf6 8 0 8 +6787 c6 3 1 6 +6787 d5 5 0 3 +6787 h6 4 0 4 +6787 b6 5 0 1 +6788 Be7 10 0 1 +6788 b6 4 1 4 +6788 c6 4 2 3 +6788 Nf6 3 0 5 +6792 e5 3 0 3 +6792 exd5 1 0 4 +6791 dxe5 3 0 5 +6794 Be7 4 1 2 +6794 b6 3 0 2 +6795 Nf6 3 0 3 +6797 dxe5 4 0 1 +6796 Bxf5 5 0 0 +6807 Bg7 4 0 3 +6804 Bg7 7 0 7 +6800 Bg7 27 1 15 +6799 Bg7 26 1 30 +6805 Bg7 2 2 5 +6801 Bg7 21 1 14 +6803 Bg7 6 1 10 +6806 Bg7 3 0 4 +6802 Bg7 20 0 12 +6812 Bg4 4 0 3 +6812 g6 3 0 3 +6813 g6 3 0 3 +6814 dxe5 3 1 2 +6815 Nc6 3 0 2 +6816 exf4 14 1 8 +6816 Nd7 4 0 3 +6817 Nc6 4 1 4 +6817 dxe5 4 0 3 +6819 b6 4 0 2 +6819 Nc6 3 0 2 +6820 Bg7 13 0 13 +6821 Bg7 4 0 5 +6823 dxc6 4 0 1 +6826 b5 4 0 1 +6825 d5 3 0 5 +6832 Kxf7 24 0 24 +6833 d6 5 0 5 +6833 Nf6 5 0 5 +6833 c6 5 1 0 +6833 Qf6 1 0 4 +6827 d6 43 4 42 +6827 Nc6 31 6 37 +6827 Nf6 12 3 15 +6827 Qf6 13 2 7 +6827 h6 6 1 4 +6827 f6 4 0 1 +6829 Nf6 31 0 28 +6829 Qf6 10 2 17 +6829 f6 4 0 1 +6828 Qf6 37 4 29 +6828 Qe7 10 0 2 +6828 g6 5 0 2 +6831 Nf6 10 1 13 +6831 Nc6 8 0 3 +6831 d6 5 0 3 +6831 Qf6 3 0 2 +6830 Nf6 16 0 9 +6830 d6 14 0 9 +6830 h6 7 0 5 +6830 Nc6 8 0 4 +6830 Qf6 5 0 6 +6835 d6 2 0 4 +6837 Nf6 1 0 4 +6836 g6 3 1 1 +6846 Kxf7 27 0 17 +6843 Nf6 36 3 31 +6843 Bc5 13 2 13 +6843 d6 12 1 3 +6843 h6 6 0 2 +6843 Bb4 5 0 2 +6843 a6 4 1 0 +6839 Nf6 68 8 69 +6839 Bc5 63 4 68 +6839 h6 31 0 33 +6839 Nd4 30 2 28 +6839 d6 28 1 23 +6839 Be7 11 0 6 +6839 g5 3 0 7 +6839 f6 7 0 1 +6839 a6 2 0 4 +6839 Nge7 2 0 4 +6840 Nf6 57 2 73 +6840 Qf6 15 7 16 +6840 Nh6 6 0 3 +6840 f6 5 0 3 +6840 Qe7 4 0 3 +6844 g6 21 1 20 +6844 Qf6 13 1 11 +6844 Qe7 8 0 10 +6844 Nh6 6 0 2 +6845 Nf6 22 0 17 +6845 Bc5 12 0 3 +6845 d6 2 0 5 +6842 Nf6 40 5 40 +6842 Bc5 18 2 17 +6842 d6 11 4 11 +6842 h6 4 0 7 +6842 a6 3 0 5 +6842 Na5 2 0 5 +6841 Nf6 30 4 36 +6841 Bc5 26 4 27 +6841 h6 15 0 11 +6841 d6 10 1 9 +6841 Nd4 4 0 1 +6841 Be7 3 0 2 +6857 Kxf7 13 1 17 +6855 Bc5 60 4 42 +6855 Bb4 40 1 23 +6855 Nc6 32 2 27 +6855 c6 24 2 17 +6855 d6 13 1 10 +6855 a6 14 0 2 +6855 Be7 7 2 4 +6855 Nxe4 7 1 4 +6855 g6 3 0 3 +6855 h6 3 0 3 +6855 d5 3 0 2 +6854 Nc6 73 3 75 +6854 Nxe4 32 2 35 +6854 d6 44 2 19 +6854 d5 30 0 19 +6854 Bc5 14 0 15 +6854 h6 12 0 9 +6854 Bd6 7 0 4 +6854 c6 5 0 3 +6856 Nc6 35 1 48 +6856 Bc5 16 2 26 +6856 c6 13 3 12 +6856 d6 15 1 9 +6856 d5 4 1 4 +6856 Be7 7 0 2 +6856 h6 3 0 4 +6856 a6 3 0 2 +6859 Nxe4 2 1 5 +6859 Bc5 2 0 3 +6853 Bc5 106 4 108 +6853 Nc6 77 3 64 +6853 d5 51 3 54 +6853 h6 48 4 28 +6853 c6 36 4 36 +6853 d6 23 2 16 +6853 Be7 20 6 8 +6853 a6 14 0 6 +6853 Bb4 9 0 3 +6853 g6 5 0 2 +6853 b6 3 0 2 +6858 exd4 6 0 7 +6858 Nxe4 2 0 3 +6860 Nxe4 4 0 2 +6869 Bc5 7 0 4 +6869 c6 6 1 2 +6867 Bc5 11 0 12 +6867 d6 3 0 3 +6868 Bc5 6 1 4 +6868 Qxf3 4 0 1 +6870 Bc5 6 0 5 +6873 Bb4 5 0 3 +6873 Bc5 3 0 4 +6875 Qxe4 8 0 4 +6872 Nf6 11 0 7 +6874 Bc5 6 0 4 +6874 d6 4 0 2 +6876 b5 6 0 2 +6876 Nc6 2 1 4 +6877 Qf6 2 1 2 +6881 b5 4 0 1 +6883 g6 6 0 0 +6890 Kxf7 9 0 6 +6889 b5 4 0 1 +6889 Nf6 2 1 2 +6885 d5 15 1 12 +6885 f6 6 0 0 +6885 d6 1 0 5 +6887 Nf6 6 0 10 +6887 d5 4 0 4 +6886 d5 10 2 2 +6886 Qf6 4 0 3 +6886 Qe7 3 0 3 +6886 g6 6 0 0 +6892 d5 4 0 3 +6888 d5 11 0 12 +6901 Kxf7 17 2 9 +6898 Nf6 7 0 9 +6898 c6 6 0 7 +6898 Be6 6 0 3 +6898 h6 4 0 4 +6898 Nc6 3 0 3 +6898 f5 0 1 4 +6898 Be7 2 1 2 +6894 h6 24 2 18 +6894 Be7 20 0 10 +6894 Nc6 13 1 14 +6894 Nf6 19 0 5 +6894 Be6 13 1 8 +6894 c6 9 1 3 +6894 f6 8 0 3 +6894 c5 6 0 1 +6894 Nh6 4 0 2 +6894 Bg4 2 0 3 +6894 g6 5 0 0 +6895 Nf6 37 0 34 +6895 Qf6 10 1 10 +6895 Be6 5 1 8 +6895 f6 9 0 4 +6895 Nh6 5 0 2 +6895 Qe7 4 1 1 +6897 g6 21 2 9 +6897 Nh6 9 1 5 +6897 Qf6 5 1 5 +6897 Qe7 4 1 5 +6903 Nf6 0 0 6 +6899 Nf6 11 0 4 +6896 Nc6 11 1 7 +6896 Nf6 10 1 8 +6896 Be6 7 0 10 +6896 h6 8 0 5 +6896 Be7 5 1 3 +6902 exd4 5 0 1 +6900 Nf6 5 0 4 +6900 Nc6 1 0 7 +6900 Be6 1 0 5 +6908 Rxg8 1 0 4 +6907 Nf6 0 0 5 +6906 g6 2 0 5 +6905 Nf6 7 1 13 +6910 c6 3 1 1 +6913 Nf6 4 0 1 +6921 Kxf7 3 1 3 +6916 Nc6 5 2 4 +6916 d6 3 0 4 +6917 Nf6 6 1 8 +6918 Qf6 7 1 1 +6918 Qe7 4 0 2 +6928 Bxc3 1 0 4 +6926 Bc5 2 0 3 +6923 Bxc3 4 3 7 +6923 d6 7 0 2 +6925 Bxc3 4 0 4 +6927 Bxc3 1 0 4 +6930 Nf6 5 0 1 +6929 d6 24 1 18 +6929 Nc6 5 1 9 +6929 Nf6 3 1 5 +6931 exf4 4 0 3 +6941 Bb4 1 0 4 +6937 Nf6 13 1 13 +6937 Bc5 10 0 11 +6937 d6 3 0 4 +6936 Nf6 49 6 45 +6936 Bc5 33 1 26 +6936 d6 14 2 16 +6936 Bb4 12 0 5 +6936 Nge7 2 0 3 +6936 g6 1 2 2 +6940 Nf6 9 0 3 +6940 Bc5 7 1 0 +6940 d6 4 0 1 +6939 Nf6 10 0 4 +6939 Bc5 3 0 4 +6938 exf4 16 0 3 +6938 d6 7 1 3 +6938 Bc5 1 0 4 +6945 Bc5 12 1 5 +6945 Nc6 3 1 8 +6945 Bb4 4 1 4 +6945 c6 2 0 3 +6943 Nc6 60 7 55 +6943 d6 18 1 8 +6943 Bc5 8 1 4 +6943 Bb4 3 0 6 +6943 d5 3 0 3 +6947 Bc5 4 0 3 +6947 d5 3 0 3 +6947 Nc6 3 1 2 +6946 d5 2 0 8 +6946 Nc6 2 0 7 +6946 Bc5 4 1 2 +6946 Bb4 3 0 2 +6948 exd4 4 1 3 +6944 exf4 22 1 8 +6944 d6 9 0 4 +6944 Nc6 4 0 5 +6944 d5 4 1 2 +6949 Bb4 4 0 1 +6954 d6 3 0 5 +6954 f6 5 0 1 +6954 Qf6 2 0 3 +6957 Nc6 5 0 3 +6957 Nf6 3 0 3 +6957 Be6 3 0 3 +6956 Nf6 10 0 8 +6956 Bg4 10 1 4 +6956 Nc6 10 0 4 +6956 f5 6 0 5 +6956 c6 6 0 2 +6956 Be7 3 0 4 +6956 Nd7 1 0 6 +6956 c5 2 0 4 +6956 Be6 4 0 1 +6960 Nc6 3 0 2 +6959 Nc6 4 0 2 +6961 exd4 1 0 4 +6958 exf4 12 0 4 +6962 Nf6 6 2 8 +6965 Nf6 8 2 10 +6965 Bc5 1 0 4 +6965 d6 2 0 3 +6967 Bc5 3 0 4 +6967 Nc6 2 2 1 +6969 Nc6 5 0 3 +6969 Nf6 2 0 5 +6970 d6 6 0 3 +6974 Nf6 27 1 22 +6974 d6 27 0 14 +6974 Qf6 21 0 9 +6974 Nc6 14 0 14 +6974 h6 5 0 3 +6974 Qe7 4 0 1 +6974 f6 3 0 2 +6974 d5 2 1 2 +6977 Nc6 7 1 10 +6977 Nf6 11 0 7 +6977 d6 2 1 6 +6977 Qf6 4 0 1 +6975 Qf6 13 0 16 +6975 Nf6 13 0 13 +6975 Qh4 12 0 9 +6975 Qe7 11 1 2 +6975 d6 7 1 3 +6978 d6 5 1 4 +6978 Nf6 5 1 2 +6979 Nf6 4 0 2 +6976 exd4 24 3 18 +6976 Bb4 6 0 0 +6976 Bb6 4 0 1 +6981 Nf6 36 2 13 +6981 h6 12 0 2 +6981 Nh6 8 0 3 +6981 Nc6 7 0 2 +6981 a6 5 0 0 +6983 Nf6 8 0 2 +6986 Nf6 4 0 1 +6984 Nf6 10 0 2 +6982 exd4 16 0 8 +6982 f6 10 0 2 +6982 Qe7 3 1 3 +6982 Nc6 3 0 3 +6989 a6 585 35 528 +6989 d6 542 48 485 +6989 Nf6 294 25 275 +6989 Bc5 240 15 218 +6989 Nge7 173 12 157 +6989 Nd4 126 8 98 +6989 Qf6 120 5 94 +6989 Bd6 45 3 49 +6989 f6 31 2 16 +6989 f5 15 2 23 +6989 d5 18 0 8 +6989 Bb4 14 1 10 +6989 h6 13 0 9 +6989 g6 11 0 4 +6989 Qe7 6 0 3 +6989 Nb4 4 0 1 +6989 b6 2 0 3 +6988 Bc5 916 74 965 +6988 Nf6 759 46 700 +6988 h6 672 44 465 +6988 d6 255 18 180 +6988 Nd4 161 9 163 +6988 Be7 124 11 100 +6988 a6 81 0 42 +6988 f6 40 3 27 +6988 Nge7 20 0 32 +6988 g5 15 1 27 +6988 Qf6 23 1 12 +6988 Nh6 24 0 10 +6988 Bb4 16 1 14 +6988 Qe7 17 0 11 +6988 f5 11 1 11 +6988 Bd6 13 2 7 +6988 Na5 10 0 9 +6988 d5 14 0 2 +6988 g6 7 0 8 +6988 b6 7 0 5 +7000 Nf6 0 0 7 +6997 Nf6 8 2 13 +6997 Bc5 6 1 15 +6997 d6 4 1 4 +6991 Nf6 357 25 340 +6991 Bc5 212 19 184 +6991 d6 86 8 67 +6991 Bb4 69 7 59 +6991 a6 35 1 29 +6991 h6 14 1 5 +6991 Nge7 9 1 9 +6991 f5 11 0 5 +6991 Nd4 9 0 6 +6991 Be7 7 0 8 +6991 Bd6 5 0 5 +6991 b6 8 0 1 +6991 f6 5 0 3 +6991 g6 3 0 4 +6991 d5 5 1 0 +7001 Nxe5 3 0 6 +6994 Nf6 24 1 33 +6994 Bc5 14 1 27 +6994 d5 7 1 6 +6994 a6 4 0 10 +6994 d6 2 2 6 +6995 Bc5 23 3 15 +6995 Nf6 13 1 23 +6995 d6 6 0 4 +6995 d5 3 0 3 +6992 Nf6 110 8 138 +6992 Bc5 55 2 69 +6992 d6 32 2 27 +6992 d5 11 0 20 +6992 a6 3 1 6 +6992 Nge7 4 1 3 +6992 g6 4 0 2 +6992 Be7 3 0 3 +6996 Nf6 13 1 18 +6996 Bc5 8 0 15 +6996 d6 2 0 3 +6993 Bc5 46 1 47 +6993 Nf6 26 2 60 +6993 d6 13 0 20 +6993 h6 13 1 8 +6993 d5 12 0 9 +6993 Bb4 6 0 2 +6993 a6 4 0 2 +6990 exd4 818 77 824 +6990 d6 98 6 63 +6990 Nf6 54 1 26 +6990 Nxd4 44 5 29 +6990 d5 30 5 17 +6990 Bd6 22 3 25 +6990 f6 34 1 14 +6990 Qf6 19 1 18 +6990 Bb4 17 0 15 +6990 f5 3 0 4 +6990 Qe7 3 0 2 +6990 Bc5 5 0 0 +6999 Nf6 8 1 5 +6999 Bc5 2 1 4 +6998 Nf6 6 1 9 +6998 Bc5 4 0 6 +7012 c6 3 0 3 +7005 Nc6 65 2 53 +7005 Nxe4 61 1 45 +7005 Bc5 46 1 23 +7005 d6 32 0 10 +7005 d5 21 1 8 +7005 c6 12 0 10 +7005 h6 11 0 5 +7005 Bd6 3 0 4 +7005 Be7 3 0 4 +7005 Qe7 5 0 2 +7008 Nc6 9 0 14 +7003 Nc6 215 21 165 +7003 Bb4 81 4 74 +7003 d6 57 3 43 +7003 d5 35 0 34 +7003 Bc5 34 0 17 +7003 c6 13 0 4 +7003 Bd6 9 0 1 +7003 Be7 4 0 3 +7003 Qe7 1 2 2 +7003 b6 4 0 1 +7009 h6 6 0 5 +7009 d5 6 0 1 +7004 Qe7 111 12 116 +7004 Nxe4 147 8 67 +7004 d6 74 9 72 +7004 Nc6 10 1 9 +7004 Bc5 11 1 8 +7004 d5 5 0 6 +7004 Bd6 6 0 2 +7010 Nc6 3 0 7 +7010 Bc5 2 1 2 +7011 Nxe4 2 0 4 +7006 Nc6 63 6 61 +7006 d5 20 2 30 +7006 d6 24 2 11 +7006 Bc5 19 3 10 +7006 Bd6 4 0 4 +7007 exd4 42 2 37 +7007 Nxe4 22 2 18 +7007 d5 5 0 4 +7007 d6 4 0 3 +7007 Nc6 3 0 2 +7015 Nf6 4 0 3 +7015 h6 3 0 2 +7016 Nf6 5 1 2 +7018 Bc5 99 5 68 +7018 h6 13 0 11 +7018 c6 5 1 7 +7018 d6 6 0 4 +7018 g5 5 0 4 +7018 Nc6 6 0 0 +7018 Nh6 3 0 2 +7018 a6 3 0 2 +7023 Bc5 4 1 5 +7019 c6 95 3 52 +7019 Bc5 28 0 14 +7019 d6 4 0 2 +7019 Bb4 3 0 2 +7024 Bc5 2 2 6 +7022 Bc5 10 0 4 +7021 Bc5 17 0 13 +7021 h6 13 1 9 +7020 exd4 43 6 37 +7020 d6 17 0 10 +7020 Nc6 12 1 6 +7020 Bb4 3 0 3 +7028 Bb7 5 0 1 +7031 d6 4 0 3 +7033 d5 6 0 6 +7034 Qe7 2 0 4 +7044 c6 1 0 4 +7042 dxe4 2 0 5 +7039 d4 12 0 5 +7039 dxe4 5 0 5 +7038 dxe4 30 0 9 +7038 Bd6 6 0 12 +7038 f6 3 0 2 +7038 Qe7 3 0 2 +7040 dxe4 4 2 8 +7041 dxe4 9 0 9 +7037 Qxd5 75 2 33 +7037 e4 28 2 27 +7037 c6 7 0 5 +7037 Bg4 6 0 1 +7050 c6 70 7 57 +7050 Bd7 20 2 24 +7050 Nc6 2 0 4 +7045 h6 352 23 284 +7045 Bg4 383 19 253 +7045 Nc6 180 9 147 +7045 Be7 149 6 142 +7045 Nf6 146 7 84 +7045 Be6 129 10 77 +7045 f5 65 1 40 +7045 c6 53 3 42 +7045 c5 36 0 45 +7045 Qf6 37 2 22 +7045 Qe7 26 2 23 +7045 f6 36 0 14 +7045 a6 27 2 15 +7045 Nh6 14 0 5 +7045 g6 16 0 3 +7045 Nd7 11 0 4 +7045 Bd7 9 0 2 +7045 Ne7 4 0 3 +7056 Bg4 3 0 4 +7052 Nf6 13 1 3 +7052 Nc6 6 1 4 +7052 Bg4 5 0 5 +7052 h6 2 1 2 +7047 Bg4 119 11 74 +7047 Nf6 90 9 70 +7047 c6 74 3 42 +7047 Nc6 57 2 51 +7047 c5 27 3 23 +7047 Be7 24 0 24 +7047 Be6 20 1 15 +7047 h6 15 1 19 +7047 f5 13 1 18 +7047 a6 10 0 7 +7047 f6 9 0 2 +7047 g6 8 0 2 +7047 b6 5 0 5 +7047 Nd7 1 0 5 +7055 Nf6 2 1 4 +7055 Be7 4 0 2 +7055 Bg4 4 0 1 +7049 Bg4 32 1 21 +7049 Nc6 14 1 15 +7049 Nf6 18 0 8 +7049 f5 7 1 9 +7049 Be7 8 0 9 +7049 h6 6 0 4 +7049 Be6 6 0 3 +7049 c5 2 0 6 +7049 Nd7 4 0 3 +7053 Nf6 5 3 1 +7053 Nc6 4 1 3 +7053 Be6 3 1 3 +7053 c5 1 1 4 +7053 Bg4 2 0 4 +7051 Bg4 33 1 11 +7051 Nc6 18 2 10 +7051 h6 7 0 12 +7051 Nf6 4 1 8 +7051 Be7 5 0 4 +7051 f5 2 0 4 +7046 exd4 498 44 412 +7046 Bg4 188 7 91 +7046 Nc6 101 6 59 +7046 f6 62 2 22 +7046 Nd7 46 4 29 +7046 Nf6 36 2 16 +7046 Qe7 20 2 15 +7046 Be7 19 1 13 +7046 f5 17 1 12 +7046 Qf6 15 0 7 +7046 c5 8 0 2 +7046 c6 6 1 3 +7046 h6 6 2 0 +7046 Be6 7 0 1 +7046 g6 5 0 2 +7046 d5 5 0 1 +7054 Bg4 4 0 5 +7054 Nf6 2 0 7 +7048 Nf6 79 8 68 +7048 Nc6 28 2 25 +7048 h6 19 3 20 +7048 f5 16 1 16 +7048 Be7 15 1 15 +7048 a6 13 0 9 +7048 Be6 11 0 9 +7048 c6 7 2 5 +7048 c5 8 0 5 +7048 f6 5 0 1 +7048 g6 1 0 5 +7048 Qf6 3 0 3 +7048 b6 4 0 1 +7062 fxe4 4 0 2 +7061 Nf6 8 0 4 +7061 fxe4 4 1 5 +7061 Nc6 4 0 2 +7059 Nf6 18 2 10 +7059 Nc6 17 1 9 +7059 Qf6 4 2 6 +7059 fxe4 9 0 2 +7059 d6 2 0 8 +7059 Bc5 2 2 2 +7059 Qe7 4 0 1 +7060 Nf6 9 0 6 +7060 Nc6 3 0 7 +7063 fxe4 1 1 3 +7058 e4 35 1 42 +7058 Nf6 14 1 35 +7058 Nc6 3 1 9 +7058 Bc5 7 0 5 +7058 d6 5 0 3 +7064 Ne7 20 0 7 +7064 c6 19 1 6 +7064 Nh6 20 0 5 +7064 Nc6 19 0 0 +7064 d6 12 1 2 +7064 Bc5 9 0 4 +7064 a6 4 0 2 +7066 c6 10 0 5 +7066 d6 9 0 0 +7066 Nc6 7 0 1 +7066 Bb4 2 0 3 +7066 a6 2 0 3 +7068 g5 4 0 1 +7067 fxe5 42 0 6 +7065 d6 26 1 7 +7065 Nc6 16 1 7 +7065 exd4 12 0 3 +7065 d5 6 0 3 +7065 Bd6 2 1 3 +7074 Bg7 4 1 2 +7073 Bg7 3 0 3 +7080 Nf6 6 2 9 +7080 Qf6 1 0 4 +7082 Nf6 29 0 33 +7082 Qf6 4 0 4 +7082 f6 2 0 3 +7083 Nf6 12 0 18 +7083 Bc5 4 1 1 +7083 d6 2 0 3 +7084 Nc6 15 0 15 +7084 Bc5 8 0 8 +7084 d6 4 0 9 +7084 c6 4 0 3 +7084 Be7 2 0 3 +7085 Nc6 9 1 13 +7085 h6 7 1 8 +7085 d5 4 0 6 +7085 d6 6 1 2 +7085 Bc5 2 0 5 +7090 Bc5 2 0 7 +7090 Qxf3 4 1 1 +7093 Nf6 7 0 9 +7093 f6 5 0 1 +7093 Qe7 1 0 4 +7093 Be6 1 0 4 +7094 Nc6 2 0 3 +7096 Be7 3 0 4 +7096 Qe7 6 0 0 +7097 g6 4 0 1 +7099 Nf6 14 5 32 +7099 g6 8 1 5 +7099 d6 4 1 8 +7098 g6 121 11 189 +7098 Qf6 28 2 29 +7098 Qe7 16 4 34 +7098 Nh6 14 0 6 +7098 Nf6 10 0 6 +7102 Nf6 8 0 3 +7101 Nf6 6 0 12 +7101 g6 1 1 3 +7100 Nf6 13 1 19 +7100 g6 3 0 3 +7105 Nc6 2 0 3 +7105 Bc5 1 0 4 +7104 Be7 78 6 67 +7104 Qe7 29 2 30 +7107 g6 3 0 5 +7108 Nf6 3 0 3 +7106 Nf6 4 0 2 +7106 d6 2 0 3 +7106 Nc6 2 0 3 +7111 Bc5 11 0 15 +7111 g6 10 1 14 +7112 Bc5 9 1 5 +7112 g6 4 1 2 +7112 c6 3 0 3 +7110 d6 9 3 11 +7110 Nc6 10 0 12 +7110 g6 10 2 5 +7110 Bc5 3 0 5 +7113 Bc5 2 1 8 +7113 g6 5 0 4 +7117 c6 10 1 14 +7117 Bd7 10 1 6 +7116 g6 62 3 72 +7116 Qe7 19 1 19 +7116 Qf6 13 1 13 +7116 Nh6 14 0 9 +7116 Qd7 5 0 9 +7116 Be6 8 0 0 +7116 Nf6 4 0 1 +7118 Nf6 4 1 7 +7120 Qe7 32 1 5 +7120 Be7 18 0 1 +7120 Ne7 8 0 2 +7122 Nf6 2 1 5 +7123 Nc6 2 0 8 +7123 d5 4 0 1 +7125 d4 5 0 0 +7128 d6 4 0 6 +7129 Nf6 8 1 4 +7129 Bc5 0 1 4 +7129 d6 1 0 4 +7131 Nc6 2 0 4 +7130 Nc6 6 0 4 +7130 Bc5 1 1 5 +7132 Nf6 5 1 4 +7134 d6 3 0 2 +7133 exd4 7 1 8 +7136 exd4 6 0 7 +7138 Nc6 2 0 8 +7138 Bc5 3 0 5 +7138 d5 5 0 3 +7140 exd4 5 0 3 +7149 Nf6 5 2 1 +7148 d6 5 0 6 +7148 Nc6 3 0 3 +7151 Bc5 19 0 18 +7151 Nf6 13 1 6 +7151 d6 9 1 1 +7151 Bb4 2 0 3 +7152 Nf6 1 0 4 +7154 Nf6 2 0 3 +7155 Bb4 6 1 7 +7155 Bc5 8 0 1 +7155 Nc6 3 0 4 +7155 d6 3 0 2 +7156 Nc6 3 1 7 +7156 Bc5 5 1 4 +7162 Nc6 14 0 6 +7162 Nf6 7 1 2 +7162 Be6 4 0 2 +7162 c6 2 0 3 +7165 Bc5 4 0 6 +7168 d6 2 0 5 +7168 Nf6 4 0 2 +7173 d6 2 0 4 +7167 d6 9 0 20 +7167 Nc6 4 0 11 +7167 Nf6 2 0 4 +7169 Nf6 0 0 7 +7183 Nf6 3 0 2 +7182 Nf6 8 0 4 +7177 Nf6 10 1 13 +7177 Bb4 8 0 9 +7177 Bc5 6 1 9 +7177 d6 6 1 6 +7177 Nd4 3 0 2 +7176 Bc5 21 1 18 +7176 Nf6 10 0 21 +7176 d6 17 1 11 +7176 Bb4 4 0 1 +7184 Nf6 1 1 5 +7180 Nf6 9 0 12 +7180 Bc5 1 0 4 +7178 Nf6 16 0 1 +7178 Bc5 7 2 5 +7178 d6 10 0 2 +7185 Bc5 0 0 5 +7179 exf4 8 1 4 +7179 d6 2 0 7 +7181 Nf6 3 0 7 +7181 Bc5 4 0 5 +7194 Bc5 3 0 5 +7194 d5 1 0 5 +7192 Be7 2 2 8 +7192 h6 4 0 6 +7190 d5 5 1 7 +7190 Bc5 7 0 5 +7190 Bb4 7 0 3 +7190 Nc6 5 0 3 +7197 Bc5 4 0 1 +7189 Nc6 15 0 27 +7189 Bc5 8 0 9 +7189 d6 10 0 4 +7189 d5 3 1 4 +7195 Bc5 5 0 3 +7196 d5 4 0 4 +7191 exf4 3 1 5 +7191 Nc6 3 0 5 +7191 d6 4 0 3 +7193 d5 5 0 4 +7193 Bc5 3 1 1 +7201 h6 3 0 5 +7201 Bc5 3 0 2 +7206 d4 6 0 10 +7207 dxe4 1 0 7 +7205 Qxd5 24 1 9 +7205 Nf6 2 0 5 +7215 Nc6 3 1 1 +7211 Nf6 10 0 7 +7211 Nc6 9 0 1 +7211 f5 4 0 3 +7211 c6 3 1 2 +7210 Nc6 9 0 10 +7210 Nf6 6 0 12 +7210 c5 6 0 8 +7210 Bg4 2 0 8 +7210 f5 4 0 4 +7210 f6 3 0 4 +7210 h6 3 0 3 +7212 c5 4 0 2 +7212 Nf6 5 0 1 +7212 Nc6 3 0 2 +7213 exf4 3 0 5 +7214 Be7 1 1 4 +7214 Nf6 2 0 3 +7222 Nc6 3 0 5 +7222 d6 3 0 2 +7226 Ba5 4 0 1 +7228 Qe7 4 0 1 +7227 Nf6 5 1 5 +7229 Bxe5 4 0 4 +7231 exd4 20 1 7 +7231 d6 7 1 5 +7233 exd4 5 1 1 +7230 Nd4 55 2 22 +7230 Nce7 36 0 36 +7230 Nb8 14 0 8 +7230 Nb4 13 0 3 +7230 Na5 3 0 2 +7232 Nxe5 18 0 24 +7236 exd4 3 0 3 +7235 Nxe4 3 0 3 +7235 d6 5 0 0 +7234 Nxe4 24 3 12 +7240 Qxe5 3 0 3 +7242 Nc6 7 0 1 +7242 exd4 5 0 1 +7244 Bc5 3 0 6 +7243 Qxe5 8 2 3 +7245 Bb4 4 1 5 +7246 Qxe4 11 0 3 +7248 Nc6 4 0 1 +7249 dxe4 15 2 5 +7249 d4 6 1 7 +7249 Be6 4 1 2 +7250 Qxd5 4 1 3 +7253 exd4 8 1 2 +7253 Nc6 4 0 3 +7253 Bg4 5 0 2 +7252 Nf6 16 1 7 +7252 c6 10 0 4 +7252 f5 3 0 3 +7251 dxe5 55 4 21 +7251 Nc6 12 0 9 +7251 f6 5 0 0 +7260 Nc6 6 0 4 +7258 Nc6 60 3 34 +7258 c5 44 1 19 +7258 d5 6 1 2 +7258 d6 5 0 3 +7258 Bc5 4 0 3 +7256 Nc6 257 23 493 +7256 d6 20 1 19 +7256 c5 20 1 11 +7256 Nf6 14 0 13 +7256 Qf6 9 1 9 +7256 b6 6 0 4 +7256 Qe7 2 0 3 +7256 f6 3 0 2 +7257 dxc3 376 14 200 +7257 Nc6 33 0 17 +7257 d5 16 3 18 +7257 Nf6 12 1 12 +7257 d3 9 0 12 +7257 d6 9 0 7 +7257 c5 9 0 4 +7257 Qe7 5 0 2 +7257 Bc5 3 1 1 +7259 Nc6 5 0 8 +7265 d6 3 0 3 +7266 d6 4 0 4 +7264 fxe5 25 0 7 +7269 Nf6 6 0 12 +7270 Nf6 0 1 4 +7279 Qxd5 3 0 4 +7280 Nc6 2 0 4 +7281 Nc6 3 0 2 +7283 d6 35 2 31 +7283 Nc6 5 1 8 +7283 exf4 9 0 2 +7285 exf4 5 0 3 +7285 Qe7 6 0 0 +7285 Nf6 4 0 1 +7286 Bxe5 2 0 3 +7289 Nf6 3 0 5 +7289 exf4 4 0 3 +7287 d6 119 5 66 +7287 exf4 124 0 62 +7287 Bd6 17 1 21 +7287 Bc5 18 0 17 +7287 d5 12 0 22 +7287 Nf6 12 1 6 +7287 f5 2 0 10 +7287 f6 7 0 5 +7288 Nxe5 18 2 13 +7292 exf4 8 1 2 +7293 Nxe4 8 0 5 +7295 exf4 6 1 0 +7296 Qxf4 8 1 4 +7296 exf4 3 0 3 +7297 Qf6 29 1 21 +7297 Qe7 21 0 13 +7297 Qd8 8 0 4 +7301 dxe4 0 0 5 +7299 dxe4 13 0 15 +7299 exf4 4 0 2 +7298 e4 35 5 28 +7298 exf4 30 1 29 +7298 Qxd5 18 0 12 +7298 c6 3 0 5 +7300 Qh4 1 0 9 +7300 dxe4 5 0 3 +7303 exf4 4 0 3 +7302 Nc6 64 2 47 +7302 Bg4 59 5 28 +7302 exf4 55 1 27 +7302 f6 19 0 8 +7302 Nf6 14 0 5 +7302 Nd7 14 0 1 +7302 f5 4 0 1 +7304 dxe5 10 0 7 +7308 d6 10 1 6 +7308 Qh4 5 0 8 +7308 Be7 6 0 4 +7308 Nf6 5 0 4 +7308 Nc6 4 0 3 +7307 d6 188 8 109 +7307 g5 156 8 127 +7307 Nc6 158 2 70 +7307 Be7 113 3 82 +7307 Nf6 86 3 49 +7307 d5 74 1 49 +7307 Bc5 84 2 31 +7307 h6 39 2 27 +7307 f6 32 0 13 +7307 Qe7 24 0 14 +7307 Bd6 24 0 7 +7307 Qf6 12 0 5 +7307 b6 5 0 7 +7307 Ne7 8 0 4 +7307 c6 5 0 4 +7307 g6 4 0 3 +7309 d6 1 0 6 +7309 Qh4 5 0 1 +7309 Nf6 4 0 1 +7310 d5 6 0 4 +7312 exf4 9 0 3 +7312 e4 2 1 3 +7313 fxe4 0 0 5 +7314 Nc6 6 0 7 +7314 d6 12 0 1 +7315 fxe5 12 0 0 +7319 Bc5 0 0 7 +7319 Nf6 1 0 5 +7320 d5 0 1 4 +7320 Nc6 2 0 3 +7326 d5 2 0 4 +7326 b5 3 0 3 +7330 d5 5 0 0 +7331 Ng8 2 0 3 +7333 g6 5 0 2 +7336 Bb7 5 0 3 +7337 Bb7 2 1 3 +7335 Bb7 4 0 6 +7343 d5 4 1 7 +7346 exd5 99 7 143 +7350 c6 2 0 3 +7348 c6 12 1 2 +7348 a6 4 0 2 +7348 b6 3 1 2 +7348 Bd7 4 0 1 +7352 exd5 0 0 5 +7358 Nf6 5 0 0 +7359 Ng6 4 0 5 +7364 Bb7 3 0 8 +7365 Bb7 2 0 3 +7366 Nc6 7 1 6 +7369 d5 2 2 3 +7370 d5 8 0 0 +7373 d4 4 0 6 +7373 Nf6 3 0 3 +7373 dxe4 4 0 2 +7375 d4 4 0 5 +7372 dxe4 6 0 7 +7372 Nf6 3 0 5 +7372 Bb4 4 0 1 +7374 c5 3 0 4 +7371 exd5 60 8 92 +7378 g6 1 0 8 +7379 Bd7 3 0 2 +7382 exd5 7 0 8 +7384 Bb6 15 1 9 +7387 Nf6 2 0 5 +7387 b6 2 0 3 +7392 a6 6 0 2 +7393 d5 3 0 2 +7391 Bb4 4 1 1 +7390 Nf6 8 0 12 +7390 d5 6 1 4 +7390 b6 2 0 3 +7390 Bb4 3 0 2 +7398 Ng6 4 0 5 +7397 Ng6 12 0 4 +7396 Ng6 16 1 23 +7396 g6 4 0 2 +7399 Ng6 1 0 4 +7404 d5 4 0 1 +7402 Bc5 6 0 7 +7402 d5 8 0 3 +7402 Nc6 6 1 2 +7402 Bb4 5 0 3 +7403 d5 4 0 2 +7401 Nd5 20 1 20 +7401 Ng8 16 0 5 +7401 Ng4 7 0 3 +7401 Ne4 4 0 2 +7410 g6 4 0 1 +7408 g6 4 0 5 +7409 g6 2 0 6 +7411 g6 3 0 2 +7407 g6 14 3 8 +7421 Bb7 1 0 6 +7418 Bb7 9 0 19 +7417 Bb7 17 1 23 +7420 Bb7 7 0 2 +7416 Bb7 44 1 61 +7419 Bb7 4 1 8 +7423 Nc6 18 1 15 +7423 a6 11 1 14 +7423 d5 11 0 10 +7424 Nc6 18 0 17 +7424 a6 6 0 9 +7424 d5 6 0 6 +7424 b6 5 1 3 +7426 Nc6 3 0 5 +7426 a6 5 0 0 +7428 Nc6 4 0 4 +7427 d5 4 0 3 +7427 Nc6 3 0 3 +7422 cxd4 24 1 46 +7422 d5 10 0 11 +7422 a6 8 0 6 +7422 Nc6 7 0 4 +7422 d6 6 0 3 +7425 d5 7 0 5 +7425 Nc6 2 0 4 +7434 d5 11 1 15 +7435 d5 13 1 8 +7433 d5 34 1 35 +7433 b5 5 0 3 +7433 h6 2 0 5 +7446 c6 4 0 7 +7446 Bd7 1 0 5 +7444 dxe4 3 1 6 +7444 Nf6 3 0 2 +7441 d4 26 1 35 +7441 dxe4 18 1 13 +7441 Nf6 10 1 15 +7441 c5 4 0 8 +7441 c6 3 1 2 +7442 dxe4 8 0 4 +7442 Bd6 3 0 5 +7442 f6 6 0 1 +7442 c5 5 0 1 +7443 dxe4 8 2 17 +7443 c5 0 0 5 +7445 dxe4 11 1 8 +7440 c5 100 9 176 +7440 Nc6 19 3 14 +7440 f6 18 1 16 +7440 Ne7 10 0 14 +7440 a6 2 0 10 +7440 d4 2 0 9 +7440 c6 7 0 2 +7440 Bc5 5 0 3 +7439 exd5 380 44 564 +7439 Qxd5 63 2 37 +7439 Nf6 4 0 1 +7453 c6 1 0 5 +7453 Bd7 3 0 2 +7450 Nd7 5 1 9 +7450 c6 6 2 3 +7450 b6 10 0 1 +7450 Bd7 3 1 4 +7450 Nf6 5 0 2 +7450 Be7 5 0 1 +7451 Bd7 4 1 7 +7451 c6 7 0 3 +7451 b6 3 0 4 +7451 Nf6 5 0 2 +7451 Nd7 2 0 4 +7451 g6 3 0 2 +7449 Nd7 20 0 16 +7449 Bd7 17 1 15 +7449 c6 19 2 12 +7449 Nf6 19 1 8 +7449 b6 13 0 4 +7449 Be7 8 0 4 +7449 Nc6 1 0 7 +7449 Ne7 4 0 2 +7449 d5 4 0 1 +7449 g6 2 0 3 +7457 exf5 10 0 3 +7463 Bg7 7 1 8 +7464 Bg7 7 2 2 +7462 Bg7 21 0 14 +7465 Bg7 3 0 2 +7467 a6 3 0 3 +7470 Qxd5 3 0 7 +7472 exd5 1 1 8 +7474 Nc6 1 1 4 +7476 c5 2 0 4 +7477 Bb7 4 0 5 +7480 dxe4 3 0 12 +7481 Nc6 4 0 2 +7481 c5 2 0 4 +7479 exd5 6 0 12 +7479 Qxd5 3 0 3 +7482 c5 2 0 4 +7483 exd5 2 0 5 +7485 Nc6 1 0 4 +7486 cxd4 2 0 3 +7488 d5 4 0 1 +7487 d5 7 1 4 +7491 dxe4 3 0 3 +7490 exd5 7 0 8 +7489 exd5 16 2 6 +7493 c6 2 0 3 +7496 g6 2 1 7 +7498 g6 5 1 3 +7497 g6 1 0 6 +7502 d5 2 0 3 +7504 d4 8 0 12 +7504 Nf6 0 0 8 +7504 Bb4 2 0 3 +7504 dxe4 4 0 1 +7507 dxe4 3 1 9 +7508 dxe4 5 1 1 +7505 c5 6 0 11 +7503 exd5 21 1 42 +7503 Qxd5 5 0 6 +7514 Bxd2 3 0 2 +7513 Ba5 7 0 2 +7515 b6 4 0 2 +7515 d6 3 0 2 +7518 Nf6 8 0 2 +7518 d5 6 0 2 +7518 Bb4 6 0 0 +7518 d6 3 0 3 +7519 exd5 6 0 5 +7527 a6 5 0 2 +7525 Ng6 5 0 17 +7525 a6 4 0 2 +7525 g6 5 1 0 +7523 Ng6 12 1 21 +7529 Ng6 1 1 3 +7524 Ng6 8 0 6 +7524 a6 4 0 4 +7524 c6 2 0 5 +7524 b6 4 0 1 +7528 Ng6 1 0 4 +7526 g6 7 1 10 +7533 d5 5 0 1 +7534 Be7 5 0 4 +7532 d5 10 0 4 +7532 Bb4 9 0 0 +7532 b6 1 1 3 +7531 Nd5 42 0 16 +7531 Ng8 19 1 10 +7531 Ne4 11 1 7 +7537 g6 5 0 2 +7535 g6 6 0 9 +7536 g6 14 0 1 +7542 Bb4 12 1 14 +7542 b6 4 1 2 +7543 Qxe4 4 0 5 +7546 Qe4 2 1 2 +7553 Bb7 11 0 10 +7552 Bb7 20 2 14 +7550 Bb7 32 3 25 +7557 Bb7 3 1 3 +7551 Bb7 24 2 25 +7556 Bb7 3 0 7 +7554 Bb7 8 0 10 +7555 Bb7 9 0 7 +7558 Bb7 4 0 3 +7564 cxd4 4 1 2 +7564 Nc6 2 1 2 +7560 cxd4 37 2 30 +7560 d5 9 0 16 +7560 Qc7 1 1 7 +7560 Nc6 4 0 4 +7560 a6 6 1 1 +7562 cxd4 17 1 22 +7562 d5 9 0 7 +7562 Nc6 6 0 4 +7562 Nf6 3 0 3 +7562 d6 2 0 3 +7561 exd5 26 1 24 +7561 d6 14 0 22 +7561 e5 8 0 6 +7563 Bxc5 14 0 16 +7565 cxd4 1 0 6 +7571 d5 3 0 3 +7569 d5 14 1 8 +7566 d5 21 1 19 +7566 h6 4 0 2 +7566 b5 4 0 2 +7567 d5 30 2 14 +7567 a6 5 0 5 +7572 cxd5 2 1 3 +7568 d5 8 0 9 +7568 d6 5 2 4 +7570 d5 8 0 7 +7578 Nf6 8 0 4 +7578 c5 3 0 4 +7578 dxe4 3 0 2 +7576 Nf6 70 2 54 +7576 Bb4 53 2 61 +7576 dxe4 48 6 39 +7576 c5 30 1 22 +7576 c6 11 1 7 +7576 Nc6 4 0 8 +7576 Ne7 7 0 0 +7577 Nf6 22 1 22 +7577 c5 20 4 14 +7577 dxe4 13 2 7 +7577 Nc6 6 0 4 +7579 dxe4 3 0 6 +7574 c5 380 26 515 +7574 f6 42 1 43 +7574 Nc6 47 0 30 +7574 Ne7 22 0 24 +7574 c6 12 2 5 +7574 a6 7 0 8 +7574 Bd7 7 2 4 +7574 b6 5 0 4 +7574 Bb4 5 1 2 +7574 Be7 4 0 2 +7574 h6 3 1 2 +7575 exd5 359 29 360 +7575 Qxd5 61 3 45 +7575 Ne7 4 0 1 +7586 c6 7 1 3 +7586 Bd7 5 0 3 +7586 Nd7 6 0 1 +7586 Nf6 4 0 1 +7584 c6 10 1 3 +7584 Bd7 11 0 1 +7584 Be7 7 0 1 +7584 Nf6 5 0 2 +7584 Nd7 4 0 2 +7582 c6 13 2 18 +7582 Bd7 12 1 5 +7582 Nf6 6 0 8 +7582 Nd7 7 1 4 +7582 Ne7 9 0 3 +7582 g6 5 0 6 +7582 h6 5 1 3 +7582 b6 5 0 2 +7582 Be7 3 0 2 +7583 c6 16 2 14 +7583 Nd7 11 1 10 +7583 Bd7 11 0 6 +7583 Nf6 6 0 6 +7583 b6 6 1 5 +7583 g6 4 1 4 +7583 Be7 4 0 3 +7587 e5 1 0 4 +7585 c6 11 0 0 +7585 Qh4 6 0 2 +7585 b6 5 0 2 +7585 Nf6 5 0 0 +7592 exf5 3 0 2 +7595 Bg7 15 0 3 +7597 Bg7 5 0 3 +7598 Bg7 6 0 2 +7596 Bg7 7 0 1 +7602 Bb6 6 0 4 +7604 d6 7 1 2 +7603 d5 6 0 2 +7603 f6 5 1 0 +7603 Qh4 3 0 2 +7603 d6 3 0 2 +7603 Bb4 3 1 1 +7607 Qe4 7 0 0 +7609 Bb7 1 0 4 +7608 Bb7 4 0 11 +7615 c5 42 1 53 +7615 Nc6 7 1 2 +7615 Ne7 4 0 4 +7615 f6 3 0 3 +7615 c6 3 0 2 +7616 cxd6 9 3 15 +7616 Bxd6 10 0 9 +7616 Qxd6 3 0 4 +7618 dxe5 12 0 4 +7618 Nc6 3 0 4 +7620 dxe5 6 4 15 +7620 d5 3 0 3 +7619 Bxd6 10 2 17 +7619 cxd6 3 0 4 +7621 dxe5 7 0 8 +7622 Nxf6 2 0 4 +7624 Bg7 4 0 4 +7625 g6 1 0 5 +7627 dxe4 1 0 4 +7626 exd5 2 0 11 +7632 a6 3 1 2 +7633 Nf6 4 0 1 +7634 g6 11 2 10 +7635 g6 3 0 4 +7636 Nd5 2 0 5 +7639 g6 7 0 5 +7640 Qd8 9 1 16 +7640 Qf6 3 0 5 +7641 Bb7 14 0 13 +7642 Bb7 3 0 9 +7643 Nc6 7 0 12 +7643 d5 6 0 10 +7644 d5 9 1 12 +7648 dxe4 6 0 7 +7646 c5 51 4 91 +7646 f6 13 2 11 +7646 Ne7 6 1 3 +7646 a6 1 0 8 +7646 Nc6 4 0 4 +7646 d4 1 0 5 +7646 b6 3 0 2 +7646 Bc5 2 0 3 +7647 exd5 57 2 76 +7647 Qxd5 11 0 10 +7650 Nd7 9 0 3 +7650 c6 6 1 3 +7650 g6 2 1 4 +7650 Ne7 3 1 1 +7650 Nf6 3 0 2 +7650 b6 3 0 2 +7650 Bd7 4 0 1 +7650 Be7 5 0 0 +7652 Bg7 7 0 2 +7653 dxe4 1 0 6 +7653 Nf6 1 0 4 +7655 dxe5 2 0 3 +7658 d5 4 1 9 +7657 d5 2 0 8 +7656 d5 10 0 6 +7662 d5 2 0 3 +7661 d5 1 0 5 +7659 d5 6 1 5 +7660 h6 4 0 3 +7660 d5 5 0 1 +7665 d5 10 0 18 +7667 d5 8 0 3 +7668 h5 6 0 6 +7671 Nc6 4 0 2 +7670 h6 1 0 6 +7672 d5 4 0 5 +7673 g4 6 0 4 +7674 d5 61 1 47 +7681 Kxf7 6 0 4 +7682 e6 2 1 2 +7677 e6 12 1 7 +7677 d6 6 0 10 +7677 Nf6 2 0 3 +7676 e6 47 2 38 +7676 Nf6 3 0 2 +7679 e6 7 0 4 +7679 d6 1 0 9 +7678 e6 9 1 4 +7678 Nc6 1 1 3 +7680 e6 4 1 4 +7680 d6 1 0 4 +7685 e6 3 1 4 +7684 e6 9 0 4 +7684 Nc6 1 0 5 +7684 d6 1 2 3 +7687 d6 6 0 1 +7698 c6 1 1 3 +7692 e6 28 2 27 +7692 d6 26 1 26 +7692 b6 10 2 8 +7692 Nf6 9 1 5 +7692 c6 6 0 3 +7692 c5 1 2 5 +7692 Nh6 3 1 2 +7693 d6 11 0 15 +7693 e6 13 0 8 +7693 Nf6 6 0 2 +7693 c6 2 0 4 +7693 b6 3 0 2 +7694 d6 10 1 8 +7694 e6 6 1 3 +7691 d6 50 3 37 +7691 e6 39 4 25 +7691 b6 20 1 17 +7691 c6 8 0 7 +7691 Nf6 8 1 4 +7691 c5 1 2 9 +7691 Nh6 5 0 2 +7691 h6 3 0 2 +7691 Nc6 2 0 3 +7695 d6 5 1 2 +7695 b6 2 0 3 +7700 e6 11 1 20 +7708 e6 3 0 4 +7707 d6 3 0 4 +7706 e6 4 0 8 +7706 b6 5 1 3 +7715 d6 13 1 19 +7715 e6 14 0 6 +7715 b6 7 1 3 +7715 Nf6 5 0 1 +7717 d6 26 1 10 +7717 e6 8 1 7 +7717 Nc6 2 0 4 +7717 c5 2 0 4 +7717 c6 2 0 4 +7713 d6 59 5 50 +7713 e6 39 1 22 +7713 b6 10 0 11 +7713 d5 8 0 7 +7713 Nf6 12 2 1 +7713 c6 8 0 7 +7713 Nc6 4 1 7 +7713 Nh6 9 0 0 +7713 c5 3 0 4 +7716 d6 18 2 19 +7716 e6 6 1 7 +7716 c5 3 1 9 +7716 b6 4 0 4 +7719 d6 12 2 15 +7719 e6 7 2 8 +7719 c6 5 0 0 +7719 Nc6 3 0 2 +7714 d6 23 1 32 +7714 e6 22 1 19 +7714 c5 4 0 12 +7714 b6 5 1 5 +7714 Nh6 6 0 2 +7714 d5 3 0 2 +7718 d6 17 1 19 +7718 e6 9 0 4 +7718 b6 2 0 4 +7718 c5 1 0 4 +7726 d6 8 1 15 +7726 e6 0 1 4 +7726 b6 1 0 4 +7726 c5 2 0 3 +7727 d6 0 1 5 +7728 d6 15 1 12 +7728 e6 15 0 8 +7728 b6 7 0 8 +7728 c6 2 0 6 +7728 Nf6 6 0 0 +7728 c5 1 1 4 +7728 Nc6 3 0 2 +7729 d6 5 3 7 +7729 e6 3 2 1 +7730 d6 2 0 6 +7731 d6 1 0 4 +7735 c5 3 0 5 +7736 d5 4 0 2 +7737 Bg7 4 0 2 +7738 Bb7 3 0 2 +7740 g6 6 0 2 +7740 e6 4 0 2 +7741 g6 3 0 4 +7743 d6 5 0 1 +7745 Nc6 4 0 9 +7747 d5 3 0 2 +7748 Bg7 4 0 2 +7749 Nf6 2 0 3 +7750 e6 3 0 3 +7752 Bxf3 5 0 4 +7752 e6 4 1 1 +7752 Nf6 2 0 3 +7755 Bg4 11 1 2 +7755 Bf5 2 0 3 +7754 Bg4 3 1 9 +7754 Nf6 3 0 4 +7758 e6 3 0 4 +7758 g6 2 0 3 +7762 Nc6 10 0 1 +7764 Nc6 6 0 2 +7763 cxd4 1 0 4 +7761 Nc6 23 2 22 +7761 Nf6 3 0 2 +7765 Bg4 1 0 4 +7767 Nc6 2 0 3 +7767 Nf6 3 0 2 +7766 Nf6 7 1 1 +7766 c5 5 1 2 +7769 Nf6 1 0 5 +7771 Bg7 3 0 2 +7776 Bd7 2 0 3 +7779 d5 4 1 9 +7779 Nf6 1 0 4 +7779 Bc5 3 0 2 +7781 dxe5 2 1 5 +7780 Bxd6 9 1 20 +7782 Bb7 7 0 0 +7786 c5 8 0 2 +7786 Nf6 3 0 2 +7785 Nf6 9 1 7 +7785 c5 10 0 5 +7785 Nc6 3 0 2 +7791 b6 2 0 5 +7791 d6 5 0 0 +7797 Bg7 3 0 2 +7798 c5 2 0 4 +7800 Bb7 3 0 4 +7801 Bb7 11 0 6 +7802 Bb7 1 0 4 +7803 Bb7 3 0 2 +7806 bxc6 0 0 5 +7809 Nf6 0 0 5 +7810 Nf6 1 0 4 +7812 Nc6 3 0 2 +7813 Bg7 4 0 6 +7814 e5 3 0 6 +7814 Nf6 3 0 6 +7814 e6 2 0 4 +7818 Nf6 5 0 1 +7821 Bf5 2 1 2 +7823 e6 2 0 3 +7823 Nc6 2 0 3 +7824 e5 0 0 5 +7830 e5 0 0 6 +7831 e5 4 1 3 +7839 e4 3 0 3 +7836 Nf6 4 0 5 +7838 f5 2 0 3 +7840 e4 5 1 5 +7837 Nf6 4 1 4 +7837 e4 3 0 4 +7846 Nf6 2 0 3 +7852 Nf6 3 1 1 +7845 Nf6 4 0 1 +7854 e5 2 0 3 +7857 Nc6 4 0 8 +7858 Bg4 4 0 2 +7858 Bf5 4 0 1 +7865 Nf6 2 0 3 +7869 Nf6 3 1 1 +7871 d5 2 2 2 +7873 d5 3 0 2 +7872 d5 2 0 4 +7876 Bc5 3 0 4 +7882 e4 3 2 5 +7881 Be6 2 0 3 +7879 Nf6 8 0 4 +7879 e4 4 0 5 +7879 Nc6 2 0 4 +7879 c5 1 0 4 +7880 Nf6 5 0 4 +7884 e4 5 0 3 +7878 e4 8 0 7 +7878 Nf6 3 0 7 +7878 c6 1 0 6 +7878 Nc6 3 0 4 +7883 dxe4 2 0 3 +7883 d4 2 0 3 +7891 exd4 10 0 1 +7891 e4 3 0 5 +7892 d5 3 0 4 +7892 c5 4 0 1 +7893 Nc6 3 0 2 +7895 g6 1 0 4 +7900 Nf6 4 0 2 +7896 Nf6 1 1 11 +7896 Nc6 5 0 4 +7896 c6 2 0 6 +7896 c5 1 1 4 +7899 Nf6 5 0 2 +7898 Nf6 2 1 2 +7897 Nf6 6 0 6 +7897 c5 6 0 0 +7906 Nf6 4 1 0 +7905 c6 2 2 3 +7905 Nf6 0 0 6 +7905 e6 2 1 2 +7910 Qxg5 14 1 12 +7910 Nc6 0 0 7 +7914 Qe7 8 0 8 +7914 Qf5 4 0 4 +7914 Qd8 4 0 3 +7914 exd4 5 0 0 +7914 Qf6 2 0 3 +7918 f4 3 1 1 +7922 Ng3 5 1 5 +7921 Ng3 28 0 7 +7925 Nxd4 17 1 7 +7930 Qa4 12 0 17 +7930 Qe3 2 0 4 +7932 Be3 4 0 1 +7938 e4 3 0 2 +7941 Bg2 5 0 2 +7942 Nxd4 2 0 4 +7945 Bg2 5 0 0 +7944 Bg2 2 0 6 +7947 Nc3 5 1 1 +7949 Nc3 3 0 2 +7952 Nc3 5 0 5 +7953 O-O 3 0 2 +7954 O-O 4 0 4 +7955 O-O 1 0 5 +7957 O-O 5 1 6 +7958 O-O 21 0 20 +7964 O-O 4 0 1 +7961 O-O 8 0 5 +7962 O-O 8 0 2 +7965 cxd4 2 1 4 +7968 Nxc6 5 0 4 +7971 Nxc3 7 1 2 +7973 Nxd4 2 0 5 +7974 Nxd4 2 0 3 +7979 O-O 4 0 2 +7976 O-O 5 0 2 +7978 O-O 1 0 4 +7975 O-O 7 0 5 +7982 O-O 5 0 2 +7983 O-O 7 0 2 +7985 O-O 6 1 8 +7988 O-O 2 0 4 +7987 O-O 5 0 6 +7989 O-O 4 0 1 +7990 O-O 1 0 4 +7992 e3 3 0 2 +7993 e3 6 0 1 +7997 Bxc4 4 0 1 +7996 Nc3 3 0 2 +7998 b4 4 0 2 +7999 fxe3 3 0 2 +8000 Qxc4 6 0 3 +8003 Qxf3 5 0 1 +8004 e3 6 0 1 +8005 Nc3 3 2 1 +8008 Bb5 2 0 5 +8008 Bd3 3 0 3 +8012 Nc3 6 3 3 +8022 Nc3 8 0 4 +8022 cxd5 6 0 1 +8023 Nc3 9 0 0 +8023 cxd5 4 0 1 +8030 Bc4 4 1 5 +8033 Bxf3 5 1 2 +8034 O-O 3 0 3 +8037 O-O 6 0 3 +8037 d4 4 0 1 +8036 d3 15 1 17 +8036 O-O 1 0 10 +8038 O-O 5 0 2 +8040 O-O 3 0 6 +8041 O-O 5 0 5 +8043 O-O 3 2 5 +8039 O-O 5 1 2 +8042 O-O 5 0 4 +8045 O-O 4 0 1 +8046 O-O 14 0 30 +8046 d4 13 2 8 +8047 O-O 6 1 5 +8048 O-O 3 1 2 +8049 O-O 4 0 3 +8049 d4 3 1 2 +8050 O-O 5 0 1 +8054 O-O 2 0 3 +8051 O-O 12 0 12 +8052 O-O 3 1 3 +8053 O-O 2 0 4 +8055 O-O 3 0 4 +8056 Nc3 4 0 1 +8058 O-O 4 0 1 +8059 O-O 3 1 4 +8064 Nc3 4 1 2 +8070 O-O 1 0 4 +8071 O-O 3 0 6 +8074 O-O 1 0 4 +8072 O-O 29 4 41 +8073 O-O 5 1 8 +8076 O-O 3 0 2 +8077 Bc4 1 0 4 +8078 O-O 6 1 7 +8081 O-O 3 0 2 +8080 O-O 3 0 2 +8079 O-O 7 0 3 +8083 Nc3 5 1 0 +8086 d3 3 0 2 +8087 b4 2 1 5 +8088 Qxc4 2 1 6 +8089 Nc3 6 1 7 +8090 Bg2 0 0 5 +8091 Bg2 1 1 4 +8092 Nc3 5 1 2 +8094 Bg2 7 0 0 +8093 Bg2 4 0 5 +8095 Bg2 5 0 1 +8096 c4 4 0 1 +8099 Nd2 2 2 2 +8100 f4 1 1 3 +8101 Nc3 2 0 3 +8102 Ne2 6 0 4 +8104 e4 5 0 1 +8109 Bb5 9 0 5 +8109 Ne2 2 0 4 +8109 f4 4 0 1 +8110 g3 3 1 3 +8112 Bb5 6 0 6 +8113 Bg2 4 0 2 +8115 g3 5 1 2 +8116 Nd2 4 0 1 +8117 Ne2 5 0 0 +8117 f4 2 0 3 +8120 e4 3 0 3 +8122 Nc3 3 2 3 +8124 Nc3 3 0 2 +8123 Nc3 1 0 5 +8126 Bxd4 3 1 3 +8129 f4 4 0 2 +8128 Bb5 2 0 5 +8127 Bb5 27 2 21 +8127 f4 5 0 5 +8127 Ne2 2 1 4 +8130 Bb5 5 0 2 +8132 d3 3 0 3 +8134 Bg2 1 0 13 +8136 Ne2 4 0 2 +8135 Ne2 4 1 2 +8142 g3 6 0 1 +8143 Nd2 3 0 5 +8146 Bg2 4 1 4 +8147 e3 1 0 4 +8151 Bxg7 3 0 3 +8150 b5 5 1 1 +8150 a3 3 0 3 +8154 Bxg7 8 0 3 +8152 a3 4 0 3 +8152 Nc3 1 0 4 +8153 Bb2 3 0 9 +8156 e3 12 0 8 +8158 Nf3 1 0 4 +8159 Nf3 6 0 4 +8160 Nc3 3 0 2 +8161 e3 3 0 2 +8162 cxb5 2 2 4 +8164 Nf3 5 0 2 +8169 e3 7 0 3 +8173 Bg2 4 0 1 +8174 g3 7 0 3 +8174 e4 2 1 7 +8174 Nxd5 0 1 5 +8180 e5 3 0 2 +8179 e5 6 0 2 +8182 g3 1 0 6 +8183 Nf3 11 0 0 +8184 d4 3 1 8 +8186 Bg2 19 1 16 +8188 Bg2 7 2 2 +8189 Nc3 5 0 13 +8191 e4 2 0 3 +8193 Nc3 2 0 3 +8199 g3 3 0 3 +8203 Nf3 4 0 1 +8202 Nf3 5 0 1 +8207 Bg2 3 0 2 +8206 Bg2 5 0 1 +8208 Bg2 1 1 3 +8205 Bg2 5 0 4 +8204 Bg2 7 0 6 +8210 Nf3 0 0 6 +8211 Bg2 2 0 7 +8213 Nxd4 9 0 8 +8214 Nxd4 3 0 2 +8215 Nxd4 3 0 2 +8217 d4 11 1 16 +8218 Bb2 3 0 3 +8219 Nc3 2 0 3 +8220 d3 6 0 0 +8223 Nf3 8 1 1 +8223 g3 4 1 4 +8223 d4 5 0 2 +8224 Nf3 8 0 2 +8226 Nf3 5 0 1 +8222 Nf3 31 0 15 +8222 g3 9 2 8 +8222 d4 4 0 2 +8228 Bb2 6 0 2 +8233 Bg2 5 0 1 +8235 bxc3 6 0 3 +8236 Qxc3 6 0 4 +8237 dxc3 2 1 6 +8238 g3 4 0 2 +8245 Bg2 1 1 5 +8244 Bg2 3 0 3 +8246 d3 4 0 5 +8246 g3 3 0 2 +8249 Nf3 4 0 4 +8251 Nf3 1 0 6 +8250 Nf3 6 0 5 +8253 Bg2 5 0 2 +8252 Bg2 8 1 6 +8254 Bg2 3 0 2 +8255 g3 9 0 14 +8255 a3 3 0 3 +8255 d4 2 0 4 +8256 d4 6 0 0 +8258 Bd2 5 0 2 +8258 Nf3 1 1 3 +8259 Nf3 6 0 6 +8263 Nf3 1 0 4 +8257 Nf3 12 0 4 +8260 cxd5 7 0 4 +8269 d3 6 2 0 +8269 Nd5 3 0 2 +8267 h3 3 2 5 +8272 Nf3 3 0 2 +8268 Nf3 6 0 3 +8274 Bg2 7 0 3 +8276 Bg2 4 0 5 +8275 Bg2 9 0 3 +8278 Bg2 4 1 3 +8273 cxd5 4 2 9 +8277 Bg2 3 0 5 +8281 g3 3 0 2 +8282 Bg2 4 1 1 +8291 Bg2 3 0 2 +8290 Bg2 7 0 1 +8292 Nf3 4 0 2 +8292 g3 2 0 3 +8293 Bg2 13 0 1 +8294 Nc3 4 0 2 +8295 Nc3 9 0 5 +8296 Nc3 2 1 3 +8297 Nc3 1 1 3 +8301 Qd1 6 0 3 +8301 Qe3 1 0 4 +8302 b4 4 0 1 +8304 b4 4 0 2 +8303 d4 1 1 4 +8305 d4 3 0 3 +8311 Nc3 4 0 3 +8313 cxd5 3 0 2 +8316 Nf3 6 0 1 +8317 e5 1 0 4 +8319 Bg2 4 0 2 +8320 d4 26 1 25 +8321 cxd5 2 0 4 +8322 Nf3 3 1 4 +8324 Nf3 3 0 3 +8325 Bg2 2 0 3 +8327 Bb2 7 0 6 +8329 cxd5 5 0 1 +8334 Nf3 7 2 2 +8336 Bg2 1 2 2 +8339 Nf3 2 0 3 +8337 e4 1 0 5 +8338 Nf3 5 0 3 +8341 d4 2 1 2 +8344 Bb2 4 0 5 +8345 Nc3 3 0 2 +8346 g3 2 1 2 +8349 g3 3 1 2 +8352 Bg2 4 0 2 +8351 Bg2 3 1 2 +8354 g3 5 0 1 +8355 Kxd1 7 3 11 +8361 h3 3 0 2 +8363 Nc3 4 0 4 +8364 Nf3 5 0 4 +8366 d5 2 0 3 +8368 Nc3 1 0 9 +8368 e4 2 0 4 +8370 b4 6 0 0 +8371 f4 4 0 1 +8378 Nf3 2 1 4 +8381 Bd3 3 0 3 +8381 Nf3 2 0 4 +8383 Bxf6 1 0 4 +8386 Nf3 6 0 3 +8387 e3 0 0 5 +8388 Bg3 5 0 2 +8389 dxc5 3 1 1 +8390 e3 7 0 3 +8392 e4 3 0 9 +8392 e3 2 1 9 +8396 e4 7 1 11 +8400 Nb5 3 0 2 +8399 d5 8 0 2 +8403 Nb5 7 0 3 +8404 Nb5 5 0 1 +8401 Be5 5 0 3 +8402 Nb5 9 0 3 +8410 Bg5 2 0 3 +8407 Bg5 1 0 4 +8411 f3 2 0 8 +8414 Bf4 5 0 1 +8413 Bf4 4 2 3 +8416 e5 4 1 9 +8416 Bd2 4 0 1 +8416 Bd3 3 1 1 +8417 e5 2 1 2 +8418 Nb5 14 0 3 +8421 e5 7 0 1 +8420 Bg5 1 0 5 +8423 cxd4 1 2 2 +8424 c4 1 0 4 +8425 exd4 4 0 3 +8426 Bg2 4 0 2 +8426 Nxd4 1 0 5 +8430 e3 1 1 5 +8437 c4 2 0 3 +8436 c4 2 0 3 +8435 Bd3 4 0 5 +8435 Be2 3 0 2 +8439 Bg2 4 0 1 +8440 Nc3 5 1 5 +8442 Bg2 3 0 3 +8445 c3 2 0 3 +8444 e3 2 0 3 +8443 e3 4 0 6 +8450 e3 1 0 4 +8454 Bd2 2 1 3 +8454 Nc3 2 0 3 +8452 Nc3 2 0 8 +8455 Nc3 2 1 2 +8453 Nc3 3 1 2 +8457 Bd3 8 1 7 +8457 Be2 4 0 2 +8458 Be2 3 1 6 +8456 Bd3 9 1 13 +8456 Be2 3 1 4 +8461 c3 3 0 3 +8460 Bg2 8 1 11 +8463 e3 23 0 13 +8463 h3 2 0 3 +8464 Bxf6 5 0 2 +8464 e3 2 0 5 +8465 e4 5 0 2 +8465 e3 1 0 5 +8467 Bb2 5 1 1 +8468 Nbd2 3 0 2 +8468 Bg5 2 1 2 +8469 Nc3 20 4 43 +8469 e3 1 1 3 +8470 Nc3 1 0 4 +8471 Be2 7 2 14 +8471 Bd3 7 0 6 +8471 c4 5 0 5 +8473 Bg2 20 1 27 +8474 h3 3 0 2 +8475 Nf3 4 0 6 +8476 e3 3 0 3 +8477 Nf3 6 0 2 +8483 Qxd4 17 2 27 +8486 Nxd4 4 1 14 +8487 cxb5 26 3 22 +8487 b3 8 1 14 +8487 Nc3 3 1 6 +8487 e3 1 0 4 +8490 Nc3 7 0 7 +8488 Nc3 5 2 8 +8488 dxe6 1 0 6 +8489 Nc3 10 0 4 +8491 Nc3 5 1 5 +8492 Nc3 1 0 4 +8493 exd4 6 1 9 +8496 e3 3 1 1 +8500 Nf3 4 0 1 +8498 e4 11 2 5 +8498 e3 7 0 2 +8498 Nf3 3 0 2 +8499 Nf3 6 0 2 +8499 Bg5 4 0 2 +8499 a3 3 1 1 +8499 e3 5 0 0 +8502 e3 1 0 4 +8504 e4 12 0 4 +8504 Nc3 3 0 2 +8505 Nc3 8 1 5 +8507 Bxc4 4 0 2 +8506 Nf3 3 0 3 +8509 Nf3 3 1 4 +8509 e4 3 0 3 +8508 e4 21 0 25 +8508 Nf3 8 1 12 +8511 Nc3 2 1 3 +8511 b3 2 0 3 +8513 Qxd4 8 0 11 +8514 Nxd4 0 0 5 +8516 Bd2 2 0 3 +8516 Nc3 3 0 2 +8515 e3 7 0 12 +8515 Nc3 4 2 13 +8518 Nf3 6 0 2 +8518 e3 6 0 0 +8517 Nf3 24 0 32 +8517 Bf4 6 1 2 +8517 e4 5 0 4 +8517 Qd4 3 1 5 +8517 f4 5 0 3 +8519 exd4 3 0 5 +8521 e3 5 0 3 +8522 Nf3 37 4 33 +8522 Bd2 30 4 34 +8522 Qc2 30 4 22 +8522 a3 18 1 34 +8522 e3 18 2 12 +8522 Bg5 7 0 15 +8522 Qb3 4 0 6 +8522 f3 1 0 4 +8527 Nf3 5 0 0 +8525 e4 9 1 6 +8525 Nf3 12 0 3 +8525 Bg5 3 0 4 +8524 d5 12 3 6 +8524 Nf3 9 0 12 +8524 e3 12 1 7 +8523 Nf3 17 2 24 +8523 Bg5 21 1 13 +8523 e3 19 1 13 +8523 cxd5 17 1 4 +8523 c5 8 0 9 +8531 Bd2 14 1 17 +8531 Nc3 1 1 6 +8530 g3 5 1 14 +8530 Nc3 8 1 9 +8530 e3 2 0 4 +8532 e3 4 1 9 +8532 d5 1 0 4 +8529 Nc3 7 1 7 +8529 g3 3 1 10 +8529 e3 4 0 6 +8529 Nbd2 3 0 3 +8537 Nc3 2 0 3 +8536 Nc3 4 1 1 +8534 Nc3 10 0 9 +8534 c5 3 0 4 +8534 cxd5 2 1 2 +8538 Bd2 3 0 6 +8539 c5 3 1 1 +8543 Bd2 10 0 2 +8544 d5 5 0 0 +8542 Bg2 7 1 3 +8546 e4 145 8 122 +8546 Nf3 59 3 56 +8546 e3 13 0 22 +8546 Bg5 6 0 10 +8546 Bf4 2 1 6 +8546 a3 3 1 2 +8546 d5 3 0 2 +8547 cxd5 41 9 53 +8547 e3 14 3 36 +8547 Nf3 28 0 24 +8547 Bg5 9 0 8 +8547 c5 2 0 12 +8547 e4 4 0 1 +8548 e4 8 0 7 +8549 Nc3 10 2 14 +8549 e3 7 1 12 +8549 g3 8 1 4 +8550 e3 2 2 5 +8551 Bb2 11 2 9 +8552 Nf3 3 0 6 +8552 Nc3 2 0 6 +8552 Bd3 1 0 6 +8554 cxd5 2 0 10 +8560 Be2 1 0 5 +8564 Nf3 2 0 3 +8568 c3 3 2 5 +8571 Bd3 4 0 2 +8569 Be2 2 0 4 +8572 Bb2 0 0 6 +8573 Nc3 3 0 5 +8575 f4 7 0 2 +8575 Nd2 2 0 3 +8577 Be2 8 1 11 +8577 Bd3 5 0 8 +8577 Bc4 2 0 5 +8577 Nc3 2 1 4 +8577 c4 2 0 3 +8578 Bb2 3 1 4 +8579 Nc3 6 0 3 +8579 Nf3 2 0 4 +8580 Nf3 4 1 4 +8581 Bg2 2 1 4 +8582 fxe4 2 0 4 +8583 g4 2 0 3 +8584 e5 2 1 4 +8585 e5 1 0 11 +8586 e5 2 0 3 +8587 g4 4 0 4 +8588 Bd3 10 0 0 +8590 c3 5 0 0 +8593 Nf3 2 0 4 +8594 Nf3 1 0 4 +8595 Nf3 7 0 6 +8597 Nf3 7 1 12 +8601 Nf3 5 0 2 +8610 Nb5 4 1 4 +8612 Nf3 3 0 3 +8613 Bh4 4 0 1 +8616 f3 7 1 0 +8615 Nb5 7 0 2 +8614 Nb5 10 3 3 +8619 Bxd8 6 0 1 +8623 Nc3 2 0 3 +8626 Qxf3 4 1 1 +8624 Be2 5 0 7 +8628 Bg2 8 1 2 +8629 Nf3 13 2 25 +8629 e4 25 1 11 +8629 e3 3 0 3 +8629 d5 5 0 0 +8630 e4 35 2 13 +8630 Nf3 14 0 8 +8630 e3 5 0 1 +8636 g3 1 2 8 +8636 e3 2 0 3 +8637 g3 5 0 3 +8637 e3 2 0 3 +8638 e4 3 0 5 +8639 e4 1 1 3 +8641 Nf3 1 0 4 +8640 Nf3 4 0 3 +8643 Be2 4 0 5 +8643 g3 1 0 5 +8644 Be2 8 0 3 +8644 Nc3 5 0 2 +8647 Nc3 6 0 0 +8650 Bd3 5 0 7 +8649 Bd3 12 0 4 +8652 Nf3 4 0 1 +8653 Nd2 3 0 2 +8654 c4 4 0 2 +8655 Nf3 2 0 7 +8657 c4 5 0 11 +8658 c4 3 1 4 +8658 Nf3 5 0 2 +8658 Nc3 3 0 3 +8662 e5 4 0 11 +8663 e5 5 2 5 +8665 Qxd4 9 1 13 +8666 Qd1 2 0 3 +8667 Qd1 3 2 2 +8668 Nxc6 5 0 7 +8668 Nf3 7 0 1 +8668 e3 1 0 6 +8669 Nf3 6 0 3 +8669 Nb3 5 0 2 +8672 e3 4 0 1 +8674 Qd1 5 0 7 +8675 Bg5 5 0 3 +8676 Qxd5 0 0 5 +8677 Qd1 3 0 3 +8679 e3 1 1 3 +8678 Nc3 3 0 5 +8678 Nf3 3 0 2 +8682 Nxd4 13 1 6 +8683 Qd1 36 2 39 +8683 Qc3 2 0 3 +8684 Qd1 2 0 3 +8685 Bxe3 4 0 1 +8686 Nc3 5 0 0 +8688 Nc3 6 0 5 +8693 Nc3 7 0 5 +8692 Nc3 9 0 8 +8692 dxe6 4 1 3 +8692 e4 4 0 3 +8691 Nc3 22 1 9 +8691 e4 10 2 2 +8694 Nc3 7 1 4 +8696 Nc3 3 0 3 +8698 c4 3 0 2 +8695 c4 5 1 3 +8697 Nc3 5 0 0 +8701 Nc3 7 0 3 +8700 Nc3 9 1 1 +8703 c4 4 0 7 +8703 Nf3 2 0 3 +8706 Nc3 7 0 5 +8705 e4 2 0 4 +8704 cxd5 17 1 14 +8707 Nf3 8 0 4 +8707 e3 3 0 4 +8707 Nc3 2 0 3 +8710 Nf3 5 0 3 +8711 Nf3 14 1 6 +8711 Be3 7 0 2 +8711 e4 7 0 1 +8714 bxa7 2 0 4 +8721 e3 3 1 2 +8721 Nc3 2 0 3 +8722 c3 5 1 12 +8725 Nf3 4 0 1 +8726 Qd1 11 1 13 +8727 Qd1 4 0 1 +8731 Nf3 3 1 1 +8728 Nf3 4 0 12 +8728 f4 7 0 1 +8728 c3 3 0 2 +8729 Nf3 0 0 5 +8737 Qd1 3 1 13 +8738 Qd1 2 0 3 +8739 e3 4 0 6 +8742 Nxe4 4 0 1 +8746 Nc3 1 0 4 +8745 c4 4 0 1 +8745 Bd3 2 0 3 +8748 Bg2 5 0 2 +8753 Nf3 5 0 2 +8750 Nf3 18 3 19 +8750 e3 11 0 5 +8750 cxd5 11 0 1 +8750 Bf4 2 0 3 +8751 e4 13 0 5 +8751 Nf3 10 0 6 +8751 e3 6 1 2 +8751 a4 3 0 2 +8752 Nf3 14 0 9 +8752 cxd5 6 0 7 +8752 e3 8 0 1 +8756 Nc3 5 0 2 +8759 Nc3 18 0 18 +8761 Nc3 5 0 6 +8760 Nc3 3 1 5 +8760 Nf3 2 0 4 +8763 Bxc4 4 0 1 +8762 Nf3 6 0 1 +8764 Nf3 2 1 2 +8764 e4 2 1 2 +8765 Nf3 3 0 2 +8766 cxd5 2 0 3 +8773 Nc3 2 2 1 +8776 Bxc4 5 0 0 +8777 Nf3 4 0 3 +8778 Nxe4 4 0 2 +8779 Bd3 4 1 7 +8779 Nf3 4 0 2 +8779 f4 3 0 2 +8780 f4 4 0 3 +8781 f4 4 0 4 +8782 Nf3 0 0 6 +8782 Nc3 0 0 6 +8782 c4 2 0 3 +8783 fxe4 3 0 5 +8785 Nf3 3 0 2 +8787 Nb5 3 0 3 +8786 Nb5 6 0 6 +8786 a3 5 0 2 +8786 f3 3 0 2 +8793 Bd3 2 0 4 +8792 Bd3 9 1 4 +8792 Nf3 5 0 4 +8800 Nb5 7 0 2 +8800 a3 3 0 3 +8797 Nb5 18 0 6 +8802 Qxd4 5 0 1 +8798 e3 3 0 5 +8798 a3 5 0 1 +8798 e4 3 0 2 +8799 Nb5 5 2 6 +8801 Nb5 3 0 3 +8803 e3 8 0 1 +8807 Nf3 5 1 2 +8807 Bb5 4 0 3 +8807 Bd3 1 0 5 +8807 a3 3 0 3 +8807 c4 5 0 0 +8806 Bb5 8 2 7 +8806 Nf3 11 0 6 +8806 Nc3 4 0 3 +8806 Bd3 4 0 1 +8809 h3 4 1 2 +8808 Bb5 8 0 3 +8810 Bb5 1 0 4 +8815 Nb5 3 0 4 +8813 Nb5 9 0 3 +8812 e3 13 0 6 +8812 Nf3 3 0 3 +8814 e3 6 0 2 +8814 Nf3 1 0 4 +8811 Nf3 3 0 13 +8811 Nb5 6 0 6 +8811 e3 7 0 2 +8811 a3 4 1 1 +8817 e3 5 0 0 +8816 e3 3 1 7 +8819 Nf3 3 1 3 +8820 Bb5 2 1 7 +8820 Nc3 3 0 3 +8818 a3 12 1 2 +8818 Nf3 6 0 4 +8818 c4 3 1 5 +8818 Bg5 3 0 2 +8818 Nc3 3 0 2 +8818 Bb5 1 0 4 +8824 Qxd4 0 0 5 +8831 e3 2 1 2 +8837 Bxd6 5 1 9 +8837 Qd2 4 0 2 +8842 Nb5 4 0 1 +8839 Nf3 2 0 3 +8836 Nf3 5 0 5 +8836 a3 5 0 3 +8836 e3 3 0 5 +8838 Nb5 3 0 10 +8838 dxc5 3 0 3 +8844 e3 3 0 2 +8845 e3 1 1 3 +8847 Qd2 8 0 2 +8846 Nc3 4 1 2 +8846 e3 5 0 1 +8849 Bg3 11 0 3 +8849 Bxd6 2 0 5 +8848 Nf3 9 1 8 +8848 c4 3 0 2 +8851 Nf3 3 0 2 +8850 dxc5 3 0 3 +8850 Nf3 3 1 1 +8854 Bh4 5 0 1 +8855 e3 5 1 5 +8856 Nf3 7 0 0 +8856 e3 3 0 2 +8859 e3 5 0 5 +8858 Bg3 11 1 6 +8860 Bg3 9 0 7 +8864 e3 15 0 1 +8863 Nb5 15 0 2 +8867 Nb5 16 1 4 +8866 Nb5 20 0 2 +8869 h3 3 1 1 +8871 dxe5 5 0 1 +8868 Nb5 13 0 1 +8870 Nb5 4 0 2 +8872 Bf4 4 0 1 +8875 Nxe4 3 2 7 +8879 Nb5 28 0 2 +8878 Nb5 45 1 7 +8877 Be5 33 0 9 +8877 e3 3 1 3 +8880 Be5 10 0 2 +8876 Nb5 49 0 11 +8882 Nb5 4 0 3 +8881 Nb5 8 0 2 +8884 Nf3 5 1 2 +8885 Bxf6 6 0 2 +8888 Bg5 2 1 3 +8888 e3 3 0 3 +8888 Bf4 2 0 3 +8890 Bg5 3 0 2 +8887 Bg5 5 0 3 +8887 Bf4 5 1 1 +8887 e3 2 1 3 +8889 Bf4 4 0 4 +8889 Bg5 2 0 4 +8895 e4 2 0 5 +8897 e4 1 0 4 +8899 Bg2 3 0 4 +8898 Bg2 8 0 1 +8901 exd4 5 1 1 +8909 e5 6 0 3 +8908 Nxe4 26 1 6 +8907 exd5 12 1 4 +8907 e5 5 0 2 +8907 a3 6 0 0 +8915 Bg5 3 0 6 +8915 Bf4 2 2 2 +8916 dxc5 4 0 2 +8923 e4 14 0 1 +8920 Bf4 24 2 5 +8919 Bf4 68 1 14 +8922 e4 9 0 5 +8921 e3 24 0 4 +8925 e4 12 0 1 +8927 Bf4 5 0 0 +8926 Bf4 8 0 3 +8924 Bf4 10 0 1 +8931 e5 5 1 0 +8929 Nxe4 7 1 15 +8934 Bg2 6 1 4 +8935 Nb5 6 1 2 +8936 e4 5 0 0 +8938 e3 3 1 7 +8937 e3 11 0 19 +8940 e3 6 0 3 +8943 Nc3 3 0 4 +8944 Nc3 3 0 3 +8942 Nc3 4 0 2 +8946 Bd3 6 0 2 +8947 c4 3 2 0 +8945 Bd3 11 1 10 +8945 c4 7 1 7 +8950 Bg2 6 0 2 +8949 Bg2 4 0 10 +8951 exf3 6 0 1 +8951 gxf3 4 0 2 +8952 e3 3 0 5 +8954 gxf3 1 1 4 +8955 c4 10 0 1 +8956 g4 4 0 6 +8958 Qxf3 11 0 9 +8960 Be2 4 0 4 +8959 Be2 4 0 3 +8959 h3 4 0 1 +8963 exf3 7 0 8 +8964 Bg2 3 0 2 +8965 exf3 9 0 4 +8967 e3 8 1 2 +8967 c3 5 0 0 +8968 e3 8 2 6 +8966 e3 13 1 10 +8970 e3 4 0 2 +8969 e3 7 0 1 +8971 Bh4 4 0 2 +8973 e3 2 0 3 +8973 a3 3 2 0 +8972 e3 10 0 8 +8972 Bf4 1 0 4 +8981 Nc3 3 0 3 +8979 Nc3 15 1 9 +8979 d5 4 0 3 +8980 Nc3 4 0 3 +8980 a3 3 1 1 +8985 Bb5 9 0 7 +8985 Bd3 6 0 2 +8985 a3 4 0 2 +8985 c4 6 0 0 +8984 Be2 13 0 6 +8984 c4 4 0 5 +8984 Nc3 4 0 5 +8984 Bb5 2 1 3 +8984 h3 2 0 3 +8983 Bb5 14 1 9 +8983 c4 10 0 8 +8983 Bd3 7 0 2 +8983 Nc3 4 1 2 +8983 b3 3 0 4 +8987 Nc3 3 0 3 +8987 c4 5 1 0 +8989 dxe5 3 0 2 +8986 c4 6 1 1 +8986 Bb5 6 1 1 +8988 c4 2 0 3 +8992 a3 3 1 3 +8992 Bg2 2 1 3 +8991 Bg2 12 0 4 +8990 Bg2 23 0 9 +8993 Bg2 5 0 2 +8996 e3 10 1 8 +8997 e3 2 1 2 +8995 e3 8 1 6 +8998 e3 3 1 2 +8994 e3 16 0 7 +9001 Bxf6 3 0 3 +9000 e3 6 0 4 +9000 Bxf6 6 0 3 +9007 Bg5 2 1 3 +9006 e3 5 0 4 +9005 e3 6 0 5 +9014 Nc3 4 0 1 +9012 Nc3 8 1 12 +9013 Nc3 8 2 8 +9013 e3 2 2 3 +9011 Nc3 14 0 14 +9011 cxd5 5 0 1 +9017 Bd3 7 1 5 +9017 c4 7 1 4 +9016 Be2 9 0 6 +9016 Bd3 3 0 6 +9016 c4 4 1 3 +9018 c4 6 1 2 +9018 b3 3 0 2 +9020 Bd3 2 0 4 +9015 Bd3 13 1 9 +9015 c4 13 0 6 +9015 a3 5 0 0 +9019 c4 1 3 5 +9019 Bd3 2 0 3 +9023 Bg2 10 0 7 +9025 Bg2 3 0 8 +9026 Bg2 4 0 3 +9028 Bg2 2 0 4 +9022 Bg2 27 2 16 +9024 Bg2 7 3 6 +9030 e3 3 0 3 +9036 c3 3 1 2 +9037 b4 2 1 2 +9039 Bb5 6 0 4 +9041 exd4 4 1 1 +9045 e3 5 0 1 +9043 e3 3 0 3 +9043 Ne5 4 1 0 +9042 e3 10 0 5 +9044 e3 4 0 2 +9046 Bh4 6 0 0 +9047 Nc3 5 0 4 +9047 cxd5 5 0 3 +9048 Nc3 5 0 1 +9054 c4 2 1 3 +9053 Be2 8 0 2 +9053 c4 1 0 4 +9052 c4 5 0 2 +9052 Be2 3 0 3 +9051 c4 6 1 1 +9051 Be2 1 0 4 +9055 Bg2 4 1 7 +9056 Bg2 4 0 2 +9060 Ne5 6 0 1 +9061 e3 3 0 6 +9058 e3 21 4 14 +9058 h3 0 0 5 +9059 e3 11 2 5 +9062 Bxe7 11 1 6 +9062 Bf4 4 0 1 +9065 e3 7 1 7 +9066 dxc5 3 0 4 +9069 Bg5 4 1 2 +9069 e3 3 0 2 +9071 Nc3 12 0 10 +9074 Nc3 5 0 1 +9072 Nc3 8 2 2 +9073 Nc3 8 0 5 +9078 Bb5 5 0 1 +9076 Bd3 22 2 14 +9076 c4 10 1 11 +9076 Be2 13 0 8 +9076 b3 8 0 0 +9076 Nc3 2 0 4 +9079 c4 5 0 2 +9077 dxc5 10 0 9 +9077 b3 3 0 7 +9077 c3 3 1 5 +9077 c4 4 0 4 +9077 Be2 2 1 5 +9077 Bb5 5 0 2 +9077 Bd3 3 1 1 +9088 Bg2 7 0 4 +9086 Bg2 25 3 14 +9087 Bg2 8 0 5 +9087 c3 4 0 2 +9089 Bg2 6 0 3 +9090 Bg2 4 0 1 +9094 c4 3 2 3 +9095 Bg2 4 0 2 +9099 Qxe4 2 0 3 +9101 Qxe4 3 0 5 +9102 e3 1 0 4 +9105 e3 5 0 3 +9104 e3 5 0 3 +9106 h3 6 0 1 +9109 Nf3 6 0 4 +9111 e3 4 0 6 +9114 Nf3 5 0 1 +9115 dxc5 3 0 3 +9117 e3 4 0 1 +9123 Bb5 2 0 3 +9126 Bg5 6 0 1 +9130 e4 4 0 1 +9131 Nc3 10 0 2 +9133 e4 34 0 10 +9133 e3 11 1 6 +9133 Nf3 12 0 3 +9132 Nf3 20 4 14 +9132 e3 10 3 11 +9132 cxd5 9 1 5 +9132 Bf4 6 0 3 +9132 c5 1 1 5 +9137 Rxb1 3 0 2 +9138 Qxb7 2 1 2 +9140 Rxb1 6 1 4 +9139 Nc3 12 0 6 +9142 Rxb1 2 0 5 +9144 e3 6 0 5 +9144 Nf3 7 1 2 +9144 d5 7 0 1 +9149 Nc3 3 0 2 +9151 Nf3 11 0 3 +9151 Nc3 5 0 5 +9151 e3 4 0 3 +9152 Nc3 7 0 0 +9157 Nc3 4 0 1 +9164 Nf3 3 0 3 +9164 cxd5 0 0 5 +9163 Nf3 7 1 0 +9161 Nf3 17 0 13 +9161 e3 15 1 4 +9161 Bg5 11 0 1 +9161 cxd5 1 0 7 +9161 Bf4 2 0 3 +9162 e3 20 0 15 +9162 e4 26 0 7 +9162 Nf3 4 0 1 +9160 Nf3 47 2 19 +9160 Bg5 35 3 12 +9160 e3 18 1 18 +9160 a3 10 0 11 +9160 cxd5 8 1 1 +9165 Nf3 5 0 2 +9165 cxd5 2 1 4 +9169 Nc3 4 1 3 +9169 cxd5 3 0 2 +9169 e3 2 0 3 +9170 Nc3 2 1 3 +9171 e3 4 0 3 +9171 Nc3 3 0 2 +9168 Nc3 9 0 6 +9168 Bg5 6 0 5 +9176 e4 59 4 20 +9176 Nf3 10 0 9 +9176 Nc3 7 0 5 +9177 Nc3 10 0 6 +9180 Nc3 4 0 2 +9181 f3 2 0 3 +9179 Nf3 2 0 3 +9178 Nf3 10 0 10 +9178 c5 4 1 7 +9178 Nc3 5 1 6 +9183 Nc3 9 1 4 +9184 Qxd4 9 0 2 +9185 d5 7 0 0 +9185 e3 2 0 3 +9187 Nf3 9 0 8 +9187 e3 4 1 0 +9188 Qxd4 12 0 0 +9190 Nc3 7 0 1 +9192 Nf3 2 0 3 +9193 Qxd8 5 0 0 +9191 cxd5 2 2 5 +9195 exd4 4 1 2 +9196 e3 3 2 2 +9200 Nf3 14 0 6 +9200 e3 4 1 5 +9200 cxd5 3 0 2 +9197 Nf3 83 9 58 +9197 e3 36 2 29 +9197 Bg5 32 3 23 +9197 cxd5 28 3 22 +9197 Bf4 10 3 12 +9197 a3 6 0 7 +9197 g3 3 0 3 +9201 Nf3 4 0 2 +9199 e4 11 1 12 +9199 e3 10 1 11 +9199 a4 12 1 7 +9199 Nf3 7 1 4 +9202 dxe5 5 0 1 +9198 Nf3 61 5 49 +9198 e3 24 1 16 +9198 cxd5 16 0 6 +9198 e4 12 0 4 +9198 Bf4 9 0 4 +9198 a3 5 0 3 +9208 Nc3 6 0 3 +9207 e3 3 0 4 +9204 Nc3 43 4 43 +9204 e3 10 0 6 +9204 g3 12 0 3 +9204 Bg5 3 0 5 +9204 Bf4 3 0 5 +9206 e3 4 1 4 +9206 e4 5 0 2 +9205 Nc3 15 2 5 +9205 e3 7 0 6 +9205 g3 4 1 4 +9209 Nc3 1 1 3 +9211 b4 5 0 1 +9214 Nc3 5 2 3 +9213 Nc3 54 6 33 +9213 Nf3 10 0 8 +9213 Bf4 3 0 2 +9213 e3 1 0 4 +9218 Nc3 17 0 14 +9216 Nc3 27 3 18 +9216 Nf3 12 1 13 +9216 cxd5 2 1 6 +9219 Bxc4 5 0 3 +9217 Nf3 10 1 12 +9217 c5 9 1 4 +9217 Nc3 5 0 7 +9217 a3 2 0 3 +9222 Bg2 3 1 2 +9234 e4 6 0 3 +9230 e4 11 1 4 +9230 e3 6 0 0 +9228 e4 12 0 7 +9228 e3 9 0 2 +9228 Nf3 9 0 1 +9225 e3 39 1 14 +9225 Nf3 27 1 7 +9225 d5 22 1 4 +9225 e4 7 3 2 +9224 e4 54 3 28 +9224 e3 41 5 24 +9224 Nf3 15 2 12 +9224 Bg5 7 1 0 +9227 a4 10 2 15 +9227 e4 10 2 11 +9227 e3 13 1 7 +9227 Nf3 4 0 1 +9231 Nxb5 16 1 4 +9235 e4 4 0 2 +9233 d5 5 0 3 +9233 e3 6 0 1 +9226 a4 22 1 9 +9226 e4 19 1 9 +9226 e3 17 0 11 +9226 Nf3 9 0 4 +9229 d5 10 0 7 +9229 e3 5 1 2 +9229 Nf3 3 1 3 +9223 e4 64 2 31 +9223 e3 38 0 19 +9223 Nf3 30 1 7 +9223 a3 26 2 9 +9232 e4 11 0 2 +9242 Nc3 3 0 5 +9240 Ne5 10 0 0 +9240 e3 5 0 3 +9241 e3 10 1 3 +9237 Nc3 10 2 8 +9237 e3 12 2 3 +9239 e3 4 1 3 +9239 a4 4 1 2 +9243 e3 4 0 1 +9238 e3 11 0 5 +9238 Nc3 2 0 6 +9246 Qxc4 17 1 24 +9247 e3 6 1 8 +9247 Qxc4 5 1 5 +9247 Nf3 6 1 1 +9248 Qxc4 15 0 7 +9253 Nc3 11 0 11 +9253 Qa4 6 0 7 +9253 Na3 3 0 3 +9253 Nf3 4 0 1 +9254 Bxc4 23 0 11 +9254 Nc3 7 0 1 +9255 Bxc4 12 2 11 +9251 Bxc4 63 2 33 +9257 Nc3 11 0 3 +9262 Bxc4 6 0 0 +9250 a4 123 2 37 +9250 Nc3 27 0 12 +9250 Qf3 4 0 2 +9259 Nxc3 6 0 1 +9258 Bxc4 7 0 2 +9260 Bxc4 6 0 3 +9256 Bxc4 9 1 6 +9252 Bxc4 49 3 37 +9252 Nc3 6 1 1 +9261 Bxc4 5 0 1 +9267 d5 10 1 3 +9267 Nf3 5 0 2 +9266 Nc3 17 0 11 +9266 e5 9 0 6 +9264 a4 18 2 19 +9264 Nc3 21 0 17 +9264 Nf3 10 0 2 +9264 d5 3 0 5 +9264 b3 2 0 3 +9268 d5 9 0 6 +9265 d5 26 1 9 +9265 Nf3 3 0 6 +9265 Bxc4 3 0 3 +9263 Bxc4 74 6 29 +9263 Nf3 4 1 1 +9263 Nc3 3 0 2 +9270 Bxc4 4 0 1 +9273 d5 10 0 4 +9274 Qxd4 13 3 5 +9277 Nc3 7 1 7 +9277 Nf3 2 0 3 +9280 cxd5 3 0 2 +9278 Nf3 45 4 35 +9278 e3 6 0 16 +9278 a3 4 0 7 +9278 e4 4 0 3 +9279 Qxd8 6 0 2 +9282 Bxc4 3 1 3 +9281 exd4 7 1 11 +9285 e3 2 0 5 +9288 Nf3 39 2 18 +9288 e3 17 1 15 +9288 cxd5 19 1 10 +9288 Bd2 11 1 9 +9288 a3 5 2 4 +9288 Qa4 4 1 1 +9292 Nf3 5 0 7 +9293 Nf3 3 0 2 +9293 cxd5 3 0 2 +9286 Nf3 154 9 88 +9286 Bg5 127 12 79 +9286 e3 71 4 48 +9286 cxd5 39 5 26 +9286 Bf4 7 0 10 +9286 a3 10 0 7 +9290 cxd5 16 0 11 +9290 Nf3 8 1 13 +9290 e3 11 0 4 +9290 dxc5 1 0 4 +9287 Nf3 68 4 29 +9287 e3 22 2 14 +9287 cxd5 11 1 8 +9287 e4 11 0 6 +9287 Bf4 5 0 1 +9287 a3 3 0 2 +9289 e4 33 0 25 +9289 e3 23 1 11 +9289 Nf3 20 0 7 +9291 Nf3 4 2 7 +9291 cxd5 5 0 8 +9291 e3 3 0 3 +9301 Bd2 5 2 5 +9302 Nc3 2 0 3 +9297 Nc3 42 6 32 +9297 g3 21 0 14 +9297 Bg5 18 2 14 +9297 e3 11 0 13 +9299 e3 1 1 6 +9299 cxd5 2 0 5 +9298 Nc3 13 0 5 +9298 g3 3 0 5 +9298 e3 3 1 1 +9300 Nc3 5 0 3 +9300 g3 5 0 0 +9307 Nc3 17 0 25 +9307 Bg5 1 1 4 +9308 dxc5 8 0 0 +9310 Nc3 4 0 3 +9309 Nc3 2 0 3 +9309 e3 2 0 3 +9312 Nc3 2 1 2 +9311 b4 7 0 14 +9313 Nc3 5 1 0 +9316 Nc3 21 1 9 +9315 Nc3 33 1 32 +9315 Nf3 7 0 6 +9315 e3 4 2 6 +9315 a3 4 0 6 +9322 Bd2 7 0 4 +9322 Nc3 6 0 3 +9318 Nc3 28 2 23 +9318 Nf3 24 2 21 +9318 c5 18 0 9 +9318 a3 6 0 10 +9318 cxd5 9 0 5 +9320 Nf3 3 2 5 +9320 cxd5 8 0 2 +9319 Nf3 8 0 3 +9319 c5 6 1 4 +9319 Nc3 4 0 1 +9321 Bxc4 12 2 3 +9330 Nf3 2 0 4 +9331 cxd5 2 0 3 +9332 Nc3 2 1 3 +9333 Nc3 4 0 1 +9334 Qxd3 13 0 5 +9337 Bd2 3 1 1 +9339 c4 5 0 1 +9339 a3 1 0 4 +9338 c4 6 0 1 +9338 a3 4 2 1 +9338 Bd3 3 0 4 +9345 Bxc4 11 1 4 +9344 cxd5 3 0 5 +9344 Nc3 4 0 2 +9349 Nf3 3 0 4 +9348 Nf3 4 0 4 +9351 f3 2 0 3 +9350 h4 2 0 3 +9353 Bxc6 3 0 7 +9354 Bxc6 1 0 4 +9355 Nd2 3 0 2 +9356 dxe5 3 0 2 +9358 Nf3 4 0 2 +9362 a3 2 0 7 +9362 c4 5 0 0 +9362 Bd3 2 0 3 +9361 Nc3 3 0 6 +9361 Be2 3 0 5 +9360 Bb5 6 1 2 +9360 c4 4 0 4 +9360 Be2 4 1 2 +9360 Nc3 4 0 1 +9367 dxe5 1 1 3 +9370 Bb2 3 0 3 +9371 Bb2 3 0 2 +9375 Bxc4 26 1 11 +9376 cxd5 4 1 2 +9380 Nf3 5 0 7 +9380 c4 3 0 3 +9381 Bd3 7 0 6 +9381 Nf3 5 0 1 +9382 Nf3 3 0 4 +9382 Bd3 4 0 1 +9383 Nf3 6 0 1 +9388 Bxd7 2 0 3 +9387 Ba4 3 0 4 +9391 f3 5 0 10 +9390 f4 8 1 4 +9393 c3 3 1 1 +9389 Nd2 10 0 7 +9389 Nf3 2 1 3 +9389 Bd2 2 1 3 +9395 Nf3 2 0 4 +9402 Nc3 3 0 2 +9400 Be2 10 0 8 +9400 c4 4 1 7 +9400 h3 3 1 3 +9401 Nc3 6 2 0 +9401 Bb5 4 0 2 +9399 c4 8 1 6 +9399 Bd3 2 1 6 +9399 Be2 4 1 4 +9399 Nc3 4 0 2 +9407 Bb2 4 0 2 +9408 Nd2 2 0 4 +9410 Qa4 3 0 2 +9415 Nc3 1 0 5 +9417 Be2 5 0 1 +9413 Nc3 3 0 5 +9413 c5 1 0 4 +9413 cxd5 0 1 4 +9413 Nf3 1 0 4 +9414 Bxc4 11 0 11 +9412 Nc3 8 0 7 +9412 cxd5 4 0 4 +9420 Bd3 3 0 5 +9420 Nf3 2 1 2 +9421 Nf3 6 0 4 +9419 Nf3 12 0 7 +9419 Bd3 6 0 2 +9425 Bb5 1 0 4 +9431 Bxc4 6 0 2 +9432 Bxd7 1 0 4 +9435 Nxd4 2 0 6 +9437 Bd3 3 0 2 +9438 b3 2 0 3 +9443 b4 4 0 3 +9448 f4 6 0 4 +9449 f4 2 0 3 +9451 c4 1 0 4 +9450 Bd3 4 1 3 +9450 Be2 2 0 3 +9456 cxd5 2 0 4 +9457 Bxc4 4 0 1 +9455 cxd5 4 0 1 +9458 Nf3 3 0 3 +9459 Nf3 5 0 0 +9460 Nf3 2 0 3 +9461 Nf3 3 0 3 +9465 Bxd7 1 0 6 +9464 Bd3 3 0 5 +9464 Ba4 2 0 3 +9469 c3 6 0 1 +9466 Nd2 11 1 6 +9466 Bd2 9 0 5 +9466 f4 6 0 3 +9466 Nf3 4 0 4 +9467 c3 11 0 6 +9468 Nd2 3 0 2 +9472 Nf3 3 0 3 +9476 c4 3 0 2 +9474 c4 14 1 10 +9474 Be2 11 0 8 +9474 Nc3 7 1 7 +9474 Bd3 9 1 3 +9474 Bb5 2 0 6 +9474 a3 1 0 5 +9474 h3 1 0 4 +9475 c4 5 0 9 +9475 dxc5 1 1 6 +9475 Bb5 2 0 5 +9475 Be2 3 0 2 +9477 Bd3 2 1 3 +9477 Be2 5 0 1 +9492 cxd5 8 0 5 +9492 Nc3 5 0 5 +9492 Nf3 4 1 3 +9492 a3 4 0 3 +9495 cxd5 5 0 1 +9493 Nf3 2 0 5 +9493 cxd5 3 0 2 +9494 Bxc4 5 2 10 +9503 c3 4 1 2 +9505 Nf3 1 0 6 +9504 Nf3 3 0 5 +9502 Nf3 2 2 2 +9499 Nf3 8 2 11 +9501 Nf3 6 0 5 +9498 Nf3 13 0 8 +9498 c3 5 0 0 +9506 Nf3 4 0 1 +9500 Nf3 10 0 3 +9507 Bg2 0 0 7 +9511 Bd3 2 0 3 +9512 f3 7 0 1 +9513 e5 4 0 2 +9519 f3 10 0 13 +9520 Be3 3 0 2 +9517 f3 54 3 58 +9522 Nxe4 4 0 2 +9518 f3 13 1 13 +9524 Nc3 3 0 3 +9523 Nxf3 30 1 12 +9525 e5 4 0 2 +9526 f3 3 0 3 +9529 Nc3 3 0 3 +9530 h4 13 1 15 +9530 Nc3 3 0 2 +9531 g4 5 1 2 +9534 g4 4 0 6 +9532 g4 7 0 4 +9533 e4 4 0 2 +9535 e4 2 0 3 +9536 fxe4 7 1 8 +9537 g4 2 0 8 +9539 g4 4 0 1 +9538 g4 5 2 1 +9541 g4 3 0 3 +9540 g4 4 0 2 +9544 g4 7 0 5 +9543 g4 10 0 3 +9545 g4 2 0 3 +9547 Qxd4 2 0 5 +9546 fxe4 4 0 4 +9550 fxe4 3 1 2 +9551 e5 3 0 2 +9552 g4 3 0 4 +9553 g4 3 0 4 +9554 e5 0 0 5 +9555 fxe4 1 0 4 +9557 Nc3 5 0 2 +9556 e4 3 0 5 +9559 e4 4 0 1 +9560 g5 2 0 4 +9564 c3 3 0 3 +9565 g4 6 0 0 +9562 g4 7 1 13 +9561 g4 13 1 5 +9563 g4 5 0 5 +9566 dxe5 4 0 1 +9572 e3 2 0 4 +9573 Nf3 7 0 4 +9576 Nf3 3 0 4 +9575 f3 9 1 5 +9575 Nf3 9 0 3 +9578 Nf3 3 0 2 +9581 Nf3 3 1 2 +9579 Nf3 7 1 2 +9579 f3 0 1 5 +9580 Nf3 5 0 2 +9583 Qxd4 2 0 4 +9584 Nf3 3 0 3 +9587 Nf3 5 0 6 +9586 dxc5 1 1 5 +9586 Nf3 1 0 4 +9600 Nc3 1 0 4 +9602 Bg2 2 0 3 +9604 exd6 4 1 6 +9608 Bg2 3 0 2 +9609 e4 18 1 25 +9609 Nf3 5 0 8 +9609 Bg5 2 0 3 +9610 e4 18 2 2 +9610 Nf3 11 0 5 +9618 Qxd4 5 1 7 +9619 Nc3 5 0 7 +9622 exd6 2 1 3 +9621 Qxd8 1 3 6 +9623 Nf3 7 1 1 +9623 e4 8 0 1 +9623 e3 2 0 3 +9624 Nf3 5 0 2 +9624 e4 5 0 1 +9631 e4 16 1 10 +9631 Nf3 8 1 12 +9631 e3 1 1 7 +9634 Nf3 2 0 3 +9636 Nf3 5 0 4 +9638 Nf3 3 0 3 +9642 c4 6 0 1 +9644 Bg5 6 0 2 +9647 Qxd8 10 0 1 +9653 c3 1 0 4 +9655 e3 6 0 1 +9659 Nc3 3 0 2 +9660 Qd1 19 1 12 +9664 Nc3 2 0 3 +9665 Nc3 4 0 1 +9666 Bg5 3 0 3 +9669 exd6 2 1 3 +9671 Nf3 2 0 5 +9672 Bf4 10 1 24 +9672 Nc3 8 0 4 +9676 exd6 7 0 1 +9673 exd6 8 0 8 +9674 exf6 7 0 7 +9681 g3 1 0 4 +9678 exd6 8 0 4 +9678 Nf3 3 0 3 +9680 exf6 6 0 2 +9683 Bf4 4 0 6 +9684 Nf3 4 2 4 +9685 Nf3 13 1 15 +9685 Nc3 6 0 3 +9685 e4 6 0 3 +9685 e3 2 1 4 +9685 g3 5 0 0 +9686 Qxd6 9 0 4 +9688 Nf3 8 2 7 +9688 Bg5 5 0 4 +9688 Nc3 7 0 2 +9688 e3 3 0 3 +9689 Qd1 6 0 5 +9690 Qd1 2 0 3 +9695 Qd1 5 1 12 +9698 Nb5 2 0 5 +9700 d5 6 0 1 +9701 Qxd5 2 0 4 +9705 Bxd6 4 2 6 +9705 Qd2 3 0 2 +9704 Nb5 2 0 12 +9704 e3 4 0 3 +9706 Nb5 4 0 1 +9710 Bxd6 1 0 5 +9715 Nf3 2 0 5 +9716 e3 3 1 1 +9719 exd4 7 0 0 +9721 Bf4 5 0 0 +9723 Bg3 6 0 8 +9730 Bd2 5 0 2 +9731 e3 3 0 3 +9734 Be2 3 0 3 +9735 Bg2 4 0 3 +9736 Bh4 3 0 2 +9737 cxd4 5 0 0 +9738 Nxd4 2 0 3 +9739 Nc3 3 0 2 +9740 exd4 5 0 2 +9741 Nxd4 3 0 2 +9742 Bxd8 6 0 0 +9745 Bxd6 2 0 5 +9743 e3 15 2 13 +9744 e3 7 0 5 +9747 Bf4 11 0 3 +9747 Bxe7 6 0 5 +9746 Bxf6 10 0 10 +9746 e3 3 0 4 +9748 Bh4 8 0 2 +9751 Nc3 6 1 7 +9755 Bd3 15 1 14 +9755 Be2 6 0 9 +9755 c4 1 0 4 +9755 b3 3 0 2 +9756 c3 8 0 3 +9760 Bg2 9 0 11 +9761 Bg2 4 1 2 +9762 Nc3 1 0 4 +9765 Bg2 3 0 2 +9764 Bg2 6 0 0 +9767 Bg2 4 0 4 +9768 Bf4 9 0 0 +9769 Bf4 5 0 2 +9770 Bf4 6 0 0 +9771 Bf4 9 0 2 +9772 e3 3 0 3 +9773 b4 5 0 1 +9773 e3 3 1 2 +9774 exd4 10 0 3 +9777 Bf4 12 0 1 +9776 Bf4 9 0 5 +9779 Bf4 4 0 1 +9778 e3 8 0 2 +9782 dxc5 3 0 2 +9781 Nc3 2 1 2 +9784 Nf3 2 0 3 +9785 Bf4 2 0 3 +9787 Bg5 4 1 0 +9790 Nxd2 6 1 7 +9790 Qxd2 4 1 4 +9793 bxc3 6 1 4 +9794 Nf3 3 0 2 +9794 e4 3 0 2 +9796 Nf3 4 0 1 +9800 Nf3 6 1 10 +9800 e4 9 0 7 +9801 e4 1 1 5 +9799 Nf3 6 0 15 +9799 e4 9 2 6 +9806 a3 3 0 8 +9806 Bd2 8 0 3 +9806 e3 5 0 5 +9806 Bg5 4 0 4 +9806 Nf3 4 1 2 +9808 Nf3 5 1 1 +9808 e4 7 0 0 +9809 e3 1 0 4 +9807 Nf3 7 1 3 +9807 cxd5 4 0 3 +9807 Bg5 5 1 1 +9813 Bd2 3 1 4 +9812 Nc3 2 0 3 +9816 e4 16 0 3 +9816 Nf3 4 0 1 +9817 e4 19 1 13 +9817 Nf3 7 1 11 +9817 e3 4 0 2 +9818 Nc3 1 0 4 +9820 Nc3 5 1 3 +9821 Qxd4 16 1 6 +9822 Nxd4 11 1 9 +9826 Nc3 6 0 5 +9825 Nc3 7 0 7 +9825 e4 5 3 6 +9824 cxd5 27 2 10 +9832 Nf3 4 0 2 +9830 Nc3 4 0 1 +9829 exd4 18 2 11 +9831 cxd5 4 0 2 +9833 Nf3 8 0 4 +9833 cxd5 6 0 2 +9833 e3 4 0 2 +9840 Nf3 5 0 1 +9840 Bd2 4 0 1 +9836 Nf3 57 5 60 +9836 cxd5 32 4 21 +9836 Bg5 27 0 26 +9836 e3 24 3 19 +9836 Bf4 3 0 3 +9836 g3 3 1 2 +9839 e3 8 0 4 +9839 Nf3 7 0 3 +9839 cxd5 6 0 3 +9839 dxc5 3 0 2 +9838 e3 5 0 8 +9838 Nf3 8 0 3 +9838 cxd5 4 1 4 +9838 Bf4 5 0 0 +9837 Nf3 38 0 15 +9837 e4 33 1 16 +9837 e3 21 1 9 +9844 g3 10 3 8 +9844 Nc3 3 0 9 +9844 Bg5 5 0 1 +9845 e4 3 0 5 +9848 Nc3 3 0 2 +9850 Nc3 3 0 3 +9849 cxb6 11 1 2 +9849 b4 6 1 3 +9853 Nc3 10 0 6 +9852 Nc3 13 3 14 +9852 Nf3 4 0 6 +9852 g3 3 0 3 +9854 Nf3 3 1 7 +9854 Nc3 7 0 2 +9856 Nf3 3 0 3 +9856 Nc3 2 0 3 +9855 Bxc4 11 0 9 +9858 e4 9 0 11 +9858 Nf3 6 0 6 +9864 Nf3 2 0 3 +9862 e4 5 0 3 +9862 Nf3 3 1 1 +9860 Nf3 6 0 5 +9860 e4 6 0 1 +9861 e4 4 0 4 +9861 Nf3 4 1 1 +9859 e4 17 0 7 +9859 Nf3 4 1 5 +9863 Nf3 4 0 2 +9867 Nc3 3 0 3 +9870 Nc3 3 0 2 +9873 Nf3 12 0 11 +9873 Bg5 3 0 3 +9876 Nf3 5 0 4 +9876 e4 4 0 1 +9880 Qe5 3 0 7 +9880 Qd1 2 0 3 +9885 Nf3 4 0 1 +9886 Bb2 1 0 4 +9888 Nc3 3 0 4 +9889 Nxd4 2 0 5 +9890 Qxd4 1 0 5 +9891 exd4 3 0 3 +9893 a3 1 1 3 +9894 exd4 4 0 1 +9895 c4 3 0 2 +9896 c3 7 0 4 +9901 c4 5 0 1 +9899 c4 5 1 14 +9899 Be2 5 0 6 +9899 Bd3 1 0 4 +9900 c4 3 0 4 +9900 Be2 2 0 4 +9900 Bb5 3 0 2 +9907 cxd5 1 0 7 +9908 Bxc4 6 0 1 +9914 Nf3 2 0 3 +9912 Nf3 2 0 5 +9912 Bd3 1 0 4 +9913 Nf3 3 1 4 +9916 Bg2 5 1 2 +9918 Nc3 2 1 2 +9919 Nf3 4 0 1 +9923 b4 5 0 0 +9926 c4 7 0 3 +9926 Nf3 4 1 2 +9929 Bd3 5 0 0 +9932 Bd3 3 2 2 +9935 Nxd4 1 0 7 +9935 Qxd4 3 0 2 +9938 e5 5 0 0 +9936 cxd4 8 3 18 +9937 e5 2 1 2 +9939 c4 5 1 3 +9940 exd5 6 0 5 +9944 e5 2 0 4 +9943 Nxe4 4 0 1 +9943 f3 3 0 2 +9950 c3 3 0 2 +9950 Bd2 5 0 0 +9948 Nf3 4 0 11 +9948 c3 7 0 2 +9948 Bb5 4 0 1 +9951 Nf3 3 0 2 +9947 c3 17 0 39 +9947 Nf3 7 0 11 +9947 c4 3 0 2 +9949 Nf3 6 0 7 +9949 f4 8 1 3 +9956 Nc3 6 0 1 +9955 Nf3 12 0 10 +9955 Nc3 5 1 7 +9955 Qe2 3 1 1 +9957 Nc3 5 0 1 +9959 e5 2 0 4 +9960 e5 1 0 7 +9962 fxe4 5 1 4 +9963 Nc3 3 0 4 +9967 g4 2 0 3 +9965 g4 3 0 3 +9966 g4 2 0 4 +9970 Bd3 3 0 2 +9972 c3 3 0 2 +9974 Qxd4 5 0 3 +9975 Bg2 2 0 4 +9976 Nf3 7 0 8 +9984 e3 3 0 2 +9986 Nc3 5 0 0 +9988 Bg2 6 1 2 +9991 Nf3 2 0 3 +9989 Nf3 10 0 13 +9989 Bg5 10 0 12 +9989 e3 8 2 5 +9989 g3 5 1 5 +9989 Qc2 3 0 3 +9989 a3 3 0 2 +9990 Nf3 8 0 2 +9990 e3 3 1 3 +9990 Bg5 2 0 3 +9996 Nf3 4 1 3 +9996 Bg5 1 0 4 +10003 Bg5 1 0 4 +10011 Nb5 6 0 1 +10010 Qd2 7 0 4 +10009 Nb5 20 0 3 +10012 e3 7 0 1 +10013 e3 4 0 4 +10015 Nc3 3 0 2 +10016 Be2 6 0 2 +10022 Bg2 2 0 5 +10021 Bg2 3 1 5 +10027 e4 12 1 8 +10027 Nf3 5 0 1 +10028 e4 9 0 10 +10028 Nf3 3 0 2 +10026 e3 6 0 8 +10026 d5 7 0 5 +10026 Nf3 2 0 5 +10029 e4 11 1 8 +10029 Nf3 4 0 1 +10024 e4 24 2 12 +10024 Nf3 13 0 4 +10024 e3 3 0 2 +10025 e4 15 2 12 +10025 Nf3 11 0 4 +10025 e3 5 0 4 +10032 Nc3 5 0 4 +10032 e3 4 0 4 +10036 Nf3 2 0 6 +10037 Nf3 5 0 0 +10041 Nf3 3 1 1 +10040 Nc3 2 0 5 +10040 f4 4 0 1 +10050 Nc3 4 0 3 +10055 Nc3 3 0 3 +10059 Nc3 3 0 3 +10061 f4 6 0 8 +10061 Nf3 1 1 5 +10060 Nf3 4 2 5 +10060 f4 4 0 2 +10067 e5 2 1 6 +10068 e5 1 0 5 +10066 e5 7 1 9 +10070 Nf3 1 0 4 +10075 Qa6 2 1 2 +10077 Bg2 2 0 4 +10078 Bg2 0 0 6 +10079 Qd1 3 0 4 +10080 f4 4 0 10 +10080 g3 2 0 4 +10081 f4 3 0 2 +10082 Be2 6 0 7 +10086 Nf3 3 0 2 +10087 Bg2 2 0 3 +10088 Bh3 1 0 4 +10088 Bg2 1 0 4 +10094 Bg2 2 0 4 +10096 cxd3 2 0 3 +10097 d3 2 0 4 +10099 Ne2 6 0 7 +10101 Ne2 1 1 5 +10100 Ne2 7 0 1 +10104 Bg2 2 0 4 +10105 Bg2 9 1 4 +10106 Bg2 7 0 4 +10108 Qf3 3 0 2 +10112 Qxg4 6 0 5 +10113 Bxc8 1 1 6 +10114 Be2 2 0 3 +10115 Nd4 3 0 2 +10117 Ba4 0 0 5 +10120 Ng1 4 0 5 +10119 Nxd4 3 0 7 +10121 Ng1 1 0 4 +10124 d4 7 0 3 +10125 Bg2 1 0 8 +10128 Qg5 2 0 4 +10129 Qf3 3 0 4 +10132 Qf3 2 0 4 +10134 Nf3 1 0 4 +10136 Nf3 3 0 2 +10140 g3 4 0 6 +10140 Nf3 3 0 2 +10139 Bb5 8 0 7 +10139 Nf3 2 0 7 +10139 g3 4 1 2 +10139 Ne2 3 0 2 +10143 Bb5 4 0 3 +10146 c4 13 0 7 +10155 a3 3 0 6 +10156 a3 2 0 3 +10164 Qxd8 5 0 2 +10165 Nge2 0 0 5 +10166 g3 2 1 8 +10166 Nc3 4 0 1 +10167 g3 9 0 4 +10167 Nc3 2 0 3 +10168 fxe4 4 1 2 +10169 Qd1 4 2 11 +10169 Qe4 6 0 6 +10170 Qe5 3 0 3 +10173 g3 2 1 3 +10172 g3 6 0 5 +10174 Ne2 2 0 3 +10171 Nf3 4 1 4 +10171 g3 5 0 1 +10178 Ne2 8 3 6 +10178 d3 4 0 6 +10180 Ne2 1 0 5 +10179 Ne2 8 0 5 +10183 Nc3 3 0 2 +10184 Bg2 2 1 9 +10192 Nf3 4 1 4 +10193 Nf3 5 1 1 +10204 exd5 4 1 3 +10209 Bc4 5 0 3 +10209 d4 3 0 4 +10211 Bc4 4 0 1 +10213 d4 0 0 5 +10214 Nc3 23 2 20 +10220 Bxc6 3 0 2 +10217 Ba4 9 1 8 +10217 Bxc6 1 1 4 +10218 d4 5 0 1 +10222 d3 6 0 3 +10222 O-O 3 0 2 +10223 d3 6 0 5 +10223 Ng5 5 0 4 +10223 Nc3 4 0 1 +10227 Bc4 8 0 2 +10227 d3 2 0 3 +10231 Nxd4 13 1 16 +10234 e5 2 0 3 +10235 c4 4 0 1 +10237 Nxe4 3 0 5 +10238 Nf3 7 1 11 +10238 Bb5 7 1 2 +10238 c3 5 0 5 +10238 a3 3 0 4 +10238 Bd3 5 0 1 +10238 Nc3 1 0 4 +10240 f4 5 0 3 +10241 Bb5 4 1 0 +10243 Nf3 9 3 10 +10243 Nc3 3 1 5 +10243 c3 6 0 2 +10243 Be3 6 0 2 +10245 Nxd4 6 1 2 +10246 Nf3 10 0 19 +10246 c4 13 0 10 +10246 f4 4 0 5 +10246 Bg5 4 0 3 +10247 c3 8 0 2 +10248 Nf3 4 0 2 +10250 exd5 8 0 3 +10253 d4 6 0 3 +10253 Bc4 4 0 2 +10256 Nxe4 13 0 12 +10256 d4 8 0 8 +10256 Nf3 4 0 2 +10257 d4 4 2 14 +10257 f4 3 0 5 +10258 exf6 5 1 13 +10260 Nxd5 47 3 41 +10260 Bc4 9 3 15 +10260 d4 10 2 8 +10260 Nf3 5 0 3 +10267 Bc4 8 1 13 +10267 Bb5 9 0 7 +10267 d4 8 0 4 +10268 d4 6 0 0 +10268 Bc4 3 1 1 +10273 Qxd4 5 0 7 +10274 Nf3 4 0 1 +10276 Bb3 6 0 5 +10279 Nc3 1 0 5 +10282 Bxf6 2 0 4 +10283 dxe4 1 0 4 +10284 d4 4 0 13 +10284 f4 4 0 6 +10286 Nf3 4 1 5 +10291 Bb3 23 1 16 +10292 Bxd5 7 0 3 +10292 Nf3 2 0 6 +10294 dxc3 7 0 3 +10296 Bc4 5 1 7 +10296 d4 3 0 7 +10296 c4 2 0 3 +10300 a3 4 1 5 +10299 d4 57 5 64 +10299 c5 34 3 33 +10299 Nf3 17 0 17 +10299 Nc3 6 1 11 +10299 a4 3 1 6 +10301 d4 7 0 0 +10303 Nf3 7 0 14 +10303 c4 8 0 11 +10303 f4 2 1 5 +10305 c4 6 0 1 +10302 c4 38 5 53 +10302 Nf3 20 2 25 +10302 exd6 18 0 14 +10302 Bc4 13 0 12 +10302 f4 7 1 11 +10304 Nf3 5 0 10 +10309 d4 5 1 4 +10310 Kxf2 8 0 2 +10315 d3 4 0 3 +10315 Nf3 5 0 1 +10316 Bb3 2 1 3 +10320 cxb5 4 0 1 +10321 Bd3 15 2 16 +10321 d5 6 1 7 +10321 Nc3 2 0 3 +10326 Nf3 6 0 6 +10328 Bd3 22 1 13 +10328 d5 7 0 2 +10328 Nc3 3 0 2 +10330 axb5 4 1 6 +10332 d5 3 0 7 +10332 Nc3 1 1 4 +10334 Bd3 3 0 5 +10336 d3 3 1 5 +10336 e5 2 0 4 +10337 exd5 16 2 7 +10338 Bb3 14 0 4 +10339 d3 7 2 6 +10340 Nf3 3 0 5 +10340 d4 4 0 2 +10341 Nf3 2 0 4 +10343 d4 8 1 8 +10343 Nh3 4 0 8 +10343 d3 7 0 4 +10344 d3 4 0 2 +10345 Qf3 2 1 4 +10348 exd5 3 1 1 +10346 Nf3 10 3 8 +10346 Nc3 3 1 5 +10346 a3 5 0 2 +10346 f4 3 0 2 +10346 c3 2 0 3 +10347 Nc3 2 0 3 +10350 d4 4 0 1 +10353 Nf3 5 0 0 +10356 d3 7 0 4 +10356 Bxf7 8 0 0 +10356 Ng5 3 0 4 +10356 Nc3 2 0 4 +10357 d3 4 0 10 +10357 Nc3 5 0 6 +10358 d3 6 0 4 +10358 d4 4 0 1 +10360 O-O 2 0 4 +10361 O-O 4 0 4 +10367 d4 6 1 2 +10366 d3 3 0 2 +10364 d4 5 0 10 +10364 Bc4 2 2 4 +10365 d4 5 0 8 +10362 d4 56 7 53 +10362 Bc4 10 0 10 +10362 d3 3 2 9 +10363 d4 45 1 28 +10363 Bc4 14 0 15 +10363 d3 3 0 3 +10369 d4 3 0 2 +10370 Nc3 3 0 16 +10370 Be2 3 0 5 +10371 Nc3 7 0 5 +10371 Be2 3 1 7 +10374 Nc3 6 0 5 +10375 Nc3 3 0 6 +10378 d4 3 0 2 +10377 d4 2 0 4 +10379 d4 2 0 6 +10379 Nh3 6 0 2 +10382 Nc3 4 1 1 +10383 Be3 5 0 3 +10383 g3 5 0 0 +10384 Be2 3 0 2 +10384 Nc3 1 0 4 +10386 Nc3 4 0 3 +10392 Nc3 6 1 0 +10393 e5 6 0 5 +10391 Nc3 2 0 4 +10389 Nc3 11 1 11 +10389 Nf3 14 0 9 +10389 Be3 11 2 7 +10389 c4 4 0 8 +10389 Qe2 3 4 3 +10389 f3 2 0 7 +10389 c3 4 0 4 +10389 Ne2 4 1 2 +10389 f4 3 0 4 +10390 Be3 7 1 5 +10390 Nf3 10 0 2 +10390 c3 8 0 3 +10390 Nc3 6 1 2 +10390 c4 5 0 3 +10390 f4 3 0 3 +10399 e5 6 0 2 +10398 Bd3 2 0 4 +10396 Nf3 28 1 27 +10396 Bd3 7 2 8 +10396 f4 6 0 7 +10396 e5 5 0 7 +10396 d5 2 0 3 +10396 Bc4 5 0 0 +10397 Nf3 22 1 16 +10397 Bc4 5 0 4 +10397 f4 3 0 4 +10397 Bd3 3 0 2 +10408 Nc3 2 0 4 +10408 Bd3 2 0 4 +10407 c4 9 0 3 +10407 Nc3 5 0 2 +10407 dxc6 3 0 2 +10405 c4 17 1 17 +10405 Nc3 6 1 5 +10405 dxe6 2 1 6 +10406 c4 9 0 6 +10406 Nf3 5 0 4 +10406 Nc3 3 0 4 +10412 c4 4 0 7 +10412 Be3 5 1 2 +10412 Bd3 4 0 4 +10412 c3 4 0 1 +10416 Nge2 3 1 5 +10416 d4 1 0 5 +10419 d5 1 1 3 +10420 Nf3 5 0 9 +10420 d4 7 0 5 +10421 d4 3 0 3 +10422 Nf3 7 0 11 +10422 Be2 0 0 6 +10422 Be3 2 0 4 +10424 Nf3 4 0 3 +10424 d4 1 1 5 +10427 Bb3 2 0 5 +10429 Bd5 3 0 2 +10430 f4 10 0 10 +10430 Qh5 2 0 3 +10432 Nf3 8 1 3 +10432 d3 7 0 0 +10431 d3 8 0 7 +10431 Nf3 7 0 8 +10431 f4 2 0 3 +10440 Nc3 2 0 8 +10440 e5 4 0 1 +10440 Ng5 3 0 2 +10441 a3 2 0 3 +10438 Ng5 6 1 9 +10438 d3 5 0 5 +10438 d4 6 0 3 +10438 h3 1 1 4 +10438 O-O 3 0 3 +10438 Nc3 3 0 2 +10443 d3 6 1 2 +10437 O-O 8 1 15 +10437 d3 8 0 13 +10437 d4 4 1 12 +10437 Nc3 4 2 11 +10437 c3 5 0 8 +10437 a3 4 0 8 +10437 e5 8 0 2 +10439 O-O 2 1 6 +10439 Ng5 1 0 5 +10439 d3 2 0 3 +10442 d4 5 0 3 +10446 Qc3 2 0 6 +10445 d3 0 1 4 +10444 Nh3 2 1 10 +10444 d3 5 0 8 +10444 Nc3 3 0 5 +10444 c3 4 0 3 +10444 Ne2 4 0 1 +10447 Nf3 6 2 13 +10447 c3 8 2 7 +10447 d3 6 1 6 +10447 Nc3 3 0 3 +10447 f4 2 0 3 +10448 Qxc5 3 0 5 +10451 d3 1 2 3 +10449 c3 1 0 8 +10449 Nf3 3 2 2 +10449 d3 2 0 4 +10454 d3 9 2 19 +10456 d3 3 0 3 +10453 Nf3 7 0 12 +10453 d3 4 1 6 +10453 d4 6 0 3 +10453 Qe2 6 0 3 +10460 Nc3 5 0 1 +10459 Nc3 5 0 2 +10459 Nf3 4 0 1 +10464 Nf3 3 0 2 +10465 exd5 1 0 4 +10471 f4 2 0 3 +10472 Nf3 2 1 7 +10472 d3 4 0 2 +10472 f4 3 1 1 +10474 f4 0 1 4 +10473 f4 1 1 5 +10475 c3 6 0 2 +10475 Ng5 3 1 4 +10475 d3 4 0 1 +10475 a3 2 0 3 +10476 Nc3 5 0 4 +10476 Ng5 1 1 5 +10476 e5 2 0 5 +10477 d4 1 0 5 +10477 d3 2 0 3 +10477 O-O 2 1 2 +10483 Qxf7 5 0 4 +10482 d3 5 0 6 +10482 h3 5 0 2 +10482 Nc3 3 0 2 +10481 d3 4 0 8 +10481 Ne2 3 0 4 +10481 Nh3 3 0 3 +10485 Nf3 0 1 5 +10484 Qf3 9 0 2 +10486 d3 1 0 4 +10491 Nf3 1 0 4 +10494 Qxd4 5 1 9 +10496 c3 1 1 3 +10495 d3 2 0 3 +10498 f4 4 1 3 +10499 Nf3 18 1 29 +10499 d3 8 0 18 +10499 a4 4 1 2 +10499 a3 2 0 3 +10501 d3 3 0 4 +10500 a4 11 0 13 +10500 a3 9 0 6 +10500 Nf3 5 2 7 +10500 d3 3 0 2 +10504 exd5 4 0 1 +10502 Nf3 2 1 3 +10505 c3 11 0 16 +10505 d3 10 0 11 +10505 O-O 5 1 12 +10505 d4 5 0 6 +10505 Nc3 3 0 3 +10505 a3 3 1 2 +10508 e5 6 0 3 +10508 d3 2 0 5 +10507 d4 5 2 9 +10507 a3 6 0 6 +10507 Nc3 4 0 4 +10507 O-O 2 0 5 +10507 a4 1 0 6 +10506 exd5 28 1 31 +10506 Bb5 2 0 3 +10512 exd5 3 0 3 +10513 c3 7 0 7 +10514 c3 4 0 4 +10515 Ne2 3 0 3 +10518 Qf3 1 0 4 +10521 c3 1 0 4 +10519 d3 2 0 3 +10520 exd5 8 1 5 +10523 Nf3 3 0 4 +10522 Nf3 0 1 4 +10522 d4 1 0 4 +10524 exd5 4 0 1 +10526 c3 1 0 5 +10526 a3 1 1 4 +10525 a3 2 1 4 +10525 Nf3 2 0 4 +10525 Nc3 2 0 3 +10527 exd5 11 1 11 +10529 Qxd4 13 0 27 +10530 exd5 2 1 6 +10531 Nf3 4 0 7 +10531 f4 3 1 2 +10533 exd6 2 1 2 +10537 Bxc6 7 0 3 +10536 Bxc6 3 0 4 +10541 Nf3 2 1 3 +10540 Nf3 7 0 4 +10545 Bb5 8 1 5 +10545 d4 7 1 5 +10545 Bc4 4 1 4 +10547 Bb5 4 1 2 +10547 Bc4 1 0 4 +10544 d4 11 1 10 +10544 Bb5 10 0 6 +10546 d4 5 0 5 +10546 Bb5 1 1 6 +10546 Bc4 5 0 3 +10549 f4 1 0 4 +10553 Nf3 5 0 4 +10554 Nf3 1 0 5 +10552 Nf3 12 0 6 +10551 Nf3 15 1 10 +10557 Bg2 4 0 1 +10556 Bg2 4 3 3 +10558 Bg2 1 0 6 +10555 Bg2 4 1 3 +10555 d3 2 0 5 +10560 Bxd7 3 0 3 +10561 Bxc6 3 0 2 +10562 Nf3 2 0 6 +10562 d3 2 0 3 +10567 Bb5 4 0 4 +10567 d4 2 0 4 +10567 Bc4 2 0 3 +10567 d3 1 0 4 +10566 d4 10 0 9 +10566 d3 0 0 5 +10568 d4 5 1 6 +10569 d4 2 1 8 +10570 d4 4 1 0 +10571 Bc4 0 0 5 +10574 Qxd4 1 0 6 +10576 Nf3 12 0 4 +10575 Nf3 14 0 5 +10577 Nf3 5 0 1 +10578 Bg2 5 0 1 +10581 a3 2 1 2 +10584 d4 6 0 7 +10584 Bb5 3 0 6 +10585 d4 8 4 3 +10583 exd5 12 3 7 +10587 Qxd4 2 1 5 +10589 Nf3 5 0 2 +10588 Nf3 5 1 0 +10591 Bg2 4 0 2 +10592 Bg2 4 0 1 +10590 exd5 3 0 4 +10594 Be3 7 0 12 +10595 Nf3 7 0 5 +10596 d3 3 1 1 +10598 d3 3 0 3 +10604 Nxd4 12 2 11 +10603 Bxc6 12 0 3 +10603 Nc3 7 0 2 +10603 e5 4 0 1 +10606 Bxc6 4 0 3 +10606 Nc3 3 0 2 +10605 Nc3 2 1 6 +10605 O-O 2 0 5 +10605 Bxc6 3 0 4 +10600 Bxc6 46 5 47 +10599 Bxc6 29 4 32 +10599 O-O 8 2 10 +10599 d4 4 5 5 +10599 c3 6 0 2 +10607 Bxc6 6 1 2 +10602 Bxc6 35 2 21 +10602 O-O 9 0 7 +10602 d4 3 0 4 +10602 Nc3 4 0 2 +10601 Bxc6 23 2 30 +10601 O-O 10 1 11 +10601 c3 4 0 6 +10601 Nc3 1 0 4 +10601 d4 1 0 4 +10613 d3 11 0 5 +10613 Ng5 2 0 5 +10613 Nc3 1 1 4 +10614 a3 3 0 3 +10614 O-O 2 0 3 +10610 O-O 13 2 10 +10610 h3 8 1 8 +10610 d3 7 0 10 +10610 c3 5 1 9 +10610 a3 5 0 9 +10610 Nc3 6 0 6 +10610 Ng5 3 0 6 +10610 d4 2 0 6 +10612 c3 4 0 7 +10612 a3 4 0 6 +10612 d3 5 0 4 +10612 Nc3 4 0 3 +10612 O-O 2 0 4 +10609 d4 48 4 53 +10609 O-O 41 0 30 +10609 c3 23 3 30 +10609 Nc3 20 1 33 +10609 d3 16 3 33 +10609 a3 18 2 27 +10609 e5 3 0 6 +10611 d4 3 1 11 +10611 c3 7 0 7 +10611 O-O 5 0 5 +10611 Ng5 3 1 5 +10611 a3 2 0 7 +10611 d3 5 0 3 +10611 Nc3 5 0 3 +10615 Nc3 3 0 2 +10621 Bc4 4 1 5 +10621 d4 2 0 4 +10622 d4 3 0 3 +10618 Bb5 17 1 17 +10618 d4 11 3 19 +10618 Bc4 10 3 9 +10618 d3 1 0 5 +10620 Bb5 7 1 14 +10620 Bc4 7 2 10 +10620 d3 3 0 6 +10617 d4 28 3 26 +10617 Bb5 9 1 12 +10617 Bc4 14 1 5 +10617 d3 2 0 4 +10619 d4 12 0 22 +10619 Bc4 5 0 8 +10619 Bb5 1 1 6 +10624 Bb2 3 0 4 +10629 e5 8 1 7 +10629 d3 2 0 3 +10631 d4 0 0 7 +10628 exd5 9 2 10 +10628 e5 5 0 9 +10625 d4 10 3 21 +10625 Bc4 3 1 4 +10625 Bb5 1 0 4 +10626 d4 8 0 15 +10626 Bc4 7 0 4 +10626 Bb5 7 0 3 +10627 d4 13 1 17 +10627 Bb5 4 1 4 +10630 d4 11 0 9 +10630 Bc4 4 0 2 +10633 Nc3 1 0 6 +10633 d4 3 0 3 +10634 Nc3 4 0 6 +10634 d3 4 0 1 +10632 d3 4 0 3 +10632 Nc3 4 0 2 +10636 Be2 3 0 4 +10637 Be2 0 0 5 +10645 Nxd4 7 0 2 +10644 d5 7 0 2 +10640 Nxd4 620 42 638 +10640 c3 21 1 19 +10643 exd5 4 0 6 +10643 dxc5 2 0 4 +10642 d5 9 1 2 +10642 dxc5 8 0 2 +10646 d5 3 0 2 +10641 d5 23 0 6 +10641 dxc5 8 0 2 +10641 Bb5 6 0 1 +10650 exd6 2 0 4 +10652 exd5 4 0 1 +10653 d4 3 0 2 +10656 Ng5 2 0 4 +10655 d4 1 1 5 +10658 d4 3 0 5 +10660 d4 4 0 3 +10661 Nxd4 24 3 20 +10664 d3 4 2 4 +10663 Nc3 1 0 4 +10665 d4 3 0 2 +10666 Nxd4 24 1 12 +10666 c3 4 0 1 +10670 Nc3 9 1 7 +10671 dxe6 3 0 2 +10672 Bxd7 49 11 57 +10672 Qe2 9 2 12 +10672 Nc3 9 1 9 +10672 a4 6 1 2 +10672 c4 2 0 4 +10673 Bxc6 17 0 19 +10673 d4 6 0 11 +10673 O-O 1 2 4 +10673 c3 4 0 3 +10674 Bxd7 3 1 3 +10674 O-O 1 0 4 +10682 h3 3 1 2 +10675 d4 20 3 26 +10675 Ng5 14 1 18 +10675 O-O 17 2 9 +10675 Nc3 14 2 10 +10675 c3 6 0 18 +10675 a3 9 0 11 +10675 d3 9 1 8 +10675 Bxf7 1 0 4 +10677 Nc3 15 2 25 +10677 d3 17 1 24 +10677 Ng5 18 0 12 +10677 d4 7 0 8 +10677 e5 5 1 8 +10677 O-O 7 0 4 +10677 Qe2 0 0 7 +10677 c3 3 0 3 +10678 Ng5 2 1 7 +10676 d4 16 1 35 +10676 O-O 9 4 29 +10676 Nc3 11 1 19 +10676 a3 16 0 9 +10676 d3 7 1 17 +10676 c3 5 0 12 +10680 d4 0 0 5 +10679 O-O 1 1 3 +10679 Nc3 3 0 2 +10679 d3 3 0 2 +10684 O-O 1 0 4 +10683 O-O 1 0 4 +10685 Bb5 14 1 32 +10685 d4 17 2 26 +10685 Bc4 15 0 11 +10686 d4 28 5 47 +10686 Bc4 15 1 9 +10686 Bb5 7 0 8 +10687 d4 8 0 12 +10687 Bc4 4 0 7 +10689 Bc4 3 0 3 +10688 d4 3 1 12 +10688 Bb5 6 0 4 +10690 d4 2 0 9 +10693 Bb2 3 1 3 +10696 d4 23 4 16 +10696 Bb5 6 0 8 +10696 Bd3 5 0 3 +10696 Bc4 7 0 0 +10695 Be2 10 1 7 +10695 Bd3 10 0 6 +10695 d4 6 0 9 +10695 e5 6 0 9 +10695 d3 5 0 8 +10695 Qc2 1 0 5 +10699 d4 6 0 1 +10698 d4 5 0 1 +10697 d4 4 0 10 +10701 Nc3 4 0 6 +10702 Nc3 7 0 7 +10703 Be2 2 0 8 +10707 d5 8 0 1 +10707 dxc5 6 0 1 +10708 Nc3 4 0 3 +10708 e5 2 1 3 +10711 d5 2 0 5 +10709 dxc5 5 0 2 +10706 Nxd4 556 38 572 +10706 Qxd4 40 3 42 +10706 c3 11 0 10 +10710 dxc5 4 1 3 +10714 d4 2 0 4 +10715 Bg2 4 1 2 +10718 Bd3 3 0 3 +10718 Be2 2 1 2 +10718 Bc4 2 0 3 +10719 O-O 11 1 13 +10719 Nc3 7 0 11 +10719 d4 4 0 13 +10719 c3 6 0 9 +10719 d3 2 2 3 +10719 a3 3 0 2 +10722 Nc3 3 0 6 +10720 O-O 1 1 9 +10720 a3 4 0 7 +10720 d4 2 0 9 +10720 Nc3 2 1 7 +10720 a4 4 0 5 +10720 c3 1 0 4 +10721 exd5 24 1 15 +10725 O-O 2 0 4 +10728 d4 15 1 15 +10728 Bb5 7 0 15 +10728 Bc4 4 0 4 +10728 d3 3 0 3 +10730 d4 3 1 2 +10727 d4 20 0 32 +10727 Be2 4 2 4 +10727 a4 0 0 6 +10727 d3 0 0 5 +10727 g3 4 1 0 +10729 exd5 14 0 15 +10729 d4 6 0 6 +10729 Bb5 3 1 1 +10731 d4 3 0 3 +10732 exd5 4 0 2 +10735 Bb2 2 0 4 +10734 exd5 8 1 4 +10737 d4 7 1 16 +10738 e5 2 1 4 +10739 d4 6 0 4 +10736 exd5 13 0 12 +10736 e5 10 0 5 +10736 d4 3 0 4 +10740 Nc3 3 0 4 +10740 d4 1 0 4 +10741 cxd5 5 0 2 +10743 Nc3 3 0 4 +10744 exd5 4 1 2 +10749 d5 7 0 2 +10749 dxc5 2 0 3 +10748 e5 6 0 6 +10750 d5 1 1 6 +10746 Nxd4 287 19 293 +10746 Qxd4 9 0 14 +10746 c3 6 1 9 +10747 exd5 41 4 46 +10747 dxc5 13 0 11 +10747 e5 9 0 8 +10747 Nc3 3 0 2 +10747 Bb5 2 0 3 +10751 dxc5 5 0 2 +10753 c3 1 1 3 +10753 Bb5 1 0 4 +10754 exd6 3 0 2 +10757 O-O 11 2 6 +10757 c3 7 1 5 +10757 d3 2 0 5 +10757 Ng5 3 0 3 +10757 d4 0 0 5 +10760 Bc4 12 0 8 +10760 d4 5 0 8 +10761 d4 3 0 2 +10762 d4 24 1 14 +10762 Bc4 3 0 3 +10766 d5 1 0 7 +10765 Nxd4 66 0 75 +10765 Qxd4 12 0 10 +10769 Qb3 2 0 3 +10768 c3 1 1 6 +10768 Nh3 2 0 4 +10771 d3 4 0 3 +10776 Qe3 1 0 5 +10778 d3 1 0 9 +10779 Qf3 5 0 8 +10780 Qf3 3 0 6 +10781 Qh3 2 0 6 +10782 Qf3 1 0 5 +10786 Bb5 4 0 2 +10784 Bb5 3 0 4 +10784 Nf3 2 0 3 +10795 exd5 3 0 4 +10796 Nxa3 0 0 5 +10800 cxd4 48 2 34 +10801 d5 3 1 1 +10803 d4 3 0 8 +10803 Nf3 2 1 2 +10804 d4 3 0 4 +10806 d4 9 1 11 +10806 Nf3 6 0 4 +10808 cxd4 34 0 36 +10810 cxd4 3 0 10 +10811 cxd4 8 2 12 +10812 e5 7 0 9 +10813 cxd4 7 0 5 +10814 Nc2 2 0 3 +10815 d3 12 0 8 +10815 Nf3 3 0 2 +10818 d3 4 0 6 +10816 d3 7 0 4 +10816 Nf3 1 0 8 +10817 d3 9 0 4 +10817 Nf3 4 0 2 +10821 Nc3 4 1 0 +10821 d4 1 1 3 +10822 d4 1 0 4 +10820 d4 1 0 6 +10820 Nc3 3 0 2 +10827 Nf3 4 1 7 +10827 d3 4 0 5 +10828 d3 3 0 3 +10831 Nc3 1 1 3 +10834 d3 5 1 3 +10838 d3 8 0 7 +10842 Nf3 1 1 5 +10844 g3 2 1 2 +10849 Be2 3 0 2 +10848 Be2 0 0 6 +10862 g3 2 0 3 +10863 g3 1 0 5 +10864 Be2 3 0 4 +10864 Nc3 3 0 3 +10865 Be2 5 0 1 +10868 f5 1 0 5 +10872 Nf3 3 0 3 +10873 Nc3 2 0 3 +10874 g3 0 1 8 +10874 exd5 1 0 4 +10875 exd5 7 0 2 +10875 Be2 3 0 2 +10880 Nc3 0 0 5 +10881 Nf3 4 0 2 +10883 c3 4 0 1 +10886 Nxd4 34 3 16 +10886 Bc4 10 1 17 +10886 c3 4 0 2 +10886 Bb5 0 0 6 +10887 Bc4 4 1 3 +10887 Nxd4 4 0 4 +10888 c3 6 0 0 +10889 Nxd4 4 1 4 +10890 Qd1 81 7 121 +10890 Qe3 28 2 60 +10890 Qa4 16 1 49 +10890 Qc3 7 0 26 +10890 Qc4 12 1 19 +10890 Qd5 5 0 15 +10890 Qd3 4 0 15 +10890 Qd2 4 0 8 +10890 Qc5 1 0 6 +10892 Nc3 2 0 4 +10893 Nc3 2 0 3 +10895 cxd4 8 1 8 +10899 e5 2 0 5 +10897 Bxd3 8 0 10 +10894 Nxc3 80 0 63 +10894 Bc4 22 0 26 +10898 Nf3 2 0 5 +10896 cxd4 3 0 12 +10903 Nc3 4 0 2 +10902 Qxd8 9 1 5 +10906 exd5 8 0 4 +10909 Nc3 6 0 3 +10909 Nf3 2 0 4 +10911 Qe2 4 0 4 +10910 exd6 1 2 4 +10910 Bb5 1 0 4 +10912 exf6 1 1 3 +10917 Nf3 1 0 6 +10916 Nf3 3 0 4 +10921 Nge2 0 1 6 +10920 Nge2 1 0 7 +10923 Nge2 4 0 7 +10925 Nf3 2 0 3 +10930 Nc3 5 0 1 +10931 d3 2 0 3 +10929 exd5 7 0 5 +10929 e5 4 0 6 +10926 Bc4 16 1 15 +10926 Bb5 8 0 11 +10926 d4 7 1 8 +10926 Nc3 4 0 5 +10926 d3 7 0 2 +10926 c3 4 0 4 +10926 c4 4 0 2 +10926 Be2 3 0 2 +10927 Bc4 11 0 12 +10927 Bb5 9 1 8 +10927 c3 8 0 7 +10927 d4 9 1 5 +10927 Be2 8 0 1 +10927 d3 6 0 3 +10927 Nc3 5 1 1 +10928 Bc4 16 1 10 +10928 c3 4 0 5 +10928 d4 3 2 3 +10936 Nc3 7 0 5 +10937 Ng5 7 1 5 +10940 Nf3 4 0 3 +10938 Nf3 10 0 9 +10938 c3 3 0 2 +10939 Nf3 3 0 5 +10942 c4 1 0 4 +10941 Nc3 17 0 16 +10941 Nf3 14 1 9 +10943 f5 1 0 4 +10944 Bc4 25 0 20 +10944 c3 14 1 6 +10944 d3 3 1 8 +10944 d4 4 0 7 +10944 Bb5 4 0 3 +10944 Nc3 2 1 3 +10944 Be2 3 1 1 +10945 Nc3 4 0 9 +10945 e5 4 0 1 +10945 d3 2 0 3 +10946 Bb5 3 0 5 +10946 Bc4 4 0 3 +10952 Nf3 4 0 1 +10955 Bc4 6 0 9 +10955 Bb5 6 1 4 +10955 d4 2 1 3 +10955 Nc3 4 0 2 +10955 c3 3 0 2 +10957 Nc3 3 1 1 +10956 d4 2 0 3 +10954 exd5 19 3 28 +10954 e5 14 0 17 +10961 c3 11 1 14 +10961 Bc4 4 0 3 +10961 Nc3 2 1 3 +10961 d4 1 1 3 +10967 Bb3 102 4 76 +10967 Bb5 66 7 53 +10967 Be2 4 0 3 +10968 exd5 0 0 5 +10969 exd5 5 0 4 +10970 exd5 4 0 2 +10971 Nxe4 15 0 5 +10973 Nxe4 5 0 1 +10974 Nxe4 2 0 4 +10975 Nxe4 7 4 5 +10976 Ne4 2 0 5 +10977 d4 26 4 19 +10977 Nf3 7 3 8 +10977 Bb5 3 0 5 +10979 d4 2 1 9 +10982 Bxe4 5 0 6 +10985 exd5 4 0 3 +10984 Ne2 11 0 11 +10983 Nxe4 29 4 26 +10989 Nxd7 3 0 5 +10988 d3 7 0 4 +10987 d3 8 0 9 +10990 dxe4 4 1 4 +10991 Ne5 2 0 6 +10993 d4 33 4 31 +10993 Bd3 2 1 2 +10992 d4 20 3 39 +10992 Be2 8 0 12 +10992 h3 11 0 8 +10995 d4 2 0 4 +10994 d4 10 3 15 +10999 Nc3 4 1 3 +10999 d4 5 0 2 +10998 d4 257 23 275 +10998 Bb5 30 4 31 +10998 Nc3 19 2 40 +10998 c4 11 2 13 +10998 d3 4 0 9 +10998 Be2 4 1 7 +10998 c3 8 0 3 +10998 Bd3 2 0 7 +10998 Ne5 4 0 2 +11000 d4 2 0 3 +11004 exd5 2 1 6 +11006 d4 2 0 3 +11008 e5 5 2 4 +11012 exd5 1 0 4 +11014 Nc3 4 0 4 +11016 Bb2 3 0 6 +11017 Nxe4 4 0 1 +11018 exd5 9 1 5 +11019 d4 4 1 7 +11021 Nb1 3 0 5 +11020 Nxe4 5 0 6 +11023 dxe4 3 0 5 +11025 Nf3 7 0 8 +11025 d4 4 0 8 +11025 Nc3 3 0 3 +11026 fxe4 2 0 4 +11028 Bxe4 4 0 2 +11030 e5 15 2 6 +11030 Bd3 4 0 3 +11029 Nxe4 87 7 94 +11029 f3 8 1 6 +11031 Nf3 5 0 9 +11031 Bd3 3 0 2 +11032 Nxe4 12 0 10 +11033 Nc3 4 1 4 +11034 Bd3 70 3 67 +11034 Nf3 68 2 63 +11034 Nc3 37 2 38 +11034 f4 20 1 18 +11034 g4 18 0 7 +11034 c3 12 1 11 +11034 h3 13 0 7 +11034 c4 9 0 9 +11034 h4 10 1 5 +11034 Nd2 3 0 2 +11036 c3 5 0 13 +11036 dxc5 5 1 6 +11036 Nf3 4 1 2 +11035 Nf3 18 2 20 +11035 f4 14 1 9 +11035 Bd3 10 0 4 +11035 Nc3 4 1 6 +11035 c3 4 0 7 +11035 Be3 3 0 2 +11037 f4 5 0 3 +11040 Nf3 3 1 2 +11039 Nf3 67 1 47 +11039 Bd3 50 5 39 +11039 Nc3 36 4 39 +11039 c4 48 2 28 +11039 Bb5 10 0 18 +11039 c3 5 2 3 +11041 fxe4 10 2 1 +11042 Nc3 3 0 3 +11043 Nc3 2 1 3 +11047 cxd5 2 0 3 +11052 Nf3 2 0 5 +11052 Bd3 1 0 5 +11056 d4 2 0 3 +11057 Ng5 4 0 3 +11057 Ne5 1 0 6 +11059 Nf3 24 3 24 +11059 d4 16 2 15 +11060 Nf3 11 1 12 +11060 d4 9 0 11 +11061 d4 19 0 27 +11061 Nf3 19 5 15 +11061 Nc3 2 0 3 +11065 Bxe4 8 0 5 +11067 Nc3 2 0 4 +11070 d3 4 1 10 +11074 Na3 2 1 2 +11073 Na3 4 0 1 +11077 cxd3 5 0 2 +11075 Nf3 13 0 9 +11075 Ng3 12 0 7 +11075 d3 11 1 7 +11075 f4 6 0 2 +11079 Nf4 4 0 4 +11078 Nf4 3 2 4 +11081 Ng3 10 2 6 +11084 Nf3 2 0 3 +11082 Nxf6 6 0 4 +11083 Nf3 6 0 2 +11091 Nxc6 5 0 1 +11088 d3 11 0 7 +11089 d4 7 1 5 +11090 Qh5 13 0 0 +11093 Nc3 1 0 4 +11095 Nc3 4 0 7 +11095 Bc4 4 0 5 +11094 Nc3 16 2 15 +11094 Bc4 8 2 10 +11099 Nxe4 3 0 5 +11096 Bc4 10 0 4 +11097 Nxe4 6 0 3 +11100 Nxe4 5 0 2 +11104 Qf3 3 0 15 +11107 Bxd3 9 0 4 +11108 Kxd1 26 7 59 +11110 f3 4 0 6 +11110 Bg5 3 0 6 +11110 Bc4 3 1 1 +11116 Nf3 9 1 16 +11116 Bd3 10 0 14 +11116 f4 3 0 5 +11116 g4 4 0 2 +11116 c3 3 0 2 +11118 Nf3 4 0 2 +11119 Bxc6 6 0 1 +11120 Bb5 2 0 5 +11120 d4 3 0 2 +11121 exf6 5 0 2 +11122 Bb5 14 1 8 +11122 Nf3 4 1 4 +11122 c3 5 0 0 +11122 Bd3 2 1 2 +11124 Bb5 7 1 5 +11124 Nf3 9 0 4 +11123 f4 9 1 5 +11123 Nf3 5 0 10 +11123 exf6 5 1 7 +11123 Bb5 6 1 4 +11128 Bxd7 1 1 4 +11130 Bb5 4 0 3 +11130 d4 2 0 3 +11132 d4 6 0 9 +11133 Qxd4 5 1 8 +11137 Nf3 14 0 13 +11141 d3 2 0 3 +11138 Nf3 4 0 1 +11145 Be2 2 1 6 +11145 h3 5 0 1 +11143 Bb5 6 0 8 +11143 Bc4 1 0 5 +11143 c3 2 0 3 +11146 d3 4 0 2 +11144 Bc4 6 1 2 +11144 c3 4 0 2 +11149 Nxc3 6 0 0 +11153 Nf3 6 0 3 +11153 f4 4 0 5 +11154 Nf3 6 0 3 +11152 Bf4 2 0 3 +11152 Nf3 2 1 2 +11155 Nf3 2 0 3 +11159 Nf3 3 0 3 +11158 Nf3 8 0 3 +11160 Nf3 5 1 1 +11163 d4 3 0 3 +11171 c3 6 0 9 +11167 Nf3 9 0 7 +11167 Bb5 7 0 6 +11167 c3 3 0 5 +11170 Nf3 6 0 8 +11168 c3 9 0 3 +11168 Nf3 6 0 4 +11166 c3 24 0 22 +11166 Nf3 3 0 8 +11166 Bb5 6 0 2 +11166 Be3 5 0 2 +11166 dxc5 5 0 2 +11166 c4 2 0 3 +11172 Nf3 9 0 0 +11169 Nf3 7 0 3 +11176 Nf3 5 0 1 +11179 Nxe5 8 0 0 +11180 dxe5 13 0 8 +11182 d4 6 0 13 +11182 Nf3 2 0 4 +11185 Bc4 5 0 3 +11186 dxc6 5 0 2 +11187 Bxd5 6 0 6 +11187 Nf3 3 1 3 +11187 Qf3 2 0 3 +11188 dxc6 4 0 8 +11192 Be2 2 0 3 +11189 Nxd5 60 9 97 +11189 Bc4 11 0 15 +11189 Nf3 9 2 9 +11189 d4 10 2 6 +11189 Nge2 3 0 3 +11190 dxc6 34 5 33 +11190 d4 1 1 4 +11191 dxe6 8 1 13 +11193 d4 13 2 13 +11193 Bc4 9 2 14 +11193 Nc3 2 0 3 +11195 Nc3 4 0 1 +11194 dxc6 11 1 7 +11196 dxc6 31 3 41 +11196 Nc3 7 1 12 +11196 d4 8 0 3 +11198 dxe6 2 0 4 +11197 dxe6 29 3 30 +11197 Nc3 4 0 7 +11197 Qe2 4 0 1 +11205 Be2 2 0 4 +11201 Nf3 24 2 16 +11201 c4 21 0 8 +11201 Bd3 3 1 2 +11201 c3 3 0 2 +11201 Bc4 1 0 4 +11203 Nf3 6 1 4 +11202 dxc6 22 3 10 +11204 dxe6 7 1 5 +11208 Nf3 129 8 165 +11208 d4 97 9 73 +11208 d3 45 3 39 +11208 Bc4 30 1 19 +11208 a3 15 0 4 +11208 Qf3 6 1 7 +11208 Be2 4 0 9 +11208 g3 6 0 4 +11208 b3 1 0 7 +11208 b4 5 0 2 +11208 h3 3 1 3 +11208 Nge2 3 1 2 +11215 d4 4 0 2 +11215 Nf3 5 0 1 +11215 d3 5 0 0 +11212 Bb5 14 0 0 +11212 Nf3 5 0 2 +11212 d4 5 0 0 +11214 Nf3 15 3 2 +11211 Nf3 36 1 30 +11211 d4 14 2 14 +11211 d3 9 0 3 +11211 Be2 5 0 1 +11211 Bc4 5 0 1 +11213 Nf3 8 0 3 +11207 Nf3 222 17 151 +11207 d4 137 10 104 +11207 Bc4 59 7 41 +11207 d3 28 4 32 +11207 Be2 10 0 10 +11207 Bb5 9 0 9 +11207 h3 5 0 7 +11207 g3 6 0 4 +11207 Nge2 2 0 4 +11207 b3 3 0 2 +11207 a3 3 0 2 +11207 Qf3 4 0 1 +11210 Be2 193 4 83 +11210 Qe2 115 7 45 +11210 Nge2 55 2 16 +11209 Be2 264 8 140 +11209 Qe2 115 6 60 +11209 Nge2 70 2 47 +11216 Nf3 4 0 2 +11216 Bd3 2 0 3 +11226 Nc3 6 0 1 +11218 Be2 40 4 33 +11218 Nc3 8 2 4 +11224 Nc3 2 0 7 +11224 Be2 2 1 3 +11221 Nc3 12 0 8 +11221 Be2 10 1 7 +11221 d4 2 1 4 +11223 Nc3 9 1 5 +11223 Be2 4 0 6 +11223 Bc4 3 0 3 +11219 Nc3 18 1 2 +11219 Bc4 9 1 10 +11219 d4 11 1 8 +11219 Be2 7 2 5 +11219 c4 5 0 2 +11222 Be2 25 2 14 +11220 Be2 41 1 32 +11225 Nc3 12 0 1 +11233 Qxd5 4 1 3 +11232 Nc3 4 0 1 +11235 Be2 4 0 1 +11234 Qe3 3 0 2 +11231 Nxf3 24 4 14 +11240 Nc3 3 0 8 +11237 Nc3 9 1 6 +11237 d4 10 0 5 +11239 Be2 5 0 3 +11239 Qe2 2 1 2 +11238 Be2 10 0 4 +11243 Bd2 5 1 4 +11242 Nf3 3 0 7 +11245 Be2 2 0 3 +11254 Nc3 4 0 3 +11254 c3 3 0 2 +11247 Nf3 15 1 12 +11247 c3 12 0 3 +11247 Be3 8 1 0 +11247 Nc3 4 0 4 +11252 Nc3 6 1 7 +11252 Nf3 4 1 8 +11252 c4 4 1 3 +11252 c3 4 1 1 +11252 Be3 4 0 1 +11251 Bd2 9 1 9 +11251 Nc3 10 1 7 +11251 c3 5 1 3 +11248 Nf3 6 1 19 +11248 c4 4 1 4 +11248 Nc3 3 0 5 +11248 c3 3 0 5 +11248 Be3 3 0 2 +11249 Be3 17 0 5 +11249 Be2 8 2 5 +11249 Ne2 4 1 4 +11249 Qe2 5 0 3 +11250 Be2 14 1 11 +11250 Be3 9 1 5 +11250 Qe2 3 0 3 +11255 Nc3 4 0 3 +11253 Nf3 7 0 3 +11253 Be3 3 0 4 +11253 Nc3 2 0 3 +11256 Nf3 4 0 1 +11258 d4 4 0 3 +11261 Nf3 16 0 16 +11261 Bb5 13 0 9 +11261 Nc3 8 1 4 +11261 d3 3 0 4 +11261 Bc4 3 0 4 +11263 d3 0 0 5 +11263 Bc4 1 0 4 +11264 Nf3 11 0 6 +11264 Nc3 3 0 5 +11266 Nf3 11 1 9 +11266 Nc3 7 0 11 +11266 d4 6 0 7 +11269 d3 2 0 3 +11269 e5 1 0 4 +11268 Nf3 2 0 12 +11268 d3 1 0 4 +11273 Bxd3 5 1 3 +11282 d4 2 0 3 +11287 d5 6 0 4 +11289 exd5 2 0 4 +11294 Be3 4 0 2 +11297 d4 3 1 1 +11298 Be3 1 0 5 +11299 Nf3 5 0 1 +11300 Be2 4 0 2 +11301 d3 1 0 6 +11309 Be2 2 0 4 +11305 d4 16 1 15 +11310 d4 4 0 2 +11308 d4 3 0 4 +11308 Bc4 1 1 5 +11307 d4 2 0 10 +11307 Bc4 3 0 3 +11306 Bc4 6 1 12 +11306 d4 5 0 8 +11304 d4 26 2 26 +11304 Bc4 13 0 9 +11304 d3 2 1 5 +11311 Be2 1 1 3 +11315 Nxe5 12 2 11 +11318 Nxd4 3 0 2 +11321 Nc3 2 0 3 +11322 h3 4 0 3 +11322 Nc3 2 0 3 +11324 d4 6 0 0 +11329 Be2 6 1 1 +11328 Bc4 3 0 2 +11330 Bc4 2 1 3 +11331 d4 3 0 2 +11332 dxe5 8 0 8 +11332 Be2 1 1 4 +11334 dxe5 3 0 6 +11333 Nxd4 8 0 6 +11338 Nc3 7 0 2 +11338 c4 5 0 2 +11339 Bd3 6 0 3 +11339 Nc3 5 0 3 +11345 Nxe5 5 0 1 +11347 Ng5 2 0 7 +11347 c3 2 1 6 +11347 d4 3 0 2 +11348 d4 6 1 6 +11350 c3 5 1 15 +11350 Be3 9 1 6 +11350 Nc3 5 1 8 +11350 c4 2 1 2 +11353 d4 4 0 2 +11354 d4 3 1 3 +11358 f4 3 0 2 +11364 f3 6 0 1 +11361 Nf3 7 1 5 +11361 f4 9 1 2 +11361 c4 4 0 3 +11362 d5 3 1 4 +11362 c3 4 1 3 +11362 dxe5 2 0 4 +11360 c4 5 0 8 +11360 f4 8 0 2 +11360 Nf3 2 1 5 +11360 c3 2 1 4 +11360 Ne2 2 1 2 +11368 f3 14 0 5 +11368 Be2 10 0 3 +11368 Nf3 3 0 3 +11367 Nf3 32 0 18 +11367 Bg5 10 0 10 +11367 f4 6 0 8 +11367 Bc4 4 0 4 +11367 Bd3 1 0 6 +11367 Be3 1 1 3 +11371 Nf3 5 0 0 +11369 Nf3 6 0 8 +11369 f4 4 0 3 +11370 dxe5 2 0 4 +11366 Nf3 19 1 27 +11366 Bg5 20 2 9 +11366 f4 14 1 10 +11366 Be3 6 0 4 +11366 Bd3 3 0 5 +11366 e5 1 0 5 +11366 d5 2 1 3 +11366 Bc4 4 0 2 +11374 dxe5 3 0 6 +11379 Nc3 5 0 0 +11380 Nc3 4 0 1 +11383 Nc3 3 0 4 +11385 c4 2 0 3 +11386 exd6 14 0 20 +11386 Nf3 3 1 1 +11387 Qxd8 22 2 6 +11389 Nf3 3 0 2 +11388 Nf3 4 1 3 +11392 Bd3 7 0 0 +11392 Nc3 1 0 5 +11393 Nc3 4 0 4 +11394 Nc3 2 0 3 +11395 e5 3 0 3 +11396 Nc3 3 0 4 +11398 Nc3 5 0 1 +11401 Nc3 2 0 4 +11399 Nc3 3 1 3 +11400 Nc3 2 2 1 +11404 dxe5 3 0 4 +11407 Bd3 2 0 3 +11411 Bd3 2 0 4 +11412 Be3 10 0 3 +11412 Nf3 5 1 6 +11412 f4 8 0 3 +11413 Nc3 6 1 11 +11413 Bc4 7 0 4 +11413 c3 5 0 5 +11413 Be3 2 0 4 +11415 Nc3 15 1 7 +11415 Be3 2 0 3 +11418 Nf3 15 0 7 +11418 e5 2 0 3 +11420 Nf3 2 0 3 +11422 fxe5 3 1 2 +11425 Bc4 3 0 2 +11424 d4 7 1 4 +11424 Bc4 3 0 3 +11424 h4 4 0 1 +11426 Nf3 2 0 3 +11427 Nf3 4 0 3 +11430 d4 11 0 8 +11433 Bb3 4 0 1 +11434 exd5 3 0 4 +11435 Qh5 9 0 19 +11435 f4 14 0 4 +11437 d3 4 0 2 +11436 d3 5 0 4 +11441 c3 11 2 7 +11441 d3 5 0 11 +11441 O-O 5 2 5 +11441 a3 4 0 5 +11441 Nc3 2 1 4 +11441 a4 2 0 3 +11442 d3 3 2 6 +11442 Nxe5 4 1 5 +11443 d3 5 0 2 +11443 Nc3 3 2 1 +11443 O-O 3 0 3 +11440 d3 14 1 11 +11440 c3 6 2 6 +11440 h3 4 1 9 +11440 O-O 7 0 6 +11440 Nc3 5 0 3 +11440 d4 3 0 3 +11440 a3 2 0 3 +11444 Nxe5 2 0 3 +11446 d3 12 0 10 +11446 Nc3 3 0 4 +11446 Qb3 5 0 1 +11446 Ne2 4 0 2 +11446 c3 2 0 4 +11447 Qxf6 5 1 6 +11447 d3 3 0 7 +11450 Nf3 6 0 2 +11449 Nf3 30 3 19 +11449 Nc3 3 0 4 +11451 Qxe5 5 0 2 +11452 d3 8 1 9 +11456 Bg5 5 0 1 +11456 h3 3 0 2 +11460 Nf3 3 0 2 +11457 Nc3 3 0 4 +11457 Nf3 3 0 3 +11457 h3 5 0 1 +11463 Qxe5 3 1 1 +11464 f4 23 0 16 +11466 d3 4 1 5 +11466 Nf3 2 1 5 +11465 d3 30 3 19 +11465 Nf3 5 0 10 +11467 d3 6 0 2 +11467 Nf3 5 0 1 +11468 d3 4 0 1 +11472 d3 22 1 23 +11472 c3 17 1 10 +11472 O-O 8 0 10 +11472 a3 7 1 3 +11472 Nc3 5 0 6 +11472 Ng5 2 0 6 +11476 c3 4 0 1 +11474 Nxe5 7 0 14 +11474 Nxd4 11 1 6 +11474 O-O 4 1 3 +11474 d3 4 0 2 +11471 Ng5 34 1 29 +11471 d3 23 1 20 +11471 Nc3 6 5 14 +11475 O-O 8 0 6 +11475 c3 4 0 4 +11475 Nc3 6 0 2 +11475 d3 4 0 3 +11475 a3 2 0 4 +11473 c3 11 0 6 +11473 d3 3 0 9 +11473 O-O 4 0 6 +11473 a3 6 0 2 +11473 Nc3 3 0 5 +11481 c3 15 0 18 +11481 d3 8 2 22 +11481 Ne2 10 0 10 +11481 Nh3 5 0 10 +11481 Qb3 7 0 3 +11481 Nc3 5 0 5 +11481 g4 4 0 3 +11483 d3 4 0 2 +11482 Qxf6 6 1 8 +11482 Nc3 3 2 1 +11489 d3 5 0 1 +11488 Nc3 3 0 3 +11487 Nf3 3 1 5 +11487 Nc3 5 0 4 +11486 Qf3 21 1 14 +11490 d3 19 0 16 +11494 Qf3 4 0 3 +11494 Nf3 3 0 4 +11494 d3 3 2 1 +11494 b4 3 0 3 +11493 d3 28 4 22 +11493 Qf3 5 0 6 +11493 b4 4 0 3 +11495 d3 2 2 3 +11495 h3 3 1 1 +11495 Qf3 2 0 3 +11496 d3 2 0 3 +11500 Nf3 13 2 9 +11500 Nc3 4 1 6 +11500 c3 3 0 5 +11499 Nc3 11 2 12 +11499 Nf3 4 0 7 +11499 Bg5 5 1 4 +11499 c3 4 0 4 +11499 h3 2 0 4 +11502 Nc3 1 1 4 +11501 a3 5 0 2 +11501 Nc3 3 0 3 +11505 f4 12 0 13 +11507 d3 23 1 10 +11507 Nd5 9 0 4 +11507 Nf3 3 0 3 +11506 Nf3 24 0 11 +11506 d3 17 3 15 +11506 h3 11 0 11 +11506 a3 3 1 2 +11512 d3 4 1 2 +11512 Nf3 3 0 2 +11508 Nf3 13 1 11 +11508 d3 11 0 8 +11508 a3 4 0 5 +11513 Nxe4 5 0 4 +11511 d3 4 0 1 +11509 d3 11 1 5 +11509 Nf3 5 1 4 +11509 d4 6 0 2 +11516 exd5 3 0 2 +11510 d3 7 0 5 +11510 Nf3 2 0 3 +11510 h3 2 1 2 +11514 d3 2 0 3 +11521 Nxe5 10 0 11 +11523 Ng5 5 0 0 +11523 d3 2 0 3 +11517 Ng5 46 2 42 +11517 d3 13 0 11 +11517 Nc3 6 1 8 +11517 O-O 3 0 7 +11517 d4 5 0 2 +11518 Nxe5 22 0 24 +11518 Qe2 6 1 8 +11524 Nxe5 4 0 1 +11520 exd5 30 0 14 +11519 Ng5 32 1 10 +11519 d3 4 0 3 +11519 O-O 3 0 3 +11519 d4 3 1 1 +11522 Nxe5 10 0 5 +11526 d3 5 1 6 +11526 c3 2 1 7 +11525 c3 26 1 26 +11525 d3 2 0 6 +11525 Nc3 0 0 5 +11525 Ne2 1 0 4 +11527 d3 9 1 6 +11529 exd5 4 1 4 +11528 h3 8 1 4 +11528 d3 4 0 1 +11533 d3 2 1 2 +11543 c3 5 0 2 +11535 h3 38 3 34 +11535 Bg5 22 0 24 +11535 Nf3 13 0 16 +11535 Nc3 12 1 7 +11535 Be3 7 0 8 +11535 c3 5 0 9 +11535 a3 3 0 4 +11541 c3 2 2 3 +11541 Nf3 4 0 2 +11541 a3 4 1 0 +11541 h3 4 0 1 +11536 a3 15 0 19 +11536 c3 22 0 10 +11536 Bg5 18 0 13 +11536 Nc3 8 1 6 +11536 Nf3 6 0 8 +11536 f4 3 1 3 +11542 a3 2 0 3 +11539 Bg5 10 2 10 +11539 Nf3 7 0 6 +11539 Nc3 6 2 2 +11539 a3 4 0 4 +11539 f4 2 0 3 +11537 exd5 49 3 47 +11537 Bb3 1 0 4 +11540 Bg5 5 0 5 +11540 h3 6 1 2 +11540 Nf3 5 0 4 +11540 Nc3 3 0 2 +11540 a3 2 0 3 +11538 Nf3 11 1 11 +11538 c3 11 0 4 +11538 h3 6 0 7 +11538 Nc3 10 0 1 +11538 a3 4 2 2 +11546 Qxd4 4 0 2 +11548 Qf3 3 0 2 +11549 Nf3 4 0 2 +11551 d3 3 0 5 +11551 O-O 4 0 1 +11551 Nc3 2 0 3 +11553 Qxf6 3 0 2 +11554 Nxf3 4 0 1 +11555 Qf3 4 0 3 +11558 Qe2 4 0 2 +11558 Be2 4 0 2 +11559 d3 9 0 3 +11560 Qf3 5 0 1 +11561 Nf3 4 0 1 +11565 Ba2 4 0 1 +11567 f4 3 0 5 +11570 exd5 15 1 12 +11573 d3 4 0 7 +11574 exd5 4 0 4 +11576 Nf3 3 0 2 +11575 exd5 6 1 2 +11575 Qxe5 4 1 0 +11579 exd5 4 0 3 +11580 exd5 10 0 12 +11581 f4 13 2 6 +11581 Qf3 3 0 2 +11584 Bxe6 4 0 2 +11582 d3 6 0 7 +11583 d3 2 0 5 +11593 Bxe6 4 1 1 +11593 Bb5 2 0 3 +11590 d3 6 0 4 +11590 c3 5 0 1 +11591 O-O 6 0 5 +11591 c3 4 1 4 +11591 d3 1 0 4 +11592 Ng5 6 0 3 +11592 d3 4 0 2 +11594 d3 3 1 1 +11589 O-O 7 0 5 +11589 d3 5 1 4 +11589 d4 5 0 2 +11589 Nc3 2 1 3 +11602 Bxe6 5 0 5 +11600 d3 10 0 16 +11600 h3 14 0 4 +11600 Qb3 9 0 4 +11600 Nh3 1 0 5 +11601 Qxf6 6 1 1 +11601 d3 3 0 3 +11607 d4 5 0 1 +11607 d3 3 1 2 +11609 Nf3 2 0 3 +11608 Nc3 4 0 2 +11608 Nf3 1 1 3 +11606 Qf3 21 2 9 +11610 d3 0 0 5 +11611 d3 10 0 3 +11614 Bxe6 2 0 6 +11612 Nc3 4 0 1 +11613 Nc3 6 1 1 +11617 Qxd4 5 0 1 +11620 Bxe6 1 0 4 +11618 d3 4 0 1 +11623 Qf3 1 0 4 +11624 d3 2 0 8 +11630 d3 1 1 6 +11631 Nf3 5 0 1 +11633 bxc3 1 0 4 +11635 bxc3 3 2 3 +11635 dxc3 1 1 4 +11637 dxc3 3 0 4 +11638 bxc3 1 0 4 +11641 Bb5 2 1 5 +11640 d4 11 0 12 +11640 Na4 6 0 2 +11640 Bc4 4 0 3 +11643 Nf3 4 0 3 +11644 Bxc6 1 0 4 +11646 d3 6 0 3 +11646 Nf3 2 0 3 +11645 d3 9 0 8 +11645 Nf3 3 0 3 +11651 d4 4 0 1 +11651 a3 4 0 1 +11649 Bb5 17 1 11 +11649 Nxe5 6 0 7 +11649 d3 5 0 4 +11649 Bc4 3 0 4 +11648 Bb5 21 2 19 +11648 d4 14 3 13 +11648 d3 7 1 4 +11648 Bc4 5 0 4 +11650 Bb5 8 1 4 +11650 d4 5 1 5 +11655 g4 7 1 0 +11654 h3 5 0 2 +11657 f4 6 0 1 +11661 Nf3 1 0 4 +11660 Nf3 5 1 3 +11659 Nf3 13 0 3 +11662 d3 4 0 4 +11663 d3 2 0 3 +11668 Nxe5 5 1 0 +11666 Bb5 31 2 12 +11666 d4 11 2 21 +11666 Bc4 9 3 14 +11666 d3 5 0 5 +11667 d4 11 1 2 +11667 Bc4 4 0 3 +11671 g4 3 0 3 +11673 h3 3 1 2 +11674 exd5 2 0 3 +11678 Qxd4 4 1 3 +11681 Nf3 4 0 3 +11682 fxe5 4 1 2 +11680 Nf3 7 0 3 +11679 e5 14 1 2 +11679 Nf3 4 0 3 +11679 d4 4 0 3 +11684 d4 3 0 4 +11687 d3 4 0 1 +11691 Be2 4 0 2 +11691 d4 5 0 0 +11692 d4 6 0 0 +11692 Bb5 2 0 3 +11696 d4 1 0 6 +11690 d4 9 0 7 +11693 exf5 5 0 3 +11701 Qxd4 1 0 4 +11702 Nf3 9 0 3 +11703 d3 4 1 5 +11704 d3 8 2 9 +11707 d3 3 0 3 +11708 d3 2 2 1 +11709 d3 4 0 2 +11710 d3 2 0 5 +11715 c3 6 0 3 +11715 d3 4 0 2 +11712 Nxe5 8 0 4 +11712 Nc3 7 0 5 +11712 d3 5 1 4 +11712 O-O 3 0 2 +11714 O-O 7 0 2 +11714 Nc3 7 0 1 +11714 d3 3 0 2 +11714 c3 2 0 3 +11713 h3 7 0 2 +11713 c3 5 0 3 +11713 Nc3 4 0 3 +11713 O-O 5 0 0 +11713 d3 2 0 3 +11720 Bc4 4 0 4 +11721 Nxe5 3 0 2 +11725 Nc3 5 0 5 +11725 d4 4 0 3 +11727 d4 9 1 2 +11724 d4 4 0 8 +11724 Nf3 4 0 5 +11726 Qf3 8 0 2 +11728 Nf3 4 0 2 +11729 d4 4 0 3 +11732 Nxd4 23 3 17 +11738 d3 5 0 0 +11735 Ng5 10 1 7 +11735 Nc3 11 0 1 +11735 d4 7 1 2 +11735 d3 5 0 1 +11737 d3 3 0 2 +11736 Nc3 6 0 0 +11743 Nxd4 10 0 5 +11743 Qxd4 6 0 3 +11744 dxe5 5 0 0 +11758 c3 7 0 2 +11758 Bxc6 3 0 6 +11758 O-O 2 1 2 +11750 Bxc6 85 6 86 +11750 O-O 79 4 73 +11750 c3 53 2 32 +11750 d3 12 3 11 +11750 Nc3 7 0 11 +11754 O-O 19 1 13 +11754 Bxc6 11 1 5 +11754 c3 4 0 11 +11754 Nc3 6 1 4 +11754 d4 1 0 8 +11754 d3 3 0 4 +11752 Nxd4 102 5 73 +11752 Bc4 12 2 10 +11752 Ba4 3 0 2 +11752 Nc3 2 0 3 +11749 Bxc6 92 8 100 +11749 O-O 79 5 68 +11749 d3 65 3 53 +11749 Nc3 51 6 43 +11749 Qe2 4 1 2 +11749 c3 0 0 6 +11751 O-O 64 3 70 +11751 Nc3 20 2 21 +11751 Bxc6 24 1 16 +11751 c3 21 0 17 +11751 d3 20 3 15 +11751 d4 17 1 9 +11753 O-O 36 0 27 +11753 Bxc6 29 4 23 +11753 d3 22 1 22 +11753 Nc3 26 0 12 +11753 c3 3 0 6 +11747 Bxc6 297 21 298 +11747 Ba4 282 14 222 +11747 Bc4 5 0 5 +11757 Bxc6 9 0 3 +11757 exd5 6 0 4 +11748 Bxc6 155 17 180 +11748 O-O 98 8 83 +11748 d4 108 11 68 +11748 h3 65 8 73 +11748 Nc3 42 2 36 +11748 d3 30 2 23 +11748 c3 37 0 14 +11748 Bc4 1 0 4 +11756 Bxc6 4 0 9 +11756 Nc3 4 2 4 +11756 d3 3 0 6 +11756 exf5 3 0 3 +11755 Bxc6 10 1 6 +11755 O-O 6 0 3 +11755 Nc3 7 0 0 +11755 d4 4 0 2 +11760 Bxc6 7 0 2 +11759 Bxc6 5 0 8 +11776 c3 12 0 9 +11764 c3 298 23 240 +11764 d3 220 15 262 +11764 O-O 146 12 174 +11764 Nc3 123 15 131 +11764 b4 47 4 54 +11764 d4 36 3 41 +11764 Ng5 12 0 29 +11764 a3 16 0 12 +11764 Nxe5 3 0 9 +11764 b3 3 0 5 +11764 Bxf7 4 1 1 +11764 h3 3 1 2 +11779 O-O 5 0 2 +11769 d4 45 4 23 +11769 c3 25 2 17 +11769 O-O 24 3 14 +11769 Nc3 12 0 27 +11769 d3 17 2 15 +11768 Nxd4 52 2 48 +11768 Nxe5 24 2 61 +11768 c3 28 2 14 +11768 O-O 28 1 12 +11768 d3 12 1 17 +11768 Ng5 5 0 5 +11768 Bxf7 6 0 4 +11768 Nc3 6 1 2 +11765 Ng5 304 17 293 +11765 d3 192 9 157 +11765 Nc3 137 12 135 +11765 O-O 43 2 48 +11765 d4 38 5 33 +11765 c3 33 0 16 +11765 Qe2 8 0 14 +11772 Nc3 8 0 9 +11772 d4 3 0 8 +11772 O-O 4 0 4 +11772 c3 2 0 4 +11772 d3 1 0 4 +11775 d3 11 0 3 +11775 d4 8 0 1 +11775 h3 3 0 2 +11777 Nc3 8 0 3 +11777 d3 5 0 4 +11774 Nc3 5 0 5 +11774 d3 8 0 2 +11774 O-O 6 0 3 +11770 d4 29 0 9 +11770 d3 16 0 7 +11770 c3 13 0 5 +11770 Nc3 9 0 5 +11770 O-O 8 0 5 +11770 a3 3 0 4 +11770 Ng5 1 0 4 +11781 exd5 10 0 2 +11767 d4 78 7 51 +11767 d3 48 5 46 +11767 Nc3 33 2 23 +11767 O-O 37 3 12 +11767 c3 27 0 19 +11767 h3 26 0 15 +11767 Ng5 2 1 8 +11767 a3 3 0 3 +11778 d3 6 1 3 +11778 exf5 1 0 6 +11771 d4 9 2 8 +11771 c3 8 1 5 +11771 d3 5 0 5 +11771 Nc3 6 0 4 +11771 Bxg8 5 0 1 +11773 d4 6 0 8 +11773 d3 6 0 6 +11782 d3 5 0 2 +11766 d4 219 11 122 +11766 Nc3 126 7 93 +11766 O-O 119 12 78 +11766 c3 103 8 72 +11766 d3 77 5 70 +11766 a3 7 0 9 +11766 b3 4 0 9 +11766 Bd5 5 1 5 +11766 h3 4 0 2 +11766 Bb5 5 0 1 +11784 O-O 0 0 6 +11786 O-O 2 0 7 +11786 d3 3 0 4 +11785 d3 6 2 10 +11787 O-O 1 1 3 +11791 Bc4 19 2 14 +11791 a3 11 2 14 +11791 d3 11 0 8 +11791 Nd5 12 1 6 +11791 d4 10 2 6 +11791 Bb5 4 0 8 +11789 Bc4 75 6 59 +11789 Bb5 48 7 40 +11789 d3 9 1 30 +11789 Nxe5 26 1 13 +11789 Na4 22 3 9 +11789 a3 7 0 10 +11789 d4 7 0 6 +11789 h3 5 1 6 +11789 Be2 6 0 5 +11789 g3 4 0 1 +11789 Nd5 1 0 4 +11797 d4 4 0 4 +11796 Bc4 4 0 1 +11788 d4 125 12 102 +11788 Bc4 103 7 101 +11788 Bb5 62 3 55 +11788 d3 35 2 48 +11788 a3 18 1 14 +11788 Nxe5 8 0 11 +11788 g3 2 0 4 +11794 Bc4 2 1 3 +11794 Bb5 2 0 3 +11792 Bc4 12 1 10 +11792 d4 16 0 4 +11792 a4 2 0 4 +11792 a3 1 0 4 +11790 Bc4 31 2 20 +11790 d4 21 1 18 +11790 Bb5 20 4 14 +11790 d3 7 0 4 +11790 h3 1 0 7 +11795 exf5 7 0 4 +11793 Bb5 5 1 2 +11793 Bc4 5 0 0 +11805 b4 8 1 9 +11805 d3 2 0 10 +11804 Nc3 15 1 20 +11804 d3 9 0 13 +11806 exd5 7 1 6 +11809 Bb2 23 3 14 +11810 Bb2 9 0 12 +11810 Nc3 1 0 7 +11810 d3 2 1 2 +11811 Bb2 4 0 4 +11814 d4 27 1 40 +11814 Bb5 6 0 9 +11814 Bc4 6 0 2 +11814 d3 3 0 5 +11814 Be2 5 0 2 +11814 b4 2 1 3 +11814 h3 3 0 3 +11813 d4 51 5 59 +11813 d3 24 2 30 +11813 Bd3 8 1 11 +11813 Qc2 6 0 13 +11813 Qa4 3 0 6 +11813 Qe2 5 0 4 +11813 Bc4 7 0 1 +11813 Bb5 3 0 4 +11818 d4 3 0 3 +11816 exd5 3 0 8 +11816 d4 3 0 3 +11815 d4 17 2 18 +11815 Bb5 8 0 3 +11815 Bc4 3 0 2 +11822 Nc3 3 0 6 +11822 d3 3 0 4 +11822 a3 2 0 4 +11821 Nc3 9 1 7 +11821 d3 4 0 5 +11829 c3 6 0 0 +11824 Nc3 22 1 15 +11824 Be2 10 0 3 +11824 a3 3 0 8 +11824 c3 4 0 5 +11824 Be3 0 0 7 +11825 Nc3 14 0 18 +11825 Bg5 5 0 13 +11825 h3 4 0 4 +11825 a3 2 0 3 +11828 exd5 5 0 5 +11826 Nc3 2 0 8 +11826 Be2 2 0 4 +11826 Be3 1 0 4 +11827 Nc3 9 0 4 +11839 c3 13 0 11 +11839 Bd2 3 0 3 +11836 d5 15 2 18 +11836 dxe5 5 0 4 +11833 d5 21 0 9 +11833 dxe5 18 0 10 +11833 Nc3 6 1 2 +11833 Bg5 4 0 3 +11834 Nxd4 38 4 29 +11834 Nxe5 6 0 0 +11838 d5 12 0 11 +11838 dxe5 3 1 5 +11835 dxe5 12 2 6 +11835 exd5 7 3 9 +11832 d5 37 2 34 +11832 dxe5 39 4 21 +11832 Bb5 8 0 2 +11832 Bc4 7 0 3 +11831 Nxd4 709 73 742 +11831 Bc4 72 3 67 +11831 c3 23 0 7 +11831 Bb5 12 1 5 +11837 d5 18 0 6 +11837 dxe5 12 1 5 +11843 Nc3 4 0 1 +11843 d3 1 1 3 +11845 d3 3 1 3 +11847 Ba4 3 0 3 +11850 Nxe5 25 1 5 +11850 O-O 8 0 5 +11850 Ng5 3 0 4 +11850 c3 2 0 3 +11850 d3 2 0 3 +11848 Ng5 22 1 20 +11848 Nc3 17 1 7 +11848 d3 7 0 14 +11848 O-O 12 0 5 +11848 d4 3 0 6 +11848 c3 4 0 1 +11849 Nxe5 21 0 19 +11849 Qe2 17 0 15 +11849 O-O 10 0 3 +11849 d3 5 1 6 +11853 Nxe5 4 0 2 +11852 exd5 21 0 7 +11851 Ng5 10 0 2 +11851 d3 6 0 2 +11851 Nc3 5 0 2 +11851 d4 4 0 3 +11854 Nxe5 5 0 3 +11854 O-O 6 0 1 +11858 O-O 2 0 6 +11860 d3 37 2 34 +11860 Bc4 21 2 6 +11860 a3 7 0 9 +11860 Nxe5 5 0 10 +11860 Nd5 2 0 5 +11860 Bd3 4 0 2 +11860 d4 1 0 4 +11863 Bc4 15 0 4 +11863 d4 7 0 2 +11863 Nxe5 4 0 4 +11863 h3 4 0 3 +11865 d4 5 0 0 +11859 Bc4 82 8 65 +11859 d4 64 3 35 +11859 Bb5 51 4 38 +11859 d3 8 2 12 +11859 a3 5 1 8 +11859 Nxe5 2 1 3 +11864 d4 3 0 4 +11864 Bc4 6 0 0 +11862 exd5 24 0 18 +11862 Nxe5 4 0 8 +11862 d3 4 0 4 +11861 Bc4 19 3 19 +11861 d4 20 0 13 +11861 d3 5 0 5 +11861 h3 4 0 4 +11861 Bb5 5 0 0 +11869 Nxf7 6 0 5 +11875 d4 6 1 2 +11877 d4 4 0 1 +11874 Nxc6 9 1 7 +11872 Qe2 96 4 37 +11872 d3 18 0 7 +11872 Qf3 12 0 5 +11872 Bc4 7 2 5 +11872 Nf3 3 1 4 +11872 f3 3 0 2 +11871 d4 59 7 59 +11871 Nf3 46 4 37 +11871 f4 3 0 9 +11871 Nc4 1 0 4 +11876 exd5 3 0 4 +11873 Nf3 53 6 56 +11873 Nxf7 10 1 10 +11873 Nc4 4 2 4 +11873 Nd3 5 0 0 +11884 Nxe5 3 1 4 +11884 h3 6 1 0 +11884 Bg5 3 1 2 +11881 Bg5 14 2 16 +11881 Nc3 12 1 17 +11881 c3 8 0 10 +11881 Be3 7 0 5 +11881 Be2 6 0 5 +11881 a3 6 1 2 +11881 h3 3 1 3 +11881 c4 4 1 2 +11882 exd5 12 1 14 +11882 Bg5 5 1 3 +11882 Nxe5 2 0 4 +11883 Bg5 9 1 5 +11883 Nc3 5 0 2 +11883 Be2 6 0 1 +11887 dxe5 14 0 7 +11887 Nxe5 4 1 9 +11887 Bd3 3 1 1 +11888 dxe5 3 0 3 +11889 dxe5 4 0 2 +11886 Qxd4 13 0 15 +11886 e5 11 1 11 +11886 Nxd4 12 0 8 +11886 Bc4 6 1 2 +11894 O-O 32 1 21 +11894 d3 31 1 14 +11894 Nc3 24 2 13 +11894 c3 5 1 12 +11894 d4 3 0 3 +11896 d3 2 0 3 +11897 d3 2 0 3 +11898 d3 2 0 4 +11895 Nc3 4 0 3 +11895 O-O 4 0 1 +11902 O-O 2 0 3 +11904 Nd5 14 0 3 +11904 Bc4 5 0 7 +11904 d3 4 0 1 +11903 d4 42 0 14 +11903 Bc4 31 1 18 +11903 d3 13 2 10 +11903 h3 4 0 1 +11905 Nd5 4 0 1 +11907 Bb2 2 2 6 +11908 d4 7 0 4 +11909 Bg5 10 0 11 +11910 Nc3 6 1 2 +11914 c3 2 0 3 +11913 d5 6 1 1 +11913 dxe5 2 0 5 +11912 Bg5 8 0 3 +11912 d5 4 0 5 +11912 dxe5 4 0 2 +11911 Nxd4 23 3 26 +11911 Qxd4 13 3 8 +11911 Bg5 3 0 2 +11916 d3 2 0 3 +11917 exd5 6 0 5 +11918 d4 2 0 3 +11920 Bxe4 2 0 5 +11921 Nd5 5 0 2 +11921 Ne2 4 0 2 +11922 Nxe4 5 0 4 +11924 Nxf7 2 0 3 +11923 Bc4 17 0 1 +11923 Nc3 3 0 4 +11927 dxe4 3 1 6 +11928 Nxe5 9 0 6 +11929 Nc3 58 2 29 +11929 d3 4 0 1 +11931 dxc6 7 0 4 +11930 Qe2 11 2 7 +11930 Nd4 8 0 8 +11930 Ng1 6 0 5 +11930 Ne5 3 0 3 +11934 Bxd7 10 0 8 +11934 Bc4 7 2 5 +11934 Qe2 0 0 7 +11934 Nc3 2 0 3 +11933 Ba4 44 2 29 +11933 Bc4 22 5 25 +11933 Be2 4 0 3 +11941 Bxe6 86 7 55 +11941 Qe2 9 1 4 +11941 d3 9 0 3 +11941 Bb3 4 1 6 +11941 b3 7 1 1 +11941 Bb5 6 0 1 +11939 d4 49 0 41 +11939 d3 31 2 25 +11939 Nc3 21 2 24 +11939 c3 19 1 18 +11939 O-O 12 1 17 +11939 h3 12 0 10 +11939 b3 3 0 4 +11937 h3 143 11 110 +11937 Nc3 67 1 33 +11937 d4 55 3 26 +11937 d3 40 1 28 +11937 O-O 33 2 30 +11937 c3 33 1 18 +11937 Be2 5 0 2 +11937 Qe2 3 0 3 +11938 d4 48 5 40 +11938 d3 40 1 38 +11938 Nc3 29 1 22 +11938 O-O 25 1 15 +11938 c3 24 0 14 +11938 h3 6 0 5 +11938 Ng5 3 0 5 +11938 a3 2 1 3 +11951 d3 4 0 2 +11940 Ng5 48 5 24 +11940 Nc3 43 0 27 +11940 d3 32 1 18 +11940 d4 6 0 11 +11940 O-O 7 0 2 +11940 c3 4 1 2 +11949 d3 6 0 2 +11949 d4 4 0 1 +11946 O-O 7 1 6 +11946 Nc3 3 0 9 +11946 d3 7 0 3 +11946 d4 3 0 2 +11946 h3 3 1 1 +11945 d3 10 1 8 +11945 Nc3 11 0 2 +11945 c3 5 1 3 +11945 O-O 2 0 6 +11945 h3 6 0 2 +11948 d3 6 1 3 +11948 Nc3 8 0 1 +11948 d4 5 0 3 +11948 c3 3 0 3 +11944 O-O 9 0 12 +11944 Nc3 5 0 14 +11944 c3 7 0 11 +11944 d3 9 0 2 +11944 d4 4 0 2 +11943 Nc3 16 1 11 +11943 d3 19 0 9 +11943 d4 11 0 7 +11943 O-O 2 1 4 +11943 c3 3 1 3 +11942 exf5 24 1 19 +11942 d3 25 0 13 +11942 Nc3 6 0 5 +11947 d4 8 0 4 +11947 Nc3 8 0 3 +11947 O-O 6 0 3 +11947 d3 4 0 2 +11947 Nh4 4 0 1 +11947 c3 4 0 1 +11950 d3 6 0 1 +11950 d4 6 0 0 +11936 d4 105 5 90 +11936 Nc3 66 7 63 +11936 O-O 55 3 31 +11936 d3 42 1 39 +11936 c3 36 4 33 +11936 h3 40 1 20 +11936 b3 3 2 3 +11936 a3 4 0 2 +11955 Nc3 7 0 1 +11955 d3 4 1 1 +11965 d4 12 0 10 +11965 Bb5 4 0 1 +11964 d4 13 0 6 +11964 Bc4 6 0 8 +11959 Be2 44 6 33 +11959 h3 38 3 14 +11959 Bc4 25 2 15 +11959 d4 5 0 4 +11959 d3 3 0 3 +11962 Bb5 15 1 20 +11962 Bc4 17 1 14 +11962 d4 16 0 7 +11962 d3 2 0 6 +11960 Bc4 31 1 23 +11960 d4 31 5 17 +11960 d3 12 0 10 +11960 h3 6 0 6 +11960 Bb5 2 1 6 +11960 Be2 4 1 2 +11960 Nd5 2 1 2 +11968 d4 3 0 5 +11968 Bc4 4 0 1 +11963 Bc4 10 0 9 +11963 Bb5 8 2 5 +11963 Nd5 6 1 1 +11963 d3 2 0 5 +11961 Bc4 30 1 14 +11961 d4 26 1 12 +11961 d3 5 0 7 +11961 Be2 3 0 3 +11961 h3 4 0 1 +11967 exf5 4 1 7 +11967 d4 6 0 4 +11966 Bc4 7 0 6 +11966 d4 6 1 5 +11974 Bb2 4 0 1 +11982 d4 5 0 3 +11980 d4 7 0 8 +11976 d4 18 1 8 +11976 Be2 8 0 7 +11976 h3 0 0 5 +11977 d4 12 0 10 +11977 Bb5 1 1 3 +11984 d4 4 0 3 +11978 d3 5 0 3 +11978 d4 6 0 2 +11978 Qc2 4 0 1 +11983 d4 1 0 4 +11979 d4 2 0 3 +11979 d3 3 1 1 +11981 d4 3 0 3 +11985 Nc3 2 2 1 +11990 Be2 27 1 6 +11991 Nc3 7 0 1 +11991 Bg5 2 1 2 +11993 Nc3 1 0 4 +11992 Nc3 3 0 2 +11992 Be2 1 0 4 +12009 dxe5 7 0 1 +12003 dxe5 13 1 9 +12003 d5 4 0 2 +11997 dxe5 124 5 44 +11997 Be2 31 0 15 +11997 d5 15 2 17 +11997 h3 8 0 5 +11997 Bc4 5 0 4 +11998 d5 42 4 22 +11998 dxe5 31 2 19 +11998 Bb5 17 0 15 +11998 Bc4 8 0 3 +12000 dxe5 24 3 12 +12000 Bc4 11 0 6 +12000 d5 4 0 4 +12000 Nc3 3 0 5 +12001 dxe5 20 1 10 +12001 Nc3 10 0 2 +12001 Bg5 2 0 3 +12002 dxe5 8 1 7 +12002 d5 5 0 5 +12002 Nc3 4 1 0 +12005 dxe5 7 0 3 +12006 dxe5 7 0 0 +12007 dxe5 5 1 1 +11996 Nxd4 395 34 324 +11996 Qxd4 68 8 58 +11996 Bc4 23 1 18 +11996 c3 11 1 8 +12004 dxe5 7 0 6 +12004 exf5 7 0 2 +12004 Nc3 1 1 3 +11999 dxe5 29 2 10 +11999 d5 14 0 7 +11999 Bc4 5 0 4 +11999 Nc3 7 0 1 +12010 dxe5 4 0 1 +12008 dxe5 5 0 0 +12012 Bg2 3 0 4 +12013 d3 0 0 5 +12018 Bc4 8 1 7 +12018 d4 3 0 2 +12015 Bc4 6 2 9 +12015 Bb5 6 0 7 +12015 Nc3 6 0 4 +12015 c3 2 0 4 +12015 d4 5 0 1 +12014 Nc3 42 3 25 +12014 d3 25 4 30 +12014 Bc4 3 0 5 +12014 d4 3 1 3 +12019 Bc4 6 0 3 +12017 d3 6 1 8 +12017 exf5 8 0 4 +12016 Bc4 6 2 7 +12016 d4 6 0 2 +12016 Nc3 4 0 3 +12027 Nxe5 4 0 2 +12029 Nxe4 4 1 4 +12032 Nxc6 14 0 6 +12031 exf5 10 0 7 +12031 Bc4 3 1 1 +12033 d4 2 2 4 +12034 Qh5 7 0 0 +12039 Nc3 2 0 5 +12038 Nc3 2 0 3 +12038 Bg5 2 0 3 +12040 Nxe5 1 1 3 +12044 Nxe5 3 0 3 +12043 d3 0 0 6 +12042 Nxe5 8 0 18 +12042 Bc4 1 0 5 +12042 d3 1 0 4 +12041 Nd4 17 0 18 +12041 Qe2 9 0 8 +12041 Ng1 3 0 13 +12041 Ne5 6 1 3 +12046 Nc3 5 0 1 +12046 d4 6 0 0 +12046 d3 3 0 2 +12048 d4 9 0 1 +12048 d3 3 0 2 +12047 d4 7 0 2 +12047 d3 3 0 2 +12050 Bxg8 3 0 2 +12053 Bc4 5 0 1 +12053 d4 3 0 2 +12058 Qh5 4 0 1 +12059 Qh5 42 0 6 +12061 d5 10 1 5 +12063 dxe5 3 0 3 +12060 d5 12 1 5 +12060 dxe5 11 0 2 +12062 Nxd4 9 0 1 +12067 d3 1 1 4 +12069 c3 13 0 13 +12069 d3 6 0 3 +12069 Nh3 4 0 4 +12069 Nc3 1 0 4 +12069 Ne2 1 0 4 +12072 d3 6 0 10 +12072 Bc4 4 0 7 +12076 c3 4 0 1 +12075 c3 9 0 10 +12075 Ne2 3 0 2 +12078 d3 3 0 2 +12077 h3 4 0 2 +12077 d3 0 0 5 +12084 Be2 2 0 3 +12080 c3 8 1 11 +12082 exd5 4 0 5 +12083 h3 5 1 2 +12081 Be2 7 1 6 +12086 Nxf3 3 1 1 +12087 d3 5 0 1 +12092 Qxg7 3 0 2 +12094 Qf3 4 0 1 +12095 Qf3 5 1 17 +12095 Qf5 9 2 9 +12097 Bxc6 2 1 5 +12096 Qf3 7 1 4 +12102 Qxf7 8 0 0 +12102 Qf3 2 0 4 +12101 d3 12 0 5 +12100 Nc3 9 0 11 +12100 Nf3 3 0 8 +12100 d3 1 1 8 +12100 c3 3 1 4 +12099 d3 8 1 8 +12099 Nc3 8 0 5 +12099 Nf3 5 0 6 +12099 c3 2 0 5 +12098 Qf3 114 10 178 +12098 Qd1 6 1 5 +12103 Qf3 6 0 3 +12104 Qh4 2 0 4 +12104 Qg5 2 0 3 +12106 Qf3 12 1 18 +12107 Qf3 3 0 3 +12110 d3 26 0 19 +12110 Qg3 17 2 7 +12110 Bc4 12 1 12 +12110 Nc3 12 1 8 +12110 Nf3 3 2 4 +12110 Bb5 2 0 6 +12111 Qxc7 15 1 14 +12111 Qxe7 13 0 10 +12112 Qf3 3 0 4 +12117 Nf3 5 0 7 +12117 Qf3 5 0 2 +12118 Qf3 8 1 11 +12119 Nf3 8 1 4 +12120 Qf3 3 0 2 +12123 Bb5 4 0 3 +12122 Bc4 3 1 2 +12122 Nc3 1 2 2 +12124 Qxe5 9 1 5 +12126 Nf3 2 0 3 +12129 Bc4 10 1 3 +12128 Bc4 10 1 14 +12133 d3 10 0 7 +12131 Nc3 8 0 5 +12131 d3 9 1 3 +12131 Nf3 1 0 6 +12132 d3 6 1 7 +12132 Nc3 7 0 3 +12130 Qf3 58 3 67 +12137 Qh4 2 0 4 +12137 Qg5 2 1 2 +12139 Qxh8 17 0 1 +12140 Qxh8 8 0 2 +12138 Qxh8 32 1 5 +12141 Bc4 2 1 5 +12142 Bc4 2 0 7 +12144 Nce2 5 0 0 +12146 d3 4 0 2 +12146 Nc3 4 1 0 +12151 Bb2 1 1 3 +12150 Bb2 4 0 3 +12153 d4 3 0 2 +12154 cxd4 7 1 7 +12155 cxd4 6 0 7 +12156 Bg5 0 0 6 +12158 Bg5 4 0 2 +12159 cxd4 2 0 3 +12160 d3 4 1 0 +12163 d3 17 0 16 +12164 d3 10 0 6 +12165 d3 8 1 0 +12169 d3 4 0 5 +12170 d3 5 0 0 +12171 Nf3 2 0 4 +12173 Bg5 2 1 2 +12177 d3 4 0 2 +12175 d3 9 0 5 +12176 d3 5 0 2 +12179 Nc3 3 0 4 +12182 Ng3 1 0 4 +12183 Nc3 1 0 7 +12183 c3 4 0 3 +12186 Nf3 0 0 6 +12188 Be2 3 0 3 +12190 Bd2 5 0 4 +12191 Be3 6 1 2 +12191 Nf3 0 0 5 +12189 g3 1 0 9 +12189 Be3 3 0 2 +12189 Nf3 2 1 2 +12192 g3 3 1 2 +12194 Be2 8 0 5 +12194 Nc3 6 0 5 +12194 c3 2 0 4 +12195 Nc3 5 0 9 +12195 Be2 2 0 7 +12196 Nc3 7 0 6 +12196 Be2 4 1 2 +12199 Be2 1 0 4 +12202 Nc3 5 2 2 +12201 Nc3 15 0 0 +12203 Nc3 7 0 1 +12206 f5 1 0 4 +12205 Bxf4 6 1 4 +12208 Nf3 2 0 3 +12212 Bxf6 1 0 4 +12215 Bd2 6 0 1 +12214 Be3 6 0 2 +12217 Ng3 4 0 1 +12219 Nxe5 4 0 5 +12218 Nc3 10 0 9 +12218 Be2 1 0 5 +12218 Bg5 2 0 3 +12220 Nc3 4 0 2 +12222 Nc3 5 0 0 +12226 f5 3 0 3 +12224 Bxf4 3 1 5 +12227 Nd2 3 0 2 +12231 Nb1 3 0 3 +12232 dxe4 1 0 4 +12233 Nc3 21 1 5 +12237 g3 6 0 1 +12236 g3 5 0 2 +12243 Be2 2 0 6 +12240 Nc3 3 0 4 +12241 Bg5 2 0 9 +12242 Be2 2 0 4 +12248 Nc3 5 0 0 +12250 Bxf4 3 0 5 +12259 c3 11 1 2 +12259 Bc4 6 0 2 +12259 Nxd4 3 0 3 +12261 cxd4 4 0 1 +12265 c3 6 0 1 +12264 Nf3 7 0 4 +12264 c4 4 0 1 +12263 c4 12 0 12 +12263 Nf3 9 0 11 +12263 Nc3 4 0 7 +12263 f4 4 0 1 +12263 Bg5 2 0 3 +12262 c3 36 1 9 +12262 Nf3 10 0 4 +12262 Be3 6 1 3 +12267 f4 8 0 10 +12267 Nf3 7 0 7 +12267 Bf4 0 0 5 +12268 Qxd4 3 0 3 +12271 Bd3 6 0 2 +12271 Qe2 6 0 1 +12271 Nf3 2 0 3 +12273 d5 5 0 1 +12276 Nc3 7 1 1 +12278 Be2 6 0 2 +12281 Nf3 4 0 4 +12280 Qxd8 10 2 2 +12286 dxe5 4 0 1 +12284 Nxd4 5 0 0 +12287 Nc3 5 0 2 +12287 Bd3 4 0 1 +12288 c4 4 0 3 +12291 exd6 8 0 6 +12290 Qxd8 52 4 18 +12293 Nf3 5 0 2 +12294 Bc4 44 3 22 +12294 Nxd4 11 0 7 +12294 c3 2 0 4 +12295 Bc4 33 1 14 +12295 c3 7 0 3 +12297 Bc4 5 0 2 +12299 Qd1 83 12 164 +12299 Qe3 100 3 136 +12299 Qc4 22 3 57 +12299 Qa4 20 2 45 +12299 Qd5 11 2 31 +12299 Qd3 13 0 27 +12299 Qc3 1 0 22 +12299 Qd2 7 1 6 +12302 Bg5 4 0 4 +12302 e5 4 0 3 +12302 Nc3 3 0 2 +12303 Qxf6 1 0 4 +12301 Qe5 11 0 3 +12301 Qe3 2 1 3 +12301 Qd1 3 0 2 +12300 e5 3 0 5 +12300 Nc3 7 0 1 +12300 Nf3 5 0 2 +12308 cxd4 12 0 7 +12308 Bc4 13 0 3 +12308 Nf3 7 0 7 +12310 e5 6 1 4 +12310 Bc4 3 0 4 +12310 Bg5 3 0 2 +12313 Nf3 4 0 2 +12311 Bxd3 8 0 11 +12309 exd5 4 1 9 +12309 e5 5 1 3 +12309 Qxd4 4 1 3 +12312 Bc4 7 0 6 +12307 Bc4 359 12 188 +12307 Nxc3 15 2 9 +12316 Nf3 4 0 6 +12319 Qh5 12 0 2 +12319 Nf3 6 0 1 +12320 Nge2 2 0 9 +12326 Bc4 4 1 4 +12325 c3 16 1 7 +12325 Bc4 8 1 8 +12325 fxe5 4 0 6 +12325 d4 4 0 2 +12327 d4 5 0 2 +12331 Nf3 2 0 3 +12333 Nf3 4 0 2 +12337 Bc4 7 0 7 +12337 fxe5 5 0 7 +12336 Bc4 9 0 11 +12336 fxe5 3 1 3 +12339 Nc3 4 1 1 +12339 d3 4 0 1 +12338 exd5 12 0 14 +12334 Bc4 85 1 34 +12334 Bb5 10 1 9 +12334 Nc3 7 1 5 +12334 fxe5 3 0 9 +12334 f5 7 0 3 +12334 d4 3 0 2 +12335 Bc4 67 0 30 +12335 d4 40 0 26 +12335 Nc3 6 0 4 +12335 h4 6 0 1 +12335 d3 4 0 1 +12340 Nc3 1 0 4 +12340 exf5 1 0 4 +12341 Bc4 3 0 2 +12342 d4 10 0 6 +12342 Nf3 7 1 7 +12343 Nf3 5 1 1 +12344 Nf3 4 0 4 +12344 d3 4 0 1 +12350 Nf3 4 0 2 +12349 Nf3 8 0 6 +12349 fxe5 5 0 2 +12349 f5 2 0 4 +12348 d3 10 0 4 +12348 Nf3 8 0 3 +12348 fxe5 5 1 5 +12348 f5 3 0 5 +12351 Nxe4 0 0 5 +12352 Nxe5 12 0 9 +12352 Ng5 1 0 5 +12356 Nc3 10 0 9 +12354 Nc3 17 1 14 +12354 d3 10 0 7 +12354 Bc4 2 3 3 +12355 Nf3 25 1 20 +12358 g3 1 0 5 +12362 Bc4 39 4 20 +12362 Be2 7 0 3 +12362 fxe5 7 0 2 +12361 Bc4 41 2 30 +12361 d4 6 0 3 +12361 Bb5 2 0 5 +12361 fxe5 6 0 1 +12361 h3 3 0 3 +12366 Bc4 7 0 0 +12365 Nc3 11 0 3 +12363 Bc4 31 1 15 +12363 d4 21 0 10 +12364 Bc4 11 0 2 +12364 d4 5 0 2 +12364 fxe5 2 0 3 +12368 Nf3 9 0 5 +12371 Nf3 2 0 4 +12372 Nc3 5 0 4 +12370 Kf1 5 0 8 +12369 Nf3 7 0 4 +12380 d4 60 1 18 +12380 Bc4 22 1 12 +12384 Bc4 9 0 6 +12384 e5 8 0 1 +12384 d4 7 0 0 +12377 Bc4 74 2 46 +12377 h4 20 0 17 +12377 d4 12 0 14 +12377 Qe2 6 1 3 +12376 Bc4 103 2 37 +12376 d4 49 0 21 +12376 Nc3 3 0 8 +12387 Bc4 4 0 3 +12387 d4 4 0 1 +12378 e5 36 2 17 +12378 Nc3 32 1 16 +12378 Bc4 13 0 9 +12378 d3 4 0 5 +12383 Nc3 16 0 9 +12383 Bc4 4 0 2 +12385 Bc4 6 0 2 +12386 Bc4 4 0 6 +12388 Bc4 3 0 3 +12379 exd5 41 1 28 +12379 e5 22 0 16 +12379 Nc3 8 0 3 +12374 Bc4 118 7 69 +12374 d4 53 1 31 +12374 Nc3 8 0 4 +12374 h3 4 0 3 +12382 Bc4 21 0 8 +12382 d4 9 0 4 +12375 Bc4 99 5 68 +12375 h4 20 0 26 +12375 d4 18 2 18 +12375 h3 17 0 11 +12381 Bc4 31 1 17 +12381 d4 3 1 7 +12381 h4 3 0 3 +12393 e5 6 0 4 +12394 Qh5 6 0 0 +12397 Bc4 6 0 5 +12398 Bc4 6 0 0 +12399 Nf3 7 0 0 +12399 Qh5 5 0 0 +12405 Bb3 3 0 3 +12404 exd5 1 0 4 +12406 exd5 5 0 0 +12409 d3 3 0 2 +12411 d5 4 0 4 +12412 exd5 4 1 7 +12413 Bb3 67 4 91 +12413 Qe2 18 0 24 +12413 Bb5 11 3 18 +12413 Be2 1 0 5 +12413 Bd3 2 0 3 +12417 d5 3 1 2 +12415 d5 12 1 2 +12421 d4 1 0 4 +12422 d4 2 0 4 +12424 d4 3 1 5 +12425 exd5 1 2 3 +12427 Ne2 4 0 5 +12429 Nxe4 4 0 2 +12430 Nce2 3 0 5 +12431 Nxe4 6 0 6 +12435 d4 43 7 57 +12435 Nf3 10 0 20 +12435 Qe2 1 0 8 +12436 d3 1 0 5 +12438 d4 6 0 8 +12439 c4 2 0 3 +12439 c3 3 1 1 +12439 Nc3 5 0 0 +12442 Bxc6 6 0 2 +12445 e5 5 0 4 +12445 Nc3 1 0 5 +12446 exd5 5 0 1 +12446 e5 1 1 3 +12449 d3 1 0 4 +12450 d4 7 0 4 +12451 Bd3 5 0 8 +12451 Nc3 2 0 6 +12451 c4 5 0 1 +12453 d4 1 0 4 +12455 d4 5 0 5 +12457 Bb5 3 1 1 +12456 e5 3 0 2 +12460 d4 8 0 9 +12460 c4 7 0 8 +12460 Bc4 3 1 2 +12462 h3 4 0 1 +12461 d4 12 0 3 +12466 d4 2 0 3 +12468 Nc3 10 1 4 +12470 d3 4 0 9 +12470 d4 2 0 5 +12471 d4 8 0 15 +12471 Bc4 6 0 3 +12472 Nc3 5 0 0 +12473 Nc3 27 1 24 +12473 Bd3 12 0 20 +12473 d5 1 0 8 +12474 d4 3 1 7 +12475 c3 4 0 6 +12475 d4 5 1 0 +12475 Nc3 2 0 3 +12475 d3 2 0 3 +12475 O-O 4 0 1 +12476 d3 3 0 5 +12476 a3 3 0 3 +12477 exd5 11 0 10 +12478 d4 9 0 7 +12478 Bb5 4 0 5 +12478 Bc4 3 0 2 +12479 d4 5 0 6 +12481 d4 4 0 2 +12480 d4 2 0 3 +12482 d4 2 0 3 +12483 d4 5 0 0 +12490 d5 4 0 3 +12489 dxc5 3 0 3 +12489 d5 2 0 3 +12487 Nxd4 18 1 42 +12487 Qxd4 3 0 4 +12488 exd5 4 0 4 +12491 dxc5 4 0 1 +12494 exd5 10 1 13 +12495 exd5 6 1 7 +12495 d4 5 0 0 +12496 e5 21 0 13 +12496 exd5 11 1 18 +12500 Bxd7 1 0 4 +12499 Bd3 3 0 6 +12501 Bxe4 3 1 6 +12505 exd5 5 1 5 +12505 e5 2 0 5 +12503 Ne2 23 1 27 +12503 Nb5 2 0 7 +12504 Nxe4 18 1 13 +12509 Nxf7 3 0 3 +12508 d3 8 0 3 +12510 Qh5 6 0 1 +12512 dxe4 6 2 13 +12514 Ne5 5 0 2 +12514 Ng5 5 0 2 +12514 Nfd2 1 1 4 +12522 d4 5 0 3 +12516 d4 16 2 14 +12518 d4 9 0 10 +12519 d4 2 0 9 +12515 d4 46 5 95 +12515 c3 15 1 49 +12515 Bb5 19 2 18 +12515 b4 7 0 5 +12515 a3 3 0 3 +12515 d3 2 0 3 +12515 Nc3 4 1 0 +12521 d4 6 0 2 +12520 c3 1 0 4 +12517 d4 13 1 14 +12524 Nc3 32 0 17 +12524 d4 19 2 12 +12524 Be2 4 0 4 +12524 c4 5 0 1 +12523 d4 292 39 423 +12523 Nc3 26 1 46 +12523 Qe2 10 1 21 +12523 c4 16 0 14 +12523 Be2 10 0 17 +12523 d3 5 1 18 +12523 Bb5 8 1 10 +12523 c3 4 1 6 +12523 Bd3 7 0 3 +12528 c3 2 1 3 +12530 d4 7 0 1 +12534 d4 4 1 6 +12537 d4 4 0 1 +12535 d4 6 0 3 +12541 Bd3 9 0 3 +12541 Nc3 3 0 5 +12541 c4 2 0 4 +12540 Bd3 6 0 5 +12540 Nc3 4 0 4 +12543 Nc3 9 1 5 +12543 Bd3 4 0 2 +12542 c4 5 0 5 +12542 Nc3 3 0 3 +12542 Bd3 4 0 1 +12551 d4 4 1 1 +12552 d4 2 2 2 +12553 c3 4 0 3 +12553 Nc3 4 0 2 +12553 e5 2 0 3 +12556 Nc3 2 0 7 +12560 d3 3 0 2 +12561 Nc3 3 0 8 +12563 Bb2 2 0 3 +12564 Bb2 5 0 9 +12571 exd5 4 0 3 +12572 Nxe4 3 0 3 +12573 exd5 5 0 7 +12574 d4 12 1 5 +12577 Be2 5 0 1 +12580 Nb1 6 0 4 +12580 Nce2 1 0 5 +12584 dxe4 3 1 7 +12585 dxe4 5 1 0 +12586 d4 2 0 5 +12588 Nc3 4 0 4 +12587 d4 7 0 9 +12587 Nf3 3 0 10 +12587 Nc3 3 0 7 +12587 Qe2 3 1 5 +12593 Nc3 4 0 1 +12594 e5 5 0 0 +12597 exd5 5 0 4 +12598 Ne2 3 0 2 +12599 Nf3 3 0 12 +12602 Nc3 2 0 6 +12602 Bd3 3 0 3 +12602 Bc4 0 0 5 +12602 Be2 2 1 2 +12604 Nc3 7 0 5 +12605 Nc3 2 0 3 +12609 Nf3 6 0 6 +12610 e5 5 0 1 +12613 Bd3 5 0 0 +12612 e5 6 0 4 +12615 c4 24 0 8 +12615 Nf3 9 0 2 +12617 Bd3 6 0 2 +12616 Nf3 2 0 5 +12616 f4 4 0 2 +12616 Nc3 3 1 1 +12618 Nf3 4 0 1 +12619 Bd3 4 0 2 +12620 Nc3 12 0 1 +12621 Bd3 4 0 3 +12622 Nf3 2 1 2 +12625 Be3 5 0 4 +12626 Nf3 9 1 5 +12626 Bd3 5 1 4 +12627 Nc3 17 1 13 +12627 Bd3 7 1 6 +12629 Nc3 13 0 8 +12629 d5 4 1 11 +12629 Bd3 3 1 3 +12629 f3 4 0 1 +12631 Nf3 6 0 4 +12632 Bd3 6 0 6 +12633 Bg2 4 0 3 +12634 Bxd4 4 1 1 +12636 Nxd4 35 2 28 +12637 exd5 6 0 7 +12637 e5 2 0 5 +12643 Nf3 3 0 3 +12641 cxd4 17 1 21 +12642 exd5 4 0 4 +12642 e5 5 0 3 +12647 c4 5 0 13 +12647 Nc3 4 0 3 +12648 c4 4 0 3 +12648 Nf3 2 0 3 +12646 exd5 23 1 19 +12646 Qxd5 3 0 5 +12649 Nf3 7 0 6 +12649 Nc3 3 0 7 +12650 Qxd4 1 0 5 +12652 e5 5 0 2 +12652 exd5 4 1 1 +12652 Nf3 2 0 3 +12653 e5 10 0 13 +12653 exd5 7 1 3 +12657 Nc3 3 0 2 +12656 cxd5 19 1 5 +12656 Nc3 3 1 4 +12656 e5 4 0 3 +12656 exd5 4 0 1 +12658 exd5 2 1 3 +12659 f4 2 0 5 +12660 Nf3 3 1 1 +12661 e5 8 0 5 +12662 e5 6 0 2 +12664 Bxe4 3 0 2 +12666 e5 25 0 21 +12666 Bd2 8 0 13 +12666 Bd3 6 0 11 +12666 exd5 5 2 5 +12666 a3 3 0 5 +12665 Bg5 30 0 26 +12665 e5 26 2 15 +12665 Bd3 6 0 6 +12665 exd5 5 0 3 +12668 exd5 16 1 10 +12668 Nf3 8 0 5 +12668 dxc5 3 0 3 +12669 Nf3 5 0 4 +12667 Nxe4 47 6 36 +12675 Ngf3 6 0 0 +12672 e5 18 1 16 +12672 Bd3 4 0 4 +12673 c3 5 2 8 +12673 Ngf3 8 1 5 +12673 exd5 4 1 1 +12674 Nxe4 13 2 7 +12676 Nc3 2 0 6 +12685 c3 4 1 2 +12683 Nf3 4 0 3 +12679 Nf3 28 0 17 +12679 c3 6 0 5 +12679 f4 5 0 2 +12679 Bb5 4 0 2 +12680 Nf3 11 0 9 +12680 f4 5 0 5 +12680 c3 2 0 3 +12682 Nf3 4 0 6 +12684 Nf3 3 0 4 +12677 c3 242 17 301 +12677 Nf3 73 4 94 +12677 Be3 18 2 36 +12677 dxc5 21 1 23 +12677 c4 6 0 23 +12677 Bb5 3 1 17 +12677 f4 8 0 12 +12677 Qg4 6 0 0 +12677 Nc3 2 0 3 +12681 Nf3 6 1 3 +12678 f4 16 0 14 +12678 Nf3 13 1 10 +12678 exf6 5 0 7 +12678 c3 3 0 3 +12678 Bd3 2 0 3 +12689 Nc3 30 3 19 +12689 Nf3 17 0 15 +12689 c4 8 0 7 +12688 Nf3 130 13 116 +12688 Bd3 94 10 77 +12688 Nc3 51 2 67 +12688 c4 41 1 48 +12688 Qe2 6 2 16 +12688 Bb5 5 0 10 +12688 Bf4 8 0 7 +12688 c3 5 0 5 +12688 Be3 3 0 5 +12688 Ne2 4 1 2 +12688 a3 1 0 4 +12688 f4 5 0 0 +12692 Be3 4 0 3 +12693 Be3 4 0 1 +12691 Be3 2 1 2 +12696 Nf3 8 0 0 +12699 Nf3 3 0 2 +12695 Nf3 8 0 2 +12701 Nc3 5 0 1 +12703 Nc3 4 0 1 +12702 Nc3 3 0 4 +12700 Nc3 4 2 5 +12700 c4 2 0 4 +12700 Bd3 3 0 2 +12711 Nc3 8 0 4 +12710 Nc3 6 1 5 +12712 Nc3 4 0 4 +12713 Nc3 4 0 1 +12709 Nc3 11 0 9 +12714 Nc3 3 1 3 +12718 g3 6 0 2 +12719 Nf3 4 0 2 +12717 Nf3 10 0 0 +12722 e5 4 0 2 +12722 Bg5 5 0 0 +12725 Nf3 4 0 1 +12733 Be2 6 0 0 +12735 Nf3 3 0 2 +12737 Nf3 5 1 1 +12736 c3 16 0 21 +12736 Nf3 8 0 12 +12736 Be3 6 0 7 +12736 dxc5 6 1 5 +12736 Bb5 2 0 4 +12742 d4 3 0 6 +12742 Nf3 5 0 3 +12743 Nf3 3 0 2 +12741 Nf3 6 2 6 +12741 d4 3 0 2 +12744 Nxe5 12 0 4 +12746 dxe5 3 4 9 +12746 Nf3 1 0 4 +12748 Nf3 3 1 8 +12748 d4 3 0 4 +12750 fxe5 7 0 8 +12752 Nf3 2 0 3 +12754 fxe4 1 0 4 +12755 d4 2 0 9 +12758 d4 8 1 8 +12759 e5 2 0 3 +12761 d4 7 0 3 +12762 Nf3 9 1 9 +12763 e5 2 0 3 +12764 Nc3 8 0 6 +12764 d3 4 0 4 +12766 Bc4 2 0 4 +12767 e5 4 0 5 +12768 e5 4 1 7 +12768 exd5 4 0 3 +12769 Ng5 4 0 2 +12769 Ne5 2 0 3 +12774 Nf3 2 0 3 +12772 Nf3 6 0 0 +12773 d4 0 0 5 +12770 Nf3 40 2 64 +12770 d4 9 1 16 +12770 c3 1 0 4 +12775 Nf3 1 0 4 +12771 Nf3 8 1 8 +12771 d4 5 1 2 +12779 Nc3 4 0 7 +12779 Nf3 7 0 2 +12778 Nf3 31 1 50 +12778 d4 21 0 17 +12778 Nc3 4 1 5 +12780 d4 5 0 2 +12781 d4 5 1 2 +12782 Bc4 1 1 3 +12789 Bxe4 1 0 5 +12791 fxe5 2 0 3 +12792 Bb3 2 1 6 +12794 d4 2 0 3 +12800 Bxd5 3 0 6 +12800 Qe2 5 0 3 +12800 exd5 1 0 4 +12801 Qe2 4 0 1 +12804 Nxf7 1 0 4 +12806 Ne5 6 0 1 +12807 Qe2 24 0 11 +12807 Qf3 18 0 15 +12807 Qf4 7 0 7 +12807 e5 1 0 8 +12807 Qd1 6 0 2 +12808 f4 6 0 3 +12811 Ng5 3 0 7 +12810 d4 4 1 3 +12813 Nh3 18 1 11 +12813 d3 9 1 8 +12813 c3 8 0 7 +12813 Nc3 2 0 6 +12813 d4 4 0 3 +12815 d4 5 0 3 +12823 Nf3 1 0 4 +12825 Nf3 6 0 0 +12830 e5 4 0 2 +12830 Ng5 3 1 1 +12829 d4 3 0 4 +12829 Ng5 3 1 1 +12829 Nc3 4 1 0 +12828 Ng5 8 0 11 +12828 d4 5 1 4 +12828 d3 3 0 3 +12828 Nc3 3 0 3 +12828 O-O 4 0 1 +12827 d4 16 0 9 +12827 d3 5 1 2 +12827 c3 1 0 6 +12827 O-O 3 0 4 +12836 d4 4 0 1 +12837 d4 1 0 4 +12834 d4 9 0 10 +12834 Bc4 2 0 3 +12835 d4 6 0 5 +12839 d4 6 1 7 +12840 d4 3 1 2 +12845 e5 3 1 1 +12843 e5 5 0 8 +12843 Nc3 5 1 2 +12843 Bc4 5 0 0 +12843 c3 2 0 3 +12846 dxc5 1 0 5 +12841 Nc3 11 0 12 +12841 Bc4 8 0 6 +12841 c4 7 1 3 +12841 Be3 5 0 4 +12841 e5 3 1 3 +12841 c3 5 0 2 +12842 e5 11 0 5 +12842 Bd3 5 1 3 +12842 Be3 5 0 3 +12842 Nc3 5 0 3 +12842 c3 6 0 2 +12842 c4 4 1 2 +12842 Bc4 0 2 4 +12851 d4 2 0 3 +12850 exd6 3 0 2 +12852 Nh3 4 1 8 +12852 d4 3 0 3 +12856 Be3 4 1 3 +12857 Nf3 4 0 6 +12857 c4 2 0 3 +12858 Nf3 4 0 1 +12861 Be3 12 0 3 +12861 Nf3 5 0 4 +12862 Nf3 2 0 4 +12862 Be3 2 1 2 +12870 Nc3 5 0 1 +12870 e5 3 2 0 +12868 Bc4 5 0 1 +12871 Bc4 5 0 3 +12869 e5 6 0 4 +12866 Bc4 24 0 10 +12866 Nc3 20 4 9 +12866 Bd3 3 1 8 +12866 h3 3 0 6 +12866 c3 2 0 3 +12866 c4 3 0 2 +12867 Nc3 18 1 5 +12867 c4 5 0 5 +12867 Bd3 3 0 2 +12867 c3 2 0 3 +12877 Be3 2 0 3 +12875 Bd3 5 0 5 +12875 f4 5 0 4 +12875 Nf3 4 1 3 +12876 e5 2 0 3 +12879 Nc3 9 1 11 +12880 Nc3 5 1 6 +12885 c3 2 0 7 +12883 f4 10 0 12 +12883 Nf3 5 0 8 +12883 exd6 4 1 6 +12883 Bf4 2 0 3 +12884 Nf3 8 0 9 +12884 Nc3 5 0 2 +12884 f4 4 1 2 +12891 Nf3 2 0 3 +12889 Nf3 14 0 16 +12890 Nf3 8 0 2 +12893 Nf3 3 0 8 +12893 f4 2 0 5 +12897 Nge2 0 1 4 +12900 d4 3 0 4 +12900 Bc4 3 0 3 +12898 d4 11 0 6 +12898 Bc4 3 1 3 +12899 d4 10 0 4 +12905 Nf3 3 1 3 +12907 d4 2 0 5 +12912 e3 3 0 2 +12915 d4 2 0 4 +12917 Bb5 1 0 4 +12922 Qxf3 5 0 4 +12925 e3 11 1 2 +12927 Be2 1 1 4 +12931 d4 10 0 1 +12934 Be2 6 0 6 +12934 Bb5 6 1 5 +12934 b3 6 0 2 +12934 c3 3 1 4 +12934 d3 2 0 4 +12938 e3 3 0 2 +12943 Bxd7 2 0 3 +12946 d4 3 0 2 +12945 d4 1 0 4 +12944 d4 3 1 8 +12947 e4 2 1 4 +12948 Nf3 9 1 19 +12949 d3 7 0 0 +12951 e3 3 0 2 +12950 c3 6 0 0 +12952 b3 5 1 2 +12952 d3 2 0 3 +12953 b3 5 0 2 +12955 Be2 2 0 4 +12957 Nc3 3 0 2 +12958 d3 2 0 4 +12959 Bb2 3 0 4 +12960 Bb2 11 0 6 +12964 Bb2 0 0 5 +12965 Bb2 1 0 4 +12967 d3 4 0 6 +12969 Bb2 3 0 6 +12968 Bb2 3 0 5 +12970 Bb2 2 0 4 +12971 d3 5 0 1 +12975 Bb2 0 0 5 +12976 Bb2 0 0 5 +12977 Ne2 4 1 1 +12979 Bb2 4 0 4 +12981 f3 4 1 3 +12983 Ne2 2 0 3 +12984 Bb2 2 0 3 +12987 d3 2 0 3 +12988 d3 4 0 8 +12990 d3 4 0 1 +12989 d3 4 0 2 +12993 Bb2 2 2 2 +12996 e3 3 0 3 +12997 Nd4 3 2 3 +12998 O-O 2 0 3 +13001 Bb2 2 0 4 +12999 Bb2 8 0 4 +13002 Bb2 1 0 4 +13000 Bb2 4 0 5 +13006 Ne2 2 0 3 +13005 Ne2 6 0 5 +13009 Bxe4 2 0 3 +13012 Ne5 3 0 5 +13011 Nxd4 10 0 1 +13019 Bb2 5 0 4 +13018 Bb2 1 1 10 +13021 Bb2 1 1 4 +13020 Bb2 2 0 6 +13024 Ne2 4 0 1 +13025 Ne2 5 0 0 +13031 Nc3 0 0 6 +13030 d4 14 1 12 +13034 dxe5 4 0 3 +13032 dxe5 8 0 8 +13033 dxe5 4 0 4 +13036 dxe5 2 0 3 +13035 Bxg5 5 0 0 +13038 Nc6 3 0 4 +13039 c5 8 0 3 +13039 Nf6 9 0 0 +13039 Nc6 4 0 1 +13040 Nxd4 13 1 2 +13041 Nf6 4 0 9 +13041 d5 2 0 3 +13055 c5 2 1 2 +13056 O-O 15 0 15 +13056 d6 2 0 3 +13058 Nf6 1 0 4 +13059 Bg7 8 0 2 +13060 d5 2 1 3 +13061 bxc6 5 0 4 +13068 Bg7 7 0 5 +13071 Nc6 6 0 7 +13073 Nbd7 2 0 3 +13077 Be7 5 0 1 +13083 e6 4 0 1 +13090 Nxd5 5 0 1 +13091 Nf6 5 0 0 +13093 e6 4 1 5 +13094 e6 4 1 1 +13096 e5 3 0 2 +13099 e4 1 0 4 +13098 Nf6 5 0 6 +13101 e6 2 0 4 +13102 Nc6 5 0 3 +13105 Bg7 5 0 4 +13107 e5 5 0 17 +13107 Nf6 4 0 11 +13108 cxd4 3 1 4 +13108 e6 4 1 2 +13108 Nf6 4 0 2 +13109 Nc6 3 0 3 +13111 e5 4 0 3 +13112 e6 2 1 2 +13115 Be7 4 0 9 +13116 Nc6 2 1 2 +13117 Nf6 2 0 3 +13120 Bg7 4 0 1 +13121 Nf6 3 1 1 +13123 Be7 1 0 4 +13126 c5 15 3 14 +13126 Be7 9 0 17 +13126 Bd6 2 1 8 +13127 Nc6 5 1 8 +13130 O-O 4 1 4 +13134 Bg7 5 1 0 +13137 Nf6 2 1 6 +13138 Qa5 3 1 2 +13138 Qd8 2 0 4 +13141 Qd8 4 1 2 +13142 Nf6 5 0 0 +13146 O-O 2 2 1 +13147 O-O 1 1 3 +13149 g6 6 0 3 +13150 g6 5 0 1 +13151 Bd6 2 0 3 +13157 Be7 3 1 2 +13160 Be7 2 0 3 +13161 Bg7 3 0 3 +13164 Nf6 1 0 4 +13165 Nxd4 3 1 3 +13168 Bd6 6 1 5 +13168 Bd7 6 0 5 +13168 e4 4 1 4 +13169 exf4 3 0 3 +13171 Bd7 3 0 2 +13173 Nf6 0 0 8 +13177 Be7 1 0 4 +13178 Be7 4 0 2 +13187 Nxb5 7 0 3 +13187 Ne6 2 0 4 +13189 Be7 2 0 3 +13194 Nf6 4 0 2 +13198 Qxd5 0 1 5 +13197 Nxc3 2 1 6 +13202 d6 6 0 0 +13203 Bg7 3 1 7 +13204 O-O 10 0 7 +13204 d6 6 1 5 +13204 c6 3 0 2 +13205 O-O 4 0 1 +13206 O-O 2 0 9 +13206 d6 2 0 3 +13211 Bg7 5 0 1 +13215 Nf6 4 0 2 +13216 Bg7 6 0 6 +13218 Nc6 1 0 4 +13219 g6 3 0 2 +13222 Nf6 5 0 12 +13222 Nc6 6 1 1 +13231 e6 10 0 5 +13231 c6 6 0 2 +13231 Nf6 5 0 2 +13231 Bg4 5 0 2 +13232 Nf6 3 0 4 +13236 d6 4 0 2 +13237 Nc6 2 0 3 +13252 exd4 2 0 3 +13250 d5 2 0 3 +13250 Bc5 3 0 2 +13258 d6 7 0 2 +13258 Bb4 5 0 1 +13259 Nxd5 7 0 3 +13268 d5 4 1 3 +13269 Nxd5 4 2 9 +13277 c6 5 0 0 +13279 d5 4 0 2 +13281 Nf6 1 1 3 +13282 Bc5 3 0 2 +13286 exd4 1 1 3 +13289 Nxd5 3 0 2 +13290 Be7 6 0 1 +13293 Nf6 13 1 17 +13293 c6 8 0 3 +13293 c5 3 0 3 +13294 exd5 2 0 4 +13298 Nf6 3 0 4 +13306 O-O 3 0 3 +13308 Bg7 2 1 2 +13309 Nc6 3 0 2 +13313 e5 3 0 5 +13313 Nf6 1 2 2 +13313 Nc6 1 1 3 +13316 Nc6 4 0 2 +13318 Ng6 1 0 9 +13319 Ng6 2 0 4 +13321 Ng6 4 0 1 +13322 Bg7 2 1 4 +13325 Bxf6 1 0 4 +13332 Qd8 0 0 5 +13333 Bg7 4 1 8 +13335 Ne5 6 0 1 +13336 Na6 5 0 3 +13337 e5 4 0 1 +13339 Bd6 4 0 2 +13342 exf3 2 0 5 +13343 Bb7 5 0 1 +13344 c5 2 0 3 +13346 Bxc3 4 0 1 +13345 Nd5 2 0 5 +13348 Nfd7 2 1 2 +13349 d6 13 0 3 +13351 Bg7 1 0 5 +13363 Bg7 5 1 5 +13364 Bg7 3 0 3 +13367 c5 1 0 4 +13369 Bxd2 2 0 3 +13371 Bb7 0 0 5 +13374 Bb7 8 1 7 +13376 cxd4 1 1 5 +13377 c5 5 0 6 +13378 c5 0 1 4 +13379 Nc6 2 0 3 +13380 c5 5 1 6 +13381 O-O 12 0 5 +13381 d6 8 0 4 +13383 Bxf6 4 0 2 +13384 O-O 2 0 4 +13385 d6 4 0 1 +13387 O-O 5 1 0 +13390 d6 10 1 24 +13390 d5 8 2 11 +13390 O-O 2 1 7 +13392 Bg7 1 0 4 +13394 O-O 4 0 3 +13393 O-O 3 1 10 +13393 d6 2 1 2 +13395 O-O 3 0 2 +13396 d6 9 1 11 +13396 O-O 7 0 13 +13398 c5 2 0 5 +13401 Nc6 16 2 25 +13402 Nc6 2 1 6 +13402 e5 1 0 6 +13405 b4 2 1 2 +13405 bxc4 1 0 4 +13404 bxc4 6 1 7 +13403 a6 25 3 20 +13406 bxc4 1 0 4 +13407 g6 6 0 5 +13408 d6 5 2 8 +13409 fxe6 0 0 6 +13410 exd5 7 0 4 +13411 Bg7 5 1 5 +13412 Bxc5 1 0 4 +13413 d5 3 1 6 +13416 e6 4 1 1 +13422 Bb4 5 0 0 +13424 Nf6 6 0 2 +13424 Nb6 6 0 1 +13426 Qa5 3 1 2 +13426 Qd8 2 0 3 +13429 e5 2 1 4 +13430 e5 3 0 3 +13432 Bg7 8 1 12 +13431 Bg7 21 0 25 +13433 Bg7 2 1 3 +13434 Bg7 2 0 3 +13435 Nc6 8 0 11 +13440 O-O 2 1 7 +13440 d6 2 1 4 +13439 d6 4 0 4 +13439 O-O 1 0 7 +13442 Bc5 6 0 0 +13443 Bc5 13 0 14 +13443 Nc6 8 0 15 +13446 d6 2 0 5 +13445 Nxe5 4 0 3 +13447 Bc5 3 0 2 +13451 O-O 14 2 17 +13451 c5 3 2 4 +13451 b6 6 0 3 +13451 d5 4 0 3 +13451 Bxc3 1 0 4 +13455 c5 1 0 5 +13455 h6 1 0 5 +13455 O-O 3 0 2 +13450 c5 10 2 10 +13450 b6 9 0 5 +13450 O-O 7 0 6 +13450 Bxc3 4 1 5 +13450 d5 3 1 4 +13456 c5 2 0 3 +13452 O-O 18 1 6 +13452 d5 5 2 5 +13452 c5 5 1 5 +13452 b6 2 0 4 +13453 Bxc3 18 1 33 +13454 O-O 7 0 5 +13454 c5 6 2 2 +13460 Bb7 10 0 3 +13459 d6 6 1 1 +13459 Bb7 1 0 4 +13463 cxd4 8 0 9 +13462 exd5 9 3 2 +13464 cxd4 6 0 2 +13464 Nc6 4 1 1 +13466 Be7 8 0 7 +13466 dxc4 4 1 2 +13465 c5 6 2 3 +13465 dxc4 3 0 5 +13465 Be7 4 0 4 +13465 c6 2 0 5 +13469 b6 3 0 6 +13469 c6 2 0 3 +13468 exd5 9 0 3 +13468 Nxd5 8 1 1 +13467 c5 6 1 5 +13467 Bb4 7 0 2 +13467 Be7 2 0 3 +13470 Bxd2 7 1 5 +13470 Qe7 0 0 7 +13473 Bb7 6 1 4 +13473 Bb4 1 0 5 +13472 Bb7 3 1 9 +13472 Ba6 2 0 4 +13475 Nc6 3 0 2 +13479 c5 1 0 4 +13483 dxc4 3 0 4 +13483 c5 3 0 2 +13484 b6 3 0 2 +13486 Bxd2 2 0 4 +13488 Qe7 5 0 2 +13489 exd5 5 0 0 +13490 dxc4 4 0 1 +13494 O-O 4 0 6 +13494 d6 2 0 4 +13492 d6 41 2 38 +13492 O-O 12 0 17 +13492 d5 4 0 1 +13497 d6 3 0 2 +13493 d6 8 0 12 +13493 O-O 5 0 7 +13491 d6 119 8 104 +13491 O-O 18 0 9 +13491 c5 5 0 4 +13491 e6 2 0 3 +13501 Ne4 4 0 6 +13500 Bg7 27 0 21 +13502 Bg7 2 0 11 +13498 Nxd5 41 9 53 +13499 Bg7 13 3 35 +13503 dxe4 4 0 1 +13504 Bg7 8 0 7 +13505 d6 4 2 5 +13505 d5 3 0 8 +13506 O-O 3 1 7 +13506 d6 3 0 5 +13507 d6 4 1 1 +13507 O-O 3 0 2 +13508 Bg7 2 2 5 +13509 O-O 10 1 6 +13510 d6 3 0 3 +13513 Qa5 2 0 9 +13516 Nc6 2 1 2 +13517 Bb7 4 0 1 +13519 cxd4 0 0 5 +13520 cxd4 3 0 5 +13524 d6 1 0 4 +13524 O-O 3 0 2 +13523 d6 4 0 6 +13523 O-O 3 1 5 +13533 Nxe4 2 0 4 +13535 Nfd7 2 1 4 +13536 Nd5 1 0 9 +13537 dxe5 2 0 3 +13541 c5 2 0 4 +13542 Bg7 1 0 4 +13543 c5 3 0 2 +13544 O-O 2 1 5 +13544 d6 2 0 5 +13545 d6 5 0 2 +13546 Na6 0 1 4 +13547 Bg7 3 0 3 +13549 g6 4 1 0 +13550 d6 5 0 2 +13551 d6 8 3 3 +13554 c6 3 1 1 +13555 Nf6 2 0 3 +13556 Bg7 8 1 2 +13557 Bb4 2 1 15 +13557 Ne7 1 1 3 +13558 Bb4 13 0 10 +13562 Bg7 14 0 8 +13563 Bg7 5 0 1 +13561 Bg7 33 2 13 +13567 Bg7 2 0 3 +13566 Bg7 5 0 3 +13569 Bg7 1 1 3 +13571 Bg7 4 0 3 +13574 Bg7 8 0 3 +13575 Bg7 5 0 2 +13576 Bg7 6 0 0 +13577 Qe7 4 0 3 +13578 Bg7 11 0 3 +13581 Bg7 4 0 2 +13582 Bg7 2 0 7 +13583 exd5 2 0 5 +13586 Bg7 3 0 3 +13585 Bg7 5 0 2 +13584 Bg7 3 1 4 +13588 Bg7 5 1 5 +13589 e6 3 1 4 +13589 Nf6 3 0 3 +13593 g6 5 0 0 +13592 bxc6 5 0 7 +13595 Nc6 5 0 1 +13598 g6 3 0 4 +13599 Be7 4 0 1 +13603 Bg7 3 0 5 +13604 Bg7 3 0 2 +13605 g6 5 0 2 +13605 Nxd4 4 0 1 +13606 g6 21 1 27 +13606 Nf6 6 0 5 +13606 e6 5 0 3 +13611 exd5 5 0 4 +13612 g6 4 0 2 +13612 e6 2 0 3 +13613 f5 8 0 7 +13614 Bxe6 2 1 3 +13616 g6 10 1 4 +13616 exd5 6 0 3 +13616 Nf6 6 0 1 +13617 Nf6 4 0 1 +13618 Bg7 7 1 4 +13622 Bg7 5 0 0 +13623 f5 4 0 2 +13624 Nf6 4 1 1 +13624 d6 5 0 0 +13625 f5 3 0 2 +13627 exd5 2 0 4 +13629 d6 11 1 6 +13629 Nf6 4 0 5 +13630 Nf6 5 0 3 +13631 d5 2 0 3 +13635 Qc7 3 0 2 +13634 e5 4 0 2 +13640 axb4 5 1 10 +13642 Nf6 3 0 3 +13642 e5 5 1 0 +13645 Nc6 3 0 7 +13648 Bg7 0 0 5 +13649 Nf6 0 0 6 +13657 e6 5 0 2 +13658 e6 8 1 10 +13658 Bg4 4 1 3 +13658 dxc4 3 0 3 +13660 cxd5 6 0 0 +13660 Nxd5 4 0 1 +13659 e6 5 0 1 +13663 Nf6 3 0 2 +13662 Nf6 5 0 1 +13662 e6 3 0 2 +13666 dxc4 6 0 6 +13666 Nf6 6 0 0 +13667 exd5 6 0 7 +13668 Nf6 7 0 0 +13669 e6 4 0 2 +13670 Nc6 8 0 9 +13670 Nf6 8 0 4 +13671 e6 5 0 6 +13672 e6 2 0 3 +13678 Bg7 3 0 2 +13682 Bg4 3 0 2 +13683 Bf5 4 0 2 +13684 Bxd3 4 1 5 +13685 e6 4 0 2 +13688 fxe5 2 0 4 +13693 Nf6 3 0 2 +13694 Na6 3 0 2 +13695 Na6 1 0 6 +13703 e5 12 0 5 +13705 Nf6 3 0 5 +13708 Bd6 4 1 6 +13709 e5 3 0 3 +13716 Bd7 3 1 7 +13717 Bg4 4 0 4 +13717 e6 4 0 1 +13721 Bd7 5 0 2 +13723 Na6 3 0 4 +13724 e5 7 0 2 +13725 Bg4 6 0 0 +13725 Nc6 1 0 4 +13725 Bf5 3 0 2 +13730 Bd6 5 0 1 +13730 Na6 1 0 4 +13729 Bb4 1 0 4 +13734 Bd6 2 0 3 +13735 e6 2 1 2 +13736 Bd7 1 1 5 +13739 Bd6 3 0 3 +13738 c5 4 0 2 +13746 Qxd6 4 1 9 +13750 Nf6 2 0 3 +13753 Qa5 3 0 7 +13754 Bxc5 3 0 3 +13760 Bxg3 6 0 2 +13761 Qxd6 2 0 4 +13762 Bd6 3 0 2 +13765 Bxc5 3 0 3 +13767 g5 4 0 1 +13768 Bd6 2 0 3 +13772 h5 6 1 2 +13773 Bg7 6 0 2 +13774 e6 7 0 0 +13774 Nc6 5 0 0 +13775 Na6 10 0 2 +13776 e5 9 1 2 +13777 e5 10 0 2 +13780 Bd6 8 0 1 +13781 e5 3 0 2 +13783 Nxd4 1 1 4 +13784 Na6 21 0 2 +13785 e5 33 1 7 +13786 e6 12 0 3 +13786 Nc6 9 0 2 +13786 Bf5 6 0 1 +13787 Nc6 3 1 2 +13788 e6 4 0 1 +13788 Nbd7 4 0 1 +13789 Bd6 25 0 8 +13789 Na6 17 0 3 +13790 Na6 4 0 3 +13791 Na6 5 0 1 +13793 exf6 5 0 2 +13796 e6 2 0 3 +13798 e6 3 0 2 +13808 Ne4 5 0 1 +13809 Bf5 12 1 3 +13810 cxd5 6 0 3 +13810 exd5 6 1 1 +13813 Be7 0 0 5 +13815 Bxc5 4 0 2 +13816 dxe4 7 0 1 +13817 Nf6 9 1 2 +13817 Bd6 7 0 0 +13818 Bd6 24 1 2 +13818 a6 12 0 6 +13818 Nc6 12 0 3 +13818 c5 6 0 0 +13818 Be7 3 0 2 +13819 dxe4 4 0 1 +13820 cxd4 13 0 2 +13820 Nc6 4 0 1 +13823 Bg7 6 0 2 +13826 Nf6 2 0 6 +13828 Na6 3 1 2 +13830 e6 0 1 4 +13831 Nf6 4 0 8 +13831 Bd6 3 0 6 +13833 e6 3 0 4 +13838 Bg4 1 1 3 +13841 Bd6 0 0 5 +13842 e6 4 0 1 +13846 e6 5 0 0 +13846 f6 5 0 0 +13847 Bg6 4 0 5 +13848 e6 8 0 4 +13849 e6 2 0 3 +13852 e6 5 0 4 +13854 Nc6 5 0 1 +13854 e6 3 0 2 +13855 e6 5 0 1 +13858 e6 3 0 5 +13858 Bg4 3 0 3 +13861 e5 4 0 1 +13864 e6 4 0 3 +13867 e6 4 1 4 +13867 Bg4 5 0 1 +13867 Nf6 2 0 3 +13871 a6 4 0 2 +13871 e6 3 0 2 +13875 Nf6 5 0 2 +13877 Nf6 2 0 4 +13880 Bd7 11 1 6 +13884 Bg4 2 0 4 +13881 e6 4 0 4 +13881 Bg4 4 0 1 +13889 Bd7 4 1 0 +13893 e6 3 0 2 +13893 Nf6 4 0 1 +13894 e6 11 0 4 +13894 Bg4 5 0 2 +13896 e6 5 1 6 +13896 c6 3 0 2 +13898 e6 3 1 3 +13899 Nc6 2 1 2 +13900 Bd6 8 0 3 +13903 Qxf6 5 0 3 +13902 Be7 5 0 3 +13904 e6 1 1 3 +13908 e6 2 0 4 +13908 Bg4 3 0 2 +13911 Bb4 7 0 3 +13911 Be7 1 0 5 +13914 e6 4 1 3 +13916 e6 2 0 6 +13915 e6 5 0 3 +13919 Bg4 3 0 2 +13918 dxc4 4 0 1 +13920 Bg4 2 0 3 +13921 c5 5 0 3 +13921 Bd6 2 0 5 +13922 c5 5 0 2 +13925 Bg7 2 0 3 +13924 Bg7 1 2 4 +13926 e6 9 0 4 +13927 e6 2 0 4 +13930 c5 13 0 7 +13930 Be7 4 1 3 +13930 Bd6 5 0 1 +13931 Bg7 7 3 6 +13937 e6 5 0 1 +13942 g5 5 0 0 +13944 cxd5 4 0 2 +13946 e6 1 1 3 +13947 Nf6 4 0 1 +13951 Nf6 4 1 0 +13956 Nf6 2 0 3 +13957 Bd6 8 1 1 +13957 c5 3 1 3 +13957 c6 3 1 2 +13959 cxd4 7 1 1 +13959 Nc6 3 1 2 +13960 Nxe7 9 1 5 +13962 c5 4 0 3 +13963 Bxc5 3 0 4 +13964 Be7 4 0 2 +13968 Nf6 4 1 0 +13971 c5 11 1 7 +13971 Be7 5 1 5 +13973 c5 4 0 5 +13973 Be7 7 0 1 +13972 c6 5 0 2 +13978 Nc6 3 0 7 +13977 Bxc5 9 0 9 +13984 Nf6 4 0 3 +13985 c5 6 1 4 +13985 Be7 4 1 2 +13985 Nc6 4 1 1 +13985 Bd6 2 0 4 +13985 b6 5 0 0 +13986 cxd4 3 0 2 +13988 Nf6 3 0 3 +13993 Nf6 2 0 4 +14001 Bxc5 3 0 3 +14004 f6 4 0 1 +14006 Nf6 3 0 2 +14009 Nc6 8 0 0 +14008 Nc6 6 0 5 +14007 Bg6 27 0 9 +14007 Be6 4 0 1 +14010 Bb4 5 2 5 +14010 Nf6 3 0 5 +14010 h6 5 0 3 +14010 c6 4 1 0 +14012 exd5 9 1 5 +14011 Bb4 7 2 7 +14011 c6 0 1 4 +14016 Nd7 2 1 2 +14017 Qxd5 6 1 4 +14018 Qd8 6 0 0 +14018 Qe6 2 0 3 +14022 Ne5 5 0 1 +14025 Qxd4 1 0 5 +14024 Bg4 5 0 3 +14030 Nxd5 0 0 5 +14032 Bf5 7 0 3 +14032 Bg4 3 0 5 +14032 e6 4 0 2 +14035 cxd5 1 0 5 +14033 Bf5 7 1 1 +14037 e6 4 0 4 +14037 Bg4 2 0 5 +14037 Be6 4 0 3 +14037 Nc6 2 0 3 +14038 e6 7 0 3 +14038 e5 5 0 1 +14038 Nc6 4 0 1 +14041 Be7 19 1 7 +14041 Bb4 10 0 2 +14040 Bb4 14 0 9 +14040 c5 10 0 4 +14040 Be7 5 1 3 +14040 Nc6 5 0 1 +14040 Nbd7 4 0 1 +14044 Nxd5 4 0 1 +14042 Bb4 11 0 9 +14042 Be7 0 1 4 +14045 Bg7 5 0 2 +14046 Nxd5 2 1 4 +14048 Nxd5 3 0 2 +14054 Be7 6 0 5 +14053 Bb4 6 0 1 +14057 Nxc3 3 0 3 +14056 e6 3 0 5 +14056 g6 4 0 2 +14055 Nf6 33 2 12 +14055 Nb6 20 2 7 +14055 Nb4 6 0 1 +14058 Qd8 5 0 3 +14058 Qa5 2 0 3 +14059 e6 4 0 1 +14064 Bb4 2 1 2 +14062 c5 1 0 6 +14062 Nc6 2 0 3 +14065 Qd8 6 0 3 +14069 cxd4 6 0 4 +14073 Nc6 2 0 3 +14074 Kxd8 5 0 0 +14075 Bxc5 2 1 3 +14078 e6 5 0 4 +14078 Nf6 6 0 0 +14080 cxd5 3 0 2 +14079 e6 1 1 3 +14085 e6 7 1 3 +14083 e6 12 0 7 +14083 Nbd7 5 0 8 +14083 Bf5 6 2 2 +14083 dxc4 4 1 1 +14083 h6 2 0 3 +14081 e6 24 2 19 +14081 Bf5 18 1 15 +14081 Bg4 12 3 10 +14081 g6 12 0 7 +14081 dxc4 11 3 4 +14084 cxd5 18 2 19 +14084 Nxd5 9 1 3 +14082 Bf5 11 1 9 +14082 e6 8 0 8 +14082 Bg4 6 1 1 +14082 dxc4 4 0 4 +14082 a6 4 0 2 +14091 b6 7 0 4 +14090 b5 6 1 9 +14089 b5 5 1 7 +14093 d4 5 0 1 +14098 Nf6 2 0 3 +14094 Nf6 27 1 14 +14094 dxc4 10 1 7 +14094 f5 4 2 8 +14094 Bd6 3 1 9 +14094 Bb4 5 0 3 +14094 Be7 2 0 3 +14099 Nf6 4 0 1 +14096 cxd5 12 0 5 +14096 exd5 4 0 1 +14095 Nf6 11 0 6 +14095 Nd7 2 0 3 +14097 dxe4 6 0 2 +14100 e6 4 0 3 +14101 Nf6 2 0 3 +14102 e6 14 3 17 +14102 g6 8 1 7 +14102 dxc4 10 0 6 +14102 Bg4 5 0 5 +14102 Bf5 4 0 4 +14104 e6 4 0 1 +14107 b5 3 1 3 +14109 dxc4 4 1 2 +14109 Nf6 5 0 2 +14114 Qd8 3 1 3 +14115 Nf6 20 2 15 +14115 e6 20 3 9 +14115 Nc6 10 0 7 +14116 Nf6 2 0 4 +14116 e6 4 0 2 +14116 Nc6 3 0 2 +14119 e6 8 0 10 +14119 Nf6 9 0 4 +14120 e6 10 0 6 +14120 Bf5 5 1 5 +14120 g6 4 0 3 +14121 Bg4 8 1 6 +14121 e6 3 0 2 +14122 cxd5 1 1 5 +14124 Nf6 4 0 2 +14124 Bb4 3 0 2 +14125 Nf6 4 1 0 +14129 b5 4 0 3 +14130 c6 6 0 2 +14134 e6 5 0 1 +14133 e6 6 0 1 +14132 Bg6 10 0 6 +14136 Bg4 10 1 3 +14136 e6 5 0 0 +14136 Nf6 4 0 1 +14137 Ne5 9 1 3 +14137 Nb4 8 0 0 +14135 Nf6 11 0 4 +14135 Bf5 11 1 2 +14135 e5 6 0 2 +14135 e6 5 0 1 +14135 Be6 4 0 1 +14142 e6 6 0 0 +14141 e6 6 1 4 +14141 Bg4 3 0 3 +14140 e6 16 1 12 +14140 Bg4 8 1 5 +14140 Bf5 4 1 4 +14140 Nc6 6 2 0 +14139 e6 21 0 10 +14139 Bg4 10 1 10 +14139 Nc6 9 0 5 +14139 e5 5 1 2 +14143 Bd7 2 2 3 +14143 c6 4 0 3 +14143 e6 1 0 4 +14145 b5 10 1 4 +14144 b5 6 2 7 +14147 Ba6 7 0 3 +14150 cxd4 6 0 1 +14151 e6 4 0 2 +14151 Bd7 5 0 1 +14151 a6 5 0 1 +14153 b5 12 0 6 +14152 b5 11 1 9 +14157 exd4 2 1 2 +14155 Nf6 5 0 2 +14156 exd4 4 1 1 +14160 Bb4 8 0 2 +14160 Nf6 6 1 3 +14160 c6 5 0 0 +14161 Nf6 12 1 3 +14161 Nc6 4 0 1 +14159 Bb4 13 0 5 +14159 Nf6 10 0 8 +14159 a6 6 0 1 +14158 Bb4 19 0 18 +14158 Nf6 13 2 1 +14158 a6 7 0 6 +14158 Nc6 8 0 2 +14158 h6 6 0 1 +14158 c6 4 0 2 +14162 Bg7 11 0 2 +14167 e6 3 0 5 +14168 e6 4 1 2 +14170 c6 2 1 2 +14172 Nf6 2 0 4 +14174 Nf6 4 0 13 +14174 e6 6 0 4 +14174 Nc6 3 1 2 +14174 b5 1 0 4 +14176 Nxd4 4 0 2 +14175 Be6 3 1 4 +14178 Be6 6 0 3 +14179 c6 2 0 6 +14179 Nf6 3 0 3 +14180 c6 2 0 5 +14180 Nc6 3 0 2 +14183 e6 14 0 7 +14185 Nf6 1 2 6 +14185 e6 4 0 3 +14186 e6 22 2 18 +14186 Nc6 15 0 3 +14186 Bf5 8 0 3 +14186 Bg4 4 0 5 +14187 Qc6 6 0 1 +14190 a6 13 0 4 +14190 c6 12 0 4 +14191 c6 3 0 2 +14189 c6 76 2 16 +14189 Bd7 17 0 9 +14189 bxa4 10 0 4 +14189 a6 7 0 5 +14189 Ba6 9 0 3 +14193 cxd4 5 0 2 +14195 exd4 8 1 5 +14196 Nf6 11 1 13 +14196 Bb4 8 0 8 +14196 a6 8 0 7 +14196 c5 5 0 2 +14196 Nc6 5 1 0 +14196 h6 3 0 2 +14200 Bg4 3 0 2 +14199 Ne5 9 1 2 +14201 e6 10 0 3 +14201 Bg4 3 0 2 +14202 Nd5 7 0 5 +14204 a6 9 0 9 +14204 c6 7 0 4 +14203 c6 12 2 11 +14203 Bd7 2 0 5 +14208 e6 6 0 2 +14211 exd4 3 0 2 +14210 exd4 2 0 5 +14209 Nf6 12 0 4 +14209 c6 4 1 3 +14209 Bb4 3 0 2 +14212 Nf6 14 2 10 +14212 Nc6 15 2 7 +14212 Bb4 12 0 5 +14212 a6 12 1 2 +14212 c6 5 0 1 +14215 Bg7 4 0 1 +14216 Nf6 5 0 2 +14217 Nf6 8 0 1 +14217 Nc6 2 2 2 +14217 dxc4 2 1 2 +14218 Qxd4 5 1 5 +14220 Qxd5 3 0 2 +14221 Nc6 44 3 28 +14221 c5 1 0 5 +14223 Nc6 4 0 7 +14222 Bb4 3 0 7 +14222 Nc6 3 0 6 +14224 Nc6 3 0 2 +14225 Kxd8 6 0 2 +14226 exd4 3 1 3 +14227 Nf6 1 1 7 +14232 Nf6 4 1 3 +14232 Bxc3 1 0 6 +14229 dxc4 16 0 8 +14229 Bxc3 10 0 3 +14229 Nf6 4 1 3 +14234 Nc6 3 1 1 +14233 Bxc3 5 2 4 +14231 exd5 14 1 8 +14231 Bxc3 3 0 2 +14230 Bxc3 5 0 6 +14230 Nf6 3 1 4 +14230 c5 4 0 3 +14235 Nf6 5 0 6 +14237 exd5 3 0 2 +14242 Be7 1 0 4 +14239 Be7 77 7 45 +14239 c6 15 2 9 +14239 Nbd7 8 1 10 +14239 Bb4 11 1 2 +14239 dxc4 6 0 5 +14239 h6 7 0 2 +14239 c5 2 0 4 +14238 Be7 40 3 31 +14238 Bb4 28 1 18 +14238 c5 21 3 6 +14238 c6 20 1 7 +14238 a6 9 0 6 +14238 b6 7 0 6 +14238 Nc6 9 1 2 +14238 dxc4 7 0 5 +14238 Nbd7 5 0 5 +14243 c5 4 0 2 +14243 Be7 3 0 2 +14241 exd5 27 3 17 +14241 Nxd5 11 2 8 +14240 Be7 15 2 16 +14240 Bb4 25 0 5 +14240 c5 14 1 7 +14240 c6 4 0 9 +14240 b6 4 1 3 +14245 Nc6 1 0 8 +14245 cxd4 4 0 2 +14244 exd5 15 0 8 +14246 cxd4 4 0 2 +14246 Nc6 3 0 2 +14248 Nf6 28 4 12 +14248 f5 14 0 9 +14248 dxc4 7 0 3 +14248 Bb4 5 0 2 +14248 f6 4 0 1 +14250 exd5 6 1 4 +14250 cxd5 4 0 4 +14249 f5 7 1 4 +14249 Nf6 7 0 4 +14251 dxe4 4 0 2 +14251 Bb4 4 0 1 +14256 a6 7 0 1 +14256 Nf6 4 0 1 +14255 Bb4 6 0 2 +14255 Nf6 4 0 3 +14255 a6 4 1 2 +14254 Nf6 5 0 10 +14254 Bb4 7 0 3 +14254 Nc6 6 0 3 +14254 a6 5 0 4 +14257 Nf6 2 1 6 +14258 exd5 5 0 7 +14260 Bxd2 4 2 4 +14264 Be7 13 1 8 +14264 Nbd7 1 0 4 +14262 Bb4 14 0 7 +14262 Be7 7 0 8 +14262 c5 4 0 5 +14262 c6 3 0 4 +14262 b6 2 3 2 +14262 Nc6 2 2 1 +14262 a6 2 0 3 +14265 c5 2 0 4 +14263 Be7 6 0 5 +14263 c5 3 0 2 +14267 exd5 1 0 5 +14268 Nf6 5 0 4 +14268 dxc4 5 0 1 +14274 Be7 1 1 3 +14273 Be7 8 0 4 +14273 c5 4 0 7 +14273 h6 1 0 4 +14275 Bxc5 8 0 0 +14280 a5 2 0 10 +14280 bxc5 3 0 3 +14282 Qd8 5 0 4 +14282 Qa5 7 0 1 +14282 Bb4 2 1 3 +14283 Nf6 18 0 13 +14283 c6 4 1 7 +14283 Be6 4 0 8 +14283 Bb4 2 0 3 +14284 Nf6 4 0 4 +14286 Nf6 2 0 3 +14285 Nf6 2 1 3 +14287 Bxd2 3 0 3 +14289 c5 9 1 8 +14289 Bb4 8 1 3 +14289 Be7 4 0 4 +14289 c6 1 0 5 +14290 c5 6 1 3 +14290 Nc6 2 0 5 +14290 Be7 1 0 5 +14290 Bd6 3 0 2 +14290 Bb4 4 0 1 +14290 c6 4 0 1 +14292 Be7 2 0 4 +14291 b6 6 0 6 +14291 Nc6 6 0 2 +14293 exd5 3 0 3 +14293 Nxd5 3 0 2 +14294 Nc6 1 2 3 +14295 exd5 5 0 1 +14296 f5 3 0 2 +14297 Nf6 2 1 2 +14299 Nf6 3 1 2 +14299 a6 4 1 0 +14301 Nxd5 2 0 3 +14302 Nxd5 2 1 3 +14304 e6 5 0 3 +14304 Nf6 4 0 1 +14311 e6 5 0 4 +14312 exd5 3 0 4 +14314 Nb4 3 0 3 +14316 Bg6 2 0 3 +14318 Bxc6 3 0 7 +14319 bxc6 1 0 4 +14321 Nxe5 3 0 2 +14325 Bxd3 2 0 3 +14328 Bd7 5 0 1 +14332 Nxe5 1 1 3 +14335 Nf6 5 1 2 +14335 e6 5 0 3 +14335 e5 4 0 2 +14335 Bf5 3 0 2 +14336 exd5 4 0 2 +14337 Nf6 1 0 4 +14337 e6 2 0 3 +14339 Bg4 5 0 1 +14346 Bh5 5 0 10 +14349 c5 5 0 4 +14354 e6 4 0 3 +14354 Nc6 3 0 2 +14355 e6 4 1 6 +14356 Bh5 2 1 2 +14359 c5 2 0 3 +14359 c6 3 0 2 +14364 e6 2 0 4 +14366 e6 1 0 4 +14370 cxd5 0 1 4 +14372 e6 7 0 8 +14377 e6 5 0 0 +14378 c5 6 0 2 +14383 Nc6 1 0 5 +14385 b5 2 0 3 +14387 Bg4 5 0 4 +14390 Bg4 2 1 2 +14392 cxd5 1 0 4 +14399 Nxd7 1 0 4 +14404 c5 9 0 1 +14403 c5 5 0 1 +14407 c4 6 0 2 +14407 Nc6 4 0 2 +14408 Nf6 3 0 2 +14414 c5 4 0 1 +14413 Nc6 2 1 3 +14413 Bb4 4 0 2 +14411 c5 5 0 3 +14420 Nc6 2 0 3 +14418 cxd4 1 0 5 +14419 Bxc5 1 1 6 +14422 Nf6 2 1 3 +14424 exd5 1 0 4 +14431 Nf6 3 0 5 +14434 Nf6 3 0 5 +14436 c5 2 0 4 +14436 b6 3 0 2 +14437 c5 5 0 5 +14438 cxd4 7 0 4 +14438 Nc6 4 0 1 +14441 Nf6 10 0 3 +14442 Nf6 0 0 7 +14444 exf3 7 0 0 +14446 exf3 10 0 11 +14448 exf3 48 2 44 +14448 Bf5 4 0 8 +14450 exf3 6 1 9 +14450 Nf6 5 0 4 +14452 Nf6 7 0 7 +14452 Bg4 10 0 3 +14452 e6 8 1 0 +14453 Nfd7 4 0 2 +14456 h6 6 1 9 +14456 h5 4 0 4 +14459 Bg6 4 0 6 +14460 e5 6 0 2 +14461 dxe4 4 0 2 +14463 e5 3 0 3 +14464 Bd7 2 0 4 +14467 Bg6 3 0 3 +14471 hxg4 2 0 3 +14473 cxd4 3 0 3 +14482 Bg7 4 0 1 +14486 c5 0 0 5 +14487 cxd4 7 1 1 +14487 Nc6 4 0 4 +14488 fxg4 1 0 4 +14490 e6 1 0 4 +14494 Bg4 4 0 1 +14493 e5 3 1 2 +14499 Bg7 5 0 2 +14503 Bxc5 1 1 5 +14506 Bg7 2 0 3 +14507 Bxd6 4 1 6 +14511 e5 2 0 3 +14510 e5 5 0 8 +14509 e5 18 1 25 +14513 Bg7 10 0 5 +14512 Bg7 16 2 2 +14514 Nc6 4 1 5 +14515 Nf6 4 0 2 +14515 f4 1 0 5 +14516 Bxd6 2 1 3 +14517 Kxd8 1 3 6 +14518 Nf6 3 1 1 +14524 Nf6 7 1 7 +14523 Nc6 9 0 2 +14523 Nf6 4 0 5 +14527 Bg7 1 0 4 +14529 e5 6 0 1 +14530 Bg7 6 0 1 +14531 Kxd8 10 0 1 +14534 Nf6 3 0 2 +14535 Nf6 15 1 8 +14540 Qb4 1 0 5 +14541 Qb4 5 1 21 +14542 Nxe5 8 0 4 +14543 Bxd6 6 0 1 +14544 Bxd6 7 0 6 +14545 Nxf6 3 0 5 +14545 Qxf6 4 0 2 +14547 Bxd6 7 0 4 +14549 Nxf6 5 0 1 +14553 Nf6 3 0 3 +14552 Nf6 6 0 8 +14552 Nc6 3 0 3 +14552 Bb4 1 1 3 +14555 Nf6 2 1 3 +14557 Bxd6 7 0 2 +14559 Bc5 4 0 3 +14558 Bc5 0 2 6 +14558 d5 7 0 1 +14562 Nf6 2 0 3 +14563 Nc6 2 0 3 +14564 Nf6 2 1 3 +14567 Nf6 2 0 4 +14568 Qxd6 4 1 5 +14570 Na6 0 0 10 +14578 Be7 5 0 7 +14579 Qxb2 5 0 2 +14591 Bd6 8 1 3 +14591 c5 4 0 3 +14591 Be7 2 1 3 +14593 Nf6 8 0 1 +14594 Nxe7 6 0 2 +14595 Qxf6 8 0 10 +14596 Be7 2 0 4 +14597 g5 4 0 1 +14598 Be7 1 1 4 +14599 Be7 2 1 5 +14599 Bd6 3 0 4 +14599 a6 4 0 2 +14599 c5 3 0 3 +14600 c5 3 0 4 +14600 Be7 3 0 4 +14602 Be7 3 0 2 +14603 Nc6 5 0 0 +14604 c5 4 0 5 +14604 Be7 4 0 3 +14617 Nc6 5 0 1 +14619 Bd6 4 0 2 +14619 Be7 2 0 3 +14622 Bxc5 3 0 2 +14627 Nf6 1 0 5 +14629 Nf6 4 0 2 +14633 Be7 5 1 10 +14634 Be7 7 0 6 +14636 Bg7 6 0 15 +14637 Bg7 9 2 6 +14639 O-O 3 0 2 +14638 Bxc3 3 0 8 +14640 O-O 2 0 4 +14643 O-O 4 1 1 +14644 O-O 5 0 0 +14646 dxc4 4 0 1 +14652 Bg7 4 0 1 +14651 Bg7 16 0 3 +14654 Bb4 2 0 5 +14653 Bb4 7 1 6 +14653 g6 2 0 3 +14657 Bb4 3 0 3 +14658 Nc6 14 1 5 +14659 Nc6 5 0 3 +14659 Bc5 6 0 2 +14661 e5 2 0 4 +14661 Nf6 3 0 2 +14662 Nf6 2 1 2 +14663 d6 15 1 4 +14663 Nf6 9 0 3 +14666 Nc6 9 2 4 +14666 Nf6 4 0 4 +14667 exd5 3 0 2 +14668 dxc4 3 0 3 +14669 cxd5 5 0 2 +14675 Be7 16 0 21 +14675 Bb4 6 0 3 +14673 Be7 38 5 39 +14673 Bb4 6 0 5 +14673 c5 5 0 6 +14673 c6 3 0 4 +14673 dxc4 5 0 0 +14674 exd5 26 3 19 +14676 Be7 15 3 11 +14676 Bb4 5 0 3 +14681 exd5 4 0 1 +14679 cxd4 4 0 2 +14684 Nf6 6 0 1 +14683 Nf6 1 0 7 +14687 Nc6 9 0 0 +14687 a6 6 0 2 +14687 Nf6 6 0 1 +14687 c5 1 0 6 +14687 Bb4 4 0 2 +14687 g6 5 0 1 +14687 c6 4 0 2 +14689 Nf6 6 0 2 +14689 c5 3 0 2 +14689 a6 1 1 3 +14688 Nf6 11 0 4 +14688 Bb4 9 0 0 +14691 Be7 2 0 3 +14690 Be7 3 0 6 +14690 c5 3 1 1 +14690 c6 3 1 1 +14696 axb6 5 1 1 +14696 cxb6 6 0 1 +14698 Qd8 7 0 4 +14698 Qa5 3 0 2 +14699 Nf6 8 0 9 +14700 Nf6 3 0 5 +14703 Bb4 4 0 1 +14702 Be7 2 0 4 +14704 Nc6 2 0 3 +14706 Nc6 3 0 2 +14708 Nc6 5 0 4 +14707 Nc6 7 0 10 +14712 Be7 3 0 5 +14713 Be7 5 0 0 +14714 Bb7 2 0 3 +14716 Nd7 6 0 4 +14718 Bg7 4 0 2 +14719 Nc6 3 0 3 +14721 Bb4 3 0 3 +14721 c6 3 0 3 +14725 Be7 1 0 5 +14728 Bg7 1 0 4 +14739 c5 3 0 2 +14738 Be7 2 1 6 +14738 c5 2 0 3 +14744 exd5 1 0 6 +14747 c5 2 0 4 +14749 cxd4 1 1 4 +14761 Nc6 1 1 6 +14761 Nf6 2 0 4 +14761 Qb6 3 0 2 +14764 Nf6 1 0 4 +14765 Nfd7 2 0 4 +14768 Ba5 3 0 2 +14770 f6 2 0 7 +14773 Ng6 3 0 2 +14775 Nc6 4 0 7 +14774 Nc6 11 0 23 +14774 Qb6 0 0 10 +14774 cxd4 4 0 2 +14777 fxe5 6 0 4 +14778 fxe5 5 1 1 +14781 Nf6 1 1 5 +14780 Nf6 5 0 6 +14783 Bg7 4 0 1 +14793 Nc6 3 0 2 +14795 c5 3 0 3 +14795 Be7 2 0 4 +14796 Be7 3 0 2 +14798 Be7 5 0 0 +14801 Be7 7 0 6 +14800 Be7 3 0 7 +14800 Bb4 4 0 1 +14804 Be7 2 0 3 +14802 Be7 7 1 3 +14803 Be7 2 1 3 +14808 Bg7 2 0 3 +14806 Bg7 8 0 2 +14807 Bg7 2 1 3 +14814 Ne7 9 0 2 +14814 d6 10 0 1 +14816 Ne7 3 0 3 +14819 Bb7 2 0 4 +14820 Nf6 1 0 4 +14821 d6 6 1 6 +14821 O-O 3 0 2 +14824 Bb7 3 0 2 +14823 Bb7 9 0 10 +14827 cxd4 1 0 4 +14826 Bxc3 3 0 2 +14825 cxd4 5 0 6 +14828 e6 5 0 3 +14828 d6 0 1 4 +14831 Nf6 6 0 2 +14830 Nf6 11 1 5 +14830 e6 6 0 0 +14834 Ne7 5 0 3 +14835 Ne7 3 0 3 +14833 Ne7 8 1 7 +14833 d6 3 0 2 +14843 Ne7 3 0 3 +14847 dxe5 1 1 3 +14846 dxe5 3 0 7 +14848 Ne7 3 2 3 +14850 Bb7 2 1 5 +14851 dxe5 1 0 4 +14852 Ne7 5 1 8 +14855 Bg7 2 0 4 +14858 Nc6 4 0 10 +14860 Bg7 3 0 2 +14861 Nc6 5 0 6 +14867 e6 2 0 3 +14868 Bxf3 1 0 4 +14872 Bg7 1 0 4 +14873 c6 6 1 2 +14876 Nf6 6 0 5 +14877 Qxc8 1 1 6 +14881 d5 4 0 4 +14882 Nxd4 2 0 4 +14885 Nc6 1 0 8 +14887 Nf6 2 0 4 +14891 Nf6 2 0 4 +14893 Bd6 4 0 4 +14894 Bd6 2 0 3 +14898 c6 7 0 2 +14898 Nf6 5 0 3 +14901 Kxd8 5 0 2 +14905 Nf6 6 0 1 +14907 dxe4 3 1 1 +14908 Nf6 1 1 9 +14909 Be7 2 0 4 +14909 Qe7 4 0 2 +14912 d5 2 0 3 +14915 Nf6 4 0 1 +14916 Nc6 3 0 2 +14919 Nf6 2 0 3 +14920 Nc6 3 0 2 +14921 c5 1 0 4 +14924 exd5 4 1 3 +14926 exd4 1 0 4 +14929 Qd8 16 1 9 +14929 Qe6 3 1 5 +14929 Qa5 1 0 4 +14930 dxc6 3 0 2 +14931 Nf6 8 1 8 +14932 dxc6 1 1 3 +14934 h6 5 0 2 +14941 Bc5 4 0 5 +14941 Ne5 4 1 3 +14941 Nxd4 4 0 3 +14941 Qf6 0 0 5 +14946 Qd7 6 1 2 +14945 Qd7 3 0 4 +14945 f6 2 0 4 +14948 e6 2 0 3 +14947 f6 4 0 1 +14953 Bg4 5 1 4 +14957 Ne5 3 1 1 +14958 Ng6 10 0 17 +14959 Ng6 10 0 9 +14963 Nxf3 4 0 1 +14967 dxe4 13 0 12 +14968 Nxc3 3 0 4 +14970 e6 3 1 7 +14970 c5 0 1 7 +14971 e6 2 0 4 +14972 dxc3 5 1 13 +14974 c6 3 1 6 +14974 Nxc3 1 1 5 +14974 e6 3 1 3 +14973 Qxd5 47 3 41 +14975 Bf5 1 1 4 +14975 Nxc3 4 0 1 +14978 d6 6 0 2 +14977 Nxe4 4 0 2 +14977 Be7 1 0 4 +14979 exd4 6 0 3 +14982 Nc6 4 0 5 +14985 d5 1 0 4 +14987 Qxd1 1 0 4 +14988 c5 2 0 9 +14989 c5 3 0 5 +14991 Nc6 7 0 5 +14991 d6 6 1 4 +14991 e6 4 0 2 +14992 exd5 7 0 3 +14993 d6 1 0 4 +14994 d6 3 0 2 +14995 Nb6 3 0 5 +14997 Nb6 2 0 3 +14998 Nb4c6 3 1 4 +15002 d6 5 1 11 +15001 d6 15 0 15 +15003 d6 2 0 3 +15000 Nd5 32 3 32 +14999 d6 49 5 59 +14999 d5 3 0 2 +15005 d6 5 0 13 +15006 d6 6 0 10 +15007 d6 1 1 5 +15008 Nb6 4 0 1 +15012 Nb6 9 0 6 +15012 e6 3 0 5 +15010 dxe5 8 1 6 +15010 Bg4 4 0 10 +15010 Nc6 2 0 6 +15010 g6 3 1 1 +15009 Nb6 37 5 53 +15011 exd6 13 0 8 +15011 cxd6 4 0 4 +15013 Bf5 2 1 2 +15013 dxe5 1 0 4 +15014 Be7 1 0 4 +15015 Ne4 3 1 1 +15016 e6 7 0 1 +15021 e6 7 2 8 +15021 Nf6 6 0 6 +15022 e6 4 1 2 +15022 Nf6 1 0 4 +15024 e6 5 0 6 +15025 e6 9 0 8 +15025 Nf6 9 1 3 +15028 axb5 2 1 6 +15030 b4 1 1 4 +15029 c6 0 0 5 +15033 e6 2 0 3 +15034 c6 4 1 3 +15034 e6 6 0 0 +15034 d6 3 1 2 +15035 e6 7 0 3 +15035 g6 4 0 1 +15036 Ke8 2 0 5 +15036 Nf6 4 1 1 +15039 Bg7 2 0 4 +15041 g6 3 0 3 +15040 Nf6 1 0 5 +15045 Bxd5 3 1 1 +15046 c5 1 1 3 +15046 d5 4 0 1 +15053 Bg7 5 0 0 +15055 Kxf7 8 0 0 +15057 Bb7 1 0 4 +15056 Bg6 2 0 3 +15054 Bb7 5 0 4 +15059 Nf6 1 0 5 +15060 Bg7 4 0 4 +15063 Bg7 4 0 4 +15064 e6 3 0 2 +15067 Nc6 1 2 2 +15066 cxd4 4 0 8 +15070 Bb4 5 0 3 +15069 Bb4 30 2 32 +15069 Nf6 3 0 8 +15069 Ne7 2 3 4 +15069 Qe7 7 0 2 +15069 d6 5 0 2 +15073 Bg7 13 0 13 +15074 Bg7 3 0 3 +15072 Bg7 42 1 27 +15076 Nf6 1 0 8 +15079 Bg7 2 1 7 +15078 Bg7 7 0 5 +15080 Bb7 2 0 4 +15081 Qe7 1 0 4 +15083 Bg7 2 0 4 +15086 Qe7 4 0 1 +15087 Bg7 4 0 3 +15088 Bg7 5 0 0 +15091 Qe7 3 0 2 +15093 e6 2 0 4 +15097 Nf6 5 1 4 +15095 Nf6 1 1 8 +15096 Nf6 6 0 4 +15096 c5 2 0 3 +15096 Ne7 4 0 1 +15099 Nf6 2 3 1 +15101 Nf6 2 0 4 +15104 Bg7 7 1 5 +15107 Bg7 5 1 2 +15105 Bg7 10 0 2 +15106 Bg7 7 0 2 +15108 Bg7 5 0 3 +15109 Bg7 2 0 3 +15113 Bb4 4 1 5 +15112 Bb4 12 1 17 +15112 Nf6 8 0 4 +15112 d5 3 0 2 +15115 Bb4 1 0 6 +15114 Bb4 2 0 3 +15119 Bg7 4 0 4 +15121 Bg7 3 0 2 +15118 Bg7 21 1 15 +15120 Bg7 2 0 4 +15125 cxd5 4 0 1 +15124 cxd5 3 0 3 +15128 Bb4 5 0 3 +15127 exd5 8 0 4 +15127 Qe7 3 1 3 +15132 Bg7 3 0 4 +15131 Bg7 4 0 4 +15130 Bg7 9 0 6 +15133 Qe7 3 0 2 +15139 Bg7 1 1 3 +15141 Bb4 2 0 4 +15142 Bg7 3 0 3 +15143 Nf6 2 0 4 +15147 Ne7 1 1 3 +15148 c4 2 0 3 +15151 g6 2 0 3 +15150 d6 2 0 3 +15152 d6 5 0 3 +15155 Nf6 3 0 3 +15155 a6 3 0 2 +15154 Nf6 5 0 3 +15159 e6 3 0 2 +15161 e6 6 1 7 +15163 cxd4 6 0 2 +15164 Nf6 1 1 4 +15171 a6 3 1 5 +15168 d5 4 0 5 +15169 d5 2 0 3 +15169 a6 1 0 4 +15170 cxd4 4 1 10 +15175 Bg7 2 1 6 +15178 cxd4 3 0 2 +15179 Nxc4 1 0 4 +15181 Nf6 1 1 3 +15182 Nf6 2 0 4 +15189 Nf6 3 0 3 +15186 Nf6 4 0 12 +15187 Nf6 6 1 4 +15188 Nf6 5 1 4 +15191 Bg7 2 0 3 +15194 Nf6 2 1 2 +15196 e6 4 2 5 +15196 d5 1 0 6 +15198 Nf6 2 0 6 +15199 d5 1 1 3 +15200 cxd4 4 0 1 +15206 Nxd5 1 0 4 +15208 Nf6 1 0 4 +15218 e6 1 1 5 +15219 dxe5 2 0 5 +15223 Kd7 5 0 4 +15227 Nc6 2 0 5 +15230 Nf6 0 1 5 +15231 Nf6 8 0 2 +15234 Nc6 4 1 7 +15238 a6 6 0 10 +15238 Nf6 4 1 9 +15238 g6 3 0 2 +15238 d6 1 0 4 +15241 Nf6 2 0 3 +15239 Nf6 5 0 3 +15239 Be7 2 0 5 +15239 a6 0 0 5 +15245 b5 4 1 5 +15244 b5 6 0 1 +15244 Nc6 2 0 4 +15243 Nc6 5 0 6 +15247 exd5 4 0 1 +15251 Nf6 3 0 3 +15249 d5 3 0 5 +15249 a6 3 0 2 +15249 Nf6 3 0 2 +15250 a6 4 0 3 +15252 cxd4 4 0 5 +15260 b5 2 0 3 +15258 b5 1 0 4 +15261 Nc6 1 0 5 +15257 cxd4 2 1 5 +15257 b5 3 1 4 +15262 exd5 28 1 31 +15264 exd5 3 0 3 +15265 Be7 0 0 5 +15271 exd5 8 1 5 +15275 exd5 4 0 1 +15281 exd5 11 1 11 +15282 Nc6 10 0 23 +15283 exd5 2 1 6 +15287 bxc6 5 0 3 +15288 bxc6 3 0 3 +15291 Bd7 4 1 4 +15293 Nf6 1 1 3 +15292 cxd4 6 1 5 +15294 d6 3 1 2 +15297 a6 4 0 2 +15296 cxd4 9 1 8 +15299 Bg7 1 1 6 +15300 Bg7 5 0 2 +15298 cxd4 4 0 4 +15304 d5 5 0 3 +15305 Bg7 14 1 10 +15309 Bg7 4 1 3 +15310 Bg7 2 0 5 +15312 bxc6 3 0 2 +15315 Bd7 3 0 3 +15316 cxd4 2 0 4 +15319 cxd4 8 0 9 +15321 cxd4 5 1 5 +15322 cxd4 2 1 8 +15325 Nc6 1 0 5 +15326 g6 5 0 0 +15327 g6 11 0 4 +15328 Bg7 5 0 1 +15331 cxd4 4 0 5 +15333 cxd4 8 4 3 +15334 exd5 12 3 7 +15335 Nc6 1 1 4 +15340 exd5 3 0 4 +15341 Qb6 4 0 6 +15342 Nc6 6 0 3 +15345 cxd4 12 2 11 +15346 bxc6 10 0 0 +15346 dxc6 2 0 3 +15349 Qxc6 3 0 3 +15353 Qxc6 2 0 3 +15351 e6 2 1 4 +15352 a6 2 0 3 +15354 bxc6 34 2 37 +15354 dxc6 12 3 10 +15355 bxc6 29 4 32 +15356 Bd7 1 1 3 +15356 e5 4 0 1 +15357 cxd4 4 5 3 +15359 dxc6 3 1 1 +15360 bxc6 30 2 18 +15360 dxc6 5 0 2 +15361 Nge7 2 0 4 +15362 cxd4 3 0 4 +15364 bxc6 19 1 20 +15364 dxc6 4 1 10 +15367 Bg7 1 0 4 +15365 Bg7 10 1 11 +15366 Bg7 4 0 5 +15369 d5 3 0 2 +15379 Nf6 3 0 3 +15380 e6 2 0 5 +15374 Nf6 10 2 5 +15374 e6 2 0 3 +15378 Nf6 1 0 4 +15378 e6 2 0 3 +15377 Nf6 1 0 4 +15377 e6 2 1 2 +15376 e6 2 0 4 +15376 Nf6 3 0 2 +15381 cxd4 2 0 6 +15375 Nf6 6 1 5 +15383 d6 2 0 4 +15390 a6 11 1 12 +15390 Nf6 6 0 11 +15390 d6 1 0 4 +15388 a6 11 0 8 +15388 Nf6 7 0 5 +15388 d5 7 0 3 +15388 g6 5 0 3 +15388 d6 2 0 5 +15388 b6 2 0 3 +15392 a6 9 0 9 +15392 Nf6 5 1 10 +15392 d5 2 0 5 +15389 d5 5 1 14 +15389 a6 6 2 8 +15389 Nf6 4 0 4 +15391 a6 7 0 11 +15391 d5 2 1 9 +15391 Nf6 3 0 4 +15391 d6 3 0 3 +15387 cxd4 38 2 38 +15387 d5 5 2 5 +15387 Nf6 2 0 5 +15387 a6 1 0 4 +15400 Bg7 5 0 3 +15397 e6 3 1 3 +15396 Bg7 5 0 5 +15398 Bg7 2 0 7 +15395 Bg7 6 0 4 +15399 Bg7 4 0 3 +15394 cxd4 3 1 10 +15402 e6 3 1 3 +15403 cxd4 2 0 3 +15404 cxd4 2 0 3 +15405 Bd7 14 1 9 +15407 e6 5 0 3 +15407 Nf6 1 1 3 +15407 g6 4 1 0 +15406 cxd4 9 3 16 +15409 d6 5 1 11 +15410 d6 2 1 4 +15410 h6 2 1 2 +15413 a6 1 1 4 +15413 Nf6 1 0 5 +15414 Nf6 5 1 3 +15412 cxd4 24 2 21 +15412 d5 3 1 2 +15418 Bg7 1 1 5 +15417 Bg7 5 0 7 +15416 cxd4 10 0 21 +15419 Nf6 2 0 3 +15420 Nd5 5 0 4 +15420 Ng4 1 1 3 +15422 cxd4 0 0 5 +15424 Bg4 2 0 4 +15424 d4 3 0 3 +15423 Qxd5 9 2 10 +15425 cxd4 5 3 18 +15430 d6 4 0 3 +15429 d6 3 0 2 +15428 cxd4 5 0 13 +15431 cxd4 7 1 8 +15431 d5 4 0 7 +15433 cxd4 8 0 7 +15435 Nf6 0 0 5 +15436 cxd4 2 0 3 +15438 d6 4 0 1 +15443 cxd4 6 0 2 +15444 Na5 3 0 2 +15445 e5 159 15 162 +15445 Nf6 121 10 150 +15445 g6 100 5 100 +15445 d6 59 4 67 +15445 Nxd4 74 3 51 +15445 e6 70 2 52 +15445 a6 16 2 19 +15445 Qc7 7 0 11 +15445 Ne5 6 0 10 +15445 Qb6 1 1 6 +15445 b6 3 0 5 +15445 d5 2 0 3 +15446 dxc3 16 0 13 +15447 Qxd5 4 0 6 +15449 Ne5 5 1 1 +15450 dxc5 6 0 2 +15452 exd5 21 0 5 +15453 Bxc5 7 0 2 +15456 Nxd5 4 0 1 +15458 e6 1 0 4 +15460 cxd4 3 0 4 +15461 cxd4 3 0 3 +15462 Nf6 8 0 4 +15462 Nc6 5 1 2 +15462 b5 5 0 3 +15462 e5 3 2 2 +15462 Qa5 2 0 4 +15462 e6 1 0 4 +15463 Nc6 4 1 4 +15464 Bb7 1 0 4 +15465 cxd4 3 0 2 +15466 Bb7 23 1 12 +15468 Qe6 4 1 3 +15470 Nxd7 28 6 33 +15470 Qxd7 21 5 24 +15472 a6 2 1 3 +15472 Bxb5 3 0 2 +15472 Nc6 3 0 2 +15471 a6 5 0 6 +15471 Nc6 3 1 2 +15475 bxc6 17 0 19 +15476 cxd4 3 0 7 +15476 a6 2 0 3 +15479 Bxd7 2 1 2 +15481 Bh5 3 0 2 +15489 Kxf7 1 0 4 +15485 Nf6 8 2 5 +15485 g6 4 0 3 +15483 e6 6 1 10 +15483 Ne5 7 0 7 +15484 Nf6 7 0 6 +15484 e6 3 1 2 +15487 Nf6 1 0 5 +15486 Nf6 2 0 10 +15488 Nf6 3 1 3 +15482 cxd4 13 3 23 +15490 e6 6 0 8 +15490 a6 2 0 9 +15490 g6 2 1 5 +15490 Nc6 2 1 3 +15492 e6 13 0 12 +15495 e6 2 0 3 +15491 e6 7 1 12 +15491 Nc6 5 0 3 +15491 a6 3 0 2 +15493 cxd4 7 0 5 +15494 dxe5 5 1 7 +15498 e6 1 1 6 +15501 a6 4 0 7 +15501 Nf6 1 0 8 +15501 Nc6 5 0 1 +15500 Nf6 4 3 10 +15500 a6 1 0 7 +15500 Nc6 3 1 3 +15500 Be7 1 0 5 +15502 Nf6 7 0 5 +15502 a6 6 0 3 +15504 a6 1 0 6 +15504 Nf6 2 0 5 +15503 Nf6 2 0 7 +15503 a6 2 0 4 +15503 Nc6 3 1 2 +15499 cxd4 14 1 33 +15511 Bd7 6 0 17 +15511 e6 3 0 9 +15513 g6 6 0 4 +15513 Nf6 5 0 4 +15513 e6 2 0 3 +15512 cxd4 17 2 24 +15516 Bd7 5 0 5 +15515 Nc6 4 0 5 +15515 e6 7 0 2 +15514 cxd4 25 5 44 +15518 e6 3 0 3 +15517 cxd4 6 0 12 +15521 Nc6 3 0 2 +15521 Bd7 3 0 2 +15520 cxd4 3 1 12 +15522 cxd4 2 0 8 +15525 Bd7 4 0 4 +15525 a6 2 0 4 +15526 Nf6 3 0 2 +15524 cxd4 21 4 15 +15529 Nc6 3 0 3 +15528 Nc6 8 0 4 +15532 Nc6 4 0 2 +15530 cxd4 5 0 2 +15530 Nxe4 1 0 5 +15531 dxe5 4 0 8 +15534 cxd4 4 0 1 +15535 cxd4 5 0 1 +15536 cxd4 2 0 9 +15537 Nf6 2 0 3 +15538 Nc6 3 0 2 +15539 g6 0 0 5 +15540 Ne5 4 0 1 +15541 dxc5 4 0 1 +15545 bxc5 5 0 2 +15546 Nf6 354 22 388 +15546 Nc6 85 7 75 +15546 e5 46 2 30 +15546 a6 36 4 29 +15546 g6 16 2 24 +15546 e6 6 1 10 +15546 Bd7 6 0 4 +15546 Qc7 2 0 4 +15547 Nc6 22 2 24 +15547 Nf6 11 1 9 +15547 a6 5 0 5 +15548 dxc3 6 0 5 +15548 Nf6 2 0 3 +15549 Qa5 3 1 2 +15556 a6 2 0 6 +15555 Nf6 5 0 3 +15555 d5 3 0 2 +15558 a6 2 0 3 +15557 cxd4 3 0 11 +15565 b5 1 1 5 +15562 b5 1 0 6 +15563 b5 2 0 4 +15564 b5 2 0 7 +15568 exd5 24 1 15 +15571 Nf6 1 0 4 +15570 cxd4 15 1 15 +15578 Nc6 0 0 5 +15575 cxd4 19 0 31 +15582 Bd7 3 1 1 +15581 dxe4 3 0 2 +15580 exd5 14 0 15 +15583 cxd4 2 0 3 +15584 exd5 3 0 2 +15586 exd5 7 1 4 +15587 cxd4 4 1 13 +15588 Nd5 2 1 4 +15589 cxd4 5 0 2 +15591 Nc6 4 0 5 +15590 exd5 11 0 7 +15590 Qxd5 2 0 5 +15594 cxd4 1 0 4 +15595 exd5 5 0 2 +15597 exd5 4 0 2 +15598 exd5 5 0 2 +15600 Nd5 5 0 6 +15601 d6 0 0 5 +15602 Nc6 135 7 89 +15602 a6 94 6 114 +15602 Nf6 28 4 46 +15602 Bc5 16 2 21 +15602 Qf6 2 0 3 +15602 Be7 3 0 2 +15602 d6 1 0 4 +15603 Nc6 8 0 10 +15604 dxc3 4 1 7 +15606 Bxc5 10 0 11 +15607 f6 3 0 3 +15605 exd5 38 4 45 +15613 Bxd6 3 0 2 +15614 Nc6 10 2 2 +15615 Nc6 6 0 4 +15616 Nc6 2 0 3 +15618 cxd4 0 0 5 +15619 Nc6 7 0 6 +15619 e6 5 0 1 +15620 cxd4 5 0 8 +15621 cxd4 3 0 2 +15622 cxd4 20 1 11 +15624 d6 0 0 7 +15625 Bg7 53 0 60 +15625 Nc6 12 0 15 +15626 Nf6 8 0 9 +15631 d5 0 0 5 +15632 Nf6 0 0 6 +15633 Nf6 3 0 5 +15634 Nc6 3 0 5 +15636 Nc6 1 0 4 +15640 exd5 3 0 4 +15642 e6 15 1 14 +15642 d5 13 0 4 +15642 d6 8 1 6 +15642 Nf6 3 0 5 +15642 e5 3 0 3 +15644 cxd4 2 0 6 +15647 Nf6 3 1 7 +15647 cxd4 3 0 2 +15649 Nf6 10 0 15 +15649 Nc6 9 0 10 +15649 e6 4 0 5 +15649 g6 6 0 3 +15649 a6 3 0 3 +15650 exd4 2 0 9 +15651 d5 2 0 5 +15651 Nc6 2 0 3 +15652 Nc6 2 0 5 +15653 Bg7 4 0 4 +15655 Nf6 5 0 0 +15657 d6 1 0 5 +15661 Bg7 4 0 2 +15660 Bg7 9 0 4 +15664 cxd4 1 0 4 +15665 cxd4 1 0 6 +15667 Nf6 1 1 4 +15671 d5 5 1 3 +15672 Nc6 6 0 6 +15674 Bg7 2 1 2 +15679 Nf6 2 0 3 +15682 Nf6 1 0 4 +15686 exd5 1 0 4 +15687 exd5 7 0 2 +15690 Nc6 4 0 2 +15693 e6 4 1 5 +15693 e5 5 0 4 +15692 e5 10 1 1 +15692 d6 5 0 6 +15692 g6 5 1 3 +15692 Nxd4 6 0 1 +15692 e6 3 0 2 +15694 dxc3 4 0 1 +15697 Nf6 3 0 3 +15699 a6 2 0 4 +15702 Nf6 4 0 12 +15702 d6 4 0 11 +15702 e6 2 0 6 +15702 a6 2 0 6 +15702 g6 1 0 4 +15702 e5 1 0 4 +15703 d6 2 0 8 +15703 e6 1 0 8 +15703 e5 2 0 6 +15704 e5 3 0 6 +15704 e6 5 0 4 +15704 Nf6 2 1 2 +15700 Nf6 16 2 38 +15700 e5 23 1 21 +15700 d6 16 2 18 +15700 e6 10 0 19 +15700 g6 11 1 15 +15700 a6 1 1 6 +15707 e5 2 0 3 +15706 Nf6 1 0 4 +15706 d6 1 0 4 +15705 Nf6 3 0 11 +15705 e6 1 0 4 +15701 d6 7 1 14 +15701 e5 4 0 15 +15701 Nf6 3 1 13 +15701 e6 6 0 7 +15701 g6 6 0 6 +15711 d5 3 1 5 +15712 Nd5 2 0 5 +15713 Nc6 7 0 6 +15715 cxb2 13 0 15 +15715 g6 2 0 5 +15715 e6 2 0 4 +15715 Nc6 4 0 2 +15714 Nc6 33 0 33 +15714 e6 13 0 14 +15714 d6 16 0 6 +15714 g6 7 0 3 +15714 a6 3 0 3 +15714 e5 3 0 2 +15716 Nc6 1 0 4 +15717 d5 1 0 10 +15718 Qxc5 4 0 2 +15719 Kxd8 9 1 5 +15720 d6 5 0 4 +15730 Bg7 1 0 7 +15731 g6 1 0 4 +15736 Bg4 3 0 4 +15735 Qxd5 6 0 5 +15738 Bd7 5 0 4 +15737 e6 5 0 5 +15737 g6 4 0 4 +15737 Nf6 3 0 4 +15740 g6 3 0 3 +15739 cxd4 5 1 6 +15746 d6 2 0 3 +15745 d5 8 0 3 +15747 d5 4 0 3 +15748 cxd4 6 1 2 +15752 Bg7 9 1 8 +15752 h6 6 0 2 +15753 Bg7 4 0 3 +15754 cxd4 2 2 2 +15755 Nc6 5 0 3 +15756 Nf6 4 0 3 +15758 Bg4 6 0 7 +15761 e6 1 0 4 +15762 Qd8 15 0 12 +15763 Bg4 7 1 5 +15763 Nc6 4 0 2 +15769 Bd7 4 0 2 +15765 e6 6 0 7 +15765 Nf6 6 0 4 +15765 a6 5 0 2 +15765 g6 4 0 2 +15766 Nf6 5 1 4 +15767 g6 2 0 3 +15767 Nf6 0 0 5 +15768 cxd4 2 0 5 +15775 Nc6 3 0 4 +15778 a6 5 0 4 +15780 cxd4 2 0 3 +15784 cxd4 2 0 3 +15786 Nc6 7 0 9 +15786 f6 2 0 4 +15785 exd5 19 3 25 +15787 Nc6 5 1 11 +15791 Nf6 32 1 24 +15791 Nc6 21 1 32 +15791 e5 18 0 7 +15791 e6 13 0 4 +15791 Bf5 9 0 6 +15792 Bd7 32 6 28 +15792 Nc6 26 0 20 +15792 Nd7 8 1 5 +15795 cxd5 3 0 4 +15797 Nf6 10 0 3 +15800 Nf6 3 1 3 +15800 Bf5 2 1 2 +15803 Nf6 1 1 5 +15803 Nc6 3 1 1 +15802 Nf6 7 3 8 +15802 Nc6 10 1 7 +15802 Bf5 5 0 3 +15805 Nc6 0 0 5 +15806 Nf6 2 0 4 +15807 cxd5 4 0 3 +15808 c5 9 0 11 +15809 Nf6 7 3 7 +15809 Nd7 10 1 3 +15809 Bf5 3 0 11 +15809 Bg4 5 0 3 +15810 Bxd7 3 0 5 +15811 dxe4 3 0 3 +15812 exd3 6 0 7 +15813 Qxd1 3 1 4 +15814 Nd7 1 0 4 +15815 e6 23 3 24 +15815 Nd7 5 1 3 +15818 e6 6 0 11 +15817 e6 17 3 34 +15819 Bh5 7 0 6 +15819 Bxf3 4 0 1 +15821 Ne7 2 0 9 +15821 Nd7 3 3 3 +15821 c5 4 0 1 +15822 Qe6 3 0 2 +15825 Nc6 15 2 17 +15825 Bd7 12 2 14 +15831 Nf6 2 0 3 +15826 Nf6 14 1 16 +15826 Nc6 1 1 11 +15826 Bg4 0 0 7 +15827 Nf6 7 2 5 +15827 Bg4 2 0 3 +15824 Nc6 99 8 122 +15824 Nf6 64 3 85 +15824 Bg4 52 7 48 +15824 e6 19 3 7 +15824 Bf5 13 2 10 +15834 cxd5 2 1 5 +15836 c5 3 1 1 +15837 cxd5 1 0 4 +15838 Nf6 2 0 4 +15839 Nc6 1 0 5 +15841 Qxd5 5 0 3 +15841 Nf6 3 1 2 +15842 Nf6 3 0 4 +15843 e5 2 0 5 +15845 Qxd1 3 0 5 +15846 Bg4 4 0 2 +15847 Nf6 1 0 4 +15847 Nc6 3 0 2 +15851 Ng8 9 1 2 +15851 Nfd7 2 1 3 +15853 Bf5 47 5 43 +15853 Nf6 24 1 25 +15853 Nd7 9 1 21 +15853 g6 3 0 2 +15854 exf3 4 1 5 +15857 Bf5 9 0 5 +15857 Nf6 3 0 3 +15858 Nf6 2 1 3 +15859 Bxd3 54 2 56 +15859 Bg6 7 1 8 +15859 e6 5 0 2 +15861 e6 28 2 32 +15861 Nd7 5 0 2 +15861 h6 3 0 2 +15860 e6 48 2 50 +15860 Nd7 7 0 7 +15860 h6 8 0 2 +15860 Bg4 4 0 3 +15864 e6 9 1 10 +15866 e6 7 0 8 +15862 e6 16 1 16 +15863 Bg6 10 0 5 +15863 Be4 7 0 1 +15865 e6 9 0 5 +15867 h6 6 0 2 +15867 h5 3 0 2 +15869 Nc6 2 0 10 +15870 Nc6 2 0 4 +15874 c5 5 0 2 +15872 c5 10 1 9 +15872 Nd7 4 0 4 +15872 Ne7 0 1 6 +15876 c5 3 0 3 +15873 Ne7 5 1 4 +15873 c5 6 0 2 +15884 Nc6 5 0 9 +15884 Bd7 5 0 8 +15881 Nc6 26 3 24 +15881 Nf6 14 2 13 +15881 e6 4 0 1 +15882 Nc6 8 2 22 +15882 Nf6 13 2 15 +15882 Bf5 9 0 1 +15882 e6 4 0 1 +15880 Nc6 24 0 18 +15880 Nf6 14 0 13 +15880 Bg4 13 1 12 +15880 Bf5 10 0 2 +15880 e6 5 0 2 +15885 Nf6 3 1 3 +15883 Nf6 21 1 20 +15883 dxc4 13 1 0 +15883 e6 4 0 5 +15883 Nc6 5 0 3 +15886 e5 3 2 1 +15886 Nf6 5 0 0 +15890 e6 2 0 4 +15895 e6 14 3 17 +15895 Nd7 4 0 2 +15895 h6 4 0 2 +15896 e6 12 2 11 +15897 c5 3 0 3 +15897 Nd7 1 0 4 +15898 Ne7 3 0 5 +15898 c5 0 0 5 +15900 Nc6 4 2 9 +15900 Nf6 5 1 3 +15900 Bg4 6 0 2 +15899 Nc6 7 0 12 +15899 Nf6 6 0 5 +15899 Bf5 5 0 5 +15902 Nf6 5 0 3 +15904 Nc6 2 0 3 +15907 Qxd3 5 0 2 +15908 Nc6 8 0 6 +15909 Nf6 3 0 2 +15909 c5 3 0 2 +15910 c5 4 0 1 +15913 e5 2 1 3 +15914 Bg6 8 0 5 +15916 exf6 6 0 4 +15917 Nf6 4 0 1 +15918 bxc6 5 0 1 +15919 exd3 11 0 4 +15920 f6 5 0 0 +15921 g6 13 0 0 +15924 e6 4 0 4 +15923 Nf6 3 0 4 +15926 e6 6 1 7 +15925 Bf5 8 0 5 +15925 Bg4 4 0 5 +15928 Nh6 5 0 3 +15931 Nc6 1 0 6 +15932 Nf6 4 0 3 +15933 Nc6 5 1 24 +15933 e5 6 2 12 +15933 Nf6 2 1 12 +15933 e6 3 2 5 +15933 Bg4 6 1 3 +15934 exf3 3 0 4 +15938 Bxd3 6 0 4 +15937 c5 2 0 9 +15937 Nc6 3 0 2 +15943 Bxc6 6 0 1 +15947 Qd7 7 0 4 +15947 e6 3 1 4 +15948 e6 3 1 2 +15951 Bd7 3 0 3 +15952 Bb4 3 0 2 +15956 fxe5 4 1 4 +15954 fxe5 2 0 8 +15955 exf6 3 1 2 +15955 Nxf6 2 0 3 +15953 fxe5 4 1 4 +15953 Bf5 4 0 1 +15958 e6 2 0 3 +15960 cxd4 3 0 4 +15961 Nc6 4 1 8 +15962 Bg4 3 0 8 +15962 e6 10 0 1 +15962 Bf5 1 0 4 +15963 Nc6 2 0 3 +15967 Bg4 3 0 2 +15967 Bd7 2 0 3 +15981 Nc6 4 0 1 +15984 Ba5 4 0 6 +15986 Bd7 3 0 4 +15986 a6 3 0 2 +15985 Bb4 4 0 1 +15988 c5 2 0 4 +15990 c5 4 0 1 +15989 c5 7 0 2 +15993 Bd7 5 0 1 +15991 c4 6 0 12 +15991 Nc6 8 0 3 +15991 cxd4 4 0 4 +15995 Bxc5 4 0 2 +15998 fxe5 5 0 2 +16000 Qd6 5 0 0 +16001 e6 3 0 5 +16001 Nc6 5 0 0 +16002 Nc6 3 0 6 +16002 e6 1 0 5 +16006 Qxd5 6 0 6 +16009 Nxc6 4 0 8 +16012 Nxc3 7 0 6 +16012 e6 1 0 4 +16013 Nxc3 4 2 4 +16011 Qxd5 60 9 97 +16014 Nxc3 6 1 4 +16016 Nxc6 33 5 33 +16018 Bxe6 7 1 13 +16020 e6 3 1 1 +16020 Nc6 3 0 2 +16019 Nc6 4 0 3 +16019 Bg4 1 0 5 +16019 g6 2 1 2 +16023 Nxc6 10 1 7 +16025 cxd5 4 1 9 +16026 cxd5 8 0 2 +16024 Nxc6 31 3 40 +16027 Bxe6 2 0 4 +16029 exd5 4 0 7 +16028 Bxe6 29 3 30 +16031 Bxe2 2 0 4 +16032 Bg4 2 1 9 +16032 e6 7 0 2 +16032 g6 5 1 1 +16032 Nc6 6 0 1 +16033 Nb6 12 0 4 +16033 Nf6 9 0 4 +16038 Nxc6 22 3 10 +16039 Bxe6 7 1 5 +16043 Nf6 19 1 12 +16043 c6 5 0 5 +16046 c6 2 0 4 +16046 Nf6 1 0 5 +16040 Nf6 41 3 54 +16040 c6 25 1 45 +16040 Bg4 28 2 28 +16040 a6 10 1 15 +16040 e5 9 1 10 +16040 Nc6 9 0 8 +16040 e6 6 0 4 +16045 c6 1 0 4 +16044 c6 4 0 2 +16044 e5 5 0 0 +16049 Qxb4 4 0 1 +16042 c6 15 1 16 +16042 Nf6 7 2 8 +16042 a6 6 0 6 +16042 e5 5 0 3 +16042 Nc6 6 0 1 +16042 Bf5 4 0 1 +16041 c6 32 5 30 +16041 Nf6 36 2 27 +16041 a6 7 2 5 +16041 e6 7 0 1 +16041 Bf5 4 0 3 +16041 e5 4 0 2 +16041 Nc6 3 0 2 +16047 c6 2 0 3 +16050 c6 2 1 2 +16058 Qd8 6 1 0 +16058 Qf6 3 1 1 +16059 Nf6 11 1 19 +16059 e5 10 0 5 +16059 Bg4 6 0 1 +16059 a6 3 0 2 +16061 e5 4 0 1 +16060 Nf6 6 2 11 +16070 c6 7 0 8 +16067 e6 19 4 17 +16067 Nf6 15 1 10 +16067 c6 8 0 8 +16067 Nc6 8 0 0 +16067 e5 1 0 5 +16067 Bf5 5 0 0 +16069 e6 3 0 5 +16069 c6 2 0 3 +16065 e6 84 3 37 +16065 Nf6 42 5 35 +16065 c6 25 3 25 +16065 Nc6 27 1 16 +16065 Bg4 20 3 17 +16065 g6 6 0 5 +16065 a6 4 0 6 +16065 b6 4 1 3 +16065 Bf5 2 1 2 +16068 e6 16 2 11 +16068 Nf6 4 1 8 +16068 Nc6 3 1 5 +16066 e6 46 4 31 +16066 Nf6 37 2 24 +16066 c6 18 2 28 +16066 Nc6 16 0 7 +16066 g6 5 0 4 +16066 Bf5 5 1 2 +16066 e5 2 0 4 +16066 a6 2 1 2 +16077 Bg4 76 1 38 +16077 Nc6 24 1 16 +16077 Bf5 20 0 6 +16077 Qg5 19 0 5 +16077 Nf6 11 1 4 +16077 e6 13 1 1 +16077 c6 6 0 3 +16077 b6 2 0 5 +16079 Bg4 28 0 8 +16079 Nc6 9 1 2 +16079 Bf5 5 0 2 +16079 Nf6 2 0 3 +16078 Qxe2 84 7 36 +16078 Nc6 5 0 5 +16078 Qf5 4 0 2 +16080 Nc6 61 4 43 +16080 c5 38 0 24 +16080 Nf6 43 1 18 +16080 Qg6 34 2 22 +16080 b6 22 0 9 +16080 f5 12 1 3 +16080 c6 13 0 1 +16080 g6 11 0 3 +16080 Qc6 12 0 2 +16080 Bd7 6 0 8 +16082 Nc6 29 1 17 +16082 Nf6 12 1 6 +16082 c5 4 0 5 +16082 f5 5 0 3 +16082 Qg6 3 0 4 +16082 b6 4 0 3 +16082 c6 2 0 4 +16081 Nc6 27 3 15 +16081 Qxe2 29 2 7 +16081 Nf6 10 0 16 +16081 Qg6 15 0 7 +16081 c5 14 0 6 +16081 Qd6 7 0 2 +16081 Qc6 3 0 3 +16081 b6 3 1 1 +16086 Nf6 16 0 11 +16086 Nc6 6 1 10 +16086 Qe6 4 0 4 +16086 e6 5 0 3 +16086 Bxf3 4 2 1 +16088 Qe6 1 0 4 +16091 Bf5 1 0 4 +16091 e6 3 1 1 +16090 Qd8 6 0 3 +16090 Qa5 4 0 2 +16090 Qe6 2 0 3 +16092 Bg4 1 1 3 +16093 a6 7 0 2 +16097 e6 1 1 4 +16099 e6 3 2 2 +16096 e6 7 0 1 +16098 e6 5 1 2 +16101 Nc6 10 2 6 +16101 Bg4 7 0 5 +16102 Nc6 12 0 15 +16102 Qg6 6 0 7 +16102 Nf6 7 0 5 +16102 b6 7 0 3 +16103 Qe6 7 0 1 +16104 Nxd5 4 1 3 +16108 c6 3 2 4 +16108 Nc6 5 0 2 +16108 Nf6 3 0 4 +16108 e6 3 1 3 +16108 Bg4 4 0 1 +16109 c6 2 0 5 +16110 Nf6 3 1 3 +16111 e6 5 0 1 +16111 Nf6 3 0 2 +16114 Qg6 4 0 1 +16115 Qb6 3 1 3 +16117 Nc6 2 0 3 +16120 Bg4 10 1 10 +16124 Qd8 3 0 5 +16124 Qa5 2 1 2 +16125 Bg4 0 0 6 +16126 Qd8 4 1 2 +16129 Qb6 5 1 8 +16130 c6 5 1 3 +16131 c6 2 1 3 +16134 c6 1 0 4 +16132 e6 1 1 7 +16132 c6 1 0 4 +16132 Nc6 3 0 2 +16133 e6 2 1 3 +16138 Nc6 4 0 4 +16137 Nc6 4 0 1 +16140 Qxe2 5 0 3 +16141 Qg6 9 1 7 +16141 Nc6 5 0 1 +16146 Nc6 2 0 3 +16151 Bd7 9 0 9 +16152 e5 5 1 1 +16150 e5 6 0 10 +16150 Nf6 7 0 3 +16155 Nxd5 0 0 5 +16158 Nf6 1 0 4 +16157 Nf6 3 0 4 +16160 Nf6 4 0 8 +16159 Nf6 6 0 5 +16159 Bc5 4 0 2 +16161 Nf6 4 0 4 +16164 Nc6 1 0 5 +16166 Nf6 3 0 3 +16167 b5 2 0 3 +16168 b5 4 0 2 +16169 exd5 2 0 4 +16170 Bg7 4 0 2 +16175 Nf6 1 0 5 +16177 e5 14 1 15 +16180 Nc6 1 0 4 +16179 cxd4 2 0 4 +16182 b5 3 0 2 +16181 g6 0 0 5 +16183 Be7 6 1 11 +16184 Nbd7 3 0 5 +16186 Bg7 10 0 6 +16187 Bg7 2 1 5 +16185 Bg7 24 2 25 +16189 Nbd7 6 1 6 +16189 g6 1 1 4 +16199 Bxf3 5 0 3 +16199 Nc6 2 0 3 +16201 dxe5 3 0 6 +16208 e6 2 0 7 +16211 Nf6 4 0 4 +16213 Nf6 7 1 4 +16214 Nf6 5 0 2 +16212 Nf6 4 1 5 +16212 Nd7 1 0 6 +16217 Nf6 2 1 2 +16219 Bh5 4 0 1 +16220 e5 7 1 5 +16222 e5 4 0 3 +16221 e5 4 1 2 +16221 e6 5 0 0 +16225 dxe5 2 0 4 +16228 Bg7 0 1 4 +16229 Bg7 2 1 4 +16226 Bg7 3 0 8 +16227 Bg7 8 0 2 +16232 Bxe2 4 0 3 +16231 Bh5 8 0 2 +16231 Bd7 6 0 3 +16237 e5 4 0 4 +16238 e5 1 0 6 +16239 e5 1 1 3 +16235 e5 9 0 9 +16234 e5 31 0 17 +16236 e6 5 0 7 +16241 Bg4 2 0 3 +16243 dxe5 2 0 4 +16248 Bg7 3 0 5 +16247 Bg7 6 0 2 +16245 Bg7 18 2 8 +16244 Bg7 14 1 26 +16249 dxe5 0 0 5 +16246 Bg7 11 1 10 +16252 Qxd1 3 0 6 +16257 Bxd6 14 0 20 +16259 Kxd8 22 2 6 +16267 c6 3 0 3 +16269 Be7 1 0 4 +16270 Bb7 2 1 2 +16272 Qxd1 3 0 4 +16274 Nf6 2 0 3 +16275 Nf6 5 0 1 +16276 Nf6 3 0 4 +16277 Nd7 4 0 1 +16279 Nf6 3 0 2 +16278 Nf6 2 1 7 +16280 Nd7 4 0 3 +16282 Nc6 4 1 4 +16282 Nf6 6 0 1 +16284 Nd7 4 0 3 +16284 Nf6 6 0 1 +16289 g5 5 1 1 +16292 Bg4 2 0 3 +16294 Nd7 6 0 5 +16296 cxd5 3 0 4 +16297 Kf8 4 0 14 +16297 g6 5 0 3 +16298 exf4 7 0 1 +16303 Nf6 4 2 4 +16301 Nf6 5 1 4 +16301 d6 3 0 3 +16302 Nf6 3 0 6 +16308 O-O 1 1 3 +16310 c6 2 2 1 +16309 h6 4 0 2 +16315 Bg4 2 0 4 +16312 Bg4 3 0 4 +16312 h6 3 0 3 +16312 Nf6 5 0 1 +16317 exd4 3 0 3 +16314 Nf6 1 0 4 +16320 O-O 2 0 4 +16320 d6 3 0 2 +16325 Nxf6 5 1 6 +16326 d6 2 0 3 +16329 Qxf2 3 0 2 +16328 d6 11 1 10 +16328 g6 13 2 3 +16328 Nc6 4 0 6 +16331 h6 6 0 1 +16331 d6 0 0 5 +16339 exf4 9 0 10 +16339 Nf6 8 0 2 +16341 Nf6 2 0 4 +16342 Bb4 9 0 5 +16342 Bc5 8 0 4 +16342 h6 3 0 4 +16342 Be7 5 1 1 +16342 d6 2 1 3 +16344 Nf6 4 0 1 +16351 Nf6 3 0 5 +16352 Qxg5 1 0 5 +16349 d6 3 0 6 +16349 Nf6 4 0 3 +16350 Nf6 4 1 2 +16348 Nf6 6 0 8 +16348 d6 8 1 1 +16347 Nf6 8 1 11 +16347 d6 8 0 4 +16347 h6 2 0 5 +16355 exd4 11 1 6 +16354 Qg5 7 0 14 +16356 Nxf3 2 0 3 +16357 Nxf3 4 0 1 +16360 Bc5 3 1 3 +16360 d6 1 2 3 +16360 Be7 1 2 3 +16358 d5 29 1 27 +16359 Bc5 8 1 6 +16359 Be7 3 0 4 +16359 h6 4 0 3 +16359 d6 4 0 3 +16363 Bg4 4 0 2 +16361 Bg4 3 0 4 +16370 Nf6 3 0 3 +16368 Nf6 1 0 6 +16369 Nf6 3 0 2 +16366 Bc5 4 0 4 +16366 Nf6 4 0 1 +16367 Nf6 2 0 8 +16373 Bc5 3 0 4 +16373 Be7 3 0 2 +16374 Nd4 1 0 5 +16374 Bc5 1 0 4 +16375 Qe7 6 0 3 +16371 d6 10 0 3 +16371 Bc5 4 0 9 +16372 Nd4 4 1 9 +16379 Nxf6 5 1 7 +16382 Nf6 3 0 2 +16385 Nf6 15 1 12 +16386 Bc5 8 0 5 +16386 d5 5 0 1 +16386 Be7 2 0 3 +16386 h6 2 0 3 +16387 Nf6 2 0 3 +16390 Bb6 3 0 3 +16391 Bc5 13 0 7 +16391 d5 5 0 5 +16391 d6 4 1 3 +16391 Be7 2 2 2 +16391 Na5 2 1 2 +16399 Nf6 2 0 3 +16398 Nf6 8 0 6 +16398 d6 2 2 1 +16403 Be7 4 0 2 +16401 d6 2 1 3 +16401 Be7 1 0 4 +16401 Bc5 2 1 2 +16401 Bb4 3 0 2 +16409 exf4 7 0 6 +16409 d6 4 0 3 +16411 Nxd5 5 0 2 +16410 Bxc3 8 0 4 +16410 O-O 4 1 4 +16413 d6 13 0 4 +16413 Ng4 4 0 2 +16413 Nc6 3 0 3 +16414 d6 8 2 8 +16414 Nc6 4 1 2 +16414 O-O 3 0 3 +16415 O-O 4 0 4 +16415 d6 4 0 3 +16419 Bc5 4 0 4 +16419 d6 3 0 3 +16420 Bc5 2 0 3 +16420 d6 3 0 2 +16422 d5 5 0 4 +16425 d5 3 1 1 +16424 d5 7 0 2 +16432 O-O 3 0 5 +16433 O-O 5 0 0 +16435 d5 40 2 41 +16438 Bc5 2 0 3 +16436 d6 3 0 2 +16436 h6 2 0 3 +16439 exd4 5 0 2 +16440 Qe7 6 0 11 +16440 d5 4 0 7 +16440 Qf6 2 0 5 +16441 d5 3 1 6 +16442 d5 4 0 1 +16443 Nxd5 29 0 12 +16444 Be6 16 1 5 +16444 d5 14 0 3 +16448 d5 4 0 3 +16450 O-O 2 0 3 +16449 Nc6 2 0 3 +16451 Bc5 11 0 11 +16451 d6 5 1 7 +16451 Na5 3 0 2 +16455 d5 7 0 6 +16465 Bxe3 5 0 5 +16462 d6 7 0 6 +16462 h6 4 0 7 +16462 O-O 6 0 5 +16464 d6 5 0 3 +16464 O-O 4 0 2 +16463 d6 5 0 8 +16466 O-O 1 0 5 +16461 O-O 9 3 10 +16461 Nc6 8 0 5 +16461 d6 5 0 7 +16461 d5 10 0 1 +16461 h6 3 0 7 +16461 c6 2 0 4 +16474 Be7 4 0 7 +16474 h6 8 0 1 +16475 Bc5 3 1 2 +16476 d6 1 0 4 +16472 Bc5 5 0 7 +16472 Be7 2 0 4 +16472 d5 3 0 2 +16472 d6 3 0 2 +16473 Bc5 9 0 3 +16473 Na5 3 0 2 +16473 d5 4 0 1 +16479 d5 5 1 4 +16479 Be7 1 1 3 +16480 d5 7 0 2 +16482 d5 4 0 4 +16484 Nxd5 48 3 46 +16494 c6 4 0 1 +16494 Bb4 5 0 0 +16491 Nc6 7 1 7 +16491 d6 2 0 3 +16492 Bc5 5 0 3 +16493 Nc6 3 0 2 +16496 Nc6 3 0 2 +16499 h6 3 0 4 +16502 Nxf6 3 0 2 +16512 cxd5 15 1 12 +16513 d5 3 0 4 +16514 cxd5 3 0 4 +16516 cxd5 5 0 2 +16518 cxd5 4 0 3 +16519 cxd5 10 0 12 +16520 exf4 5 0 2 +16520 Nf6 2 1 2 +16522 fxe6 4 0 2 +16523 Be7 3 0 2 +16525 fxe6 4 1 1 +16528 Nf6 4 0 1 +16527 Nf6 6 0 4 +16529 Bg4 2 0 3 +16532 Be6 3 0 2 +16535 Nf6 5 0 5 +16536 Nf6 5 0 2 +16539 fxe6 5 0 5 +16542 Qe7 5 0 3 +16540 Nc6 5 0 9 +16540 Be7 4 0 2 +16541 Nc6 4 0 2 +16544 Nxf6 6 1 1 +16551 Nf6 14 1 5 +16554 fxe6 2 0 6 +16558 fxe6 1 0 4 +16561 d5 2 0 8 +16565 d6 2 1 2 +16566 d6 1 1 3 +16570 exd4 11 0 11 +16577 Bc5 2 0 5 +16580 Bxc3 4 0 1 +16581 d6 8 0 4 +16581 Nge7 4 1 5 +16583 Nf6 4 0 2 +16585 d6 10 1 4 +16585 Bb4 3 1 3 +16585 a6 5 0 2 +16585 Nd4 0 0 6 +16586 exd4 10 3 10 +16589 Bd7 4 1 2 +16590 exd4 4 1 4 +16591 d6 5 0 0 +16596 g5 6 0 2 +16600 d6 17 0 10 +16600 a6 7 2 0 +16602 Bc5 3 1 3 +16602 Nxe4 2 1 2 +16601 exd4 7 2 17 +16604 exd4 6 1 0 +16609 Nc6 4 0 3 +16611 Nxe4 4 1 2 +16613 Ng8 8 0 1 +16613 Qe7 6 0 1 +16616 exd4 2 0 3 +16620 exd4 5 0 0 +16622 Ngf6 1 0 6 +16623 exd4 9 0 6 +16624 Bxf5 5 0 3 +16627 d5 2 1 4 +16628 d5 2 0 4 +16628 Bb4 3 0 2 +16632 Be7 2 0 4 +16635 O-O 4 0 3 +16643 Nf6 4 0 1 +16651 Bb6 3 0 3 +16652 Bb6 3 1 1 +16654 Nh6 3 0 2 +16653 Bb6 2 0 4 +16655 Nf6 6 0 0 +16657 exd4 3 0 3 +16658 Qf6 6 0 8 +16658 Nf6 4 2 3 +16661 O-O 8 0 1 +16660 O-O 8 1 6 +16662 Qe7 3 0 2 +16667 f6 3 0 2 +16670 dxc6 3 0 6 +16669 Bc5 3 0 2 +16672 dxc6 51 5 58 +16672 bxc6 31 1 26 +16676 Nf6 3 0 3 +16673 d6 30 1 28 +16673 Nf6 22 1 26 +16673 Nge7 9 2 5 +16673 Nd4 6 0 5 +16673 a6 4 0 5 +16673 Qf6 4 0 1 +16674 Nf6 22 1 14 +16674 a6 13 0 2 +16674 Nge7 9 0 4 +16674 d6 5 0 6 +16674 Qf6 2 0 3 +16675 Nf6 3 2 3 +16675 d6 2 0 5 +16675 a6 5 0 0 +16678 dxc6 6 1 3 +16678 bxc6 5 0 2 +16677 Nf6 6 0 4 +16677 a6 6 0 3 +16677 Nce7 4 0 2 +16677 Nd4 1 1 3 +16681 exd4 0 0 6 +16684 Bc5 3 0 4 +16684 Nxf3 3 2 1 +16683 exd4 102 5 71 +16687 dxc6 62 6 80 +16687 bxc6 29 2 20 +16690 Bc5 14 2 17 +16690 a6 10 2 6 +16690 d6 10 2 5 +16690 Bb4 10 0 5 +16690 d5 3 0 4 +16688 Nxe4 19 3 22 +16688 d6 17 2 16 +16688 Bc5 16 0 12 +16688 a6 13 0 7 +16688 Ng4 6 0 5 +16688 Bd6 4 0 2 +16689 Bc5 24 1 21 +16689 d6 10 1 15 +16689 a6 12 0 4 +16689 Nd4 6 0 3 +16689 d5 6 0 2 +16695 Nxc6 24 1 16 +16694 a6 13 1 8 +16694 d6 4 0 6 +16694 g6 1 0 6 +16693 g6 17 1 35 +16693 a6 29 1 22 +16693 d6 12 0 11 +16696 a6 11 0 4 +16696 g6 5 0 6 +16696 d6 4 0 7 +16697 a6 11 3 10 +16697 h6 4 0 1 +16697 d6 3 0 2 +16698 exd4 10 0 7 +16698 a6 5 1 2 +16700 Qxc6 14 2 6 +16700 bxc6 9 1 9 +16700 dxc6 6 1 8 +16702 a6 10 0 2 +16702 Bc5 4 0 4 +16702 Nge7 5 0 3 +16702 Nce7 5 0 2 +16699 Bc5 16 0 11 +16699 a6 8 0 3 +16699 Nd4 4 0 4 +16699 h6 3 0 2 +16703 a6 2 0 3 +16701 h6 8 0 5 +16701 Bc5 6 1 6 +16701 a6 5 0 4 +16701 Nd4 1 0 4 +16705 Nf6 148 8 136 +16705 b5 86 4 52 +16705 Bc5 23 1 19 +16705 d6 14 0 9 +16705 Nd4 3 1 2 +16704 dxc6 230 17 257 +16704 bxc6 67 4 41 +16707 bxc6 9 0 3 +16708 Qxd5 6 0 4 +16709 bxc6 154 17 180 +16713 Bd7 21 2 19 +16713 Nf6 8 0 8 +16713 a6 4 0 5 +16713 Bg4 5 0 1 +16710 Bd7 48 5 34 +16710 Nf6 16 1 21 +16710 Bg4 13 0 12 +16710 a6 8 2 10 +16710 Be7 5 0 2 +16710 Ne7 4 0 2 +16715 Bd7 14 0 6 +16715 Nf6 10 0 3 +16715 a6 8 0 2 +16715 Bg4 4 0 1 +16714 Bd7 13 1 14 +16714 Bg4 8 0 1 +16714 a6 2 1 4 +16711 exd4 44 6 39 +16711 Bd7 36 3 22 +16711 a6 22 2 3 +16711 Bg4 4 0 2 +16712 Bd7 36 4 39 +16712 Nf6 11 2 17 +16712 a6 11 1 15 +16717 dxc6 4 0 9 +16718 fxe4 3 2 2 +16719 fxe4 3 0 5 +16720 e4 3 0 3 +16721 dxc6 8 1 5 +16725 dxc6 4 0 2 +16726 dxc6 4 0 5 +16727 Ba5 8 0 9 +16738 Kxf7 4 1 1 +16731 Nf6 73 9 86 +16731 d6 27 4 25 +16731 h6 8 0 7 +16731 Nge7 7 2 5 +16731 a6 3 0 4 +16734 Qxg5 5 0 23 +16734 Nh6 2 0 5 +16734 d5 4 0 1 +16736 Nxe5 2 0 8 +16730 Nf6 73 6 109 +16730 d6 56 6 43 +16730 h6 10 0 8 +16730 Nge7 1 0 11 +16735 Nf6 6 0 7 +16735 d6 4 0 1 +16737 Nf6 2 0 3 +16732 Bxb4 35 3 40 +16732 Bb6 6 1 10 +16732 Nxb4 3 0 2 +16728 Nf6 160 16 144 +16728 d6 89 6 64 +16728 h6 24 0 13 +16728 a6 7 1 9 +16728 Na5 6 0 0 +16728 Nge7 2 0 3 +16729 Nf6 90 6 113 +16729 h6 59 5 80 +16729 d6 56 3 59 +16729 Nd4 6 0 3 +16729 Nge7 2 0 3 +16733 exd4 34 3 32 +16733 Bxd4 1 0 7 +16744 Nf6 9 0 20 +16743 Nf6 22 2 13 +16742 Nf6 18 2 12 +16742 d6 4 0 3 +16745 Nf6 7 1 7 +16745 d6 5 0 2 +16745 Na5 2 0 3 +16741 exd4 36 3 21 +16741 d6 5 1 2 +16752 Kxf7 5 0 4 +16751 Qxg5 5 0 5 +16746 exd4 52 2 47 +16747 Qg5 24 2 59 +16749 Nxf3 18 1 8 +16749 d6 6 0 2 +16748 Nxf3 28 2 13 +16750 Nxf3 6 0 11 +16756 Bc5 45 5 47 +16756 Bb4 25 2 20 +16756 Nxe4 14 1 21 +16756 d6 19 2 13 +16756 h6 13 0 11 +16756 Be7 7 0 12 +16756 a6 3 0 4 +16756 d5 4 1 1 +16756 Na5 2 0 3 +16754 d5 229 15 250 +16754 Bc5 31 1 29 +16754 Qe7 19 0 3 +16754 Nxe4 3 0 6 +16754 h6 5 0 2 +16757 Bc5 9 2 19 +16757 Be7 9 0 16 +16757 Nxe4 8 0 7 +16757 h6 5 0 2 +16757 d5 6 0 0 +16760 Bc5 3 0 7 +16759 Nxe4 4 0 7 +16759 Bc5 8 0 2 +16759 d5 6 0 4 +16759 Be7 6 0 1 +16755 Bc5 63 4 65 +16755 d5 34 2 30 +16755 Be7 27 1 26 +16755 h6 26 2 15 +16755 d6 19 0 10 +16755 Bb4 6 0 2 +16755 Na5 2 0 5 +16755 a6 5 0 1 +16758 exd4 27 5 22 +16758 Nxe4 1 0 8 +16761 g6 8 0 9 +16763 g6 4 0 4 +16764 g6 2 0 4 +16762 exd4 3 0 8 +16769 h6 5 0 1 +16777 b5 6 0 1 +16776 b5 6 0 1 +16775 h6 6 0 2 +16775 b5 5 0 3 +16774 exd4 10 0 6 +16774 b5 13 0 1 +16774 f6 3 0 2 +16781 Nd4 4 0 1 +16784 Bg4 12 1 12 +16784 Be6 5 0 3 +16784 Nf6 4 1 2 +16784 h6 4 0 2 +16784 Be7 4 0 2 +16788 Qxg5 2 1 3 +16785 Bg4 10 0 2 +16785 Be6 7 0 3 +16785 Be7 7 0 3 +16785 h6 5 2 1 +16785 Nf6 5 0 2 +16786 Be6 10 0 6 +16786 Nf6 3 0 5 +16786 h6 5 0 1 +16786 Be7 3 0 2 +16786 Bg4 2 0 3 +16783 Bg4 17 2 17 +16783 Nf6 6 0 8 +16783 Be6 5 0 7 +16783 h6 3 0 5 +16783 f5 3 0 2 +16783 Be7 0 1 4 +16782 exd4 34 3 21 +16782 Bg4 20 3 17 +16782 Be6 6 0 1 +16782 h6 6 0 1 +16782 Nxd4 1 1 4 +16782 Nf6 3 0 2 +16782 Be7 3 0 2 +16787 Nf6 8 0 4 +16787 Be7 7 0 5 +16787 h6 2 0 3 +16790 Nf6 5 0 2 +16791 Nf6 0 0 5 +16796 Rxg8 5 0 1 +16792 exd4 3 1 3 +16798 g4 6 0 5 +16797 g4 5 0 8 +16801 Nf6 72 6 46 +16801 Bc5 17 1 13 +16801 d6 14 0 13 +16801 a6 13 0 10 +16801 Bb4 9 0 8 +16802 Nf6 62 9 48 +16802 Bc5 26 3 17 +16802 d6 11 0 5 +16802 a6 8 0 5 +16802 Bd6 4 0 3 +16805 Nf6 3 0 5 +16805 Bc5 4 0 3 +16806 Nf6 2 0 5 +16806 Bc5 1 0 4 +16803 Nf6 65 4 42 +16803 Bc5 15 3 17 +16803 d6 11 1 5 +16803 a6 7 0 5 +16804 Nf6 41 4 41 +16804 Bc5 17 0 17 +16804 d6 9 0 3 +16804 a6 3 1 8 +16800 exd4 136 9 100 +16800 d6 21 1 8 +16800 Qf6 21 1 4 +16800 Bd6 9 0 6 +16800 Nf6 12 0 1 +16800 Nxd4 9 0 1 +16808 Nf6 4 0 1 +16811 Nf6 1 0 5 +16813 Bc5 0 1 7 +16813 d5 4 1 1 +16815 Bxc3 8 2 9 +16815 Nf6 4 0 1 +16818 Nf6 4 0 2 +16816 Bxc3 9 2 9 +16816 Ba5 2 0 5 +16817 Bxc3 6 0 7 +16817 Nf6 4 0 1 +16819 exd4 3 2 4 +16819 Bxc3 5 0 2 +16822 Nf6 18 2 13 +16822 d6 13 2 12 +16822 a6 5 1 7 +16822 Nge7 3 1 3 +16822 Nd4 4 1 2 +16822 Qf6 4 0 2 +16821 Nf6 34 4 28 +16821 d6 21 2 19 +16821 h6 8 0 7 +16821 Nge7 5 0 2 +16829 Nf6 4 0 3 +16825 Bb6 12 1 2 +16825 Be7 3 1 3 +16824 Nxe5 23 1 8 +16824 Bxf2 3 0 5 +16826 Nf6 5 0 6 +16826 d6 2 0 3 +16823 Nf6 4 1 18 +16823 d6 2 0 7 +16823 h6 2 0 3 +16827 exd4 7 0 5 +16828 Nf6 3 0 3 +16832 exd4 3 0 4 +16836 d6 18 2 16 +16836 a6 15 0 9 +16836 Bc5 8 1 11 +16836 Bb4 8 0 9 +16836 Nd4 4 0 7 +16836 d5 6 0 1 +16835 Bc5 37 3 32 +16835 h6 17 1 24 +16835 Bb4 13 0 9 +16835 d6 11 0 9 +16835 Be7 8 0 11 +16835 Nxe4 5 2 9 +16835 a6 7 0 0 +16839 Nxe5 8 0 11 +16838 d5 10 0 3 +16838 Bc5 5 0 4 +16837 Bc5 12 1 16 +16837 Bb4 8 0 10 +16837 d5 5 1 8 +16837 d6 7 0 5 +16837 h6 2 0 6 +16834 exd4 82 10 77 +16834 Bb4 17 1 12 +16834 d6 15 1 5 +16834 d5 4 0 4 +16834 Nxd4 3 0 3 +16842 g6 2 0 3 +16841 g6 1 1 3 +16843 h6 7 1 4 +16844 exd4 10 0 1 +16849 Bd7 16 2 7 +16849 Bg4 2 2 4 +16847 Bg4 7 1 6 +16847 h6 7 0 5 +16847 Be7 4 1 2 +16847 Nf6 4 0 3 +16847 Be6 3 0 2 +16850 Nf6 2 0 3 +16848 exd4 9 1 12 +16848 Bg4 7 0 5 +16851 Nf6 1 0 4 +16852 Nf6 6 0 4 +16855 Bb6 7 1 7 +16856 Nf6 1 0 4 +16857 Bc5 6 0 8 +16857 d6 6 0 5 +16857 d5 1 1 4 +16858 d5 5 0 4 +16858 Bc5 2 0 5 +16859 Qxd5 7 1 6 +16860 d6 19 2 10 +16860 Nf6 3 0 3 +16861 d6 6 0 7 +16866 Nf6 1 0 5 +16866 d6 2 0 3 +16870 Bb6 2 1 3 +16865 exd4 25 1 37 +16874 Bc5 4 1 5 +16875 Bc5 2 0 6 +16875 d5 2 0 5 +16873 Bc5 8 0 7 +16873 d6 5 0 8 +16873 d5 3 1 8 +16873 h6 6 0 4 +16872 exd4 26 5 39 +16872 Nxe4 10 0 14 +16872 d6 12 0 6 +16880 exd4 3 0 2 +16882 dxe4 3 0 3 +16881 Qxd5 3 0 8 +16884 Bd7 6 0 3 +16883 exd4 6 0 9 +16883 Bg4 6 2 5 +16889 Bc5 4 0 3 +16889 Bb4 4 0 1 +16889 d6 1 1 3 +16893 Nf6 3 0 2 +16892 Nf6 12 0 7 +16892 d6 6 0 5 +16894 Nf6 2 0 3 +16895 d6 3 0 3 +16898 Be7 3 0 9 +16897 Bc5 4 0 6 +16897 Bb4 6 0 3 +16897 d6 1 0 4 +16901 Qxd5 5 0 5 +16905 Nf6 8 0 1 +16906 Bd6 6 0 5 +16906 Ba5 5 0 6 +16908 Nce7 5 2 15 +16908 Nb4 4 0 1 +16909 Nxe5 2 0 3 +16910 Nd4 10 0 0 +16910 Ne7 2 0 4 +16910 Nb4 3 0 3 +16910 Nb8 3 0 2 +16911 Nxe4 16 0 8 +16914 exd4 37 4 26 +16916 Nd4 12 0 8 +16917 Nxe5 3 1 5 +16918 dxe4 9 1 6 +16919 Qxd5 6 3 8 +16922 Bd7 5 0 1 +16920 Nce7 17 1 15 +16920 Nb4 7 1 9 +16920 Nd4 4 0 7 +16920 Na5 4 0 1 +16920 Nb8 4 0 1 +16921 dxe5 28 3 10 +16921 Nxe5 7 1 9 +16921 Bg4 4 0 2 +16927 Bc5 4 0 1 +16925 Nf6 15 1 18 +16925 Bc5 15 0 18 +16925 h6 12 0 12 +16925 Be7 10 0 5 +16925 d6 7 2 4 +16925 Bb4 5 0 4 +16924 Nxd4 331 37 305 +16924 Bc5 155 15 187 +16924 Nf6 66 3 85 +16924 Qf6 41 5 41 +16924 d6 27 6 32 +16924 Nge7 22 1 34 +16924 Ne5 22 5 14 +16924 Qh4 12 0 13 +16924 d5 11 1 6 +16924 a6 5 0 8 +16924 Bb4 8 0 5 +16924 Qe7 3 0 6 +16926 dxc3 15 0 3 +16928 Nce7 8 0 1 +16928 Nb4 4 0 3 +16928 Nd4 4 0 2 +16929 fxe5 7 1 3 +16929 Nxe5 5 0 2 +16936 O-O 3 0 3 +16934 Qe7 7 0 4 +16934 Nxe4 8 0 0 +16934 O-O 5 0 1 +16935 O-O 4 0 1 +16940 Bc5 8 1 5 +16940 d6 4 0 1 +16939 d5 16 1 19 +16942 Bc5 8 0 0 +16941 Bc5 4 0 4 +16941 d6 1 0 5 +16943 exd4 1 0 6 +16945 d5 7 0 12 +16945 Qe7 5 0 3 +16945 Qf6 5 0 1 +16947 d5 5 0 3 +16946 d5 9 0 12 +16946 Nd6 5 0 1 +16949 d5 3 0 2 +16950 Nxd5 19 0 5 +16951 d5 4 0 1 +16959 Bxc3 11 0 2 +16959 O-O 7 2 4 +16962 Nxd5 2 0 5 +16961 Bxc3 5 0 8 +16960 Bxc3 6 0 9 +16958 Bxc3 25 1 16 +16958 Nc6 4 1 11 +16958 d5 4 0 3 +16958 d6 3 0 2 +16965 O-O 4 0 2 +16966 exd4 4 0 1 +16972 d6 15 2 13 +16972 Bb4 8 0 13 +16972 a6 11 1 3 +16972 Bc5 5 1 3 +16972 Nd4 3 0 2 +16972 d5 4 0 1 +16970 Bc5 34 2 23 +16970 d6 12 2 7 +16970 Nxe4 5 2 14 +16970 Bb4 13 0 7 +16970 Nd4 7 0 2 +16970 h6 2 1 6 +16970 d5 5 0 2 +16975 Nxe5 2 1 2 +16974 Bc5 3 1 4 +16973 d6 2 0 5 +16973 Bb4 2 2 2 +16971 exd4 47 3 26 +16971 d6 4 0 4 +16971 d5 4 0 2 +16971 Nxd4 3 0 2 +16977 d5 5 0 0 +16979 dxe4 2 0 4 +16980 dxe4 2 0 4 +16978 Nxd5 17 0 16 +16978 e4 3 0 2 +16981 Be7 5 1 7 +16981 Be6 3 2 5 +16981 Bg4 3 0 2 +16981 h6 2 0 3 +16982 exd4 12 0 7 +16986 Kxf7 6 0 5 +16987 Bb6 5 1 1 +16989 dxc6 8 1 5 +16993 d5 2 2 2 +16990 d5 34 3 15 +16990 Qe7 14 1 10 +16990 d6 16 0 8 +16990 Nf6 7 0 0 +16990 f5 5 0 0 +16990 Nc5 4 0 1 +16992 Nf6 3 0 2 +16991 d6 7 0 1 +16991 Nf6 2 0 4 +16997 Nxe4 30 4 29 +16997 Qxe4 16 0 8 +16996 d6 37 5 39 +16996 Nxe4 21 2 19 +16998 Nxe4 1 0 5 +16998 d6 1 0 4 +17000 Qxd5 3 0 2 +17003 Nxe4 3 2 4 +17001 Nxe4 43 6 51 +17001 Bg4 7 0 1 +17002 Kxf7 9 1 10 +17005 d6 1 1 4 +17011 Bb4 3 0 2 +17008 Be7 4 0 8 +17008 Bc5 2 1 3 +17008 h6 4 0 1 +17009 Bc5 2 1 9 +17009 d5 3 0 6 +17009 Bb4 5 0 0 +17010 d5 6 0 4 +17010 Bc5 1 0 4 +17017 dxe4 3 1 2 +17018 dxe4 2 0 4 +17016 Nxd5 9 1 10 +17019 Be7 4 1 2 +17019 h6 3 0 2 +17024 d5 3 1 1 +17023 d6 2 0 4 +17029 Bc5 6 0 3 +17029 Nxe4 4 0 1 +17027 Nc6 10 0 9 +17028 Qe7 6 0 4 +17028 Nd5 3 1 3 +17033 c6 22 2 11 +17031 d6 15 0 8 +17031 h6 6 0 10 +17031 Ne7 5 0 0 +17034 d6 2 0 8 +17032 h6 18 1 11 +17032 d6 9 0 2 +17035 exd4 2 0 3 +17038 h6 2 0 3 +17039 c6 4 0 2 +17043 c6 1 0 4 +17042 Qd6 4 0 3 +17042 Qc6 5 0 0 +17046 Bc5 16 1 7 +17046 h6 4 0 7 +17046 b5 5 0 1 +17047 h6 6 2 10 +17047 Bc5 5 0 0 +17045 exd4 30 0 11 +17045 d6 10 0 0 +17050 d6 2 2 5 +17051 exd4 7 0 4 +17052 Qg6 7 0 6 +17052 Qb6 2 0 3 +17053 c6 4 0 1 +17056 Nxe5 2 0 5 +17057 Qg6 7 0 1 +17059 dxe5 4 0 2 +17060 Bc5 17 1 25 +17060 Nc6 4 1 0 +17061 Qxd4 7 1 2 +17061 Nc6 5 1 3 +17064 cxd5 6 0 5 +17066 Nf6 2 0 3 +17069 Bf5 3 0 2 +17071 Be6 7 0 1 +17073 Qxd1 1 0 5 +17074 Nf6 2 0 4 +17075 Qe6 16 2 10 +17075 Qd6 8 0 9 +17075 Qa5 10 0 5 +17075 Qd8 11 0 1 +17075 Qc5 7 0 3 +17077 Nxc6 5 0 2 +17079 Qxd5 5 0 5 +17080 f5 5 0 5 +17078 f5 3 2 6 +17083 Nf6 3 1 2 +17082 Nxd7 6 0 5 +17082 Qxd7 4 0 3 +17086 b5 21 2 5 +17086 Bg4 7 0 8 +17086 f5 2 0 9 +17086 h6 3 0 2 +17087 b5 5 1 5 +17087 h6 2 2 7 +17087 Bg4 6 0 3 +17092 Nf6 2 0 3 +17094 c6 6 0 1 +17089 fxe6 86 7 55 +17090 Bxc4 5 0 0 +17093 Bxc4 3 1 1 +17091 Bxc4 5 0 2 +17097 Nf6 10 2 7 +17097 c6 7 0 6 +17097 Bg4 3 0 2 +17099 Nf6 9 0 9 +17101 Nf6 2 0 3 +17098 Nf6 9 1 11 +17098 h6 4 0 2 +17096 Nf6 16 0 10 +17096 h6 7 1 9 +17096 Nc6 2 0 4 +17095 exd4 32 0 34 +17095 Nc6 5 0 3 +17095 Bg4 4 0 2 +17095 Nd7 3 0 2 +17100 Nf6 9 0 7 +17103 c6 22 0 8 +17103 Nf6 13 1 9 +17103 Bxf3 10 0 9 +17103 Nc6 7 0 3 +17103 Qf6 5 0 2 +17106 Nf6 8 2 6 +17106 Bxf3 7 0 5 +17106 Nc6 4 0 6 +17106 Qf6 6 0 3 +17107 Bxf3 6 0 5 +17107 Nf6 6 0 5 +17107 Nc6 5 1 4 +17107 Qf6 5 0 0 +17107 h6 4 0 1 +17105 Nc6 10 1 5 +17105 h6 8 0 3 +17105 Bxf3 6 0 5 +17105 Nf6 5 0 4 +17105 Qf6 3 0 3 +17104 Bxf3 20 1 10 +17104 exd4 17 1 11 +17104 Nc6 6 0 3 +17104 Qf6 6 0 1 +17104 Nf6 3 1 1 +17102 Bxf3 87 8 53 +17102 Bh5 53 3 55 +17112 Bg4 12 0 1 +17112 Be7 2 0 9 +17112 Nf6 7 0 2 +17112 Be6 2 1 6 +17113 Nf6 6 0 4 +17113 Be6 5 0 4 +17113 Bg4 5 0 2 +17113 Be7 3 0 2 +17114 Bg4 4 0 4 +17114 Nf6 3 0 4 +17114 Be6 4 0 3 +17114 Be7 4 0 1 +17111 Na5 6 1 15 +17111 Bg4 12 0 5 +17111 Be6 6 0 7 +17111 Be7 5 0 3 +17111 Nf6 4 0 1 +17111 h6 2 0 3 +17110 exd4 22 2 18 +17110 Bg4 15 0 6 +17110 h6 3 2 6 +17110 Be7 2 0 3 +17120 Be7 6 0 12 +17120 c6 10 0 4 +17120 Bg4 3 0 5 +17120 Be6 6 0 1 +17120 Nc6 5 0 0 +17119 Be6 14 3 20 +17119 d5 23 0 2 +17119 h6 5 0 0 +17121 Be7 7 0 5 +17121 c6 5 0 3 +17121 h6 3 0 3 +17121 Be6 5 0 0 +17122 exd4 2 0 7 +17128 c6 2 0 6 +17127 Bg4 1 1 4 +17127 Be6 4 0 1 +17133 c6 10 0 1 +17135 Be7 2 0 4 +17132 h6 5 0 6 +17138 b5 5 0 0 +17137 b5 5 1 0 +17142 Nc6 4 0 12 +17141 Nc6 1 0 7 +17141 Be7 3 0 3 +17143 Nc6 2 0 7 +17143 Be7 4 0 1 +17145 cxd4 4 0 2 +17146 Be7 2 0 5 +17146 Nf6 4 1 2 +17146 b5 5 0 0 +17147 d5 6 0 4 +17147 h6 5 0 2 +17147 b5 5 0 1 +17148 b5 3 0 3 +17148 d5 4 0 2 +17152 f4 9 0 5 +17152 h6 7 0 2 +17152 Nf6 5 0 2 +17151 Bxf5 24 1 19 +17161 Bg7 6 0 0 +17163 c6 26 1 24 +17163 Nf6 21 3 21 +17163 a6 9 1 5 +17163 Nc6 6 0 4 +17163 f5 0 1 5 +17163 Bg4 3 0 2 +17164 Nf6 28 2 18 +17164 Bg4 7 1 1 +17164 Nc6 7 0 1 +17164 c6 3 0 2 +17164 a6 3 0 2 +17168 Nf6 3 1 3 +17166 Nf6 21 1 18 +17166 a6 5 2 4 +17166 Nc6 2 1 3 +17165 Nf6 22 0 21 +17165 Nc6 6 0 4 +17165 Be7 3 0 5 +17165 Bg4 4 0 2 +17165 a6 4 1 1 +17162 exd4 53 4 54 +17162 Nc6 10 0 8 +17162 Nd7 9 0 8 +17162 Bg4 9 1 5 +17162 Qe7 5 0 6 +17162 Qf6 4 0 3 +17162 Nf6 5 0 0 +17162 f6 3 0 2 +17167 Nf6 21 0 12 +17167 c6 4 1 0 +17167 Nc6 2 0 3 +17172 exd4 7 0 7 +17172 f6 3 0 3 +17175 Nf6 6 0 7 +17174 exd4 10 0 3 +17178 Bxf3 5 0 3 +17178 Nf6 4 0 3 +17178 c6 4 1 1 +17178 Nc6 2 0 3 +17178 h6 4 1 0 +17176 Bxf3 13 2 18 +17176 Nf6 9 1 4 +17176 Nc6 6 1 4 +17177 Bxf3 25 1 6 +17177 Bh5 11 2 8 +17181 Bd7 9 0 17 +17182 h6 6 0 1 +17182 Be6 3 0 4 +17182 Be7 2 0 3 +17183 exd4 7 0 2 +17183 Bg4 3 0 2 +17189 c6 1 1 4 +17185 Be7 11 0 8 +17185 h6 10 0 9 +17185 Be6 4 0 1 +17185 c6 2 1 2 +17187 Be7 2 0 5 +17187 Nc6 5 0 1 +17186 exd4 18 4 12 +17186 Bg4 7 0 0 +17195 Bd7 6 2 3 +17194 Nc6 3 0 4 +17198 h6 9 0 3 +17198 Qf6 4 1 2 +17199 exd4 15 1 5 +17199 Nd7 5 0 2 +17199 Qe7 4 0 1 +17204 fxe4 6 0 3 +17203 Bxf5 4 1 7 +17205 Nf6 5 0 4 +17206 exd4 2 1 3 +17209 exd4 7 0 7 +17211 Bxf3 5 0 3 +17211 Nf6 2 0 3 +17210 exd4 7 0 3 +17210 Bxf3 4 0 2 +17210 f6 4 1 1 +17213 exd4 9 0 10 +17215 Ngf6 4 0 3 +17217 exd4 4 0 2 +17220 fxe4 2 0 3 +17224 Nf6 6 0 3 +17224 Nc6 7 0 2 +17224 h6 8 0 0 +17224 Bxf3 4 1 0 +17231 dxe5 11 1 6 +17237 Bxf3 3 0 3 +17234 Bxf3 16 0 5 +17234 exd4 5 0 6 +17234 Nc6 4 0 2 +17235 Nf6 7 0 3 +17235 Bxf3 3 1 3 +17235 c6 2 0 4 +17233 Bxf3 97 2 34 +17233 dxe5 20 2 7 +17233 Nc6 4 1 2 +17236 Bxf3 5 0 2 +17236 Bh5 3 0 3 +17240 Bd7 9 0 8 +17240 a6 5 0 3 +17238 Nce7 20 2 12 +17238 Nd4 6 1 5 +17238 Nb8 7 1 4 +17238 Nb4 8 0 1 +17239 dxe5 15 1 8 +17239 Nxe5 10 1 8 +17239 Bg4 6 0 1 +17243 h6 4 0 4 +17243 Be7 4 0 1 +17242 dxe5 21 2 11 +17247 exd4 6 0 0 +17246 Nxe4 10 1 6 +17246 dxe5 9 0 4 +17249 dxe5 7 1 7 +17252 dxe5 7 0 3 +17253 dxe5 5 0 0 +17257 h6 5 0 5 +17257 Nf6 3 0 5 +17257 c5 3 0 3 +17257 Bg4 3 0 2 +17255 Nf6 140 14 132 +17255 c5 73 3 48 +17255 Be7 40 5 37 +17255 Bd7 30 3 18 +17255 Nc6 20 4 22 +17255 Ne7 14 1 19 +17255 g6 18 1 12 +17255 h6 12 1 12 +17255 Qf6 14 0 5 +17255 Qe7 6 1 2 +17255 a6 6 0 3 +17255 d5 5 0 4 +17255 c6 4 0 4 +17255 Be6 5 0 3 +17255 Nd7 4 0 2 +17256 Nc6 22 5 29 +17256 Nf6 15 3 8 +17256 c5 12 0 7 +17256 Qf6 5 0 2 +17256 Bd7 1 0 5 +17256 Bg4 4 0 2 +17256 Ne7 1 0 4 +17258 dxc3 8 1 5 +17259 fxe4 7 0 6 +17260 e4 5 0 1 +17263 c6 4 0 1 +17262 fxe5 22 2 8 +17262 dxe5 7 0 2 +17270 Nf6 4 0 4 +17270 h6 2 1 2 +17273 Bd7 5 0 6 +17272 Be7 2 0 3 +17279 Nxe4 3 0 3 +17277 Be7 10 0 6 +17277 Nc6 8 2 6 +17277 c6 4 1 6 +17277 a6 6 0 1 +17277 Be6 3 0 3 +17278 Nc6 11 2 11 +17278 Be7 5 0 8 +17278 h6 3 2 5 +17278 d5 4 0 2 +17282 fxe4 2 0 3 +17282 f4 2 1 2 +17283 Bxf5 8 0 4 +17284 a6 3 0 2 +17288 d5 2 1 2 +17289 dxc6 14 0 6 +17291 d5 3 1 1 +17290 d6 6 0 3 +17290 Bc5 3 0 4 +17292 d6 1 2 4 +17293 g6 7 0 0 +17299 Nf6 0 0 6 +17301 d5 1 0 5 +17300 Bc5 7 0 16 +17303 Nf6 13 0 12 +17303 Qf6 1 0 4 +17306 Nf6 2 1 3 +17305 Nf6 2 0 10 +17304 Nf6 6 0 7 +17317 Ke7 4 0 1 +17318 g6 26 0 4 +17318 Ke7 15 0 2 +17320 dxe4 3 0 3 +17321 c5 4 1 0 +17322 fxe5 7 0 1 +17322 dxe5 4 0 1 +17323 c5 5 0 0 +17325 Bc5 7 0 5 +17325 d6 3 0 4 +17326 Nd4 4 0 2 +17331 Bc5 2 0 3 +17333 Bc5 2 0 6 +17339 d6 3 0 3 +17339 d5 0 0 5 +17340 Nxd5 3 0 4 +17347 Nd4 3 1 11 +17347 d6 1 0 4 +17348 d6 4 1 3 +17348 Nd4 2 1 2 +17349 bxc6 2 1 5 +17350 Nf6 4 0 2 +17350 Nd4 3 1 1 +17353 g6 7 0 3 +17354 Nf6 9 0 11 +17355 Nf6 3 0 7 +17357 Nf6 3 1 2 +17356 Nf6 0 1 5 +17359 Bc5 3 0 2 +17360 Bc5 2 0 3 +17358 Bc5 3 0 5 +17363 Nf6 5 1 4 +17362 Nf6 84 6 139 +17362 Qf6 11 2 20 +17362 Nh6 4 2 4 +17362 Nd4 9 0 1 +17362 Qe7 2 0 7 +17362 f6 1 0 4 +17364 Nd4 3 0 2 +17367 Bc5 9 1 10 +17374 O-O 1 0 4 +17371 d6 6 0 3 +17371 O-O 4 1 4 +17371 Nc6 2 0 4 +17372 Nc6 6 0 3 +17372 O-O 2 0 4 +17372 d6 4 1 1 +17373 Nc6 1 1 3 +17370 Nxe4 5 0 3 +17370 O-O 3 0 2 +17369 Nc6 11 0 10 +17369 O-O 8 0 4 +17369 d6 6 0 4 +17375 Qxe4 8 1 6 +17375 Nc6 4 0 2 +17376 Bxe7 13 0 10 +17378 d6 3 0 5 +17380 Qxf3 3 0 5 +17381 g6 4 1 2 +17386 Qxe5 7 1 5 +17388 Qe7 4 1 1 +17388 g6 4 0 2 +17389 g6 4 1 7 +17389 Qf6 4 0 1 +17390 Bg4 4 0 5 +17390 g6 4 0 2 +17391 Nf6 6 0 4 +17393 Nf6 1 0 6 +17395 c6 3 0 2 +17394 g6 2 1 3 +17396 Nf6 24 1 53 +17396 Qf6 10 1 7 +17396 Be6 4 1 2 +17396 f5 3 0 2 +17396 Nh6 5 0 0 +17399 Bf6 5 0 0 +17401 Qxe4 14 0 3 +17401 Nf6 11 0 1 +17402 Bc5 1 1 3 +17410 Bb6 3 0 5 +17410 Bb4 4 1 2 +17411 Bb4 3 0 3 +17411 d6 2 0 3 +17413 dxe4 3 0 2 +17414 Nxe4 2 0 3 +17416 d6 12 0 12 +17416 Nf6 4 0 2 +17417 Bc5 3 0 2 +17424 Be6 6 0 0 +17435 d5 0 0 5 +17439 d6 3 0 4 +17440 d6 3 0 4 +17441 d6 1 0 4 +17444 Bg4 7 0 2 +17448 Bb4 6 0 0 +17451 d6 1 1 3 +17453 Qxf6 1 0 4 +17455 Bxe3 5 0 1 +17457 d6 2 0 4 +17460 Be7 2 0 3 +17458 Bb4 3 0 5 +17467 Qxd1 1 0 4 +17468 Qd8 7 0 0 +17468 Bb4 3 1 2 +17468 Qe6 3 0 2 +17473 Be7 1 0 8 +17474 Nc6 2 0 3 +17478 Bc5 3 0 2 +17477 dxc3 8 0 1 +17481 Na6 6 0 1 +17482 d6 5 0 4 +17483 d6 4 0 1 +17485 d6 4 0 8 +17485 Ng6 2 0 3 +17484 Ng6 4 0 6 +17484 d6 6 0 4 +17491 Bc5 5 1 3 +17490 Nxf3 4 0 4 +17489 Bc5 14 0 2 +17489 Nb5 6 0 4 +17489 c5 5 0 0 +17493 Nxf3 4 0 4 +17492 Nc6 5 0 8 +17497 Nc5 4 0 1 +17499 Nd4 4 0 1 +17500 Bb4 4 1 1 +17501 exd4 5 0 1 +17502 Nc6 3 0 2 +17503 Kxd8 10 2 2 +17509 Bxd6 6 0 5 +17510 Kxd8 52 4 18 +17512 Nf6 10 1 7 +17512 Bc5 9 2 5 +17512 h6 9 0 3 +17512 Be7 4 0 4 +17512 d6 4 0 2 +17512 Bb4 5 0 1 +17513 Nxd4 6 0 6 +17514 dxc3 1 0 4 +17515 Nc6 9 0 5 +17515 f6 5 1 0 +17515 h6 3 0 2 +17515 d6 2 0 3 +17515 Be7 5 0 0 +17515 Nf6 4 0 1 +17516 dxc3 4 0 2 +17521 Nf6 11 1 15 +17521 d6 3 0 10 +17521 Bc5 2 0 11 +17524 Bb4 0 0 12 +17520 Nf6 13 2 31 +17520 d6 4 0 12 +17518 Nf6 38 5 60 +17518 Bc5 20 3 41 +17518 d6 12 2 36 +17518 Bb4 4 2 6 +17518 Qe7 2 0 5 +17518 Qh4 1 0 4 +17525 Nf6 3 0 3 +17523 Nf6 5 0 6 +17523 d6 3 0 6 +17523 Bc5 1 0 6 +17522 Nf6 7 2 24 +17522 d6 0 0 5 +17519 Nf6 35 1 38 +17519 d6 26 0 25 +17519 b6 14 1 27 +17519 Be7 3 1 10 +17519 Qe7 5 0 7 +17519 Bb4 4 0 7 +17519 Bd6 4 0 5 +17519 g6 3 0 4 +17519 Qf6 1 0 4 +17526 Be7 3 0 4 +17530 Ne7 4 0 2 +17530 Qe7 5 0 1 +17534 Nc6 5 0 1 +17533 Nc6 3 0 4 +17537 dxc3 8 0 3 +17538 dxc3 5 0 2 +17538 d6 1 0 4 +17536 Nf6 4 0 2 +17536 d5 4 0 2 +17543 Nc6 6 0 8 +17545 dxc3 2 0 3 +17544 Qxd5 3 0 7 +17547 Nc6 5 0 0 +17548 cxb2 165 5 86 +17548 d6 31 1 27 +17548 Nf6 36 2 14 +17548 Nc6 28 2 18 +17548 Bb4 25 1 14 +17548 Qf6 17 0 9 +17548 Qe7 16 1 3 +17548 Bc5 13 0 5 +17548 g6 6 0 4 +17548 c2 6 0 3 +17548 Be7 4 0 1 +17548 c6 5 0 0 +17549 Bb4 7 2 0 +17550 Bc5 0 0 5 +17551 Ke7 8 0 0 +17551 g6 4 0 2 +17553 d6 2 0 4 +17554 d6 2 1 2 +17556 Nf6 5 0 5 +17555 Bg4 8 1 0 +17555 Nf6 5 0 4 +17555 Nc6 2 0 3 +17558 exd4 4 0 2 +17557 dxe5 3 0 6 +17559 Bb6 3 0 2 +17562 d6 3 0 3 +17564 Nge7 3 0 8 +17564 h6 4 0 1 +17565 Nxe5 3 1 2 +17568 Qxd5 12 0 14 +17570 Bd7 5 0 4 +17569 Bg4 34 0 14 +17569 Be7 11 0 7 +17569 h6 10 1 5 +17569 Be6 10 0 3 +17569 Nf6 10 0 1 +17569 exf4 3 0 2 +17571 Bg4 5 1 1 +17574 Bg4 3 0 2 +17573 Nf6 6 0 2 +17572 Nxe5 1 0 7 +17575 h6 19 0 7 +17575 Bc5 13 0 7 +17575 Nf6 11 0 4 +17575 d6 9 0 3 +17575 Be7 3 0 4 +17575 g5 2 0 3 +17577 d6 4 0 1 +17576 Nf6 9 0 6 +17576 d5 9 0 5 +17576 g5 5 0 5 +17576 d6 8 0 1 +17576 Bb4 5 0 1 +17576 Be7 2 0 3 +17580 fxe4 1 0 4 +17581 e4 1 0 4 +17584 Nxf3 5 0 2 +17583 Ng6 4 0 5 +17583 Nc6 6 0 1 +17589 exf4 7 0 6 +17593 exf4 8 0 3 +17592 exf4 6 0 2 +17594 Qxe5 5 1 5 +17597 Bd6 4 0 4 +17599 Qe6 2 0 4 +17602 Nf6 1 2 2 +17600 Nf6 14 1 11 +17601 Nf6 5 0 2 +17601 Qxd5 3 0 2 +17603 Nf6 10 0 9 +17603 Qxd5 9 1 7 +17603 Bg4 3 0 3 +17604 Qxe4 1 0 5 +17605 Nf6 14 1 3 +17605 Bxf3 6 1 8 +17605 Nc6 5 1 2 +17605 h6 4 0 2 +17605 exf4 2 0 4 +17606 Bxf3 4 0 1 +17607 dxe5 4 0 2 +17608 Bg4 9 0 9 +17608 h6 9 1 5 +17608 Nf6 10 0 4 +17608 Be7 7 1 5 +17608 Be6 2 0 5 +17614 Nc6 4 0 2 +17615 Nf6 8 0 2 +17615 h6 4 0 4 +17615 Bg4 3 0 2 +17615 Nc6 2 0 3 +17616 Bg4 6 0 4 +17616 g5 6 0 0 +17616 Nf6 2 0 3 +17618 Bg4 4 0 1 +17620 Nc6 6 0 4 +17621 Bh4 2 0 4 +17623 Bc5 1 0 6 +17626 d6 4 1 7 +17626 Nf6 7 0 3 +17625 Bb6 45 1 15 +17625 Bb4 12 0 3 +17627 Nf6 6 0 2 +17628 Bc5 5 0 0 +17630 Bh4 62 2 36 +17630 d6 5 0 2 +17633 Bh4 4 1 3 +17632 Bh4 10 0 13 +17631 d6 9 0 5 +17631 Nf6 2 0 5 +17634 h6 28 0 10 +17634 d6 19 0 10 +17634 Nf6 24 0 5 +17634 Bc5 15 0 3 +17634 Be7 9 0 2 +17634 a6 1 1 3 +17635 d6 18 0 4 +17635 d5 13 0 2 +17635 Bb4 6 0 3 +17635 Nf6 2 0 5 +17635 g5 2 0 4 +17637 Ng6 3 0 2 +17638 Ng6 4 0 1 +17641 Nxe4 8 0 4 +17640 Bb4 9 0 2 +17640 d6 8 0 2 +17640 Bc5 5 1 4 +17640 Nc6 2 0 4 +17639 Ng4 8 1 8 +17639 Qe7 9 0 5 +17639 Nd5 10 1 1 +17639 Ne4 7 0 1 +17644 Qxe4 3 0 2 +17643 Nf6 6 0 5 +17646 Bb7 3 0 3 +17650 dxe4 6 0 3 +17649 Bg4 13 0 5 +17649 Nc6 4 0 2 +17648 Qxd5 30 0 13 +17648 Nf6 8 1 12 +17651 Bg4 32 2 21 +17651 h6 23 2 11 +17651 Nc6 18 1 8 +17651 Be6 5 2 13 +17651 Nf6 16 0 3 +17651 Be7 14 0 5 +17651 g5 6 0 6 +17653 Nc6 3 0 2 +17652 Bg4 22 0 8 +17652 Nc6 8 0 8 +17652 g5 7 0 5 +17652 Nf6 4 0 8 +17655 g5 6 0 1 +17655 Ne7 3 0 2 +17655 d6 3 0 2 +17656 g5 5 0 3 +17657 g4 25 1 17 +17657 d6 22 2 15 +17657 Bg7 16 0 20 +17657 Nc6 10 0 4 +17657 h6 7 0 1 +17657 Qe7 4 0 3 +17657 f6 5 1 1 +17659 g4 4 0 9 +17659 Bg7 5 1 6 +17659 d6 2 1 2 +17660 Nf6 4 0 2 +17660 Bg7 3 0 3 +17660 h6 4 0 2 +17658 g4 15 0 19 +17658 f6 5 0 2 +17661 d6 10 1 9 +17661 g5 8 0 3 +17661 Nf6 5 0 0 +17662 g5 1 1 7 +17664 Nc6 2 0 3 +17668 Nc6 5 0 0 +17671 exd5 1 0 4 +17675 cxd5 3 0 5 +17676 Nf6 29 1 57 +17676 c5 11 2 16 +17676 c6 7 0 11 +17676 Be6 4 0 3 +17678 c6 9 2 12 +17678 Bd7 2 1 6 +17679 Nf6 1 0 4 +17677 Be7 11 0 17 +17677 Be6 6 0 7 +17681 Bb7 3 1 1 +17682 cxd5 5 1 1 +17683 Be7 1 0 4 +17685 cxd4 2 1 4 +17687 c5 2 0 5 +17690 Nf6 4 0 1 +17692 Nf6 7 0 11 +17693 Be7 1 0 4 +17691 Nf6 24 2 32 +17691 Bb4 6 1 4 +17691 c5 5 1 4 +17691 c6 3 1 5 +17691 Be6 2 0 5 +17694 Bg7 1 0 5 +17695 Nf6 4 0 5 +17699 dxc6 5 0 0 +17700 Nd5 3 0 3 +17705 Be7 7 0 4 +17706 Be7 3 0 4 +17706 f6 2 0 4 +17707 Be7 2 0 5 +17708 Be7 4 0 1 +17709 Be7 1 0 4 +17710 Bb4 3 0 3 +17714 Nb6 3 0 3 +17713 Nc6 2 0 3 +17716 Nh6 4 0 1 +17717 d5 10 0 2 +17719 Bg7 8 0 4 +17722 Bb4 5 0 8 +17726 Nf6 5 0 5 +17726 d5 2 0 4 +17725 Bb4 13 0 18 +17725 Nf6 5 1 0 +17725 Ne7 2 0 3 +17734 b5 3 0 3 +17736 exd5 11 0 10 +17737 cxd4 5 0 5 +17740 cxd4 3 0 5 +17745 exd5 4 0 1 +17746 Bxc5 3 0 3 +17748 Nc6 10 1 25 +17748 Bc5 4 0 8 +17748 a6 2 0 3 +17749 Nc6 3 0 4 +17750 exd5 2 0 4 +17752 cxd5 7 1 10 +17752 exd5 3 0 3 +17753 cxd5 6 1 7 +17755 c5 17 0 9 +17756 cxd5 8 1 12 +17756 exd5 3 0 6 +17759 Nf6 3 0 3 +17761 Nfd7 2 0 5 +17760 exd5 4 1 3 +17763 c5 1 0 6 +17762 c5 14 1 23 +17762 e5 5 0 2 +17764 Nf6 14 0 9 +17765 Kxf7 3 0 3 +17766 exd3 4 0 1 +17768 Qxd1 5 2 13 +17772 Bb6 4 0 1 +17773 f6 5 2 4 +17773 Nge7 3 0 7 +17774 Ng6 5 0 5 +17775 c5 2 0 7 +17778 Nc6 13 2 11 +17778 Bd7 6 0 7 +17780 Nc6 2 0 3 +17779 cxb4 4 0 4 +17777 Nc6 8 1 33 +17777 Qb6 3 0 9 +17776 Nc6 24 4 47 +17776 cxd4 12 0 24 +17776 Qb6 6 1 20 +17785 c5 5 0 10 +17786 Qd8 22 0 13 +17786 Qd7 5 0 1 +17786 Qa5 2 0 3 +17787 Qd8 4 0 7 +17787 Nc6 5 0 1 +17796 c6 7 1 7 +17794 Nf6 9 0 9 +17791 Nf6 19 0 31 +17791 d4 3 0 5 +17791 c6 2 1 3 +17792 Be7 8 0 16 +17792 Qe7 2 1 5 +17797 Nf6 3 1 4 +17793 Nf6 3 0 5 +17793 d4 3 0 4 +17793 c6 3 0 2 +17793 dxc4 2 0 3 +17795 Nf6 2 1 7 +17790 Nf6 166 26 259 +17790 Bd6 27 2 66 +17790 c5 26 1 23 +17790 Be6 16 2 22 +17790 Bg4 12 2 16 +17790 Nc6 9 4 9 +17790 c6 10 1 8 +17790 h6 3 0 10 +17790 Qe7 8 0 4 +17790 Be7 7 0 3 +17790 Bf5 4 0 2 +17800 Bb7 5 0 1 +17801 Nc6 3 0 6 +17804 Nc6 4 0 3 +17805 Nc6 1 0 4 +17807 b6 4 0 1 +17810 Be7 4 0 2 +17809 Be7 7 0 3 +17819 Qd8 2 0 5 +17821 f5 2 0 7 +17823 Nf6 4 0 8 +17826 Qxd5 4 0 3 +17827 dxc4 6 0 3 +17827 Nf6 5 0 2 +17828 Bg7 4 0 1 +17829 e5 4 0 2 +17831 Qxd1 3 1 7 +17837 Nf6 1 0 6 +17836 Nf6 1 0 8 +17838 Be7 2 0 4 +17835 Nf6 3 0 7 +17841 Nce7 4 0 1 +17843 Be7 3 0 10 +17846 Be7 0 0 5 +17847 Be7 2 1 2 +17844 Be7 2 0 6 +17848 Be7 6 0 5 +17850 Bg7 6 0 6 +17853 Ng8 4 0 2 +17854 Bb4 12 0 3 +17854 Nb6 7 0 3 +17857 d5 2 0 5 +17858 d5 4 0 2 +17862 Bg7 10 0 1 +17864 Qg4 2 1 2 +17865 Nf6 4 0 2 +17867 Bb4 2 1 4 +17866 Bb4 4 1 3 +17868 Bb4 8 0 5 +17868 Nf6 3 0 3 +17870 Bb4 8 0 8 +17871 exd5 2 0 4 +17877 Nc6 4 1 1 +17878 Nc6 22 2 10 +17878 Bc5 6 0 12 +17878 Nf6 3 0 3 +17880 Nc6 2 0 3 +17879 exd5 5 0 5 +17882 d5 5 1 5 +17882 Bb4 3 0 4 +17882 a6 4 0 1 +17883 Qxd5 4 0 1 +17885 exd5 0 0 5 +17885 e5 3 0 2 +17887 d6 4 0 3 +17889 d6 14 1 9 +17889 Nf6 3 0 7 +17891 Qb6 1 0 4 +17893 Nc6 0 0 5 +17895 cxd5 3 1 1 +17897 c5 3 0 6 +17897 a6 1 0 4 +17898 cxd5 6 1 2 +17899 b5 3 0 2 +17901 dxe4 2 1 2 +17900 cxd5 17 0 5 +17903 cxd5 4 0 1 +17905 c5 2 0 4 +17907 c5 7 0 4 +17908 Nfd7 6 0 2 +17911 Bxc3 4 0 7 +17912 c5 3 0 4 +17914 Bxc3 3 0 5 +17910 c5 17 0 16 +17910 Ne7 3 0 2 +17913 exd5 2 2 2 +17913 Qxd5 2 0 3 +17915 Be7 22 0 16 +17915 dxe4 3 0 3 +17915 Bb4 2 0 4 +17915 h6 2 0 3 +17916 Nfd7 22 2 13 +17918 exd5 5 0 3 +17921 Bxc5 3 0 3 +17919 exd5 12 1 10 +17923 Nf6 19 2 21 +17923 Nd7 6 1 5 +17923 b6 4 1 4 +17923 Nc6 3 1 2 +17923 Be7 4 0 1 +17923 f5 4 0 1 +17925 Nfd7 17 1 14 +17927 Nc6 4 1 2 +17929 exd5 3 1 1 +17930 Nf6 8 0 4 +17930 Nd7 3 1 2 +17934 Nge7 5 0 5 +17934 f6 3 0 5 +17934 Be7 6 0 0 +17935 f6 4 0 2 +17938 Ng6 9 0 4 +17939 Ng6 5 0 4 +17941 c5 1 0 5 +17948 Bd7 2 1 10 +17948 Nc6 1 0 7 +17945 Nc6 7 2 12 +17945 Qb6 5 0 10 +17945 cxd4 2 0 13 +17944 Nc6 41 3 52 +17944 cxd4 15 1 19 +17944 Qb6 10 0 16 +17943 Nc6 157 10 200 +17943 Qb6 46 5 58 +17943 cxd4 18 2 15 +17943 Bd7 5 0 7 +17943 Qa5 3 0 8 +17943 c4 5 0 5 +17943 a6 2 0 3 +17947 cxd4 2 0 11 +17947 Nc6 1 0 5 +17947 Qb6 1 0 4 +17946 Bxc5 18 1 20 +17946 Nc6 3 0 3 +17949 Nc6 4 0 4 +17949 cxd4 3 0 4 +17954 c5 8 1 6 +17954 fxe5 4 0 3 +17955 Nxf6 5 0 4 +17953 c5 4 0 8 +17953 fxe5 7 0 3 +17958 Qd8 12 3 11 +17958 Bb4 6 0 3 +17958 Qa5 3 0 3 +17959 Qd8 7 0 3 +17959 Nc6 4 0 2 +17959 Nf6 1 0 4 +17960 Qd8 4 0 4 +17960 Qe4 4 0 2 +17966 c6 3 0 10 +17962 Nf6 64 7 48 +17962 Bd6 12 1 16 +17962 Nc6 5 1 5 +17962 Be6 5 1 2 +17962 c5 4 0 3 +17962 c6 2 0 3 +17969 Nf6 1 0 5 +17967 Nf6 3 0 3 +17967 Bd6 2 0 3 +17963 Nf6 22 2 42 +17963 Bb4 7 0 10 +17963 c6 2 0 8 +17963 c5 6 0 1 +17963 Be6 6 0 0 +17970 Nf6 2 1 2 +17961 Nf6 72 8 62 +17961 Bd6 12 1 13 +17961 Be6 6 1 12 +17961 Bg4 9 1 7 +17961 c6 6 0 5 +17961 c5 7 0 4 +17961 Nc6 5 1 4 +17961 h6 5 0 3 +17961 Bf5 3 0 5 +17965 Be7 2 1 7 +17965 Be6 3 0 5 +17965 Qe7 1 1 4 +17968 Nf6 3 0 4 +17964 Nf6 21 1 24 +17964 Be6 3 0 12 +17964 dxc4 5 0 4 +17964 c6 5 0 3 +17973 Nc6 3 0 2 +17985 Nc6 7 0 3 +17986 b6 3 0 2 +17987 Be7 3 0 2 +17989 Nd7 3 0 4 +17989 a6 3 0 2 +17990 Bg7 2 1 3 +17991 Qd8 6 0 2 +18002 Qb6 2 0 3 +18001 Nc6 5 0 7 +18001 cxd4 2 0 4 +18000 Nc6 11 0 11 +18000 Qb6 3 0 3 +18003 Bxc5 6 1 4 +18010 Bd6 5 0 1 +18011 Qxd1 3 4 9 +18013 Nf6 3 1 6 +18015 Nc6 3 0 2 +18018 Nf6 1 0 4 +18019 Bg7 8 1 7 +18020 Bg7 2 0 3 +18021 Bg7 7 0 3 +18022 h5 4 0 4 +18022 d5 2 0 3 +18024 Bb4 1 0 5 +18027 Nc6 3 0 4 +18028 c5 2 0 5 +18033 Ng6 6 0 0 +18034 c5 0 0 5 +18035 Nc6 31 2 39 +18035 Qb6 2 0 11 +18035 Ne7 1 0 5 +18036 Nc6 7 1 12 +18038 c5 1 0 4 +18039 c5 2 1 6 +18039 fxe5 3 0 2 +18041 Qd8 4 0 5 +18043 Nf6 14 0 26 +18043 Bd6 3 1 7 +18043 c5 4 0 7 +18043 Bg4 2 0 5 +18043 Nc6 3 0 2 +18044 Nf6 7 0 12 +18044 c5 5 0 1 +18044 Bd6 3 0 2 +18048 Bg7 1 1 3 +18049 Nf6 1 0 5 +18051 Bxf5 2 0 4 +18053 Bxg4 3 0 6 +18054 dxc4 5 0 3 +18055 Bxg4 1 0 4 +18057 Kxf7 1 0 4 +18058 h5 6 0 1 +18063 dxe4 6 0 2 +18059 dxe4 24 0 11 +18060 dxe4 18 0 15 +18061 dxe4 7 0 6 +18062 Bxg4 1 0 8 +18064 e6 4 0 2 +18065 e6 2 0 7 +18067 Ne7 6 1 2 +18068 c6 5 1 4 +18071 Ne7 3 0 2 +18080 e6 6 0 10 +18087 Ne7 1 0 4 +18086 Ne7 3 0 2 +18085 Ne7 13 0 4 +18091 Nd7 4 0 4 +18093 Ne7 5 0 3 +18099 Bb7 5 0 0 +18098 Bb7 5 1 2 +18100 Bb7 2 0 3 +18097 Bb7 5 0 5 +18103 Nf6 4 0 1 +18102 Nc6 4 0 3 +18109 Ne7 5 1 2 +18110 Ne7 4 0 3 +18111 Ne7 5 0 1 +18108 Ne7 6 0 4 +18115 Bb7 2 0 3 +18116 cxd6 3 0 2 +18117 c6 0 1 4 +18119 Bb7 4 1 3 +18122 Ne7 4 0 1 +18123 Nf6 4 0 2 +18130 d6 4 0 1 +18132 Nf6 4 0 5 +18132 Nd7 8 0 0 +18132 e6 6 0 2 +18133 Nd7 7 0 2 +18133 e6 2 2 2 +18138 Ne7 10 0 4 +18139 Ne7 4 0 2 +18143 Nf6 3 0 3 +18144 Nf6 4 0 2 +18147 Nd7 2 0 7 +18147 e6 5 0 2 +18148 Ne7 4 0 3 +18148 d6 1 1 3 +18149 cxd4 1 0 5 +18151 dxe5 4 0 3 +18152 Qxd6 1 0 4 +18150 dxe5 8 0 6 +18154 Ne7 5 0 5 +18157 Bb7 2 0 3 +18158 Nf6 6 0 4 +18158 Nd7 2 0 6 +18158 e6 4 0 2 +18159 Ne7 4 0 1 +18160 dxe5 2 0 5 +18164 Bb7 3 0 3 +18163 Bb7 3 0 4 +18165 Bg4 5 0 1 +18167 Ne7 7 0 2 +18169 dxe5 2 0 3 +18170 e6 3 0 2 +18171 Bg7 2 0 4 +18174 Nf6 4 1 0 +18187 Nc6 1 1 3 +18188 g5 4 1 12 +18188 Bg4 5 0 4 +18194 Nc6 5 0 1 +18195 Bb7 2 0 4 +18197 Nc6 2 0 3 +18199 Nf6 6 0 1 +18200 g6 0 0 5 +18202 Nc6 4 0 5 +18204 Bd6 2 0 3 +18215 e5 2 0 4 +18217 Nd7 3 0 2 +18223 Nc6 5 0 2 +18227 Nc6 2 0 4 +18230 Nxd4 7 0 1 +18231 Nf6 2 0 3 +18232 c5 0 1 4 +18238 Qh5 7 1 3 +18238 Qe7 3 0 5 +18240 Qxe5 8 0 7 +18241 Qxe5 4 0 2 +18242 Qxe5 2 0 3 +18244 Bc4 1 0 4 +18246 Bc4 8 0 0 +18245 Bc4 8 0 2 +18248 Qxd4 13 1 2 +18249 Bf4 3 0 4 +18252 d3 6 0 7 +18252 d4 4 0 2 +18252 c4 2 0 4 +18258 d3 5 0 2 +18259 c3 3 0 3 +18263 Nc3 5 0 1 +18265 Nc3 3 1 5 +18266 O-O 4 1 1 +18267 d3 3 0 2 +18269 O-O 5 0 5 +18270 d3 2 0 3 +18271 d3 3 0 2 +18274 d4 3 0 3 +18274 d3 0 0 6 +18273 d3 5 0 16 +18277 O-O 4 0 2 +18275 Nxd4 3 1 4 +18276 O-O 4 1 2 +18281 d4 2 0 4 +18289 d4 0 1 5 +18288 d4 4 0 11 +18288 c4 3 0 4 +18287 d4 11 3 11 +18290 d4 3 1 5 +18293 e3 2 1 6 +18297 Nf3 5 0 0 +18300 Ng3 5 0 3 +18303 Bg2 2 1 2 +18307 Qxd4 3 1 3 +18308 f4 3 1 2 +18309 Bxc6 6 0 5 +18310 Bxc6 1 0 4 +18311 exf4 3 0 3 +18314 c3 1 0 4 +18317 Bxe5 2 0 4 +18316 Bxb5 7 0 3 +18318 c4 2 0 3 +18319 h3 4 0 1 +18321 bxc3 2 1 5 +18322 g3 6 0 0 +18323 f3 3 1 5 +18324 Nf3 5 0 2 +18325 d4 3 0 2 +18328 g3 2 0 9 +18329 Nd5 2 0 3 +18330 g3 4 0 1 +18332 Nf3 2 0 3 +18336 Nf3 4 1 1 +18335 Nf3 2 0 7 +18337 d4 4 0 1 +18337 g3 3 0 2 +18341 Bg2 3 0 4 +18344 Nxd4 2 0 3 +18345 cxd5 2 0 3 +18347 g3 6 0 1 +18350 cxd5 4 1 2 +18351 Bg2 4 2 6 +18353 cxd5 4 0 2 +18356 exd4 1 1 3 +18358 g3 6 0 1 +18359 Nf3 5 0 5 +18359 Bg5 6 0 2 +18359 e3 1 0 6 +18363 g3 3 0 4 +18364 g3 2 0 3 +18370 c3 3 0 2 +18371 e4 0 0 7 +18375 e3 1 0 4 +18377 Nf3 0 1 4 +18378 Bxe5 6 0 1 +18379 a3 5 0 3 +18380 dxe5 4 0 1 +18381 Qd2 3 0 2 +18382 Qxf3 1 0 4 +18383 Nb5 5 0 1 +18384 e3 2 0 3 +18385 Bxc3 4 0 1 +18386 Bd2 1 0 5 +18388 Qd2 9 0 2 +18393 Nbxd2 2 0 3 +18395 Nbd2 2 0 5 +18395 O-O 4 0 2 +18397 c3 4 0 2 +18398 O-O 0 1 4 +18400 c3 3 1 3 +18401 c3 5 0 4 +18402 c4 5 0 2 +18406 Nbd2 4 1 0 +18408 e3 5 0 4 +18407 Bg5 6 0 7 +18407 e4 3 0 9 +18412 O-O 3 1 8 +18413 O-O 2 1 2 +18416 O-O 7 0 12 +18415 O-O 7 1 9 +18417 dxc5 2 0 3 +18418 Qd1 16 2 24 +18423 bxc4 6 1 7 +18424 bxa6 9 2 5 +18424 Nc3 6 0 7 +18424 e3 5 1 4 +18424 b6 5 0 4 +18425 Bxc4 1 0 4 +18427 e4 4 2 8 +18429 cxd5 7 0 3 +18430 e4 3 0 2 +18433 Bxc4 4 1 0 +18436 Nc3 5 0 1 +18435 Nc3 5 0 2 +18437 Bd2 3 0 2 +18441 Bg5 5 0 1 +18441 e4 0 1 4 +18442 f3 8 0 3 +18442 f4 4 0 6 +18442 Nf3 5 0 4 +18442 Bd3 2 0 4 +18444 Bb2 2 0 3 +18445 Qd1 7 0 7 +18449 Nc3 1 0 5 +18450 Qc2 6 0 0 +18451 e3 13 0 14 +18452 Bf4 5 0 9 +18453 exd6 2 0 4 +18455 Nh3 3 0 2 +18456 a3 3 1 7 +18456 e3 5 0 5 +18456 Nf3 3 1 5 +18457 e3 1 1 3 +18462 Bxf6 1 0 4 +18467 bxc3 4 1 5 +18466 e3 4 0 2 +18465 Bd2 3 0 3 +18464 e3 4 1 4 +18464 a3 3 0 3 +18470 a3 11 1 1 +18470 Nf3 4 0 1 +18473 a3 2 0 3 +18472 e3 3 0 2 +18471 Nf3 3 1 1 +18474 bxc3 18 1 33 +18477 e3 4 0 2 +18480 Nxd4 6 0 9 +18481 cxd5 9 2 2 +18483 Nf3 4 1 1 +18482 exd4 6 0 2 +18484 e3 3 0 6 +18485 e4 3 1 1 +18486 e3 4 1 2 +18489 Bg5 2 0 4 +18487 e3 1 0 4 +18490 b4 3 0 5 +18493 e4 4 1 0 +18492 Bg5 4 0 1 +18494 Nf3 4 1 2 +18497 Nbxd2 5 1 3 +18498 e3 0 0 5 +18501 Bg2 3 1 9 +18507 b4 3 0 2 +18508 Nxd2 2 0 4 +18510 cxd5 5 0 0 +18513 Qd2 2 0 4 +18515 e3 5 0 6 +18515 e4 3 0 5 +18514 Bg5 15 1 12 +18514 e4 12 1 13 +18514 e3 5 0 9 +18514 g3 5 0 2 +18514 Bf4 4 0 2 +18519 Nf3 3 0 7 +18518 Nf3 4 0 8 +18518 Bd3 3 0 3 +18521 e5 5 0 3 +18521 Nf3 4 0 2 +18522 d5 5 0 1 +18520 Nf3 31 2 33 +18520 f4 36 1 26 +18520 f3 17 1 20 +18520 Be2 8 1 5 +18520 Be3 6 1 4 +18520 Bd3 5 0 6 +18520 h3 4 0 6 +18520 e5 6 1 2 +18524 Nxe4 3 0 5 +18525 e3 4 0 6 +18525 Qb3 7 0 3 +18525 Bf4 4 0 5 +18525 Bg5 6 0 3 +18526 Nf3 2 0 5 +18527 e4 34 8 41 +18527 Nf3 5 1 5 +18528 Nf3 10 2 24 +18530 Nf3 3 0 2 +18531 e4 2 2 1 +18531 e3 2 0 3 +18533 Bd3 2 0 3 +18535 Bg2 4 1 1 +18538 Nf3 6 1 4 +18538 Nd2 3 0 2 +18540 Nc3 2 0 6 +18543 Bxd4 0 0 5 +18544 Qxd4 3 0 5 +18546 O-O 3 0 2 +18548 O-O 3 1 4 +18547 O-O 4 0 3 +18549 Nd2 2 0 3 +18551 f4 1 0 9 +18552 dxe5 2 0 3 +18554 O-O 1 0 4 +18558 g3 5 0 1 +18561 e4 4 1 0 +18562 f3 5 0 2 +18563 f3 6 3 3 +18565 O-O 2 0 3 +18566 O-O 8 1 2 +18567 Bg5 0 1 4 +18569 Bd3 5 0 7 +18569 f3 2 0 3 +18570 e4 5 0 2 +18570 e3 3 0 2 +18570 Bf4 1 0 4 +18570 g3 5 0 0 +18572 Be3 13 0 4 +18572 f4 8 1 3 +18572 Nf3 7 1 3 +18574 Bg2 5 0 3 +18577 O-O 7 0 3 +18580 Be4 2 0 3 +18581 Be4 11 0 3 +18584 cxd5 2 0 4 +18588 f4 5 1 4 +18590 Qxa7 3 0 3 +18589 Qxa7 3 1 4 +18594 c3 3 0 3 +18596 Nf3 2 0 3 +18599 Qxd4 4 0 1 +18601 Nc3 3 0 5 +18602 Nc3 2 0 3 +18600 Nc3 14 1 21 +18600 Nf3 5 0 3 +18603 cxd5 3 0 4 +18606 e4 5 0 4 +18610 e4 4 0 1 +18609 cxd5 6 0 1 +18608 e4 9 0 3 +18611 Nc3 4 0 1 +18612 e4 4 0 2 +18618 cxd5 2 0 4 +18620 Nc3 3 0 5 +18619 Nc3 10 1 6 +18625 cxb4 5 1 10 +18633 Bg5 2 0 3 +18632 Bg5 3 0 9 +18635 Nf3 5 0 0 +18637 Nf3 4 0 1 +18642 Bg5 5 0 0 +18643 Nf3 4 0 6 +18646 Bf4 2 0 5 +18646 Nf3 4 0 2 +18647 Nf3 6 0 3 +18648 Nf3 5 0 1 +18653 Qxd3 4 1 5 +18655 fxe5 2 0 4 +18658 e3 0 0 5 +18659 dxe5 12 0 5 +18660 Nf3 2 0 4 +18661 Bxd6 1 1 4 +18661 Qd2 3 0 2 +18662 dxe5 3 0 2 +18663 Bxc6 1 0 4 +18668 dxe5 7 0 2 +18669 f3 6 0 0 +18670 Nf3 1 0 4 +18680 e3 2 0 6 +18682 Nc3 3 0 7 +18684 hxg3 5 0 1 +18688 Bg3 4 0 1 +18690 h3 5 1 2 +18691 e3 6 0 1 +18692 a3 7 0 0 +18694 a3 10 0 1 +18695 dxe5 9 1 2 +18696 dxe5 10 0 2 +18697 Qd2 8 0 1 +18698 dxe5 3 0 2 +18700 a3 20 0 1 +18701 dxe5 33 1 7 +18704 Bxf6 6 0 1 +18703 Bxf6 9 0 2 +18702 Bxf6 12 0 2 +18707 Bg3 4 0 1 +18706 Bxf6 4 0 1 +18708 Qd2 25 0 7 +18709 a3 16 0 1 +18710 a3 4 0 2 +18711 a3 4 0 1 +18715 Nce2 5 0 1 +18716 Ng3 11 1 2 +18717 a3 5 0 3 +18721 Nxe4 7 0 1 +18723 Qd2 7 0 0 +18722 Nb5 9 1 2 +18724 Qd2 24 1 2 +18728 Nb5 3 0 2 +18726 Nb5 12 0 3 +18725 Be5 11 0 6 +18727 e3 6 0 0 +18729 Nxe4 4 0 1 +18730 exd4 12 0 2 +18732 Nb5 6 0 2 +18736 c4 3 0 5 +18740 O-O 0 0 5 +18742 Nc3 5 0 0 +18743 Nf3 5 0 0 +18744 Nxg6 2 0 3 +18745 c4 4 0 2 +18747 Bg2 4 0 2 +18753 dxe5 4 0 1 +18754 Bb5 2 0 3 +18758 Bxc6 4 0 2 +18760 O-O 4 0 1 +18761 h3 2 0 3 +18762 O-O 11 1 4 +18763 Bb2 2 0 4 +18764 Nc3 2 0 3 +18770 O-O 5 0 1 +18769 O-O 9 0 3 +18771 Bd3 2 1 6 +18775 Bg3 3 0 2 +18783 Nc3 2 1 3 +18787 Bxc4 4 0 1 +18790 c3 2 0 3 +18789 c3 3 0 2 +18794 O-O 7 0 4 +18798 O-O 4 0 1 +18797 O-O 2 1 3 +18796 O-O 7 0 1 +18796 c3 2 0 3 +18799 O-O 6 3 2 +18801 Bg3 5 0 0 +18802 Nc3 4 0 2 +18810 exd4 5 0 1 +18812 e3 5 0 4 +18814 e3 3 0 2 +18817 dxc5 5 1 3 +18817 c3 4 0 1 +18820 O-O 7 0 1 +18821 Nc3 3 0 2 +18822 Bb2 0 0 6 +18823 Bb5 3 0 4 +18824 O-O 3 0 3 +18828 O-O 2 0 3 +18826 O-O 3 1 2 +18827 O-O 4 1 0 +18829 O-O 5 0 0 +18825 c3 3 1 2 +18825 O-O 3 0 2 +18831 O-O 3 0 2 +18832 Qe5 2 0 3 +18833 b4 3 0 3 +18834 Bh4 4 0 1 +18836 e4 6 0 0 +18837 Bxc4 6 0 5 +18838 Bxc4 26 0 8 +18840 e3 3 1 1 +18842 e3 3 0 3 +18844 Qb3 4 0 2 +18845 Bd2 3 2 3 +18852 Qxd4 1 0 4 +18853 Nc3 4 0 3 +18859 Nf3 6 1 1 +18860 Bxc4 4 0 3 +18864 Bxc4 6 0 3 +18867 e3 8 1 1 +18867 cxd5 7 0 1 +18867 Nf3 3 0 2 +18869 e3 6 0 2 +18869 Bg5 4 0 3 +18871 e3 3 0 2 +18870 e3 6 0 1 +18875 Bd2 4 0 3 +18875 Nf3 2 0 4 +18875 a3 4 0 2 +18878 e4 2 1 4 +18879 e4 3 0 2 +18880 e3 4 0 3 +18882 bxc3 3 0 3 +18884 e4 4 0 2 +18886 Nc3 13 1 2 +18886 Nf3 3 0 5 +18885 Nc3 28 2 8 +18885 e5 2 0 3 +18888 e4 4 0 2 +18892 cxd5 1 0 4 +18894 e4 5 0 0 +18895 Nc3 4 0 1 +18905 e3 2 0 4 +18904 e3 7 0 1 +18910 Bg5 8 1 6 +18910 e3 4 0 7 +18911 Bg5 7 0 2 +18911 e3 2 1 5 +18913 e4 3 1 2 +18913 a4 3 1 2 +18909 Bg5 14 0 7 +18909 e3 4 2 5 +18909 cxd5 3 0 2 +18912 e3 4 0 4 +18915 e4 2 1 2 +18914 Nf3 12 1 13 +18916 Nf3 7 1 7 +18919 Nf3 2 0 3 +18917 Nf3 6 0 8 +18921 e4 6 0 2 +18922 a4 4 0 7 +18923 a4 3 1 3 +18924 Ne4 5 0 1 +18929 e3 1 1 3 +18926 Bg5 15 1 9 +18926 e3 4 0 4 +18927 a4 4 0 1 +18927 e3 1 0 4 +18933 Nf3 7 0 3 +18935 Nf3 6 0 4 +18937 Nxe4 6 0 2 +18944 e3 3 0 3 +18943 e3 2 0 3 +18942 a4 7 0 1 +18940 e3 8 0 7 +18940 Bg5 3 2 4 +18940 g3 2 1 2 +18941 e3 4 0 4 +18945 Bg2 4 0 1 +18946 a4 3 1 1 +18952 Nf3 6 0 6 +18950 Nf3 12 0 6 +18950 Bg5 3 2 4 +18951 Nf3 14 1 5 +18953 Nc3 2 0 3 +18957 Nf3 7 0 0 +18956 c5 4 0 1 +18960 Nf3 3 0 2 +18961 Be2 3 1 3 +18970 Bxc4 5 0 1 +18971 Bxc4 10 0 6 +18972 e3 7 1 2 +18975 e4 5 1 2 +18978 Bxc4 10 1 2 +18977 Bxc4 11 0 3 +18979 d5 5 0 2 +18980 Bxc4 4 0 1 +18987 Bxc4 4 1 3 +18988 Bxc4 6 2 0 +18985 Bxc4 8 1 8 +18985 a3 6 0 4 +18990 f3 5 0 8 +18991 d5 4 0 3 +18992 d5 4 0 1 +18989 Bxc4 16 0 5 +18989 a3 2 0 3 +18993 e4 0 2 3 +18996 a4 9 1 3 +18997 a4 3 1 4 +18998 Nc3 7 0 2 +18999 exd4 6 0 1 +19003 a4 11 0 1 +19004 a4 7 1 3 +19006 e4 4 0 2 +19007 exd4 4 1 1 +19009 Bg5 4 0 2 +19011 e4 7 1 0 +19011 e3 4 0 2 +19013 Bxc4 10 0 3 +19014 Bxc4 7 0 7 +19015 Bxc4 6 0 1 +19016 Bxc4 15 0 11 +19016 Qa4 1 0 5 +19019 Nf3 5 0 0 +19017 Bxc4 8 2 0 +19018 Bxc4 4 0 4 +19018 a4 3 0 2 +19021 Bxc4 3 0 2 +19020 Bxc4 5 0 1 +19024 Bxc4 4 1 1 +19026 Bxc4 2 0 4 +19027 Nf3 1 0 4 +19028 Bf4 3 0 2 +19032 Bxc4 1 1 3 +19034 Nf3 2 0 3 +19037 Bxc4 3 0 2 +19036 Bxc4 2 0 5 +19038 Nc3 4 0 4 +19038 Nf3 6 0 2 +19039 Nc3 1 0 4 +19043 Nf3 3 0 2 +19042 Nf3 7 0 0 +19042 Nc3 5 0 1 +19041 Nf3 14 0 8 +19041 Nc3 3 2 5 +19041 a3 3 0 2 +19046 a4 10 0 3 +19047 a4 9 0 2 +19053 axb5 5 0 3 +19050 axb5 11 0 7 +19052 axb5 7 0 5 +19051 Qxa4 6 0 3 +19049 axb5 70 1 11 +19049 b3 3 1 4 +19055 exd4 6 1 2 +19057 Bd2 4 0 4 +19057 Nc3 3 0 4 +19060 Nf3 4 1 0 +19056 Nc3 6 1 6 +19056 Nf3 2 0 5 +19058 Nf3 3 0 2 +19059 Nf3 4 0 2 +19063 Bf4 4 1 1 +19065 f3 3 0 2 +19064 Bxc4 8 0 2 +19066 Bxc4 7 0 5 +19067 a4 3 0 4 +19067 Bf4 4 0 2 +19070 axb5 2 0 3 +19069 axb5 8 0 5 +19069 b3 2 2 2 +19071 Bxc4 6 0 2 +19072 Nf3 3 0 2 +19074 Nc3 8 0 2 +19075 Bxc4 3 1 1 +19079 Nc3 6 0 4 +19079 Bd2 6 0 1 +19078 Nf3 13 1 5 +19077 Nc3 9 0 5 +19077 e5 4 0 3 +19080 a4 5 1 1 +19083 e4 5 0 2 +19085 Qxd5 1 2 2 +19084 cxd5 5 0 1 +19086 Qxd8 2 1 2 +19087 Qxd4 4 1 3 +19089 g3 18 0 6 +19089 e3 5 1 10 +19089 a3 6 1 5 +19089 Nbd2 6 0 1 +19089 Bg5 4 0 1 +19092 Bd2 3 0 7 +19093 Nf3 3 0 2 +19094 f4 3 0 2 +19099 Bxc3 1 0 5 +19098 e3 3 0 2 +19101 bxc3 10 0 3 +19100 e3 6 0 5 +19100 e4 6 0 2 +19104 bxc3 5 2 4 +19106 bxc3 3 0 2 +19105 Nf3 7 0 5 +19105 a3 3 0 2 +19107 bxc3 5 0 6 +19110 Bf4 3 0 5 +19116 e3 5 1 1 +19113 e3 39 6 22 +19113 Nf3 21 0 13 +19113 Bxf6 8 0 4 +19113 cxd5 5 0 5 +19115 e3 4 0 4 +19115 Nf3 1 1 5 +19114 e3 8 0 2 +19114 cxd5 3 1 3 +19117 e4 5 0 2 +19118 Bh4 5 0 1 +19121 Bg5 15 0 10 +19121 e3 8 0 4 +19120 Bf4 15 2 6 +19120 Bg5 13 0 10 +19120 e3 8 0 11 +19126 Bg5 4 1 1 +19124 Bg5 4 0 3 +19125 e3 4 0 2 +19125 Bg5 2 0 4 +19122 e3 11 1 3 +19122 Bg5 5 1 1 +19123 Bg5 9 1 3 +19123 e3 7 0 1 +19127 e3 3 0 2 +19132 e4 8 2 7 +19131 Bg5 17 3 6 +19131 Nf3 5 0 5 +19131 e3 5 0 3 +19134 Bd2 15 0 3 +19134 Nf3 6 0 2 +19133 Nf3 7 1 12 +19133 a3 6 1 1 +19137 Nf3 3 1 1 +19135 Nf3 12 1 7 +19136 Nf3 3 0 7 +19140 Nf3 8 0 3 +19140 dxc5 5 0 5 +19142 Nf3 3 0 2 +19141 exd4 4 0 2 +19143 Bg5 19 2 7 +19143 e3 4 1 4 +19144 Bf4 6 0 2 +19144 e3 1 0 4 +19148 Nf3 4 1 1 +19151 Nf3 7 0 4 +19150 a3 7 0 1 +19152 Nxe4 4 0 2 +19156 Bxc4 6 0 1 +19157 Bxc4 4 0 2 +19160 Bxc4 3 0 2 +19159 Bxc4 4 0 8 +19162 Bxc4 1 0 4 +19165 Nbxd2 3 1 3 +19166 Nc3 5 0 4 +19166 e3 6 1 0 +19166 Bxf6 2 0 3 +19168 a3 5 0 2 +19168 Bd2 3 0 2 +19169 e3 5 0 3 +19170 e3 3 0 3 +19171 e3 2 0 3 +19176 Bg2 6 0 5 +19177 Bg2 3 0 2 +19179 e3 2 0 4 +19183 dxc5 1 0 6 +19184 c5 1 0 4 +19185 cxd5 5 0 0 +19186 Bd2 1 0 8 +19187 bxc5 3 0 3 +19189 Bd2 4 0 1 +19188 Nf3 5 0 0 +19193 Nf3 1 0 7 +19191 Nf3 6 0 7 +19191 Bg5 10 0 3 +19192 Nf3 1 0 6 +19198 Nxd2 3 0 3 +19200 Nf3 3 1 2 +19201 Nf3 3 0 2 +19199 Nf3 7 0 3 +19199 cxd5 2 0 4 +19210 cxb6 5 0 6 +19220 e4 2 0 3 +19221 e4 2 1 3 +19224 Qb3 3 0 2 +19231 Qxd3 2 0 3 +19241 Nf3 5 0 1 +19242 Bd2 4 0 3 +19243 c3 5 0 4 +19246 Nc3 1 1 4 +19253 Nf3 3 0 2 +19255 c3 6 0 1 +19258 Nf3 5 0 4 +19262 Nc3 6 0 1 +19263 c3 5 0 1 +19264 Bc2 6 0 2 +19270 cxd5 3 0 3 +19277 Bd3 3 0 5 +19279 Bd3 3 0 2 +19280 Bd3 4 0 3 +19281 exd4 6 0 1 +19283 Bd3 8 0 1 +19285 Qxf3 6 0 0 +19286 Qxf3 8 0 7 +19286 Nxf3 2 0 4 +19288 g4 2 0 4 +19287 Qxf3 42 1 33 +19287 Nxf3 6 1 10 +19289 Qxf3 4 1 9 +19292 Bc4 4 0 1 +19291 Bc4 2 0 4 +19291 Bd3 3 0 2 +19293 Bd3 6 0 0 +19295 Nc3 2 0 3 +19297 h4 3 0 6 +19298 g5 6 0 2 +19302 g5 3 0 3 +19303 fxg4 2 0 3 +19304 c3 3 0 2 +19305 e5 4 0 1 +19306 g5 0 0 5 +19307 Qxd4 7 0 1 +19309 fxg4 1 0 4 +19312 e3 2 1 2 +19315 O-O 2 0 3 +19316 e4 3 0 2 +19318 e4 3 0 2 +19319 d5 8 1 12 +19319 Nf3 4 0 4 +19319 dxe5 3 0 3 +19320 Bg5 3 0 3 +19320 e4 4 0 1 +19321 f4 8 1 0 +19322 Qd1 4 1 3 +19328 e4 3 1 3 +19328 e3 2 0 3 +19329 Be3 6 0 2 +19330 f4 2 0 3 +19332 d5 6 0 1 +19334 Nf3 7 0 0 +19336 Nc3 8 1 6 +19336 Nf3 4 0 2 +19338 Bd2 2 0 6 +19338 Nbd2 2 1 3 +19338 Nc3 0 0 6 +19339 Nxe5 4 0 2 +19341 Nc3 5 0 3 +19345 Nf3 5 0 0 +19346 Nf3 2 0 3 +19347 g3 2 0 3 +19351 Nf3 4 0 1 +19353 e3 0 0 5 +19358 Qe5 2 0 3 +19359 e3 2 0 5 +19360 e3 0 0 8 +19361 h3 2 0 3 +19363 Bg5 7 1 1 +19366 e3 5 0 1 +19367 c3 3 0 2 +19368 e3 7 0 9 +19370 Bg3 4 0 1 +19373 Nbd2 2 0 4 +19372 Nbd2 1 1 5 +19374 Nbd2 4 0 1 +19377 O-O 2 0 3 +19378 Bb2 3 0 2 +19381 O-O 4 0 2 +19382 Nc3 5 0 1 +19383 Qd2 4 0 2 +19384 Nb5 2 0 3 +19387 Nf3 3 0 2 +19388 e4 3 0 5 +19388 e3 2 1 3 +19389 Bd3 2 0 4 +19389 Nf3 4 0 1 +19390 e3 2 0 5 +19390 e4 2 0 3 +19391 f4 4 1 2 +19393 bxc3 3 0 8 +19399 Be3 11 0 2 +19401 Bd3 4 1 3 +19404 Qd1 11 1 5 +19407 e4 2 0 4 +19409 Nc3 2 1 2 +19411 Nc3 8 0 2 +19410 Nc3 9 0 1 +19410 e4 5 1 3 +19412 Nf3 7 0 4 +19416 Nf3 3 0 2 +19417 e3 11 0 13 +19417 Nf3 0 0 5 +19417 cxd5 4 0 1 +19419 Bg5 15 2 13 +19419 Bf4 10 2 9 +19419 e3 5 0 9 +19419 g3 4 1 6 +19419 cxd5 3 0 2 +19421 e3 3 0 2 +19424 Bg5 14 1 6 +19424 Nf3 7 1 4 +19424 Bf4 2 0 3 +19425 a3 8 1 3 +19425 Nf3 5 2 5 +19425 cxd5 2 0 3 +19428 exd4 4 0 2 +19429 Bg5 5 0 0 +19431 e3 5 0 0 +19432 e4 4 0 2 +19438 Bxc4 6 0 2 +19439 Bxc4 3 0 2 +19441 Bxc4 11 0 3 +19444 Bg2 3 0 6 +19445 Bg2 3 1 1 +19446 Bg2 3 1 1 +19449 Nf3 4 0 1 +19451 Bg5 4 0 3 +19451 Nf3 3 0 3 +19458 Nf3 3 0 9 +19464 e4 3 0 2 +19465 Bg5 3 0 2 +19468 Nd2 1 0 4 +19469 O-O 3 0 2 +19470 cxd5 1 1 6 +19473 Bd3 2 0 3 +19474 exd4 1 1 4 +19475 Nf3 1 0 4 +19479 f4 2 0 3 +19484 Nf3 4 0 10 +19484 Bb5 3 0 4 +19484 Be3 4 0 3 +19486 cxd4 4 0 2 +19487 Nxe5 5 0 4 +19488 fxe5 4 1 1 +19490 Bd3 2 0 4 +19497 e3 2 0 3 +19501 f4 3 1 1 +19502 Bg2 2 1 3 +19506 Bxc7 9 0 1 +19507 Qd2 6 0 1 +19509 O-O 2 0 3 +19510 O-O 1 0 4 +19511 f4 2 0 3 +19514 Nf3 2 0 4 +19515 Nxd4 1 0 4 +19516 bxc3 3 0 2 +19517 exd4 5 0 6 +19518 Nf3 4 0 1 +19521 Be3 4 0 1 +19521 f4 3 1 1 +19525 Nf3 5 0 3 +19529 fxe5 3 0 6 +19531 f4 2 1 5 +19532 dxe5 1 0 4 +19533 f4 5 1 8 +19534 O-O 2 0 3 +19535 Nf3 4 0 10 +19536 Nf3 3 0 2 +19539 Qxf3 1 0 4 +19541 b3 6 1 2 +19542 Qe2 6 0 5 +19543 Nh3 1 0 4 +19544 c4 4 0 4 +19548 Bg2 2 0 3 +19552 Nc3 5 0 3 +19551 Nc3 6 0 2 +19554 Bg2 6 0 1 +19560 Bg2 4 0 1 +19563 Bd3 3 0 2 +19566 Nxd4 1 0 4 +19567 Bc4 6 1 3 +19567 d4 6 0 1 +19567 Bb5 3 0 3 +19571 O-O 4 1 5 +19571 d3 4 0 2 +19574 Nxc6 3 0 3 +19576 Qxd4 4 0 3 +19583 Be2 1 1 3 +19585 Nc3 2 0 5 +19586 Nc3 7 0 7 +19587 Qxf3 4 0 1 +19588 Qe2 4 0 3 +19588 d4 2 0 5 +19588 d3 4 0 2 +19589 bxc3 3 0 4 +19590 Nf3 1 0 4 +19592 Nf3 1 0 4 +19593 fxg7 2 1 7 +19593 fxe7 1 0 5 +19595 bxc3 0 1 5 +19594 h3 1 1 3 +19597 Nf3 22 2 22 +19597 d4 10 0 10 +19597 c4 8 1 3 +19597 d3 3 0 3 +19599 bxc3 4 0 1 +19603 Nxd4 6 0 3 +19606 Kxd1 1 0 4 +19607 c3 2 0 6 +19608 Nf3 3 0 4 +19609 d4 4 0 2 +19617 d4 2 1 3 +19618 exd6 2 0 8 +19619 exd6 11 0 11 +19619 d4 3 0 2 +19620 a5 2 0 3 +19621 Bc4 15 0 19 +19621 Nc3 11 0 4 +19621 d4 5 3 7 +19623 c5 3 0 2 +19622 exd6 25 4 26 +19622 f4 16 1 20 +19622 Nf3 6 0 7 +19624 exd6 2 0 7 +19625 exd6 3 0 5 +19625 f4 2 0 4 +19626 Nf3 1 1 5 +19628 Bb3 4 0 3 +19631 Be2 2 0 5 +19630 Nxe5 6 1 3 +19630 dxe5 2 0 3 +19634 exd6 16 1 26 +19634 f4 16 1 12 +19634 Nf3 4 1 10 +19635 Nf3 9 0 0 +19635 c4 3 0 4 +19641 Nf3 7 0 1 +19642 O-O 4 2 5 +19646 O-O 5 0 4 +19647 O-O 6 0 5 +19649 Rxa8 2 1 5 +19650 Nd5 1 1 3 +19653 Qf3 4 1 2 +19655 Qf3 3 1 2 +19654 Qf3 5 0 0 +19656 Nf3 4 0 2 +19658 f4 2 0 4 +19659 f4 4 1 1 +19661 Ng5 3 0 3 +19667 Ng5 8 0 0 +19671 d3 1 0 4 +19673 Re1 4 0 4 +19676 Nxd4 2 0 8 +19677 d3 3 0 3 +19678 Bd3 12 1 21 +19678 Bd2 11 1 3 +19678 e5 3 0 2 +19679 e5 1 0 5 +19683 d3 3 0 8 +19685 Be3 9 0 8 +19685 e5 12 0 4 +19685 Bd3 8 0 4 +19685 Bc4 6 0 2 +19685 d5 3 1 1 +19688 Bd2 3 0 2 +19693 Qd2 4 0 3 +19697 f3 4 1 2 +19704 Ne2 3 1 2 +19705 Be3 5 1 2 +19706 O-O 7 0 1 +19707 Ne2 4 0 1 +19708 Be3 2 0 3 +19709 Nf3 2 0 3 +19711 Bd3 7 1 8 +19711 Bd2 1 0 4 +19712 Bd3 4 0 2 +19714 Bd2 1 0 5 +19716 Nf3 3 0 3 +19718 Bc4 12 0 3 +19718 Be3 6 0 2 +19719 Nf3 1 0 4 +19720 exd5 4 0 1 +19723 cxd5 5 0 2 +19723 exd5 3 0 2 +19727 Nc3 4 0 5 +19728 Nc3 3 0 2 +19730 Bd3 2 0 3 +19732 Be2 2 0 3 +19735 Qxc5 2 0 3 +19736 Nf3 2 0 3 +19740 Bg5 3 0 3 +19742 d3 6 0 2 +19743 Nxd4 5 0 2 +19746 exd5 4 0 5 +19747 exd5 2 0 3 +19749 Nxd4 4 1 10 +19752 Qxc4 1 0 4 +19756 Qh4 2 0 4 +19756 Qh3 0 0 5 +19757 Qf3 3 1 2 +19758 Qd1 3 1 2 +19762 exd5 1 0 6 +19763 d3 1 0 4 +19764 exd5 1 1 3 +19765 cxd4 4 0 1 +19769 Nxe5 2 0 4 +19770 Be6 2 0 4 +19773 d3 4 0 2 +19774 Bb5 3 0 2 +19783 Be2 4 1 2 +19784 Ba2 6 0 1 +19786 Nf3 1 0 5 +19789 exd5 3 0 5 +19793 Nxd4 4 0 4 +19795 Ba2 1 0 4 +19798 Be2 2 0 3 +19797 Nxd4 2 1 3 +19799 Bb5 19 0 19 +19799 Qe2 3 1 4 +19799 Be2 4 0 3 +19801 Bb3 0 0 5 +19802 Ba2 7 1 4 +19804 Bb3 8 0 6 +19804 Bb5 2 1 4 +19805 Qd1 9 0 10 +19805 Qe3 0 0 5 +19805 Qd3 1 0 4 +19807 Nf3 3 0 3 +19811 Nxd4 6 1 5 +19813 Bxc6 4 0 2 +19814 Nxd4 9 1 8 +19815 Bxc6 1 1 6 +19816 O-O 3 0 2 +19817 Nxd4 4 0 4 +19818 e5 4 0 1 +19819 Ne2 10 0 4 +19819 d3 4 0 1 +19820 d3 4 0 1 +19821 Be3 2 0 5 +19824 Nxd4 2 0 4 +19825 Nxd4 5 0 5 +19825 Qxd4 3 0 4 +19826 Nxd4 4 1 5 +19827 Qxd4 1 1 6 +19830 d3 5 0 2 +19830 h3 5 0 2 +19831 Ne2 5 0 0 +19832 Nxd4 4 0 5 +19833 Nxd4 6 3 3 +19834 d4 9 3 4 +19836 d4 2 0 3 +19837 Rb1 4 0 6 +19839 d3 4 1 3 +19839 O-O 2 0 3 +19845 Bxc6 2 0 3 +19846 O-O 14 0 10 +19846 d3 6 1 12 +19846 d4 5 1 7 +19846 Nc3 6 0 2 +19847 O-O 5 2 4 +19847 Nc3 3 0 2 +19848 O-O 11 1 10 +19848 d3 5 2 10 +19848 d4 5 1 5 +19848 c3 4 0 2 +19851 Qxd4 3 2 1 +19851 Nxd4 1 3 2 +19853 O-O 9 1 6 +19853 d3 5 0 2 +19853 d4 3 1 2 +19853 e5 4 0 1 +19856 Nxd4 2 0 3 +19857 O-O 10 0 3 +19857 d3 2 0 5 +19857 d4 2 1 4 +19857 Nc3 2 0 3 +19858 O-O 1 1 6 +19860 c3 6 1 4 +19865 Nc3 4 0 2 +19873 Nxd4 1 0 6 +19874 Nc3 3 1 2 +19874 d3 3 0 2 +19877 d3 3 0 5 +19876 d4 3 1 3 +19876 a4 3 0 3 +19879 a4 1 0 4 +19881 exd5 6 0 2 +19886 d3 2 1 9 +19885 d3 8 0 2 +19887 exd5 2 0 5 +19889 d4 3 2 6 +19888 exd5 4 1 12 +19891 a3 2 0 6 +19892 exd5 2 1 5 +19895 Nxd4 38 2 38 +19896 exd5 4 2 3 +19901 c3 3 0 4 +19902 c3 2 0 6 +19903 d4 5 0 3 +19905 Nxd4 3 1 9 +19907 Nxd4 2 0 3 +19908 Nxd4 2 0 3 +19909 O-O 10 1 3 +19913 Nxd4 9 3 15 +19914 Bxc6 0 0 5 +19914 d3 1 0 4 +19917 Bxc6 1 1 3 +19920 Nxd4 24 2 21 +19923 O-O 3 0 3 +19924 Nxd4 10 0 21 +19926 d4 4 0 3 +19928 cxd4 0 0 5 +19931 d4 6 0 4 +19932 cxd4 4 3 17 +19935 cxd4 5 0 13 +19936 cxd4 5 1 6 +19937 exd5 3 0 3 +19938 cxd4 8 0 6 +19940 Nxd4 2 0 3 +19942 Qxd4 6 0 1 +19952 Nc3 3 0 4 +19945 Nc3 106 6 100 +19945 Nxc6 11 4 42 +19945 f3 4 0 3 +19948 Qxd4 73 3 51 +19951 Nc3 3 0 7 +19951 Nxc6 2 0 3 +19950 Nc3 7 1 7 +19950 Nxc6 4 1 5 +19947 Nc3 30 2 27 +19947 Nxc6 7 1 15 +19947 Bb5 5 0 7 +19947 c4 4 0 8 +19947 Be3 6 0 2 +19947 Be2 2 1 4 +19947 Bc4 2 0 4 +19944 Nxc6 57 7 73 +19944 Nb5 57 5 38 +19944 Nb3 22 2 23 +19944 Nf3 8 1 16 +19944 Nf5 11 0 9 +19949 Nc3 29 2 21 +19949 Nxc6 17 0 15 +19949 Bb5 5 0 5 +19949 c4 5 0 3 +19949 Be2 4 0 2 +19946 Nc3 47 2 41 +19946 Nxc6 20 1 22 +19946 Be3 14 0 11 +19946 c4 8 1 6 +19946 Bc4 5 1 7 +19946 b3 2 0 3 +19946 Be2 2 0 3 +19956 Nxc3 14 0 12 +19957 Nc3 2 0 4 +19958 Nxe5 4 0 1 +19959 Qxd8 6 0 2 +19960 exd5 19 0 4 +19964 Nxd4 3 0 4 +19965 cxd4 3 0 2 +19966 Nc3 7 0 3 +19969 Nf3 3 2 2 +19974 Nxd4 3 0 2 +19975 Nc3 18 0 9 +19976 Be2 4 1 1 +19977 O-O 12 3 12 +19977 d4 9 1 11 +19977 Nc3 3 1 5 +19978 O-O 12 1 7 +19978 d4 4 2 10 +19978 c4 4 1 0 +19980 Nxb5 3 0 2 +19982 Bxd7 3 0 4 +19984 O-O 10 0 4 +19984 d4 5 0 5 +19984 d3 1 0 5 +19986 Bxc6 2 0 3 +19985 Nxd4 3 0 7 +19989 Ng5 1 0 4 +19992 d3 2 1 5 +19999 Nxd4 10 3 20 +20000 d3 4 0 3 +20004 d3 7 0 2 +20006 Nc3 3 0 3 +20006 O-O 1 0 4 +20006 a3 2 1 2 +20009 Nxd4 4 0 1 +20009 Qxd4 3 0 2 +20010 Nxe5 3 1 7 +20013 d4 0 0 7 +20015 Nc3 2 2 4 +20019 d3 6 0 5 +20020 d3 4 0 2 +20022 d4 1 0 4 +20021 d4 1 0 5 +20026 Nxd4 9 0 28 +20026 Qxd4 5 1 4 +20027 d4 2 0 5 +20027 O-O 1 0 5 +20028 O-O 2 0 4 +20028 d4 0 0 5 +20032 Nxd4 17 2 24 +20033 Qe2 2 0 3 +20036 Nxd4 22 3 40 +20036 Qxd4 3 2 4 +20038 Nxd4 5 0 12 +20041 Nxd4 2 1 12 +20042 Nxd4 2 0 7 +20046 cxd4 19 4 15 +20048 d4 5 0 2 +20052 Nxe5 4 0 8 +20053 cxd4 4 0 1 +20054 cxd4 5 0 1 +20055 cxd4 2 0 8 +20060 Qxd8 4 0 1 +20068 Nc3 3 0 2 +20063 Nc3 46 5 35 +20063 Nxc6 7 0 16 +20063 Bb5 8 1 8 +20063 Be3 9 1 2 +20063 c4 7 0 2 +20063 Nb3 3 0 2 +20063 Bc4 3 0 2 +20062 Nc3 308 21 329 +20062 Bb5 19 1 13 +20062 Bd3 13 0 18 +20062 f3 11 0 6 +20062 Bg5 2 0 5 +20062 Bc4 1 0 5 +20069 Nc3 1 0 4 +20065 Nc3 26 2 16 +20065 c4 3 0 4 +20065 Bd3 0 1 5 +20064 Nf3 15 2 13 +20064 Nb5 12 0 4 +20064 Nb3 9 0 4 +20064 Nc3 3 0 4 +20064 Nf5 3 0 3 +20064 Bb5 4 0 1 +20067 Nc3 5 1 8 +20066 Nc3 7 2 16 +20066 Be3 4 0 1 +20070 Bb5 15 2 13 +20070 Qd1 3 0 5 +20070 Qa4 1 0 4 +20071 e5 9 0 2 +20072 Nc3 2 0 4 +20073 Nxc3 5 0 5 +20077 e5 4 0 1 +20078 exd5 3 0 2 +20080 Nxd4 3 0 11 +20081 Be2 1 1 3 +20082 Be2 1 0 5 +20083 Ba2 2 0 3 +20084 Be2 2 0 6 +20085 Bb5 12 0 9 +20085 Qe2 7 0 2 +20085 Be2 4 0 3 +20087 Nxd4 15 1 15 +20089 Nxd4 19 0 26 +20089 Qxd4 0 0 5 +20091 Nxe4 3 0 2 +20092 d4 11 0 11 +20092 Bb5 2 0 3 +20093 Nxd4 2 0 3 +20095 Bb2 5 1 3 +20096 cxd4 4 1 11 +20098 cxd4 5 0 2 +20099 d4 4 0 3 +20100 d4 8 0 4 +20103 exd5 3 0 2 +20105 exd5 5 0 2 +20106 c4 4 0 3 +20111 Be3 7 2 8 +20111 Nb3 5 0 8 +20108 Nc3 76 3 33 +20108 Nxc6 23 3 22 +20108 Be3 4 0 8 +20108 Nb5 8 0 4 +20108 c4 5 0 5 +20108 c3 4 1 3 +20108 Bb5 5 0 3 +20108 Nf3 2 0 4 +20108 Be2 3 0 3 +20110 Nc3 21 4 29 +20110 e5 2 0 9 +20110 Bd3 3 0 5 +20109 Nc3 51 5 63 +20109 c4 13 0 16 +20109 Bd3 11 1 7 +20109 Be3 8 0 6 +20109 Be2 4 0 4 +20109 Bc4 3 0 5 +20115 Qd1 5 0 2 +20115 Qa4 1 0 4 +20116 Nxc3 4 1 7 +20117 exd5 7 0 9 +20119 dxc5 15 1 22 +20119 Bb5 4 3 9 +20119 Nc3 7 0 6 +20119 Qe2 3 0 2 +20121 c3 7 2 2 +20122 O-O 2 0 3 +20125 O-O 4 0 3 +20127 Nxd4 5 0 8 +20128 Nxd4 3 0 2 +20129 cxd4 20 1 11 +20131 Nc3 36 0 39 +20131 Be3 11 0 17 +20132 Be3 4 0 8 +20132 Nc3 6 0 5 +20133 e5 7 0 3 +20136 d3 1 0 4 +20137 c3 3 0 3 +20143 e5 2 0 4 +20141 e5 6 0 4 +20141 exd5 5 0 0 +20142 d5 1 1 4 +20142 Nf3 4 0 1 +20140 Nf3 6 1 7 +20140 Nc3 4 0 2 +20145 cxd4 1 0 6 +20146 Nf3 2 1 7 +20147 cxd4 3 0 2 +20149 Nf3 2 0 4 +20149 Be3 3 0 2 +20148 Nc3 7 0 7 +20148 Bd3 2 0 7 +20150 Nf3 0 0 5 +20153 Qxd4 1 0 8 +20154 e5 1 0 4 +20156 Nf3 2 0 3 +20157 Nc3 3 0 2 +20162 Nxd4 1 0 4 +20163 Nxd4 1 0 6 +20166 h3 3 0 3 +20168 O-O 2 0 3 +20171 Be2 4 0 1 +20174 O-O 4 0 3 +20173 O-O 4 1 2 +20178 Qxd4 6 0 1 +20176 c4 4 0 1 +20175 Nb5 9 1 0 +20177 Nxc6 3 0 2 +20183 Bb5 0 0 7 +20184 Nf3 2 0 5 +20184 Bb5 2 0 3 +20191 Nf3 2 0 3 +20193 Nc3 3 0 2 +20195 Nc3 7 1 22 +20195 Bd3 5 1 8 +20197 Bb5 5 0 6 +20197 Nc3 3 1 7 +20197 f4 4 1 1 +20197 Nf3 3 0 3 +20196 Nf3 5 0 7 +20196 Nc3 5 1 4 +20196 Bb5 2 0 5 +20196 f4 5 0 2 +20198 f4 2 0 5 +20198 Nc3 1 0 4 +20199 Nc3 3 1 3 +20199 Nf3 1 0 4 +20199 f4 2 0 3 +20208 Nc3 2 1 8 +20206 Nc3 4 1 7 +20209 Nc3 3 0 3 +20210 Nc3 2 0 4 +20211 e5 2 1 4 +20212 Nf3 1 0 4 +20213 Nf3 5 0 4 +20214 Bxb2 13 0 15 +20215 Qb3 2 0 5 +20218 Nf3 21 0 18 +20218 Bc4 8 0 10 +20220 Nf3 5 0 4 +20220 Bc4 6 0 2 +20219 Nf3 6 0 7 +20219 Bc4 4 0 2 +20219 Bf4 2 0 3 +20221 Bc4 5 0 1 +20225 e5 1 0 5 +20225 exd5 0 0 5 +20227 Nc3 4 0 1 +20228 c4 3 0 4 +20232 Nc3 5 0 4 +20234 O-O 4 0 3 +20238 Nxd4 5 1 6 +20240 exd5 6 0 2 +20242 Nxd4 6 1 2 +20243 O-O 3 0 6 +20243 Ng5 3 1 1 +20245 d4 2 0 3 +20246 Nxd4 2 2 2 +20249 Be2 2 0 3 +20251 Nf3 12 0 10 +20252 Be2 7 1 3 +20256 d3 5 0 3 +20259 d3 3 1 1 +20262 Nxd4 2 0 5 +20264 O-O 3 0 4 +20265 Nxd4 2 0 3 +20267 c3 3 0 4 +20269 Bb5 10 2 11 +20269 d4 6 1 9 +20270 d4 4 0 8 +20272 d4 5 1 9 +20272 Qf3 4 0 4 +20272 Nf3 3 0 4 +20272 a3 3 0 2 +20271 d3 5 0 7 +20271 d4 6 0 5 +20271 Nf3 4 0 4 +20271 Qf3 6 0 1 +20271 h3 3 1 1 +20273 d3 6 0 0 +20274 Nc3 4 0 1 +20276 Bxd7 17 5 21 +20276 Qe2 9 1 3 +20277 Bxc6 12 0 8 +20277 Nf3 6 0 6 +20278 Bxd7 1 1 3 +20279 Bb3 3 0 3 +20280 Ng3 3 0 2 +20283 d4 1 1 3 +20286 Nf3 4 1 6 +20285 Nf3 4 2 3 +20285 a3 3 0 2 +20288 Nbc3 0 0 5 +20291 d3 2 0 8 +20291 Ng3 4 0 2 +20294 Ng3 1 0 5 +20293 Bd3 5 0 1 +20292 Nxf6 3 2 5 +20296 e5 3 0 5 +20297 c3 3 0 3 +20298 Nxf7 5 0 6 +20299 Kxd1 3 1 4 +20301 Bd3 12 2 7 +20301 h3 1 0 7 +20301 c3 1 0 5 +20301 c4 4 1 0 +20303 d4 2 0 6 +20303 O-O 3 0 3 +20304 Be2 7 2 17 +20304 h3 7 0 14 +20305 Be2 4 0 3 +20306 Qxf3 4 0 1 +20312 Bxd7 9 1 8 +20312 Qe2 1 1 4 +20311 Bxc6 5 2 8 +20311 O-O 5 0 5 +20313 O-O 2 0 3 +20316 h3 0 0 5 +20315 d4 1 0 9 +20314 d4 9 0 8 +20314 Bb5 2 0 3 +20317 cxd5 6 2 5 +20323 Nc3 5 0 5 +20323 Bd3 4 2 1 +20321 Be2 24 3 22 +20321 h3 10 3 6 +20321 Bd3 4 0 6 +20321 Bb5 4 0 5 +20321 Nc3 3 0 4 +20321 c4 4 0 1 +20319 Nc3 28 3 36 +20319 Bb5 24 3 18 +20319 Bd3 14 0 21 +20319 c4 12 1 22 +20319 c3 10 0 13 +20319 Be2 5 0 4 +20319 Be3 3 1 2 +20320 Nc3 22 2 35 +20320 Bd3 12 0 19 +20320 c4 9 0 9 +20320 Bb5 6 1 4 +20320 Be2 5 0 4 +20320 Bg5 1 0 7 +20320 c3 5 0 2 +20320 h3 4 0 3 +20322 Nc3 6 2 4 +20322 Bd3 7 0 0 +20324 Bb3 2 1 2 +20329 Nc3 5 0 3 +20331 Nc3 3 0 4 +20333 Kxd1 3 0 5 +20337 f4 7 1 1 +20339 Ng3 37 5 33 +20339 Bd3 3 0 4 +20341 Nf3 6 1 9 +20340 Nxf6 14 0 11 +20340 Ng3 6 1 7 +20340 Ng5 3 0 4 +20343 Nxf3 4 1 5 +20344 Ng3 9 0 5 +20346 f3 2 0 3 +20348 Bxg6 4 0 2 +20347 Qxd3 52 2 53 +20347 cxd3 2 0 3 +20349 Bxf5 4 0 1 +20350 h4 19 1 16 +20350 Nf3 3 0 7 +20353 Bd3 17 0 23 +20353 Be2 9 0 10 +20353 c3 4 0 4 +20353 Nc3 3 0 4 +20353 Bg5 3 0 3 +20353 c4 3 0 2 +20353 h3 3 0 2 +20353 a3 3 2 0 +20357 h3 2 1 3 +20358 Nc3 3 0 2 +20359 Nf3 9 0 10 +20359 Bd3 4 0 4 +20361 f3 7 0 1 +20360 h4 8 0 1 +20360 f4 2 0 4 +20362 g4 3 0 3 +20363 g4 6 0 2 +20368 c3 7 1 4 +20372 Nf3 4 1 3 +20373 c3 5 0 2 +20375 Qd3 2 0 4 +20375 Bxd7 1 0 4 +20374 Nf3 2 0 3 +20376 c3 20 3 22 +20377 Bf4 2 2 4 +20377 c3 6 0 2 +20377 Ne2 3 0 4 +20377 Nf3 2 0 3 +20381 Nf3 5 0 0 +20379 Nf3 5 1 11 +20379 Bb5 1 1 4 +20380 Nf3 3 1 7 +20380 Bg5 5 0 4 +20386 Bd3 6 0 2 +20385 Be2 9 1 7 +20383 Bd3 9 0 4 +20383 Bb5 4 0 9 +20383 c3 3 0 2 +20384 Bd3 4 0 5 +20384 Nc3 4 0 4 +20392 Nc3 3 0 2 +20389 Nc3 16 1 17 +20389 Nf3 3 0 2 +20390 Bxc4 10 1 0 +20393 Nf3 3 2 1 +20396 Be2 6 1 5 +20396 d4 4 1 5 +20396 d3 2 0 6 +20399 Nf3 5 2 6 +20399 Bd3 5 0 5 +20402 Nf3 3 0 5 +20406 d4 4 0 1 +20404 d4 2 1 6 +20404 Bb5 2 0 3 +20405 d4 4 0 2 +20409 Nf3 5 0 5 +20407 Nf3 7 0 11 +20408 Nf3 5 0 5 +20412 Ng3 3 0 2 +20413 Ng3 8 0 4 +20419 Nf3 2 0 3 +20421 d3 4 0 1 +20422 Nxf7 7 0 3 +20422 Bxd3 4 0 1 +20424 Nxg6 13 0 0 +20427 Nc3 5 1 4 +20428 Qe2 5 0 2 +20429 Be2 3 0 4 +20437 f3 5 0 0 +20437 Be2 1 1 3 +20433 Bd3 3 0 9 +20433 Nc3 1 0 10 +20435 Bd3 0 0 5 +20434 Bd3 4 1 4 +20438 Nxf3 3 0 2 +20439 Qxd3 6 0 4 +20440 c3 1 0 5 +20448 dxe5 2 0 3 +20449 Nxe5 1 0 5 +20452 fxe5 4 1 3 +20455 cxd4 3 0 4 +20456 Bb5 2 1 2 +20457 Bb5 2 0 3 +20458 d4 5 0 0 +20458 d3 4 0 1 +20463 Bc4 4 0 1 +20464 b4 1 0 5 +20465 Bxc6 3 0 3 +20470 f4 3 0 2 +20473 Nf3 5 0 3 +20472 Nf3 5 0 4 +20472 f4 1 0 4 +20474 cxd4 4 0 4 +20480 Nf3 1 0 5 +20482 Nf3 3 0 2 +20484 bxc3 5 0 5 +20486 bxc3 3 1 4 +20487 Nf3 35 4 53 +20487 d4 12 3 21 +20487 d3 6 0 8 +20487 Qf3 3 1 7 +20487 c4 2 0 3 +20488 bxc3 6 1 4 +20489 Nf3 15 1 16 +20489 Bb5 9 3 10 +20489 d3 5 1 1 +20490 Nf3 6 0 7 +20496 Bb5 4 0 2 +20497 cxd5 4 1 4 +20498 Nc3 6 0 2 +20499 Nf3 17 1 19 +20499 Nc3 7 2 6 +20499 b3 6 0 3 +20499 d3 1 0 5 +20501 d4 2 0 3 +20502 d4 9 2 7 +20502 Nf3 6 1 6 +20502 b3 4 0 9 +20502 Nc3 7 0 2 +20503 Nxe2 2 0 4 +20504 Be2 1 0 4 +20505 Bc4 5 0 0 +20508 Nc3 5 0 1 +20509 Nc3 6 0 1 +20510 c3 10 1 6 +20510 Nf3 6 2 3 +20511 Nf3 2 0 3 +20512 d3 6 0 3 +20512 Nf3 8 1 0 +20512 d4 4 0 4 +20515 Nf3 1 0 4 +20518 Be2 15 0 12 +20518 h3 6 2 14 +20521 Be2 3 0 3 +20516 d4 16 2 18 +20516 Bc4 6 0 15 +20516 Be2 5 0 11 +20516 d3 8 0 7 +20519 d4 4 1 9 +20519 Be2 4 0 3 +20517 d4 7 0 16 +20517 Bc4 7 1 10 +20517 Be2 7 0 9 +20517 d3 3 0 6 +20520 d3 3 1 4 +20531 Bd2 6 0 1 +20528 Bd2 6 1 7 +20529 Bd2 5 0 6 +20527 Bd2 11 1 16 +20530 Bd2 4 0 2 +20534 Nf3 12 1 12 +20534 Bd2 10 0 12 +20534 Bc4 5 0 1 +20535 Bd2 3 1 5 +20533 Bd2 14 2 10 +20533 Nf3 10 3 11 +20533 Bc4 4 0 4 +20536 Bd2 6 0 1 +20544 Bc4 2 1 9 +20544 d4 4 0 2 +20544 d3 3 0 2 +20545 d3 4 0 1 +20549 Nf3 4 1 4 +20549 Be3 0 0 6 +20550 Bc4 3 0 5 +20552 Nf3 9 0 4 +20552 d3 1 0 5 +20553 Nf3 3 0 3 +20551 Nf3 7 2 7 +20551 d3 4 0 8 +20563 Be2 12 1 8 +20563 h3 3 0 4 +20563 d4 2 2 2 +20563 Bc4 3 0 2 +20562 d4 9 0 8 +20562 Bc4 6 0 5 +20562 Bb5 6 1 0 +20560 d4 14 1 14 +20560 Bc4 11 2 10 +20560 Be2 7 1 6 +20560 d3 4 0 3 +20560 Bb5 4 0 1 +20561 Bc4 15 2 11 +20561 d4 7 1 9 +20561 Be2 2 0 3 +20559 d4 40 1 9 +20559 Bc4 22 1 14 +20559 Bb5 9 1 3 +20559 Be2 5 0 7 +20564 Bc4 3 0 2 +20568 Be3 6 1 5 +20568 Nf3 6 0 2 +20574 Nf3 8 0 6 +20572 Nf3 15 1 11 +20572 Bc4 7 0 4 +20572 Bg5 5 0 3 +20572 f4 5 0 0 +20573 Nf3 11 2 12 +20573 Be3 3 0 5 +20573 Bf4 2 0 3 +20573 Bc4 0 0 5 +20571 Nf3 22 3 18 +20571 Be3 8 0 7 +20571 Bf4 5 0 0 +20581 Nf3 17 0 6 +20579 f3 29 0 12 +20579 d4 27 0 8 +20579 Nf3 7 0 11 +20579 h3 7 0 3 +20579 d3 6 1 3 +20580 Nf3 23 1 15 +20583 Nf3 10 1 4 +20582 Bf3 9 0 2 +20582 g3 5 0 1 +20586 Nf3 1 0 4 +20585 Nf3 4 0 2 +20584 Nf3 10 1 1 +20589 d4 5 0 1 +20587 d4 14 0 1 +20587 f3 8 0 4 +20588 d4 5 0 1 +20592 Qxe5 3 0 3 +20591 Bxe2 71 6 30 +20591 Ngxe2 13 0 6 +20603 Nf3 6 0 3 +20594 Nf3 45 3 30 +20594 d4 9 1 5 +20594 d3 4 0 8 +20596 Nf3 31 0 13 +20596 d4 8 1 4 +20602 Nf3 8 0 1 +20597 Bf3 19 1 9 +20597 g3 8 1 5 +20597 Nf3 3 0 4 +20598 Nf3 16 0 9 +20595 Nf3 29 0 20 +20595 d3 5 0 4 +20600 Nf3 12 0 1 +20599 Nf3 9 0 3 +20601 Nf3 9 0 2 +20604 d3 9 1 7 +20604 d4 8 0 2 +20604 g3 6 0 4 +20605 d4 7 1 0 +20605 d3 3 0 3 +20609 d4 3 0 2 +20607 d4 3 0 2 +20611 Qxe6 22 3 10 +20611 Nf3 4 0 4 +20613 Qxe6 4 0 7 +20613 Nf3 5 0 5 +20616 Nf3 5 0 1 +20614 Nf3 6 0 3 +20614 d3 3 0 2 +20612 Bxe2 23 2 6 +20612 Ngxe2 6 0 1 +20615 Qxe6 7 0 2 +20615 Nf3 6 0 2 +20623 Bxf3 4 2 0 +20620 Nc3 2 1 5 +20620 O-O 2 0 4 +20619 O-O 12 0 4 +20619 h3 2 0 4 +20621 O-O 4 0 3 +20622 O-O 4 0 2 +20624 Be2 1 0 4 +20625 O-O 1 0 4 +20627 d4 3 0 2 +20631 d4 5 0 1 +20634 d4 6 0 0 +20637 O-O 5 0 2 +20636 Nc3 2 1 4 +20636 O-O 4 1 1 +20636 d3 4 0 1 +20638 O-O 11 0 12 +20640 Nc3 4 0 2 +20639 O-O 6 0 6 +20641 O-O 5 0 3 +20644 Bc4 2 1 2 +20650 d4 2 1 3 +20653 Bf3 4 0 1 +20654 b3 3 1 3 +20656 Be2 5 0 3 +20656 Nc3 4 0 3 +20657 Nf3 3 0 2 +20661 b3 1 1 3 +20662 Bd2 3 1 2 +20671 Bxe2 5 0 3 +20672 Bf3 7 0 4 +20675 Bxc6 4 0 3 +20675 Nf3 1 0 4 +20677 Nc3 2 0 3 +20677 d3 1 0 4 +20682 Nf3 2 0 3 +20682 d4 1 0 4 +20689 Bb3 3 0 2 +20691 Qc1 4 0 2 +20693 d5 8 0 7 +20693 dxe5 3 1 3 +20698 O-O 3 0 5 +20699 dxe5 2 0 3 +20700 d3 6 0 1 +20700 Ng5 2 0 3 +20702 Bc4 8 1 5 +20702 e5 2 0 9 +20702 Bg5 5 1 1 +20702 Bd3 2 0 4 +20702 Be3 4 0 2 +20705 Qxf3 5 0 2 +20706 exd6 2 0 3 +20707 Nc3 2 0 3 +20708 Qf3 2 0 5 +20710 Bd3 3 0 2 +20710 Nc3 3 1 1 +20712 Bd3 3 1 3 +20716 O-O 3 1 2 +20717 d5 2 0 3 +20723 Nc3 3 0 5 +20724 Nf3 8 0 2 +20725 Qxe2 2 0 3 +20731 dxe5 3 0 3 +20731 Nf3 3 0 2 +20732 dxe5 15 0 7 +20732 d5 7 0 7 +20732 Bc4 4 0 2 +20733 Nf3 4 0 4 +20737 Qd2 5 0 0 +20738 Nf3 4 0 4 +20738 Qd2 4 2 0 +20739 Be3 3 0 6 +20739 Bc4 2 0 7 +20739 Bd3 4 0 3 +20739 Bg5 1 0 4 +20740 dxe5 0 0 5 +20741 Nf3 8 1 7 +20742 Kxd1 3 0 6 +20743 Nf3 3 0 9 +20743 Nc3 6 0 5 +20744 Nf3 14 0 4 +20744 Bc4 5 1 1 +20748 Kxd1 3 0 4 +20760 Bc4 5 0 0 +20762 Bd3 3 0 2 +20763 Bb5 3 0 3 +20764 Qxe5 4 0 13 +20765 Qxe5 5 0 3 +20766 Nf3 6 0 1 +20768 d3 3 1 1 +20770 Ng5 1 0 4 +20782 Nf3 2 1 2 +20784 Kd1 3 0 2 +20787 Nc3 2 0 4 +20785 Nc3 8 1 3 +20785 d3 2 0 4 +20786 Qxe5 8 0 1 +20786 Qg5 4 0 1 +20788 h3 5 0 1 +20791 Nf3 7 0 2 +20790 Nf3 9 0 10 +20793 Bd2 3 0 5 +20794 Bg5 6 0 2 +20797 Bg5 2 1 3 +20803 d3 4 1 2 +20804 d3 5 0 2 +20805 a4 5 1 1 +20806 Ng5 5 1 3 +20807 Ng5 6 0 2 +20809 d3 5 1 4 +20810 Nxf7 2 0 6 +20810 Bxf7 2 0 5 +20811 Qxf3 2 0 3 +20812 Qxf3 4 0 1 +20815 d4 1 2 2 +20816 exd5 29 1 27 +20827 d3 4 0 1 +20835 d3 3 0 2 +20834 h3 8 0 0 +20836 Qd1 4 1 8 +20837 d3 4 0 4 +20838 Qf3 3 0 2 +20839 d3 3 1 5 +20839 c3 7 0 1 +20839 Nc3 2 0 5 +20840 h3 4 0 5 +20841 exd5 5 0 1 +20846 h3 3 0 4 +20846 Bg5 4 0 2 +20847 exd5 5 0 5 +20848 h3 3 1 3 +20852 Ng5 3 0 2 +20853 Bg5 2 2 1 +20860 Nf3 4 0 3 +20859 Nf3 7 0 6 +20861 Bxd5 3 0 2 +20862 bxc3 8 0 4 +20864 Ng5 3 0 2 +20868 Bg5 4 1 1 +20867 Bg5 8 1 4 +20870 Nf3 2 0 4 +20871 Nf3 3 0 2 +20875 Bg5 3 0 2 +20876 Bxd5 3 0 3 +20877 exd5 3 1 1 +20878 exd5 7 0 2 +20881 exd5 40 2 40 +20886 Nxf7 1 0 6 +20886 d4 3 0 2 +20887 Qf3 4 0 1 +20889 Bb3 2 1 2 +20890 exd5 4 0 1 +20891 Nxe5 21 0 8 +20892 Nxe6 10 1 1 +20892 Bxe6 5 0 4 +20893 exd5 14 0 2 +20894 exd5 4 0 3 +20896 c3 2 0 3 +20897 d3 4 0 6 +20898 h3 2 1 3 +20900 exd5 7 0 4 +20901 fxe3 5 0 5 +20903 Bxf6 2 0 6 +20910 a3 4 0 1 +20909 Nf3 4 2 4 +20909 a3 3 0 4 +20912 exd5 10 0 0 +20911 a3 3 0 2 +20911 Nf3 2 0 3 +20916 Bxf6 5 0 1 +20919 h3 3 0 6 +20921 exd5 3 0 2 +20923 h3 6 0 1 +20925 exd5 4 0 1 +20926 exd5 4 1 3 +20928 exd5 7 0 2 +20929 exd5 3 0 4 +20930 Qf3 16 1 16 +20930 Bxd5 9 1 7 +20930 Nf3 7 0 6 +20930 Nc3 3 1 4 +20930 Qh5 5 0 2 +20930 Bb3 0 0 5 +20930 c3 4 0 1 +20932 Bd2 5 0 0 +20935 h3 5 0 1 +20940 Bb5 10 1 7 +20940 Bb3 5 0 5 +20941 exd5 3 0 4 +20942 Bxd5 2 0 4 +20943 Qxe5 5 0 2 +20945 Bb3 8 0 7 +20945 Bb5 2 0 5 +20947 Nf3 2 1 2 +20946 Nf3 5 0 2 +20951 d3 4 0 1 +20955 d3 4 0 2 +20958 d3 4 0 1 +20959 c3 4 0 4 +20962 d3 6 1 0 +20963 d3 5 0 1 +20963 h3 5 0 0 +20963 Nc3 2 1 2 +20966 Bb3 2 0 8 +20969 Nxd4 11 0 11 +20973 Bxc6 2 1 3 +20972 d4 6 0 2 +20976 Bxc6 2 1 2 +20977 Bxc6 4 0 2 +20975 d4 10 1 3 +20979 Nxd4 7 3 10 +20981 Nxd4 4 1 4 +20982 g5 5 0 0 +20985 Bxc6 7 2 0 +20984 d4 15 0 7 +20988 Nxd4 7 2 17 +20989 Qxd4 6 1 0 +20991 Nf3 4 1 0 +20992 Nf3 8 0 1 +20993 Qe2 6 0 0 +20995 Nxd4 5 0 0 +20996 dxe5 0 0 5 +20997 Nxd4 6 0 5 +21000 exd5 2 0 4 +21002 Be3 2 0 4 +21010 cxd4 3 0 3 +21012 Nc3 2 1 2 +21011 c3 2 0 4 +21011 Be3 2 0 4 +21020 Nxe5 11 1 9 +21020 O-O 6 0 10 +21020 d3 6 0 3 +21020 d4 4 0 2 +21020 c3 3 0 2 +21019 Nxe5 18 1 16 +21019 d3 9 2 14 +21019 O-O 10 2 11 +21019 c3 1 0 8 +21019 Nc3 4 0 4 +21019 h3 6 0 2 +21025 Nxd4 3 0 4 +21023 d3 8 1 6 +21023 c3 8 0 6 +21023 Re1 2 0 4 +21023 Nc3 2 0 4 +21024 c3 5 2 3 +21026 Ba4 1 0 4 +21022 c3 15 1 12 +21022 Bxc6 5 0 5 +21022 h3 4 0 5 +21028 d3 9 1 9 +21028 d4 6 0 1 +21028 O-O 5 0 2 +21030 O-O 4 0 4 +21030 d4 5 0 0 +21029 Ba4 12 0 2 +21031 h3 4 0 4 +21036 d4 3 0 2 +21038 Re1 3 0 2 +21039 Bxc6 4 0 1 +21042 Nxd4 0 0 5 +21043 Nxe5 2 0 3 +21044 Qxf3 3 2 1 +21045 c3 25 0 23 +21045 O-O 25 3 20 +21045 d3 28 0 14 +21045 Qf3 9 2 6 +21045 Bc4 3 0 3 +21045 Be2 5 0 0 +21047 Nxe5 10 1 10 +21047 d3 8 1 7 +21047 Nc3 5 0 1 +21046 d3 23 3 36 +21046 Nxe5 16 2 15 +21046 Nc3 9 0 13 +21046 O-O 5 1 4 +21046 Qe2 2 0 6 +21046 d4 3 0 4 +21051 d3 7 0 2 +21048 O-O 10 1 9 +21048 Bxc6 2 0 5 +21049 Bxc6 8 0 4 +21049 Ba4 2 2 2 +21050 d4 4 1 2 +21050 O-O 4 0 1 +21055 c3 3 0 6 +21055 Re1 4 0 1 +21055 Bxc6 3 0 2 +21057 d4 4 0 1 +21053 Re1 12 1 15 +21053 d4 7 2 6 +21056 Ba4 9 0 3 +21056 Bxc6 3 0 4 +21054 Re1 7 0 8 +21054 d4 4 0 2 +21054 h3 3 0 2 +21059 c3 7 0 6 +21059 O-O 7 0 4 +21059 h3 3 1 2 +21059 Bxc6 2 0 3 +21059 Be3 1 0 4 +21059 Bg5 3 0 2 +21062 Nxd4 6 0 2 +21061 Bxc6 9 0 2 +21060 h3 3 1 4 +21060 Bg5 4 0 2 +21060 Bxc6 2 0 4 +21064 d4 7 1 6 +21064 d3 4 0 5 +21064 O-O 4 0 3 +21064 c3 4 0 2 +21065 Ba4 5 1 3 +21065 Bc4 5 0 2 +21069 Ba4 19 0 15 +21069 Bc4 5 1 3 +21069 Bxc6 3 0 3 +21070 d4 5 0 5 +21070 h3 3 0 2 +21068 c3 9 0 10 +21068 d4 4 0 10 +21068 Re1 2 0 5 +21068 Nc3 1 0 5 +21068 d3 0 1 4 +21071 Ba4 10 0 3 +21073 d4 2 0 3 +21072 O-O 3 0 3 +21074 Ba4 6 1 2 +21074 Bxc6 3 1 5 +21074 Bc4 2 1 3 +21077 Nxd4 10 0 7 +21079 d3 2 1 2 +21079 Nxe5 4 0 1 +21080 d3 3 1 2 +21080 O-O 3 0 2 +21081 h3 2 1 3 +21084 d3 3 0 2 +21082 Bxc6 4 0 1 +21086 c3 10 0 4 +21086 Bxc6 2 0 3 +21086 Nc3 3 0 2 +21088 Nxd4 2 0 4 +21087 Ba4 4 0 3 +21092 Bg5 2 1 4 +21091 Nc3 4 0 1 +21097 O-O 13 1 9 +21097 c3 3 0 5 +21095 O-O 95 7 86 +21095 d3 29 0 27 +21095 Nc3 15 1 18 +21096 Bb3 86 4 52 +21098 O-O 6 0 1 +21098 d4 2 0 4 +21101 Nxe5 32 2 20 +21101 O-O 13 0 7 +21101 d4 8 0 7 +21101 d3 7 1 5 +21100 Nxe5 54 6 75 +21100 O-O 50 1 69 +21100 d3 42 6 49 +21100 Nc3 32 2 15 +21100 d4 26 1 19 +21100 h3 13 1 17 +21100 c3 8 0 8 +21100 b3 2 0 3 +21102 exd5 4 0 1 +21102 Nxe5 4 0 1 +21104 d4 41 4 60 +21104 O-O 40 6 45 +21104 d3 34 5 37 +21104 Nc3 11 0 18 +21104 h3 18 2 8 +21104 c3 6 0 5 +21105 d3 4 0 5 +21105 Bc4 7 0 2 +21105 d4 3 1 4 +21105 Bxc6 4 0 3 +21105 O-O 3 1 2 +21108 h3 5 0 0 +21106 d3 4 0 4 +21106 d4 2 0 3 +21107 Ba4 2 0 4 +21109 c3 14 2 8 +21109 Nc3 11 0 11 +21109 d4 5 0 10 +21109 Re1 9 2 2 +21109 d3 3 1 1 +21113 d4 4 0 2 +21111 h3 3 0 4 +21111 c3 2 0 4 +21110 Re1 10 0 7 +21110 Nc3 2 1 6 +21110 d3 2 0 5 +21112 Ba4 7 0 6 +21112 Bxc6 1 2 2 +21115 d4 9 0 4 +21116 O-O 4 0 1 +21117 Ba4 4 0 1 +21119 Nc3 4 0 3 +21119 Bxc6 1 1 4 +21123 d5 15 2 7 +21123 dxe5 4 0 8 +21123 Bxc6 6 0 4 +21123 O-O 6 0 2 +21123 Nc3 4 0 1 +21124 Bxc6 14 0 2 +21124 Ba4 7 2 1 +21122 Nxd4 37 4 33 +21122 Qxd4 6 2 6 +21126 O-O 14 2 17 +21126 c3 18 0 12 +21126 Bc4 3 1 4 +21127 d3 5 0 11 +21127 O-O 4 2 2 +21128 Ba4 8 1 15 +21129 Nxe5 2 0 3 +21129 exf5 1 0 4 +21130 Nxe4 3 2 2 +21131 dxe4 3 0 5 +21133 O-O 2 0 3 +21134 Nxe5 3 0 2 +21135 Nxe5 2 0 3 +21136 d3 2 0 4 +21136 d4 2 0 3 +21138 d3 51 7 51 +21138 Ng5 9 0 12 +21138 O-O 5 0 14 +21138 h3 1 2 2 +21141 d3 5 2 4 +21139 d3 12 1 14 +21139 h3 10 1 4 +21139 O-O 2 0 4 +21140 d3 6 0 3 +21144 d3 1 0 4 +21143 d4 2 0 5 +21143 O-O 3 0 4 +21143 Qf3 0 0 5 +21146 d4 2 0 4 +21147 Nc3 18 3 38 +21147 d3 22 2 23 +21147 c3 18 1 17 +21147 Re1 5 0 14 +21147 h3 2 0 7 +21147 Ng5 4 0 5 +21147 d4 2 0 3 +21150 c3 1 0 5 +21148 c3 21 1 12 +21148 h3 15 1 13 +21148 d3 10 4 9 +21148 Nc3 4 0 4 +21148 Re1 2 0 3 +21149 c3 6 0 3 +21149 Nc3 2 0 3 +21151 d3 2 0 5 +21155 O-O 2 0 4 +21155 c3 2 1 3 +21154 c3 34 3 40 +21157 d4 88 8 88 +21157 d3 32 2 20 +21157 O-O 27 3 17 +21157 Ng5 4 3 5 +21157 Qe2 4 0 5 +21157 b4 2 0 3 +21160 d4 3 0 6 +21160 O-O 4 1 0 +21158 d4 54 3 32 +21158 O-O 12 2 16 +21158 h3 13 0 11 +21158 d3 2 1 3 +21159 d4 18 0 9 +21159 O-O 4 0 3 +21166 Ng5 5 0 0 +21163 Ng5 34 3 42 +21163 Bg5 15 0 21 +21163 Nc3 11 1 22 +21163 O-O 9 0 9 +21163 Be3 7 1 4 +21163 h3 6 1 4 +21163 c3 2 0 6 +21165 Ng5 36 3 36 +21165 h3 5 0 6 +21165 Bg5 3 0 5 +21165 Nc3 2 0 6 +21165 O-O 3 0 3 +21164 Nc3 21 1 27 +21164 O-O 14 1 16 +21164 c3 6 0 11 +21164 Be3 6 1 6 +21164 Bb5 2 1 6 +21164 a3 5 0 3 +21164 h3 2 0 3 +21168 O-O 18 1 18 +21168 Ng5 6 1 7 +21168 c3 7 0 6 +21170 d3 6 0 12 +21171 Re1 5 1 5 +21171 d3 6 0 2 +21171 Nc3 4 0 3 +21171 c3 4 0 2 +21172 O-O 7 1 4 +21172 d4 6 1 1 +21172 d3 3 0 2 +21174 h3 2 0 3 +21178 dxe5 4 0 1 +21177 Nxd4 31 3 20 +21179 Nxe5 2 0 3 +21180 d3 5 0 3 +21181 d3 10 0 15 +21181 O-O 12 2 10 +21181 c3 15 0 6 +21181 Qf3 10 0 11 +21182 Nxf7 3 0 28 +21182 Bxf7 8 1 17 +21182 Ng4 6 1 3 +21182 Nf3 3 0 4 +21182 O-O 3 0 3 +21183 Qxf3 18 1 8 +21184 c3 3 0 2 +21185 Qxf3 28 2 13 +21186 Qxf3 6 0 11 +21188 d3 12 1 11 +21188 O-O 7 0 1 +21188 a3 3 1 2 +21187 d3 17 3 22 +21187 O-O 17 1 14 +21187 Ng5 2 1 2 +21192 O-O 3 0 7 +21192 d4 3 0 2 +21189 Nxe4 8 1 16 +21189 Bxf7 6 0 5 +21190 d3 7 0 4 +21190 h3 4 0 3 +21190 Ng5 5 0 1 +21190 O-O 2 1 3 +21191 O-O 6 0 3 +21191 d3 4 0 3 +21191 d4 1 0 4 +21197 Nxf7 21 1 26 +21197 Bxf7 7 0 1 +21199 Nxf7 3 0 4 +21198 Bxf7 14 0 2 +21198 Nxf7 5 0 1 +21196 exd5 226 14 240 +21196 Bxd5 1 0 4 +21196 Bb5 1 1 3 +21200 Nxf7 5 0 2 +21201 c3 3 1 11 +21201 Re1 2 1 3 +21202 d4 4 0 3 +21202 c3 1 0 5 +21202 Re1 2 0 3 +21203 Re1 4 0 3 +21205 exd5 6 0 0 +21206 c3 3 0 3 +21208 O-O 7 0 0 +21209 exd5 6 0 4 +21216 c3 4 0 2 +21211 O-O 13 2 18 +21211 Ng5 14 2 14 +21211 Nc3 7 0 6 +21211 h3 6 0 7 +21211 c3 8 0 5 +21211 a3 6 0 2 +21211 Bg5 4 0 4 +21213 Ng5 10 0 3 +21213 Nc3 6 1 5 +21213 O-O 3 0 7 +21212 exd5 32 2 25 +21215 h3 7 0 3 +21215 Ng5 6 0 1 +21214 O-O 11 0 0 +21214 c3 2 1 8 +21214 Nc3 6 1 2 +21220 Nxe5 1 0 5 +21219 Nxd4 13 3 10 +21219 O-O 6 1 2 +21219 Ng5 2 1 3 +21219 e5 4 0 1 +21221 d3 1 0 6 +21224 Nxd4 1 0 5 +21224 c3 2 0 3 +21226 Bb3 5 0 0 +21227 Bb3 5 0 1 +21229 Bb3 3 0 2 +21231 Bd5 8 0 0 +21230 Nxd4 8 0 4 +21235 Bxe6 3 0 2 +21234 h3 2 1 4 +21234 d3 4 0 3 +21234 Nxe5 3 0 2 +21241 Bxe6 6 0 1 +21240 h3 4 0 2 +21245 Bxe6 5 0 3 +21252 Bxe6 2 0 3 +21250 h3 12 1 9 +21251 Ng5 5 0 8 +21257 dxe5 9 0 9 +21257 h3 6 1 1 +21257 Bxf7 2 1 4 +21261 dxe5 3 0 2 +21260 Nxd4 1 1 3 +21256 Nxd4 26 3 13 +21256 Ng5 1 0 5 +21256 c3 4 0 1 +21264 Nc3 3 0 2 +21263 d3 4 0 2 +21269 Nxd4 3 1 3 +21270 Ng5 4 0 5 +21271 Ng5 2 0 4 +21271 Nxe5 2 0 4 +21276 a3 5 0 3 +21276 Nd5 3 0 2 +21273 d3 5 1 7 +21273 O-O 4 0 2 +21272 d3 31 3 15 +21272 d4 21 3 15 +21272 O-O 6 0 5 +21272 a3 2 0 5 +21272 Nd5 5 0 2 +21272 h3 4 0 1 +21275 d4 3 0 4 +21275 d3 2 0 3 +21275 a3 4 0 1 +21274 d3 5 0 6 +21274 d4 6 0 1 +21274 h3 2 0 3 +21278 c3 14 2 10 +21278 Nc3 5 0 1 +21277 Nc3 15 3 19 +21277 d3 17 3 9 +21277 Re1 13 1 7 +21277 c3 11 0 5 +21277 d4 4 1 8 +21279 c3 5 0 0 +21279 h3 3 0 2 +21282 Nc3 3 0 2 +21285 Bb2 1 0 4 +21287 d4 10 2 10 +21287 O-O 4 0 5 +21286 d4 15 2 9 +21286 d3 14 0 12 +21286 O-O 14 1 8 +21286 Qb3 8 1 6 +21286 Qe2 9 0 5 +21289 d4 4 0 2 +21288 d4 8 1 3 +21291 Nc3 6 0 2 +21291 c3 3 0 3 +21291 h3 1 0 4 +21290 Nc3 7 0 12 +21290 Bb5 9 1 8 +21290 h3 7 1 7 +21290 O-O 7 1 3 +21290 c3 3 0 3 +21290 Be3 2 0 4 +21290 a3 4 1 1 +21293 Nc3 0 1 5 +21297 dxe5 4 0 2 +21298 dxe5 9 0 0 +21299 Nxd4 6 0 0 +21296 dxe5 7 0 4 +21296 d5 7 1 0 +21295 dxe5 7 1 4 +21295 d5 7 0 3 +21294 Nxd4 120 9 87 +21294 c3 8 0 6 +21294 O-O 6 0 3 +21300 d3 4 0 1 +21304 dxc3 6 0 5 +21304 bxc3 2 2 4 +21307 dxc3 8 2 6 +21309 bxc3 6 0 7 +21312 bxc3 5 0 2 +21311 Nxd4 3 2 4 +21313 Bxc6 11 1 7 +21313 O-O 5 0 3 +21313 d3 2 1 2 +21315 Bxc6 4 1 5 +21314 Bxc6 7 1 7 +21319 d3 12 3 16 +21319 O-O 8 0 4 +21319 h3 6 1 3 +21319 Ng5 2 0 3 +21322 O-O 4 0 1 +21320 d3 9 1 13 +21320 O-O 7 1 4 +21320 h3 4 0 1 +21321 d3 4 0 4 +21321 O-O 2 0 3 +21323 O-O 3 0 2 +21324 Nxb6 12 1 2 +21325 d4 2 1 3 +21327 Kxf2 3 0 5 +21326 d4 23 1 8 +21328 b4 3 0 3 +21330 Be2 2 0 5 +21330 h3 1 0 4 +21333 Nb5 3 0 3 +21335 Nxd4 3 0 4 +21339 d3 3 0 5 +21339 Bxc6 2 0 3 +21338 Bxc6 3 0 6 +21338 O-O 2 1 2 +21340 Nxd4 1 0 4 +21337 Bxc6 10 0 8 +21337 Ba4 4 0 1 +21336 Bxc6 7 1 6 +21336 d4 7 1 3 +21336 O-O 4 0 1 +21344 d3 6 0 2 +21344 Nd5 1 0 4 +21342 h3 17 0 6 +21342 d3 10 1 9 +21342 O-O 4 1 10 +21342 Ng5 2 1 4 +21342 Na4 3 0 3 +21346 O-O 4 0 4 +21346 d3 3 0 5 +21347 Nxe4 4 2 6 +21345 d3 5 0 4 +21343 d3 11 1 5 +21343 d4 1 0 7 +21343 O-O 2 0 5 +21349 d4 8 0 11 +21350 exd5 7 0 3 +21353 Bd2 3 0 6 +21353 a3 3 0 2 +21352 Be2 4 0 3 +21352 h3 2 1 3 +21354 exd5 3 1 5 +21358 d5 7 0 5 +21358 dxe5 8 1 1 +21361 Nxd4 3 0 3 +21360 dxe5 1 0 4 +21359 dxe5 8 0 2 +21359 d5 4 0 2 +21357 Nxd4 80 10 75 +21364 d3 3 0 2 +21365 Nxd4 10 0 1 +21366 Bxc6 6 0 1 +21366 O-O 3 0 3 +21366 d3 2 0 3 +21368 h3 5 0 2 +21369 O-O 3 0 2 +21375 dxe5 3 0 3 +21374 Nxd4 9 1 12 +21378 c4 4 1 6 +21380 b4 1 0 5 +21380 h3 3 0 2 +21382 exd5 1 1 4 +21381 b4 4 0 3 +21383 exd5 5 0 2 +21385 d3 3 1 1 +21385 Nc3 2 0 3 +21386 Bb5 15 1 3 +21388 Bb5 6 0 5 +21392 cxd4 25 1 35 +21398 exd5 3 1 6 +21399 Be2 4 0 1 +21401 d5 4 0 6 +21401 dxe5 4 0 2 +21402 d5 6 0 3 +21402 dxe5 4 0 2 +21400 e5 17 3 18 +21400 cxd4 9 1 14 +21400 Nxd4 0 1 6 +21404 Nxe5 2 0 3 +21407 cxd4 6 0 9 +21413 Be2 10 0 5 +21414 Na4 6 0 1 +21417 Bxf6 2 0 3 +21417 Nc3 1 0 4 +21419 Bd2 5 0 2 +21418 Be2 3 0 4 +21421 Nc3 5 0 3 +21422 Be2 6 0 1 +21423 d5 6 0 4 +21425 Nc3 1 0 4 +21425 c4 3 1 1 +21428 Nxd4 6 0 0 +21432 Bd3 7 0 5 +21433 Qxd4 37 4 25 +21434 Nxd4 10 0 7 +21435 Nxe5 3 1 4 +21436 Qxd8 8 1 4 +21437 Nc3 4 2 2 +21439 c4 6 1 3 +21439 Nc3 6 0 3 +21439 Bb5 4 0 4 +21441 Nxd4 4 0 6 +21446 exd6 4 0 2 +21445 Nxe5 7 1 9 +21444 Qxd8 24 3 7 +21447 O-O 4 0 1 +21453 c3 5 0 4 +21449 c3 12 0 13 +21449 O-O 3 0 3 +21451 c3 9 0 4 +21448 Ng5 7 0 5 +21448 e5 3 1 7 +21448 O-O 4 0 4 +21452 c3 4 2 3 +21450 O-O 4 0 7 +21450 c3 4 0 3 +21450 Nxd4 4 0 1 +21464 c3 7 0 5 +21455 Nxc6 89 11 117 +21455 Be3 46 2 40 +21455 c3 9 2 16 +21455 Nb3 7 0 4 +21455 Nf5 3 0 6 +21460 Nc3 9 2 4 +21460 Bf4 8 1 5 +21460 f4 3 1 3 +21456 Nxc6 41 3 42 +21456 Nc3 14 0 27 +21456 f3 3 0 6 +21456 Bg5 3 0 4 +21459 Nxc6 2 0 16 +21459 Nc3 8 1 5 +21459 Bc4 4 0 5 +21459 Bg5 2 0 3 +21454 Qxd4 331 37 301 +21465 Nxc6 2 0 5 +21457 Nxc6 26 3 22 +21457 Be3 6 2 12 +21457 c3 2 0 4 +21461 Nxc6 6 0 2 +21461 Nc3 2 0 4 +21463 Nxc6 2 0 6 +21462 Nxc6 8 1 3 +21458 Nxc6 18 3 18 +21458 Bb5 3 1 6 +21466 Bc4 12 0 2 +21469 Nxd4 4 0 2 +21471 Nxe5 5 0 1 +21477 d3 6 1 2 +21479 exd5 16 1 19 +21483 Nxd4 1 0 5 +21485 Nxf7 3 0 2 +21484 Qf3 5 0 3 +21487 Bb3 5 0 3 +21488 Bb3 4 0 6 +21490 exd5 3 0 2 +21491 Nxe5 11 0 2 +21491 O-O 3 0 2 +21492 exd5 4 0 1 +21493 dxc3 6 0 2 +21494 d3 2 2 2 +21494 O-O 3 0 2 +21495 exd5 2 0 5 +21496 dxc3 5 0 5 +21497 dxc3 5 0 7 +21498 bxc3 25 1 16 +21499 Bd2 2 1 5 +21503 Nxd4 4 0 1 +21505 O-O 6 0 3 +21505 Bxc6 1 0 6 +21506 Bxc6 11 1 2 +21504 Bxc6 2 1 6 +21504 d4 5 0 2 +21504 O-O 3 1 2 +21513 d3 5 0 3 +21513 Ng5 3 0 2 +21510 d3 14 1 8 +21510 O-O 7 0 8 +21510 h3 5 0 1 +21510 Ng5 2 1 2 +21512 Nxe4 3 1 12 +21511 Ng5 6 2 0 +21511 h3 2 0 3 +21517 d4 2 1 2 +21519 Bg5 2 0 3 +21524 Nxd4 3 0 2 +21523 dxe5 3 0 2 +21521 Nxd4 47 3 26 +21525 exd5 5 0 0 +21528 Nxd5 10 0 10 +21528 Nxe5 4 0 4 +21531 Bxe6 2 0 3 +21530 O-O 1 1 3 +21534 Nxd4 8 0 6 +21534 Qxd4 4 0 1 +21535 Bc4 6 0 5 +21537 Nc3 4 1 3 +21542 Nc6 7 0 0 +21540 Qxe4 11 1 7 +21539 d3 22 3 9 +21539 f3 4 0 2 +21539 Nf3 2 0 3 +21541 Qxe4 10 0 4 +21548 Qe2 16 1 20 +21548 Be2 13 2 5 +21549 Qe2 10 0 3 +21549 Be2 6 0 5 +21551 Qe2 7 1 7 +21551 Bd3 8 1 4 +21551 Qf3 3 0 4 +21550 Nf3 28 4 23 +21550 Nd3 6 0 4 +21550 Nc4 3 0 5 +21556 Qe2 21 2 28 +21556 d4 14 3 10 +21556 d3 3 1 4 +21556 Bc4 1 0 6 +21556 Nc3 3 0 2 +21558 d4 4 1 8 +21560 c3 3 0 2 +21563 Bxf6 4 0 1 +21565 exd5 3 0 3 +21567 exd5 3 0 2 +21571 Nxe5 2 1 2 +21571 Be2 0 0 5 +21578 Qd3 2 0 3 +21580 Qxd4 3 0 2 +21581 d3 11 1 4 +21581 O-O 9 0 4 +21582 Nc3 5 0 2 +21582 c3 4 0 2 +21582 h3 4 0 2 +21583 Nc3 1 0 4 +21583 c3 3 0 2 +21585 d4 1 0 4 +21586 Nc3 4 1 4 +21586 O-O 7 0 2 +21594 d3 7 1 4 +21594 O-O 9 0 2 +21596 Bb3 5 0 0 +21595 d3 1 0 4 +21597 Be2 3 1 5 +21600 dxe5 7 0 0 +21599 Nxd4 17 0 6 +21599 Qxd4 8 0 4 +21602 cxd4 6 0 4 +21606 Nxe5 1 0 5 +21607 dxe5 5 0 1 +21609 Be3 11 1 12 +21609 c3 4 0 5 +21609 Nf3 2 0 6 +21612 Qxf6 5 1 3 +21611 Nxd4 7 1 2 +21613 Bb5 5 0 4 +21616 Bxe6 6 0 1 +21617 Kxd1 1 0 5 +21621 d3 2 0 3 +21623 d3 3 0 2 +21620 Bc4 2 0 4 +21619 b3 4 0 2 +21619 Be2 5 0 1 +21619 Bb5 3 0 2 +21619 d3 4 0 1 +21625 c3 5 0 5 +21631 Bb3 21 2 5 +21635 Bb3 3 1 4 +21640 d4 23 2 20 +21640 d3 25 1 9 +21640 O-O 14 3 12 +21640 c3 16 0 4 +21640 Nc3 5 1 8 +21641 Qxc4 5 0 0 +21642 bxc4 3 1 1 +21643 dxc4 5 0 2 +21644 d4 1 1 5 +21644 d3 4 0 1 +21647 Nc3 0 0 5 +21647 Re1 4 0 1 +21649 d4 4 1 2 +21649 Qe2 2 0 3 +21649 d3 2 0 3 +21651 h3 4 0 4 +21651 Nc3 5 0 3 +21652 Nc3 3 0 3 +21652 h3 3 0 2 +21654 Qxd4 15 0 16 +21654 Nxd4 15 0 14 +21658 d3 5 0 4 +21658 Nc3 2 0 3 +21661 Qxf3 10 0 9 +21662 Nxe5 3 0 2 +21660 h3 7 0 5 +21660 d3 4 0 2 +21659 h3 11 0 7 +21665 Qxf3 7 0 4 +21664 Nc3 5 2 3 +21667 Be2 5 0 2 +21668 Qxf3 5 0 5 +21675 Qxf3 6 0 5 +21673 h3 5 0 0 +21676 h3 4 0 1 +21674 h3 2 0 3 +21678 Qxf3 14 1 8 +21678 Bxf7 4 0 1 +21682 dxe5 3 1 1 +21679 Qxd4 7 0 6 +21679 Bxf7 4 0 2 +21684 g4 27 0 29 +21684 d3 8 0 12 +21684 O-O 8 1 9 +21684 Nc3 5 0 3 +21684 Be2 2 2 1 +21683 Qxf3 87 8 53 +21688 Bxe6 2 0 4 +21685 Nxe5 5 0 1 +21687 d3 3 0 2 +21690 Bxe6 3 0 2 +21689 d3 3 0 2 +21699 Bxe6 5 0 5 +21698 h3 9 0 2 +21697 Bd5 2 0 4 +21704 dxe5 3 0 4 +21704 Bxf7 5 0 1 +21703 Nxd4 17 2 17 +21705 dxe5 2 2 3 +21710 Bxe6 6 0 1 +21707 d3 2 0 5 +21707 O-O 1 0 4 +21708 d3 3 0 2 +21712 Bxe6 11 0 14 +21713 exd5 23 0 2 +21714 Nxf7 5 0 0 +21715 Ng5 5 0 2 +21720 d4 2 0 4 +21727 Bb3 5 0 0 +21728 d3 2 0 7 +21729 c3 1 0 5 +21739 Bb3 5 0 1 +21737 exd5 5 0 4 +21742 Nc3 3 0 3 +21745 d3 8 1 10 +21745 d4 6 0 3 +21745 O-O 4 0 3 +21746 c3 5 0 0 +21748 d4 8 1 11 +21748 d3 8 2 3 +21748 h3 2 0 4 +21749 d4 3 1 1 +21747 d4 9 0 8 +21747 d3 6 0 6 +21747 O-O 4 1 5 +21754 h3 5 1 0 +21753 Nc3 12 2 4 +21753 d3 5 0 7 +21753 Re1 4 0 4 +21753 d4 3 0 2 +21759 d3 10 0 11 +21759 Qe2 4 0 3 +21759 O-O 5 0 1 +21760 d4 2 2 2 +21762 Nc3 3 0 9 +21762 h3 5 0 4 +21762 O-O 7 0 1 +21762 Be3 2 0 3 +21770 dxe5 7 0 3 +21768 dxe5 8 0 4 +21768 d5 2 0 3 +21769 dxe5 6 0 4 +21773 dxe5 5 0 0 +21771 dxe5 4 0 6 +21772 dxe5 3 0 2 +21767 Nxd4 36 2 31 +21767 Qxd4 12 2 22 +21774 dxe5 3 0 2 +21775 Nc3 9 0 5 +21775 d3 9 0 4 +21778 Nxd4 7 0 5 +21779 dxe5 2 0 3 +21781 Nxd4 5 0 3 +21781 Qxd4 5 0 0 +21782 Qxf3 5 0 3 +21785 h3 2 0 3 +21783 h3 2 0 3 +21787 Bxf3 13 2 18 +21789 h3 5 0 2 +21788 h3 4 0 2 +21788 d3 3 1 1 +21791 g4 4 1 2 +21791 Bc4 3 1 2 +21790 Qxf3 24 1 4 +21792 d3 3 0 6 +21792 d4 3 0 3 +21792 Bxc6 1 0 5 +21794 Bxe6 3 0 4 +21796 Nxd4 7 0 2 +21799 Ng5 2 0 4 +21799 O-O 3 0 2 +21800 d3 7 0 4 +21806 dxe5 5 0 0 +21805 Nxd4 14 3 11 +21805 Qxd4 4 1 1 +21808 O-O 2 0 3 +21811 Nxd4 9 1 4 +21811 Qxd4 6 0 1 +21814 Nxe4 5 0 3 +21816 d3 2 0 3 +21817 Nxd4 2 1 2 +21818 cxd4 7 0 6 +21819 Bxf3 5 0 3 +21822 Qxf3 4 0 2 +21821 cxd4 7 0 3 +21824 cxd4 9 0 9 +21831 Bxf3 4 1 0 +21829 Nc3 4 0 2 +21828 Nc3 4 0 1 +21832 Qxd8 10 1 3 +21833 Qxf3 3 0 3 +21834 Bxf3 16 0 5 +21835 Nxd4 5 0 6 +21838 Qxf3 2 1 3 +21837 Nc3 4 0 1 +21840 Qxf3 78 2 23 +21840 gxf3 19 0 11 +21842 exd6 2 1 2 +21841 Qxd8 20 2 4 +21844 g4 2 0 3 +21843 Qxf3 4 0 1 +21846 Bxc6 3 0 2 +21850 a3 4 0 1 +21847 Bb5 5 0 4 +21847 Nc3 6 1 2 +21847 c4 6 0 1 +21848 Nxd4 5 1 2 +21852 Nxe5 9 1 8 +21851 Qxd8 12 1 8 +21854 dxe5 3 0 2 +21856 Bc4 12 0 4 +21856 Nc3 5 1 4 +21857 Nxd4 6 0 0 +21858 exd6 8 0 3 +21858 Bd3 1 1 3 +21859 Qxd8 7 0 2 +21862 Qxd8 5 0 0 +21863 c3 3 0 3 +21870 Bd3 6 1 7 +21870 Nc3 9 0 4 +21870 Bc4 9 0 3 +21870 c4 5 0 3 +21869 Nc3 20 0 10 +21869 Bc4 12 1 14 +21869 Bd3 4 3 6 +21869 c4 2 0 3 +21871 Nxc6 7 1 10 +21871 Nc3 9 1 4 +21871 Bb5 3 2 2 +21872 Nc3 7 1 8 +21872 Bd3 2 0 4 +21872 Bc4 3 0 2 +21867 Nc3 94 8 77 +21867 Bd3 25 3 25 +21867 Bg5 15 2 12 +21867 f3 3 1 2 +21867 Qf3 0 0 5 +21867 Qe2 1 0 4 +21876 Nc3 4 1 0 +21875 Nc3 11 0 2 +21877 Bc4 3 0 2 +21868 Nf3 37 0 21 +21868 Bb5 18 2 10 +21868 Nb3 11 1 9 +21868 Nf5 5 0 5 +21878 exd5 3 0 2 +21873 Nc3 9 0 0 +21873 Bc4 4 0 5 +21874 Nc3 7 1 5 +21874 Bc4 4 0 2 +21882 Bb5 14 2 10 +21882 Qc3 2 1 5 +21882 Qa4 1 0 4 +21882 Qd5 0 1 4 +21882 Qd1 1 1 3 +21883 e5 7 3 3 +21883 Bg5 4 0 2 +21883 Nc3 4 0 2 +21884 Qd1 3 0 2 +21889 Bc4 5 1 4 +21890 Ng5 5 0 2 +21894 Qxd8 5 0 2 +21893 Bc4 7 1 3 +21893 Nxe5 8 0 2 +21893 Bg5 5 1 0 +21893 Nc3 2 0 3 +21900 Bc4 7 0 2 +21901 Bc4 6 0 3 +21906 Bg5 3 0 3 +21905 c3 5 0 7 +21905 Bg5 4 1 4 +21907 Be2 2 2 2 +21909 dxe4 2 0 3 +21911 d3 3 0 2 +21914 exf5 10 0 3 +21915 exd5 3 1 1 +21916 Nf3 4 0 1 +21919 Nxg6 7 0 0 +21921 Bb3 1 0 4 +21922 d4 3 0 5 +21922 Bc4 3 0 4 +21923 d3 8 0 6 +21926 d3 2 0 7 +21927 d3 5 0 5 +21930 Qxe5 15 0 2 +21929 Qxe5 26 0 4 +21931 Qxd8 3 0 3 +21936 b4 5 0 3 +21937 h3 2 0 3 +21938 Qd1 4 0 1 +21939 d3 2 0 3 +21940 b4 2 0 4 +21941 h3 2 0 3 +21944 Qd3 2 1 10 +21947 Qxe5 2 1 2 +21946 Bxc6 4 1 3 +21948 d3 2 1 3 +21950 Qd3 3 1 1 +21951 Qf3 5 0 2 +21952 Qf3 7 0 5 +21959 Nc3 2 1 3 +21963 Qxf7 7 0 0 +21960 d3 29 2 52 +21960 c3 27 2 39 +21960 Ne2 14 0 7 +21960 Nc3 8 0 11 +21960 Qb3 3 1 13 +21960 Nh3 2 0 4 +21960 g4 0 0 5 +21962 d3 3 2 3 +21964 d3 1 0 4 +21961 c3 4 0 6 +21961 Qxf6 2 1 7 +21961 d3 2 1 4 +21961 Nc3 3 0 2 +21967 b4 5 0 3 +21972 Qg3 5 0 3 +21976 Qxg7 5 0 3 +21978 Qg3 5 0 7 +21980 Qg3 2 0 3 +21981 Ne2 5 1 5 +21983 e5 5 0 3 +21983 d3 5 0 2 +21983 f3 1 0 4 +21985 Nxf3 3 0 5 +21986 Qxe5 2 1 2 +21987 Nxe5 7 1 5 +21989 Qf3 4 0 2 +21990 Qf3 4 1 6 +21993 Qf3 3 0 2 +21994 Qf3 4 0 2 +21995 Qh4 1 0 4 +21998 d3 15 0 33 +21998 Nc3 3 1 7 +21998 h3 1 0 7 +21998 Qb3 4 0 2 +21999 Nc3 4 0 2 +21999 d3 4 0 1 +22003 Qxg8 5 0 0 +22005 d3 8 0 0 +22004 Ne2 8 0 1 +22004 Be2 3 0 2 +22006 h3 1 1 3 +22008 Bd2 3 1 2 +22011 Bxf6 3 0 2 +22014 h3 3 0 2 +22013 h3 9 0 8 +22016 h3 5 0 0 +22018 O-O 3 0 2 +22021 Be2 5 0 0 +22025 fxe3 5 0 1 +22028 Bd2 3 0 4 +22029 Kxd1 1 0 4 +22032 Nf3 3 0 2 +22033 Nc3 1 0 4 +22036 Bc4 8 0 1 +22045 Qxf3 4 0 4 +22046 cxd4 12 0 2 +22047 Bxb5 5 0 3 +22048 cxd4 5 0 0 +22049 Qxf3 4 0 4 +22050 e5 1 0 7 +22053 Bd2 4 1 0 +22056 Nc3 6 1 0 +22058 Nf3 27 2 7 +22058 a3 7 0 3 +22058 Nc3 6 0 3 +22058 Bc4 6 2 1 +22060 O-O 6 1 2 +22062 O-O 2 0 3 +22059 e5 4 1 4 +22061 O-O 8 0 2 +22065 Qxd4 6 0 6 +22067 O-O 7 0 4 +22076 Nc3 0 0 6 +22076 Nf3 1 0 4 +22074 Nc3 5 0 3 +22074 Nf3 2 0 3 +22075 Bb5 2 0 6 +22077 Qxb4 0 0 5 +22078 Nc3 12 1 23 +22079 Nc3 2 0 10 +22083 c3 4 2 4 +22081 Nf3 6 1 9 +22081 Bb5 6 0 7 +22081 Nc3 3 0 6 +22080 Nc3 13 4 23 +22080 Bg5 6 1 16 +22080 Bd3 10 0 13 +22080 f3 3 0 4 +22084 Nc3 0 0 5 +22082 Nc3 3 0 13 +22082 Bb5 3 2 10 +22082 Nf3 2 0 9 +22090 Qd3 4 1 5 +22090 Qf5 1 1 5 +22090 Qb3 1 0 4 +22097 c3 2 0 5 +22095 Nc3 2 1 4 +22092 Nc3 17 0 18 +22092 Bb5 6 0 6 +22092 e5 3 1 3 +22092 Nf3 2 0 3 +22096 Nc3 5 0 5 +22094 Nc3 9 1 13 +22094 Bb5 1 0 6 +22093 Nc3 15 0 8 +22093 Bb5 7 0 6 +22093 Nf3 2 0 3 +22104 Qe3 5 0 0 +22106 Nf3 5 0 2 +22107 Bc4 5 0 2 +22110 e5 4 0 1 +22111 Nf3 5 0 7 +22112 Nf3 2 0 3 +22113 Nf3 1 0 4 +22113 cxd4 2 0 3 +22119 bxc3 15 0 11 +22119 Bxf7 5 0 2 +22119 Nxc3 4 0 1 +22122 Nxc3 5 0 1 +22122 Nf3 3 0 2 +22122 Bxf7 4 0 1 +22118 Nf3 17 0 8 +22118 Nxc3 7 1 6 +22118 Qb3 4 1 3 +22117 Nf3 20 0 2 +22117 e5 10 1 4 +22117 Nxc3 6 1 8 +22121 Nxc3 14 1 2 +22120 Nxc3 14 0 5 +22124 Qxc2 6 0 3 +22115 Bxb2 165 5 86 +22116 Nf3 19 1 10 +22116 Nxc3 4 0 10 +22116 Qb3 7 0 7 +22129 Qxe5 8 0 0 +22130 Qxe5 4 0 2 +22133 Nc3 3 0 4 +22134 d4 5 1 0 +22135 d4 4 0 3 +22138 Bc4 3 0 3 +22144 Nc3 9 0 13 +22145 Bxc6 4 0 3 +22149 Bxe6 9 0 2 +22147 O-O 9 0 6 +22146 O-O 18 0 9 +22146 c3 7 0 1 +22150 Nc3 5 0 1 +22148 O-O 6 0 5 +22154 Nc3 5 0 1 +22157 d4 11 0 5 +22158 O-O 3 0 2 +22159 O-O 5 0 2 +22156 O-O 12 0 4 +22156 d4 4 0 1 +22167 c3 5 0 1 +22163 e5 5 0 1 +22163 Nc3 2 0 3 +22164 e5 3 0 4 +22164 exd5 6 0 1 +22166 Bxf4 6 0 0 +22169 Nxe4 1 0 4 +22171 Qxf3 4 0 2 +22173 Nf3 5 0 0 +22172 Nf3 3 0 3 +22176 Bxf4 5 0 2 +22177 Bg2 2 1 2 +22181 Bc4 6 1 3 +22181 d3 3 0 4 +22181 Qe2 5 0 2 +22182 dxe4 4 0 2 +22183 Nc3 3 0 2 +22184 d4 5 0 4 +22184 c4 3 0 2 +22185 Nc3 5 1 5 +22189 Qxf3 6 1 8 +22188 d3 7 0 1 +22188 Nc3 6 1 1 +22193 Bxf3 4 0 1 +22198 O-O 4 1 4 +22195 O-O 7 0 7 +22197 d3 3 0 2 +22196 O-O 5 0 5 +22201 Nc3 7 0 0 +22205 Bxf4 4 0 3 +22211 d4 1 0 6 +22213 d4 6 0 3 +22212 d4 4 1 6 +22215 c3 11 0 3 +22214 Bxf4 31 1 11 +22214 Bc4 7 0 2 +22217 d4 5 0 0 +22218 Kf1 37 2 19 +22218 g3 19 0 10 +22218 Ke2 4 0 3 +22218 Nxh4 2 0 4 +22220 Nxh4 4 1 2 +22221 g3 3 0 6 +22221 Ke2 4 0 5 +22222 d4 7 0 5 +22227 d4 14 0 2 +22228 O-O 7 0 0 +22226 Nc3 8 0 1 +22226 O-O 6 0 1 +22226 d3 6 0 0 +22226 e5 3 0 2 +22229 O-O 1 1 3 +22225 O-O 10 0 7 +22224 O-O 12 0 4 +22224 d4 12 0 4 +22232 c3 6 0 3 +22231 e5 6 0 1 +22231 exd5 6 0 1 +22230 Bxf4 11 0 4 +22237 O-O 4 0 1 +22238 e5 5 0 0 +22244 Bc4 5 0 1 +22244 d4 4 1 0 +22242 d4 6 0 4 +22242 h3 2 1 4 +22243 d4 7 0 2 +22246 Be2 3 0 2 +22247 e5 3 0 3 +22249 Nxe4 6 0 3 +22250 d4 13 0 5 +22251 d4 4 0 2 +22253 c4 3 1 4 +22253 d4 3 0 4 +22253 Nc3 2 0 3 +22252 Nc3 28 0 10 +22257 Bxe6 5 2 11 +22259 O-O 11 0 5 +22254 O-O 27 1 18 +22254 d4 5 0 3 +22256 O-O 6 0 5 +22256 d4 8 1 1 +22258 d3 7 0 1 +22258 O-O 4 0 2 +22260 O-O 4 0 4 +22255 O-O 9 1 6 +22255 d4 7 1 2 +22262 Bxf4 16 0 6 +22263 Bxf4 8 0 7 +22265 Nc3 3 0 5 +22266 d4 4 0 1 +22269 Bc4 3 0 2 +22272 O-O 10 0 13 +22272 d4 5 0 4 +22273 O-O 4 0 3 +22273 d4 4 0 1 +22271 O-O 13 1 8 +22271 d4 5 1 5 +22276 O-O 4 0 1 +22270 Ne5 14 0 10 +22270 O-O 5 1 4 +22270 Bxf7 6 0 2 +22278 Bc4 4 1 4 +22277 Bc4 2 0 3 +22283 Ng5 9 0 13 +22283 Ne5 5 0 6 +22285 O-O 7 0 4 +22285 d4 3 0 2 +22286 O-O 6 0 3 +22292 Bb3 3 0 4 +22293 d4 9 1 13 +22293 Nf3 4 0 12 +22293 d3 3 0 8 +22293 h3 5 0 3 +22293 c4 2 0 5 +22293 Ne2 2 0 3 +22294 a3 3 1 7 +22294 d3 4 0 2 +22295 d4 3 0 4 +22298 Bxd7 2 1 3 +22297 Be2 2 0 6 +22297 Ba4 5 1 1 +22297 Bd3 1 0 4 +22301 Bb3 3 0 4 +22301 Bb5 3 0 2 +22300 Bb3 4 0 10 +22300 Bb5 7 0 6 +22302 dxe6 3 1 1 +22303 exd5 5 1 1 +22305 Nxd4 2 1 4 +22308 d4 4 0 7 +22311 Bd2 4 1 2 +22310 Nf3 8 1 13 +22310 a3 4 1 6 +22310 Bg5 5 0 5 +22310 Bd3 2 0 6 +22312 Nf3 0 1 4 +22313 Nf3 1 1 4 +22316 Nbc3 3 0 5 +22328 d4 4 0 1 +22329 exd6 5 0 0 +22330 Be3 4 0 1 +22331 Bd3 3 0 5 +22334 Bd3 9 0 14 +22334 Bd2 2 0 3 +22335 e5 5 0 0 +22337 Bb3 3 0 3 +22338 Bb5 5 0 4 +22338 Bb3 3 0 3 +22339 Nxd4 5 0 5 +22340 Nxd4 3 0 4 +22344 Be3 1 0 4 +22343 Nxc6 6 1 13 +22343 Nc3 3 0 7 +22346 Qd1 1 0 4 +22348 Bb3 6 0 5 +22348 Bb5 1 1 4 +22350 d4 5 1 4 +22351 c3 5 0 5 +22351 Bb5 3 0 2 +22352 Nc3 2 0 3 +22352 c4 2 1 2 +22355 d4 1 0 5 +22358 d3 7 1 15 +22358 Ng3 5 0 3 +22358 c3 1 0 5 +22360 Nxf6 6 0 3 +22361 e5 3 0 3 +22362 Nxf7 4 0 1 +22363 Kxd1 5 2 13 +22368 c3 1 0 5 +22370 Bxd7 4 0 4 +22370 Qe2 2 0 3 +22369 Bxc6 8 2 8 +22369 d4 4 0 2 +22372 a3 2 0 3 +22373 d4 6 1 21 +22373 Bb5 2 0 10 +22374 d4 2 0 8 +22375 c3 12 2 23 +22375 Bb5 4 0 9 +22375 dxc5 1 1 9 +22375 Bd3 3 1 1 +22377 c3 3 1 11 +22376 Nxd4 5 0 9 +22376 Qxd4 5 0 7 +22376 Bd3 2 0 7 +22378 c3 2 0 3 +22378 exf6 3 0 2 +22379 d4 11 0 3 +22379 Bc4 3 0 5 +22379 Bb5 3 0 2 +22383 Nc3 5 0 1 +22382 Nc3 2 0 4 +22384 Be2 2 0 3 +22384 Ba4 3 0 2 +22385 O-O 8 0 8 +22386 d4 9 0 20 +22386 Bb5 2 0 5 +22386 d3 3 0 4 +22388 d4 2 1 3 +22387 Nb5 2 0 3 +22389 Nc3 4 0 3 +22389 d4 1 0 4 +22389 d3 1 0 4 +22390 Qxe7 2 1 4 +22391 d4 3 0 4 +22392 cxd5 3 0 2 +22395 Bxc4 2 0 3 +22398 Nc3 10 1 25 +22398 Bd3 4 0 18 +22398 c3 4 0 4 +22398 Be3 4 0 3 +22398 h3 2 1 4 +22398 c4 1 0 4 +22398 Be2 0 0 5 +22400 Nc3 5 2 8 +22400 Bd3 6 0 8 +22401 Be2 8 2 9 +22401 Nc3 3 0 2 +22402 Nc3 2 4 3 +22402 Bd3 3 0 2 +22397 Nc3 59 7 85 +22397 Bd3 33 7 67 +22397 c4 23 3 32 +22397 Bg5 15 2 15 +22397 Be2 7 3 17 +22397 h3 9 2 14 +22397 Be3 8 0 5 +22397 c3 5 1 7 +22397 Ne5 0 1 6 +22397 Bb5 2 0 5 +22397 Qe2 2 0 4 +22405 Qe2 4 0 3 +22399 dxc5 10 0 12 +22399 c4 5 0 4 +22399 Nc3 4 0 1 +22399 Bb5 3 0 2 +22403 Bd3 3 1 1 +22404 Nc3 1 0 5 +22409 d5 2 0 4 +22410 O-O 3 0 2 +22415 Nf3 1 0 4 +22416 d3 2 0 7 +22418 Nc3 4 0 3 +22420 Nc3 4 0 1 +22419 Bxc4 6 0 3 +22421 O-O 4 0 1 +22423 Kxd1 3 1 7 +22425 Be2 0 0 5 +22427 Nc3 1 0 4 +22429 Bd3 1 0 7 +22431 O-O 2 1 2 +22435 Nf3 4 0 1 +22436 Bd2 12 0 3 +22440 f4 5 0 1 +22442 f3 4 0 2 +22445 Bd3 4 0 3 +22447 Bd3 5 0 4 +22448 cxd5 1 0 4 +22451 Be3 4 0 4 +22450 Nc3 12 1 5 +22450 Nxc6 5 1 3 +22454 Bb5 4 0 1 +22455 e5 3 1 4 +22462 c4 8 1 4 +22462 Bb5 5 0 2 +22464 Qe2 1 0 4 +22472 e5 9 0 3 +22472 exd5 6 0 2 +22475 c3 6 0 2 +22477 Bxc3 4 0 7 +22479 bxc3 3 0 5 +22480 a3 9 0 9 +22480 Bd2 5 0 3 +22486 e5 2 0 4 +22484 e5 18 0 13 +22488 f4 11 1 6 +22488 Nf3 9 0 6 +22489 Bg5 5 0 1 +22490 exd5 3 0 2 +22491 dxc5 6 1 4 +22491 Nf3 4 0 3 +22496 Nf3 4 0 1 +22493 Nf3 5 0 2 +22492 Bg5 7 0 9 +22492 Nxf6 9 2 5 +22498 f4 8 0 4 +22498 Bd3 6 1 3 +22498 Ngf3 2 0 4 +22499 Ngf3 3 0 2 +22501 Bg5 3 0 2 +22501 Nxf6 3 0 2 +22508 Nf3 3 0 3 +22510 Bxd7 2 0 7 +22512 Bb5 2 1 3 +22512 c3 1 1 3 +22513 b3 5 0 6 +22514 Bxd4 2 0 13 +22515 Bb5 13 2 23 +22515 c3 13 1 9 +22515 Bd3 7 0 3 +22515 Be3 1 0 8 +22515 dxc5 3 0 4 +22517 c3 4 0 2 +22517 Nc3 3 0 3 +22516 Nxd4 9 1 10 +22516 Qxd4 3 0 4 +22516 Bd3 3 0 4 +22521 Nf3 5 0 5 +22518 Nf3 109 6 131 +22518 Bb5 17 2 29 +22518 Be3 10 2 21 +22518 f4 9 0 13 +22518 b3 3 0 3 +22518 a3 5 0 1 +22522 Bd2 1 0 5 +22519 Nf3 38 4 36 +22519 f4 3 0 3 +22519 Be3 1 1 4 +22519 a3 3 0 3 +22523 Nf3 4 0 2 +22520 cxd4 18 2 13 +22525 Qxd4 1 0 9 +22528 Qg4 8 0 5 +22528 Nf3 6 0 6 +22530 Nf3 3 0 3 +22531 Qxd4 2 0 3 +22532 c3 7 1 5 +22533 Nxe5 4 0 3 +22534 Nf3 4 0 2 +22535 c3 3 0 7 +22536 fxe5 5 0 3 +22539 Bd2 3 0 2 +22537 Nf3 9 3 9 +22545 Bd3 2 0 9 +22547 h3 6 0 5 +22547 Ne2 4 1 4 +22547 Nf3 2 0 6 +22549 Ne2 3 1 1 +22548 c3 4 0 3 +22546 h3 25 1 15 +22546 Ne2 22 3 15 +22546 Nf3 12 1 10 +22546 Bg5 1 1 5 +22546 c3 3 0 2 +22553 Bd3 2 0 3 +22556 Bd2 6 0 7 +22555 Nf3 13 1 18 +22555 Bg5 5 1 13 +22555 Bd3 2 0 3 +22558 dxc5 4 0 1 +22557 Nf3 2 0 4 +22560 Ng3 2 1 2 +22562 Bd3 5 1 9 +22562 Nc3 4 0 3 +22563 Bd3 1 1 7 +22569 Bd3 3 0 3 +22564 Be2 5 0 4 +22561 Bd3 37 2 37 +22561 Be2 11 4 5 +22561 Bg5 11 0 6 +22561 Nc3 5 0 7 +22561 c4 4 1 1 +22566 dxc5 3 0 3 +22565 Be2 4 0 2 +22565 Bd3 2 0 3 +22568 Bd3 3 0 3 +22575 Nc3 1 0 5 +22575 Nf3 1 0 4 +22574 Nc3 11 1 12 +22574 cxd5 3 0 4 +22574 Nf3 2 0 5 +22576 Bxc4 3 0 3 +22578 c3 3 0 2 +22579 Nf3 4 0 1 +22585 Nf3 6 0 1 +22587 Bb5 3 0 4 +22589 Nf3 6 0 5 +22589 Bb5 2 0 4 +22590 Nf3 2 0 3 +22591 Nf3 2 0 3 +22593 Kxd1 3 4 9 +22595 Nf3 3 0 2 +22597 Bd3 4 1 3 +22597 Be3 2 0 3 +22599 Bd3 4 0 1 +22602 d3 1 0 4 +22605 d4 6 0 0 +22607 Bb5 14 0 13 +22607 d3 7 0 8 +22607 d4 6 1 7 +22607 c3 1 1 8 +22608 d3 1 0 4 +22610 c3 1 1 7 +22610 Nf3 5 0 2 +22616 d4 2 1 7 +22615 d4 11 0 15 +22622 Nf3 3 0 2 +22620 Nf3 7 0 11 +22627 Qxc4 5 0 3 +22631 Nc3 5 0 1 +22632 Qxe4 23 0 11 +22633 Qxe4 18 0 15 +22634 Qxe4 4 0 6 +22636 Nf3 4 0 2 +22638 d3 3 1 2 +22641 d4 5 0 1 +22644 d5 4 0 1 +22653 O-O 3 1 2 +22662 f3 4 0 1 +22665 O-O 5 0 0 +22664 Nc3 2 0 4 +22671 Ne2 2 0 3 +22673 Nf3 1 0 4 +22675 Nf3 3 0 2 +22677 cxd4 1 0 5 +22680 fxe5 7 0 6 +22683 Bd3 5 0 4 +22694 c4 2 0 4 +22697 g3 4 1 10 +22700 O-O 2 0 4 +22701 Nc3 2 0 3 +22704 Nc3 4 0 5 +22706 Nc3 1 0 4 +22710 Qxd4 7 0 1 +22714 dxe5 3 0 5 +22713 dxe5 6 1 3 +22715 Nf3 8 0 7 +22716 Nf3 4 0 2 +22721 Nf6 5 0 1 +22723 d6 3 0 3 +22723 d5 2 0 3 +22737 f5 2 0 7 +22737 Nf6 0 0 5 +22739 e5 3 0 3 +22740 Nf6 2 1 2 +22741 O-O 2 0 4 +22744 O-O 2 0 4 +22743 O-O 4 0 11 +22745 Nc6 8 3 6 +22745 cxd4 2 0 4 +22746 cxd4 2 0 4 +22749 Bg7 5 0 3 +22753 Bxc6 5 0 5 +22754 bxc6 1 0 4 +22755 Nf6 3 0 3 +22756 O-O 1 0 4 +22758 c6 6 0 1 +22763 O-O 3 1 4 +22765 O-O 3 0 2 +22766 c6 0 0 5 +22771 Nc6 0 0 5 +22776 Nxd5 2 0 3 +22778 cxd5 4 1 2 +22779 Nxc3 4 1 3 +22780 Nxd5 4 0 2 +22782 O-O 6 0 1 +22789 Bc5 0 0 5 +22792 dxe5 6 0 1 +22793 c6 5 0 3 +22799 Nxe4 4 0 1 +22801 a6 3 0 2 +22803 d5 2 0 5 +22804 Be7 4 0 1 +22805 c4 4 0 1 +22807 Nc6 3 1 1 +22808 d6 4 0 3 +22809 O-O 4 0 1 +22811 O-O 5 0 4 +22812 O-O 5 0 7 +22813 O-O 2 0 8 +22814 d6 3 0 3 +22816 d6 3 0 7 +22817 O-O 5 1 8 +22818 Bxc5 2 0 3 +22819 g6 11 2 7 +22819 e5 2 0 11 +22819 e6 2 0 4 +22820 g6 3 1 3 +22822 axb5 4 0 3 +22824 Qxb6 3 0 4 +22821 Bxa6 6 2 5 +22823 axb5 4 1 2 +22826 Be7 4 1 8 +22831 e6 4 0 2 +22833 Nc6 5 0 0 +22838 O-O 2 0 4 +22837 O-O 5 0 3 +22835 O-O 5 0 3 +22836 O-O 3 0 6 +22839 O-O 2 0 3 +22840 Bb4 3 0 3 +22842 f5 6 0 0 +22843 Nc6 11 0 14 +22844 Bb4 3 0 8 +22849 b6 1 1 5 +22847 Bxc3 3 1 7 +22854 Bb7 3 0 3 +22855 O-O 2 1 2 +22857 Bxc3 10 0 1 +22862 O-O 6 0 12 +22862 b6 4 1 5 +22862 c5 3 0 6 +22862 d5 2 0 5 +22864 Nc6 5 0 5 +22865 d6 7 2 2 +22868 O-O 3 0 5 +22869 Be7 3 1 1 +22870 Nc6 4 0 1 +22874 Nxc3 4 1 0 +22879 Be7 2 0 5 +22882 d6 5 0 0 +22883 O-O 2 0 3 +22884 d6 4 0 3 +22885 d6 3 0 5 +22890 O-O 3 0 2 +22886 O-O 15 1 12 +22888 O-O 3 0 6 +22887 O-O 12 1 12 +22889 O-O 5 0 0 +22893 O-O 3 0 2 +22892 O-O 4 0 7 +22895 d6 4 0 2 +22894 Ne8 4 0 3 +22902 O-O 5 0 5 +22900 O-O 6 1 5 +22901 O-O 5 1 3 +22897 O-O 30 1 31 +22904 dxe5 6 1 2 +22899 O-O 14 1 20 +22898 O-O 28 1 19 +22903 O-O 3 0 3 +22905 dxe4 3 0 5 +22908 O-O 3 0 3 +22907 dxc4 5 0 2 +22906 O-O 4 0 5 +22910 O-O 1 0 4 +22912 Bg7 5 1 5 +22911 Nxc3 32 8 40 +22913 O-O 9 2 19 +22916 O-O 2 0 3 +22918 O-O 3 1 1 +22923 Nc6 2 0 4 +22925 d6 3 0 3 +22926 O-O 4 0 1 +22928 O-O 1 0 5 +22929 Qxd1 2 0 3 +22931 e6 4 0 1 +22932 Bg7 4 1 0 +22933 a6 4 0 1 +22934 Bg7 3 2 2 +22936 e6 5 1 0 +22942 e6 1 0 4 +22940 e6 3 0 2 +22943 e6 5 0 0 +22944 e6 11 0 2 +22946 e6 3 1 2 +22945 e6 5 1 1 +22947 e6 4 0 1 +22948 e6 4 0 1 +22950 Bxe4 5 0 1 +22952 e6 3 1 3 +22953 Qc7 2 0 3 +22954 Qc7 3 1 4 +22955 Bg7 3 0 3 +22960 Bg7 14 1 21 +22961 Bg7 5 0 3 +22963 Nf6 4 0 4 +22965 Nf6 5 0 0 +22966 Bg7 9 0 3 +22968 Nf6 4 0 1 +22969 d6 1 0 4 +22970 d6 3 0 2 +22971 Nf6 8 1 4 +22972 Qf6 1 1 5 +22972 b6 3 0 4 +22974 Be7 2 0 8 +22976 Be7 4 0 1 +22978 Nf6 2 0 4 +22979 Nf6 1 0 4 +22981 e6 4 0 1 +22983 e6 3 1 4 +22986 Ne4 4 0 4 +22986 Nh5 4 0 1 +22987 Bg4 2 0 4 +22988 cxd6 1 1 4 +22990 fxe5 3 0 2 +22991 Bxc6 1 0 4 +22996 Nc6 2 0 4 +22999 h4 5 0 2 +23003 a6 5 1 2 +23005 Bxf4 4 0 1 +23006 fxe5 3 0 2 +23007 c6 13 0 1 +23007 e6 7 0 0 +23008 Ne4 11 0 2 +23008 Nh5 7 0 4 +23009 exf6 5 0 1 +23010 exf6 8 0 1 +23011 Qxf6 11 0 2 +23013 Qxf6 4 0 1 +23014 Bxf4 7 0 3 +23014 a6 7 0 2 +23014 O-O 4 0 1 +23015 c6 6 0 1 +23015 Bd7 5 0 0 +23019 Bg6 5 0 1 +23023 Bd6 5 1 2 +23024 Bxf4 13 0 2 +23024 O-O 8 1 0 +23026 Bd6 9 0 2 +23027 Be7 4 0 2 +23027 c5 3 0 2 +23030 Nc6 4 0 2 +23030 Nf6 6 0 0 +23031 Na6 4 0 1 +23032 Bd6 1 0 5 +23036 hxg6 2 0 3 +23041 bxc6 4 0 2 +23044 a6 7 1 2 +23044 e6 4 0 2 +23045 e6 2 0 4 +23048 Bd6 6 0 2 +23050 O-O 3 0 2 +23058 Nc6 5 0 1 +23060 O-O 3 3 2 +23066 Bxc5 5 1 3 +23068 O-O 5 0 1 +23083 Bg4 5 0 0 +23084 Nb4 1 0 5 +23084 e6 5 0 0 +23085 e6 11 0 4 +23085 Nc6 11 0 4 +23087 c6 3 0 3 +23090 Nxd4 1 0 4 +23093 Bb4 3 0 3 +23094 Bb4 5 0 2 +23097 O-O 3 0 2 +23096 Nxd5 4 0 1 +23095 O-O 4 0 1 +23101 Nc6 4 0 1 +23104 Bxc3 3 0 2 +23105 Nxc3 1 1 4 +23110 e6 8 0 0 +23112 e6 21 2 4 +23120 e6 4 1 5 +23121 e6 4 0 4 +23123 e6 2 1 3 +23125 Bf5 2 1 2 +23126 Be7 8 0 5 +23129 Bg7 3 0 4 +23130 Nxc3 2 1 2 +23131 Nc6 6 0 7 +23132 e6 5 1 4 +23134 Bb4 3 0 5 +23134 Nbd7 3 0 2 +23135 Bb7 3 0 2 +23138 Qa5 5 0 1 +23140 Be7 9 0 6 +23140 Bb4 3 0 2 +23142 Bb4 4 0 1 +23144 Nf6 2 0 3 +23147 e6 3 0 3 +23149 Bf5 5 0 1 +23150 Be7 3 0 3 +23153 Bg7 4 0 4 +23156 Nf6 3 0 3 +23158 e6 1 2 3 +23157 g6 6 0 1 +23157 e6 4 0 1 +23159 Nc6 4 0 2 +23161 e6 7 0 0 +23163 Bg7 3 0 2 +23166 e6 9 0 4 +23169 e6 8 1 1 +23170 Bf5 3 0 2 +23173 e6 4 1 2 +23175 Bb4 4 1 5 +23176 Nc6 3 0 2 +23177 Bh5 5 0 6 +23178 Ne5 3 0 3 +23180 Bb4 10 0 2 +23180 Nc6 2 0 3 +23183 c6 8 0 3 +23185 e6 3 0 2 +23187 Bd7 4 0 1 +23191 Be7 4 0 1 +23194 Bxc3 7 0 2 +23197 Bxc3 8 0 7 +23197 Nf6 4 0 1 +23198 Nc6 0 0 5 +23200 Bb4 6 0 0 +23204 Nf6 5 0 1 +23212 Bxc4 2 0 3 +23219 Be7 4 0 1 +23219 Bb4 3 0 2 +23222 c6 7 0 0 +23224 Bxb5 5 0 3 +23225 Bxb5 11 0 7 +23227 Bd7 4 0 1 +23228 cxb5 69 1 11 +23229 cxb3 2 0 3 +23231 Bxd2 3 0 4 +23234 Bb4 2 0 3 +23234 Be7 3 1 1 +23239 Bh5 3 0 2 +23240 Bb4 4 0 2 +23241 e6 5 0 3 +23242 c6 2 0 3 +23244 Bxb5 2 0 3 +23245 cxb5 8 0 5 +23247 exd5 6 0 0 +23249 b5 3 0 2 +23250 cxd5 3 1 1 +23252 Bxd2 5 0 1 +23251 Bxc3 3 0 2 +23253 a6 3 0 2 +23254 Bb4 6 0 2 +23256 c6 4 0 1 +23257 Bb4 5 0 2 +23260 Kxd8 2 1 2 +23261 exd4 4 1 3 +23263 Bb4 0 1 4 +23263 Bg4 2 0 3 +23262 Bg4 5 0 3 +23262 f6 7 0 1 +23267 dxe3 3 0 6 +23272 dxc4 6 0 3 +23273 b5 5 0 5 +23274 b5 4 0 2 +23275 dxc4 2 1 3 +23277 Be6 4 0 5 +23284 Bxf6 7 0 4 +23283 O-O 7 0 8 +23283 b6 5 0 0 +23283 h6 3 0 2 +23283 Nbd7 2 0 3 +23285 Nxd5 3 0 3 +23282 O-O 12 2 10 +23282 h6 12 1 5 +23282 b6 6 1 1 +23286 c6 2 0 3 +23289 exd5 2 0 3 +23288 Nbd7 5 0 2 +23290 h6 5 0 0 +23292 O-O 6 0 3 +23292 dxc4 1 0 4 +23294 O-O 8 1 4 +23294 c6 3 1 1 +23295 O-O 10 0 8 +23296 O-O 7 0 7 +23300 Be7 2 0 4 +23301 Nc6 8 1 1 +23303 Nbd7 4 1 3 +23304 Bd6 5 0 1 +23306 Nxc3 6 2 5 +23307 Be7 9 0 2 +23307 c6 5 3 2 +23310 O-O 9 0 2 +23312 O-O 4 0 9 +23312 Nbd7 1 1 3 +23313 O-O 4 1 1 +23315 Nc6 9 1 5 +23317 Nc6 4 0 3 +23321 Be7 7 2 6 +23321 Bb4 6 0 0 +23323 Nf6 5 0 2 +23327 Nf6 7 0 1 +23329 Bxc3 5 0 0 +23337 Bxf6 2 0 3 +23336 O-O 4 1 0 +23338 Bxc3 4 0 1 +23343 O-O 4 0 5 +23346 Bxc5 0 0 6 +23349 axb4 1 0 6 +23355 Be7 5 0 1 +23360 Nc6 5 0 0 +23362 axb6 2 0 4 +23362 cxb6 3 0 2 +23363 Nb6 2 0 3 +23368 e6 4 0 3 +23369 c4 4 0 2 +23378 O-O 2 0 3 +23379 c5 3 0 2 +23384 Bc8 1 0 4 +23386 Bg6 2 0 4 +23388 e6 1 0 7 +23388 Bg4 3 1 2 +23387 e6 9 1 10 +23387 Nc6 12 0 5 +23387 Bg4 10 0 6 +23387 c6 3 0 6 +23387 Qxd4 6 0 3 +23389 Nf6 1 0 5 +23395 h6 2 0 5 +23396 Nh5 4 0 1 +23407 Be7 3 0 2 +23409 Be7 4 0 4 +23408 Be7 8 1 12 +23410 dxe5 3 0 2 +23411 O-O 3 0 3 +23412 O-O 4 0 1 +23413 O-O 5 0 0 +23414 Be6 1 1 3 +23416 O-O 2 0 3 +23415 O-O 2 1 2 +23417 e5 3 0 2 +23419 Be7 6 0 1 +23421 Bb4 3 1 3 +23421 Bc5 4 0 2 +23423 Qxb2 2 0 6 +23424 Qxf4 1 1 3 +23425 Qxf4 0 0 6 +23426 Qxe5 4 0 2 +23427 Nf6 4 0 1 +23433 Be7 2 0 3 +23435 c6 0 0 5 +23440 Bd6 4 0 3 +23440 c5 2 0 5 +23442 O-O 1 0 4 +23443 O-O 0 1 4 +23444 c5 4 0 1 +23445 O-O 2 0 3 +23446 O-O 3 0 2 +23453 O-O 2 1 3 +23452 O-O 2 0 5 +23455 O-O 4 0 1 +23456 O-O 2 0 5 +23457 O-O 2 0 3 +23458 O-O 3 1 2 +23462 Nf6 5 1 4 +23466 Nf6 7 0 1 +23472 exd5 4 0 1 +23470 O-O 7 0 6 +23470 h6 2 0 3 +23474 O-O 8 2 8 +23473 O-O 11 2 11 +23477 exd5 3 0 2 +23475 O-O 4 0 7 +23476 O-O 4 1 5 +23479 Be7 7 1 2 +23479 c6 3 0 2 +23483 O-O 5 2 5 +23482 O-O 8 1 3 +23488 b5 4 0 2 +23490 cxd4 3 0 2 +23492 O-O 2 0 6 +23493 cxd4 3 1 1 +23498 a6 3 0 9 +23499 a6 3 0 2 +23503 exd5 1 1 5 +23507 c5 2 0 3 +23508 Qb6 3 0 3 +23516 O-O 3 1 1 +23517 O-O 2 1 3 +23521 O-O 1 0 4 +23523 e6 1 0 4 +23526 Nc6 2 0 5 +23529 O-O 3 1 1 +23534 O-O 3 0 4 +23534 d6 2 0 4 +23535 e6 2 0 3 +23536 e6 3 0 8 +23538 e6 1 0 4 +23544 Bb4 3 0 2 +23553 Be7 4 1 4 +23557 O-O-O 1 1 3 +23559 Bc5 4 0 2 +23559 Bb4 3 0 2 +23562 exd3 1 0 5 +23566 c5 1 0 4 +23568 cxd2 1 0 4 +23567 cxd2 2 1 7 +23570 Bf5 1 1 3 +23571 Bg4 12 2 10 +23571 Nc6 4 0 6 +23572 Nc6 5 0 5 +23577 Nxe4 1 0 4 +23578 Nc6 0 0 5 +23580 d6 4 0 2 +23582 exd6 2 0 6 +23583 exd6 7 0 8 +23583 cxd6 4 0 3 +23585 Nb6d7 2 0 3 +23586 e6 10 0 15 +23587 e6 5 0 2 +23587 Nxc3 4 0 1 +23588 d6 4 1 2 +23588 e6 0 2 4 +23592 dxe5 1 0 4 +23592 Bg4 3 0 2 +23590 exd6 13 3 15 +23590 cxd6 12 1 11 +23591 dxe5 9 1 14 +23591 Bf5 1 0 5 +23593 cxd6 0 0 6 +23594 exd6 3 0 2 +23597 dxe5 3 0 3 +23599 c6 3 1 3 +23603 Bg4 2 0 5 +23601 exd6 11 1 19 +23601 cxd6 4 0 6 +23602 dxe5 9 1 8 +23602 Bf5 4 0 2 +23605 Nb6 3 0 3 +23606 Bc5 6 0 0 +23607 Nf6 3 2 3 +23608 Nf6 5 0 4 +23609 Nf6 4 0 4 +23610 Bxa8 2 1 5 +23611 e6 1 1 3 +23612 cxd5 3 1 1 +23618 f6 3 0 2 +23619 Ke8 8 0 0 +23621 e6 1 0 4 +23622 Nc6 2 0 8 +23625 Bxc3 10 1 3 +23624 Nf6 2 0 10 +23624 Bxc3 4 0 5 +23624 Ne7 1 1 3 +23628 e6 2 0 7 +23632 e6 5 0 1 +23631 e6 5 0 2 +23629 e6 3 0 5 +23630 e6 7 0 3 +23635 e6 2 0 3 +23639 e6 5 0 1 +23643 Nf6 3 1 4 +23645 c5 3 0 2 +23647 e6 3 0 2 +23648 e6 10 0 2 +23654 e6 3 0 4 +23659 Nf6 2 0 3 +23660 Be7 3 0 2 +23663 exd5 4 0 5 +23664 exd5 2 0 3 +23665 Nf6 1 0 5 +23671 Nxd5 1 0 6 +23673 exd5 1 1 3 +23676 Kc7 2 0 4 +23682 exd5 3 0 5 +23687 Bd7 10 0 14 +23687 Nc6 8 0 5 +23691 Nf6 4 1 1 +23692 Nf6 5 0 3 +23694 Nf6 4 0 5 +23699 bxc6 4 0 2 +23700 Nf6 1 0 4 +23701 bxc6 0 0 5 +23703 Bg7 4 0 4 +23705 d6 5 0 1 +23705 e6 2 0 3 +23707 d6 4 0 1 +23708 d6 1 0 4 +23710 a6 3 0 4 +23711 Nc6 3 0 3 +23712 Nf6 2 1 3 +23714 Bg7 5 0 2 +23715 Bg7 5 0 2 +23717 Nf6 2 0 3 +23718 Ne7 3 3 1 +23719 Nf6 8 2 4 +23720 Nf6 2 0 3 +23721 Nc6 2 0 3 +23725 d5 6 0 3 +23725 d6 3 0 4 +23725 e6 4 0 2 +23726 d6 1 0 8 +23726 d5 3 1 2 +23727 cxd4 4 1 7 +23729 Bg4 1 1 3 +23731 g6 4 1 2 +23731 e5 0 0 6 +23732 Bg4 2 0 3 +23733 cxd4 5 1 5 +23736 Bd7 1 2 2 +23735 Bd7 3 2 0 +23737 d5 6 0 3 +23739 cxd4 3 1 2 +23745 Bg7 2 0 3 +23742 Bg7 8 0 3 +23743 Bg7 2 0 4 +23744 cxd4 1 1 4 +23746 Bg7 1 1 6 +23752 d5 2 0 4 +23756 exd5 6 0 2 +23757 d5 0 1 6 +23758 b5 4 0 1 +23759 exd5 2 0 5 +23760 b5 3 1 4 +23761 exd5 4 1 12 +23762 b5 1 0 4 +23763 exd5 2 1 5 +23764 Nf6 9 1 14 +23764 a6 5 0 3 +23764 Bc5 3 0 4 +23764 Nxd4 5 0 2 +23764 d5 3 0 3 +23764 Qc7 5 0 0 +23764 d6 2 0 3 +23765 exd5 4 2 3 +23767 d6 1 0 4 +23768 cxd4 5 0 3 +23769 Bg7 3 1 8 +23772 a6 6 0 1 +23773 Nf6 4 2 10 +23773 a6 3 1 1 +23774 bxc6 0 0 5 +23777 Nf6 5 1 10 +23777 Nxd4 9 0 5 +23777 a6 3 0 2 +23779 Bg7 9 0 19 +23780 cxd4 4 0 2 +23783 e6 1 1 4 +23783 Nf6 0 1 5 +23783 Bg4 1 1 3 +23784 exd4 1 0 10 +23785 d5 1 1 4 +23786 exd5 3 0 2 +23787 Bg7 4 0 5 +23791 e5 35 4 36 +23791 d6 32 1 40 +23791 a6 17 0 7 +23791 e6 7 1 11 +23791 g6 11 0 5 +23792 bxc6 10 4 42 +23793 d6 4 0 3 +23794 e6 21 0 22 +23794 d6 24 1 17 +23794 Nf6 15 1 3 +23794 Qb6 3 0 2 +23795 e6 3 0 6 +23796 bxc6 2 0 3 +23797 e5 5 0 4 +23797 e6 2 0 3 +23798 bxc6 3 1 5 +23801 Bd7 5 0 6 +23799 Nf6 15 1 8 +23799 g6 3 1 8 +23799 Bd7 5 0 3 +23799 e5 3 0 3 +23799 a6 1 0 4 +23800 bxc6 7 1 15 +23802 Nf6 3 0 5 +23808 Nf6 13 2 16 +23808 d6 4 0 5 +23807 d6 21 2 17 +23807 a6 19 2 17 +23807 Nf6 14 1 4 +23809 Nf6 5 1 10 +23809 d6 2 0 4 +23810 d6 7 0 4 +23806 bxc6 56 7 72 +23811 a6 12 1 10 +23811 Bc5 6 0 3 +23811 Nf6 2 0 4 +23812 bxc6 17 0 15 +23820 Bg7 2 1 7 +23822 Bg7 2 0 3 +23818 Bg7 13 0 11 +23816 Bg7 47 2 41 +23817 bxc6 20 1 22 +23821 Bg7 2 0 3 +23819 Bg7 7 1 5 +23823 d6 5 0 3 +23823 e6 5 0 2 +23823 g6 3 0 3 +23825 dxe5 4 0 1 +23826 Nxd8 6 0 2 +23827 Nce7 8 0 3 +23827 Nb8 6 0 0 +23828 e5 1 0 4 +23830 e5 6 0 2 +23833 g6 15 0 7 +23835 Ngf6 6 2 5 +23835 g6 4 1 2 +23835 e6 0 0 5 +23836 cxd4 7 1 10 +23838 Nc6 7 1 3 +23839 cxd4 4 1 9 +23844 cxd4 5 0 3 +23846 bxc6 2 0 3 +23847 Bd7 3 0 7 +23848 Ke8 1 0 4 +23850 Nf6 6 0 7 +23850 g6 1 1 4 +23858 e6 3 1 6 +23859 cxd4 0 0 6 +23861 Be7 3 0 3 +23865 Nc6 3 0 11 +23865 a6 3 0 7 +23865 Nf6 0 0 8 +23866 Nc6 3 1 3 +23867 cxd4 1 0 4 +23869 Nf6 2 0 4 +23870 cxd4 0 0 5 +23871 Nf6 6 1 11 +23871 g6 5 0 4 +23871 Nxd4 3 0 2 +23871 a6 1 1 3 +23873 a6 7 1 18 +23873 e5 7 1 9 +23873 e6 3 0 5 +23873 g6 3 0 4 +23875 Nf6 4 0 6 +23876 Nc6 0 0 7 +23876 Nf6 1 0 4 +23877 Bg7 2 0 6 +23878 Nf6 12 1 7 +23878 e6 3 1 2 +23879 cxd4 4 0 2 +23880 e6 2 0 3 +23883 Be7 2 0 5 +23885 Nc6 3 0 2 +23888 Bd7 6 1 7 +23889 g6 4 1 1 +23886 g6 11 2 16 +23886 Nf6 15 1 4 +23886 e6 4 2 8 +23886 Nxd4 8 0 1 +23886 a6 2 0 3 +23886 e5 4 0 1 +23887 bxc6 7 0 16 +23894 Bd7 16 1 11 +23894 Nbd7 3 0 2 +23895 a6 5 0 8 +23895 g6 1 0 5 +23895 Nc6 2 0 4 +23893 a6 164 10 182 +23893 g6 87 6 85 +23893 e6 27 3 36 +23893 e5 19 2 17 +23893 Nc6 7 0 6 +23896 a6 5 0 2 +23896 g6 3 0 2 +23900 Nf6 14 0 6 +23900 e5 3 0 4 +23900 g6 1 1 3 +23905 Nf6 4 0 1 +23904 a6 5 0 3 +23906 exd4 2 0 3 +23903 Bg4 4 0 5 +23903 Nf6 5 1 1 +23909 Nf6 2 1 6 +23911 Bg7 4 0 1 +23910 Bg7 7 2 13 +23912 Bd7 11 2 9 +23913 Nf6 3 0 2 +23915 Nc6 4 0 1 +23915 dxe5 4 0 1 +23917 Nc6 4 0 1 +23919 exd5 3 0 2 +23924 cxd4 1 0 5 +23925 Nc6 8 0 5 +23925 Bd7 3 0 4 +23926 Be7 4 0 1 +23928 Nf6 5 0 4 +23928 Nxd4 4 0 2 +23928 a6 5 0 1 +23929 Qc7 6 0 14 +23929 Bc5 5 0 6 +23931 cxd4 3 0 2 +23932 Nf6 7 0 9 +23935 Nf6 5 0 3 +23936 d5 1 0 5 +23936 d6 2 0 3 +23939 Nf6 3 0 3 +23942 Nb6 3 0 2 +23943 Qb6 3 1 3 +23944 Bb6 2 0 6 +23947 a6 2 0 5 +23948 a6 5 0 0 +23945 a6 38 2 15 +23945 Nxd4 13 0 3 +23945 Bc5 5 0 7 +23945 Bb4 7 0 3 +23945 Nf6 7 0 2 +23945 d6 3 1 1 +23946 bxc6 23 3 22 +23956 Nc6 3 0 4 +23954 Nc6 6 2 12 +23954 Bb4 7 1 7 +23954 a6 5 0 4 +23954 d6 1 1 3 +23955 Qa5 1 0 7 +23962 Qc7 1 0 4 +23959 Qc7 7 0 4 +23961 Qc7 3 0 2 +23960 Nc6 5 0 1 +23960 Qc7 1 0 4 +23957 Qc7 21 3 27 +23957 Nc6 18 1 15 +23957 Ne7 3 1 11 +23957 b5 6 0 6 +23958 Qc7 6 0 10 +23965 a6 2 0 5 +23966 exd5 5 0 9 +23968 Nc6 3 2 9 +23969 Nf6 3 0 4 +23969 c4 3 0 2 +23967 Bxc5 14 1 19 +23971 Nf6 4 2 1 +23974 Nc6 5 0 8 +23976 d6 15 0 5 +23976 Nc6 2 0 4 +23978 Nc6 9 0 16 +23977 Nc6 28 0 36 +23977 Nf6 5 0 1 +23979 Bg7 4 0 7 +23980 Bg7 6 0 4 +23981 Nc6 6 0 3 +23984 Nd5 2 0 3 +23985 e6 4 0 2 +23986 Qxd5 5 0 0 +23987 Ne5 1 1 4 +23991 e6 1 0 4 +23992 Bg4 1 1 3 +23994 Nf6 2 0 3 +23996 g6 3 0 2 +23999 Nc6 1 0 8 +24004 Bg7 1 0 6 +24012 d6 5 1 0 +24013 bxc6 3 0 2 +24016 Bd7 2 0 3 +24015 Bd7 2 0 3 +24020 g6 2 1 3 +24019 e6 4 0 13 +24019 d6 1 1 3 +24021 Bd7 3 0 2 +24022 Nf6 1 0 5 +24026 Nf6 2 0 3 +24025 Nf6 1 0 6 +24029 Nf6 2 0 3 +24031 Bg7 3 1 2 +24032 Bg7 1 0 4 +24034 e6 1 1 3 +24035 Nf6 1 1 6 +24037 Bg7 1 0 4 +24038 Bf5 2 0 3 +24041 e6 10 0 10 +24041 Nc6 2 0 3 +24042 e6 1 0 5 +24044 e6 5 0 5 +24044 d6 3 0 3 +24043 d6 10 0 7 +24043 e6 3 0 3 +24043 e5 2 0 4 +24043 g6 1 0 4 +24047 Bb4 3 0 2 +24050 Bg7 5 0 1 +24051 f5 1 0 5 +24054 Nf6 3 0 4 +24055 Qd8 2 0 3 +24057 Nf6 2 1 2 +24058 exd5 6 0 2 +24061 e6 3 1 1 +24060 e6 2 0 4 +24062 cxd4 2 0 3 +24063 Bg7 1 2 2 +24065 Nf6 6 0 6 +24065 Nc6 3 0 2 +24066 Nf6 5 0 3 +24067 g6 5 0 1 +24070 b5 3 0 4 +24073 Bd7 6 1 5 +24073 Nc6 4 1 6 +24074 Nf6 5 0 6 +24075 cxd4 4 0 8 +24077 Nf6 4 0 4 +24076 Nf6 1 1 5 +24081 e6 4 0 1 +24087 Nxd7 9 4 17 +24087 Qxd7 8 1 4 +24088 Nf6 4 0 1 +24089 bxc6 11 0 8 +24090 Nf6 1 0 5 +24091 Bxd7 1 1 3 +24092 Nf6 2 0 3 +24095 Nf6 1 1 3 +24099 Nc6 2 0 8 +24101 Bg6 1 0 4 +24102 Ngf6 5 0 1 +24103 gxf6 2 1 4 +24104 Bf5 2 0 4 +24106 Kxf7 5 0 6 +24107 Bg4 3 1 4 +24108 Bxd3 11 2 3 +24114 Nd7 2 1 6 +24114 c5 3 0 4 +24115 Bh5 3 0 10 +24115 Bxf3 3 0 3 +24116 e6 3 0 2 +24118 Nxd7 5 1 8 +24120 bxc6 5 2 8 +24124 Nf6 0 0 7 +24125 e6 4 0 2 +24125 Nc6 1 0 4 +24127 Nxd5 6 2 3 +24128 e6 5 0 5 +24133 Nc6 3 0 4 +24130 e6 15 0 4 +24130 Nc6 4 1 8 +24130 Nf6 4 0 6 +24130 Bxf3 1 2 4 +24131 Bh5 6 2 3 +24131 Bxf3 3 1 3 +24137 Bg4 7 0 7 +24137 a6 3 2 7 +24137 Nf6 6 1 3 +24137 Bd7 6 0 0 +24138 Nf6 5 0 11 +24138 Bg4 8 0 6 +24136 Nf6 14 1 18 +24136 Bg4 7 0 10 +24136 Bf5 2 2 5 +24140 Nf6 3 0 8 +24140 Bg4 5 0 4 +24139 Bg4 6 0 7 +24139 dxc4 2 1 6 +24139 Nf6 3 0 6 +24146 Bd7 3 0 2 +24144 Bg4 4 0 12 +24144 e6 3 0 4 +24144 Nc6 3 0 3 +24143 Bg4 13 0 9 +24143 e6 6 2 13 +24143 Nc6 0 0 9 +24145 e6 4 0 4 +24145 g6 3 0 2 +24154 Qd8 4 0 1 +24156 Bg4 1 0 5 +24157 Bf5 6 1 1 +24158 Bg6 34 4 32 +24160 Ngf6 6 1 7 +24162 Bg4 2 1 2 +24161 exf6 10 0 4 +24161 gxf6 4 0 7 +24165 Bg6 9 0 5 +24167 hxg6 3 0 2 +24168 e6 45 2 45 +24168 Qa5 4 0 7 +24169 e6 2 0 3 +24170 exf5 4 0 1 +24171 h5 7 1 8 +24171 h6 6 0 8 +24173 Bxd3 9 0 15 +24173 Bg6 4 0 5 +24173 Ne7 3 0 2 +24174 Nd7 3 0 5 +24174 Ne7 3 0 2 +24184 Bxd3 4 0 2 +24183 Ne7 3 0 4 +24185 Bg6 7 0 1 +24186 h6 5 0 0 +24189 Bh7 5 0 2 +24190 cxd4 1 1 3 +24196 Nf6 16 2 19 +24202 Nf6 4 1 5 +24206 Bxd3 4 0 2 +24207 Nf6 4 1 2 +24207 e6 3 0 2 +24209 Nf6 3 0 6 +24208 Nf6 3 0 3 +24210 Nf6 3 0 2 +24214 e6 8 0 5 +24214 Nc6 2 1 8 +24217 exd4 3 2 1 +24218 Bc5 3 1 1 +24222 Bxd3 3 0 3 +24228 e6 4 0 2 +24229 Nf6 3 0 6 +24235 Kxf7 7 0 3 +24240 Bf5 1 0 4 +24243 Bd7 1 0 5 +24246 Nf6 1 1 3 +24248 Nc6 3 0 4 +24249 Nc6 0 0 5 +24251 Nxe5 1 0 5 +24253 e6 2 0 4 +24259 Bb6 1 0 4 +24260 Bxc6 3 0 3 +24261 c4 3 0 2 +24268 e6 4 0 3 +24270 Bg4 16 2 19 +24270 e5 4 0 16 +24270 Nc6 7 0 9 +24270 Bf5 2 1 2 +24272 Nc6 3 0 5 +24271 Nc6 5 1 12 +24271 e5 4 1 4 +24277 e5 9 2 8 +24276 e5 12 1 14 +24278 e5 4 1 1 +24279 Nc6 3 0 6 +24281 Nxd5 4 1 4 +24284 e5 3 2 3 +24284 Bf5 3 0 3 +24283 e5 10 1 16 +24283 Bg4 4 0 2 +24285 e5 4 0 2 +24286 e5 1 0 4 +24289 Nc6 3 0 3 +24290 Nc6 1 0 7 +24288 Bb4 5 2 4 +24292 Qxd5 2 0 4 +24298 e5 5 2 2 +24297 e5 9 1 2 +24301 Bg4 5 1 0 +24300 c6 2 0 3 +24304 Nf6 6 0 3 +24304 Bxf3 5 0 3 +24305 Bh5 5 0 9 +24305 Bxf3 1 1 3 +24306 Bg4 3 0 2 +24308 Bg4 1 0 10 +24309 Bf5 2 0 7 +24307 Bg4 5 0 8 +24307 c6 5 1 5 +24307 Bf5 5 0 5 +24312 e6 4 0 3 +24311 e6 4 1 9 +24314 Nf6 1 1 4 +24314 Bf5 4 0 1 +24315 Bg4 3 0 4 +24313 Bg4 3 0 5 +24313 Nf6 3 0 4 +24317 Bb4 1 1 3 +24319 c6 2 0 3 +24319 Qb6 2 1 2 +24320 Qb6 5 0 6 +24321 Qc7 7 1 12 +24324 c6 7 0 7 +24323 Bg4 7 0 8 +24323 c6 2 0 3 +24323 Bf5 3 1 1 +24326 Qb6 3 1 4 +24327 Qc7 7 0 4 +24327 Bf5 1 1 3 +24327 Qb6 2 0 3 +24328 Bf5 2 1 5 +24328 Bg4 2 0 3 +24331 c6 2 1 7 +24336 c6 0 0 6 +24335 c6 3 1 2 +24338 Bg4 3 0 2 +24343 Bxf3 4 1 3 +24343 Nf6 4 0 2 +24344 Bh5 3 0 3 +24348 Nf6 2 0 3 +24347 Bg4 3 0 3 +24351 e6 7 1 7 +24352 e6 4 1 5 +24353 e6 3 0 2 +24350 e6 9 1 11 +24355 Nf6 6 1 4 +24355 h6 3 1 1 +24356 Nf6 3 1 3 +24360 c6 6 0 2 +24360 Bd7 3 1 1 +24359 Be7 6 0 3 +24359 Nf6 5 1 2 +24359 h6 4 0 1 +24359 c6 0 0 5 +24358 c6 14 0 3 +24358 Nf6 8 0 1 +24358 h6 4 1 3 +24358 Be7 5 0 1 +24363 Bb4 5 1 4 +24365 Nf6 1 0 4 +24367 e6 4 0 3 +24368 e6 5 0 2 +24366 e6 7 0 6 +24366 Bg4 5 1 4 +24371 Nf6 2 0 4 +24370 e6 3 0 4 +24370 Bf5 1 2 3 +24370 Bg4 3 0 2 +24375 Be7 5 0 1 +24374 Nf6 7 1 7 +24374 c6 5 0 6 +24374 Bb4 3 0 2 +24377 Qd6 6 0 2 +24377 Qf6 4 0 1 +24380 Bxf3 5 0 10 +24382 Bxe2 3 1 3 +24379 Bxe2 13 0 5 +24379 Qe6 12 0 3 +24378 Bh5 15 0 4 +24378 Bf5 8 0 6 +24378 Be6 4 0 1 +24381 Bxe2 6 0 3 +24383 Qf6 14 0 6 +24383 Qd6 1 0 5 +24384 Qd6 6 1 2 +24391 Qe6 7 0 0 +24392 Bf5 4 0 2 +24392 Bh5 4 0 2 +24394 Nxe5 3 0 3 +24395 Nc6 27 3 15 +24395 c6 14 0 6 +24395 e6 5 0 3 +24395 Bf5 7 0 1 +24395 Nf6 6 0 1 +24396 c6 4 0 2 +24398 Qg6 34 3 21 +24398 Nf6 8 0 3 +24400 Qg6 3 0 6 +24399 Qg6 7 1 4 +24401 g6 6 0 8 +24401 Nc6 10 0 2 +24401 Ne4 6 0 0 +24402 g6 4 1 4 +24404 Bf5 4 1 3 +24404 h5 4 0 1 +24404 Nc6 2 0 3 +24405 Bf5 3 0 2 +24407 Bb7 13 0 6 +24408 h6 22 0 14 +24408 Bd7 3 0 2 +24409 Nc6 5 0 2 +24410 f6 7 0 0 +24412 Bg7 6 0 2 +24413 Qg6 6 0 6 +24420 Bxe6 22 3 9 +24423 g6 3 0 4 +24422 Bxe6 4 0 7 +24427 Nf6 6 0 2 +24430 h6 5 0 1 +24429 Bxe6 7 0 2 +24434 e6 5 0 3 +24441 e6 5 0 1 +24443 Bxf3 4 0 1 +24447 Qg6 10 0 11 +24448 g6 4 0 2 +24449 Bh3 5 0 5 +24450 Bb7 3 0 3 +24455 O-O-O 3 0 2 +24458 Qxd4 1 1 3 +24460 Nc6 3 0 3 +24461 Nc6 4 0 2 +24462 Bxc6 4 0 3 +24468 e5 3 0 2 +24469 O-O 4 0 1 +24470 Be7 8 0 7 +24471 dxe5 3 1 3 +24472 O-O 3 0 5 +24473 dxe5 2 0 3 +24474 O-O 5 0 1 +24476 O-O 7 1 5 +24479 O-O 2 0 3 +24480 O-O 4 0 2 +24478 O-O 4 1 1 +24477 dxe5 2 0 6 +24481 dxe5 4 0 2 +24482 Bxd6 2 0 3 +24488 Be7 3 1 2 +24490 O-O 3 0 3 +24491 O-O 7 0 2 +24494 Be7 3 0 2 +24493 dxe5 3 0 3 +24497 Be7 4 0 2 +24496 Be7 7 0 6 +24495 dxe5 15 0 7 +24498 Be7 4 0 4 +24500 O-O 2 0 4 +24503 O-O 2 0 6 +24504 O-O 2 0 3 +24506 Qxd1 0 0 5 +24507 O-O 5 1 5 +24508 Ng4 3 0 5 +24510 Qe7 1 0 4 +24509 Bg4 1 0 9 +24511 f6 6 0 2 +24516 Bd7 3 0 3 +24517 d6 2 0 4 +24525 c6 5 1 2 +24527 Qxe5 7 0 1 +24531 d6 3 0 3 +24531 Nf6 2 0 3 +24538 O-O 3 0 3 +24542 Ke7 1 0 4 +24541 Qxg2 2 0 6 +24546 Nxd5 16 1 11 +24546 Na5 13 0 12 +24548 d6 3 0 2 +24553 Nd4 2 1 3 +24557 Nxd5 5 0 1 +24560 Nxd5 5 0 5 +24562 O-O 3 0 2 +24567 d5 4 0 1 +24570 h6 5 1 2 +24574 Qxd5 3 0 3 +24575 cxd5 3 1 1 +24576 cxd5 7 0 2 +24577 Nxd5 28 2 22 +24577 Na5 10 0 12 +24577 Nd4 2 0 6 +24578 Nc3 0 0 5 +24583 Be6 7 0 1 +24583 Qe7 5 0 2 +24583 Bd6 2 0 3 +24585 fxe6 5 0 4 +24584 fxe6 10 1 1 +24586 Nxd5 12 0 2 +24587 Nxd5 4 0 3 +24589 d6 4 0 2 +24591 cxd5 7 0 4 +24593 Qxf6 2 0 6 +24597 Nxd5 10 0 0 +24600 Qxf6 4 0 1 +24601 O-O 1 0 4 +24602 Nxd5 3 0 2 +24604 Nxd5 4 0 1 +24605 cxd5 4 1 3 +24606 cxd5 6 0 2 +24607 cxd5 3 0 3 +24609 Qxd5 9 1 7 +24610 Nc6 3 0 3 +24608 Be6 9 0 7 +24608 c6 7 0 5 +24608 Nf6 0 1 4 +24618 e4 3 0 2 +24617 Bd7 9 1 4 +24619 cxd5 3 0 4 +24631 Bg7 4 0 1 +24634 Bxf5 1 0 7 +24635 Nf6 4 0 4 +24635 Qf6 3 0 2 +24636 Nxc6 2 1 2 +24637 exd4 6 0 2 +24640 exd4 4 1 1 +24640 Bd7 3 0 2 +24641 Nxd4 3 2 3 +24641 Bb4 2 0 4 +24644 bxc6 5 0 0 +24645 exd4 10 0 6 +24646 Nxd4 1 1 7 +24646 Bb4 4 0 5 +24647 Nc6 4 1 0 +24650 Ng8 5 0 0 +24652 dxe5 0 0 5 +24653 Be7 2 0 4 +24654 Nxd5 2 0 4 +24660 Qf6 3 0 2 +24661 d6 2 0 7 +24663 exd4 4 0 2 +24665 Qd4 8 0 5 +24665 Qg5 1 0 4 +24665 Qf6 3 0 2 +24667 Nf6 3 1 2 +24667 Bg4 2 0 4 +24668 Bg4 1 0 5 +24666 Nf6 2 0 9 +24666 Bg4 4 0 3 +24670 Nf6 5 0 2 +24671 Bxd4 3 0 3 +24675 d6 1 0 4 +24673 d6 5 0 0 +24672 O-O 3 1 1 +24676 O-O 2 2 2 +24679 bxc6 5 0 5 +24678 a6 4 1 6 +24678 Bd7 3 0 4 +24678 Bg4 4 0 2 +24683 O-O 3 0 2 +24681 d6 3 0 5 +24682 exd4 6 0 1 +24686 b5 5 0 2 +24690 dxc6 4 0 1 +24695 c6 8 0 7 +24695 Bc5 5 1 3 +24695 a6 3 2 3 +24697 Nf6 2 0 4 +24694 dxc3 17 0 9 +24694 Qg5 2 0 4 +24694 c6 2 0 4 +24694 a6 2 0 3 +24696 c6 10 0 6 +24696 a6 12 0 4 +24700 Nxe4 7 0 3 +24705 Bc5 2 0 4 +24705 Bg4 0 0 6 +24705 Bd6 3 0 2 +24704 Nxe4 8 0 5 +24704 Qd4 4 0 7 +24703 Bc5 8 0 11 +24703 Bg4 8 2 8 +24703 Bd6 1 0 15 +24711 dxc6 1 0 5 +24710 O-O 3 1 3 +24710 d6 2 0 3 +24712 dxc6 5 0 3 +24714 exd4 3 0 2 +24716 O-O 2 0 5 +24720 Nd6 3 0 11 +24720 Nf6 5 0 2 +24721 exd4 2 1 2 +24721 Nd6 3 0 2 +24722 b5 6 0 3 +24723 dxc6 3 0 4 +24724 Be7 3 0 2 +24728 O-O 4 0 2 +24727 d6 2 0 4 +24733 exd4 6 0 2 +24734 dxc6 7 0 2 +24737 bxc6 2 0 4 +24735 Bd7 1 0 4 +24740 Bc5 3 0 2 +24738 exd4 4 1 5 +24742 b5 5 1 2 +24744 b5 14 0 14 +24745 b5 3 0 2 +24746 Nxc6 3 0 3 +24747 exd4 5 0 3 +24752 Bg7 1 0 4 +24751 Bg7 2 0 5 +24749 Bg7 9 0 10 +24753 Bg7 0 1 4 +24750 exd4 4 0 8 +24754 b5 9 0 3 +24756 Bg7 3 0 3 +24757 b5 4 0 2 +24758 Nxc6 3 1 5 +24760 Nxd4 5 0 5 +24760 g6 5 0 2 +24768 a6 5 0 1 +24768 d6 3 0 2 +24771 exd4 2 0 4 +24773 Qg6 2 1 4 +24775 b5 8 0 4 +24775 Nf6 3 1 3 +24776 b5 2 0 3 +24779 b5 8 0 10 +24779 Bc5 4 0 1 +24777 Be7 36 1 41 +24777 b5 40 4 30 +24777 Bc5 9 0 7 +24777 d6 5 1 4 +24777 Nxe4 3 1 4 +24778 b5 12 0 12 +24778 Bc5 3 0 6 +24778 Be7 6 0 2 +24778 d6 3 0 4 +24780 Nf6 28 2 18 +24780 d6 11 2 5 +24780 Bc5 10 0 6 +24780 h6 7 0 8 +24780 Be7 7 0 7 +24780 Na5 10 0 3 +24780 Bb7 6 0 5 +24783 Qe7 13 1 13 +24783 d6 6 0 2 +24783 Bd6 6 0 1 +24783 Nf6 3 0 2 +24784 d6 7 0 3 +24786 d6 4 1 2 +24785 exd4 3 0 3 +24790 Bd6 14 1 5 +24790 Bg4 7 0 3 +24790 f6 4 0 6 +24787 Qd4 24 3 54 +24787 Qe7 11 1 7 +24787 Qg5 4 1 7 +24787 Nf6 5 0 4 +24787 Bd6 6 0 2 +24788 Bd6 24 1 31 +24788 Bg4 10 0 23 +24788 f6 5 0 5 +24788 Nf6 3 0 6 +24788 Bc5 3 0 2 +24793 Bd6 2 0 6 +24789 Bd6 21 3 19 +24789 Bg4 9 2 17 +24789 Bc5 5 0 6 +24789 Nf6 3 0 2 +24791 exd4 18 1 15 +24791 Bg4 4 0 2 +24792 Bd6 5 1 6 +24792 Nf6 4 0 6 +24800 Nf6 6 0 8 +24800 Bg4 4 0 2 +24798 Nf6 14 1 21 +24798 Bg4 6 1 7 +24798 Ba6 7 2 1 +24798 Bb7 3 1 2 +24798 Be7 2 0 3 +24798 h6 2 1 2 +24802 Bg4 3 0 2 +24799 Bg4 5 3 14 +24799 Nf6 11 0 10 +24799 h6 2 0 5 +24799 Be7 1 0 5 +24797 exd4 20 0 32 +24797 Bg4 8 2 12 +24797 Nf6 3 0 5 +24797 f6 3 1 3 +24801 Nf6 8 2 4 +24801 Ba6 6 0 0 +24806 Bxc6 3 0 3 +24803 a6 1 0 4 +24805 exd4 3 1 2 +24813 Nf6 7 0 3 +24813 a6 2 0 3 +24815 a6 5 1 1 +24812 a6 6 2 5 +24812 Nf6 4 0 2 +24814 exd4 2 0 6 +24817 exd4 4 0 2 +24821 Be7 0 1 4 +24820 Be7 5 0 3 +24823 b5 4 0 6 +24824 bxc6 1 2 2 +24825 exd4 5 0 2 +24832 Bxc6 5 0 4 +24830 Nce7 9 0 6 +24830 Nd4 3 1 1 +24831 Nxe5 3 0 7 +24836 b5 6 2 1 +24835 bxc6 14 0 2 +24837 Bd7 36 4 32 +24838 Bd7 6 2 5 +24841 Be7 2 0 3 +24839 Nf6 6 0 8 +24839 a6 4 1 7 +24840 Nf6 7 0 6 +24840 a6 7 0 2 +24840 Be7 3 0 2 +24842 Bd7 1 0 5 +24842 Be7 3 0 2 +24844 b5 6 1 12 +24846 e4 1 0 4 +24847 Nf6 3 2 2 +24848 Nf6 3 0 5 +24855 O-O 8 0 11 +24856 O-O 2 0 12 +24856 d6 3 0 2 +24854 h6 25 3 21 +24854 O-O 15 2 11 +24854 d6 4 2 14 +24858 O-O 4 1 3 +24859 Bg4 3 0 4 +24859 Nf6 4 1 2 +24859 h6 3 0 3 +24860 Nf6 7 1 2 +24862 d6 3 0 2 +24864 Qxg2 0 0 5 +24867 Nxc4 1 0 4 +24868 O-O 5 1 22 +24868 d6 11 1 13 +24873 O-O 1 0 5 +24871 O-O 3 0 7 +24871 d6 1 0 5 +24870 O-O 12 0 4 +24870 Nxe4 2 0 6 +24870 d6 2 1 5 +24869 O-O 9 1 8 +24869 h6 6 1 9 +24869 d6 3 0 3 +24869 d5 3 0 2 +24872 O-O 2 0 3 +24876 Bg4 15 1 6 +24876 Be6 2 0 3 +24878 Bg4 5 2 5 +24878 h6 1 1 3 +24877 Nf6 6 1 4 +24882 Nf6 2 0 3 +24881 Nf6 5 0 1 +24886 Bc5 25 3 23 +24886 Ba5 8 0 11 +24886 Be7 1 0 4 +24890 O-O 2 3 4 +24889 O-O 12 1 8 +24889 d6 7 1 6 +24889 Nxe4 4 1 3 +24888 h6 10 2 6 +24888 d6 10 0 7 +24888 O-O 6 0 7 +24887 exd4 81 8 84 +24893 exd4 3 0 6 +24896 Bg4 7 2 7 +24896 Nf6 2 0 5 +24895 exd4 46 3 31 +24897 Nf6 6 0 4 +24897 a6 3 0 2 +24899 exd4 17 0 9 +24906 Bxe3 5 0 2 +24903 O-O 6 0 10 +24903 h6 5 0 6 +24903 d6 3 0 4 +24904 O-O 5 0 8 +24904 d6 3 1 5 +24904 h6 0 0 5 +24902 O-O 21 2 38 +24902 d6 4 0 3 +24902 d5 5 1 1 +24905 d6 4 0 3 +24905 O-O 3 0 4 +24907 O-O 3 1 3 +24909 Nh6 19 3 25 +24909 Be6 11 0 10 +24914 Nf6 14 1 18 +24914 d6 4 0 7 +24915 Nf6 9 1 12 +24915 d6 5 0 4 +24916 Nf6 4 0 9 +24922 Nh6 4 1 4 +24921 d6 10 0 8 +24921 Nf6 5 1 3 +24921 Nge7 3 0 4 +24923 dxc3 5 0 1 +24924 O-O 4 0 10 +24927 O-O 4 0 3 +24925 O-O 5 1 3 +24926 O-O 4 0 1 +24929 O-O 4 1 2 +24930 exd4 4 1 1 +24933 dxe5 4 0 1 +24934 d6 10 1 6 +24934 Nxd4 9 0 7 +24934 Nf6 7 1 5 +24934 Ne5 3 1 1 +24936 Qxg2 5 0 3 +24938 d6 4 1 3 +24940 Nf6 4 0 3 +24940 Qf6 2 0 4 +24940 Qe7 2 0 4 +24939 dxc3 6 0 3 +24939 c5 4 0 2 +24937 d6 6 0 7 +24937 Nf6 2 0 5 +24942 Ke7 8 1 13 +24943 d5 5 1 2 +24941 Qxg2 3 0 28 +24945 Qxe5 2 0 3 +24946 Nf6 8 1 0 +24946 Qf6 4 0 5 +24946 Qe7 4 0 2 +24948 Nf6 17 1 9 +24948 Qf6 4 1 3 +24949 Nf6 3 0 8 +24951 Bxc3 5 0 0 +24952 Bxc3 3 1 2 +24950 d5 2 0 6 +24950 Bxc3 3 1 4 +24954 O-O 10 1 9 +24954 d6 5 0 3 +24953 d6 8 0 7 +24953 O-O 6 1 6 +24953 h6 1 2 9 +24956 O-O 3 0 4 +24959 Kxf7 6 0 5 +24958 d5 8 1 16 +24964 Bc5 4 0 1 +24965 Bc5 2 0 3 +24966 exd4 1 0 4 +24968 Ke7 5 0 1 +24967 Bxf2 17 1 25 +24969 Qf6 2 0 4 +24970 Kd8 13 0 2 +24973 Nxd5 1 0 4 +24972 Nxd5 126 3 75 +24972 Na5 71 7 109 +24972 Nd4 23 2 40 +24972 b5 2 1 13 +24976 Nxe4 1 0 4 +24980 O-O 2 0 3 +24981 d5 3 0 3 +24982 Nxd5 5 0 0 +24985 Nxd5 6 0 4 +24986 Ba5 3 0 2 +24993 O-O 3 0 3 +24989 d6 4 0 2 +24989 O-O 3 0 2 +24988 O-O 10 2 12 +24988 d5 4 0 2 +24987 O-O 4 1 10 +24987 d6 6 1 7 +24990 O-O 3 0 2 +24995 O-O 4 0 3 +24994 O-O 9 0 3 +24996 O-O 3 0 3 +24997 Nxd5 30 2 24 +25000 Bc5 6 0 0 +25001 Bc5 0 0 5 +25004 Nxe4 6 1 2 +25004 Nxd4 4 1 3 +25004 Bc5 3 1 1 +25008 Bg7 1 0 6 +25009 g6 1 0 5 +25010 dxc3 2 0 3 +25015 Nxd4 5 0 2 +25016 fxe6 3 0 2 +25017 Bh5 1 1 3 +25020 fxe6 6 0 1 +25021 Bh5 3 0 2 +25022 fxe6 5 0 3 +25023 fxe6 2 0 3 +25024 Bh5 8 1 9 +25025 d5 2 0 4 +25028 Kxf7 2 1 4 +25026 Nxe5 8 0 9 +25030 exd4 1 1 3 +25031 Nxd4 17 2 8 +25031 Nf6 2 1 2 +25034 Nf6 3 0 2 +25037 Nh6 4 0 5 +25038 Nh6 2 0 4 +25039 Nxe5 2 0 4 +25040 Bxc3 4 0 3 +25042 Nf6 3 0 2 +25046 Bc5 3 0 2 +25044 Bb4 9 2 10 +25044 Bc5 14 0 2 +25044 d6 5 0 2 +25045 exd4 16 3 11 +25053 Bg4 1 0 4 +25054 exd4 6 0 0 +25056 d6 5 1 6 +25056 Nf6 3 0 4 +25056 a6 4 1 0 +25058 Bc5 7 2 3 +25058 Bb4 3 0 6 +25058 Be7 0 0 6 +25060 Bc5 6 0 4 +25060 d5 4 1 0 +25061 Be7 3 0 3 +25059 Bc5 11 2 3 +25059 d6 3 1 2 +25062 exd4 2 1 5 +25067 exd4 9 2 9 +25071 Nxe4 8 1 3 +25072 Qe7 5 1 6 +25073 d6 3 0 3 +25070 Bc5 4 0 3 +25070 d6 4 0 2 +25070 d5 3 0 2 +25069 exd4 10 1 8 +25075 exd4 3 1 3 +25080 d6 2 1 4 +25079 Bc5 2 0 4 +25081 Bc5 3 0 2 +25088 Nxe4 7 0 0 +25089 exd4 6 0 0 +25091 Nd4 7 1 0 +25090 Nxe5 7 0 4 +25093 Na5 4 0 1 +25092 dxe5 3 0 3 +25092 Nxe5 4 0 1 +25094 Nxd4 59 2 38 +25094 Qf6 17 4 7 +25094 Bc5 12 2 9 +25094 Nf6 13 1 6 +25094 Ne5 10 0 4 +25094 Nge7 2 0 9 +25094 d6 2 0 8 +25095 dxc3 7 0 5 +25099 Nf6 2 2 3 +25098 Nf6 4 0 2 +25100 d6 3 2 3 +25100 Nf6 4 0 1 +25101 d6 4 0 3 +25104 dxc6 11 0 7 +25107 dxc6 3 1 5 +25108 bxc6 7 1 7 +25110 O-O 4 0 4 +25109 O-O 3 2 8 +25109 d6 4 0 4 +25109 h6 3 1 3 +25111 O-O 2 0 3 +25113 O-O 4 0 1 +25115 Nf6 4 1 2 +25114 h6 5 0 5 +25114 Bg4 2 0 4 +25117 Nf6 3 0 3 +25120 axb6 10 1 2 +25121 exd4 2 1 3 +25122 Nxe5 3 0 5 +25123 Bxd4 12 1 6 +25131 dxc6 2 0 5 +25134 dxc6 8 0 7 +25136 bxc6 7 1 6 +25137 exd4 2 1 3 +25144 O-O 2 0 3 +25143 O-O 3 1 6 +25142 O-O 3 0 3 +25142 h6 0 1 4 +25142 d6 4 0 1 +25141 O-O 7 0 3 +25141 d6 5 0 2 +25146 O-O 4 0 3 +25147 O-O 1 0 4 +25148 d5 4 2 6 +25152 Bb4 1 0 4 +25150 d6 3 1 2 +25150 Bb4 4 0 1 +25151 exd4 0 0 7 +25153 Nc6 4 0 5 +25153 Ng6 3 0 5 +25154 Nxd5 7 0 3 +25155 O-O 3 0 2 +25159 Nxd5 3 1 4 +25161 Nxe4 6 1 1 +25162 exd4 3 0 3 +25164 dxe5 6 0 2 +25166 Nxd4 36 4 27 +25166 Bc5 17 1 19 +25166 Bb4 14 1 20 +25166 d6 3 2 5 +25166 d5 3 1 1 +25166 Be7 3 0 2 +25168 Nxd4 6 0 1 +25169 Bxc6 5 0 1 +25172 Bxf3 3 0 2 +25174 Nxe5 3 0 3 +25175 Nxd4 6 1 7 +25176 a6 4 1 2 +25179 Nxd5 1 1 4 +25181 Nxd5 5 0 2 +25184 Bg4 7 0 1 +25184 Bd7 5 0 0 +25186 Bb4 14 1 19 +25186 Bb6 10 0 15 +25187 Nxd5 0 1 5 +25189 Ne7 2 0 4 +25191 Ne7 3 0 2 +25194 Nxe4 3 0 7 +25194 Bb4 2 0 4 +25194 d6 3 0 3 +25193 Nd5 4 1 8 +25193 Qe7 1 1 6 +25193 Ne4 6 1 1 +25193 Ng4 4 0 2 +25196 Nxe5 2 0 3 +25197 Bg4 2 0 6 +25200 Bxf6 2 0 3 +25206 Nce7 5 0 3 +25209 exd4 6 0 0 +25210 Nc5 4 0 3 +25211 d6 12 1 7 +25211 d5 7 1 4 +25211 Qf6 2 1 7 +25211 c5 6 0 3 +25212 exd4 10 0 7 +25213 Qxe5 3 1 4 +25214 Nxd8 5 0 3 +25214 Kxd8 3 1 1 +25218 Bd7 3 0 3 +25217 Nf6 4 0 1 +25219 exd4 4 0 6 +25221 dxe5 7 1 9 +25222 Nxd8 16 3 3 +25222 Kxd8 8 0 4 +25224 dxc3 5 0 4 +25226 d6 3 0 3 +25225 dxc3 7 0 3 +25225 Nf6 3 0 3 +25227 dxc3 6 0 0 +25228 d5 5 0 4 +25230 d6 2 0 3 +25229 d5 0 1 6 +25233 dxc3 2 0 3 +25235 Bc5 4 0 4 +25237 Qf6 22 2 26 +25237 Nxd4 5 0 3 +25237 Nf6 6 0 2 +25237 Bxd4 6 0 1 +25237 Qe7 1 0 4 +25239 Bb6 7 0 4 +25240 Qf6 2 0 5 +25236 bxc6 49 5 55 +25236 Qf6 36 5 57 +25236 dxc6 3 1 5 +25238 Qf6 4 1 7 +25238 Nf6 1 1 4 +25242 d6 2 0 4 +25241 Bb4 7 1 1 +25243 Ng6 1 1 3 +25245 Bb4 10 0 22 +25245 Bc5 3 0 3 +25244 bxc6 40 3 36 +25244 dxc6 1 0 6 +25249 Nxd4 4 1 4 +25248 Nxc6 2 0 16 +25252 d6 105 16 102 +25252 Nf6 71 6 48 +25252 c5 57 6 60 +25252 Qf6 27 6 26 +25252 b6 30 2 22 +25252 Qe7 10 1 16 +25252 d5 10 0 8 +25252 f6 9 0 4 +25252 Ne7 4 0 6 +25252 c6 4 0 1 +25253 Qxe4 2 0 4 +25255 Bc5 5 1 11 +25254 Qxc6 13 2 14 +25254 dxc6 7 1 6 +25254 Bc5 6 0 1 +25256 Bc5 1 0 4 +25258 Bb4 1 0 4 +25257 Qxe4 6 0 2 +25259 bxc6 2 0 6 +25260 bxc6 7 1 3 +25262 Bd7 3 1 6 +25261 bxc6 18 3 18 +25263 cxb2 8 0 1 +25264 exd4 4 0 2 +25265 fxe5 5 0 1 +25266 O-O 4 1 2 +25267 Nxd5 14 0 13 +25272 Nc6 3 0 3 +25276 Nxd5 4 0 1 +25281 Qe7 3 0 3 +25282 Nxe4 2 0 3 +25283 Nc6 17 1 10 +25283 d6 5 0 5 +25286 O-O 4 0 1 +25288 dxc6 6 0 1 +25288 bxc6 5 1 1 +25289 bxc6 2 1 6 +25290 exd4 4 0 2 +25292 O-O 3 0 2 +25295 O-O 4 0 4 +25295 d6 3 0 3 +25294 O-O 7 1 4 +25294 d6 3 0 2 +25298 d5 3 1 12 +25303 exd4 3 0 2 +25305 Nxd4 22 1 16 +25305 Bb4 10 2 5 +25305 Bc5 10 0 2 +25307 Qxd5 10 0 10 +25308 Nxc3 3 0 3 +25309 fxe6 2 0 3 +25311 Be7 3 0 2 +25313 Ke8 3 0 3 +25314 Bc5 3 1 2 +25316 d6 5 1 5 +25317 Qe7 8 2 5 +25317 Bd6 4 0 2 +25317 Nf6 5 0 1 +25320 dxe5 9 0 4 +25322 d5 6 0 4 +25321 d5 10 1 16 +25323 Be7 4 0 1 +25326 d6 4 0 1 +25325 d5 3 0 3 +25330 Nxe4 3 0 3 +25329 Nxe4 3 0 2 +25329 Qxe4 3 0 2 +25328 Nxe4 20 4 17 +25328 Qxe4 8 0 4 +25334 d5 1 0 5 +25335 Nxc3 3 0 2 +25331 Qe7 19 1 26 +25333 Nf6 3 1 4 +25332 d5 11 3 10 +25336 g6 2 1 6 +25337 Ba5 3 0 2 +25338 Qxf6 4 0 1 +25339 Nxd5 3 0 3 +25340 Nxd5 3 0 2 +25342 Bd6 0 0 5 +25344 Nb6 3 0 2 +25345 h6 9 1 2 +25347 c6 4 0 1 +25351 d6 3 0 2 +25353 c6 2 0 4 +25356 d6 6 0 1 +25355 h6 4 1 4 +25359 Bc5 1 0 4 +25360 dxe5 7 0 0 +25361 Bc5 13 0 6 +25362 Qxd4 5 0 1 +25363 Bb4 5 0 1 +25364 Qxe5 1 0 5 +25366 Nc6 4 1 8 +25368 h6 1 0 4 +25367 Nc6 2 0 3 +25369 Nxf6 4 1 3 +25370 Bc5 4 1 1 +25371 Bd7 5 0 3 +25372 fxe6 6 0 1 +25381 Bc5 1 0 4 +25382 a5 7 0 2 +25382 Nf6 2 2 1 +25386 Nf6 10 2 7 +25387 Nf6 6 0 3 +25385 Nf6 8 0 4 +25385 Nc6 5 0 2 +25384 exd4 12 2 15 +25392 exd4 1 0 5 +25396 exd4 3 1 2 +25399 O-O 3 0 3 +25404 Nf6 9 0 4 +25404 Bd7 1 0 4 +25403 Nf6 8 0 14 +25403 Bf6 6 0 2 +25407 Nf6 3 0 6 +25409 Bxf3 4 0 4 +25411 Bxf3 6 0 3 +25411 Bh5 5 0 4 +25415 Nf6 3 0 3 +25416 Nf6 2 0 3 +25421 Kxf7 4 0 1 +25420 Qf6 6 1 5 +25420 Nf6 4 0 3 +25423 Bxf3 3 0 4 +25423 Nc6 4 0 2 +25429 Nf6 2 2 1 +25428 c6 2 0 3 +25427 Nf6 3 1 4 +25426 h6 3 0 7 +25425 Bg6 27 0 29 +25430 Nf6 37 5 28 +25430 Qf6 30 3 17 +25430 f6 9 0 3 +25430 Qe7 4 0 5 +25431 fxe6 2 0 4 +25433 Be7 3 0 2 +25434 fxe6 3 0 2 +25436 fxe6 5 0 5 +25437 Bh5 5 0 2 +25438 c6 1 0 4 +25440 Ke7 4 0 1 +25439 Nxe5 2 0 4 +25441 Nxd4 9 1 9 +25441 Nf6 3 0 5 +25443 fxe6 6 0 1 +25447 fxe6 11 0 14 +25448 Nxd5 19 0 2 +25450 O-O 4 0 2 +25451 f6 1 0 4 +25453 f5 1 0 6 +25456 cxd5 5 0 4 +25458 Nf6 2 1 8 +25459 e4 5 0 3 +25463 Be7 4 1 3 +25462 exd4 3 1 7 +25466 exd4 5 0 1 +25469 Bxf3 4 1 0 +25470 c6 5 0 0 +25470 Be7 2 0 3 +25472 Be7 2 0 3 +25471 Be7 2 0 5 +25474 Be7 2 0 9 +25478 Be7 1 0 4 +25479 Be7 5 0 1 +25482 Bxf3 7 0 3 +25483 Nxe5 4 0 3 +25483 dxe5 4 0 1 +25485 dxe5 4 0 4 +25487 dxe5 4 0 6 +25488 dxe5 3 0 2 +25489 Nf6 14 1 22 +25489 c5 6 0 4 +25489 Bd7 4 0 1 +25489 Be7 5 0 0 +25490 Nc6 5 1 12 +25490 Nf6 4 1 5 +25491 fxe5 3 0 2 +25492 Be7 6 0 2 +25493 Be7 5 0 3 +25494 Be7 4 0 1 +25495 fxe5 2 0 3 +25498 Nf6 3 0 2 +25501 Nf6 3 1 9 +25501 c6 3 1 3 +25501 Nc6 5 0 2 +25505 Bg6 4 1 2 +25507 Nf6 8 0 2 +25507 c6 5 0 0 +25510 Bxc6 1 0 5 +25511 fxe6 3 0 4 +25512 Nxd4 6 0 1 +25517 Be7 3 1 6 +25517 Bd7 3 1 2 +25520 Nf6 2 0 3 +25522 d5 3 0 3 +25525 Nf6 4 0 2 +25529 Nf6 5 0 7 +25533 Bxd8 9 1 3 +25535 exd4 13 0 3 +25536 Bxe2 5 0 6 +25539 dxe5 76 2 23 +25540 Nc6 4 0 8 +25540 dxe5 10 0 1 +25540 Be7 3 0 2 +25541 Bxd6 2 1 2 +25542 Kxd8 20 2 4 +25543 Bg6 2 0 3 +25545 bxc6 3 0 2 +25547 Bd7 4 0 2 +25550 exd4 5 1 2 +25551 dxe5 9 1 8 +25552 Kxd8 5 1 5 +25552 Nxd8 7 0 3 +25554 Be7 5 0 1 +25554 h6 5 0 0 +25555 h6 3 1 1 +25557 Nxd6 6 0 2 +25559 Kxd8 7 0 2 +25560 Kxd8 5 0 0 +25564 Nc6 5 0 2 +25562 Nc6 4 1 3 +25563 Nc6 6 0 3 +25565 Nc6 4 0 2 +25567 Nf6 8 1 8 +25567 Bf6 3 0 4 +25568 Nf6 2 1 4 +25566 Bf6 9 0 4 +25566 Nf6 7 0 3 +25572 Bd7 3 2 2 +25571 Nxd4 7 1 2 +25570 bxc6 7 1 10 +25575 Nbc6 3 0 2 +25574 Nbc6 2 0 4 +25573 Nbc6 6 0 6 +25577 Be7 9 3 12 +25577 Bg4 4 0 2 +25577 h6 2 0 3 +25577 Bd7 4 0 1 +25577 c5 3 0 2 +25578 Be7 9 2 8 +25578 h6 4 0 3 +25576 Be7 44 4 44 +25576 Bd7 8 1 8 +25576 c5 6 1 6 +25576 a6 7 0 6 +25576 h6 7 1 0 +25576 c6 4 0 4 +25576 d5 3 1 3 +25583 c6 5 0 2 +25586 Bd7 15 2 10 +25587 Be7 3 0 3 +25585 Nc6 7 0 6 +25585 Bg4 8 0 5 +25585 Be7 3 0 4 +25585 a6 5 0 0 +25585 Nf6 4 0 1 +25588 Bxf5 5 0 3 +25589 Qxd5 3 0 2 +25591 Bg7 3 0 5 +25590 Bg7 9 0 0 +25592 Nf6 5 1 4 +25594 Bd7 13 1 8 +25595 Nf6 1 0 4 +25597 Be6 0 1 4 +25600 Be7 4 0 1 +25603 h6 2 0 3 +25604 d5 3 0 2 +25605 Kxd8 5 0 2 +25608 Be7 5 1 0 +25607 dxe5 7 0 2 +25610 O-O 5 0 2 +25611 h6 5 0 1 +25614 Be7 2 0 3 +25613 Be7 1 0 4 +25616 Nf6 2 0 3 +25618 Bxf5 8 0 2 +25620 Bxf5 4 0 1 +25624 d5 3 0 4 +25623 Bb6 3 0 5 +25625 c5 4 0 4 +25626 d5 1 0 6 +25627 d5 4 0 5 +25628 Kf7 15 0 2 +25629 Qe7 12 0 4 +25629 Be7 7 0 0 +25630 Kxd8 3 0 3 +25631 Bb6 5 0 2 +25635 Bb6 2 0 4 +25639 bxc6 4 1 3 +25643 Nd4 7 0 3 +25649 Nd4 4 0 8 +25648 Bg7 6 0 4 +25650 Qe7 3 1 8 +25647 Bg7 10 0 22 +25647 d6 7 1 7 +25647 Bc5 5 0 3 +25646 Nd4 7 1 22 +25646 Bg7 10 0 11 +25646 d6 5 0 10 +25646 Bc5 5 0 1 +25656 Nxf6 2 1 7 +25659 Bb6 3 0 2 +25665 Nd5 2 0 3 +25669 Qxe5 2 1 2 +25672 Nf6 3 1 5 +25679 Qe7 4 0 1 +25676 Bg7 3 0 19 +25676 Bg4 3 0 4 +25676 Nc6 2 0 4 +25680 Qxf3 3 0 2 +25682 Ke7 5 0 0 +25699 cxb2 5 0 0 +25701 Bxd4 12 0 2 +25702 c6 4 0 1 +25707 Nc6 5 0 0 +25708 Nc6 13 1 2 +25708 f6 8 0 2 +25709 Nf6 2 0 3 +25714 d5 3 1 2 +25715 Bc5 4 0 2 +25716 d6 2 0 4 +25722 Bd7 2 0 6 +25723 Nxb4 0 0 5 +25724 Ne5 6 0 5 +25724 Bb4 1 0 9 +25724 d6 2 0 5 +25725 Be6 1 0 7 +25726 Bc5 2 2 4 +25727 d6 2 1 6 +25732 Bc5 5 0 5 +25732 d5 3 0 2 +25731 Be7 4 1 9 +25731 Bc5 1 0 4 +25730 Bb4 6 3 19 +25730 d6 4 1 1 +25730 Bc5 3 0 2 +25733 Bc5 3 0 3 +25736 Bd7 2 0 8 +25735 Nf6 2 0 10 +25737 Bg4 2 0 4 +25739 d5 0 1 5 +25741 Ba5 2 0 5 +25742 d6 2 0 3 +25743 Bb4 11 0 7 +25743 b6 2 0 5 +25747 Nf6 4 0 5 +25749 Bc5 0 0 6 +25748 Bc5 9 1 12 +25751 Bd7 7 0 5 +25750 Nf6 9 0 6 +25757 Bc5 4 0 3 +25762 Kxf7 4 0 2 +25761 Bc5 10 0 5 +25761 Ba5 4 0 4 +25767 h6 2 0 3 +25768 Bb4 1 1 3 +25770 d6 6 0 0 +25770 Nc6 5 0 0 +25772 Bb4 2 0 5 +25771 Qe7 4 0 1 +25773 Nf6 7 0 0 +25773 c6 5 0 1 +25774 Bb4 9 0 4 +25776 Bb4 51 0 26 +25776 Nf6 30 0 13 +25776 d6 18 1 15 +25776 Nc6 20 0 6 +25776 Qe7 12 0 10 +25776 d5 6 2 6 +25776 f6 6 1 3 +25776 c6 5 0 4 +25776 Bc5 5 0 2 +25776 Nh6 5 1 0 +25777 Be6 5 1 4 +25777 h6 4 0 1 +25778 Nf6 1 0 5 +25779 Qe7 4 0 4 +25780 Kf7 8 0 0 +25784 exd4 4 0 2 +25786 Qc5 5 0 6 +25786 Qe6 2 0 5 +25787 Bxc6 3 0 3 +25788 fxe6 9 0 2 +25789 Nf6 8 0 4 +25790 Nd4 5 0 4 +25790 Nf6 6 0 1 +25790 Bxf3 4 0 1 +25793 Bg4 3 0 3 +25795 Bb6 5 0 3 +25798 Nf6 5 0 1 +25800 Ba5 4 0 1 +25802 Bb4 2 0 3 +25804 Qxd5 6 0 1 +25806 d5 1 0 4 +25813 Bb4 2 0 3 +25815 Nxe4 4 0 2 +25817 Nxd5 5 0 4 +25820 exf4 3 0 3 +25824 Nf6 4 1 4 +25827 Nf6 3 0 2 +25831 Bb6 4 0 3 +25832 Bb6 3 1 3 +25833 Ba5 9 0 3 +25834 d6 10 1 9 +25834 Nf6 12 0 1 +25837 d6 12 2 6 +25837 d5 3 0 5 +25837 Nf6 4 0 2 +25837 Nh6 3 0 2 +25840 Qxh4 2 0 4 +25838 fxg3 18 0 10 +25841 Qxh4 4 1 2 +25842 fxg3 3 0 6 +25844 Bg4 6 0 4 +25845 Bb6 12 0 1 +25852 Nf6 4 0 2 +25852 Bg4 2 0 3 +25853 d6 4 0 1 +25854 d6 7 0 2 +25854 Nf6 4 0 2 +25855 Ba5 3 0 2 +25856 Bg4 4 0 1 +25857 Qxd5 6 0 1 +25858 Bg4 5 0 3 +25861 c6 4 0 1 +25864 Nh6 2 0 4 +25869 Nc6 5 0 3 +25869 Bxf3 6 0 0 +25873 Nxd5 2 0 3 +25871 c6 2 1 4 +25872 Nxd5 3 0 4 +25874 Qe6 14 0 2 +25874 Qd8 8 0 4 +25875 fxe6 5 2 11 +25876 Nf6 5 0 3 +25877 Nf6 12 1 4 +25877 Bxf3 5 0 3 +25877 Nc6 1 0 5 +25877 Be7 2 0 3 +25879 Be6 2 0 4 +25881 Be7 5 0 0 +25884 Nf6 5 0 3 +25885 Bg4 4 1 0 +25886 Bxf3 6 0 2 +25886 Nf6 5 0 1 +25887 Nf6 4 0 4 +25891 h6 5 0 5 +25891 d6 5 0 3 +25892 d6 2 0 4 +25895 Be6 5 0 6 +25895 Bg4 6 0 1 +25896 Be6 3 0 5 +25900 Kxf7 6 0 2 +25898 Qh4 11 0 8 +25899 gxf3 4 1 4 +25902 gxf3 2 0 3 +25903 h6 6 0 7 +25909 Bd6 2 1 2 +25918 Nxd7 2 1 3 +25919 Nf6 1 0 5 +25924 Nf6 2 0 8 +25925 c6 4 0 6 +25926 fxe6 3 1 1 +25927 exd5 5 1 0 +25929 Bd6 1 0 4 +25933 Be7 1 0 4 +25931 Bb4 4 0 2 +25931 Bd6 1 1 3 +25932 Be7 2 1 2 +25942 Bxc3 2 0 10 +25942 Nf6 5 0 1 +25946 Bd7 2 0 3 +25951 bxc6 6 1 12 +25956 a6 3 1 3 +25961 c5 1 0 4 +25963 Nc6 5 0 3 +25962 Nc6 6 1 14 +25965 Qxf6 5 0 2 +25966 Bxe5 3 0 2 +25967 Kxf7 4 0 1 +25968 Bc5 2 1 5 +25968 Nf6 1 1 6 +25972 bxc6 8 2 8 +25976 Bd7 2 0 8 +25975 Qb6 1 0 13 +25975 cxd4 2 1 4 +25977 Nc6 2 0 8 +25979 Bd7 2 0 4 +25978 Qb6 6 1 14 +25978 Bd7 2 0 5 +25978 cxd4 2 1 2 +25980 Bxc5 1 1 9 +25982 Nc6 1 1 9 +25985 Nc6 1 0 5 +25983 Nc6 2 0 4 +25984 Nc6 5 0 6 +25995 Be7 4 0 6 +25997 c6 1 0 4 +25996 Bd6 2 0 5 +25996 c5 2 0 4 +25996 Be7 1 0 5 +25996 c6 1 0 4 +26001 Nf6 2 0 3 +26002 Nf6 1 0 4 +26004 Bxe7 2 1 4 +26009 Ne7 1 0 10 +26009 Nf6 2 0 7 +26011 Nf6 4 0 1 +26008 Nf6 4 0 9 +26008 c6 5 0 7 +26008 Ne7 1 1 9 +26016 Nc6 2 0 4 +26015 Nc6 2 2 4 +26017 Nf6 4 1 4 +26017 Bd6 1 1 3 +26022 Bd6 10 3 26 +26022 Be7 11 2 22 +26022 c5 5 0 8 +26022 Bg4 1 1 6 +26022 Nc6 1 1 3 +26025 Bd6 2 2 8 +26025 Be7 1 1 5 +26027 c5 5 0 0 +26024 Be7 10 2 10 +26021 c5 18 1 22 +26021 Be7 10 4 23 +26021 Bd6 9 1 14 +26021 Bb4 9 1 10 +26021 c6 2 0 5 +26021 Nc6 6 0 1 +26021 Bg4 2 0 4 +26029 Bd6 0 1 4 +26031 Be7 2 0 4 +26028 Bd6 4 1 1 +26023 c5 5 1 10 +26023 c6 7 0 8 +26023 Be7 4 2 5 +26023 Bd6 3 0 4 +26023 dxc4 3 0 3 +26026 Be7 4 1 5 +26026 Bd6 3 1 4 +26034 cxd4 4 0 3 +26033 Bxc5 9 0 12 +26038 Be6 1 0 4 +26039 Nce7 2 0 4 +26040 a6 3 0 2 +26042 exd3 2 0 7 +26043 Qa5 3 0 2 +26045 Nf6 2 0 3 +26047 Nf6 1 1 4 +26050 O-O 1 0 7 +26051 O-O 2 1 2 +26052 c5 4 0 1 +26053 Bxd2 12 0 3 +26060 Nxd4 6 0 2 +26060 Bc5 2 1 2 +26061 bxc6 5 0 3 +26063 Nc6 3 0 4 +26065 Bd7 3 0 2 +26064 Nf6 5 1 3 +26067 Nc6 7 0 3 +26068 exd5 5 0 2 +26070 dxe4 4 0 6 +26071 dxe4 2 0 4 +26072 Bxc3 5 0 9 +26074 h6 2 0 4 +26075 Nfd7 16 0 13 +26077 c5 9 0 6 +26076 c5 9 1 6 +26081 Nf6 3 0 3 +26080 Bxc5 4 0 1 +26083 Ngf6 5 0 1 +26084 Be7 6 0 9 +26085 Qxf6 9 2 5 +26087 c5 6 1 3 +26088 c5 2 0 4 +26086 c5 8 0 4 +26091 Qxf6 3 0 2 +26092 c5 3 0 2 +26093 Nxd7 1 0 6 +26096 Nc6 3 0 3 +26097 Nc6 2 0 12 +26098 Bd7 10 2 13 +26098 Qb6 3 0 4 +26101 Qb6 1 0 7 +26099 Qb6 4 1 3 +26099 Nge7 4 0 2 +26102 Bxc5 2 0 4 +26103 Nc6 4 0 2 +26107 Nc6 2 0 4 +26105 Nc6 4 0 5 +26106 Nc6 3 0 4 +26108 Nc6 5 0 4 +26110 Bd7 7 1 13 +26110 Qb6 3 0 12 +26110 a6 2 1 3 +26111 Qb6 7 2 10 +26111 cxd4 1 0 7 +26109 Qb6 55 3 69 +26109 cxd4 15 0 19 +26109 Bd7 11 1 19 +26109 Nge7 18 0 10 +26109 a6 0 1 4 +26112 Qb6 5 0 7 +26116 Nc6 28 3 33 +26116 cxd4 4 1 1 +26116 Bd7 4 0 1 +26119 Nc6 3 0 2 +26117 Nc6 3 0 2 +26121 Nc6 10 1 9 +26121 Bb4 6 1 2 +26122 Nc6 0 0 9 +26124 Nc6 5 0 4 +26123 g6 3 0 3 +26126 Nc6 2 0 3 +26127 Nc6 6 0 1 +26130 Nc6 2 0 6 +26133 Nf6 5 1 2 +26134 Bd6 1 0 4 +26136 Nf6 2 1 3 +26135 Ne7 4 0 3 +26141 Be7 8 1 7 +26141 Bd6 5 0 7 +26141 c5 6 0 0 +26142 Bd6 4 1 4 +26142 Be7 5 0 4 +26140 Bd6 9 1 7 +26140 Be7 8 0 4 +26140 a6 4 0 1 +26146 Nf6 3 0 5 +26148 Be7 2 0 4 +26147 Bd6 6 0 3 +26147 Bb4 3 0 4 +26147 c5 1 0 5 +26147 c6 1 0 4 +26153 Nf6 2 0 5 +26153 Ne7 2 1 3 +26155 Nc6 0 1 5 +26156 Bxd3 3 0 3 +26157 Nf6 3 0 2 +26158 Bd6 14 1 10 +26158 Be7 5 0 15 +26158 c5 8 0 2 +26158 Bg4 3 0 4 +26159 Bd6 3 1 3 +26159 Be7 2 1 2 +26160 Be7 4 0 4 +26163 Bxc5 3 0 3 +26167 dxc4 1 0 5 +26168 dxc4 1 0 4 +26169 c6 4 0 3 +26170 Nxd5 2 0 4 +26175 h5 6 0 1 +26177 Qb6 3 0 3 +26181 Nc6 1 2 5 +26183 O-O 3 1 2 +26187 c5 6 0 0 +26188 Bd7 7 0 6 +26188 Qb6 2 0 3 +26188 Ne7 3 0 2 +26190 cxd4 2 0 4 +26195 Ne7 1 1 3 +26196 Bd6 4 0 7 +26196 c5 3 0 5 +26198 Bd6 4 0 5 +26201 Nf6 23 0 10 +26202 Nf6 18 0 15 +26203 Nf6 4 0 6 +26208 O-O 3 0 2 +26217 O-O 4 0 3 +26219 g4 3 0 5 +26219 h5 1 1 4 +26220 Bxf3 2 0 4 +26222 Nf6 1 0 4 +26224 Nf6 4 0 1 +26225 Qxe5 3 0 5 +26226 Qxe5 5 1 3 +26232 c4 2 0 5 +26234 Nxc6 3 0 3 +26235 c3 2 1 2 +26238 c4 3 0 10 +26239 c4 7 1 2 +26240 Nxd4 2 0 4 +26241 Nxd4 2 0 4 +26242 d3 3 0 2 +26243 Bxe5 5 0 5 +26246 Qc2 1 0 4 +26247 Be2 5 0 0 +26248 Be3 3 1 4 +26250 Bg2 0 0 5 +26251 g3 0 0 5 +26254 bxc3 4 1 3 +26255 g3 4 0 2 +26256 Bg2 6 0 1 +26258 e4 6 0 1 +26259 Nc3 5 0 3 +26261 Nc3 3 0 2 +26262 O-O 1 0 5 +26264 Bc2 4 0 1 +26265 O-O 3 1 1 +26266 Nbd2 3 0 2 +26269 Bxf6 3 0 2 +26271 Nbd2 3 0 3 +26273 c4 4 1 2 +26274 b4 2 0 3 +26276 Nf3 2 0 8 +26275 Nf3 6 1 4 +26278 Bb2 3 1 1 +26279 Nxb5 4 0 2 +26280 Nc3 3 0 3 +26281 Nc3 6 2 3 +26282 Bxb5 4 1 2 +26283 Bd3 2 0 4 +26287 Be2 4 0 2 +26288 Be3 5 0 3 +26291 Bd2 2 0 3 +26292 exf6 6 0 0 +26293 Nbd2 3 0 2 +26293 Be2 5 0 0 +26293 Nc3 2 0 3 +26294 Nbd2 3 0 7 +26295 e3 0 1 4 +26296 Bxc3 3 1 5 +26299 Qxc3 10 0 1 +26300 Nf3 0 0 6 +26304 Nxc6 4 0 1 +26305 e4 5 1 1 +26306 Nf3 3 0 3 +26309 bxc3 4 1 0 +26310 O-O 2 0 5 +26313 Be2 4 0 1 +26316 Qd2 3 1 4 +26316 Bh4 4 0 3 +26316 e4 3 0 2 +26318 Bd3 7 0 5 +26318 Be2 4 1 2 +26319 Bg2 5 0 0 +26325 Bg5 3 1 1 +26325 Nf3 3 0 2 +26327 Be2 18 1 19 +26327 Bd3 3 0 7 +26327 Bg5 4 0 3 +26328 dxe5 4 1 1 +26329 Be3 13 0 19 +26330 Nf3 23 0 14 +26330 e5 4 1 2 +26334 Qxc4 5 0 2 +26338 bxc3 32 8 40 +26339 Be2 3 2 9 +26339 Bd3 1 0 5 +26342 Qd1 2 0 3 +26345 Nf3 1 0 5 +26346 Kxd1 2 0 3 +26347 Bg2 4 0 1 +26349 Nc3 4 0 1 +26350 e4 3 1 1 +26354 Bg2 5 0 0 +26355 Bd3 8 0 1 +26357 Nf3 5 0 1 +26358 O-O 4 0 1 +26360 fxe4 5 0 1 +26361 Nf3 3 1 2 +26362 Nc3 2 0 3 +26363 Nc3 3 1 4 +26364 Bg5 3 0 3 +26365 Nf3 9 1 16 +26369 f4 5 0 0 +26373 e4 8 1 2 +26376 e3 2 0 8 +26379 e3 1 0 4 +26382 e6 4 0 3 +26383 Qd2 4 0 1 +26384 h3 2 0 4 +26386 Bg3 3 0 2 +26389 Bh2 5 0 2 +26390 Nd4 5 1 1 +26391 Qxf4 4 0 1 +26392 Bg3 3 0 2 +26393 Nc3 13 0 1 +26394 f3 5 0 0 +26395 e6 10 0 2 +26396 Qd2 6 0 4 +26397 a3 5 0 1 +26398 a3 5 0 1 +26399 a3 11 0 2 +26400 a3 4 0 1 +26401 Qxf4 7 0 3 +26402 Nxd6 7 0 2 +26404 Nc3 6 0 1 +26406 c3 4 0 1 +26407 Qd2 5 1 2 +26408 Qxf4 13 0 2 +26409 f3 6 0 0 +26410 Qd2 9 0 2 +26411 Bxf6 4 0 2 +26413 Bf4 4 0 1 +26414 Bf4 6 0 0 +26418 O-O 3 0 2 +26419 Bd3 7 1 2 +26426 O-O 4 1 3 +26427 Nbd2 4 0 1 +26428 d5 5 0 0 +26429 Qa4 1 0 4 +26432 d5 4 0 1 +26432 Nf3 5 0 0 +26431 Nf3 6 0 2 +26438 Bxe7 4 0 1 +26441 bxc3 3 0 2 +26442 bxc3 1 1 4 +26443 Nf3 5 0 0 +26444 Nf3 13 0 2 +26444 a3 3 1 2 +26445 e3 3 1 3 +26449 e3 6 0 3 +26451 bxc3 2 1 2 +26452 e3 4 0 3 +26456 Bxc4 3 0 2 +26457 Bd2 5 0 1 +26458 e3 8 0 4 +26473 Nf3 4 0 1 +26474 Nge2 3 1 1 +26478 Bxc4 3 0 2 +26479 Bxc4 5 0 6 +26481 Bg5 4 0 1 +26483 axb5 8 0 3 +26486 e3 4 0 1 +26487 bxc3 7 0 2 +26488 bxc3 8 0 7 +26493 Qxc4 2 0 3 +26496 axb5 6 0 0 +26498 Nc3 6 0 4 +26499 Qxc4 4 0 1 +26500 Qf3 66 1 10 +26502 Nxd2 3 0 4 +26507 Nf3 5 0 3 +26510 b3 6 0 3 +26515 bxc3 3 0 2 +26521 Nb5 2 1 3 +26522 Bd2 0 1 4 +26524 Bg2 5 0 3 +26525 exf6 6 0 1 +26527 e4 5 0 1 +26531 Bf4 3 0 5 +26532 Nf3 4 0 1 +26533 e3 6 0 7 +26537 Bxe7 3 0 2 +26538 Nf3 11 2 9 +26540 Nf3 5 1 1 +26539 Bh4 10 1 5 +26543 Nf3 4 0 1 +26545 e3 3 0 3 +26547 e3 8 1 3 +26548 e3 3 1 1 +26549 e3 10 0 8 +26550 Bd3 3 0 4 +26551 e3 2 0 4 +26553 e3 4 1 3 +26555 bxc3 6 2 5 +26556 e3 7 0 2 +26557 Qc2 3 1 2 +26558 Nf3 5 0 2 +26559 Bd3 4 0 5 +26561 b4 4 0 1 +26562 cxd5 6 0 2 +26564 e3 7 1 5 +26567 b4 7 0 1 +26568 bxc3 5 0 0 +26571 bxc3 4 0 1 +26572 O-O 4 0 5 +26574 Bxb4 1 0 6 +26580 Nc3 3 0 2 +26581 Bc2 4 0 2 +26582 O-O 2 0 3 +26586 Bd3 1 0 5 +26590 Qxb7 10 0 4 +26589 Be3 6 0 3 +26589 d5 5 0 2 +26592 Be3 6 0 3 +26591 Be3 2 0 4 +26588 Bf4 6 0 4 +26598 Bd3 3 0 2 +26608 Nf3 2 1 3 +26610 Bc3 1 0 4 +26616 Nc3 0 0 5 +26623 Nbd2 3 0 2 +26624 Bd3 2 1 2 +26625 Bd3 1 0 4 +26627 Be2 1 0 4 +26629 Nf3 3 1 2 +26630 Nf3 3 1 3 +26631 e4 7 0 1 +26632 e3 4 0 1 +26633 Nf3 7 0 5 +26635 e3 6 1 8 +26636 e3 11 2 9 +26638 Be2 1 0 5 +26639 Bg2 4 1 5 +26640 e3 5 1 2 +26642 Be2 3 1 2 +26643 b4 8 1 3 +26645 exd4 3 0 2 +26646 O-O 2 0 6 +26648 Be2 2 0 3 +26650 Nc3 1 1 5 +26653 Nf3 3 1 1 +26659 Nf3 3 0 2 +26660 Nf3 2 0 3 +26662 Be2 3 0 8 +26671 Bxd2 1 0 4 +26672 Qxd2 2 1 4 +26673 d3 1 1 3 +26674 Be2 10 2 10 +26676 c3 4 0 1 +26680 Nf3 2 0 5 +26682 d4 3 0 2 +26681 d4 5 0 5 +26684 Bxd5 4 0 8 +26684 d4 2 0 4 +26684 Nc3 4 0 1 +26689 Nxe5 1 0 4 +26692 Nf3 7 0 4 +26692 Nc3 4 1 4 +26691 Nc3 7 0 5 +26691 Nf3 4 2 3 +26693 fxe5 9 1 14 +26701 Nf3 2 0 5 +26700 Nf3 5 0 9 +26700 Nc3 6 1 6 +26702 fxe5 9 1 8 +26705 d4 5 0 0 +26706 Re1 2 1 2 +26707 Qe2 3 0 2 +26711 Qxd5 3 1 1 +26713 Nxe4 8 0 0 +26714 c3 1 0 4 +26715 Nxc6 0 0 5 +26716 Bxc3 10 1 3 +26718 bxc3 4 0 5 +26717 Bg5 0 0 6 +26717 Qe2 2 0 3 +26723 Bd3 1 0 5 +26725 O-O-O 2 0 3 +26730 O-O 5 0 1 +26732 d3 2 0 3 +26734 Bb5 2 0 3 +26741 Bxd7 7 0 6 +26741 Qe2 2 0 4 +26746 d4 4 0 1 +26747 Nxc6 1 0 4 +26750 c3 5 0 1 +26751 c3 2 0 3 +26753 Qd2 1 0 4 +26755 Bb5 3 0 3 +26757 Ne2 4 0 1 +26758 d3 4 0 1 +26761 dxc5 8 2 4 +26767 Nc3 1 0 4 +26769 Nxd4 2 1 5 +26774 Nxd4 3 1 4 +26782 Qxd4 1 1 4 +26783 c3 1 0 4 +26784 exd5 2 0 3 +26785 Bb5 5 0 1 +26786 exd5 0 1 6 +26787 Ba2 4 0 1 +26790 Bb5 2 1 9 +26792 Bb3 1 1 3 +26795 Nxc6 2 0 4 +26793 Nxc6 7 1 11 +26796 Qxd4 5 0 2 +26799 Nxc6 2 0 3 +26800 Bb5 3 2 2 +26801 d3 1 0 4 +26802 cxd4 5 0 3 +26803 Nxc6 2 1 7 +26804 Bxc6 4 0 1 +26808 Nxc6 4 1 3 +26809 Qxd4 8 0 5 +26811 Nxc6 5 0 11 +26811 Be3 4 0 8 +26812 cxd4 4 0 2 +26816 Nxd4 1 0 9 +26819 Nc3 3 0 2 +26822 Nxc6 3 0 2 +26822 Bc4 5 0 0 +26822 Be3 3 0 2 +26822 Be2 3 0 2 +26821 Be2 11 0 10 +26821 Bb5 7 0 7 +26821 Bc4 6 0 7 +26821 Be3 2 1 10 +26821 Bg5 4 0 3 +26820 Ndb5 13 1 11 +26820 Nf5 9 2 4 +26820 Nb3 4 0 11 +26820 Nxc6 7 0 5 +26820 Nf3 2 1 3 +26823 Bg5 2 0 4 +26824 Be3 5 0 3 +26825 Bd3 6 2 26 +26825 e5 3 0 8 +26825 Nc3 1 2 5 +26829 e5 6 1 1 +26829 Nc3 5 0 1 +26828 Nc3 12 0 8 +26828 Bc4 5 0 1 +26828 Bb5 2 0 3 +26827 Nc3 12 0 12 +26827 Bc4 4 0 4 +26835 Bd3 2 0 3 +26839 Be3 4 0 3 +26837 Bc4 7 0 3 +26837 Be3 4 0 1 +26837 Be2 3 0 2 +26838 Be3 2 1 3 +26842 Bd3 3 1 7 +26842 Nc3 1 0 4 +26843 Nc3 3 0 5 +26844 Nc3 7 1 11 +26844 Bd3 2 0 3 +26845 Nc3 3 0 3 +26848 Nb1c3 9 0 0 +26848 Nd6 2 1 3 +26847 Nd6 16 2 11 +26847 Nb5a3 3 0 3 +26846 Nb1c3 9 1 11 +26846 c4 7 1 5 +26849 Nc3 2 0 5 +26851 Nc3 6 0 1 +26852 Nc3 15 1 29 +26852 Bc4 16 2 19 +26852 Bd3 9 0 10 +26852 c4 8 0 2 +26852 Be2 2 1 4 +26852 f4 2 1 2 +26853 Be3 7 0 3 +26856 Bd3 9 0 5 +26856 Nc3 4 0 3 +26857 Nxc6 2 0 4 +26859 Nc3 6 0 4 +26859 Qd2 2 0 3 +26860 Be3 42 1 29 +26860 Nxc6 4 1 9 +26861 Nc3 5 0 6 +26861 Qd4 7 0 2 +26861 Bd3 2 0 7 +26861 Bc4 4 0 1 +26862 Bb2 2 0 3 +26863 Be3 6 0 4 +26864 Bc4 5 0 3 +26866 Bc4 3 0 3 +26869 d6 5 0 1 +26873 Be3 5 0 5 +26873 Bc4 4 0 1 +26874 d3 3 1 2 +26875 d4 3 0 2 +26877 Nxd4 7 0 5 +26877 Qxd4 0 1 5 +26879 Nxd4 4 1 6 +26880 Nxd4 3 0 3 +26884 Nxc6 4 0 5 +26886 O-O 2 0 4 +26887 Nxd4 0 0 6 +26889 Nxc6 0 0 6 +26893 Nxd4 1 0 4 +26894 d4 2 0 3 +26895 Nxd4 0 0 5 +26896 Nxc6 1 1 4 +26898 Qxd4 3 0 2 +26900 a4 3 1 10 +26901 Nf5 7 1 7 +26908 Nc3 7 1 5 +26908 d5 4 0 1 +26910 cxd4 4 0 2 +26917 Bb5 6 0 1 +26919 Qxd4 8 0 1 +26918 Be3 3 0 4 +26916 Be3 8 2 11 +26922 Nc3 3 0 6 +26922 Bd3 1 0 7 +26923 Qe2 11 0 5 +26923 Bxd7 5 1 3 +26928 Be3 45 3 41 +26928 Bg5 34 2 48 +26928 Bc4 18 0 22 +26928 Be2 19 1 15 +26928 Bd3 15 0 15 +26928 f3 11 0 11 +26928 f4 9 1 6 +26928 Nf3 6 0 6 +26928 a4 4 2 6 +26928 g3 0 0 6 +26931 Nb3 9 1 8 +26931 Nf3 7 0 5 +26931 Bb5 3 1 1 +26930 Bc4 4 1 7 +26930 Bg5 2 0 9 +26930 Be3 7 0 3 +26930 Be2 4 1 3 +26930 Nf3 0 1 4 +26930 f3 3 0 2 +26929 Be3 40 1 40 +26929 Bg5 10 1 13 +26929 Bc4 10 2 3 +26929 f3 6 0 7 +26929 Be2 6 0 5 +26929 Bd3 3 1 7 +26929 Bb5 3 0 3 +26933 c4 4 0 1 +26935 Be3 4 0 2 +26936 Nf3 2 0 3 +26939 Nb5a3 3 0 2 +26940 Qxd4 2 0 3 +26941 Be2 2 0 3 +26942 Nc3 4 1 0 +26945 Be3 3 2 5 +26945 Bc4 3 0 3 +26946 Bxc6 10 2 8 +26948 Bb5 4 0 1 +26949 Qxd8 4 0 1 +26950 Bc4 4 0 1 +26952 Nxd4 1 0 4 +26953 O-O 3 0 2 +26955 Bb5 4 0 1 +26956 Nxc6 3 0 2 +26957 Qxd4 4 0 2 +26960 Be3 5 0 4 +26959 Bd3 5 0 4 +26959 a4 1 0 5 +26962 Bg5 2 0 5 +26962 dxc5 5 0 2 +26963 Bb5 4 0 1 +26968 b3 1 1 3 +26971 Nd6 5 0 0 +26974 Be3 3 0 3 +26973 Qxd4 13 0 3 +26972 Be3 25 2 10 +26972 Be2 4 0 1 +26978 Bd3 11 0 8 +26978 Nc3 10 1 8 +26979 Nxc6 1 0 4 +26981 Bd3 2 1 3 +26980 Be3 2 0 4 +26982 Be3 3 0 3 +26986 O-O 3 0 3 +26991 Be3 9 0 8 +26991 Nxc6 4 0 4 +26990 Be3 8 1 13 +26990 Bd3 5 0 6 +26990 Be2 2 1 4 +26990 Nf3 3 1 1 +26993 Be3 4 0 2 +26994 Nc3 1 0 8 +26994 Be2 4 0 1 +26995 Bc4 1 0 4 +26996 Nc3 2 0 3 +26996 Bb5 2 0 3 +26997 O-O 3 2 4 +27000 Nc3 5 0 9 +27000 Bd3 3 0 4 +27000 Bb5 3 0 3 +27002 Be3 5 0 5 +27003 Nc3 13 0 4 +27005 Nc3 2 0 10 +27005 Nxc6 4 0 2 +27005 c3 3 0 2 +27006 Be3 20 0 25 +27006 Nxc6 6 0 10 +27007 Be3 5 0 1 +27008 Nc3 2 0 4 +27009 Be3 3 0 3 +27016 Be2 1 1 3 +27019 Qd1 0 0 6 +27021 Nb1c3 5 1 0 +27026 a3 2 0 4 +27026 Bg5 1 0 4 +27038 Nf3 2 0 3 +27039 Nf3 10 0 8 +27041 Nxc3 1 0 5 +27043 Nf3 3 0 2 +27042 Nf3 4 0 3 +27044 Bc4 10 0 5 +27046 Bc4 1 0 4 +27045 Bc4 3 0 2 +27047 Bc4 1 0 4 +27050 exf6 1 0 5 +27054 Bb5 6 0 1 +27055 d3 3 1 1 +27057 cxd4 2 0 3 +27058 Nxc6 1 2 2 +27059 Bc4 4 0 3 +27061 O-O 3 0 3 +27063 Be2 3 0 4 +27064 Bxd7 2 0 4 +27064 Qe2 4 1 1 +27065 Qe2 1 0 4 +27065 Bxc6 2 1 2 +27067 cxd4 4 0 8 +27071 Nf3 8 2 8 +27071 d4 1 0 4 +27072 Nf3 5 0 2 +27074 Nf3 6 0 1 +27079 Ng3 2 0 3 +27081 Qe2 5 0 1 +27082 d4 2 0 3 +27083 d4 2 0 4 +27084 Bxd3 5 0 6 +27085 Be2 3 1 2 +27086 Qxd3 11 2 3 +27089 g4 2 0 6 +27090 Qxf3 3 0 3 +27092 O-O 5 1 4 +27093 O-O 2 2 4 +27095 Bg5 3 0 2 +27097 Bc4 4 2 3 +27103 Bxf3 1 2 3 +27100 O-O 7 0 1 +27105 Qxf3 3 1 3 +27106 Bxc6 3 0 2 +27107 Bxc6 2 0 4 +27107 Ba4 1 2 2 +27111 c3 3 0 3 +27110 O-O 2 0 6 +27110 c3 3 0 5 +27113 Be2 2 0 3 +27112 Bb5 11 0 8 +27112 Bg5 1 0 5 +27115 h3 3 0 2 +27117 Nc3 4 0 2 +27119 Nc3 3 0 2 +27118 Bxc4 2 1 6 +27121 O-O 0 0 5 +27123 O-O 2 0 3 +27124 Bg5 3 0 2 +27124 Be2 3 0 2 +27126 Bg5 0 0 5 +27125 Bg5 1 0 7 +27125 Bb5 4 0 3 +27127 Nc3 3 0 3 +27132 Nf3 16 2 13 +27132 h4 10 1 10 +27132 Bc4 6 0 4 +27132 Ng1e2 1 1 3 +27133 Bd3 2 1 3 +27135 Nf3 5 0 2 +27136 Nf3 3 0 4 +27137 Nf3 5 0 5 +27139 Nf3 22 1 20 +27139 f4 6 1 8 +27139 Qg3 5 0 6 +27139 c3 3 0 5 +27139 Nc3 3 0 2 +27143 Bd3 7 1 8 +27144 Bd3 6 0 8 +27145 Qxd3 8 0 12 +27148 O-O 3 0 3 +27150 Qxd3 4 0 1 +27152 h4 5 0 0 +27155 cxd4 1 1 3 +27156 Bf4 8 1 8 +27156 h3 2 0 5 +27156 Ne2 2 0 3 +27157 Bb5 3 1 2 +27158 Qxd3 4 0 2 +27165 Nf3 2 1 5 +27164 Nf3 3 0 3 +27167 d4 3 1 1 +27168 Qxd3 3 0 2 +27170 Bb5 2 0 3 +27171 Bxd3 7 0 3 +27173 Nf3 1 0 4 +27177 dxe5 1 0 5 +27183 Be2 14 2 19 +27185 d4 3 0 2 +27184 d3 1 0 7 +27187 Nf3 1 0 5 +27188 Nf3 5 1 9 +27190 Bxc6 4 1 3 +27190 d3 2 0 3 +27191 Bb5 5 1 7 +27191 d3 4 0 5 +27193 Bb5 3 0 3 +27195 d3 2 1 2 +27197 d3 5 0 9 +27197 Nc3 1 1 4 +27203 Nc3 4 2 4 +27204 O-O 2 0 3 +27206 Bb5 5 0 1 +27210 Bxf3 5 0 3 +27211 g4 5 0 4 +27212 Qxf3 1 1 3 +27213 O-O 3 0 2 +27215 O-O 2 0 6 +27218 Bd2 2 0 4 +27216 Be2 2 0 4 +27219 O-O 3 0 3 +27220 Bd2 2 0 3 +27221 O-O 1 1 3 +27223 O-O 3 0 4 +27226 Bd2 1 1 3 +27230 Nf3 4 0 11 +27231 Nf3 5 0 6 +27232 h3 5 0 2 +27235 Nf3 2 1 3 +27237 Nf3 1 1 3 +27236 Nf3 4 0 2 +27245 Bxf3 4 1 3 +27250 O-O 3 1 4 +27251 O-O 2 0 4 +27253 Bg5 1 0 7 +27253 Bc4 4 0 1 +27254 O-O 4 0 2 +27259 O-O 4 0 1 +27264 Bg5 6 0 0 +27263 Bc4 4 0 2 +27267 Be2 3 1 1 +27269 Nf3 3 0 2 +27270 Nf3 4 0 1 +27272 h3 3 0 2 +27272 Be2 2 1 2 +27271 Bg5 4 0 3 +27277 Bd3 4 0 1 +27278 Bd3 2 1 2 +27281 O-O 4 0 1 +27283 gxf3 5 0 10 +27284 Ngxe2 3 1 1 +27285 Ngxe2 13 0 5 +27286 Be3 5 0 1 +27288 d3 2 0 3 +27288 d4 4 0 1 +27287 d4 11 0 2 +27290 Ngxe2 4 0 2 +27291 O-O 5 0 5 +27301 d3 4 0 1 +27298 Nf3 12 1 8 +27298 Bb5 6 1 4 +27299 Nf3 6 0 6 +27299 d4 5 0 0 +27300 Nf3 4 0 1 +27305 O-O 6 0 1 +27304 O-O 21 3 17 +27304 g3 7 0 2 +27306 Bf3 2 0 4 +27307 Bf3 4 1 2 +27309 O-O 7 0 0 +27308 O-O 2 0 7 +27311 Nf3 2 1 4 +27312 d3 4 1 2 +27316 O-O 10 0 6 +27318 O-O 3 0 2 +27317 O-O 11 0 12 +27317 d4 6 0 1 +27317 d3 5 0 1 +27322 Be3 4 0 5 +27323 Nf3 9 1 6 +27323 Bb5 7 1 1 +27325 Nf3 3 0 6 +27330 Bd2 4 0 1 +27331 Bxf3 4 0 1 +27332 Nc3 3 0 4 +27334 Nh4 4 0 4 +27338 Nf3 2 0 3 +27340 Nf3 4 0 1 +27342 Bh6 4 0 1 +27343 Bd3 6 0 2 +27344 Bc4 2 0 3 +27348 O-O 4 1 2 +27352 dxe5 2 0 5 +27353 Bc4 4 0 2 +27356 f4 3 0 2 +27357 O-O 5 0 2 +27360 O-O 3 0 2 +27361 Bb5 2 0 3 +27362 Bc4 5 0 0 +27362 Bg5 3 0 2 +27362 Bd3 3 0 2 +27362 Bb5 2 0 3 +27365 O-O 2 0 5 +27368 Bd3 3 1 3 +27371 Be2 0 0 6 +27375 d3 3 1 2 +27376 Nxe5 7 0 1 +27383 Bb5 10 0 11 +27382 Nxf7 4 1 6 +27382 Qf3 4 0 3 +27382 d3 5 0 1 +27385 Qd1 2 1 3 +27387 h3 2 0 4 +27389 exd5 4 0 1 +27390 Bxf6 5 1 2 +27393 Bb3 4 0 2 +27395 Bb5 8 0 10 +27396 c3 2 0 3 +27394 Nxf7 14 1 7 +27394 Qf3 9 0 7 +27394 d3 4 1 4 +27401 Nxe6 5 0 3 +27402 Bxe6 9 1 1 +27403 d3 4 0 1 +27406 Bb3 4 0 2 +27406 Bb5 3 0 2 +27407 Qf3 2 0 4 +27414 Bb3 5 0 1 +27416 Qf3 7 0 4 +27419 Nc3 3 0 3 +27422 Bxd7 8 1 4 +27423 Bb5 3 0 3 +27426 Bg5 4 0 2 +27428 O-O 2 1 2 +27429 Nxd4 6 0 2 +27433 Nxc6 2 0 4 +27432 Qxd4 3 2 3 +27435 Qxd4 7 0 5 +27437 Nxc6 4 0 5 +27436 Qxd4 1 1 7 +27438 Bb5 4 1 0 +27439 Nf3 5 0 0 +27440 Bg5 0 0 5 +27441 Bd3 2 0 3 +27445 Nxd4 4 0 2 +27446 Nd3 8 0 4 +27452 Bg5 0 0 5 +27454 d3 4 0 2 +27455 c3 2 0 3 +27459 d4 1 2 2 +27460 d4 5 0 2 +27462 d4 3 0 4 +27461 Ba4 3 1 3 +27465 h3 3 0 4 +27466 cxd4 5 0 1 +27467 Bc2 5 0 1 +27471 Bc4 2 1 2 +27469 Bc4 4 0 4 +27469 Ba4 4 0 3 +27472 d3 1 0 4 +27473 bxc3 8 0 4 +27473 Nxc3 6 0 4 +27478 Ba4 7 0 1 +27478 Bc4 5 0 3 +27477 Bc4 8 0 5 +27479 Qe2 6 0 0 +27481 h3 0 0 5 +27483 Qe2 6 0 2 +27484 Nf3 2 0 3 +27485 O-O 3 0 2 +27485 h3 1 0 4 +27487 Bg5 0 0 8 +27486 h3 3 1 4 +27486 Bg5 2 1 2 +27494 Bxc6 2 0 6 +27494 Nxe5 1 0 4 +27497 Bxc6 3 0 2 +27496 Re1 2 1 2 +27498 Bb3 6 0 3 +27502 h3 2 0 3 +27504 Nxe5 5 0 1 +27508 Nxd4 4 1 5 +27509 Bb3 5 1 2 +27510 Bb3 14 0 14 +27513 Nxd4 5 0 3 +27516 d4 4 0 4 +27516 Re1 3 0 4 +27518 Nxd4 4 0 8 +27519 Bb3 4 0 2 +27519 Bc2 5 0 1 +27521 Bb3 4 0 2 +27523 Qxd4 5 0 5 +27526 h3 3 0 2 +27529 Bb3 8 0 4 +27532 Bb3 8 0 10 +27536 Re1 2 0 3 +27534 Re1 30 1 33 +27534 d3 3 0 4 +27538 Re1 3 1 1 +27535 Bb3 40 4 30 +27537 Re1 4 0 1 +27539 Bb3 12 0 12 +27545 c3 4 0 3 +27545 O-O 3 0 2 +27547 O-O 6 0 5 +27543 O-O 12 2 8 +27543 d3 12 0 7 +27544 c3 3 1 1 +27544 O-O 2 1 2 +27546 c3 5 0 1 +27546 O-O 1 0 5 +27552 Nf3 5 0 0 +27550 d4 10 1 8 +27551 Nf3 4 0 1 +27554 d4 6 0 2 +27557 d4 5 1 0 +27557 h3 4 0 1 +27557 d3 4 0 1 +27558 d3 4 0 1 +27563 d3 2 0 3 +27560 Nf3 13 1 27 +27560 Qh5 4 2 6 +27560 Nd3 3 0 8 +27560 Nxf7 1 0 5 +27560 f4 3 0 2 +27561 d4 8 1 4 +27562 d4 3 0 4 +27565 d4 11 1 16 +27565 Nc3 3 0 5 +27565 c3 2 0 5 +27565 d3 3 0 3 +27565 h3 5 0 0 +27566 h3 5 0 13 +27566 d3 5 0 5 +27571 Nbd2 6 2 6 +27571 Bg5 2 0 6 +27571 h3 4 0 2 +27571 Nc3 2 1 3 +27571 O-O 4 0 2 +27572 h3 6 2 13 +27575 Qxd4 14 1 12 +27575 Nxd4 4 0 3 +27577 d3 2 1 2 +27578 d3 3 0 2 +27579 d3 5 0 4 +27583 d3 3 2 0 +27583 Re1 4 0 1 +27582 d3 3 1 3 +27582 h3 3 0 2 +27581 Nc3 9 1 8 +27581 d3 4 0 7 +27588 h3 5 3 9 +27589 h3 6 0 1 +27589 Bg5 2 0 4 +27593 dxe5 5 0 5 +27593 h3 1 2 5 +27594 dxe5 2 0 5 +27592 Nxd4 14 0 23 +27592 Qxd4 6 0 9 +27595 dxe5 3 1 3 +27596 d3 6 2 2 +27598 d4 2 0 3 +27600 Nxd4 3 1 1 +27601 Re1 3 0 2 +27603 Ba4 5 1 1 +27604 Ba4 6 2 4 +27606 Nxd4 2 0 3 +27607 Nxd4 3 0 2 +27610 Bb3 4 0 6 +27612 cxd4 4 0 2 +27613 dxe5 4 0 2 +27614 Bxd7 5 0 2 +27616 Bxd7 3 0 4 +27617 Bb3 6 2 1 +27618 dxe5 14 0 2 +27619 Nxc6 11 4 8 +27619 Nc3 9 0 7 +27619 O-O 7 0 9 +27619 Bxc6 5 0 3 +27620 Bxc6 6 1 5 +27622 Re1 4 0 5 +27623 Bxc6 2 0 7 +27624 d3 7 0 5 +27625 Ba4 7 0 2 +27627 c3 1 0 4 +27628 c3 3 0 2 +27629 Bb3 6 1 12 +27633 d3 3 0 2 +27634 d3 2 0 6 +27637 Bg5 8 1 5 +27637 O-O 3 0 2 +27638 Bg5 2 0 6 +27638 h3 0 2 4 +27636 Be3 6 1 6 +27636 h3 8 1 4 +27636 O-O 5 1 6 +27636 a3 3 0 3 +27640 h3 2 0 4 +27643 d3 3 1 2 +27646 dxc5 1 0 4 +27647 d3 2 0 12 +27647 a3 2 1 3 +27648 h3 6 1 4 +27648 d3 1 0 4 +27650 c3 2 0 4 +27651 c3 0 0 5 +27653 Bd5 1 0 4 +27652 d4 11 0 1 +27654 d4 2 1 4 +27655 Bg5 4 0 1 +27661 Bxe6 2 0 3 +27660 d4 6 0 4 +27660 h3 4 0 1 +27662 h3 3 1 3 +27665 d3 2 0 3 +27668 d4 3 0 8 +27667 d4 20 3 19 +27667 O-O 3 0 2 +27673 d4 3 1 2 +27671 d4 11 0 6 +27672 d4 5 0 3 +27676 O-O 3 0 4 +27675 Bg5 2 0 3 +27675 O-O 2 0 3 +27674 O-O 4 1 2 +27674 h3 3 0 2 +27674 b4 2 1 2 +27677 cxd4 75 6 80 +27677 e5 4 2 4 +27678 cxd4 3 0 6 +27679 h3 3 0 3 +27681 cxd4 45 2 31 +27682 O-O 6 0 2 +27684 cxd4 16 0 9 +27685 fxe3 5 0 2 +27686 Nc3 4 0 5 +27687 Bh4 4 0 4 +27692 Nxf7 3 0 8 +27692 Nc3 2 0 8 +27692 O-O 4 1 4 +27692 h3 1 0 6 +27692 c3 2 0 3 +27694 exd5 5 1 1 +27693 Nxf7 3 0 3 +27699 Bxe6 8 0 8 +27698 Nf3 6 1 8 +27698 Qf3 4 0 6 +27698 O-O 2 1 5 +27700 Be3 5 0 3 +27700 h3 2 1 4 +27700 Nd5 1 0 4 +27702 Nc3 2 0 4 +27702 h3 1 1 3 +27707 Bxf7 3 0 2 +27708 c3 2 0 4 +27706 c3 10 0 8 +27710 O-O 3 0 2 +27712 c3 5 1 2 +27719 Nc3 3 0 3 +27719 Nxc6 4 1 1 +27718 Qxd4 9 0 7 +27717 Nxc6 5 0 4 +27721 Rf1 2 0 3 +27723 e5 3 0 2 +27726 Nxc3 5 0 1 +27728 O-O 3 0 2 +27730 O-O 6 1 1 +27731 Bxd5 5 0 0 +27732 Rf1 0 0 18 +27732 Nxh8 1 0 4 +27737 d4 11 1 3 +27737 O-O 5 0 2 +27739 Bg5 1 0 6 +27743 bxc3 3 1 4 +27742 exd5 2 0 6 +27744 d3 5 1 4 +27747 Bg5 2 0 4 +27746 h3 5 0 4 +27750 Nxe4 6 0 5 +27751 Bxd5 5 1 7 +27754 Nxd4 1 0 4 +27756 Kxf2 7 1 18 +27756 Kf1 9 0 7 +27758 Bb3 10 0 1 +27761 Bb5 46 5 69 +27761 d3 15 0 12 +27761 Qe2 4 0 10 +27761 Bb3 4 0 5 +27761 b3 2 1 3 +27761 Be2 0 1 5 +27762 c3 11 0 16 +27762 d6 7 1 16 +27762 d3 2 0 3 +27762 O-O 1 1 3 +27760 Nxf7 73 2 28 +27760 Qf3 26 1 25 +27760 d3 15 0 11 +27760 Nc3 6 0 2 +27760 Bxd5 3 0 3 +27760 d4 3 0 2 +27763 Bxb5 0 0 8 +27763 Bb3 2 1 2 +27768 O-O 4 0 1 +27773 h3 1 0 4 +27773 O-O 1 0 4 +27774 exd5 4 0 2 +27775 c3 3 0 2 +27779 Nf3 5 0 2 +27780 c3 2 0 3 +27781 O-O 6 0 10 +27781 Bxd5 6 1 3 +27781 Bb5 4 0 2 +27781 Ng5 3 0 3 +27781 c3 4 0 1 +27785 Qxd4 4 1 3 +27784 Nxc6 5 1 1 +27787 h3 1 0 4 +27790 Qxd4 5 0 2 +27797 g4 6 1 8 +27798 exd5 1 0 4 +27799 c3 2 0 3 +27800 Be2 5 0 2 +27800 Bxf7 2 0 4 +27801 Qxd4 1 1 3 +27802 Qxd4 17 2 8 +27804 d3 3 0 2 +27807 dxe5 2 0 4 +27808 dxc3 4 0 2 +27811 Bd2 9 2 4 +27812 a3 5 0 0 +27814 Nxd4 16 3 11 +27816 Nxd4 6 0 0 +27818 d4 2 0 3 +27819 d4 4 1 0 +27817 d4 4 1 5 +27820 d3 4 1 1 +27823 c3 4 0 3 +27824 exd5 4 1 0 +27825 d4 2 0 3 +27826 c3 4 0 1 +27828 Nxd4 2 1 5 +27829 cxd4 8 2 9 +27830 Bd5 5 0 0 +27830 Re1 2 0 3 +27832 O-O 2 0 3 +27836 cxd4 8 1 3 +27837 cxd4 3 1 2 +27838 Nc3 1 1 3 +27842 Qxd4 6 0 0 +27843 Nxd4 5 1 0 +27844 Nxe5 6 0 2 +27846 Qxd8 3 0 3 +27850 Nxc6 7 1 5 +27852 Bb3 8 0 3 +27851 Nxc6 6 1 3 +27848 Qxd4 59 2 38 +27849 Nxc6 9 1 2 +27849 Be3 5 2 3 +27854 Nxc6 2 0 4 +27856 d3 1 2 2 +27861 Nxe5 8 0 3 +27861 O-O 3 0 3 +27862 Nxe5 3 0 2 +27863 d4 4 1 3 +27863 O-O 3 0 2 +27864 d3 3 0 2 +27865 O-O 1 1 3 +27869 d3 4 0 1 +27870 d3 4 0 1 +27873 h3 3 0 2 +27874 d4 9 1 1 +27875 Nxd4 2 1 3 +27876 d4 2 0 4 +27877 Qxd4 12 1 5 +27878 Nxe5 2 0 3 +27879 Nxe5 7 0 4 +27880 d4 5 0 2 +27880 O-O 2 0 3 +27881 Nxd4 2 1 3 +27887 d3 6 0 1 +27888 d3 4 0 2 +27891 Bxd5 4 1 2 +27894 Bd2 4 0 1 +27895 Nxd4 0 0 7 +27896 d5 4 0 5 +27897 e5 3 0 5 +27898 Nxd5 4 0 3 +27901 Bd2 5 1 1 +27902 Qxd4 3 0 3 +27903 Qxd8 6 0 2 +27906 Nxc6 14 1 15 +27905 Be3 11 1 10 +27905 Nxc6 4 0 7 +27904 Qxd4 36 4 26 +27910 Qxd4 6 0 1 +27911 d4 4 0 1 +27912 Qxf3 3 0 2 +27913 Be2 3 0 3 +27914 Qxd4 6 1 7 +27915 c5 4 1 1 +27917 c4 5 0 2 +27918 Bxc6 6 0 1 +27920 Bd2 8 1 13 +27920 Nc3 6 0 5 +27921 d5 3 0 5 +27921 Nc3 4 0 4 +27923 Nxe5 2 0 3 +27926 Bd2 2 0 3 +27925 Qe2 2 0 3 +27928 cxd4 3 1 6 +27931 cxd4 4 0 2 +27929 cxd4 1 1 5 +27934 Nc3 2 0 3 +27936 Qxd4 5 0 0 +27940 Qxf6 1 1 3 +27941 Qe5 4 0 1 +27939 Qxd5 4 0 1 +27938 Bc4 5 1 2 +27938 Nc3 4 0 2 +27942 Bd3 3 0 3 +27943 Nc3 2 0 4 +27948 Qxd4 4 0 6 +27949 Qxd8 7 1 9 +27951 Bb5 6 0 3 +27950 Nxe5 16 3 3 +27952 O-O 3 0 4 +27955 e5 3 0 3 +27954 Bxf7 5 0 3 +27956 Qd5 6 0 0 +27957 exd5 5 0 4 +27958 Nxd4 2 0 3 +27965 Bxd4 6 0 1 +27963 Bxd4 5 0 3 +27962 c3 21 2 21 +27967 Nc3 6 0 1 +27970 Qd2 8 2 12 +27970 Qe2 4 0 15 +27970 Qf3 8 1 10 +27970 Be3 11 0 7 +27970 f3 3 1 6 +27970 Nd4 2 1 4 +27969 Bd3 17 0 24 +27969 Nc3 7 1 9 +27969 Bc4 4 4 5 +27969 Qf3 8 0 4 +27969 Be3 4 0 3 +27971 Qxd8 1 1 3 +27972 Be3 3 1 6 +27975 Bd2 6 1 0 +27977 Nxc6 6 0 12 +27979 Bd3 20 2 9 +27979 e5 8 0 10 +27979 Nc3 6 1 3 +27979 Bg5 3 0 6 +27980 Qxd8 1 0 5 +27981 Qxd4 4 1 4 +27982 Bb5 0 0 7 +27991 Nc3 3 0 2 +27984 e5 21 1 13 +27984 Nc3 14 2 7 +27984 Bg5 13 1 9 +27984 Bc4 11 1 9 +27984 Qe5 4 0 3 +27984 Bd3 3 0 2 +27988 Nc3 4 0 5 +27988 Bd3 3 0 6 +27986 Qxf6 10 3 13 +27986 Be3 10 0 5 +27986 e5 4 2 2 +27987 Nc3 13 1 2 +27987 Bc4 10 0 4 +27987 Qd5 3 1 4 +27985 Qe5 21 1 17 +27985 Qc4 8 2 10 +27985 Qd5 8 0 10 +27985 Qd1 7 0 7 +27985 Qe3 5 0 6 +27985 Qc3 3 1 7 +27985 Qa4 3 0 2 +27989 exd5 7 0 6 +27983 Bc4 43 8 29 +27983 Nc3 39 5 29 +27983 e5 7 1 13 +27983 Bd3 5 0 6 +27983 Bb5 2 0 5 +27983 b4 0 0 6 +27983 Bf4 3 0 3 +27983 Be3 1 0 4 +27994 c3 5 0 9 +27995 Bd3 8 2 10 +27995 Nc3 3 0 2 +27996 Bd3 2 1 3 +27996 Nc3 3 0 2 +28000 Qe2 6 0 2 +28002 exd5 3 1 3 +28004 Bd3 6 0 4 +28004 Nc3 3 1 5 +28004 Bc4 5 1 2 +28004 Qf3 4 1 2 +28005 Bxb2 8 0 1 +28006 Qxd4 4 0 2 +28009 d3 1 0 9 +28009 Nxf7 4 0 1 +28009 Qf3 4 0 1 +28010 d3 3 0 3 +28014 Bg5 6 0 3 +28014 Be2 3 1 3 +28015 Bg5 3 0 2 +28018 Nxe5 5 1 0 +28020 Nxd4 4 0 2 +28025 h3 3 0 2 +28026 Bxd5 0 1 7 +28026 Bb5 3 0 2 +28027 Qxd4 3 0 2 +28029 Nxc6 9 1 4 +28030 Nxc6 4 0 2 +28030 Be3 5 0 0 +28028 Qxd4 22 1 16 +28031 d3 3 0 4 +28031 b3 1 0 4 +28032 bxc3 3 0 3 +28035 d4 3 0 3 +28037 d4 5 1 3 +28040 Nc6 5 0 0 +28038 dxe4 4 1 3 +28041 Qxe5 9 0 4 +28042 O-O 6 0 2 +28043 d3 10 1 15 +28047 Be2 2 0 3 +28050 Be2 15 0 6 +28050 Qe2 3 3 8 +28051 Be3 3 0 2 +28051 Be2 4 0 1 +28053 dxc3 3 0 2 +28054 d3 19 1 24 +28055 Bg5 1 1 3 +28056 Bd3 5 3 8 +28057 Bc4 2 1 3 +28064 O-O 3 1 1 +28066 d4 3 0 2 +28069 O-O 2 0 3 +28071 Bg5 7 0 0 +28072 Be3 10 0 4 +28073 Nxd4 5 0 1 +28075 Bd3 0 0 5 +28076 c3 1 0 7 +28076 Nxc6 3 1 1 +28079 Bd3 3 1 3 +28081 Bxd7 4 0 2 +28082 Qh5 5 0 0 +28084 a3 6 0 0 +28086 d3 2 2 4 +28086 Nc3 6 0 1 +28087 d3 3 0 3 +28090 Nxd4 10 2 13 +28091 Nxd4 1 0 5 +28092 cxd4 3 1 1 +28094 Nc3 4 0 1 +28096 Bxf7 4 0 5 +28096 Ng5 2 0 3 +28099 Qxf3 4 0 4 +28101 g4 4 0 2 +28100 Qxf3 6 0 3 +28102 d4 3 0 2 +28104 Qxf3 4 0 1 +28105 Qb3 6 0 2 +28107 gxf3 3 0 3 +28109 d3 2 2 1 +28111 Re1 1 1 3 +28113 d3 17 0 14 +28113 Nc3 5 0 6 +28113 h4 1 0 5 +28114 d3 16 0 13 +28114 Nc3 9 2 5 +28114 O-O 5 2 2 +28114 g4 1 0 6 +28115 Qxf6 15 3 5 +28115 Qb3 10 0 5 +28122 g4 5 0 2 +28124 Bxg8 4 0 1 +28125 Be2 2 0 4 +28126 Qxd4 9 1 9 +28128 d3 4 0 1 +28129 Nxe6 11 0 13 +28130 Nxf7 6 0 0 +28130 Qf3 5 0 0 +28132 dxe5 1 0 4 +28134 Bb3 4 0 2 +28136 Ng5 4 0 2 +28138 Nxd4 3 1 4 +28140 Qxf3 4 1 0 +28141 d4 5 0 0 +28145 h3 1 0 5 +28148 Qxf3 6 0 2 +28149 Nxe5 4 0 2 +28152 O-O 3 0 3 +28154 Nc3 7 0 12 +28154 O-O 4 0 3 +28154 Qf3 2 1 2 +28158 Qd5 3 1 4 +28159 e5 2 1 4 +28161 O-O 4 0 1 +28162 Nc3 3 0 2 +28170 Bc4 6 0 1 +28174 Qxd4 6 0 1 +28181 Nxe5 9 1 3 +28182 Qxd4 12 0 3 +28183 Qxe2 4 0 6 +28184 Bc4 64 0 17 +28184 Nc3 4 0 1 +28185 exd6 4 0 6 +28186 Qxd8 10 0 1 +28189 Nxe5 18 1 2 +28191 dxe5 3 0 2 +28193 Qxd4 5 1 2 +28194 Qxd8 9 1 8 +28195 Bc4 1 1 3 +28196 Nxe5 6 0 3 +28204 Nxc6 4 1 3 +28206 Nc3 4 0 1 +28207 Nc3 5 0 5 +28209 O-O 2 1 4 +28210 Be3 7 0 3 +28213 Qxd4 7 1 2 +28214 Bc4 2 0 7 +28217 Be3 4 0 4 +28218 O-O 7 3 10 +28219 f3 4 0 2 +28223 Nc3 4 0 4 +28224 Bxf6 4 0 2 +28226 Bg5 2 0 3 +28226 Bc4 3 0 2 +28225 Bc4 13 2 13 +28225 Be2 8 1 4 +28225 Bf4 6 0 7 +28225 Bd3 5 0 7 +28225 Be3 5 0 5 +28225 Bg5 3 0 4 +28228 Bg5 3 0 3 +28228 Bd3 3 0 2 +28227 Nf3 4 0 3 +28233 Bxd7 15 2 10 +28236 h3 2 0 4 +28240 exf5 5 0 3 +28242 O-O 3 0 2 +28243 Be3 8 0 0 +28245 Bxc6 12 1 8 +28249 O-O 2 0 3 +28253 Qh5 6 0 2 +28254 O-O 4 0 2 +28263 Nb3 4 0 2 +28264 dxe4 1 0 5 +28266 Bc4 15 0 2 +28268 Qxh8 7 0 0 +28267 Qxh8 12 0 4 +28270 a4 5 0 1 +28271 a4 2 0 3 +28272 Qf3 4 1 3 +28273 Qd3 4 0 2 +28274 Qd1 4 0 6 +28275 d3 5 0 3 +28276 d3 2 0 3 +28279 d3 3 0 2 +28277 d3 5 0 14 +28277 Nh3 4 0 2 +28277 h3 1 0 4 +28278 d3 5 1 5 +28283 Bg5 4 0 1 +28281 Bg5 6 0 9 +28280 Qd1 7 1 19 +28282 Bg5 4 0 8 +28284 d3 1 1 3 +28287 Nxe5 2 1 2 +28288 d3 0 1 5 +28291 Qg3 3 0 4 +28290 Bg5 2 0 14 +28293 Nxf3 3 0 2 +28294 Qxh7 5 0 0 +28295 Bxb2 5 0 0 +28296 Nf3 7 0 1 +28299 Bb5 8 1 2 +28300 Bc4 3 0 2 +28301 Nc3 2 0 3 +28302 Bb5 3 1 1 +28304 Bc4 1 0 4 +28308 a3 1 0 6 +28307 Qd4 4 0 3 +28310 Qe2 1 0 6 +28315 Bxf6 3 1 7 +28317 Bd3 3 2 7 +28317 Bd2 1 0 6 +28322 Nf3 2 0 3 +28325 b4 0 0 5 +28327 Bd2 10 0 7 +28328 Bd2 2 0 3 +28329 Bd2 2 0 3 +28331 Qg3 8 1 11 +28333 Bd2 6 0 5 +28334 O-O 3 0 2 +28335 Qb3 4 0 2 +28336 Nf3 3 0 3 +28340 O-O 6 0 0 +28343 Nf3 4 0 1 +28347 Nc3 28 0 11 +28347 Nd2 20 0 13 +28350 Nf3 14 0 4 +28350 Qb3 4 0 1 +28348 Nf3 15 0 4 +28348 e5 7 0 3 +28348 Qb3 3 0 3 +28348 Nc3 3 0 2 +28356 Nf3 5 1 0 +28351 Nc3 6 0 3 +28351 Nd2 4 0 4 +28354 Nf3 2 0 3 +28352 Bxd5 4 1 4 +28349 Nf3 11 1 7 +28349 Qb3 5 0 6 +28353 Nf3 5 0 1 +28357 Qb3 3 0 3 +28358 O-O 4 0 1 +28360 Nxc3 4 0 4 +28361 Bc4 7 0 0 +28362 cxd4 4 0 2 +28365 d3 3 0 3 +28366 fxe5 5 0 0 +28366 O-O 4 0 1 +28367 Nc3 4 0 3 +28370 Qxf3 4 0 1 +28372 Bxf4 3 0 2 +28373 e5 5 0 1 +28376 Nc3 4 0 1 +28380 c4 4 0 2 +28382 d3 3 0 2 +28385 Bxf4 2 1 3 +28386 Bxf4 9 0 2 +28388 Nc3 7 0 1 +28387 Bc4 5 1 5 +28390 Bxd5 3 0 5 +28389 d4 9 2 4 +28393 Kf1 2 0 4 +28394 O-O 18 0 7 +28395 Qf2 4 1 2 +28396 Bg2 2 0 5 +28397 Bxf4 4 0 4 +28398 O-O 5 0 1 +28401 d4 4 0 1 +28402 Bxf4 5 0 2 +28406 Nc3 5 0 0 +28409 d4 2 0 3 +28411 Qxf3 6 0 0 +28413 dxc6 1 1 4 +28416 d4 4 0 3 +28415 Be2 13 0 2 +28417 d4 4 0 7 +28417 O-O 1 2 3 +28420 Qxf3 4 0 1 +28419 Nc3 8 0 1 +28419 d3 3 1 1 +28424 Bxf4 5 0 0 +28427 Qxf3 6 0 2 +28428 Nc3 4 0 1 +28429 Nc3 2 0 4 +28431 d4 5 0 2 +28430 d4 5 0 4 +28433 Bxe6 3 0 6 +28435 d5 2 0 3 +28436 Ne5 6 0 2 +28437 Kf1 9 0 5 +28438 Qxf3 3 1 2 +28439 Qxf3 2 0 3 +28440 Nxf7 6 0 7 +28443 d4 1 0 4 +28444 Nf3 1 0 5 +28445 Bd3 4 0 6 +28447 Qxd5 5 1 0 +28453 bxc3 2 0 10 +28456 Bd3 4 1 7 +28457 Bd3 2 1 2 +28459 Bb5 3 0 2 +28460 Bf4 3 0 4 +28463 Bxd3 4 0 1 +28466 b3 6 1 1 +28468 Be2 1 0 4 +28469 cxd4 2 1 3 +28472 Be3 2 0 4 +28474 cxd4 2 1 2 +28476 Be3 1 1 4 +28477 O-O 1 0 5 +28479 Bb5 4 0 3 +28480 d4 2 0 4 +28489 O-O 1 0 6 +28490 O-O 1 0 5 +28494 Bg5 0 1 4 +28492 Bg5 3 0 8 +28495 O-O 1 0 4 +28496 Bd3 1 1 4 +28497 O-O 2 1 3 +28499 O-O 8 1 16 +28499 Bg5 1 1 3 +28500 O-O 8 2 19 +28502 O-O 1 1 4 +28503 O-O 1 1 3 +28501 O-O 2 0 4 +28501 dxc5 3 0 2 +28504 O-O 2 2 8 +28505 O-O 1 0 4 +28507 Bd3 4 1 3 +28507 Nc3 3 0 4 +28511 Bd2 5 1 4 +28510 Bg5 5 1 7 +28510 Bd3 2 0 4 +28509 Bd3 6 1 6 +28509 Bg5 2 2 5 +28509 Bb5 1 1 4 +28509 Be2 0 0 5 +28508 Bg5 6 1 15 +28508 dxc5 6 0 3 +28512 Bg5 1 0 5 +28520 Nc3 4 1 2 +28518 Nc3 4 1 10 +28519 Nc3 6 0 4 +28522 Bxc4 3 0 2 +28524 Bd3 1 1 4 +28523 Bd3 2 1 5 +28526 Nc3 3 0 4 +28526 Bb5 4 0 3 +28530 Bxd3 2 0 7 +28534 Be3 0 0 6 +28537 Qxd2 8 0 3 +28538 Qxd4 6 0 2 +28543 Nc3 3 0 2 +28545 Nc3 4 0 2 +28546 Qg4 3 0 6 +28548 bxc3 5 0 9 +28550 h4 6 0 9 +28550 Bxe7 10 0 4 +28551 Be3 3 0 3 +28552 Nf3 9 1 6 +28556 Nxf6 2 0 4 +28556 Bxf6 4 0 1 +28557 Nf3 8 2 3 +28558 c3 6 1 3 +28559 c3 2 0 4 +28560 c3 6 0 3 +28561 Nf3 3 0 2 +28566 Bxc6 7 1 3 +28566 O-O 1 0 6 +28570 Bb5 4 0 2 +28573 O-O 2 0 3 +28574 Nxc6 3 0 2 +28577 Bxc6 4 1 8 +28577 Nf3 0 0 5 +28578 Bxc6 2 0 11 +28579 Bxc6 2 1 3 +28580 b3 0 1 4 +28581 cxd4 1 0 7 +28584 Be2 4 0 4 +28584 Bd3 2 0 3 +28584 Be3 2 0 3 +28585 Bd3 8 0 1 +28585 Bb5 2 0 4 +28582 a3 14 0 17 +28582 Be2 9 0 19 +28582 Bd3 11 1 6 +28582 b3 5 0 8 +28582 Be3 1 0 10 +28582 a4 5 1 4 +28582 Na3 4 0 2 +28583 cxd4 15 0 18 +28587 Nf3 4 0 7 +28588 a3 13 1 7 +28588 Be2 6 2 9 +28588 Bd3 5 0 4 +28588 b3 2 0 3 +28589 cxd4 4 1 1 +28594 Bd2 3 0 2 +28593 Nf3 6 0 3 +28596 Bb5 2 0 3 +28597 Nf3 3 0 3 +28605 O-O 5 0 3 +28605 Bg5 1 1 3 +28607 c3 6 0 0 +28608 O-O 2 1 4 +28609 O-O 4 0 3 +28610 Nf3 9 1 7 +28611 Nf3 8 0 4 +28612 Nf3 4 0 1 +28615 Bg5 3 0 2 +28620 O-O 2 1 2 +28619 O-O 1 0 4 +28622 Qxd3 3 0 3 +28624 O-O 13 0 9 +28625 O-O 5 0 11 +28627 O-O 2 0 3 +28626 O-O 4 0 2 +28628 O-O 3 1 2 +28636 Nc3 5 0 0 +28646 Bd3 4 0 4 +28647 dxc5 3 0 3 +28648 Bd3 3 0 3 +28649 Qd3 17 0 6 +28650 Qd3 11 0 6 +28650 Qe3 3 0 4 +28651 Qd3 1 0 4 +28653 O-O 4 0 2 +28654 Nh4 3 0 4 +28655 d4 1 1 3 +28656 d3 2 0 3 +28659 Nf3 3 0 5 +28660 Nf3 5 1 3 +28661 d4 2 0 4 +28662 bxc6 3 0 3 +28664 b6 1 0 6 +28665 cxd4 7 1 2 +28668 O-O 3 0 2 +28672 Nbd7 1 1 3 +28674 Bf5 0 0 5 +28677 f5 5 0 0 +28679 e6 3 0 2 +28689 e4 1 0 4 +28690 Bg7 6 1 4 +28691 Bg7 3 1 1 +28693 d6 3 0 2 +28694 d6 5 2 1 +28696 O-O 1 0 4 +28698 Nc6 5 0 0 +28700 Nxf6 6 0 0 +28704 Qe7 3 0 6 +28705 Bb7 0 1 4 +28706 d5 3 0 2 +28707 b6 5 0 0 +28710 g6 4 0 1 +28713 O-O 2 0 4 +28716 Nc6 3 0 3 +28717 Nc6 3 0 2 +28718 Nc6 6 0 2 +28719 a5 3 0 2 +28723 Nc6 4 0 6 +28723 c5 8 0 1 +28723 Na6 3 1 2 +28723 e5 0 0 5 +28725 Nc6 3 0 2 +28726 Qxd1 3 1 1 +28727 Nc6 5 0 4 +28727 Nbd7 1 0 5 +28727 e5 2 0 3 +28728 c5 9 0 5 +28728 Bg4 8 0 2 +28728 Nbd7 2 0 3 +28729 dxe5 4 1 1 +28731 Bg7 22 6 26 +28731 c5 10 2 14 +28732 c6 2 1 6 +28737 Nf6 4 0 1 +28741 Ne7 6 0 0 +28744 e6 4 0 1 +28747 Bc5 2 1 4 +28749 d6 4 1 9 +28749 Nf6 3 0 5 +28751 Be7 7 1 1 +28752 O-O 1 0 8 +28756 Bh5 2 0 4 +28759 Nxd4 4 1 1 +28762 e6 10 0 1 +28764 Bd6 7 0 1 +28765 Nxf4 5 0 4 +28766 Bd6 4 0 1 +28768 Nc6 7 0 0 +28771 cxd6 7 0 2 +28775 O-O 5 0 2 +28775 Nc6 5 0 0 +28778 Bxf6 4 0 2 +28782 e6 4 1 1 +28785 Ne5 5 0 0 +28786 Nc6 1 0 4 +28789 Bb4 4 0 2 +28792 Bg7 1 1 3 +28794 Bb4 8 0 2 +28796 Be7 3 1 2 +28801 Qxe5 5 0 1 +28802 O-O 3 0 2 +28804 Bb4 3 1 1 +28806 e6 4 0 6 +28808 cxb5 7 0 3 +28813 cxb5 6 0 0 +28814 c6 4 0 4 +28816 Nc6 17 1 4 +28816 Bb7 14 0 1 +28816 Qc7 8 0 0 +28816 Qa5 4 0 1 +28823 Qd7 3 0 3 +28824 Nxf6 6 0 1 +28830 h6 5 0 1 +28830 Nbd7 2 0 3 +28831 Bb7 3 1 1 +28832 O-O 8 1 5 +28834 h6 3 0 2 +28835 Nbd7 4 1 2 +28837 h6 4 0 3 +28840 Bb4 3 1 3 +28841 Be7 3 1 1 +28842 O-O 6 0 1 +28847 Nxd5 4 0 2 +28848 h6 3 1 3 +28849 Bd6 7 0 1 +28858 Nbd7 8 0 4 +28859 Bg4 3 0 3 +28861 Qb4 3 0 2 +28862 Bg4 2 0 3 +28864 O-O 3 0 2 +28866 Bb4 1 0 4 +28871 d6 1 0 4 +28872 d6 3 0 2 +28874 Be7 4 0 1 +28877 Nbd7 2 1 3 +28877 b6 2 0 4 +28878 Nbd7 7 1 3 +28878 b6 3 0 5 +28880 b6 2 1 2 +28881 O-O 3 0 2 +28883 b6 7 1 2 +28886 h6 2 0 3 +28887 c6 1 0 5 +28889 d6 3 0 2 +28891 Nf6 3 0 8 +28893 Qxd2 1 1 4 +28894 e6 1 1 3 +28895 Nc6 6 1 8 +28899 Be7 4 0 4 +28900 exd5 4 0 8 +28905 g6 4 1 3 +28904 g6 4 0 1 +28906 Be7 6 0 3 +28908 Nc6 4 1 6 +28908 Bf5 1 0 5 +28909 g6 2 0 4 +28911 Be7 6 0 6 +28910 Be7 3 0 3 +28910 Bf5 0 0 5 +28912 Nc6 4 1 1 +28913 Bb6 5 0 0 +28914 c5 2 1 2 +28915 c5 3 0 2 +28919 Bxc6 0 0 5 +28920 Bxe4 10 1 3 +28922 h6 0 0 6 +28926 Ne7 4 0 1 +28929 Qxd7 5 0 2 +28929 Nxd7 2 0 4 +28930 Be7 1 0 4 +28932 bxc6 1 0 4 +28936 Bd7 3 0 3 +28939 Bxc5 8 2 4 +28942 Bb7 2 1 2 +28943 Nf6 1 1 3 +28945 exd5 2 0 3 +28949 Nf6 2 1 3 +28951 bxc6 2 0 4 +28952 bxc6 6 1 11 +28954 bxc6 2 0 3 +28958 bxc6 2 1 7 +28959 Bxc6 4 0 1 +28960 bxc6 4 1 3 +28963 Nf6 3 0 4 +28962 bxc6 5 0 11 +28965 Nf6 1 0 6 +28967 bxc6 3 0 2 +28972 Bd7 4 0 7 +28973 e6 3 0 4 +28973 g6 3 0 3 +28971 g6 6 0 5 +28974 e5 1 0 4 +28975 e6 4 0 2 +28978 Bb4 3 0 10 +28976 d6 10 1 10 +28980 Bb4 2 0 3 +28977 d5 5 2 1 +28979 bxc6 7 0 5 +28982 Bg7 5 0 2 +28983 e5 0 0 9 +28983 d6 3 0 6 +28983 e6 0 1 4 +28983 g6 0 1 4 +28984 Nd5 3 0 4 +28990 Bd7 2 0 3 +28988 e5 6 0 5 +28991 Nf6 4 0 3 +28991 a6 3 0 3 +28991 b6 4 0 1 +28995 e6 3 0 2 +28998 Bg7 2 0 3 +28999 Nf6 2 1 6 +29001 g6 3 0 3 +29002 Bb4 6 1 9 +29005 Bb4 5 0 0 +29006 Bxd6 2 1 3 +29007 Bxd6 16 2 11 +29009 a6 7 1 11 +29010 a6 4 0 2 +29011 Bb4 2 0 3 +29012 Bxf5 4 0 1 +29014 Nf6 10 1 15 +29015 Nf6 4 0 4 +29015 d5 3 0 5 +29013 Nf6 10 1 14 +29013 Bb4 3 0 11 +29022 bxc6 2 0 4 +29025 Nf6 19 0 5 +29025 Qb6 8 1 12 +29025 d6 5 0 4 +29025 e6 4 0 4 +29025 Qa5 5 0 2 +29026 bxc6 4 1 9 +29029 Bg7 2 0 7 +29027 Bg7 5 0 6 +29028 Nf6 5 0 2 +29034 Bg7 3 0 3 +29037 Bg7 4 0 1 +29036 Bg7 5 0 5 +29038 g6 3 0 2 +29040 Ngf6 5 0 1 +29042 Nc6 2 1 2 +29044 bxc6 4 0 5 +29047 bxc6 0 0 6 +29050 Bd7 0 0 5 +29051 bxc6 1 1 4 +29053 e5 3 0 7 +29054 Bxf5 7 1 6 +29055 g6 3 1 1 +29056 Ne5 4 0 1 +29058 Bd7 5 0 1 +29059 Nf6 5 0 1 +29061 Bg7 7 2 11 +29063 e5 0 0 5 +29062 g6 2 0 3 +29065 Nbxd7 4 1 2 +29064 a6 6 0 2 +29068 e6 8 0 15 +29068 e5 8 0 6 +29070 e5 10 0 11 +29070 e6 3 0 4 +29069 e5 12 1 6 +29069 g6 3 0 3 +29066 e5 30 2 24 +29066 e6 1 0 9 +29066 Nbd7 5 0 2 +29066 b5 2 0 3 +29066 Qc7 3 1 1 +29066 Nc6 4 0 1 +29067 e6 22 2 29 +29067 e5 8 0 14 +29074 e5 4 2 3 +29071 e5 7 0 6 +29072 Qc7 4 0 1 +29076 Be6 2 0 6 +29076 a6 6 0 2 +29079 a6 4 1 6 +29082 Be7 3 1 1 +29081 a6 5 0 2 +29080 Be7 1 0 9 +29091 Bd7 3 0 3 +29087 Bg7 9 2 3 +29090 Bg7 3 1 7 +29089 Bg7 6 0 5 +29085 Bg7 40 1 39 +29086 Bg7 10 1 12 +29088 Bg7 6 0 7 +29099 Nf6 3 2 2 +29101 Bxc6 8 1 6 +29101 bxc6 2 1 2 +29103 Kxd8 4 0 1 +29108 bxc6 3 0 2 +29111 Nf6 3 0 2 +29112 Nf6 1 0 4 +29113 Be7 1 0 4 +29114 Bxc5 5 0 2 +29115 Nc6 4 0 1 +29117 Bxd6 5 0 0 +29119 d6 3 0 2 +29120 Nf6 12 0 4 +29120 Qc7 4 1 2 +29120 Bb4 4 0 1 +29122 d5 7 0 5 +29123 d5 7 1 0 +29124 bxc6 1 0 4 +29129 Qc7 4 0 4 +29129 Nf6 3 0 2 +29130 bxc6 4 0 4 +29132 Nf6 3 0 5 +29133 Nf6 2 1 2 +29131 Nf6 4 0 8 +29136 Nf6 0 0 6 +29140 Nc6 2 0 3 +29141 Be7 2 0 4 +29144 Nc6 3 0 3 +29143 Nf6 2 0 4 +29142 Nf6 4 0 6 +29145 Nf6 4 0 4 +29146 Nf6 8 0 4 +29147 Nf6 1 0 7 +29148 bxc6 4 0 2 +29150 Nf6 11 0 10 +29150 Qb6 5 0 11 +29150 d6 3 0 2 +29151 bxc6 5 0 10 +29152 O-O 4 0 1 +29153 Nf6 2 0 3 +29155 e6 1 1 3 +29157 a6 4 1 0 +29160 e6 2 0 3 +29161 d6 6 0 2 +29161 Nf6 3 0 3 +29162 Nc6 1 0 4 +29165 e6 6 0 2 +29165 Nf6 4 0 1 +29169 Nxf6 1 0 5 +29173 bxc6 1 2 2 +29177 Qxd7 2 0 3 +29180 bxc6 2 1 2 +29181 d6 4 0 6 +29182 e5 2 2 5 +29182 e6 4 0 2 +29187 Nxe4 5 0 1 +29189 e6 2 0 4 +29190 Nf6 2 0 3 +29192 Ne7 7 0 2 +29193 Bg6 2 0 6 +29196 Bg4 1 1 4 +29201 e6 3 1 2 +29202 bxc6 3 0 2 +29203 bxc6 2 0 4 +29205 e6 3 0 2 +29206 Bg4 2 0 6 +29207 Bg4 3 0 5 +29209 Bg4 4 0 5 +29209 a6 3 0 2 +29221 Bd7 4 0 1 +29220 Be7 1 0 5 +29222 Be7 2 0 3 +29225 e6 6 0 4 +29223 Nd7 7 1 6 +29223 e6 6 0 5 +29223 Nf6 2 1 2 +29224 h6 10 1 9 +29227 Nxe4 2 1 3 +29229 Bg4 2 0 4 +29230 e6 3 0 2 +29231 Nd7 4 1 9 +29231 c5 6 0 3 +29231 Ne7 6 0 3 +29232 Nd7 2 0 4 +29236 Bxd3 5 1 6 +29237 Bxd3 4 0 8 +29238 Nd7 3 0 4 +29238 Ne7 4 0 2 +29243 Bg4 6 1 5 +29254 O-O-O 1 0 4 +29256 Nc6 3 1 8 +29256 e5 7 0 4 +29256 c6 2 0 3 +29260 Bg4 5 1 6 +29261 bxc6 4 1 3 +29263 e4 3 1 3 +29265 Qd7 2 0 3 +29267 e4 0 0 6 +29267 Bf5 4 0 2 +29270 Nc6 2 0 3 +29272 c6 4 0 2 +29273 Bg6 5 0 4 +29274 c6 1 1 3 +29276 e6 2 0 5 +29277 c6 1 0 4 +29279 h6 3 0 2 +29282 Nf6 2 0 3 +29284 Bg4 3 0 4 +29284 Nf6 1 0 6 +29285 Bg4 3 0 3 +29286 Bh5 4 0 2 +29287 Qxb2 2 1 3 +29290 c6 2 1 3 +29291 Be7 2 0 3 +29293 Be7 1 0 6 +29296 Nf6 4 0 1 +29299 Bxc3 3 1 1 +29301 Be7 4 0 1 +29304 Be7 3 0 3 +29305 Nf6 4 0 1 +29307 e6 4 0 1 +29308 Nc6 5 0 8 +29310 Qf6 7 0 1 +29310 Qd6 3 0 3 +29316 Bg4 3 0 3 +29319 Bd7 6 1 4 +29318 Nb4 10 1 7 +29320 e6 2 0 3 +29324 Bh3 14 2 9 +29324 e5 6 1 7 +29325 Bh3 5 0 2 +29329 Bg7 2 0 7 +29330 c6 2 1 4 +29331 c6 3 1 2 +29332 Nf6 5 0 2 +29334 Bd7 7 0 9 +29334 Nc6 4 0 2 +29335 cxd4 6 0 1 +29339 Bd7 6 1 1 +29338 Nb4 6 0 5 +29340 c6 1 0 5 +29341 Qb6 4 0 1 +29343 Bh3 2 0 3 +29344 Qg5 4 0 4 +29345 Nb4 2 0 3 +29348 O-O 5 0 1 +29349 Be7 2 0 3 +29355 O-O 3 0 2 +29356 O-O 2 0 3 +29357 Be7 5 0 0 +29358 Be7 3 0 2 +29363 Qe7 0 0 6 +29366 c6 5 0 8 +29366 Bd7 5 0 3 +29367 Kxf7 3 1 6 +29372 Nxd5 4 0 1 +29373 Qxf6 5 1 2 +29375 c6 7 0 8 +29377 Kxf7 13 1 7 +29378 Qxg5 5 0 3 +29378 Be6 2 0 3 +29380 Qe7 3 0 3 +29381 Nxe4 5 0 1 +29384 Bd7 3 0 2 +29385 Qxf3 2 0 4 +29387 Qxf3 3 0 2 +29388 Be6 3 0 2 +29389 Nxd7 8 0 4 +29393 Bd7 3 0 2 +29394 bxc6 2 0 4 +29395 d6 3 2 1 +29396 Bd7 4 0 5 +29397 bxc6 3 0 4 +29399 Bd7 4 1 0 +29401 Be7 0 0 5 +29402 O-O 2 0 3 +29404 Qxe4 6 0 4 +29407 Bb6 2 0 3 +29408 exd4 1 2 2 +29409 exd4 4 0 2 +29410 exd4 2 0 4 +29412 Bd7 3 0 3 +29419 a6 4 0 1 +29421 b5 4 0 1 +29422 b5 3 0 2 +29423 d5 5 0 0 +29426 Bf5 5 0 1 +29427 Qxe4 2 0 3 +29431 Bxf3 3 0 2 +29433 dxc6 1 0 4 +29442 Bb7 7 0 4 +29442 h6 2 0 3 +29443 Bd7 5 0 3 +29445 O-O 3 0 3 +29444 exd4 4 0 4 +29446 Bg7 2 0 8 +29450 c6 3 0 4 +29452 Nf6 5 0 1 +29453 Bc5 3 0 2 +29455 b5 26 1 33 +29456 b5 2 0 3 +29458 Be7 28 1 21 +29458 d6 4 3 4 +29458 Bc5 5 0 5 +29460 Be7 2 0 5 +29460 Bc5 4 0 3 +29460 d6 2 0 3 +29461 Nf6 3 0 2 +29463 Nf6 6 0 5 +29464 Bc5 5 0 2 +29465 Bc5 3 0 3 +29465 h6 4 0 1 +29471 d6 3 1 4 +29471 f6 2 0 3 +29481 Qxe4 3 0 7 +29479 Qxe4 12 1 27 +29480 Qxe4 3 2 4 +29483 Qxe4 3 0 2 +29485 Qxg2 2 0 4 +29486 Bg4 4 1 8 +29486 exd4 6 0 7 +29490 Nf6 5 0 0 +29491 h5 1 0 6 +29491 Bxf3 3 0 3 +29491 Bh5 1 0 4 +29493 Nf6 1 0 5 +29493 Bg4 2 2 1 +29498 Bxf3 5 2 9 +29498 Bh5 1 0 4 +29500 c5 2 0 3 +29499 Qxd4 10 1 11 +29503 Be7 3 0 2 +29508 Be7 3 0 5 +29508 Bg4 4 0 1 +29510 Bh5 2 3 7 +29510 Bxf3 3 0 2 +29512 Be7 2 0 3 +29511 Be7 4 0 1 +29513 dxe5 2 0 3 +29514 Bxf3 1 2 4 +29516 Bb7 9 0 7 +29516 c5 1 0 11 +29517 Nf6 2 0 3 +29518 fxe5 1 1 3 +29519 Be7 3 2 2 +29520 exd4 2 0 3 +29523 b5 3 1 1 +29524 b5 1 2 3 +29526 Bd7 3 0 2 +29530 Qxd7 5 0 2 +29531 Nxd7 3 0 3 +29532 exd4 4 2 0 +29533 dxe5 7 0 0 +29537 bxc6 2 0 3 +29535 Nxd4 5 0 1 +29535 Nf6 1 0 4 +29534 bxc6 5 2 5 +29534 Bxc6 6 2 3 +29536 Nf6 2 0 4 +29538 Bxc6 6 0 2 +29539 Be7 3 0 3 +29540 Bxc6 1 0 4 +29541 Be7 3 0 2 +29542 b5 5 0 0 +29544 O-O 3 0 2 +29545 Nf6 2 0 6 +29547 h6 1 0 4 +29548 h6 8 1 4 +29552 Bb4 2 1 3 +29554 O-O 2 0 4 +29554 d6 2 1 2 +29553 O-O 5 1 0 +29553 d6 2 0 3 +29559 h6 1 0 9 +29566 exd4 8 0 1 +29567 exd4 2 0 4 +29568 h6 4 0 1 +29569 fxe6 2 0 3 +29570 exd4 5 0 4 +29572 Bh5 2 1 2 +29574 exd4 3 0 8 +29575 exd4 19 3 19 +29577 exd4 3 0 2 +29578 exd4 11 0 3 +29586 Bb4 63 6 68 +29586 Bb6 12 0 12 +29587 Ng4 2 1 3 +29588 Ba7 2 0 4 +29590 Bb4 26 2 13 +29590 Bb6 18 0 18 +29591 Nxe4 3 0 2 +29592 Bb4 9 0 7 +29592 Bb6 6 0 1 +29593 O-O 3 0 2 +29595 g5 1 0 4 +29596 Rxf7 3 0 8 +29601 Nxd5 4 0 1 +29602 Bxf2 2 0 3 +29603 fxe6 8 0 8 +29604 Ng4 3 0 5 +29605 O-O 2 0 3 +29612 Kxf7 3 0 2 +29614 dxc3 6 0 4 +29614 Bg4 3 0 4 +29616 d6 4 1 1 +29619 Bf6 3 0 5 +29620 bxc6 5 0 4 +29625 Qxe5 6 1 1 +29626 Bxg4 5 0 0 +29628 Qxh1 1 0 4 +29627 Qxe4 0 0 17 +29629 d6 9 1 1 +29631 Be7 1 0 6 +29633 Nxd5 2 0 6 +29636 O-O 3 0 2 +29637 d5 5 0 4 +29638 Qxd5 5 1 7 +29641 Qe7 7 0 7 +29640 Nxe4 7 1 18 +29642 h6 6 0 1 +29646 Nxb3 4 0 2 +29643 c6 28 4 47 +29643 Bd7 16 0 20 +29643 Nd7 2 1 2 +29648 Nxd5 0 1 4 +29645 Nxc4 3 0 7 +29647 Nxc4 2 1 2 +29644 Nxc4 8 0 8 +29649 Nf5 4 0 12 +29649 b5 6 0 4 +29650 Qxd6 3 1 10 +29650 Ne6 2 0 5 +29657 Qxd5 2 0 3 +29653 Kxf7 67 2 26 +29654 f6 12 0 6 +29654 Qxg5 9 1 8 +29654 Be6 3 0 10 +29655 h6 5 0 5 +29655 Be7 5 0 3 +29659 Qxd5 0 0 8 +29669 Qxd5 6 1 3 +29668 Be6 3 0 6 +29674 bxc6 3 1 1 +29675 O-O 1 0 4 +29677 Bg6 6 1 8 +29680 Bxf3 3 0 2 +29681 Nxf7 2 0 3 +29683 Nf6 9 0 3 +29683 Qf6 4 1 2 +29685 h6 2 0 4 +29687 d6 3 1 2 +29687 Bxc3 3 1 1 +29689 Nxd4 6 2 7 +29689 Bc5 6 0 1 +29692 exd4 4 1 0 +29693 exd4 3 1 2 +29696 Nxd5 4 1 0 +29700 Bb4 4 2 5 +29700 Bb6 2 0 4 +29704 Nxe4 7 0 2 +29706 Bd7 1 1 3 +29708 exd4 5 1 0 +29709 Qxe5 6 0 2 +29711 bxc6 6 1 2 +29713 bxc6 5 1 2 +29714 d6 24 2 18 +29714 Nf6 13 0 6 +29714 c5 6 0 5 +29714 Qf6 2 0 6 +29714 b6 4 0 3 +29716 Bc5 3 2 3 +29715 Qxc6 4 1 2 +29717 bxc6 2 0 4 +29722 exd4 4 1 3 +29729 exd4 8 0 1 +29732 d6 5 0 3 +29737 Bd7 2 1 3 +29739 h6 3 0 2 +29740 Qxd5 4 1 2 +29743 Ne5 2 0 4 +29744 Ng8 3 0 3 +29745 Qxd5 4 0 3 +29746 Nxd2 4 0 1 +29747 c5 3 0 2 +29748 Kxd8 5 0 0 +29749 bxc6 7 0 13 +29749 dxc6 3 0 2 +29749 Bxc3 4 1 0 +29750 Nxd4 1 1 4 +29750 Bxd4 3 0 2 +29751 bxc6 4 0 5 +29752 d6 10 2 10 +29752 b6 6 2 6 +29752 Be7 5 0 3 +29752 c5 4 0 3 +29752 Qe7 5 0 0 +29754 exd4 4 0 1 +29757 Nf6 2 0 5 +29758 Ba7 4 1 1 +29759 Nf6 5 0 2 +29760 bxc6 6 0 1 +29761 Bxd2 7 1 10 +29768 Bb4 1 1 5 +29773 Nxf6 1 1 3 +29775 Qxd5 4 0 1 +29776 Nf6 3 1 1 +29781 Kxd8 7 1 9 +29783 Bd6 7 2 1 +29786 Kxf7 4 0 3 +29791 Bxd4 5 0 3 +29792 Nge7 18 2 18 +29797 Bxe3 7 0 6 +29797 Qxc6 4 0 1 +29799 Bxd4 2 1 4 +29794 Qxc6 7 0 3 +29794 dxc6 1 1 7 +29795 dxc6 2 0 10 +29796 dxc6 4 0 5 +29796 Qxc6 3 0 3 +29798 Qxc6 1 1 3 +29800 d6 5 0 9 +29800 Nf6 6 0 2 +29800 Ne7 1 0 6 +29801 Qf6 3 1 2 +29801 d6 2 0 3 +29805 Kxd8 1 1 3 +29806 Nge7 2 1 3 +29808 bxc6 6 0 9 +29809 Bc5 10 2 1 +29809 d5 1 0 5 +29809 Qe7 5 0 0 +29811 Bb4 4 0 3 +29810 Qe7 4 0 5 +29810 Nd5 4 0 4 +29813 Kxd8 1 0 5 +29814 Nc6 4 1 4 +29816 Nc6 3 0 2 +29819 Be7 10 0 7 +29819 c5 3 1 1 +29818 d6 5 1 2 +29818 b6 4 1 2 +29821 Be7 4 0 3 +29817 Ng8 6 0 4 +29817 Qe7 5 0 4 +29817 Nh5 6 1 1 +29817 c5 4 0 4 +29826 Qxd4 7 0 3 +29825 Nxf6 10 3 13 +29827 Qe6 3 2 0 +29829 Bb7 5 0 1 +29828 Bc5 9 1 0 +29830 c6 2 1 4 +29832 d6 4 1 4 +29832 Nf6 2 1 4 +29834 Nf6 2 0 4 +29833 Nf6 8 0 10 +29831 Qe7 13 1 6 +29831 Ne7 5 0 6 +29831 Be7 3 0 5 +29838 Nf6 6 0 6 +29839 Nf6 16 4 13 +29839 Be6 12 0 4 +29839 Qf6 3 2 5 +29839 c5 5 0 4 +29840 Nf6 22 3 16 +29840 Be6 11 0 3 +29840 c5 2 1 3 +29840 Qf6 2 0 3 +29841 Be6 2 0 4 +29841 dxe5 2 0 3 +29847 Nge7 4 0 7 +29848 Nf6 3 0 5 +29848 Bc5 2 1 2 +29849 Bb4 3 0 2 +29852 Qxe2 6 0 2 +29853 cxd5 3 0 3 +29854 Be7 3 0 2 +29855 Nf6 1 1 4 +29861 Kxf7 4 0 1 +29860 Be7 1 0 5 +29868 Bd7 4 0 2 +29871 dxe4 3 0 2 +29870 Qxd5 0 1 7 +29873 bxc6 3 0 4 +29873 Bxc3 5 0 0 +29876 d6 7 0 2 +29876 b6 4 0 4 +29876 c5 2 0 5 +29876 Be7 3 0 2 +29880 exd4 2 0 3 +29881 dxe5 3 1 3 +29883 Qxe5 4 1 3 +29884 Be7 3 0 2 +29885 Be6 4 0 2 +29886 Nf6 6 1 13 +29888 Bg4 9 0 3 +29888 Nc6 3 0 2 +29889 Bg4 1 2 6 +29893 Nf6 17 1 20 +29893 Nc5 1 0 4 +29895 Be7 2 3 4 +29896 Be6 1 1 3 +29907 Nxd7 4 0 1 +29908 g6 5 0 0 +29909 a4 6 0 0 +29913 e5 3 1 4 +29913 Qd7 4 0 3 +29913 Qe7 1 1 3 +29915 Nxe4 3 1 1 +29917 Kxf7 4 0 5 +29918 O-O 2 0 3 +29920 Bg6 4 0 2 +29921 Qf6 4 0 2 +29924 b6 5 0 2 +29928 h6 6 0 5 +29928 Nc6 3 0 2 +29932 c6 4 1 2 +29931 Nc6 6 0 7 +29931 h6 4 0 2 +29931 c6 2 0 3 +29936 b6 8 0 4 +29935 Nxf6 15 3 5 +29937 Bg6 5 0 2 +29940 Nf6 5 0 4 +29940 Ne7 1 0 4 +29942 Qe7 11 0 10 +29947 d5 4 0 2 +29948 Be7 1 0 4 +29951 O-O 1 0 4 +29953 dxe5 4 0 2 +29955 Be7 4 0 5 +29958 Be6 2 1 4 +29959 Nc6 1 1 3 +29963 Nf6 4 0 1 +29964 Nf6 5 1 1 +29965 Nc6 8 0 2 +29967 Nf6 26 0 5 +29967 Qf6 17 0 8 +29967 f6 10 0 3 +29967 Qe7 7 0 1 +29969 Bxd6 2 0 3 +29970 Kxd8 10 0 1 +29971 Be6 12 1 2 +29974 Kxd8 9 1 8 +29977 Bxc6 4 1 3 +29979 O-O 2 0 3 +29980 O-O 2 1 3 +29981 Ne7 5 0 2 +29982 Nf6 5 0 2 +29984 Nxd4 4 0 4 +29985 O-O 5 2 8 +29988 Qxf6 3 0 2 +29989 Be7 2 0 3 +29991 O-O 12 1 8 +29994 O-O 4 0 3 +29992 O-O 2 1 2 +29995 O-O 2 0 5 +29993 O-O 6 0 6 +29996 O-O 3 0 3 +30000 Qxd7 7 1 5 +30000 Nxd7 7 1 5 +30004 Ne7 7 0 0 +30005 Bxc6 12 1 8 +30007 g6 4 0 1 +30009 d5 4 0 2 +30011 Kg6 10 0 2 +30013 Qxe4 7 0 1 +30013 Nf6 3 0 2 +30022 O-O 4 0 12 +30025 Bg4 5 0 3 +30027 O-O 6 0 4 +30028 d6 3 0 3 +30028 b5 0 0 5 +30028 Bg7 0 0 5 +30034 O-O 2 0 10 +30044 Bxc3 1 0 5 +30046 Nf6 1 0 5 +30047 Bxf6 3 1 7 +30048 O-O 1 2 4 +30051 Bb6 0 0 5 +30052 O-O 6 0 5 +30053 Bc5 2 0 3 +30055 Qf6 5 1 5 +30055 g6 2 0 3 +30056 Be7 4 0 3 +30062 Nf6 8 0 4 +30062 Qe7 5 0 5 +30062 Bxc3 6 0 1 +30063 Nf6 5 0 7 +30063 f6 5 0 2 +30063 Bxd2 5 0 1 +30063 Qe7 3 0 2 +30064 d6 7 0 2 +30064 Bb4 4 0 1 +30066 Bb4 5 0 1 +30066 Nxe4 4 0 1 +30068 Qe7 3 0 3 +30074 Nf6 4 1 4 +30075 Be6 5 0 2 +30076 Qe7 2 0 3 +30078 Bxc4 3 0 3 +30082 Bb4 3 0 2 +30086 O-O 3 0 2 +30087 Nd4 4 0 1 +30091 Bb4 4 0 2 +30092 O-O 3 0 2 +30095 O-O 6 0 0 +30097 c6 2 0 3 +30098 Bg5 4 1 1 +30098 Bg4 3 1 1 +30100 gxh2 13 0 4 +30101 Qxf2 4 1 2 +30110 Nxc6 1 1 4 +30113 Nc6 1 0 4 +30118 O-O 5 0 0 +30121 Be7 2 0 4 +30123 d6 5 0 4 +30124 fxe6 3 0 6 +30126 Ke8 5 0 2 +30127 Nh6 3 0 4 +30127 f3 5 0 1 +30129 Bh6 2 0 3 +30130 Kxf7 6 0 7 +30133 Nf6 2 0 4 +30135 d6 2 0 8 +30141 Ba6 4 1 0 +30146 Qxb2 1 1 4 +30149 O-O 2 0 4 +30151 O-O 1 0 5 +30153 c6 3 0 8 +30154 Qd7 1 0 4 +30157 O-O 8 1 12 +30159 O-O 7 2 18 +30164 O-O 1 2 7 +30165 O-O 1 0 4 +30166 O-O 3 1 3 +30168 O-O 4 1 3 +30170 O-O 2 0 3 +30169 c6 1 0 5 +30173 c6 1 1 3 +30171 O-O 3 0 5 +30172 O-O 1 0 4 +30175 cxd4 4 1 9 +30176 Bxc5 3 0 2 +30178 c6 4 1 1 +30179 cxd4 1 1 6 +30179 Nc6 2 0 3 +30182 O-O 1 1 4 +30183 O-O 2 1 5 +30185 Nc6 3 0 3 +30186 Nf6 2 0 5 +30187 b6 0 0 6 +30188 Ne7 6 0 2 +30189 b6 4 0 1 +30195 Qxe7 10 0 4 +30194 a6 2 0 3 +30197 Nc6 5 0 5 +30199 Bxf6 4 0 1 +30198 Bxf6 2 0 4 +30201 Nc6 4 0 3 +30202 Nc6 2 0 4 +30203 Nc6 5 0 3 +30205 Bxc6 7 0 2 +30209 bxc6 3 0 2 +30210 Bxc6 2 1 5 +30210 bxc6 2 0 3 +30212 bxc6 1 0 11 +30213 bxc6 2 1 3 +30223 Bd7 7 0 3 +30223 cxd4 2 1 2 +30222 cxd4 4 0 11 +30222 Nh6 3 0 3 +30225 Qxb2 1 0 9 +30221 cxd4 7 0 9 +30221 a5 4 0 1 +30226 cxd4 3 1 3 +30224 cxd4 3 0 3 +30228 Bb4 5 0 6 +30228 Qb6 4 0 6 +30228 Nge7 4 0 3 +30232 Bd7 5 0 1 +30231 cxd4 3 1 3 +30231 Nge7 1 0 5 +30230 cxd4 6 0 4 +30230 Bd7 3 1 1 +30234 Nc6 4 1 1 +30236 Qb6 2 0 3 +30240 O-O 1 1 3 +30239 O-O 5 0 2 +30242 O-O 2 1 4 +30243 O-O 4 0 3 +30244 O-O 3 0 6 +30244 c6 3 1 1 +30245 O-O 7 0 3 +30246 Be6 4 0 1 +30248 O-O 2 1 2 +30249 O-O 1 0 4 +30251 O-O 10 0 9 +30252 O-O 5 0 11 +30253 Be7 2 0 3 +30255 O-O 2 1 2 +30256 h4 5 0 0 +30257 O-O 3 0 4 +30260 Nc6 17 0 6 +30261 Nc6 11 0 6 +30263 Nc6 1 0 4 +30267 Bxe2 2 0 3 +30268 Qd6 3 0 3 +30269 Qh5 3 1 2 +30272 Nc3 0 0 5 +30273 cxd5 6 1 2 +30274 Nd2 3 0 2 +30275 Bd3 1 1 3 +30277 O-O 5 0 0 +30280 Bg5 5 0 1 +30286 Bd3 5 0 0 +30293 e3 3 0 3 +30299 O-O 3 0 2 +30297 O-O 3 0 5 +30298 O-O 5 0 0 +30302 Nxd1 3 1 1 +30304 Nge2 1 0 4 +30303 Qd2 4 0 2 +30307 Be2 4 0 1 +30306 d5 6 0 3 +30309 fxe5 4 1 0 +30310 Bc4 14 1 9 +30310 Be3 3 1 8 +30310 Bd3 2 1 3 +30310 Nf3 1 1 3 +30311 Bc4 5 1 4 +30311 Be3 2 1 2 +30312 O-O 2 1 6 +30313 O-O 4 0 1 +30316 Nb5 2 1 4 +30318 Bg5 1 0 4 +30322 Qxd4 4 1 1 +30323 f3 7 0 0 +30324 exf7 7 0 1 +30325 Qxf4 5 0 4 +30326 e3 4 0 1 +30328 Nf3 7 0 2 +30330 Nb5 5 0 0 +30329 Nb5 5 0 2 +30333 Be2 5 0 0 +30337 Bd3 5 0 2 +30341 O-O 3 1 1 +30343 Nxb5 7 0 3 +30344 Nxb5 6 0 0 +30345 Nxb5 2 0 3 +30347 Qxb7 14 0 1 +30346 Qxc6 17 1 4 +30348 Qxa8 8 0 0 +30350 O-O 2 0 3 +30351 Bg2 5 0 0 +30352 Bh4 4 0 1 +30355 Nf3 8 1 4 +30358 Bh4 4 0 3 +30363 Bh4 3 1 3 +30364 c5 7 0 1 +30365 Nb5 6 0 1 +30366 Qf2 2 0 3 +30367 O-O-O 3 0 2 +30380 f4 4 0 1 +30381 O-O 2 0 3 +30382 Be2 1 0 5 +30384 O-O 3 0 8 +30385 Bxd2 1 1 4 +30387 O-O 5 1 7 +30388 Nc3 3 0 2 +30389 d4 2 0 6 +30393 Be3 3 0 5 +30396 Nf3 5 0 3 +30401 c3 2 1 2 +30404 Bd3 5 0 2 +30405 Bxf6 0 0 6 +30411 Bxc6 3 0 3 +30412 Bb5 6 0 1 +30412 Bg5 2 2 3 +30417 O-O 2 0 4 +30418 Nc3 3 1 5 +30418 e5 3 0 5 +30424 Be2 2 0 3 +30427 O-O 2 0 4 +30430 O-O 3 0 3 +30433 Bd3 0 0 5 +30434 Bg5 6 0 6 +30437 Bg5 2 0 3 +30440 O-O 3 0 5 +30443 c4 2 0 3 +30451 O-O 2 1 4 +30453 f3 2 0 5 +30453 Bd3 1 1 3 +30455 Qxd6 2 1 3 +30456 Qxd6 16 2 11 +30457 Na3 7 1 11 +30458 Nb5c3 3 0 2 +30460 exf5 4 0 1 +30461 Nc3 4 0 7 +30461 Bg5 2 0 3 +30462 O-O 4 0 3 +30463 exd5 2 0 4 +30465 Bd2 1 0 10 +30464 Bc4 3 0 5 +30464 Bd3 2 0 4 +30467 f3 9 0 4 +30467 Bc4 6 0 1 +30468 Nxc6 2 0 6 +30468 Nb3 2 1 2 +30472 Bc4 0 0 5 +30473 O-O 2 0 7 +30474 Bd2 4 0 1 +30475 e5 5 0 2 +30476 O-O 2 0 3 +30484 O-O 0 0 5 +30486 Nf5 3 0 7 +30487 exf5 7 1 6 +30492 Qd2 2 1 4 +30493 O-O 0 0 5 +30496 Bxd7 5 0 2 +30498 Nf5 3 0 4 +30497 O-O 3 0 9 +30497 Bb3 2 0 3 +30499 Nf5 5 0 2 +30499 Nf3 2 0 4 +30501 Nb3 11 1 4 +30505 f3 4 0 1 +30503 Nb3 24 2 15 +30503 Nf3 2 0 5 +30510 Nb3 5 0 8 +30510 Nf3 1 0 4 +30509 f4 9 1 9 +30509 Bd3 2 1 6 +30509 Bc4 3 0 4 +30509 Qf3 3 0 4 +30509 Qd2 1 0 5 +30511 Nb3 3 1 1 +30512 Nb3 6 0 6 +30513 Nf3 4 0 1 +30515 Bg5 4 0 1 +30516 a3 3 1 2 +30521 O-O 0 2 3 +30522 Be3 2 0 5 +30523 O-O 2 0 4 +30523 Be3 4 0 1 +30524 Qd2 10 0 14 +30524 f3 12 0 10 +30524 Be2 9 0 7 +30524 Bc4 5 1 5 +30524 Bd3 4 0 2 +30525 Bd3 2 1 4 +30525 Qd2 3 0 2 +30526 Be3 6 0 6 +30528 Nc3 7 0 5 +30530 Nxe5 4 0 1 +30537 Qxd6 5 0 0 +30539 Qd2 3 0 2 +30542 exd5 6 0 4 +30543 exd5 7 1 0 +30548 O-O 3 0 4 +30550 Be2 1 0 5 +30556 Bg5 3 0 5 +30557 Nxc6 4 0 1 +30560 Nc3 4 0 1 +30561 f3 5 0 4 +30561 Qd2 3 0 3 +30562 Nxc6 1 0 7 +30564 Be3 2 0 5 +30564 Bc4 2 0 3 +30567 Be3 1 1 3 +30568 Na3 4 1 0 +30569 Bd3 2 0 3 +30570 O-O 5 0 2 +30573 O-O 4 0 1 +30577 O-O 2 0 3 +30578 O-O 2 1 2 +30579 d5 3 0 4 +30580 O-O 1 2 5 +30584 Bg6 2 0 3 +30594 h3 2 0 4 +30599 Ng1e2 5 0 4 +30600 h4 3 1 2 +30603 h5 6 1 5 +30604 Bxe4 2 1 3 +30607 O-O 2 1 4 +30609 Bg5 4 0 2 +30608 c3 4 0 2 +30610 Nf3 2 0 3 +30611 Qxd3 5 1 6 +30612 Qxd3 4 0 8 +30615 Qb3 3 1 4 +30617 O-O 3 1 4 +30618 O-O 4 0 2 +30620 Be2 3 1 4 +30635 Be2 1 0 5 +30637 g4 3 0 2 +30638 Rb1 2 1 3 +30639 O-O 1 1 3 +30643 bxc3 3 1 1 +30646 Qd2 4 0 1 +30648 d3 4 0 4 +30649 O-O 5 0 0 +30652 Nf3 1 1 3 +30653 Bd1 7 0 2 +30655 Nh4 9 1 5 +30655 g3 2 1 3 +30656 d4 3 0 2 +30660 Nge2 2 1 2 +30662 Re1 2 0 5 +30664 Nxd4 6 0 1 +30666 Bd3 3 0 3 +30669 Nh4 2 0 3 +30670 g3 3 0 3 +30672 O-O 5 0 1 +30676 O-O 5 0 0 +30680 Qe2 4 0 2 +30679 dxc6 5 0 8 +30681 Qf3 3 1 6 +30683 Qf3 5 1 0 +30684 dxc6 7 0 8 +30685 Qf3 13 1 7 +30686 Bxd5 5 0 3 +30690 Bxd7 3 0 2 +30691 Nxf3 2 0 4 +30692 Nxf3 3 0 2 +30696 Bd3 2 0 4 +30697 Bd3 2 2 1 +30698 Bxc6 4 0 5 +30699 Bd3 2 0 4 +30700 Bxc6 4 1 0 +30702 O-O 2 0 3 +30703 Qe2 5 0 3 +30705 cxd4 1 2 2 +30706 Nxd4 4 0 2 +30707 cxd4 2 0 4 +30708 O-O 3 0 3 +30710 Bb3 4 0 1 +30711 Bb3 3 0 2 +30712 exd5 5 0 0 +30714 Qe2 2 0 3 +30715 Qxf3 3 0 2 +30719 Nc3 4 0 1 +30721 cxd4 4 0 4 +30722 Nxc6 1 0 4 +30722 c3 1 0 4 +30723 Bc4 1 0 4 +30726 Bb3 26 1 33 +30727 Bb3 2 0 3 +30730 c3 2 0 3 +30728 Re1 20 1 11 +30728 c3 4 0 6 +30729 Re1 3 2 1 +30735 Re1 4 0 3 +30736 c3 4 0 2 +30741 Qe2 3 0 6 +30742 Qe2 10 1 20 +30742 Kf1 2 0 7 +30743 Kf1 2 2 2 +30746 dxe5 4 1 4 +30747 Nxd4 3 0 4 +30747 Qxd4 3 0 3 +30750 Qxf3 3 0 3 +30754 Qxf3 5 2 9 +30757 Nxd4 10 1 11 +30759 d4 2 0 3 +30761 g4 1 0 6 +30762 Qxf3 3 0 2 +30767 O-O 8 0 4 +30768 Nc6 1 0 4 +30773 Bb3 3 1 1 +30776 O-O 4 0 2 +30779 Qxd8 7 0 0 +30784 Bxc6 6 2 3 +30783 Bc4 3 1 4 +30788 d4 1 0 4 +30792 d3 1 0 6 +30794 Bh4 7 0 3 +30801 cxd4 8 0 1 +30802 cxd4 2 0 4 +30805 cxd4 4 0 4 +30807 O-O 3 0 8 +30808 cxd4 11 2 9 +30808 O-O 8 1 9 +30810 e5 7 0 2 +30810 cxd4 4 0 1 +30811 Bd2 40 2 43 +30811 Nc3 21 3 25 +30812 e5 4 0 9 +30812 Nc3 6 0 0 +30815 Nc3 17 1 8 +30815 Bd2 9 1 5 +30816 O-O 11 0 7 +30816 Ng5 2 0 4 +30817 d4 3 0 2 +30818 Bd2 5 0 4 +30818 Nc3 4 0 3 +30821 Bg3 1 0 4 +30822 Bxf7 3 0 7 +30824 Kxf2 2 0 3 +30825 Nxe6 7 0 8 +30826 O-O 2 0 3 +30830 Bxf7 3 0 2 +30829 bxc3 5 0 3 +30832 e5 2 0 4 +30836 Bf1 1 0 4 +30837 Be2 0 0 14 +30838 Bg5 3 1 1 +30843 Nc3 4 1 4 +30844 Nxh8 7 0 7 +30845 Kg1 4 0 5 +30845 Ke1 2 0 5 +30846 Nf7 6 0 1 +30847 axb3 4 0 1 +30849 Bxd7 7 0 12 +30849 Qe2 6 0 6 +30848 dxc6 28 4 46 +30852 Qxc4 3 0 7 +30853 bxc4 2 1 2 +30854 dxc4 8 0 8 +30855 d6 0 0 6 +30855 d4 2 0 4 +30856 cxd4 6 0 2 +30858 dxc7 1 0 4 +30857 Nxf7 1 1 10 +30860 Qf3 67 2 26 +30863 Nxe6 2 0 5 +30862 Bxd5 8 1 6 +30861 Bxd5 10 0 3 +30864 Ne4 5 0 1 +30866 Bxc6 0 0 7 +30867 Nc3 2 0 3 +30872 Bxf3 3 0 2 +30876 Qxg4 1 0 4 +30878 Bxc3 3 1 1 +30880 Nxc6 6 0 1 +30879 Qxd4 6 2 7 +30881 cxd4 4 1 0 +30882 cxd4 3 1 2 +30884 Nc3 1 2 3 +30884 Bd2 3 0 2 +30887 Bc4 1 1 3 +30888 O-O 4 1 0 +30889 O-O 4 0 1 +30893 e5 9 0 3 +30893 Nc3 4 0 1 +30894 Qd5 3 0 3 +30892 O-O 7 1 6 +30892 Qd5 8 0 4 +30892 Nc3 2 1 5 +30897 c3 3 1 1 +30900 Nxd4 4 1 3 +30901 Nxd4 8 0 1 +30905 d3 3 1 2 +30906 f4 2 0 4 +30909 Qxd2 4 0 1 +30911 Bg5 5 0 0 +30914 bxc3 4 1 0 +30912 Bd3 3 0 6 +30916 Bxd4 3 0 2 +30915 Bxd4 1 1 4 +30918 e5 3 0 4 +30918 Bg5 3 2 1 +30925 d4 3 1 1 +30926 h3 5 0 2 +30927 h3 4 0 1 +30928 Nbxd2 4 1 7 +30928 Qxd2 3 0 3 +30929 Bd2 0 1 5 +30931 exd5 4 0 1 +30933 Bc4 4 1 4 +30933 Nc3 1 0 5 +30935 Qd5 4 0 3 +30936 Qxd4 5 0 3 +30937 Bc4 7 1 8 +30937 Be2 5 0 5 +30938 fxe3 7 0 5 +30939 Bxc5 4 0 1 +30941 Bd3 7 0 2 +30942 Bd3 1 1 7 +30943 Nc3 2 0 8 +30949 O-O 1 0 4 +30948 O-O 5 0 2 +30947 O-O 5 0 8 +30954 Bd3 5 0 5 +30955 O-O 9 2 0 +30960 Bc4 1 0 4 +30962 Qd1 2 1 2 +30964 e5 3 0 2 +30964 Bxf6 3 0 2 +30969 Bc4 2 0 3 +30971 Be2 3 1 1 +30973 Bxd4 7 0 3 +30974 Bd3 8 2 6 +30977 Qxg7 4 1 0 +30982 Qe5 8 0 10 +30985 Qxg7 2 0 3 +30984 Qxc5 3 0 4 +30983 Qxe7 9 1 4 +30988 O-O 5 0 2 +30987 e5 4 4 7 +30987 Bg5 4 0 4 +30987 Nc3 5 0 1 +30990 Qd5 4 0 3 +30991 Bg5 9 2 3 +30991 Bc4 5 0 3 +30991 e5 3 1 3 +30991 g3 1 0 4 +30998 Qe2 2 0 3 +31001 Bxe2 6 0 2 +31003 O-O 3 0 2 +31005 Qf3 4 0 1 +31011 bxc3 5 0 0 +31017 Qxe5 1 1 3 +31018 exd5 4 1 3 +31021 Qxe7 3 1 9 +31021 Bg5 3 0 2 +31022 O-O 9 0 3 +31023 O-O 3 0 2 +31025 Bg5 8 0 8 +31025 Qxe7 8 1 6 +31027 O-O 2 3 4 +31030 Nxg6 5 0 0 +31031 Ba2 6 0 0 +31036 Qc4 4 0 5 +31041 h4 4 0 4 +31043 d3 2 1 2 +31044 Bg5 4 0 5 +31046 Bg5 2 0 3 +31045 Nc3 3 0 2 +31048 d3 7 3 2 +31048 O-O 5 0 1 +31052 Nxf8 6 0 6 +31052 Ng5 5 0 3 +31056 Qxd8 3 0 2 +31057 O-O 3 0 3 +31061 Nc3 4 1 0 +31063 Qb3 17 0 0 +31063 Bg5 7 0 2 +31066 O-O 4 0 1 +31064 Qb3 10 0 3 +31064 Qxf6 4 0 2 +31065 Bxg8 4 0 1 +31070 Bc4 6 1 5 +31070 Nc3 3 0 2 +31071 O-O 3 1 3 +31075 Bg5 3 0 2 +31076 Bxd4 4 0 4 +31077 Nc3 2 1 3 +31080 O-O 10 1 6 +31081 O-O 4 0 2 +31084 Qd2 5 0 6 +31087 Nf5 5 0 2 +31087 Nb5 1 1 3 +31086 Nf5 6 1 4 +31089 Nc3 6 1 4 +31089 Bg5 4 0 1 +31090 Qxe5 4 0 1 +31092 Qf5 9 0 2 +31093 Kd1 6 0 0 +31095 Bg5 3 0 8 +31096 Qg3 5 0 3 +31097 Nc3 5 0 1 +31098 c3 3 0 2 +31101 Bxf6 1 0 5 +31102 Qxc3 1 0 5 +31104 c3 2 1 3 +31107 O-O-O 6 0 5 +31108 Qg3 2 0 3 +31109 Nd5 3 0 2 +31111 O-O-O 3 0 2 +31114 Bxc3 6 0 1 +31113 Ne2 2 0 3 +31117 Qxd2 5 0 1 +31115 Bxf7 3 0 5 +31116 Nf3 5 0 0 +31119 O-O 6 0 2 +31122 O-O 4 0 1 +31124 Bxf7 3 1 3 +31127 Qxc4 3 0 3 +31137 Kh1 13 0 2 +31138 Kxf2 4 1 2 +31141 O-O 5 0 0 +31143 Nc3 2 0 3 +31144 d4 1 0 4 +31145 Qxg4 5 0 2 +31146 d4 3 0 3 +31149 Qxg4 5 0 4 +31151 O-O 2 0 8 +31153 Nbd2 1 1 3 +31156 Bd3 3 0 5 +31158 Re1 3 1 2 +31158 Bg5 1 0 5 +31158 h3 2 0 3 +31159 c3 0 1 5 +31159 h3 2 0 3 +31162 O-O 2 1 3 +31164 O-O 2 0 3 +31167 O-O 2 0 5 +31169 Qxd4 4 1 9 +31171 Bg5 4 1 1 +31172 Qxd4 0 1 5 +31174 O-O 1 0 4 +31175 O-O 2 0 5 +31177 Nf3 2 0 5 +31178 Qd2 0 0 6 +31181 f4 8 0 4 +31183 Be3 5 0 3 +31184 Nf3 4 0 1 +31188 Ngf3 3 0 2 +31189 O-O 4 0 1 +31194 Nf3 1 1 3 +31195 Bc2 3 0 2 +31197 cxd4 4 0 9 +31199 Nbd2 1 0 9 +31200 cxd4 7 0 9 +31203 cxd4 3 0 3 +31204 Bd2 4 0 2 +31204 Nc3 1 0 4 +31205 a3 1 0 4 +31209 O-O 1 0 4 +31208 cxd4 3 1 3 +31211 b4 3 1 1 +31210 cxd4 6 0 4 +31212 a3 3 1 1 +31214 Nbc3 1 1 3 +31217 Bg5 3 0 2 +31218 Be3 2 0 4 +31220 Be3 4 0 2 +31224 Bg5 2 0 4 +31225 Re1 2 0 4 +31229 O-O 3 0 4 +31230 c3 13 0 3 +31230 Nf3 3 0 2 +31231 Nf3 5 0 2 +31231 c3 5 0 1 +31233 Qxe2 2 0 3 +31234 Nc3 3 0 3 +31235 Rg1 2 1 2 +31236 Bb7 0 0 5 +31237 exd5 5 0 2 +31238 d6 3 0 2 +31241 O-O 4 0 1 +31242 O-O 5 0 0 +31245 e5 3 0 4 +31248 c5 1 0 4 +31253 O-O 6 1 5 +31253 c5 7 0 4 +31254 O-O 1 0 6 +31254 c5 2 1 2 +31257 Bg7 5 1 4 +31258 Bg7 2 1 2 +31259 Bg4 2 1 5 +31265 Kxf7 6 0 1 +31270 Na6 5 0 1 +31276 cxb5 2 0 3 +31277 Nd7 13 0 1 +31278 Bd7 16 1 4 +31280 O-O-O 2 0 3 +31283 Ne4 3 0 3 +31286 Bc7 7 0 1 +31288 e6 2 0 3 +31292 Ne4 0 0 5 +31293 Bd6 3 0 7 +31294 Bxg7 1 1 4 +31295 O-O-O 5 1 5 +31296 O-O 3 0 2 +31297 d6 2 0 5 +31298 Bf5 2 0 5 +31299 O-O 2 0 3 +31302 Qxf6 0 0 6 +31303 Bxc6 3 0 2 +31304 Nc6 6 0 1 +31305 Qb6 1 2 3 +31307 d5 2 1 3 +31308 Nd5 2 0 4 +31311 Bg7 3 0 3 +31313 a6 6 0 6 +31320 Nxe4 1 1 3 +31321 Qf6 11 0 7 +31321 Qe7 3 2 4 +31322 b5 5 1 7 +31326 Be7 2 0 3 +31325 Be7 2 0 3 +31325 Bb4 1 0 4 +31328 cxd5 2 0 4 +31329 Nf6 0 0 5 +31332 O-O 7 0 3 +31334 Qxb2 1 0 5 +31339 Nd5 4 0 2 +31341 Nf6 0 0 5 +31342 Bxf5 3 0 6 +31343 Be7 6 1 5 +31345 Be7 0 0 5 +31346 Nbxd7 3 0 2 +31347 Bxf5 2 0 4 +31348 Be7 2 0 4 +31348 b5 1 0 4 +31350 Bxf5 5 0 2 +31352 Be7 8 1 3 +31354 Be6 21 2 15 +31356 Be6 4 0 3 +31356 Be7 1 0 5 +31360 Be7 3 0 3 +31359 Be7 2 1 5 +31361 Be7 2 0 4 +31358 Be7 6 1 4 +31358 Qb6 2 0 4 +31364 Be6 4 0 5 +31366 Be6 4 0 1 +31367 Be7 3 1 2 +31369 a6 1 0 4 +31370 O-O 2 0 3 +31375 O-O 2 1 3 +31374 O-O 7 0 7 +31372 a6 6 0 2 +31372 O-O 1 0 6 +31372 Nc6 2 0 3 +31373 O-O 6 0 7 +31373 a6 5 0 1 +31379 O-O 2 0 3 +31380 Nf6 6 0 4 +31384 cxd5 6 0 4 +31385 cxd5 7 1 0 +31389 bxc6 4 0 1 +31391 O-O 3 0 3 +31393 Qxb2 1 0 7 +31399 Nf6 4 0 2 +31402 Nf6 2 1 2 +31403 Nb8 3 0 3 +31408 h6 3 1 1 +31409 Bh7 6 1 5 +31410 Nf6 2 1 3 +31416 Nd7 2 0 5 +31417 Qb6 2 1 2 +31420 O-O-O 3 0 3 +31422 Bg6 3 0 2 +31423 Qa3 2 1 3 +31426 O-O 4 0 1 +31427 Nd4 2 0 3 +31430 Bg4 4 0 2 +31431 Qg5 5 1 5 +31432 Bxf1 2 1 3 +31433 exd4 3 0 2 +31436 Qg6 6 0 1 +31438 Qg5 2 0 3 +31439 Bxf1 3 0 3 +31440 c6 5 0 1 +31441 O-O 5 0 0 +31443 bxc6 4 0 8 +31444 Ke6 1 1 3 +31446 bxc6 6 0 8 +31447 Ke6 6 1 2 +31447 Ke8 2 0 3 +31449 Qxd7 3 0 2 +31453 Be7 2 2 1 +31454 Bxc6 4 0 5 +31456 Bxc6 4 1 0 +31458 Qxe2 5 0 3 +31459 Bb6 1 2 2 +31461 Bb6 2 0 3 +31465 cxd5 5 0 0 +31469 O-O 1 0 4 +31473 O-O 20 1 27 +31473 d6 6 0 6 +31476 O-O 14 1 10 +31476 d6 6 0 1 +31477 O-O 3 0 5 +31479 O-O 4 0 3 +31481 Qxe2 3 0 6 +31483 Bg4 1 0 6 +31482 Qxe2 9 1 20 +31485 Bxf3 4 1 4 +31489 Nf6 2 2 6 +31490 Bc5 4 0 7 +31490 Nf6 4 0 2 +31492 Bg6 1 0 6 +31494 Nf6 5 0 4 +31495 Qd7 1 0 4 +31498 Kxd8 7 0 0 +31499 bxc6 6 2 3 +31500 Nf6 2 1 4 +31501 exd4 1 0 4 +31505 Bb6 2 0 4 +31506 Nxd4 3 0 2 +31509 dxc3 4 1 6 +31508 Bb4 5 2 5 +31508 Bb6 5 0 3 +31512 Bxd2 27 1 24 +31512 Nxe4 12 1 14 +31513 Nxe4 15 1 17 +31513 O-O 2 0 3 +31517 Bxd2 7 1 5 +31516 Bg4 7 1 3 +31516 Bxc3 5 0 1 +31516 Nf6 4 0 1 +31518 Bg4 3 0 4 +31521 Bxd2 5 0 3 +31524 Kxf7 3 0 7 +31525 Ng4 2 0 3 +31526 Qf6 5 0 7 +31530 Qe7 1 0 4 +31531 Qxe4 1 0 4 +31532 Nf3 0 0 14 +31534 Qa5 3 1 2 +31535 d5 3 0 4 +31535 Nxe4 4 0 2 +31537 Qh4 2 0 5 +31536 Qh4 3 0 5 +31538 Ke8 5 0 1 +31540 Qxd7 6 0 12 +31541 Bd6 4 0 3 +31542 bxc6 28 4 46 +31543 Nxd5 3 0 3 +31546 Nxd6 0 0 6 +31548 bxc4 6 0 2 +31549 Qxc7 1 0 4 +31550 Qc6 1 1 10 +31551 Ke6 24 0 14 +31551 Ke8 25 2 5 +31551 Qf6 7 0 6 +31551 Ke7 6 0 1 +31551 Kg8 5 0 0 +31552 fxe6 2 0 5 +31554 Nd4 3 0 3 +31556 Qxc6 0 0 7 +31559 d5 1 0 4 +31561 bxc6 6 0 1 +31562 d6 0 2 5 +31563 Ba7 4 1 0 +31564 Bb6 2 1 2 +31572 Qe7 3 0 3 +31573 Nf6 2 1 3 +31574 Qe7 3 0 2 +31578 Nxd4 7 0 1 +31580 Ng6 2 0 3 +31586 Bxd4 1 1 4 +31587 dxe5 2 0 4 +31592 d6 2 1 6 +31598 Ke8 4 0 3 +31600 Bb6 1 1 3 +31602 dxc6 3 0 2 +31603 Qxc5 4 0 1 +31604 Nf6 5 0 1 +31606 Be6 1 0 4 +31608 O-O 4 0 2 +31609 Nf6 3 0 7 +31610 O-O 5 0 1 +31611 O-O 5 2 0 +31613 Bb4 2 1 2 +31615 Bxf6 3 0 2 +31617 g6 3 1 1 +31619 Bc5 4 1 2 +31621 Be7 8 0 9 +31622 Bf6 2 0 3 +31624 Bxe7 9 1 3 +31627 Be7 3 0 4 +31626 dxe5 3 3 2 +31630 Be7 6 1 3 +31632 dxe5 2 1 2 +31635 dxc6 6 0 1 +31636 Nf6 3 0 2 +31640 Qxe2 3 0 2 +31641 Bxe7 3 1 9 +31643 Nd7 4 0 2 +31645 Qxe2 6 0 4 +31646 Bxe7 8 1 6 +31647 O-O 2 3 2 +31649 Bg4 5 0 0 +31650 Be6 4 0 2 +31653 Nd4 3 0 4 +31659 h6 4 0 2 +31658 Rxf8 3 0 4 +31658 Qxf8 3 0 2 +31660 Kxd8 3 0 2 +31664 Be7 3 0 2 +31666 b6 8 0 3 +31667 Nxf6 4 0 2 +31668 Rxg8 4 0 1 +31669 f6 1 1 3 +31671 Nf6 2 1 2 +31672 Be7 3 0 2 +31673 Nc6 4 0 4 +31675 a6 2 1 2 +31677 Nc6 2 0 4 +31680 g6 4 1 1 +31681 Nf6 3 0 4 +31684 Kh6 9 0 2 +31690 Bxf6 1 0 5 +31692 O-O 2 1 3 +31693 Re8 3 0 3 +31694 O-O 2 0 3 +31700 Kxf7 3 0 4 +31704 Kxf7 3 1 3 +31712 d6 3 0 3 +31714 Nd7 2 0 8 +31716 O-O 1 0 5 +31725 Be7 2 1 6 +31725 Nc6 2 0 3 +31729 Ne4 0 0 5 +31731 Bb7 0 0 6 +31733 Qb6 5 0 2 +31739 Bb4 2 0 6 +31740 Qxc3 1 0 7 +31741 Nge7 7 0 6 +31742 Bb4 2 0 3 +31749 Nge7 6 0 4 +31753 h6 2 0 3 +31759 Qd5 3 0 2 +31758 Qd5 12 0 3 +31760 Qd5 4 0 2 +31761 Qd5 4 0 1 +31766 Nxd4 5 0 2 +31769 Ne2 5 0 0 +31770 d5 2 0 4 +31772 Ne2 5 1 4 +31773 Ne2 5 0 3 +31774 Bc4 1 0 6 +31776 Ne2 5 1 3 +31779 Qxd5 6 0 1 +31782 Qxb5 8 0 1 +31783 Qf3 8 1 2 +31783 Qb7 5 0 1 +31785 Bxe7 2 0 3 +31786 f4 7 0 1 +31788 O-O 0 0 5 +31789 c3 3 0 7 +31792 Bd3 3 0 2 +31794 Nc3 2 0 4 +31797 e5 3 0 2 +31798 O-O 6 0 1 +31800 exd5 2 1 3 +31803 Na3 5 0 4 +31805 Qxf6 3 0 2 +31805 Qc7 4 0 1 +31807 Nd5 5 0 7 +31809 O-O 2 0 3 +31811 O-O 2 0 4 +31813 Qd2 3 0 2 +31814 Bd4 1 0 5 +31817 exf5 3 0 6 +31818 Bd3 2 1 4 +31820 O-O 3 0 2 +31821 exf5 2 0 4 +31824 exf5 5 0 2 +31825 O-O 3 1 1 +31826 f3 9 0 7 +31826 Bd3 5 0 3 +31826 Qd2 4 1 2 +31828 Qd2 1 0 4 +31830 O-O 0 1 5 +31831 O-O-O 2 0 3 +31832 Qf3 5 1 4 +31834 Be3 4 0 2 +31836 Be3 3 1 1 +31840 O-O 4 0 1 +31844 Qd2 5 0 6 +31847 Bg5 5 0 4 +31848 O-O 5 0 2 +31850 e5 4 0 1 +31851 Bc4 3 0 2 +31853 Qe2 4 0 1 +31857 Nf3 3 0 3 +31859 Be3 1 0 5 +31860 Qxb6 2 1 2 +31864 O-O-O 4 0 1 +31866 a3 4 0 2 +31867 g3 3 0 3 +31869 Nxd4 3 0 2 +31872 Bxf1 3 0 2 +31873 h3 5 0 1 +31875 Be2 2 0 6 +31877 Ba4 3 0 6 +31877 Be2 3 0 2 +31879 Bxd5 2 0 3 +31882 e5 3 0 5 +31884 Kxe2 5 0 3 +31889 c3 13 0 22 +31889 a4 4 1 3 +31890 h3 1 0 5 +31890 c3 5 0 1 +31891 c3 4 1 7 +31891 h3 8 0 3 +31892 h3 5 0 1 +31893 Re1 2 0 4 +31895 Kxe2 3 0 6 +31897 Kxe2 9 1 20 +31898 Qxf3 4 1 4 +31899 Bg5 1 2 2 +31903 Nc3 2 0 3 +31905 Nxe5 6 0 0 +31906 O-O 5 2 2 +31911 Bxf7 2 1 5 +31912 Bd2 4 2 2 +31913 O-O 4 0 1 +31914 Nbxd2 27 1 19 +31914 Qxd2 0 0 5 +31915 Bxb4 12 1 13 +31916 O-O 11 1 14 +31918 Nbxd2 5 0 4 +31920 bxc3 5 0 1 +31923 Nbxd2 4 0 2 +31924 Bg5 2 0 4 +31926 Nxc7 1 0 5 +31928 Be2 1 0 4 +31931 exd5 3 0 4 +31933 g3 2 0 4 +31934 Qf3 2 0 3 +31935 Nxh8 5 0 1 +31936 Nc3 3 0 6 +31936 O-O 3 0 4 +31938 Ba4 11 2 29 +31938 Be2 9 1 5 +31938 Qf3 4 1 6 +31938 Bd3 4 0 5 +31941 dxe5 3 0 2 +31943 Nxh8 0 0 5 +31944 Nc3 23 0 7 +31947 Bxd5 6 0 1 +31945 Bxd5 25 2 5 +31948 Bxd5 5 0 0 +31946 Bxd5 7 0 6 +31951 O-O 0 0 7 +31954 e5 0 1 4 +31960 Qxd4 7 0 1 +31961 e5 2 0 3 +31962 Qxd4 1 1 4 +31965 Qxc5 3 0 3 +31966 O-O 1 1 3 +31975 Bd2 2 1 2 +31976 e5 3 0 2 +31978 O-O 3 1 2 +31979 Bg5 5 0 7 +31981 Bc4 4 0 1 +31981 Nc3 4 0 1 +31983 Qxd8 3 3 1 +31984 O-O-O 4 0 1 +31988 Bxe2 3 0 2 +31989 d4 1 0 4 +31990 Re1 4 0 1 +31991 Bxe2 6 0 4 +31992 Bg5 6 1 3 +31995 Ng5 4 0 2 +31996 Qd1 3 0 4 +32002 Nc3 7 0 1 +32008 Be3 2 0 3 +32010 O-O-O 1 0 4 +32013 d4 5 0 2 +32018 Qb3 3 0 4 +32019 Qxd8 3 1 3 +32020 Nd3 3 0 2 +32022 O-O 1 0 4 +32023 O-O-O 2 1 6 +32024 Qd2 2 0 3 +32025 Re1 0 0 5 +32026 h4 0 0 5 +32028 Nc3 2 0 4 +32029 Rc1 0 0 5 +32030 Bd3 4 0 1 +32030 b4 1 0 4 +32032 b4 4 0 3 +32034 Nc3 3 0 2 +32035 Nf3 10 0 3 +32038 Be7 5 0 2 +32040 Ne7 2 0 4 +32041 c5 5 1 4 +32043 c5 1 0 6 +32044 Nc6 4 0 2 +32045 Be6 5 0 1 +32049 Qxe7 2 0 3 +32050 O-O 6 0 1 +32052 O-O 3 0 5 +32054 e6 1 0 4 +32056 O-O 6 0 1 +32057 cxd5 2 1 2 +32058 b5 4 0 4 +32059 Nxf6 3 0 2 +32061 Nf6 2 0 7 +32062 O-O 2 0 3 +32065 Bxd4 1 0 5 +32066 Be7 2 0 6 +32067 O-O 0 1 4 +32069 Be7 2 0 4 +32073 Be7 5 0 3 +32074 Be7 4 1 1 +32072 Be7 8 0 7 +32078 Qc7 4 1 4 +32080 O-O 3 1 1 +32081 a6 4 0 1 +32082 Nc6 3 0 6 +32088 e6 2 0 3 +32090 axb6 2 1 2 +32092 Bxf3 4 0 2 +32093 Bxf1 3 0 3 +32096 cxd5 5 0 1 +32101 dxe5 1 0 4 +32104 b4 4 1 3 +32103 d5 8 0 19 +32103 d6 3 0 2 +32107 d5 3 0 7 +32108 d6 4 0 2 +32112 Bg4 6 1 16 +32112 Nf6 2 0 3 +32113 Bxe5 4 1 4 +32117 Nf6 4 1 2 +32118 Kxf7 2 1 5 +32119 Bxd2 2 2 2 +32121 d6 13 1 5 +32121 O-O 5 0 9 +32121 d5 7 0 5 +32123 Nxb4 12 1 13 +32124 Bxc3 4 1 8 +32124 Nxc3 6 0 6 +32125 Bg4 4 0 4 +32129 Kd7 1 0 5 +32131 Bg4 3 0 4 +32132 Nxg3 2 0 3 +32135 Nxd5 2 0 6 +32136 Nxd5 2 0 3 +32137 h6 2 1 13 +32137 Bc5 1 0 5 +32137 Nd5 3 0 2 +32140 h6 2 0 3 +32138 h6 2 1 4 +32142 Qxg2 0 0 5 +32143 Nb4 11 0 3 +32143 Nd4 4 0 3 +32143 Ne7 6 0 1 +32145 Nd4 9 0 0 +32145 Qf6 3 1 3 +32147 Be6 5 0 5 +32148 Bb7 0 0 7 +32150 Qf6 4 0 1 +32154 O-O 1 1 3 +32158 O-O 1 0 5 +32158 d6 3 0 2 +32161 Kxd8 3 3 1 +32166 Be7 6 0 4 +32167 O-O 6 1 1 +32172 Nxd4 1 0 4 +32173 g5 3 0 2 +32174 d5 1 0 4 +32175 Bb4 3 1 3 +32178 Be6 1 1 3 +32180 f5 0 0 5 +32186 Nf5 4 0 3 +32188 Bf5 10 0 3 +32189 Nc3 5 0 2 +32191 O-O 4 1 2 +32192 Ne2 1 0 6 +32193 Be3 4 0 1 +32194 Qxe4 5 0 1 +32196 Nf3 6 0 1 +32199 Bg5 6 0 1 +32201 Nd5 2 0 4 +32203 Bg5 1 0 6 +32211 Qd2 6 0 4 +32212 O-O-O 4 0 3 +32213 f3 3 1 1 +32215 O-O-O 3 0 3 +32216 Bd3 2 0 3 +32217 Nd2 2 1 2 +32218 gxf3 3 0 2 +32219 Bxf1 2 0 3 +32220 Nxd5 5 0 1 +32222 d4 2 1 3 +32223 exd5 8 0 16 +32225 exd5 2 0 7 +32226 c3 4 0 2 +32227 Re1 6 0 7 +32227 h3 0 0 5 +32231 Qd5 2 1 5 +32234 e5 4 0 6 +32235 exd5 6 0 5 +32233 O-O 7 0 2 +32233 e5 4 0 1 +32236 Bxf7 9 1 11 +32237 d5 2 0 5 +32237 bxc3 2 1 3 +32238 bxc3 5 0 5 +32239 Qb3 3 0 2 +32241 Be2 3 0 2 +32243 Nxd5 1 0 4 +32245 Nf3 2 0 11 +32249 Nf3 2 1 4 +32252 Bxd5 4 0 3 +32254 Qf7 8 0 0 +32255 Bxc6 2 1 2 +32256 Bxe6 2 0 4 +32258 Be3 4 0 1 +32262 Bxf7 3 3 1 +32263 Nc3 5 0 1 +32264 Nc3 4 1 0 +32265 Qxd4 1 0 4 +32267 Qxb4 1 0 4 +32268 Qd2 3 1 3 +32269 Bb5 1 1 3 +32271 Be3 3 0 3 +32272 Qd1 5 0 2 +32273 O-O 4 0 2 +32274 Nc6 4 0 2 +32275 Nc6 1 0 6 +32278 Nbd7 6 0 1 +32280 Be7 2 0 3 +32281 Be7 1 0 6 +32282 O-O 4 0 4 +32283 Nbd7 3 0 3 +32287 e6 2 1 2 +32288 Nc6 3 0 2 +32289 O-O-O 2 0 3 +32290 Nxd5 5 0 1 +32292 Nxd5 4 0 8 +32292 e4 4 0 8 +32293 e4 2 0 5 +32295 O-O-O 3 0 7 +32297 Ke8 2 1 5 +32298 Ng4 4 0 2 +32299 Nxd5 5 0 5 +32300 Bg4 5 0 1 +32302 Kxf7 8 1 9 +32305 Bxc3 5 0 5 +32307 Bxe2 3 0 2 +32308 Qxd5 1 0 4 +32309 e4 0 0 11 +32310 e4 2 1 3 +32314 Kxe6 2 0 4 +32317 c6 4 0 1 +32319 Nd7 1 0 4 +32321 Bxd2 3 1 3 +32323 Nxe3 3 0 3 +32325 Bf4 4 0 2 +32326 Be3 3 0 2 +32327 O-O 1 0 6 +32331 O-O-O 2 0 3 +32333 Ngf3 2 1 2 +32336 exd5 5 0 1 +32337 Nxe5 4 0 8 +32338 dxc6 3 0 7 +32340 Kf1 2 0 5 +32341 Qxc5 2 1 5 +32345 Qb3 7 1 7 +32346 Qb3 2 0 3 +32347 Qxe2 3 0 2 +32349 Ne5 0 0 6 +32351 Qb3 2 0 3 +32352 O-O-O 4 0 1 +32353 Nd5 1 0 4 +32354 Nxd2 3 1 3 +32355 fxe3 3 0 3 +32361 f5 5 0 1 +32362 Nxe5 4 0 8 +32363 exf3 3 0 7 +32364 Bxf3 1 0 4 +32366 d5 6 1 7 +32368 Nd4 3 0 2 +32369 Qd4 0 0 6 +32370 Kd7 2 0 3 +32373 Re8 2 1 3 diff --git a/app/src/main/assets/openings/names.tsv b/app/src/main/assets/openings/names.tsv new file mode 100644 index 0000000..82cf948 --- /dev/null +++ b/app/src/main/assets/openings/names.tsv @@ -0,0 +1,3815 @@ +A00 Amar Opening Nh3 +A00 Amar Opening: Paris Gambit Nh3 d5 g3 e5 f4 +A00 Amar Opening: Paris Gambit, Gent Gambit Nh3 d5 g3 e5 f4 Bxh3 Bxh3 exf4 O-O fxg3 hxg3 +A00 Amsterdam Attack e3 e5 c4 d6 Nc3 Nc6 b3 Nf6 +A00 Anderssen's Opening a3 +A00 Anderssen's Opening: Polish Gambit a3 a5 b4 +A00 Barnes Opening f3 +A00 Barnes Opening: Fool's Mate f3 e5 g4 Qh4 +A00 Barnes Opening: Gedult Gambit f3 d5 e4 g6 d4 dxe4 c3 +A00 Barnes Opening: Gedult Gambit f3 f5 e4 fxe4 Nc3 +A00 Barnes Opening: Hammerschlag f3 e5 Kf2 +A00 Clemenz Opening h3 +A00 Clemenz Opening: Spike Lee Gambit h3 h5 g4 +A00 Creepy Crawly Formation: Classical Defense h3 d5 a3 e5 +A00 Formation: Hippopotamus Attack a3 e5 b3 d5 c3 Nf6 d3 Nc6 e3 Bd6 f3 O-O g3 +A00 Formation: Shy Attack a3 e5 g3 d5 Bg2 Nf6 d3 Nc6 Nd2 Bd6 e3 O-O h3 +A00 Global Opening h3 e5 a3 +A00 Grob Opening g4 +A00 Grob Opening: Alessi Gambit g4 f5 +A00 Grob Opening: Double Grob g4 g5 +A00 Grob Opening: Double Grob, Coca-Cola Gambit g4 g5 f4 +A00 Grob Opening: Grob Gambit g4 d5 Bg2 +A00 Grob Opening: Grob Gambit Declined g4 d5 Bg2 c6 +A00 Grob Opening: Grob Gambit, Basman Gambit g4 d5 Bg2 h5 gxh5 +A00 Grob Opening: Grob Gambit, Fritz Gambit g4 d5 Bg2 Bxg4 c4 +A00 Grob Opening: Grob Gambit, Fritz Gambit, Romford Countergambit g4 d5 Bg2 Bxg4 c4 d4 Bxb7 Nd7 Bxa8 Qxa8 +A00 Grob Opening: Grob Gambit, Keres Gambit g4 d5 Bg2 e5 d4 exd4 c3 +A00 Grob Opening: Grob Gambit, Richter-Grob Gambit g4 d5 Bg2 c6 c4 dxc4 b3 +A00 Grob Opening: Keene Defense g4 d5 h3 e5 Bg2 c6 +A00 Grob Opening: Keene Defense, Main Line g4 d5 h3 e5 Bg2 c6 d4 e4 c4 Bd6 Nc3 Ne7 +A00 Grob Opening: London Defense g4 e5 h3 Nc6 +A00 Grob Opening: Romford Countergambit g4 d5 Bg2 Bxg4 c4 d4 +A00 Grob Opening: Spike Attack g4 d5 Bg2 c6 g5 +A00 Grob Opening: Spike, Hurst Attack g4 e5 Bg2 d5 c4 +A00 Grob Opening: Zilbermints Gambit g4 d5 e4 dxe4 Nc3 +A00 Grob Opening: Zilbermints Gambit, Schiller Defense g4 d5 e4 dxe4 Nc3 h5 +A00 Grob Opening: Zilbermints Gambit, Zilbermints-Hartlaub Gambit g4 d5 e4 dxe4 Nc3 e5 d3 +A00 Hungarian Opening g3 +A00 Hungarian Opening: Asten Gambit g3 Nc6 Nc3 d5 d4 e5 dxe5 d4 Ne4 f5 +A00 Hungarian Opening: Burk Gambit g3 e5 a3 d5 Nf3 e4 Nh4 Be7 d3 +A00 Hungarian Opening: Bücker Gambit g3 d5 Bg2 e5 b4 +A00 Hungarian Opening: Catalan Formation g3 d5 Bg2 e6 +A00 Hungarian Opening: Dutch Defense g3 f5 +A00 Hungarian Opening: Indian Defense g3 Nf6 +A00 Hungarian Opening: Myers Defense g3 g5 +A00 Hungarian Opening: Pachman Gambit g3 f5 e4 fxe4 Qh5 g6 +A00 Hungarian Opening: Paris Gambit g3 e5 Nh3 d5 f4 Bxh3 Bxh3 exf4 O-O +A00 Hungarian Opening: Reversed Alekhine g3 e5 Nf3 +A00 Hungarian Opening: Reversed Brooklyn Defense, Brooklyn Benko Gambit g3 e5 Nf3 e4 Ng1 Nf6 b4 +A00 Hungarian Opening: Reversed Modern Defense g3 d5 Bg2 c5 +A00 Hungarian Opening: Reversed Norwegian Defense g3 e5 Nf3 e4 Nh4 +A00 Hungarian Opening: Sicilian Invitation g3 c5 +A00 Hungarian Opening: Slav Formation g3 d5 Bg2 c6 +A00 Hungarian Opening: Symmetrical Variation g3 g6 +A00 Hungarian Opening: Van Kuijk Gambit g3 h5 Nf3 h4 +A00 Hungarian Opening: Winterberg Gambit g3 d5 Bg2 e5 c4 dxc4 b3 +A00 Kádas Opening h4 +A00 Kádas Opening: Beginner's Trap h4 d5 Rh3 +A00 Kádas Opening: Koola-Koola Variation h4 a5 +A00 Kádas Opening: Kádas Gambit h4 c5 b4 +A00 Kádas Opening: Kádas Gambit h4 d5 d4 c5 Nf3 cxd4 c3 +A00 Kádas Opening: Kádas Gambit h4 e5 d4 exd4 c3 +A00 Kádas Opening: Myers Variation h4 d5 d4 c5 e4 +A00 Kádas Opening: Schneider Gambit h4 g5 +A00 Kádas Opening: Steinbok Gambit h4 f5 e4 fxe4 d3 +A00 Lasker Simul Special g3 h5 +A00 Mieses Opening d3 +A00 Mieses Opening: Myers Spike Attack d3 g6 g4 +A00 Mieses Opening: Reversed Rat d3 e5 +A00 Mieses Opening: Venezolana Variation d3 c5 Nc3 Nc6 g3 +A00 Polish Opening b4 +A00 Polish Opening, with d5 b4 d5 +A00 Polish Opening, with d5 b4 d5 Bb2 Nf6 Nf3 +A00 Polish Opening: Baltic Defense b4 d5 Bb2 Bf5 +A00 Polish Opening: Birmingham Gambit b4 c5 +A00 Polish Opening: Bugayev Advance Variation b4 e5 Bb2 f6 b5 +A00 Polish Opening: Bugayev Attack b4 e5 a3 +A00 Polish Opening: Czech Defense b4 e5 Bb2 d6 +A00 Polish Opening: Dutch Defense b4 f5 +A00 Polish Opening: German Defense b4 d5 Bb2 Qd6 +A00 Polish Opening: Grigorian Variation b4 Nc6 +A00 Polish Opening: Karniewski Variation b4 Nh6 +A00 Polish Opening: King's Indian Variation b4 Nf6 Bb2 g6 +A00 Polish Opening: King's Indian Variation, Schiffler Attack b4 Nf6 Bb2 g6 e4 +A00 Polish Opening: King's Indian Variation, Sokolsky Attack b4 Nf6 Bb2 g6 c4 Bg7 e3 d6 Nf3 O-O d4 +A00 Polish Opening: Myers Variation b4 d5 Bb2 c6 a4 +A00 Polish Opening: Outflank Variation b4 c6 +A00 Polish Opening: Outflank Variation, Schuehler Gambit b4 c6 Bb2 a5 b5 +A00 Polish Opening: Queen's Indian Variation b4 e6 Bb2 Nf6 b5 b6 +A00 Polish Opening: Queenside Defense b4 e6 Bb2 Nf6 b5 a6 +A00 Polish Opening: Rooks Swap Line b4 e6 Bb2 Nf6 b5 a6 a4 axb5 axb5 Rxa1 Bxa1 +A00 Polish Opening: Schiffler-Sokolsky Variation b4 e6 Bb2 Nf6 b5 d5 e3 +A00 Polish Opening: Schuehler Gambit b4 c6 Bb2 a5 b5 cxb5 e4 +A00 Polish Opening: Symmetrical Variation b4 b5 +A00 Polish Opening: Tartakower Gambit b4 e5 Bb2 f6 e4 +A00 Polish Opening: Wolferts Gambit b4 e5 Bb2 c5 +A00 Saragossa Opening c3 +A00 Sodium Attack Na3 +A00 Sodium Attack: Celadon Variation Na3 e5 d3 Bxa3 bxa3 d5 e3 c5 Rb1 +A00 Sodium Attack: Chenoboskion Variation Na3 g6 g4 +A00 Sodium Attack: Durkin Gambit Na3 e5 Nc4 Nc6 e4 f5 +A00 Valencia Opening d3 e5 Nd2 +A00 Van Geet Opening Nc3 +A00 Van Geet Opening: Battambang Variation a3 e5 Nc3 +A00 Van Geet Opening: Billockus-Johansen Gambit Nc3 e5 Nf3 Bc5 +A00 Van Geet Opening: Damhaug Gambit Nc3 d5 f4 e5 +A00 Van Geet Opening: Dougherty Gambit Nc3 d5 e4 dxe4 f3 +A00 Van Geet Opening: Dunst-Perrenet Gambit Nc3 d5 e4 dxe4 d3 +A00 Van Geet Opening: Düsseldorf Gambit Nc3 c5 b4 +A00 Van Geet Opening: Gladbacher Gambit Nc3 e5 b3 d5 e4 dxe4 d3 +A00 Van Geet Opening: Hector Gambit Nc3 d5 e4 dxe4 Bc4 +A00 Van Geet Opening: Hergert Gambit Nc3 d6 f4 e5 fxe5 Nc6 +A00 Van Geet Opening: Hulsemann Gambit Nc3 e5 e3 d5 Qh5 Be6 +A00 Van Geet Opening: Jendrossek Gambit Nc3 d5 f4 d4 Ne4 f5 Nf2 Nf6 Nf3 c5 b4 +A00 Van Geet Opening: Kluever Gambit Nc3 f5 e4 fxe4 d3 +A00 Van Geet Opening: Laroche Gambit Nc3 b5 +A00 Van Geet Opening: Liebig Gambit Nc3 e5 e3 d5 Qh5 Nf6 +A00 Van Geet Opening: Melleby Gambit Nc3 d5 f4 d4 Ne4 c5 +A00 Van Geet Opening: Myers Attack Nc3 g6 h4 +A00 Van Geet Opening: Napoleon Attack Nc3 e5 Nf3 Nc6 d4 +A00 Van Geet Opening: Novosibirsk Variation Nc3 c5 d4 cxd4 Qxd4 Nc6 Qh4 +A00 Van Geet Opening: Nowokunski Gambit Nc3 e5 f4 exf4 e4 +A00 Van Geet Opening: Pfeiffer Gambit Nc3 d5 f4 d4 Ne4 e5 +A00 Van Geet Opening: Pfeiffer Gambit, Sleipnir Countergambit Nc3 d5 f4 d4 Ne4 e5 Nf3 +A00 Van Geet Opening: Reversed Nimzowitsch Nc3 e5 +A00 Van Geet Opening: Reversed Scandinavian Nc3 e5 d4 exd4 Qxd4 Nc6 Qa4 +A00 Van Geet Opening: Sicilian Two Knights Nc3 c5 Nf3 Nc6 d4 cxd4 Nxd4 +A00 Van Geet Opening: Sleipnir Gambit Nc3 d5 e3 e5 d4 Bb4 +A00 Van Geet Opening: Twyble Attack Nc3 c5 Rb1 +A00 Van Geet Opening: Tübingen Gambit Nc3 Nf6 g4 +A00 Van Geet Opening: Venezolana Variation Nc3 d5 d3 Nf6 g3 +A00 Van Geet Opening: Warsteiner Gambit Nc3 d5 f4 g5 +A00 Van't Kruijs Opening e3 +A00 Van't Kruijs Opening: Bouncing Bishop Variation e3 e5 Bc4 b5 Bb3 +A00 Van't Kruijs Opening: Keoni-Hiva Gambit, Akahi Variation e3 e5 Nc3 Nf6 f4 exf4 Nf3 +A00 Van't Kruijs Opening: Keoni-Hiva Gambit, Alua Variation e3 e5 Nc3 Nc6 f4 exf4 Nf3 +A00 Van't Kruijs Opening: Keoni-Hiva Gambit, Ekolu Variation e3 e5 Nc3 d5 f4 exf4 Nf3 +A00 Ware Opening a4 +A00 Ware Opening: Cologne Gambit a4 b6 d4 d5 Nc3 Nd7 +A00 Ware Opening: Crab Variation a4 e5 h4 +A00 Ware Opening: Meadow Hay Trap a4 e5 Ra3 +A00 Ware Opening: Symmetric Variation a4 a5 +A00 Ware Opening: Ware Gambit a4 e5 a5 d5 e3 f5 a6 +A00 Ware Opening: Wing Gambit a4 b5 axb5 Bb7 +A01 Nimzo-Larsen Attack b3 +A01 Nimzo-Larsen Attack: Classical Variation b3 d5 +A01 Nimzo-Larsen Attack: Dutch Variation b3 f5 +A01 Nimzo-Larsen Attack: English Variation b3 c5 +A01 Nimzo-Larsen Attack: Graz Attack b3 d5 Ba3 +A01 Nimzo-Larsen Attack: Indian Variation b3 Nf6 +A01 Nimzo-Larsen Attack: Modern Variation b3 e5 +A01 Nimzo-Larsen Attack: Modern Variation b3 e5 Bb2 Nc6 +A01 Nimzo-Larsen Attack: Modern Variation b3 e5 Bb2 Nc6 e3 +A01 Nimzo-Larsen Attack: Modern Variation b3 e5 Bb2 Nc6 c4 Nf6 +A01 Nimzo-Larsen Attack: Pachman Gambit b3 e5 Bb2 Nc6 f4 +A01 Nimzo-Larsen Attack: Polish Variation b3 b5 +A01 Nimzo-Larsen Attack: Ringelbach Gambit b3 f5 Bb2 e6 e4 +A01 Nimzo-Larsen Attack: Spike Variation b3 Nf6 Bb2 g6 g4 +A01 Nimzo-Larsen Attack: Symmetrical Variation b3 b6 +A02 Bird Opening f4 +A02 Bird Opening: Batavo-Polish Attack f4 Nf6 Nf3 g6 b4 +A02 Bird Opening: Double Duck Formation f4 f5 d4 d5 +A02 Bird Opening: From's Gambit f4 e5 +A02 Bird Opening: From's Gambit, Bahr Gambit f4 e5 Nc3 +A02 Bird Opening: From's Gambit, Langheld Gambit f4 e5 fxe5 d6 exd6 Nf6 +A02 Bird Opening: From's Gambit, Lasker Variation f4 e5 fxe5 d6 exd6 Bxd6 Nf3 g5 +A02 Bird Opening: From's Gambit, Lipke Variation f4 e5 fxe5 d6 exd6 Bxd6 Nf3 Nh6 d4 +A02 Bird Opening: Hobbs Gambit f4 g5 +A02 Bird Opening: Hobbs-Zilbermints Gambit f4 h6 Nf3 g5 +A02 Bird Opening: Horsefly Defense f4 Nh6 +A02 Bird Opening: Lasker Gambit f4 e5 fxe5 f6 +A02 Bird Opening: Mujannah f4 Nf6 c4 +A02 Bird Opening: Myers Defense f4 b5 +A02 Bird Opening: Platz Gambit f4 e5 fxe5 Ne7 +A02 Bird Opening: Schlechter Gambit f4 e5 fxe5 Nc6 +A02 Bird Opening: Siegener Gambit f4 e5 d4 exd4 Nf3 c5 c3 +A02 Bird Opening: Swiss Gambit f4 f5 e4 fxe4 Nc3 Nf6 g4 +A02 Bird Opening: Wagner-Zwitersch Gambit f4 f5 e4 +A03 Bird Opening: Dutch Variation f4 d5 +A03 Bird Opening: Dutch Variation, Dudweiler Gambit f4 d5 g4 +A03 Bird Opening: Lasker Variation f4 d5 Nf3 Nf6 e3 c5 +A03 Bird Opening: Sturm Gambit f4 d5 c4 +A03 Bird Opening: Thomas Gambit f4 d5 b3 Nf6 Bb2 d4 Nf3 c5 e3 +A03 Bird Opening: Williams Gambit f4 d5 e4 +A03 Bird Opening: Williams Gambit f4 d5 e4 dxe4 Nc3 Nf6 Qe2 +A03 Bird Opening: Williams-Zilbermints Gambit f4 d5 e4 dxe4 Nc3 Nf6 Nge2 +A04 Colle System: Rhamphorhynchus Variation Nf3 c5 e3 g6 d4 Bg7 dxc5 Qa5 +A04 Modern Defense: Semi-Averbakh Variation, Polish Variation Nf3 c5 c4 g6 d4 Bg7 e4 Qb6 +A04 Modern Defense: Semi-Averbakh Variation, Pterodactyl Variation Nf3 c5 c4 g6 d4 Bg7 e4 Qa5 +A04 Modern Defense: Semi-Averbakh Variation, Pterodactyl Variation Accepted Nf3 g6 d4 Bg7 e4 d6 c4 c5 dxc5 Qa5 +A04 Zukertort Defense: Kingside Variation Nf3 Nh6 d4 g6 +A04 Zukertort Defense: Sicilian Knight Variation Nf3 Na6 e4 c5 +A04 Zukertort Opening Nf3 +A04 Zukertort Opening: Arctic Defense Nf3 f6 +A04 Zukertort Opening: Arctic Defense, Drunken Knight Variation Nf3 f6 e4 Nh6 d4 Nf7 +A04 Zukertort Opening: Basman Defense Nf3 h6 +A04 Zukertort Opening: Black Mustang Defense Nf3 Nc6 +A04 Zukertort Opening: Drunken Cavalry Variation Nf3 Na6 e4 Nh6 +A04 Zukertort Opening: Dutch Variation Nf3 f5 +A04 Zukertort Opening: Herrstrom Gambit Nf3 g5 +A04 Zukertort Opening: Kingside Fianchetto Nf3 g6 +A04 Zukertort Opening: Lisitsyn Gambit Nf3 f5 e4 +A04 Zukertort Opening: Lisitsyn Gambit Deferred Nf3 f5 d3 Nf6 e4 +A04 Zukertort Opening: Pirc Invitation Nf3 d6 +A04 Zukertort Opening: Polish Defense Nf3 b5 +A04 Zukertort Opening: Queen's Gambit Invitation Nf3 e6 +A04 Zukertort Opening: Queenside Fianchetto Variation Nf3 b6 +A04 Zukertort Opening: Ross Gambit Nf3 e5 +A04 Zukertort Opening: Shabalov Gambit Nf3 e6 c4 a6 Nc3 c5 g3 b5 +A04 Zukertort Opening: Sicilian Invitation Nf3 c5 +A04 Zukertort Opening: Slav Invitation Nf3 c6 +A04 Zukertort Opening: Speelsmet Gambit Nf3 c5 d4 cxd4 e3 +A04 Zukertort Opening: St. George Defense Nf3 a6 +A04 Zukertort Opening: The Walrus Nf3 e5 Nxe5 Nc6 Nxc6 dxc6 +A04 Zukertort Opening: Vos Gambit Nf3 d6 d4 e5 +A04 Zukertort Opening: Wade Defense Nf3 d6 e4 Bg4 +A04 Zukertort Opening: Ware Defense Nf3 a5 +A05 King's Indian Attack Nf3 Nf6 g3 d5 +A05 King's Indian Attack: Smyslov Variation Nf3 Nf6 g3 g6 b4 +A05 King's Indian Attack: Spassky Variation Nf3 Nf6 g3 b5 +A05 King's Indian Attack: Symmetrical Defense Nf3 Nf6 g3 g6 +A05 King's Indian Attack: Wahls Defense Nf3 Nf6 g3 g6 Bg2 Bg7 O-O O-O d3 d5 +A05 Polish Opening: Zukertort System Nf3 Nf6 b4 g6 Bb2 +A05 Zukertort Opening Nf3 Nf6 +A05 Zukertort Opening Nf3 Nf6 Nc3 Nc6 +A05 Zukertort Opening: Double Fianchetto Attack Nf3 Nf6 g3 g6 b3 Bg7 Bb2 O-O Bg2 d6 O-O +A05 Zukertort Opening: Lemberger Gambit Nf3 Nf6 e4 +A05 Zukertort Opening: Myers Polish Attack Nf3 Nf6 a4 g6 b4 +A05 Zukertort Opening: Nimzo-Larsen Variation Nf3 Nf6 b3 +A05 Zukertort Opening: Quiet System Nf3 Nf6 e3 +A06 Nimzo-Larsen Attack: Classical Variation Nf3 d5 b3 +A06 Nimzo-Larsen Attack: Norfolk Gambit Nf3 d5 b3 c5 e4 +A06 Nimzo-Larsen Attack: Norfolk Gambit Nf3 d5 b3 Nf6 Bb2 c5 e4 +A06 Zukertort Opening Nf3 d5 +A06 Zukertort Opening: Ampel Variation Nf3 d5 Rg1 +A06 Zukertort Opening: Old Indian Attack Nf3 d5 d3 +A06 Zukertort Opening: Pachman Gambit Nf3 d5 e3 c5 c4 dxc4 b3 +A06 Zukertort Opening: Regina-Nu Gambit Nf3 d5 b3 c5 c4 dxc4 Nc3 +A06 Zukertort Opening: Reversed Mexican Defense Nf3 d5 Nc3 +A06 Zukertort Opening: Santasiere's Folly b4 d5 Nf3 +A06 Zukertort Opening: Tennison Gambit e4 d5 Nf3 +A06 Zukertort Opening: Tennison Gambit, Brigg's Trap e4 d5 Nf3 dxe4 Ng5 Nf6 Nc3 Bf5 Qe2 Qd4 +A06 Zukertort Opening: The Potato Nf3 d5 a4 +A07 Hungarian Opening: Wiedenhagen-Beta Gambit g3 d5 Nf3 g5 +A07 King's Indian Attack Nf3 d5 g3 +A07 King's Indian Attack, with Bf5 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 +A07 King's Indian Attack, with Bf5 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 d3 h6 +A07 King's Indian Attack, with Bf5 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 d3 h6 c4 dxc4 +A07 King's Indian Attack, with Bf5 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 d3 e6 Nbd2 +A07 King's Indian Attack, with Bf5 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 d3 e6 Nh4 +A07 King's Indian Attack, with e6 Nf3 Nf6 g3 d5 Bg2 e6 +A07 King's Indian Attack, with e6 Nf3 Nf6 g3 d5 Bg2 e6 O-O Be7 +A07 King's Indian Attack: Double Fianchetto Nf3 d5 g3 g6 +A07 King's Indian Attack: Keres Variation Nf3 d5 g3 Bg4 +A07 King's Indian Attack: Keres Variation Nf3 d5 g3 Bg4 Bg2 Nd7 +A07 King's Indian Attack: Keres Variation Nf3 d5 g3 c6 Bg2 Bg4 O-O Nd7 +A07 King's Indian Attack: Keres Variation Nf3 d5 g3 c6 Bg2 Bg4 O-O Nd7 d4 Ngf6 c4 e6 cxd5 exd5 Nc3 Bd6 +A07 King's Indian Attack: Omega-Delta Gambit Nf3 d5 g3 e5 +A07 King's Indian Attack: Pachman System Nf3 d5 g3 g6 Bg2 Bg7 O-O e5 d3 Ne7 +A07 King's Indian Attack: Sicilian Variation Nf3 d5 g3 c5 +A07 King's Indian Attack: Yugoslav Variation Nf3 Nf6 g3 d5 Bg2 c6 O-O Bg4 +A07 King's Indian Attack: Yugoslav Variation c4 e6 Nf3 d5 g3 Nf6 Bg2 b6 O-O +A08 King's Indian Attack: French Variation Nf3 d5 g3 c5 Bg2 Nc6 +A08 King's Indian Attack: Sicilian Variation e4 e6 d3 d5 Nd2 Nf6 Ngf3 c5 g3 Nc6 Bg2 Be7 O-O O-O Re1 +A08 King's Indian Attack: Sicilian Variation Nf3 d5 g3 c5 Bg2 +A08 King's Indian Attack: Sicilian Variation Nf3 d5 g3 c5 Bg2 Nf6 O-O e6 d3 +A08 Zukertort Opening: Reversed Grünfeld Nf3 d5 g3 c5 Bg2 Nc6 d4 +A08 Zukertort Opening: Reversed Grünfeld Nf3 d5 g3 c5 Bg2 Nc6 d4 Nf6 +A08 Zukertort Opening: Reversed Grünfeld Nf3 d5 g3 c5 Bg2 Nc6 d4 Nf6 O-O +A08 Zukertort Opening: Reversed Grünfeld Nf3 d5 g3 c5 Bg2 Nc6 d4 e6 O-O +A09 Réti Opening Nf3 d5 c4 +A09 Réti Opening: Advance Variation Nf3 d5 c4 d4 +A09 Réti Opening: Advance Variation, Michel Gambit Nf3 d5 c4 d4 b4 c5 +A09 Réti Opening: Advance Variation, Navara Gambit Nf3 d5 c4 d4 b4 g5 +A09 Réti Opening: Penguin Variation Nf3 d5 c4 d4 Rg1 +A09 Réti Opening: Reversed Blumenfeld Gambit Nf3 d5 c4 d4 e3 c5 b4 +A09 Réti Opening: Réti Accepted Nf3 d5 c4 dxc4 +A09 Réti Opening: Réti Gambit, Keres Variation Nf3 d5 c4 dxc4 e3 Be6 +A09 Réti Opening: Zilbermints Gambit Nf3 d5 c4 b5 +A10 English Opening c4 +A10 English Opening: Achilles-Omega Gambit c4 Nf6 e4 +A10 English Opening: Adorjan Defense c4 g6 e4 e5 +A10 English Opening: Anglo-Dutch Defense c4 f5 +A10 English Opening: Anglo-Dutch Defense, Hickmann Gambit c4 f5 e4 +A10 English Opening: Anglo-Dutch Variation, Chabanon Gambit c4 f5 Nf3 d6 e4 +A10 English Opening: Anglo-Dutch Variation, Ferenc Gambit c4 f5 Nc3 Nf6 e4 +A10 English Opening: Anglo-Lithuanian Variation c4 Nc6 +A10 English Opening: Anglo-Scandinavian Defense c4 d5 +A10 English Opening: Anglo-Scandinavian Defense, Löhn Gambit c4 d5 cxd5 e6 +A10 English Opening: Anglo-Scandinavian Defense, Malvinas Variation c4 d5 cxd5 Qxd5 Nc3 Qa5 +A10 English Opening: Anglo-Scandinavian Defense, Schulz Gambit c4 d5 cxd5 Nf6 +A10 English Opening: Great Snake Variation c4 g6 +A10 English Opening: Jaenisch Gambit c4 b5 +A10 English Opening: King's English Variation, Botvinnik System, Prickly Pawn Pass System c4 g6 Nc3 Bg7 g3 Nf6 Bg2 O-O e4 d6 Nge2 e5 O-O c6 d3 a6 +A10 English Opening: Myers Defense c4 g5 +A10 English Opening: Myers Gambit c4 g5 d4 Bg7 +A10 English Opening: Porcupine Variation c4 f5 Nc3 Nf6 e4 fxe4 g4 +A10 English Opening: Wade Gambit c4 f5 g4 +A10 English Opening: Zilbermints Gambit c4 g5 d4 e5 +A11 English Opening: Caro-Kann Defensive System c4 c6 +A11 Réti Opening: Anglo-Slav Variation, Gurevich System c4 c6 Nf3 d5 e3 +A11 Réti Opening: Anglo-Slav Variation, Gurevich System c4 c6 Nf3 d5 e3 Nf6 Qc2 +A11 Réti Opening: Anglo-Slav Variation, Gurevich System c4 c6 Nf3 d5 e3 Nf6 Nc3 Nbd7 Qc2 +A11 Réti Opening: Anglo-Slav Variation, Gurevich System c4 c6 Nf3 d5 e3 Nf6 Nc3 Nbd7 b3 e5 +A11 Réti Opening: Anglo-Slav Variation, Gurevich System c4 c6 Nf3 d5 e3 Nf6 Nc3 e6 b3 Bd6 +A11 Réti Opening: Anglo-Slav Variation, with g3 c4 c6 Nf3 d5 g3 Nf6 b3 g6 +A11 Réti Opening: Anglo-Slav Variation, with g3 c4 c6 Nf3 d5 g3 Nf6 Bg2 +A11 Réti Opening: Anglo-Slav Variation, with g3 c4 c6 Nf3 d5 g3 Nf6 Bg2 dxc4 +A11 Réti Opening: Anglo-Slav Variation, with g3 c4 c6 Nf3 d5 g3 Nf6 Bg2 Bf5 +A11 Réti Opening: Anglo-Slav Variation, with g3 c4 c6 Nf3 d5 g3 Nf6 Bg2 Bf5 O-O e6 d3 +A11 Réti Opening: Anglo-Slav Variation, with g3 Nf3 Nf6 g3 d5 Bg2 c6 O-O Bf5 d3 h6 c4 e6 +A12 Réti Opening: Anglo-Slav Variation c4 Nf6 g3 c6 Nf3 d5 b3 +A12 Réti Opening: Anglo-Slav Variation, Bled Variation Nf3 d5 b3 Nf6 Bb2 g6 c4 c6 +A12 Réti Opening: Anglo-Slav Variation, Bogoljubow Variation Nf3 d5 c4 c6 b3 +A12 Réti Opening: Anglo-Slav Variation, Bogoljubow Variation Nf3 d5 c4 c6 b3 Bg4 +A12 Réti Opening: Anglo-Slav Variation, Bogoljubow Variation Nf3 d5 c4 c6 b3 Bf5 +A12 Réti Opening: Anglo-Slav Variation, Bogoljubow Variation Nf3 d5 c4 c6 b3 Bf5 Bb2 +A12 Réti Opening: Anglo-Slav Variation, Capablanca Variation c4 Nf6 Nf3 c6 b3 d5 Bb2 Bg4 +A12 Réti Opening: Anglo-Slav Variation, Capablanca Variation c4 Nf6 Nf3 c6 b3 d5 Bb2 Bg4 e3 +A12 Réti Opening: Anglo-Slav Variation, Capablanca Variation c4 Nf6 Nf3 c6 b3 d5 Bb2 Bg4 d3 +A12 Réti Opening: Anglo-Slav Variation, London Defensive System c4 Nf6 g3 c6 Nf3 d5 b3 Bf5 +A12 Réti Opening: Anglo-Slav Variation, London Defensive System c4 Nf6 g3 c6 Nf3 d5 b3 Bf5 Bg2 +A12 Réti Opening: Anglo-Slav Variation, London Defensive System c4 Nf6 g3 c6 Nf3 d5 b3 Bf5 Bg2 e6 Bb2 +A12 Réti Opening: Anglo-Slav Variation, London Defensive System c4 Nf6 g3 c6 Nf3 d5 b3 Bf5 Bb2 +A12 Réti Opening: Anglo-Slav Variation, New York System Nf3 Nf6 c4 c6 b3 d5 Bb2 Bf5 +A12 Réti Opening: Anglo-Slav Variation, New York System Nf3 Nf6 c4 c6 b3 d5 Bb2 Bf5 e3 +A12 Réti Opening: Anglo-Slav Variation, New York System Nf3 Nf6 c4 c6 b3 d5 Bb2 Bf5 d3 +A12 Réti Opening: Anglo-Slav Variation, Torre System c4 Nf6 g3 c6 Nf3 d5 b3 Bg4 +A12 Réti Opening: Anglo-Slav Variation, Torre System c4 Nf6 g3 c6 Nf3 d5 b3 Bg4 Bg2 +A12 Réti Opening: Anglo-Slav Variation, Torre System c4 Nf6 g3 c6 Nf3 d5 b3 Bg4 Bg2 e6 Bb2 +A12 Réti Opening: Anglo-Slav Variation, Torre System c4 Nf6 g3 c6 Nf3 d5 b3 Bg4 Bb2 +A12 Réti Opening: Anglo-Slav Variation, with dxc4 c4 Nf6 g3 c6 Nf3 d5 b3 dxc4 +A13 English Opening: Agincourt Defense c4 e6 +A13 English Opening: Agincourt Defense c4 e6 Nf3 +A13 English Opening: Agincourt Defense c4 e6 Nf3 d5 +A13 English Opening: Agincourt Defense c4 e6 Nf3 d5 b3 Nf6 Bb2 Be7 e3 O-O +A13 English Opening: Agincourt Defense c4 e6 Nf3 d5 b3 Nf6 Bb2 Be7 e3 O-O d4 +A13 English Opening: Agincourt Defense, Bogoljubow Defense c4 e6 Nf3 d5 g3 Nf6 Bg2 Bd6 +A13 English Opening: Agincourt Defense, Catalan Defense c4 e6 Nf3 d5 g3 b6 Bg2 Bb7 O-O +A13 English Opening: Agincourt Defense, Catalan Defense c4 e6 Nf3 d5 g3 c5 +A13 English Opening: Agincourt Defense, Catalan Defense Accepted c4 e6 Nf3 Nf6 g3 d5 Bg2 dxc4 +A13 English Opening: Agincourt Defense, Catalan Defense, Semi-Slav Defense c4 e6 Nf3 Nf6 g3 d5 Bg2 c6 +A13 English Opening: Agincourt Defense, Kurajica Defense c4 e6 Nf3 d5 g3 c6 +A13 English Opening: Agincourt Defense, Tarrasch Defense c4 e6 Nf3 d5 g3 Nf6 Bg2 c5 b3 Nc6 O-O Be7 +A13 English Opening: Agincourt Defense, Wimpy System c4 e6 Nf3 Nf6 b3 d5 Bb2 c5 e3 +A13 English Opening: Neo-Catalan c4 e6 Nf3 d5 g3 Nf6 +A13 English Opening: Neo-Catalan Declined c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 +A13 English Opening: Romanishin Gambit c4 Nf6 Nf3 e6 g3 a6 Bg2 b5 +A14 English Opening: Agincourt Defense, Keres Defense c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 O-O c5 cxd5 Nxd5 Nc3 Nc6 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 O-O +A14 English Opening: Agincourt Defense, Neo-Catalan Declined c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 O-O O-O b3 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined Nf3 d5 g3 Nf6 Bg2 e6 O-O Be7 c4 O-O b3 c5 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined Nf3 d5 g3 Nf6 Bg2 e6 O-O Be7 c4 O-O b3 c5 e3 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined Nf3 d5 g3 Nf6 Bg2 e6 O-O Be7 c4 O-O b3 c5 e3 d4 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined Nf3 d5 g3 Nf6 Bg2 e6 O-O Be7 c4 O-O b3 c5 e3 Nc6 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined, Early b3 c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 b3 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined, Early b3 c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 b3 b6 +A14 English Opening: Agincourt Defense, Neo-Catalan Declined, Early b3 c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 b3 c5 +A14 Réti Opening: Anglo-Slav Variation Nf3 d5 c4 c6 g3 Nf6 Bg2 e6 b3 Be7 Bb2 +A14 Réti Opening: Anglo-Slav Variation, Bogoljubow Variation, Stonewall Line Nf3 d5 c4 e6 g3 Nf6 Bg2 Be7 O-O O-O b3 c6 Bb2 +A15 English Opening: Anglo-Indian Defense c4 Nf6 +A15 English Opening: Anglo-Indian Defense, Anti-Anti-Grünfeld c4 Nf6 Nc3 g6 Nf3 Bg7 e4 +A15 English Opening: Anglo-Indian Defense, Grünfeld Formation c4 Nf6 Nf3 g6 g3 d5 +A15 English Opening: Anglo-Indian Defense, King's Indian Formation c4 Nf6 Nf3 g6 +A15 English Opening: Anglo-Indian Defense, King's Indian Formation, Double Fianchetto c4 Nf6 Nf3 g6 g3 b6 Bg2 Bb7 +A15 English Opening: Anglo-Indian Defense, King's Knight Variation c4 Nf6 Nf3 +A15 English Opening: Anglo-Indian Defense, Old Indian Formation c4 Nf6 Nf3 d6 +A15 English Opening: Anglo-Indian Defense, Queen's Indian Formation c4 Nf6 Nf3 b6 +A15 English Opening: Anglo-Indian Defense, Queen's Indian Formation c4 e6 Nf3 Nf6 g3 b6 Bg2 Bb7 +A15 English Opening: Anglo-Indian Defense, Romanishin Variation c4 e6 Nf3 Nf6 g3 a6 +A15 English Opening: Anglo-Indian Defense, Scandinavian Defense c4 Nf6 Nf3 d5 +A15 English Opening: Anglo-Indian Defense, Scandinavian Defense, Exchange Variation c4 Nf6 Nf3 d5 cxd5 Nxd5 +A15 English Opening: Anglo-Indian Defense, Slav Formation c4 Nf6 Nf3 g6 g3 c6 +A15 English Orangutan c4 Nf6 b4 +A15 English Orangutan c4 Nf6 Nf3 g6 b4 +A16 English Opening: Anglo-Grünfeld Defense c4 Nf6 Nc3 d5 +A16 English Opening: Anglo-Grünfeld Defense, Korchnoi Variation c4 Nf6 Nc3 d5 cxd5 Nxd5 Nf3 g6 g3 Bg7 Bg2 e5 +A16 English Opening: Anglo-Indian Defense, Anglo-Grünfeld Variation c4 Nf6 Nc3 d5 cxd5 Nxd5 Nf3 +A16 English Opening: Anglo-Indian Defense, Anglo-Grünfeld Variation c4 Nf6 Nc3 d5 cxd5 Nxd5 Nf3 g6 +A16 English Opening: Anglo-Indian Defense, Anglo-Grünfeld Variation c4 Nf6 Nc3 d5 cxd5 Nxd5 g3 g6 Bg2 Nb6 +A16 English Opening: Anglo-Indian Defense, Anglo-Grünfeld Variation c4 Nf6 Nc3 d5 cxd5 Nxd5 g3 g6 Bg2 Nxc3 +A16 English Opening: Anglo-Indian Defense, Queen's Knight Variation c4 Nf6 Nc3 +A17 English Opening: Anglo-Indian Defense c4 Nf6 Nc3 d5 cxd5 Nxd5 Nf3 c5 e3 e6 +A17 English Opening: Anglo-Indian Defense, Hedgehog System c4 Nf6 Nc3 e6 +A17 English Opening: Anglo-Indian Defense, Nimzo-English c4 Nf6 Nc3 e6 Nf3 Bb4 +A17 English Opening: Anglo-Indian Defense, Queen's Indian Formation c4 e6 Nc3 Nf6 Nf3 b6 +A17 English Opening: Anglo-Indian Defense, Queen's Indian Variation c4 e6 Nc3 Nf6 Nf3 b6 e4 Bb7 Bd3 +A17 English Opening: Anglo-Indian Defense, Zvjaginsev-Krasenkow Attack c4 e6 Nc3 Nf6 Nf3 Bb4 g4 +A18 English Opening: Mikenas-Carls Variation c4 e6 Nc3 Nf6 e4 +A18 English Opening: Mikenas-Carls Variation c4 e6 Nc3 Nf6 e4 Nc6 +A18 English Opening: Mikenas-Carls Variation c4 e6 Nc3 Nf6 e4 d5 e5 +A19 English Opening: Anglo-Indian Defense, Flohr-Mikenas-Carls Variation, Nei Gambit c4 e6 Nc3 Nf6 e4 c5 e5 Ng8 +A19 English Opening: Mikenas-Carls, Sicilian c4 e6 Nc3 Nf6 e4 c5 +A20 English Opening: Drill Variation c4 e5 g3 h5 +A20 English Opening: King's English Variation c4 e5 +A20 English Opening: King's English Variation, Kahiko-Hula Gambit c4 e5 e3 Nf6 f4 exf4 Nf3 +A20 English Opening: King's English Variation, Nimzowitsch Variation c4 e5 Nf3 +A20 English Opening: King's English Variation, Nimzowitsch-Flohr Variation c4 e5 Nf3 e4 +A21 English Opening: King's English Variation c4 e5 Nc3 d6 Nf3 +A21 English Opening: King's English Variation, Keres Defense c4 e5 Nc3 d6 g3 c6 +A21 English Opening: King's English Variation, Kramnik-Shirov Counterattack c4 e5 Nc3 Bb4 +A21 English Opening: King's English Variation, Reversed Sicilian c4 e5 Nc3 +A21 English Opening: King's English Variation, Smyslov Defense c4 e5 Nc3 d6 Nf3 Bg4 +A21 English Opening: King's English Variation, Troger Defense c4 e5 Nc3 Nc6 g3 d6 Bg2 Be6 +A22 English Opening: Carls-Bremen System c4 e5 Nc3 Nf6 g3 +A22 English Opening: King's English Variation, Adhiban Gambit c4 e5 Nc3 Nf6 Nf3 e4 Ng5 c6 +A22 English Opening: King's English Variation, Bellon Gambit c4 e5 Nc3 Nf6 Nf3 e4 Ng5 b5 +A22 English Opening: King's English Variation, Two Knights Variation c4 e5 Nc3 Nf6 +A22 English Opening: King's English Variation, Two Knights Variation, Reversed Dragon c4 e5 Nc3 Nf6 g3 d5 +A22 English Opening: King's English Variation, Two Knights Variation, Smyslov System c4 e5 Nc3 Nf6 g3 Bb4 +A22 English Opening: King's English, Erbenheimer Gambit c4 e5 Nc3 Nf6 Nf3 e4 Ng5 Ng4 +A22 English Opening: King's English, Mazedonisch c4 e5 Nc3 Nf6 f4 +A23 English Opening: King's English Variation, Two Knights Variation, Keres Variation c4 e5 Nc3 Nf6 g3 c6 +A23 English Opening: King's English Variation, Two Knights Variation, Keres Variation c4 e5 Nc3 Nf6 g3 Bc5 Bg2 c6 +A24 English Opening: King's English Variation, Two Knights Variation, Fianchetto Line c4 e5 Nc3 Nf6 g3 g6 +A25 English Opening: Closed, Taimanov Variation c4 e5 Nc3 Nc6 g3 g6 Rb1 Nh6 Bg2 Bg7 +A25 English Opening: Closed, Taimanov Variation c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 e3 d6 Nge2 Nh6 +A25 English Opening: King's English Variation, Bremen-Hort Variation c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 e3 d6 Nge2 Be6 +A25 English Opening: King's English Variation, Closed System c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 +A25 English Opening: King's English Variation, Hungarian Attack c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 Rb1 +A25 English Opening: King's English Variation, Reversed Closed Sicilian c4 e5 Nc3 Nc6 +A25 English Opening: King's English Variation, Reversed Closed Sicilian c4 e5 g3 Nf6 Bg2 Nc6 Nc3 Bb4 Nd5 +A25 English Opening: King's English Variation, Reversed Closed Sicilian c4 e5 g3 Nf6 Bg2 Nc6 Nc3 Bb4 e4 d6 Nge2 +A25 English Opening: King's English Variation, Reversed Closed Sicilian c4 e5 g3 Nf6 Bg2 Nc6 Nc3 Bb4 e4 d6 Nge2 Bg4 +A25 English Opening: King's English Variation, Reversed Closed Sicilian c4 e5 Nc3 Nf6 g3 Bb4 e4 O-O Nge2 Nc6 Bg2 +A25 English Opening: King's English Variation, Taimanov Variation c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 +A26 English Opening: King's English Variation, Botvinnik System c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 e4 +A26 English Opening: King's English Variation, Closed System, Full Symmetry c4 e5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 +A27 English Opening: King's English Variation, Three Knights System c4 e5 Nc3 Nc6 Nf3 +A28 English Opening: Four Knights System, Nimzowitsch Variation c4 e5 Nc3 Nf6 Nf3 Nc6 e4 +A28 English Opening: King's English Variation, Four Knights Variation c4 e5 Nc3 Nf6 Nf3 Nc6 +A28 English Opening: King's English Variation, Four Knights Variation c4 e5 Nc3 Nf6 Nf3 Nc6 d4 exd4 Nxd4 Bb4 Bg5 h6 Bh4 Bxc3 bxc3 Ne5 +A28 English Opening: King's English Variation, Four Knights Variation, Bradley Beach Variation c4 e5 Nc3 Nf6 Nf3 Nc6 d4 e4 +A28 English Opening: King's English Variation, Four Knights Variation, Flexible Line c4 e5 Nc3 Nf6 Nf3 Nc6 d3 +A28 English Opening: King's English Variation, Four Knights Variation, Korchnoi Line c4 e5 Nc3 Nf6 Nf3 Nc6 a3 +A28 English Opening: King's English Variation, Four Knights Variation, Quiet Line c4 e5 Nc3 Nf6 Nf3 Nc6 e3 +A28 English Opening: King's English Variation, Four Knights Variation, Quiet Line c4 e5 Nc3 Nf6 Nf3 Nc6 e3 Bb4 Qc2 Bxc3 +A28 English Opening: King's English Variation, Four Knights Variation, Quiet Line c4 e5 Nc3 Nf6 Nf3 Nc6 e3 Bb4 Qc2 O-O Nd5 Re8 Qf5 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 Nc3 Nf6 Nf3 Nc6 g3 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bb4 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bb4 Bg2 Bxc3 dxc3 d6 O-O O-O +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 g3 Nf6 Bg2 d5 cxd5 Nxd5 Nf3 Nc6 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 g3 Nf6 Bg2 d5 cxd5 Nxd5 Nf3 Nc6 d3 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line c4 e5 g3 Nf6 Bg2 d5 cxd5 Nxd5 Nf3 Nc6 d3 Be7 O-O O-O +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, Delayed .. Nc6 c4 e5 Nc3 Nf6 g3 Bb4 Bg2 O-O Nf3 Re8 O-O e4 Nd4 Nc6 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with .. d6 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bc5 d3 d6 Bg2 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with .. d6 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bc5 d3 d6 Bg2 O-O O-O +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with .. d6, Be7 c4 e5 Nc3 Nf6 g3 Nc6 Bg2 d6 d3 Be7 Nf3 O-O +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with .. d6, a6 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bc5 d3 d6 Bg2 a6 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with .. d6, h6 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 Bc5 d3 d6 Bg2 h6 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with Bc5 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 d5 cxd5 Nxd5 Bg2 Bc5 +A29 English Opening: King's English Variation, Four Knights Variation, Fianchetto Line, with Nb6 c4 e5 Nc3 Nf6 Nf3 Nc6 g3 d5 cxd5 Nxd5 Bg2 Nb6 +A30 English Opening: Symmetrical Variation c4 c5 +A30 English Opening: Symmetrical Variation c4 c5 Nf3 +A30 English Opening: Symmetrical Variation, Hedgehog Defense c4 e6 Nf3 Nf6 Nc3 c5 g3 b6 Bg2 Bb7 O-O Be7 +A30 English Opening: Symmetrical Variation, Napolitano Gambit c4 c5 Nf3 Nf6 b4 +A30 English Opening: Symmetrical, Hedgehog, Flexible Formation c4 e6 Nf3 c5 Nc3 Nf6 g3 b6 Bg2 Bb7 O-O Be7 d4 cxd4 Qxd4 d6 Rd1 a6 b3 Nbd7 +A30 English Opening: Wing Gambit c4 c5 b4 +A31 English Opening: Symmetrical Variation, Anti-Benoni Variation c4 Nf6 d4 c5 Nf3 +A32 English Opening: Symmetrical Variation, Anti-Benoni Variation, Spielmann Defense c4 e6 d4 c5 Nf3 cxd4 Nxd4 Nf6 +A33 English Opening: Symmetrical Variation, Anti-Benoni Variation, Geller Variation c4 e6 Nf3 Nf6 Nc3 c5 d4 Nc6 g3 cxd4 Nxd4 Qb6 +A33 English Opening: Symmetrical Variation, Anti-Benoni Variation, Spielmann Defense c4 e6 Nf3 Nf6 Nc3 c5 d4 cxd4 Nxd4 Nc6 +A34 English Opening: Symmetrical Variation c4 c5 Nf3 Nf6 Nc3 Nc6 g3 d5 d4 cxd4 +A34 English Opening: Symmetrical Variation, Fianchetto Variation c4 Nf6 Nc3 c5 g3 +A34 English Opening: Symmetrical Variation, Normal Variation c4 c5 Nc3 +A34 English Opening: Symmetrical Variation, Rubinstein Variation c4 Nf6 Nc3 c5 g3 d5 cxd5 Nxd5 Bg2 Nc7 +A34 English Opening: Symmetrical Variation, Rubinstein Variation c4 c5 Nf3 Nf6 Nc3 d5 cxd5 Nxd5 g3 Nc6 Bg2 Nc7 +A34 English Opening: Symmetrical Variation, Three Knights Variation c4 c5 Nc3 Nf6 Nf3 +A35 English Opening: Symmetrical Variation c4 c5 Nc3 Nf6 Nf3 e5 +A35 English Opening: Symmetrical Variation, Four Knights Variation c4 c5 Nf3 Nf6 Nc3 Nc6 +A35 English Opening: Symmetrical Variation, Four Knights Variation, Keres-Parma System c4 c5 Nf3 Nf6 Nc3 Nc6 g3 e6 +A35 English Opening: Symmetrical Variation, Two Knights Variation c4 c5 Nc3 Nc6 +A36 English Opening: Symmetrical Variation, Botvinnik System c4 c5 e4 Nc6 Nc3 g6 g3 Bg7 Bg2 +A36 English Opening: Symmetrical Variation, Botvinnik System Reversed, with e3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 e3 e5 +A36 English Opening: Symmetrical Variation, Two Knights, Fianchetto Variation c4 c5 Nc3 Nc6 g3 +A36 English Opening: Symmetrical Variation, Ultra-Symmetrical Variation c4 c5 g3 g6 Bg2 Bg7 Nc3 Nc6 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 O-O d6 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 O-O Nge7 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 O-O Nge7 a3 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 O-O Nge7 d3 +A37 English Opening: Symmetrical Variation, Botvinnik System Reversed, with Nf3 c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 e5 O-O Nge7 d3 d6 +A37 English Opening: Symmetrical Variation, Three Knights, Fianchetto Variation c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 +A37 English Opening: Symmetrical Variation, Three Knights, Fianchetto Variation c4 c5 Nf3 Nc6 g3 g6 Bg2 Bg7 O-O d6 Nc3 +A37 English Opening: Symmetrical Variation, Three Knights, Fianchetto Variation c4 c5 Nf3 Nc6 g3 g6 Bg2 Bg7 O-O e6 Nc3 +A38 English Opening: Symmetrical Variation, Double Fianchetto c4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 Nf3 Nf6 O-O O-O b3 +A38 English Opening: Symmetrical Variation, Duchamp Variation c4 Nf6 Nf3 g6 g3 Bg7 Bg2 O-O O-O c5 Nc3 Nc6 d3 +A38 English Opening: Symmetrical Variation, Full Symmetry Line c4 Nf6 Nf3 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 +A39 English Opening: Symmetrical Variation, Mecking Variation c4 Nf6 Nf3 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 O-O O-O d4 +A40 Australian Defense d4 Na6 +A40 Benoni Defense: Franco-Sicilian Hybrid d4 e6 c4 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 Nf3 Ne7 +A40 Borg Defense: Borg Gambit d4 g5 +A40 Colle System: Pterodactyl Variation d4 g6 Nf3 Bg7 e3 c5 Bd3 Qa5 +A40 Colle System: Siroccopteryx Variation d4 g6 Nf3 Bg7 e3 c5 Bd3 cxd4 Nxd4 Qa5 +A40 English Defense d4 b6 +A40 English Defense d4 e6 c4 b6 +A40 English Defense: Eastbourne Gambit d4 b6 c4 Bb7 Nc3 e5 +A40 English Defense: Hartlaub Gambit Accepted c4 e6 d4 b6 Nc3 Bb7 e4 f5 exf5 Nf6 +A40 English Defense: Hartlaub Gambit Declined c4 e6 d4 b6 Nc3 Bb7 e4 f5 d5 +A40 English Defense: Perrin Variation d4 e6 c4 b6 e4 Bb7 Bd3 Nc6 +A40 English Defense: Poli Gambit d4 e6 c4 b6 e4 Bb7 f3 f5 exf5 Nh6 +A40 Englund Gambit d4 e5 +A40 Englund Gambit Declined d4 e5 d5 +A40 Englund Gambit Declined: Diemer Counterattack d4 e5 d5 Bc5 e4 Qh4 +A40 Englund Gambit Declined: Reversed Alekhine d4 e5 Nf3 +A40 Englund Gambit Declined: Reversed Brooklyn d4 e5 Nf3 e4 Ng1 +A40 Englund Gambit Declined: Reversed French d4 e5 e3 +A40 Englund Gambit Declined: Reversed Krebs d4 e5 Nf3 e4 +A40 Englund Gambit Declined: Reversed Mokele Mbembe d4 e5 Nf3 e4 Ne5 +A40 Englund Gambit: Felbecker Gambit d4 e5 dxe5 Nc6 Nf3 Bc5 +A40 Englund Gambit: Hartlaub-Charlick Gambit d4 e5 dxe5 d6 +A40 Englund Gambit: Main Line d4 e5 dxe5 Nc6 Nf3 Qe7 +A40 Englund Gambit: Mosquito Gambit d4 e5 dxe5 Qh4 +A40 Englund Gambit: Soller Gambit d4 e5 dxe5 f6 +A40 Englund Gambit: Soller Gambit Deferred d4 e5 dxe5 Nc6 Nf3 f6 +A40 Englund Gambit: Stockholm Variation d4 e5 dxe5 Nc6 Nf3 Qe7 Qd5 +A40 Englund Gambit: Zilbermints Gambit d4 e5 dxe5 Nc6 Nf3 Nge7 +A40 Horwitz Defense d4 e6 +A40 Horwitz Defense: Zilbermints Gambit d4 e6 c4 e5 +A40 Kangaroo Defense d4 e6 c4 Bb4 +A40 Kangaroo Defense: Keres Defense, Transpositional Variation d4 e6 c4 Bb4 Nc3 +A40 Mikenas Defense d4 Nc6 +A40 Mikenas Defense: Cannstatter Variation d4 Nc6 c4 e5 d5 Nd4 +A40 Mikenas Defense: Lithuanian Variation d4 Nc6 c4 e5 d5 Nce7 +A40 Mikenas Defense: Pozarek Gambit d4 Nc6 c4 e5 dxe5 Nxe5 Nc3 Nxc4 +A40 Modern Defense: Beefeater Variation d4 g6 c4 Bg7 Nc3 c5 d5 Bxc3 bxc3 f5 +A40 Modern Defense: Lizard Defense, Pirc-Diemer Gambit d4 g6 h4 Nf6 h5 +A40 Montevideo Defense d4 Nc6 d5 Nb8 +A40 Polish Defense d4 b5 +A40 Polish Defense: Spassky Gambit Accepted d4 b5 e4 Bb7 Bxb5 +A40 Pterodactyl Defense: Central, Benoni Beefeater Pterodactyl d4 g6 c4 Bg7 Nc3 c5 d5 d6 e4 Bxc3 bxc3 Qa5 +A40 Pterodactyl Defense: Central, Benoni Pterodactyl d4 g6 c4 Bg7 e4 c5 d5 Qa5 +A40 Pterodactyl Defense: Fianchetto, Queen Benoni Pterodactyl d4 g6 c4 Bg7 Nc3 c5 d5 Qa5 +A40 Pterodactyl Defense: Fianchetto, Queen Pteranodon d4 g6 c4 Bg7 Nc3 c5 d5 Bxc3 bxc3 Qa5 +A40 Pterodactyl Defense: Fianchetto, Queen Pterodactyl d4 g6 Nf3 Bg7 g3 c5 Bg2 Qa5 +A40 Pterodactyl Defense: Queen Pterodactyl, Quiet Line d4 g6 c4 Bg7 Nc3 c5 e3 +A40 Queen's Pawn Game d4 +A40 Queen's Pawn Game: Anglo-Slav Opening d4 c6 c4 d6 +A40 Queen's Pawn Game: Modern Defense d4 g6 +A40 Slav Indian: Kudischewitsch Gambit d4 c6 Nf3 Nf6 c4 b5 +A40 Zaire Defense d4 Nc6 d5 Nb8 e4 Nf6 e5 Ng8 +A41 Modern Defense d4 g6 c4 Bg7 Nc3 d6 +A41 Modern Defense: Neo-Modern Defense d4 g6 c4 Bg7 e4 e5 +A41 Old Indian Defense d4 d6 c4 +A41 Queen's Pawn Game d4 d6 +A41 Queen's Pawn Game: Rossolimo Variation d4 d6 Nf3 g6 +A41 Rat Defense: English Rat d4 d6 c4 e5 +A41 Rat Defense: English Rat, Lisbon Gambit d4 d6 c4 e5 dxe5 Nc6 +A41 Rat Defense: English Rat, Pounds Gambit d4 d6 c4 e5 dxe5 Be6 +A41 Robatsch Defense: Rossolimo Variation d4 d6 Nf3 g6 c4 Bg7 e4 Bg4 +A41 Wade Defense d4 d6 Nf3 Bg4 +A41 Zukertort Opening: Wade Defense, Chigorin Plan d4 d6 Nf3 Bg4 c4 Nd7 Qb3 Rb8 +A42 Modern Defense: Averbakh System d4 g6 c4 Bg7 Nc3 d6 e4 +A42 Modern Defense: Averbakh Variation, Pseudo-Sämisch d4 g6 c4 Bg7 e4 d6 Be3 Nf6 f3 +A42 Modern Defense: Kotov Variation d4 g6 c4 Bg7 Nc3 d6 e4 Nc6 +A42 Modern Defense: Randspringer Variation d4 g6 c4 Bg7 Nc3 d6 e4 f5 +A42 Pterodactyl Defense Nf3 c5 c4 g6 d4 Bg7 e4 Qa5 Nc3 d6 +A42 Pterodactyl Defense: Central, Bogolubovia d4 g6 c4 Bg7 e4 d6 Nc3 c5 Nge2 Qa5 +A43 Benoni Defense: Benoni Gambit Accepted d4 c5 dxc5 +A43 Benoni Defense: Benoni Gambit, Schlenker Defense d4 c5 dxc5 Na6 +A43 Benoni Defense: Benoni-Indian Defense d4 c5 d5 Nf6 +A43 Benoni Defense: Benoni-Indian Defense, Kingside Move Order d4 c5 d5 Nf6 Nf3 +A43 Benoni Defense: Benoni-Staunton Gambit d4 c5 d5 f5 e4 +A43 Benoni Defense: Cormorant Gambit d4 c5 dxc5 b6 +A43 Benoni Defense: French Benoni e4 e6 d4 c5 d5 +A43 Benoni Defense: Hawk Variation d4 Nf6 Nf3 c5 d5 c4 +A43 Benoni Defense: Old Benoni d4 c5 +A43 Benoni Defense: Old Benoni d4 c5 d5 +A43 Benoni Defense: Old Benoni d4 c5 d5 d6 +A43 Benoni Defense: Old Benoni, Mujannah Formation d4 c5 d5 f5 +A43 Benoni Defense: Old Benoni, Schmid Variation d4 c5 d5 d6 Nc3 g6 +A43 Benoni Defense: Snail Variation d4 c5 d5 Na6 +A43 Benoni Defense: Woozle d4 c5 d5 Nf6 Nc3 Qa5 +A43 Benoni Defense: Zilbermints-Benoni Gambit d4 c5 b4 +A43 Benoni Defense: Zilbermints-Benoni Gambit d4 c5 Nf3 cxd4 b4 +A43 Benoni Defense: Zilbermints-Benoni Gambit, Tamarkin Countergambit d4 c5 Nf3 cxd4 b4 e5 +A43 Indian Defense: Pseudo-Benko d4 Nf6 Nf3 c5 d5 b5 +A43 Queen's Pawn Game: Liedmann Gambit d4 c5 c4 cxd4 e3 +A44 Benoni Defense: Old Benoni d4 c5 d5 e5 +A44 Benoni Defense: Semi-Benoni d4 c5 d5 e5 e4 d6 +A45 Amazon Attack: Siberian Attack d4 Nf6 Nc3 d5 Qd3 +A45 Basque Opening d4 Nf6 b3 +A45 Canard Opening d4 Nf6 f4 +A45 Indian Defense d4 Nf6 +A45 Indian Defense: Accelerated London System d4 Nf6 Bf4 +A45 Indian Defense: Gedult Attack d4 Nf6 f3 d5 g4 +A45 Indian Defense: Gibbins-Weidenhagen Gambit d4 Nf6 g4 +A45 Indian Defense: Gibbins-Weidenhagen Gambit Accepted d4 Nf6 g4 Nxg4 +A45 Indian Defense: Gibbins-Weidenhagen Gambit, Maltese Falcon d4 Nf6 g4 Nxg4 f3 Nf6 e4 +A45 Indian Defense: Gibbins-Weidenhagen Gambit, Oshima Defense d4 Nf6 g4 e5 +A45 Indian Defense: Gibbins-Weidenhagen Gambit, Stummer Gambit d4 Nf6 g4 Nxg4 e4 d6 Be2 Nf6 Nc3 +A45 Indian Defense: Lazard Gambit d4 Nf6 Nd2 e5 +A45 Indian Defense: Maddigan Gambit d4 Nf6 Nc3 e5 +A45 Indian Defense: Omega Gambit d4 Nf6 e4 +A45 Indian Defense: Omega Gambit, Arafat Gambit d4 Nf6 e4 Nxe4 Bd3 Nf6 Bg5 +A45 Indian Defense: Paleface Attack, Blackmar-Diemer Gambit Deferred d4 Nf6 f3 d5 e4 +A45 Indian Defense: Pawn Push Variation d4 Nf6 d5 +A45 Indian Defense: Reversed Chigorin Defense d4 Nf6 Nc3 c5 +A45 Indian Defense: Tartakower Attack d4 Nf6 g3 +A45 Paleface Attack d4 Nf6 f3 +A45 Queen's Pawn Game: Chigorin Variation d4 Nf6 Nc3 d5 +A45 Queen's Pawn Game: Veresov, Richter Attack d4 Nf6 f3 d5 Nc3 +A45 Trompowsky Attack d4 Nf6 Bg5 +A45 Trompowsky Attack: Borg Variation d4 Nf6 Bg5 Ne4 Bf4 g5 +A45 Trompowsky Attack: Classical Defense d4 Nf6 Bg5 e6 +A45 Trompowsky Attack: Classical Defense, Big Center Variation d4 Nf6 Bg5 e6 e4 +A45 Trompowsky Attack: Edge Variation d4 Nf6 Bg5 Ne4 Bh4 +A45 Trompowsky Attack: Edge Variation, Hergert Gambit d4 Nf6 Bg5 Ne4 Bh4 c6 Nd2 Qa5 c3 Nxd2 Qxd2 d5 e4 +A45 Trompowsky Attack: Edge Variation, Hergert Gambit d4 Nf6 Bg5 Ne4 Bh4 d5 f3 Nf6 Nc3 Bf5 e4 +A45 Trompowsky Attack: Poisoned Pawn Variation d4 Nf6 Bg5 c5 d5 Qb6 Nc3 +A45 Trompowsky Attack: Raptor Variation d4 Nf6 Bg5 Ne4 h4 +A45 Trompowsky Attack: Raptor Variation, Hergert Gambit d4 Nf6 Bg5 Ne4 h4 Nxg5 hxg5 e5 +A46 Döry Defense d4 Nf6 Nf3 Ne4 +A46 Indian Defense: Czech-Indian d4 Nf6 Nf3 c6 +A46 Indian Defense: Knights Variation d4 Nf6 Nf3 +A46 Indian Defense: Knights Variation, Alburt-Miles Variation d4 Nf6 Nf3 a6 +A46 Indian Defense: London System d4 Nf6 Nf3 e6 Bf4 +A46 Indian Defense: Polish Variation d4 Nf6 Nf3 b5 +A46 Indian Defense: Spielmann-Indian d4 Nf6 Nf3 c5 +A46 Indian Defense: Wade-Tartakower Defense d4 Nf6 Nf3 d6 +A46 Queen's Pawn Game: Torre Attack, Breyer Variation d4 Nf6 Nf3 e6 Bg5 d5 e3 c5 c3 Qb6 +A46 Queen's Pawn Game: Veresov Attack, Classical Defense d4 Nf6 Nf3 e6 Nc3 d5 Bg5 +A46 Torre Attack: Classical Defense d4 Nf6 Nf3 e6 Bg5 +A46 Torre Attack: Classical Defense, Nimzowitsch Variation d4 Nf6 Nf3 e6 Bg5 h6 +A46 Torre Attack: Classical Defense, Petrosian Gambit d4 Nf6 Nf3 e6 Bg5 c5 e3 b6 d5 +A46 Torre Attack: Wagner Gambit d4 Nf6 Nf3 e6 Bg5 c5 e4 +A46 Yusupov-Rubinstein System d4 Nf6 Nf3 e6 e3 +A47 Indian Defense: Schnepper Gambit d4 Nf6 Nf3 b6 c3 e5 +A47 Marienbad System d4 Nf6 Nf3 b6 g3 Bb7 Bg2 c5 +A47 Marienbad System: Berg Variation d4 Nf6 Nf3 b6 g3 Bb7 Bg2 c5 c4 cxd4 Qxd4 +A47 Pseudo Queen's Indian Defense d4 Nf6 Nf3 b6 +A47 Pseudo Queen's Indian Defense d4 Nf6 Nf3 b6 e3 Bb7 Bd3 e6 Nbd2 c5 b3 Be7 +A48 East Indian Defense d4 Nf6 Nf3 g6 +A48 Indian Defense: Colle System, King's Indian Variation d4 Nf6 Nf3 g6 e3 Bg7 Bd3 d6 +A48 London System d4 Nf6 Nf3 g6 Bf4 +A48 London System d4 Nf6 Nf3 g6 Bf4 Bg7 e3 +A48 London System d4 Nf6 Nf3 g6 Bf4 Bg7 e3 d6 +A48 London System, with Bd3 d4 Nf6 Nf3 g6 Bf4 Bg7 e3 d6 Bd3 +A48 London System, with Be2 d4 Nf6 Nf3 g6 Bf4 Bg7 e3 d6 Be2 +A48 London System, with Be2 d4 Nf6 Nf3 g6 Bf4 Bg7 e3 d6 Be2 O-O +A48 London System, with Be2 d4 Nf6 Nf3 g6 Bf4 Bg7 e3 d6 h3 c5 Be2 +A48 Queen's Pawn Game: Barry Attack d4 Nf6 Nf3 g6 Nc3 d5 Bf4 +A48 Queen's Pawn Game: Barry Attack d4 Nf6 Nf3 g6 Nc3 d5 Bf4 Bg7 +A48 Queen's Pawn Game: Barry Attack, Grünfeld Variation d4 Nf6 Nf3 g6 Nc3 d5 Bf4 Bg7 e3 O-O Be2 +A48 Queen's Pawn Game: Barry Attack, Tarzan Attack d4 Nf6 Nf3 g6 Nc3 d5 Bf4 Bg7 Qd2 +A48 Queen's Pawn Game: Torre Attack, Grünfeld Variation, Main Line d4 Nf6 Nf3 g6 Bg5 Bg7 Nbd2 d5 e3 O-O +A48 Torre Attack: Fianchetto Defense d4 Nf6 Nf3 g6 Bg5 +A48 Torre Attack: Fianchetto Defense, Euwe Variation d4 Nf6 Nf3 g6 Bg5 Bg7 Nbd2 c5 +A49 Indian Defense: Przepiorka Variation d4 Nf6 Nf3 g6 g3 +A50 Indian Defense: Medusa Gambit d4 Nf6 c4 g5 +A50 Indian Defense: Normal Variation d4 Nf6 c4 +A50 Indian Defense: Pyrenees Gambit d4 Nf6 c4 b5 +A50 Mexican Defense d4 Nf6 c4 Nc6 +A50 Mexican Defense: Horsefly Gambit d4 Nf6 c4 Nc6 d5 Ne5 f4 +A50 Queen's Indian Accelerated d4 Nf6 c4 b6 +A50 Slav Indian d4 Nf6 c4 c6 +A51 Indian Defense: Budapest Gambit d4 Nf6 c4 e5 +A51 Indian Defense: Budapest Gambit Accepted d4 Nf6 c4 e5 dxe5 +A51 Indian Defense: Budapest Gambit Accepted, Fajarowicz Defense d4 Nf6 c4 e5 dxe5 Ne4 +A51 Indian Defense: Budapest Gambit Accepted, Fajarowicz Defense, Bonsdorf Variation d4 Nf6 c4 e5 dxe5 Ne4 a3 +A51 Indian Defense: Budapest Gambit Accepted, Fajarowicz Defense, Steiner Variation d4 Nf6 c4 e5 dxe5 Ne4 Qc2 +A52 Indian Defense: Budapest Gambit Accepted, Main Line d4 Nf6 c4 e5 dxe5 Ng4 +A52 Indian Defense: Budapest Gambit Accepted, Main Line, Adler Variation d4 Nf6 c4 e5 dxe5 Ng4 Nf3 +A52 Indian Defense: Budapest Gambit Accepted, Main Line, Alekhine Variation d4 Nf6 c4 e5 dxe5 Ng4 e4 +A52 Indian Defense: Budapest Gambit Accepted, Main Line, Alekhine Variation, Abonyi Variation d4 Nf6 c4 e5 dxe5 Ng4 e4 Nxe5 +A52 Indian Defense: Budapest Gambit Accepted, Main Line, Alekhine Variation, Tartakower Defense d4 Nf6 c4 e5 dxe5 Ng4 e4 d6 +A52 Indian Defense: Budapest Gambit Accepted, Main Line, Rubinstein Variation d4 Nf6 c4 e5 dxe5 Ng4 Bf4 +A53 Old Indian Defense d4 Nf6 c4 d6 +A53 Old Indian Defense: Aged Gibbon Gambit d4 Nf6 c4 d6 g4 +A53 Old Indian Defense: Czech Variation, with Nc3 d4 Nf6 c4 d6 Nc3 c6 +A53 Old Indian Defense: Czech Variation, with Nf3 d4 Nf6 c4 d6 Nf3 c6 +A53 Old Indian Defense: Janowski Variation d4 Nf6 c4 d6 Nc3 Bf5 +A53 Old Indian Defense: Janowski Variation, Fianchetto Variation d4 Nf6 c4 d6 Nc3 Bf5 g3 +A53 Old Indian Defense: Janowski Variation, Grinberg Gambit d4 Nf6 c4 d6 Nc3 Bf5 e4 +A53 Old Indian Defense: Janowski Variation, Main Line d4 Nf6 c4 d6 Nc3 Bf5 f3 +A54 Old Indian Defense: Duz-Khotimirsky Variation d4 Nf6 c4 d6 Nc3 e5 e3 Nbd7 Bd3 +A54 Old Indian Defense: Tartakower-Indian d4 Nf6 c4 d6 Nf3 Bg4 +A54 Old Indian Defense: Two Knights Variation d4 Nf6 c4 d6 Nc3 e5 Nf3 +A54 Old Indian Defense: Ukrainian Variation d4 Nf6 c4 d6 Nc3 e5 +A55 Old Indian Defense: Normal Variation d4 Nf6 c4 d6 Nc3 Nbd7 e4 e5 Nf3 +A56 Benoni Defense d4 Nf6 c4 c5 +A56 Benoni Defense: Czech Benoni Defense d4 Nf6 c4 c5 d5 e5 +A56 Benoni Defense: Hromádka System d4 Nf6 c4 c5 d5 d6 +A56 Benoni Defense: King's Indian System d4 Nf6 c4 c5 d5 e5 Nc3 d6 e4 g6 +A56 Benoni Defense: Weenink Variation d4 Nf6 c4 c5 dxc5 e6 +A56 Grünfeld Defense: Three Knights Variation, Burille Variation, Reversed Tarrasch d4 Nf6 c4 c5 e3 g6 Nc3 Bg7 Nf3 O-O Be2 cxd4 exd4 d5 O-O Nc6 +A56 Vulture Defense d4 Nf6 c4 c5 d5 Ne4 +A57 Benko Gambit d4 Nf6 c4 c5 d5 b5 +A57 Benko Gambit Accepted d4 Nf6 c4 c5 d5 b5 cxb5 a6 +A57 Benko Gambit Accepted: Dlugy Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 f3 +A57 Benko Gambit Accepted: Modern Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 e3 +A57 Benko Gambit Accepted: Pawn Return Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 b6 +A57 Benko Gambit Declined: Bishop Attack d4 Nf6 c4 c5 d5 b5 Bg5 +A57 Benko Gambit Declined: Hjørring Countergambit d4 Nf6 c4 c5 d5 b5 e4 +A57 Benko Gambit Declined: Main Line d4 Nf6 c4 c5 d5 b5 Nf3 +A57 Benko Gambit Declined: Pseudo-Sämisch d4 Nf6 c4 c5 d5 b5 f3 +A57 Benko Gambit Declined: Quiet Line d4 Nf6 c4 c5 d5 b5 Nd2 +A57 Benko Gambit Declined: Sosonko Variation d4 Nf6 c4 c5 d5 b5 a4 +A57 Benko Gambit: Mutkin Countergambit d4 Nf6 c4 c5 d5 b5 g4 +A57 Benko Gambit: Nescafe Frappe Attack d4 Nf6 c4 c5 d5 b5 cxb5 a6 Nc3 axb5 e4 b4 Nb5 d6 Bc4 +A57 Benko Gambit: Zaitsev System d4 Nf6 c4 c5 d5 b5 cxb5 a6 Nc3 +A57 Benko Gambit: Zaitsev Variation, Nescafe Frappe Attack d4 Nf6 c4 c5 d5 b5 cxb5 a6 Nc3 axb5 e4 b4 Nb5 +A58 Benko Gambit Accepted: Central Storming Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 g6 Nc3 Bxa6 f4 +A58 Benko Gambit Accepted: Fianchetto Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 g6 Nc3 Bxa6 g3 d6 Bg2 Bg7 Nf3 +A58 Benko Gambit Accepted: Fully Accepted Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 +A58 Benko Gambit: Fianchetto Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 Bxa6 Nc3 d6 Nf3 g6 g3 +A58 Benko Gambit: Nd2 Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 Bxa6 Nc3 d6 Nf3 g6 Nd2 +A59 Benko Gambit d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 g6 Nc3 Bxa6 e4 Bxf1 Kxf1 d6 g3 +A59 Benko Gambit Accepted: King Walk Variation d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 g6 Nc3 Bxa6 Nf3 d6 e4 Bxf1 Kxf1 Bg7 g3 O-O Kg2 +A59 Benko Gambit Accepted: Yugoslav d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 Bxa6 Nc3 d6 e4 +A59 Benko Gambit Accepted: Yugoslav d4 Nf6 c4 c5 d5 b5 cxb5 a6 bxa6 g6 Nc3 Bxa6 e4 Bxf1 Kxf1 d6 Nge2 +A60 Benoni Defense: Modern Variation d4 Nf6 c4 c5 d5 e6 +A60 Benoni Defense: Modern Variation, Snake Variation d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 Bd6 +A61 Benoni Defense d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 +A61 Benoni Defense: Fianchetto Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 g3 +A61 Benoni Defense: Knight's Tour Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 Nd2 +A61 Benoni Defense: Uhlmann Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 Bg5 +A62 Benoni Defense: Fianchetto Variation d4 Nf6 c4 e6 g3 c5 d5 exd5 cxd5 d6 Nc3 g6 Bg2 Bg7 Nf3 O-O +A63 Benoni Defense: Fianchetto Variation, Hastings Defense d4 Nf6 c4 e6 g3 c5 d5 exd5 cxd5 d6 Nc3 g6 Bg2 Bg7 Nf3 O-O O-O Nbd7 +A64 Benoni Defense: Fianchetto Variation, Hastings Defense, Main Line d4 Nf6 c4 e6 g3 c5 d5 exd5 cxd5 d6 Nc3 g6 Bg2 Bg7 Nf3 O-O O-O a6 a4 Nbd7 Nd2 Re8 +A65 Benoni Defense: King's Pawn Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 +A65 Benoni Defense: King's Pawn Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f3 Bg7 +A65 Benoni Defense: King's Pawn Line d4 Nf6 c4 g6 f3 c5 d5 d6 e4 Bg7 Nc3 e6 Be3 O-O Qd2 exd5 cxd5 +A65 Benoni Defense: King's Pawn Line, with Be3 d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f3 Bg7 Be3 +A65 Benoni Defense: King's Pawn Line, with Bg5 d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 c5 d5 +A65 Benoni Defense: King's Pawn Line, with Bg5 d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f3 Bg7 Bg5 +A65 Benoni Defense: King's Pawn Line, with Bg5 d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 c5 d5 e6 Qd2 exd5 exd5 +A65 Benoni Defense: King's Pawn Line, with Nge2 d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f3 Bg7 Nge2 +A65 Benoni Defense: King's Pawn Line, with Nge2 d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Nge2 c5 d5 e6 Ng3 exd5 cxd5 +A66 Benoni Defense: Mikenas Variation d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f4 Bg7 e5 +A66 Benoni Defense: Pawn Storm Variation d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f4 +A67 Benoni Defense: Taimanov Variation d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f4 Bg7 Bb5 +A68 Benoni Defense: Four Pawns Attack d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f4 Bg7 Nf3 O-O +A69 Benoni Defense: Four Pawns Attack, Main Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 f4 Bg7 Nf3 O-O Be2 Re8 +A70 Benoni Defense: Classical Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 +A70 Benoni Defense: Classical Variation, New York Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 h3 +A70 Benoni Defense: Classical Variation, Traditional Variation d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 Be2 +A71 Benoni Defense: Classical Variation, Averbakh-Grivas Attack d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 Bg5 +A72 Benoni Defense: Classical Variation d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O +A73 Benoni Defense: Classical Variation, Main Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O O-O +A74 Benoni Defense: Classical Variation, Full Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O O-O a6 a4 +A75 Benoni Defense: Classical Variation, Argentine Counterattack d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 Be2 O-O O-O a6 a4 Bg4 +A76 Benoni Defense: Classical Variation, Czerniak Defense d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O O-O Re8 +A77 Benoni Defense: Classical Variation, Czerniak Defense, Tal Line d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O O-O Re8 Nd2 +A78 Benoni Defense: Classical Variation, Czerniak Defense d4 Nf6 c4 e6 Nf3 c5 d5 exd5 cxd5 d6 Nc3 g6 e4 Bg7 Be2 O-O O-O Re8 Nd2 Na6 +A79 Benoni Defense: Classical Variation, Czerniak Defense d4 Nf6 c4 c5 d5 e6 Nc3 exd5 cxd5 d6 e4 g6 Nf3 Bg7 Be2 O-O O-O Re8 Nd2 Na6 f3 +A80 Dutch Defense d4 f5 +A80 Dutch Defense: Alapin Variation d4 f5 Qd3 +A80 Dutch Defense: Barcza Variation d4 f5 Nf3 Nf6 c3 +A80 Dutch Defense: Hevendehl Gambit d4 f5 g4 e5 +A80 Dutch Defense: Hopton Attack d4 f5 Bg5 +A80 Dutch Defense: Janzen-Korchnoi Gambit d4 f5 h3 Nf6 g4 +A80 Dutch Defense: Kingfisher Gambit d4 f5 Nc3 d5 e4 +A80 Dutch Defense: Korchnoi Attack d4 f5 h3 +A80 Dutch Defense: Krejcik Gambit d4 f5 g4 +A80 Dutch Defense: Krejcik Gambit, Tate Gambit d4 f5 g4 fxg4 e4 d5 Nc3 +A80 Dutch Defense: Manhattan Gambit, Anti-Classical Line d4 f5 Qd3 e6 g4 +A80 Dutch Defense: Manhattan Gambit, Anti-Leningrad d4 f5 Qd3 g6 g4 +A80 Dutch Defense: Manhattan Gambit, Anti-Modern d4 f5 Qd3 d6 g4 +A80 Dutch Defense: Manhattan Gambit, Anti-Stonewall d4 f5 Qd3 d5 g4 +A80 Dutch Defense: Omega-Isis Gambit d4 f5 Nf3 e5 +A80 Dutch Defense: Raphael Variation d4 f5 Nc3 +A80 Dutch Defense: Senechaud Gambit d4 f5 Bf4 e6 g4 +A80 Dutch Defense: Spielmann Gambit d4 f5 Nc3 Nf6 g4 +A80 Queen's Pawn Game: Veresov Attack, Dutch System d4 f5 Nc3 d5 +A81 Dutch Defense: Blackburne Variation d4 f5 g3 Nf6 Bg2 e6 Nh3 +A81 Dutch Defense: Fianchetto Attack d4 f5 g3 +A81 Dutch Defense: Leningrad Variation, Carlsbad Variation d4 f5 g3 g6 Bg2 Bg7 Nh3 +A81 Dutch Defense: Leningrad, Basman System d4 f5 g3 c6 Bg2 g6 Nf3 Bg7 O-O Nh6 +A81 Dutch Defense: Semi-Leningrad Variation d4 f5 g3 Nf6 Bg2 g6 +A82 Dutch Defense: Blackmar's Second Gambit d4 f5 e4 fxe4 Nc3 Nf6 f3 +A82 Dutch Defense: Staunton Gambit d4 f5 e4 +A82 Dutch Defense: Staunton Gambit Accepted d4 f5 e4 fxe4 +A82 Dutch Defense: Staunton Gambit, American Attack d4 f5 e4 fxe4 Nd2 +A82 Dutch Defense: Staunton Gambit, Tartakower Variation d4 f5 e4 fxe4 Nc3 Nf6 g4 +A82 Rat Defense: Balogh Defense e4 d6 d4 f5 +A83 Dutch Defense: Staunton Gambit d4 f5 e4 fxe4 Nc3 Nf6 Bg5 +A83 Dutch Defense: Staunton Gambit, Alekhine Variation d4 f5 e4 fxe4 Nc3 Nf6 Bg5 g6 h4 +A83 Dutch Defense: Staunton Gambit, Chigorin Variation d4 f5 e4 fxe4 Nc3 Nf6 Bg5 c6 +A83 Dutch Defense: Staunton Gambit, Lasker Variation d4 f5 e4 fxe4 Nc3 Nf6 Bg5 g6 f3 +A83 Dutch Defense: Staunton Gambit, Nimzowitsch Variation d4 f5 e4 fxe4 Nc3 Nf6 Bg5 b6 +A84 Dutch Defense d4 f5 c4 +A84 Dutch Defense: Bellon Gambit d4 f5 c4 e6 e4 +A84 Dutch Defense: Bladel Variation d4 f5 c4 g6 Nc3 Nh6 +A84 Dutch Defense: Classical Variation d4 f5 c4 e6 +A84 Dutch Defense: Krause Variation d4 f5 c4 Nf6 Nc3 d6 Nf3 Nc6 +A84 Dutch Defense: Normal Variation d4 f5 c4 Nf6 +A84 Dutch Defense: Rubinstein Variation d4 f5 c4 e6 Nc3 +A85 Dutch Defense: Queen's Knight Variation d4 f5 c4 Nf6 Nc3 +A86 Dutch Defense: Fianchetto Variation d4 f5 c4 Nf6 g3 +A86 Dutch Defense: Hort-Antoshin System d4 f5 c4 Nf6 g3 d6 Bg2 c6 Nc3 Qc7 +A86 Dutch Defense: Leningrad Variation d4 f5 c4 Nf6 g3 g6 +A87 Dutch Defense: Leningrad Variation d4 f5 c4 Nf6 g3 g6 Bg2 Bg7 Nf3 +A88 Dutch Defense: Leningrad Variation, Warsaw Variation d4 f5 g3 Nf6 Bg2 g6 Nf3 Bg7 O-O O-O c4 d6 Nc3 c6 +A89 Dutch Defense: Leningrad Variation, Matulovic Variation d4 f5 g3 Nf6 Bg2 g6 Nf3 Bg7 O-O O-O c4 d6 Nc3 Nc6 +A90 Dutch Defense: Classical Variation d4 f5 c4 Nf6 g3 e6 Bg2 +A90 Dutch Defense: Classical Variation d4 f5 c4 Nf6 g3 e6 Bg2 d5 Nf3 +A90 Dutch Defense: Nimzo-Dutch Variation d4 f5 c4 Nf6 g3 e6 Bg2 Bb4 +A90 Dutch Defense: Nimzo-Dutch Variation, Alekhine Variation d4 f5 c4 Nf6 g3 e6 Bg2 Bb4 Bd2 Be7 +A90 Dutch Defense: Stonewall Variation, Modern Variation d4 f5 c4 e6 Nf3 Nf6 g3 c6 Bg2 d5 O-O Bd6 +A91 Dutch Defense: Classical Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 +A91 Dutch Defense: Classical Variation, Blackburne Attack d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nh3 +A92 Dutch Defense: Alekhine Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O Ne4 +A92 Dutch Defense: Classical Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O +A92 Dutch Defense: Stonewall Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 Nc3 +A92 Dutch Defense: Stonewall Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 +A93 Dutch Defense: Stonewall Variation, Botvinnik Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 b3 +A94 Dutch Defense: Stonewall Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 b3 c6 Ba3 +A95 Dutch Defense: Stonewall Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 Nc3 c6 +A95 Dutch Defense: Stonewall Variation, Chekhover Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d5 Nc3 c6 Qc2 Qe8 Bg5 +A96 Dutch Defense: Classical Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 +A96 Dutch Defense: Classical Variation, Buenos Aires Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 a5 +A96 Dutch Defense: Classical Variation, Huisl Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 Ne4 +A97 Dutch Defense: Classical Variation, Ilyin-Zhenevsky Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 Qe8 +A97 Dutch Defense: Classical Variation, Ilyin-Zhenevsky Variation, Winter Variation d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 Qe8 Re1 +A98 Dutch Defense: Classical Variation, Ilyin-Zhenevsky Variation, Alatortsev-Lisitsyn Line d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 Qe8 Qc2 +A99 Dutch Defense: Classical Variation, Ilyin-Zhenevsky Variation, Modern Main Line d4 f5 c4 Nf6 g3 e6 Bg2 Be7 Nf3 O-O O-O d6 Nc3 Qe8 b3 +B00 Barnes Defense e4 f6 +B00 Borg Defense e4 g5 +B00 Borg Defense: Borg Gambit e4 g5 d4 Bg7 +B00 Borg Defense: Troon Gambit e4 g5 d4 h6 h4 g4 +B00 Borg Defense: Zilbermints Gambit e4 g5 d4 e5 +B00 Carr Defense e4 h6 +B00 Carr Defense: Zilbermints Gambit e4 h6 d4 e5 +B00 Duras Gambit e4 f5 +B00 Fried Fox Defense e4 f6 d4 Kf7 +B00 Goldsmith Defense e4 h5 +B00 Goldsmith Defense: Picklepuss Defense e4 h5 d4 Nf6 +B00 Hippopotamus Defense e4 Nh6 +B00 Hippopotamus Defense e4 Nh6 d4 g6 c4 f6 +B00 King's Pawn Game e4 +B00 Lemming Defense e4 Na6 +B00 Lion Defense: Lion's Jaw e4 d6 d4 Nf6 f3 +B00 Nimzowitsch Defense e4 Nc6 +B00 Nimzowitsch Defense e4 Nc6 d4 +B00 Nimzowitsch Defense: Breyer Variation e4 Nc6 Nc3 Nf6 d4 e5 +B00 Nimzowitsch Defense: Colorado Countergambit e4 Nc6 Nf3 f5 +B00 Nimzowitsch Defense: Colorado Countergambit Accepted e4 Nc6 Nf3 f5 exf5 +B00 Nimzowitsch Defense: Declined Variation e4 Nc6 Nf3 +B00 Nimzowitsch Defense: El Columpio Defense e4 Nc6 Nf3 Nf6 e5 Ng4 +B00 Nimzowitsch Defense: El Columpio Defense, El Columpio Gambit e4 Nc6 Nf3 Nf6 e5 Ng4 d4 d6 h3 Nh6 e6 +B00 Nimzowitsch Defense: El Columpio Defense, Exchange Variation e4 Nc6 Nf3 Nf6 e5 Ng4 d4 d6 h3 Nh6 exd6 +B00 Nimzowitsch Defense: El Columpio Defense, Pin Variation e4 Nc6 Nf3 Nf6 e5 Ng4 d4 d6 h3 Nh6 Bb5 +B00 Nimzowitsch Defense: Franco-Nimzowitsch Variation e4 Nc6 Nf3 e6 +B00 Nimzowitsch Defense: French Connection e4 Nc6 Nc3 e6 +B00 Nimzowitsch Defense: Hornung Gambit e4 Nc6 d4 d5 Be3 +B00 Nimzowitsch Defense: Kennedy Variation e4 Nc6 d4 e5 +B00 Nimzowitsch Defense: Kennedy Variation, Bielefelder Gambit e4 Nc6 d4 e5 dxe5 Bc5 +B00 Nimzowitsch Defense: Kennedy Variation, Hammer Gambit e4 Nc6 d4 e5 dxe5 f6 +B00 Nimzowitsch Defense: Kennedy Variation, Herford Gambit e4 Nc6 d4 e5 dxe5 Qh4 +B00 Nimzowitsch Defense: Kennedy Variation, Keres Attack e4 Nc6 d4 e5 dxe5 Nxe5 Nc3 +B00 Nimzowitsch Defense: Kennedy Variation, Linksspringer Variation e4 Nc6 d4 e5 d5 +B00 Nimzowitsch Defense: Kennedy Variation, Main Line e4 Nc6 d4 e5 dxe5 Nxe5 f4 Ng6 +B00 Nimzowitsch Defense: Kennedy Variation, Paulsen Attack e4 Nc6 d4 e5 dxe5 Nxe5 Nf3 +B00 Nimzowitsch Defense: Kennedy Variation, Riemann Defense e4 Nc6 d4 e5 dxe5 Nxe5 f4 Nc6 +B00 Nimzowitsch Defense: Kennedy Variation, de Smet Gambit e4 Nc6 d4 e5 dxe5 d6 +B00 Nimzowitsch Defense: Mikenas Variation e4 Nc6 d4 d6 +B00 Nimzowitsch Defense: Neo-Mongoloid Defense e4 Nc6 d4 f6 +B00 Nimzowitsch Defense: Pirc Connection e4 Nc6 Nc3 g6 +B00 Nimzowitsch Defense: Pseudo-Spanish Variation e4 Nc6 Bb5 +B00 Nimzowitsch Defense: Scandinavian Variation e4 Nc6 d4 d5 +B00 Nimzowitsch Defense: Scandinavian Variation, Aachen Gambit e4 Nc6 d4 d5 exd5 Nb4 +B00 Nimzowitsch Defense: Scandinavian Variation, Advance Variation e4 Nc6 d4 d5 e5 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation e4 Nc6 d4 d5 Nc3 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation e4 Nc6 d4 d5 Nc3 dxe4 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Brandics Gambit e4 Nc6 d4 d5 Nc3 a6 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Erben Gambit e4 Nc6 d4 d5 Nc3 g6 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Heinola-Deppe Gambit e4 Nc6 d4 d5 Nc3 e5 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Nimzowitsch Gambit e4 Nc6 d4 d5 Nc3 dxe4 d5 Ne5 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Richter Gambit e4 Nc6 d4 d5 Nc3 dxe4 d5 Nb8 f3 +B00 Nimzowitsch Defense: Scandinavian Variation, Bogoljubow Variation, Vehre Variation e4 Nc6 d4 d5 Nc3 Nf6 +B00 Nimzowitsch Defense: Scandinavian Variation, Exchange Variation e4 Nc6 d4 d5 exd5 Qxd5 +B00 Nimzowitsch Defense: Scandinavian Variation, Exchange Variation, Marshall Gambit e4 Nc6 d4 d5 exd5 Qxd5 Nc3 +B00 Nimzowitsch Defense: Wheeler Gambit e4 Nc6 b4 +B00 Nimzowitsch Defense: Williams Variation e4 Nc6 Nf3 d6 +B00 Nimzowitsch Defense: Woodchuck Variation e4 Nc6 d4 a6 +B00 Owen Defense e4 b6 +B00 Owen Defense: Guatemala Defense e4 b6 d4 Ba6 +B00 Owen Defense: Hekili-Loa Gambit e4 b6 d4 c5 dxc5 Nc6 +B00 Owen Defense: Matovinsky Gambit e4 b6 d4 Bb7 Bd3 f5 exf5 Bxg2 Qh5 g6 +B00 Owen Defense: Naselwaus Gambit e4 b6 d4 Bb7 Bg5 +B00 Owen Defense: Smith Gambit e4 b6 d4 Bb7 Nf3 +B00 Owen Defense: Unicorn Variation e4 f6 d4 b6 c4 Bb7 +B00 Owen Defense: Wind Gambit e4 b6 d4 Bb7 f3 e5 +B00 Pirc Defense e4 d6 +B00 Pirc Defense e4 d6 d4 +B00 Pirc Defense e4 d6 d4 Nf6 +B00 Pirc Defense: Roscher Gambit e4 d6 d4 Nf6 Nf3 +B00 Rat Defense: Antal Defense e4 d6 d4 Nd7 +B00 Rat Defense: Fuller Gambit e4 d6 f4 d5 exd5 Nf6 +B00 Rat Defense: Harmonist e4 d6 f4 +B00 Rat Defense: Petruccioli Attack e4 d6 h4 +B00 Rat Defense: Spike Attack e4 d6 g4 +B00 St. George Defense e4 a6 +B00 St. George Defense: Polish Variation e4 a6 d4 b5 Nf3 Bb7 Bd3 e6 +B00 St. George Defense: San Jorge Variation e4 a6 d4 b5 Nf3 Bb7 Bd3 d6 O-O g6 c3 Bg7 +B00 St. George Defense: Zilbermints Gambit e4 a6 d4 e5 +B00 Van Geet Opening: Berlin Gambit e4 Nc6 d4 d5 Nc3 dxe4 d5 +B00 Ware Defense e4 a5 +B00 Ware Defense: Snagglepuss Defense e4 a5 d4 Nc6 +B01 Scandinavian Defense e4 d5 +B01 Scandinavian Defense e4 d5 b3 +B01 Scandinavian Defense: Anderssen Counterattack e4 d5 exd5 Qxd5 Nc3 Qa5 d4 e5 +B01 Scandinavian Defense: Anderssen Counterattack, Collijn Variation e4 d5 exd5 Qxd5 Nc3 Qa5 d4 e5 Nf3 Bg4 +B01 Scandinavian Defense: Anderssen Counterattack, Goteborg System e4 d5 exd5 Qxd5 Nc3 Qa5 d4 e5 Nf3 +B01 Scandinavian Defense: Anderssen Counterattack, Orthodox Attack e4 d5 exd5 Qxd5 Nc3 Qa5 d4 e5 dxe5 Nc6 Nf3 Bb4 Bd2 +B01 Scandinavian Defense: Blackburne Gambit e4 d5 exd5 c6 dxc6 Nxc6 +B01 Scandinavian Defense: Blackburne-Kloosterboer Gambit e4 d5 exd5 c6 +B01 Scandinavian Defense: Boehnke Gambit e4 d5 exd5 e5 dxe6 Bxe6 +B01 Scandinavian Defense: Bronstein Variation e4 d5 exd5 Qxd5 Nc3 Qd6 d4 Nf6 Nf3 a6 +B01 Scandinavian Defense: Classical Variation e4 d5 exd5 Qxd5 Nc3 Qa5 d4 Nf6 Nf3 Bf5 +B01 Scandinavian Defense: Grünfeld Variation e4 d5 exd5 Qxd5 Nc3 Qa5 d4 Nf6 Nf3 Bf5 Ne5 c6 g4 +B01 Scandinavian Defense: Gubinsky-Melts Defense e4 d5 exd5 Qxd5 Nc3 Qd6 +B01 Scandinavian Defense: Icelandic-Palme Gambit e4 d5 exd5 Nf6 c4 e6 +B01 Scandinavian Defense: Kiel Variation e4 d5 exd5 Nf6 d4 Nxd5 c4 Nb4 +B01 Scandinavian Defense: Kloosterboer Gambit e4 d5 exd5 c6 dxc6 e5 +B01 Scandinavian Defense: Kádas Gambit e4 d5 exd5 Nf6 d4 c6 dxc6 e5 +B01 Scandinavian Defense: Lasker Variation e4 d5 exd5 Qxd5 Nc3 Qa5 d4 Nf6 Nf3 Bg4 h3 +B01 Scandinavian Defense: Main Line e4 d5 exd5 Qxd5 Nc3 Qa5 +B01 Scandinavian Defense: Main Line, Leonhardt Gambit e4 d5 exd5 Qxd5 Nc3 Qa5 b4 +B01 Scandinavian Defense: Main Line, Mieses Variation e4 d5 exd5 Qxd5 Nc3 Qa5 d4 Nf6 +B01 Scandinavian Defense: Marshall Variation e4 d5 exd5 Nf6 d4 Nxd5 +B01 Scandinavian Defense: Mieses-Kotroc Variation e4 d5 exd5 Qxd5 +B01 Scandinavian Defense: Modern Variation e4 d5 exd5 Nf6 +B01 Scandinavian Defense: Modern Variation e4 d5 exd5 Nf6 d4 +B01 Scandinavian Defense: Modern Variation, Gipslis Variation e4 d5 exd5 Nf6 d4 Nxd5 Nf3 Bg4 +B01 Scandinavian Defense: Modern Variation, Wing Gambit e4 d5 exd5 Nf6 d4 g6 c4 b5 +B01 Scandinavian Defense: Panov Transfer e4 d5 exd5 Nf6 c4 c6 +B01 Scandinavian Defense: Portuguese Gambit e4 d5 exd5 Nf6 d4 Bg4 +B01 Scandinavian Defense: Portuguese Gambit, Banker Variation e4 d5 exd5 Nf6 d4 Bg4 f3 Bf5 c4 +B01 Scandinavian Defense: Portuguese Gambit, Classical Variation e4 d5 exd5 Nf6 d4 Bg4 Nf3 +B01 Scandinavian Defense: Portuguese Gambit, Correspondence Refutation e4 d5 exd5 Nf6 d4 Bg4 f3 Bf5 g4 +B01 Scandinavian Defense: Portuguese Gambit, Elbow Variation e4 d5 exd5 Nf6 d4 Bg4 Bb5 c6 +B01 Scandinavian Defense: Portuguese Gambit, Jadoul Variation e4 d5 exd5 Nf6 d4 Bg4 f3 Bf5 Bb5 Nbd7 c4 +B01 Scandinavian Defense: Portuguese Gambit, Lusophobe Variation e4 d5 exd5 Nf6 d4 Bg4 Bb5 Nbd7 Be2 +B01 Scandinavian Defense: Portuguese Gambit, Melbourne Shuffle Variation e4 d5 exd5 Nf6 d4 Bg4 f3 Bf5 Bb5 Nbd7 Nc3 +B01 Scandinavian Defense: Portuguese Gambit, Wuss Variation e4 d5 exd5 Nf6 d4 Bg4 Be2 +B01 Scandinavian Defense: Richter Variation e4 d5 exd5 Nf6 d4 Nxd5 Nf3 g6 +B01 Scandinavian Defense: Richter Variation e4 d5 exd5 Nf6 d4 g6 +B01 Scandinavian Defense: Schiller-Pytel Variation e4 d5 exd5 Qxd5 Nc3 Qd6 d4 c6 +B01 Scandinavian Defense: Schiller-Pytel Variation, Modern Variation e4 d5 exd5 Qxd5 Nc3 Qd6 d4 Nf6 Bc4 c6 Nge2 Bf5 Bf4 Qb4 +B01 Scandinavian Defense: Valencian Variation e4 d5 exd5 Qxd5 Nc3 Qd8 +B01 Scandinavian Defense: Valencian Variation, Ilundain Variation e4 d5 exd5 Qxd5 Nc3 Qd8 d4 Nf6 Nf3 c6 +B01 Scandinavian Defense: Valencian Variation, Main Line e4 d5 exd5 Qxd5 Nc3 Qd8 d4 Nf6 Nf3 Bg4 +B01 Scandinavian Defense: Zilbermints Gambit e4 d5 b4 +B01 Van Geet Opening: Grünfeld Defense e4 d5 Nc3 dxe4 Nxe4 e5 +B02 Alekhine Defense e4 Nf6 +B02 Alekhine Defense: Brooklyn Variation e4 Nf6 e5 Ng8 +B02 Alekhine Defense: Brooklyn Variation, Everglades Variation e4 Nf6 e5 Ng8 d4 f5 +B02 Alekhine Defense: Buckley Attack e4 Nf6 e5 Nd5 Na3 +B02 Alekhine Defense: Hunt Variation, Lasker Simul Gambit e4 Nf6 e5 Nd5 c4 Nb6 c5 Nd5 Bc4 e6 Nc3 +B02 Alekhine Defense: Hunt Variation, Matsukevich Gambit e4 Nf6 e5 Nd5 c4 Nb6 c5 Nd5 Nc3 Nxc3 dxc3 d6 Bg5 +B02 Alekhine Defense: Hunt Variation, Mikenas Gambit e4 Nf6 e5 Nd5 c4 Nb6 c5 Nd5 Bc4 e6 Nc3 d6 Nxd5 exd5 Bxd5 +B02 Alekhine Defense: Kmoch Variation e4 Nf6 e5 Nd5 Bc4 Nb6 Bb3 c5 d3 +B02 Alekhine Defense: Krejcik Variation e4 Nf6 Bc4 +B02 Alekhine Defense: Krejcik Variation, Krejcik Gambit e4 Nf6 Bc4 Nxe4 Bxf7 +B02 Alekhine Defense: Maróczy Variation e4 Nf6 d3 +B02 Alekhine Defense: Mokele Mbembe e4 Nf6 e5 Ne4 +B02 Alekhine Defense: Mokele Mbembe, Modern Line e4 Nf6 e5 Ne4 d4 f6 +B02 Alekhine Defense: Mokele Mbembe, Vavra Defense e4 Nf6 e5 Ne4 d4 e6 +B02 Alekhine Defense: Normal Variation e4 Nf6 e5 Nd5 +B02 Alekhine Defense: Scandinavian Variation e4 Nf6 Nc3 d5 +B02 Alekhine Defense: Scandinavian Variation, Geschev Gambit e4 Nf6 Nc3 d5 exd5 c6 +B02 Alekhine Defense: Scandinavian Variation, Myers Gambit e4 Nf6 Nc3 d5 d3 dxe4 Bg5 +B02 Alekhine Defense: Spielmann Gambit e4 Nf6 Nc3 d5 e5 Nfd7 e6 +B02 Alekhine Defense: Steiner Variation e4 Nf6 e5 Nd5 c4 Nb6 b3 +B02 Alekhine Defense: Sämisch Attack e4 Nf6 e5 Nd5 Nc3 +B02 Alekhine Defense: The Squirrel e4 Nf6 e5 Nd5 c4 Nf4 +B02 Alekhine Defense: Two Pawns Attack e4 Nf6 e5 Nd5 c4 +B02 Alekhine Defense: Two Pawns Attack, Lasker Variation e4 Nf6 e5 Nd5 c4 Nb6 c5 +B02 Alekhine Defense: Two Pawns Attack, Mikenas Variation e4 Nf6 e5 Nd5 c4 Nb6 c5 Nd5 Bc4 e6 Nc3 d6 +B02 Alekhine Defense: Two Pawns Attack, Tate Variation e4 Nf6 e5 Nd5 c4 Nb6 a4 +B02 Alekhine Defense: Welling Variation e4 Nf6 e5 Nd5 b3 +B03 Alekhine Defense e4 Nf6 e5 Nd5 d4 +B03 Alekhine Defense e4 Nf6 e5 Nd5 d4 d6 +B03 Alekhine Defense e4 Nf6 e5 Nd5 d4 d6 c4 +B03 Alekhine Defense: Balogh Variation e4 Nf6 e5 Nd5 d4 d6 Bc4 +B03 Alekhine Defense: Exchange Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 exd6 +B03 Alekhine Defense: Exchange Variation, Karpov Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 exd6 cxd6 Nc3 g6 h3 Bg7 Nf3 O-O Be2 Nc6 O-O Bf5 Bf4 +B03 Alekhine Defense: Exchange Variation, Voronezh Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 exd6 cxd6 Nc3 g6 Be3 Bg7 Rc1 O-O b3 +B03 Alekhine Defense: Four Pawns Attack e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 +B03 Alekhine Defense: Four Pawns Attack, Cambridge Gambit e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 g5 +B03 Alekhine Defense: Four Pawns Attack, Fianchetto Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 g6 +B03 Alekhine Defense: Four Pawns Attack, Ilyin-Zhenevsky Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 dxe5 fxe5 Nc6 Nf3 Bg4 e6 fxe6 c5 +B03 Alekhine Defense: Four Pawns Attack, Korchnoi Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 dxe5 fxe5 Bf5 Nc3 e6 Nf3 Be7 Be2 O-O O-O f6 +B03 Alekhine Defense: Four Pawns Attack, Main Line e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 dxe5 fxe5 Nc6 Be3 +B03 Alekhine Defense: Four Pawns Attack, Tartakower Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 dxe5 fxe5 Nc6 Be3 Bf5 Nc3 e6 Nf3 Qd7 Be2 O-O-O O-O Be7 +B03 Alekhine Defense: Four Pawns Attack, Trifunovic Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 f4 Bf5 +B03 Alekhine Defense: Hunt Variation e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 c5 +B03 Alekhine Defense: Modern Variation, Alekhine Gambit e4 Nf6 e5 Nd5 d4 d6 c4 Nb6 Nf3 Bg4 Be2 +B03 Alekhine Defense: O'Sullivan Gambit e4 Nf6 e5 Nd5 d4 b5 +B04 Alekhine Defense: Modern Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 +B04 Alekhine Defense: Modern Variation, Alburt Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 g6 +B04 Alekhine Defense: Modern Variation, Keres Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 g6 Bc4 Nb6 Bb3 Bg7 a4 +B04 Alekhine Defense: Modern Variation, Larsen Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 dxe5 +B04 Alekhine Defense: Modern Variation, Larsen-Haakert Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 Nc6 +B04 Alekhine Defense: Modern Variation, Schmid Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 Nb6 +B05 Alekhine Defense: Modern Variation, Alekhine Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 Bg4 c4 +B05 Alekhine Defense: Modern Variation, Flohr Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 Bg4 Be2 c6 +B05 Alekhine Defense: Modern Variation, Main Line e4 Nf6 e5 Nd5 d4 d6 Nf3 Bg4 +B05 Alekhine Defense: Modern Variation, Panov Variation e4 Nf6 e5 Nd5 d4 d6 Nf3 Bg4 h3 +B05 Alekhine Defense: Modern Variation, Vitolins Attack e4 Nf6 e5 Nd5 d4 d6 Nf3 Bg4 c4 Nb6 d5 +B06 Modern Defense e4 g6 +B06 Modern Defense e4 g6 d4 Bg7 +B06 Modern Defense: Anti-Modern e4 g6 d4 Bg7 Nc3 c6 Bc4 d6 Qe2 +B06 Modern Defense: Bishop Attack e4 g6 d4 Bg7 Bc4 +B06 Modern Defense: Bishop Attack, Bücker Gambit e4 g6 d4 Bg7 Bc4 b5 +B06 Modern Defense: Bishop Attack, Monkey's Bum e4 g6 Bc4 Bg7 Qf3 e6 d4 Bxd4 +B06 Modern Defense: Dunworthy Variation e4 g6 d4 Bg7 c4 d5 exd5 c6 dxc6 Bxd4 +B06 Modern Defense: Fianchetto Gambit e4 g6 d4 f5 +B06 Modern Defense: Gurgenidze Defense e4 g6 d4 Bg7 Nc3 c6 f4 d5 e5 h5 +B06 Modern Defense: Lizard Defense, Mittenberger Gambit e4 g6 d4 Bg7 Nc3 d5 +B06 Modern Defense: Masur Gambit e4 g6 d4 Nh6 Nc3 f5 Bxh6 Bxh6 exf5 O-O +B06 Modern Defense: Modern Pterodactyl e4 g6 d4 Bg7 Nc3 c5 +B06 Modern Defense: Mongredien Defense, with Nc3 e4 g6 d4 Bg7 Nc3 b6 +B06 Modern Defense: Mongredien Defense, with Nf3 e4 g6 d4 Bg7 Nf3 b6 +B06 Modern Defense: Norwegian Defense e4 g6 d4 Nf6 +B06 Modern Defense: Norwegian Defense, Norwegian Gambit e4 g6 d4 Nf6 e5 Nh5 Be2 d6 +B06 Modern Defense: Pseudo-Austrian Attack e4 g6 d4 Bg7 Nc3 d6 f4 +B06 Modern Defense: Semi-Averbakh Variation, Pterodactyl Variation Declined e4 g6 d4 Bg7 c4 c5 Nf3 d6 Be2 Qa5 +B06 Modern Defense: Standard Defense e4 g6 d4 Bg7 Nc3 d6 +B06 Modern Defense: Standard Line e4 g6 d4 Bg7 Nc3 +B06 Modern Defense: Three Pawns Attack e4 g6 d4 Bg7 f4 +B06 Modern Defense: Two Knights Variation e4 g6 d4 Bg7 Nc3 d6 Nf3 +B06 Modern Defense: Two Knights Variation, Suttles Variation e4 g6 d4 Bg7 Nc3 c6 Nf3 d6 +B06 Modern Defense: Two Knights Variation, Suttles Variation, Tal Gambit e4 g6 d4 Bg7 Nc3 d6 Nf3 c6 Bg5 Qb6 Qd2 Qxb2 +B06 Modern Defense: Westermann Gambit e4 g6 d4 Bg7 Bd2 +B06 Modern Defense: Wind Gambit e4 g6 d4 Bg7 Bd3 +B06 Pterodactyl Defense: Austrian, Austriadactylus Western e4 g6 d4 Bg7 f4 c5 Nf3 Qa5 +B06 Pterodactyl Defense: Austrian, Grand Prix Pterodactyl e4 g6 Nc3 Bg7 f4 c5 Nf3 Qa5 +B06 Pterodactyl Defense: Austrian, Pteranodon e4 g6 d4 Bg7 f4 c5 c3 Qa5 +B06 Pterodactyl Defense: Central, Anhanguera e4 g6 d4 Bg7 c4 c5 Nc3 d6 Be3 Qa5 +B06 Pterodactyl Defense: Central, Benoni Quetzalcoatlus e4 g6 d4 Bg7 c4 c5 d5 d6 Nc3 Qa5 +B06 Pterodactyl Defense: Central, Quetzalcoatlus Gambit e4 g6 d4 Bg7 c4 c5 Nc3 d6 dxc5 Qa5 +B06 Pterodactyl Defense: Eastern, Anhanguera e4 g6 d4 Bg7 Nc3 c5 Be3 +B06 Pterodactyl Defense: Eastern, Benoni d4 g6 e4 Bg7 Nc3 c5 d5 +B06 Pterodactyl Defense: Eastern, Benoni Pteranodon e4 g6 d4 Bg7 Nc3 c5 d5 Bxc3 bxc3 Qa5 +B06 Pterodactyl Defense: Eastern, Benoni Pterodactyl d4 g6 Nc3 Bg7 e4 c5 d5 Qa5 +B06 Pterodactyl Defense: Eastern, Pteranodon e4 g6 d4 Bg7 Nc3 c5 dxc5 Bxc3 bxc3 Qa5 +B06 Pterodactyl Defense: Eastern, Rhamphorhynchus e4 g6 d4 Bg7 Nc3 c5 dxc5 Qa5 +B06 Pterodactyl Defense: Fianchetto, King Pterodactyl e4 g6 d4 Bg7 g3 c5 Nf3 Qa5 +B06 Pterodactyl Defense: Fianchetto, Rhamphorhynchus e4 g6 d4 Bg7 g3 c5 dxc5 Qa5 +B06 Pterodactyl Defense: Sicilian, Quetzalcoatlus e4 g6 d4 Bg7 Nc3 c5 Nf3 Qa5 Be2 d6 +B06 Pterodactyl Defense: Sicilian, Siroccopteryx e4 g6 d4 Bg7 Nc3 c5 Nf3 Qa5 Bc4 +B06 Pterodactyl Defense: Western, Anhanguera e4 g6 d4 Bg7 Nf3 c5 Be3 Qa5 +B06 Pterodactyl Defense: Western, Siroccopteryx e4 g6 Nf3 Bg7 d4 c5 Bc4 cxd4 Nxd4 Qa5 +B06 Rat Defense: Accelerated Gurgenidze e4 g6 d4 d6 Nc3 c6 +B07 Czech Defense e4 d6 d4 Nf6 Nc3 c6 +B07 King's Pawn Game: Maróczy Defense e4 d6 d4 e5 +B07 Lion Defense e4 d6 d4 Nf6 Nc3 Nbd7 +B07 Lion Defense: Anti-Philidor e4 d6 d4 Nf6 Nc3 Nbd7 f4 +B07 Lion Defense: Anti-Philidor, Lion's Cave e4 d6 d4 Nf6 Nc3 Nbd7 f4 e5 +B07 Lion Defense: Anti-Philidor, Lion's Cave, Lion Claw Gambit e4 d6 d4 Nf6 Nc3 Nbd7 f4 e5 Nf3 exd4 Qxd4 c6 Bc4 d5 +B07 Lion Defense: Bayonet Attack e4 d6 d4 Nf6 Nc3 Nbd7 g4 +B07 Modern Defense: Geller's System e4 g6 d4 Bg7 Nf3 d6 c3 +B07 Pirc Defense e4 d6 d4 Nf6 Nc3 g6 +B07 Pirc Defense: 150 Attack e4 d6 d4 Nf6 Nc3 g6 Be3 c6 Qd2 +B07 Pirc Defense: 150 Attack, Inner Doll Defense e4 d6 d4 Nf6 Nc3 g6 Be3 c6 Qd2 Bg4 +B07 Pirc Defense: 150 Attack, Sveshnikov-Jansa Attack e4 d6 d4 Nf6 Nc3 g6 Be3 c6 h3 +B07 Pirc Defense: Bayonet Attack e4 d6 d4 Nf6 Nc3 g6 Be2 Bg7 h4 +B07 Pirc Defense: Byrne Variation e4 d6 d4 Nf6 Nc3 g6 Bg5 +B07 Pirc Defense: Chinese Variation e4 d6 d4 Nf6 Nc3 g6 Be2 Bg7 g4 +B07 Pirc Defense: Kholmov System e4 d6 d4 Nf6 Nc3 g6 Bc4 +B07 Pirc Defense: Sveshnikov System e4 d6 d4 Nf6 Nc3 g6 g3 +B08 Pirc Defense: Classical Variation e4 d6 d4 Nf6 Nc3 g6 Nf3 +B08 Pirc Defense: Classical Variation e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 +B08 Pirc Defense: Classical Variation, Quiet System e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 Be2 +B08 Pirc Defense: Classical Variation, Quiet System, Chigorin Line e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 Be2 O-O O-O Nc6 +B08 Pirc Defense: Classical Variation, Quiet System, Czech Defense e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 Be2 O-O O-O c6 +B08 Pirc Defense: Classical Variation, Quiet System, Parma Defense e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 Be2 O-O O-O Bg4 +B08 Pirc Defense: Classical Variation, Schlechter Variation e4 d6 d4 Nf6 Nc3 g6 Nf3 Bg7 h3 +B09 Pirc Defense: Austrian Attack e4 d6 d4 Nf6 Nc3 g6 f4 +B09 Pirc Defense: Austrian Attack e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 O-O +B09 Pirc Defense: Austrian Attack, Dragon Formation e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 c5 +B09 Pirc Defense: Austrian Attack, Kurajica Variation e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 O-O Be3 +B09 Pirc Defense: Austrian Attack, Ljubojevic Variation e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Bc4 +B09 Pirc Defense: Austrian Attack, Unzicker Attack e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 O-O e5 +B09 Pirc Defense: Austrian Attack, Unzicker Attack, Bronstein Variation e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 O-O e5 Nfd7 h4 +B09 Pirc Defense: Austrian Attack, Weiss Variation e4 d6 d4 Nf6 Nc3 g6 f4 Bg7 Nf3 O-O Bd3 +B10 Caro-Kann Defense e4 c6 +B10 Caro-Kann Defense e4 c6 Nc3 +B10 Caro-Kann Defense e4 c6 Nc3 d5 +B10 Caro-Kann Defense: Accelerated Panov Attack e4 c6 c4 +B10 Caro-Kann Defense: Accelerated Panov Attack e4 c6 c4 d5 +B10 Caro-Kann Defense: Accelerated Panov Attack, Modern Variation e4 c6 c4 d5 exd5 cxd5 cxd5 Nf6 +B10 Caro-Kann Defense: Accelerated Panov Attack, Open Variation e4 c6 c4 e5 +B10 Caro-Kann Defense: Accelerated Panov Attack, Pseudo-Scandinavian e4 c6 c4 d5 exd5 Qxd5 +B10 Caro-Kann Defense: Accelerated Panov Attack, Van Weersel Attack e4 c6 c4 d5 cxd5 cxd5 Qb3 +B10 Caro-Kann Defense: Apocalypse Attack e4 c6 Nf3 d5 exd5 cxd5 Ne5 +B10 Caro-Kann Defense: Breyer Variation e4 c6 d3 +B10 Caro-Kann Defense: Breyer Variation, Stein Attack e4 c6 d3 d5 Nd2 g6 Ngf3 Bg7 g3 e5 Bg2 Ne7 O-O O-O b4 +B10 Caro-Kann Defense: Dinic Gambit e4 c6 Nf3 d5 d3 dxe4 Ng5 +B10 Caro-Kann Defense: Endgame Offer e4 c6 Nf3 d5 d3 +B10 Caro-Kann Defense: Endgame Variation e4 c6 Nf3 d5 d3 dxe4 dxe4 Qxd1 Kxd1 +B10 Caro-Kann Defense: Euwe Attack e4 c6 b3 +B10 Caro-Kann Defense: Goldman Variation e4 c6 Nc3 d5 Qf3 +B10 Caro-Kann Defense: Hector Gambit e4 c6 Nc3 d5 Nf3 dxe4 Ng5 +B10 Caro-Kann Defense: Hillbilly Attack e4 c6 Bc4 +B10 Caro-Kann Defense: Hillbilly Attack, Schaeffer Gambit e4 c6 Bc4 d5 Bb3 dxe4 Qh5 +B10 Caro-Kann Defense: Labahn Attack e4 c6 b4 +B10 Caro-Kann Defense: Labahn Attack, Double Gambit e4 c6 b4 d5 b5 +B10 Caro-Kann Defense: Labahn Attack, Polish Variation e4 c6 b4 e5 Bb2 +B10 Caro-Kann Defense: Scorpion-Horus Gambit e4 c6 Nc3 d5 d3 dxe4 Bg5 +B10 Caro-Kann Defense: Spike Variation e4 c6 g4 +B10 Caro-Kann Defense: Spike Variation, Scorpion-Grob Gambit e4 c6 g4 d5 Nc3 dxe4 d3 +B10 Caro-Kann Defense: St. Patrick's Attack e4 c6 Nc3 d5 h3 +B10 Caro-Kann Defense: Toikkanen Gambit e4 c6 c4 d5 e5 +B10 Caro-Kann Defense: Two Knights Attack e4 c6 Nc3 d5 Nf3 +B11 Caro-Kann Defense: Two Knights Attack, Mindeno Variation e4 c6 Nc3 d5 Nf3 Bg4 +B11 Caro-Kann Defense: Two Knights Attack, Mindeno Variation, Exchange Line e4 c6 Nc3 d5 Nf3 Bg4 h3 Bxf3 +B11 Caro-Kann Defense: Two Knights Attack, Mindeno Variation, Retreat Line e4 c6 Nc3 d5 Nf3 Bg4 h3 Bh5 +B12 Caro-Kann Defense e4 c6 d4 +B12 Caro-Kann Defense e4 c6 d4 d5 +B12 Caro-Kann Defense: Advance Variation e4 c6 d4 d5 e5 +B12 Caro-Kann Defense: Advance Variation, Bayonet Attack e4 c6 d4 d5 e5 Bf5 g4 +B12 Caro-Kann Defense: Advance Variation, Botvinnik-Carls Defense e4 c6 d4 d5 e5 c5 +B12 Caro-Kann Defense: Advance Variation, Bronstein Variation e4 c6 d4 d5 e5 Bf5 Ne2 +B12 Caro-Kann Defense: Advance Variation, Prins Attack e4 c6 d4 d5 e5 Bf5 b4 +B12 Caro-Kann Defense: Advance Variation, Short Variation e4 c6 d4 d5 e5 Bf5 Nf3 +B12 Caro-Kann Defense: Advance Variation, Tal Variation e4 c6 d4 d5 e5 Bf5 h4 +B12 Caro-Kann Defense: Advance Variation, Van der Wiel Attack e4 c6 d4 d5 e5 Bf5 Nc3 +B12 Caro-Kann Defense: Advance Variation, Van der Wiel Attack e4 c6 d4 d5 e5 Bf5 Nc3 e6 g4 Bg6 Nge2 c5 h4 +B12 Caro-Kann Defense: Advance Variation, Van der Wiel Attack, Dreyev Defense e4 c6 d4 d5 e5 Bf5 Nc3 Qb6 +B12 Caro-Kann Defense: Advance, Short Variation e4 c6 d4 d5 e5 Bf5 c3 e6 Be2 +B12 Caro-Kann Defense: De Bruycker Defense e4 c6 d4 Na6 +B12 Caro-Kann Defense: De Bruycker Defense e4 c6 d4 Na6 Nc3 Nc7 +B12 Caro-Kann Defense: Edinburgh Variation e4 c6 d4 d5 Nd2 Qb6 +B12 Caro-Kann Defense: Maróczy Variation e4 c6 d4 d5 f3 +B12 Caro-Kann Defense: Maróczy Variation, Maróczy Gambit e4 c6 d4 d5 f3 dxe4 fxe4 e5 Nf3 exd4 Bc4 +B12 Caro-Kann Defense: Masi Variation e4 c6 d4 Nf6 +B12 Caro-Kann Defense: Massachusetts Defense e4 c6 d4 f5 +B12 Caro-Kann Defense: Mieses Attack, Landau Gambit e4 c6 d4 d5 Bd3 Nf6 e5 Nfd7 e6 +B12 Caro-Kann Defense: Mieses Gambit e4 c6 d4 d5 Be3 +B12 Caro-Kann Defense: Modern Variation e4 c6 d4 d5 Nd2 +B12 Caro-Kann Defense: Ulysses Gambit e4 c6 d4 d5 Nf3 dxe4 Ng5 +B13 Caro-Kann Defense: Exchange Variation e4 c6 d4 d5 exd5 +B13 Caro-Kann Defense: Exchange Variation e4 c6 d4 d5 exd5 cxd5 +B13 Caro-Kann Defense: Exchange Variation e4 c6 d4 d5 exd5 cxd5 Bf4 +B13 Caro-Kann Defense: Exchange Variation e4 c6 d4 d5 exd5 cxd5 Nf3 Nc6 +B13 Caro-Kann Defense: Exchange Variation, Bulla Attack e4 c6 d4 d5 exd5 cxd5 g4 +B13 Caro-Kann Defense: Exchange Variation, Rubinstein Variation e4 c6 d4 d5 exd5 cxd5 Bd3 Nc6 c3 Nf6 Bf4 +B13 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 +B13 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 +B13 Caro-Kann Defense: Panov Attack, Gunderam Attack e4 c6 d4 d5 exd5 cxd5 c4 Nf6 c5 +B13 Caro-Kann Defense: Panov Attack, Modern Defense e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 +B13 Caro-Kann Defense: Panov Attack, Modern Defense, Carlsbad Line e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Bg5 e6 +B13 Caro-Kann Defense: Panov Attack, Modern Defense, Czerniak Line e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Bg5 Qa5 +B13 Caro-Kann Defense: Panov Attack, Modern Defense, Mieses Line e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Nf3 Bg4 +B13 Caro-Kann Defense: Panov Attack, Modern Defense, Reifir-Spielmann Line e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Bg5 Qb6 +B13 Caro-Kann Defense: Panov-Botvinnik, Herzog Defense e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Bg5 dxc4 d5 Na5 +B14 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 e6 +B14 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 Nc6 Nc3 Nf6 Nf3 e6 cxd5 exd5 Bb5 Bg4 +B14 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 Nc6 Nc3 Nf6 Nf3 e6 cxd5 exd5 Bb5 Bd6 Bg5 O-O O-O +B14 Caro-Kann Defense: Panov Attack e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 Nc6 Nf3 e6 c5 +B14 Caro-Kann Defense: Panov Attack, Fianchetto Defense e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 g6 +B14 Caro-Kann Defense: Panov Attack, Fianchetto Defense, Fianchetto Gambit e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 g6 cxd5 Bg7 +B14 Caro-Kann Defense: Panov Attack, Main Line e4 c6 d4 d5 exd5 cxd5 c4 Nf6 Nc3 e6 Nf3 Bb4 +B15 Caro-Kann Defense e4 c6 d4 d5 Nc3 +B15 Caro-Kann Defense e4 c6 d4 d5 Nc3 dxe4 +B15 Caro-Kann Defense: Alekhine Gambit e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Bd3 +B15 Caro-Kann Defense: Alien Gambit e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Ng5 h6 Nxf7 +B15 Caro-Kann Defense: Campomanes Attack e4 c6 d4 d5 Nc3 Nf6 +B15 Caro-Kann Defense: Forgacs Variation e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Nxf6 exf6 Bc4 +B15 Caro-Kann Defense: Gurgenidze Counterattack e4 c6 d4 d5 Nc3 b5 +B15 Caro-Kann Defense: Gurgenidze System e4 c6 d4 d5 Nc3 g6 +B15 Caro-Kann Defense: Main Line e4 c6 d4 d5 Nd2 dxe4 Nxe4 +B15 Caro-Kann Defense: Rasa-Studier Gambit e4 c6 d4 d5 Nc3 dxe4 f3 +B15 Caro-Kann Defense: Tartakower Variation e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Nxf6 exf6 +B15 Caro-Kann Defense: Tartakower Variation, Perlis Line e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Nxf6 exf6 c3 Bd6 Bd3 O-O Qc2 h6 +B15 Caro-Kann Defense: von Hennig Gambit e4 c6 d4 d5 Nc3 dxe4 Bc4 +B16 Caro-Kann Defense: Bronstein-Larsen Variation e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Nxf6 gxf6 +B16 Caro-Kann Defense: Finnish Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 h6 +B17 Caro-Kann Defense: Karpov Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 +B17 Caro-Kann Defense: Karpov Variation, Modern Main Line e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Ng5 Ngf6 Bd3 e6 N1f3 Bd6 Qe2 h6 Ne4 Nxe4 Qxe4 +B17 Caro-Kann Defense: Karpov Variation, Modern Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Ng5 +B17 Caro-Kann Defense: Karpov Variation, Modern Variation, Ivanchuk Defense e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Ng5 Ndf6 +B17 Caro-Kann Defense: Karpov Variation, Modern Variation, Kasparov Attack e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nd7 Nf3 Ngf6 Ng3 +B17 Caro-Kann Defense: Karpov Variation, Smyslov Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Bc4 Ngf6 Ng5 e6 Qe2 Nb6 +B17 Caro-Kann Defense: Karpov Variation, Smyslov Variation, Main Line e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Bc4 Ngf6 Ng5 e6 Qe2 Nb6 Bb3 +B17 Caro-Kann Defense: Karpov Variation, Tiviakov-Fischer Attack e4 c6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Bc4 Ngf6 Nxf6 Nxf6 +B18 Caro-Kann Defense: Classical Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 +B18 Caro-Kann Defense: Classical Variation, Flohr Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 Nh3 +B18 Caro-Kann Defense: Classical Variation, Main Line e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 +B18 Caro-Kann Defense: Classical Variation, Maróczy Attack e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 f4 +B18 Caro-Kann Defense: Martian Gambit e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng5 Bg6 N1f3 h6 Ne6 +B19 Caro-Kann Defense: Classical Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 h6 Nf3 Nd7 +B19 Caro-Kann Defense: Classical Variation, Lobron System e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 h6 Nf3 Nd7 h5 Bh7 Bd3 Bxd3 Qxd3 e6 Bd2 Ngf6 O-O-O Be7 +B19 Caro-Kann Defense: Classical Variation, Seirawan Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 h6 Nf3 Nd7 h5 Bh7 Bd3 Bxd3 Qxd3 Ngf6 Bd2 e6 O-O-O Bd6 +B19 Caro-Kann Defense: Classical Variation, Spassky Variation e4 c6 d4 d5 Nd2 dxe4 Nxe4 Bf5 Ng3 Bg6 h4 h6 Nf3 Nd7 h5 +B20 Sicilian Defense e4 c5 +B20 Sicilian Defense: Amazon Attack e4 c5 Qg4 +B20 Sicilian Defense: Big Clamp Formation e4 c5 d3 Nc6 c3 d6 f4 +B20 Sicilian Defense: Bowdler Attack e4 c5 Bc4 +B20 Sicilian Defense: Brick Variation e4 c5 Nh3 +B20 Sicilian Defense: Czerniak Attack e4 c5 b3 +B20 Sicilian Defense: Czerniak Attack, Queen Fianchetto Variation e4 c5 b3 b6 +B20 Sicilian Defense: Euwe Attack, Prins Gambit e4 c5 b3 d5 Bb2 +B20 Sicilian Defense: Gloria Variation e4 c5 c4 d6 Nc3 Nc6 g3 h5 +B20 Sicilian Defense: Grob Variation e4 c5 g4 +B20 Sicilian Defense: Keres Variation e4 c5 Ne2 +B20 Sicilian Defense: King David's Opening e4 c5 Ke2 +B20 Sicilian Defense: Kronberger Variation e4 c5 Na3 +B20 Sicilian Defense: Kronberger Variation, Nemeth Gambit e4 c5 Na3 Nc6 d4 cxd4 Bc4 +B20 Sicilian Defense: Lasker-Dunne Attack e4 c5 g3 +B20 Sicilian Defense: Mengarini Variation e4 c5 a3 +B20 Sicilian Defense: Myers Attack, with a4 e4 c5 a4 +B20 Sicilian Defense: Myers Attack, with h4 e4 c5 h4 +B20 Sicilian Defense: Staunton-Cochrane Variation e4 c5 c4 +B20 Sicilian Defense: Wing Gambit e4 c5 b4 +B20 Sicilian Defense: Wing Gambit, Abrahams Variation e4 c5 b4 cxb4 Bb2 +B20 Sicilian Defense: Wing Gambit, Carlsbad Variation e4 c5 b4 cxb4 a3 bxa3 +B20 Sicilian Defense: Wing Gambit, Marienbad Variation e4 c5 b4 cxb4 a3 d5 exd5 Qxd5 Bb2 +B20 Sicilian Defense: Wing Gambit, Marshall Variation e4 c5 b4 cxb4 a3 +B20 Sicilian Defense: Wing Gambit, Nanu Gambit e4 c5 b4 cxb4 a3 d5 exd5 Qxd5 Nf3 e5 c4 Qe6 Bd3 +B20 Sicilian Defense: Wing Gambit, Romanian Defense e4 c5 b4 cxb4 a3 d5 exd5 Qxd5 Nf3 e5 Bb2 Nc6 c4 Qe6 +B20 Sicilian Defense: Wing Gambit, Santasiere Variation e4 c5 b4 cxb4 c4 +B21 Bird Opening: Dutch Variation, Batavo Gambit e4 c5 f4 d5 Nf3 dxe4 +B21 Sicilian Defense: Coles Sicilian Gambit e4 c5 d4 cxd4 Qxd4 Nc6 Qd1 Nf6 Bc4 +B21 Sicilian Defense: Halasz Gambit e4 c5 d4 cxd4 f4 +B21 Sicilian Defense: McDonnell Attack e4 c5 f4 +B21 Sicilian Defense: McDonnell Attack, Tal Gambit e4 c5 f4 d5 exd5 Nf6 +B21 Sicilian Defense: McDonnell Attack, Toilet Variation e4 c5 f4 d5 Nc3 +B21 Sicilian Defense: Morphy Gambit e4 c5 d4 cxd4 Nf3 +B21 Sicilian Defense: Morphy Gambit, Andreaschek Gambit e4 c5 d4 cxd4 Nf3 e5 c3 +B21 Sicilian Defense: Smith-Morra Gambit e4 c5 d4 +B21 Sicilian Defense: Smith-Morra Gambit e4 c5 d4 cxd4 c3 +B21 Sicilian Defense: Smith-Morra Gambit Accepted e4 c5 d4 cxd4 c3 dxc3 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Chicago Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Bc4 e6 Nf3 d6 O-O a6 Qe2 b5 Bb3 Ra7 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Chicago Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 d6 Nf3 e6 Bc4 Nf6 O-O a6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Classical Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 d6 Bc4 a6 O-O Nf6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Danish Variation e4 c5 d4 cxd4 c3 dxc3 Nf3 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Fianchetto Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 g6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Fianchetto Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 g6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Fianchetto Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 d6 Bc4 g6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Fianchetto Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 d6 Nf3 g6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Finegold Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 e6 Nf3 d6 Bc4 a6 O-O Be7 Qe2 Nf6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Kan Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 e6 Nf3 a6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Larsen Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 Qc7 Qe2 a6 O-O Bd6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Morphy Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 Bc5 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Morphy Defense Deferred e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 a6 O-O b5 Bb3 Bc5 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Paulsen Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 a6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Pin Defense e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 Bb4 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Scheveningen Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 d6 Bc4 e6 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Siberian Variation e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 Qc7 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Siberian Variation, Siberian Trap e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Nf3 e6 Bc4 Qc7 Qe2 Nf6 O-O Ng4 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Sozin Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 Nc6 Bc4 e6 Nf3 d6 O-O a6 Qe2 b5 +B21 Sicilian Defense: Smith-Morra Gambit Accepted, Taimanov Formation e4 c5 d4 cxd4 c3 dxc3 Nxc3 e6 Bc4 a6 Nf3 Ne7 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Alapin Formation e4 c5 d4 cxd4 c3 Nf6 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Center Formation e4 c5 d4 cxd4 c3 e5 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Dubois Variation e4 c5 d4 cxd4 c3 d3 c4 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Push Variation e4 c5 d4 cxd4 c3 d3 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Scandinavian Formation e4 c5 d4 cxd4 c3 d5 +B21 Sicilian Defense: Smith-Morra Gambit Declined, Wing Formation e4 c5 d4 cxd4 c3 Qa5 +B22 Sicilian Defense: Alapin Variation e4 c5 c3 +B22 Sicilian Defense: Alapin Variation, Anti-Alapin Gambit e4 c5 c3 d5 exd5 Nf6 +B22 Sicilian Defense: Alapin Variation, Barmen Defense e4 c5 c3 d5 exd5 Qxd5 +B22 Sicilian Defense: Alapin Variation, Barmen Defense e4 c5 c3 d5 exd5 Qxd5 d4 g6 Nf3 +B22 Sicilian Defense: Alapin Variation, Barmen Defense e4 c5 c3 d5 exd5 Qxd5 d4 Nc6 Nf3 +B22 Sicilian Defense: Alapin Variation, Barmen Defense, Central Exchange e4 c5 c3 d5 exd5 Qxd5 d4 cxd4 cxd4 Nc6 Nf3 Bg4 +B22 Sicilian Defense: Alapin Variation, Barmen Defense, Endgame Variation e4 c5 c3 d5 exd5 Qxd5 d4 cxd4 cxd4 Nc6 Nf3 Bg4 Nc3 Bxf3 gxf3 Qxd4 Qxd4 Nxd4 +B22 Sicilian Defense: Alapin Variation, Barmen Defense, Milner-Barry Attack e4 c5 c3 d5 exd5 Qxd5 d4 Nc6 Nf3 cxd4 cxd4 e5 Nc3 Bb4 Be2 +B22 Sicilian Defense: Alapin Variation, Barmen Defense, Modern Line e4 c5 c3 d5 exd5 Qxd5 d4 Nf6 Nf3 Bg4 +B22 Sicilian Defense: Alapin Variation, Smith-Morra Declined e4 c5 c3 Nf6 e5 Nd5 d4 cxd4 +B22 Sicilian Defense: Alapin Variation, Stoltz Attack e4 c5 c3 Nf6 e5 Nd5 Nf3 Nc6 Bc4 Nb6 Bb3 +B22 Sicilian Defense: Alapin Variation, Stoltz Attack, Ivanchuk Line e4 c5 c3 Nf6 e5 Nd5 Nf3 Nc6 Bc4 Nb6 Bb3 c4 Bc2 Qc7 Qe2 g5 +B22 Sicilian Defense: Delayed Alapin Variation e4 c5 Nf3 e6 c3 d5 exd5 Qxd5 d4 Nf6 +B22 Sicilian Defense: Delayed Alapin Variation e4 c5 Nf3 e6 c3 d5 exd5 exd5 Bb5 Nc6 O-O Bd6 d4 +B22 Sicilian Defense: Heidenfeld Variation e4 c5 c3 Nf6 e5 Nd5 Nf3 Nc6 Na3 +B23 Sicilian Defense: Closed e4 c5 Nc3 +B23 Sicilian Defense: Closed e4 c5 Nc3 e6 +B23 Sicilian Defense: Closed e4 c5 Nc3 e6 g3 +B23 Sicilian Defense: Closed, Carlsen Variation e4 c5 Nc3 d6 d4 cxd4 Qxd4 Nc6 Qd2 +B23 Sicilian Defense: Closed, Chameleon Variation e4 c5 Nc3 Nc6 Nge2 +B23 Sicilian Defense: Closed, Grob Attack e4 c5 Nc3 Nc6 g4 +B23 Sicilian Defense: Closed, Korchnoi Defense e4 c5 Nc3 e6 g3 d5 +B23 Sicilian Defense: Closed, Portland Attack e4 c5 Nc3 Nc6 d3 g6 g4 +B23 Sicilian Defense: Closed, Traditional e4 c5 Nc3 Nc6 +B23 Sicilian Defense: Grand Prix Attack e4 c5 Nc3 Nc6 f4 +B23 Sicilian Defense: Grand Prix Attack, Schofman Variation e4 c5 Nc3 Nc6 f4 g6 Nf3 Bg7 Bc4 e6 f5 +B24 Sicilian Defense: Closed e4 c5 Nc3 Nc6 g3 g6 +B24 Sicilian Defense: Closed e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 +B24 Sicilian Defense: Closed, Fianchetto Variation e4 c5 Nc3 Nc6 g3 +B24 Sicilian Defense: Closed, Smyslov Variation e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 e6 Be3 Nd4 Nce2 +B25 Sicilian Defense: Closed e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 +B25 Sicilian Defense: Closed e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 f4 +B25 Sicilian Defense: Closed, Botvinnik Defense, Edge Variation e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 f4 e5 Nh3 Nge7 +B25 Sicilian Defense: Closed, Botvinnik Defense, with Nge2 e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 Nge2 e5 +B25 Sicilian Defense: Closed, Botvinnik Defense, with f4 e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 f4 e5 +B26 Sicilian Defense: Closed e4 c5 Nc3 Nc6 g3 g6 Bg2 Bg7 d3 d6 Be3 +B27 Modern Defense: Pterodactyl Variation e4 c5 Nf3 g6 d4 Bg7 Nc3 Qa5 +B27 Pterodactyl Defense: Sicilian, Anhanguera e4 c5 Nf3 g6 d4 Bg7 Nc3 Qa5 Be3 +B27 Pterodactyl Defense: Sicilian, Benoni Gambit e4 c5 Nf3 g6 d4 Bg7 Nc3 Qa5 d5 +B27 Pterodactyl Defense: Sicilian, Pteranodon e4 c5 Nf3 g6 d4 Bg7 dxc5 Qa5 Nc3 Bxc3 bxc3 +B27 Pterodactyl Defense: Sicilian, Rhamphorhynchus e4 c5 Nf3 g6 d4 Bg7 dxc5 Qa5 Nc3 +B27 Pterodactyl Defense: Sicilian, Unpin e4 c5 Nf3 g6 d4 Bg7 Nc3 Qa5 Bd2 +B27 Pterodactyl Defense: Western, Pterodactyl e4 c5 Nf3 g6 c3 Bg7 d4 Qa5 +B27 Pterodactyl Defense: Western, Rhamphorhynchus e4 c5 Nf3 g6 d4 Bg7 dxc5 Qa5 +B27 Sicilian Defense e4 c5 Nf3 +B27 Sicilian Defense: Acton Extension e4 c5 Nf3 g6 c4 Bh6 +B27 Sicilian Defense: Brussels Gambit e4 c5 Nf3 f5 +B27 Sicilian Defense: Bücker Variation e4 c5 Nf3 h6 +B27 Sicilian Defense: Double-Dutch Gambit e4 c5 Nf3 f5 exf5 Nh6 +B27 Sicilian Defense: Frederico Variation e4 c5 Nf3 g6 d4 f5 +B27 Sicilian Defense: Hyperaccelerated Dragon e4 c5 Nf3 g6 +B27 Sicilian Defense: Hyperaccelerated Dragon e4 c5 Nf3 g6 d4 +B27 Sicilian Defense: Hyperaccelerated Pterodactyl e4 c5 Nf3 g6 d4 Bg7 +B27 Sicilian Defense: Hyperaccelerated Pterodactyl, Exchange Variation e4 c5 Nf3 g6 d4 Bg7 dxc5 Qa5 Nc3 Bxc3 bxc3 Qxc3 +B27 Sicilian Defense: Jalalabad Variation e4 c5 Nf3 e5 +B27 Sicilian Defense: Katalimov Variation e4 c5 Nf3 b6 +B27 Sicilian Defense: Mongoose Variation e4 c5 Nf3 Qa5 +B27 Sicilian Defense: Polish Gambit e4 c5 Nf3 b5 +B27 Sicilian Defense: Quinteros Variation e4 c5 Nf3 Qc7 +B28 Sicilian Defense: O'Kelly Variation e4 c5 Nf3 a6 +B28 Sicilian Defense: O'Kelly Variation, Aronin System e4 c5 Nf3 a6 Be2 +B28 Sicilian Defense: O'Kelly Variation, Kieseritzky System e4 c5 Nf3 a6 b3 +B28 Sicilian Defense: O'Kelly Variation, Maróczy Bind e4 c5 Nf3 a6 c4 +B28 Sicilian Defense: O'Kelly Variation, Maróczy Bind, Paulsen Line e4 c5 Nf3 a6 c4 e6 +B28 Sicilian Defense: O'Kelly Variation, Maróczy Bind, Robatsch Line e4 c5 Nf3 a6 c4 d6 +B28 Sicilian Defense: O'Kelly Variation, Normal System e4 c5 Nf3 a6 d4 +B28 Sicilian Defense: O'Kelly Variation, Normal System, Cortlever Gambit e4 c5 Nf3 a6 d4 cxd4 Bc4 +B28 Sicilian Defense: O'Kelly Variation, Normal System, Smith-Morra Line e4 c5 Nf3 a6 d4 cxd4 c3 +B28 Sicilian Defense: O'Kelly Variation, Normal System, Taimanov Line e4 c5 Nf3 a6 d4 cxd4 Nxd4 e5 +B28 Sicilian Defense: O'Kelly Variation, Normal System, Zagorovsky Line e4 c5 Nf3 a6 d4 cxd4 Qxd4 +B28 Sicilian Defense: O'Kelly Variation, Quiet System e4 c5 Nf3 a6 d3 +B28 Sicilian Defense: O'Kelly Variation, Réti System e4 c5 Nf3 a6 g3 +B28 Sicilian Defense: O'Kelly Variation, Venice System e4 c5 Nf3 a6 c3 +B28 Sicilian Defense: O'Kelly Variation, Venice System, Barcza Line e4 c5 Nf3 a6 c3 Nf6 +B28 Sicilian Defense: O'Kelly Variation, Venice System, Gambit Line e4 c5 Nf3 a6 c3 d5 exd5 Nf6 +B28 Sicilian Defense: O'Kelly Variation, Venice System, Ljubojevic Line e4 c5 Nf3 a6 c3 b5 +B28 Sicilian Defense: O'Kelly Variation, Venice System, Steiner Line e4 c5 Nf3 a6 c3 d6 +B28 Sicilian Defense: O'Kelly Variation, Wing Gambit e4 c5 Nf3 a6 b4 +B28 Sicilian Defense: O'Kelly Variation, Yerevan System e4 c5 Nf3 a6 Nc3 +B29 Sicilian Defense: Nimzowitsch Variation e4 c5 Nf3 Nf6 +B29 Sicilian Defense: Nimzowitsch Variation, Advance Variation e4 c5 Nf3 Nf6 e5 +B29 Sicilian Defense: Nimzowitsch Variation, Closed Variation e4 c5 Nf3 Nf6 Nc3 +B29 Sicilian Defense: Nimzowitsch Variation, Exchange Variation e4 c5 Nf3 Nf6 e5 Nd5 Nc3 Nxc3 +B29 Sicilian Defense: Nimzowitsch Variation, Main Line e4 c5 Nf3 Nf6 e5 Nd5 Nc3 e6 Nxd5 exd5 d4 Nc6 +B30 Sicilian Defense: Closed, Anti-Sveshnikov Variation e4 c5 Nf3 Nc6 Nc3 e5 +B30 Sicilian Defense: Closed, Anti-Sveshnikov Variation, Kharlov-Kramnik Line e4 c5 Nf3 Nc6 Nc3 e5 Bc4 Be7 d3 d6 Nd2 Bg5 +B30 Sicilian Defense: Closed, Anti-Sveshnikov Variation, with Nf6 e4 c5 Nf3 Nc6 Nc3 e5 Bc4 Be7 d3 Nf6 +B30 Sicilian Defense: Closed, Anti-Sveshnikov Variation, with d6 e4 c5 Nf3 Nc6 Nc3 e5 Bc4 Be7 d3 d6 +B30 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack e4 c5 Nf3 Nc6 Bb5 +B30 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Brooklyn Retreat Defense e4 c5 Nf3 Nc6 Bb5 Nb8 +B30 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, San Francisco Gambit e4 c5 Nf3 Nc6 Bb5 Na5 b4 +B30 Sicilian Defense: Old Sicilian e4 c5 Nf3 Nc6 +B30 Sicilian Defense: Portsmouth Gambit e4 c5 Nf3 Nc6 b4 +B31 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Fianchetto Variation e4 c5 Nf3 Nc6 Bb5 g6 +B31 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Fianchetto Variation, Gufeld Gambit e4 c5 Nf3 Nc6 Bb5 g6 O-O Bg7 c3 e5 d4 +B31 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Fianchetto Variation, Lutikov Gambit e4 c5 Nf3 Nc6 Bb5 g6 O-O Bg7 c3 Nf6 d4 +B31 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Fianchetto Variation, Totsky Attack e4 c5 Nf3 Nc6 Bb5 g6 O-O Bg7 c3 Nf6 Qa4 +B31 Sicilian Defense: Nyezhmetdinov-Rossolimo Attack, Gurgenidze Variation e4 c5 Nf3 Nc6 Bb5 g6 O-O Bg7 Re1 e5 b4 +B32 Sicilian Defense: Accelerated Dragon e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 +B32 Sicilian Defense: Flohr Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Qc7 +B32 Sicilian Defense: Franco-Sicilian Variation e4 c5 Nf3 Nc6 d4 e6 +B32 Sicilian Defense: Godiva Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Qb6 +B32 Sicilian Defense: Kalashnikov Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 e5 Nb5 d6 +B32 Sicilian Defense: Löwenthal Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 e5 +B32 Sicilian Defense: Nimzo-American Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 d5 +B32 Sicilian Defense: O'Kelly Variation, Maróczy Bind, Geller Line e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 a6 c4 e5 +B32 Sicilian Defense: Open e4 c5 Nf3 Nc6 d4 +B32 Sicilian Defense: Open e4 c5 Nf3 Nc6 d4 cxd4 +B32 Sicilian Defense: Open e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 +B33 Sicilian Defense: Lasker-Pelikan Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 +B33 Sicilian Defense: Lasker-Pelikan Variation, Bird Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 Be6 +B33 Sicilian Defense: Lasker-Pelikan Variation, Exchange Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Nxc6 +B33 Sicilian Defense: Lasker-Pelikan Variation, Retreat Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Nf3 +B33 Sicilian Defense: Lasker-Pelikan Variation, Schlechter Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Nb3 +B33 Sicilian Defense: Lasker-Pelikan Variation, Sveshnikov Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 b5 +B33 Sicilian Defense: Lasker-Pelikan Variation, Sveshnikov Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 b5 Bxf6 gxf6 Nd5 f5 +B33 Sicilian Defense: Lasker-Pelikan Variation, Sveshnikov Variation, Chelyabinsk Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 b5 Nd5 +B33 Sicilian Defense: Lasker-Pelikan Variation, Sveshnikov Variation, Novosibirsk Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 b5 Bxf6 gxf6 Nd5 Bg7 +B33 Sicilian Defense: Lasker-Pelikan Variation, Sveshnikov Variation, Peresypkin's Sacrifice e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Ndb5 d6 Bg5 a6 Na3 b5 Bxf6 gxf6 Nd5 f5 Bxb5 +B33 Sicilian Defense: Open e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 +B34 Sicilian Defense: Accelerated Dragon, Exchange Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nxc6 +B34 Sicilian Defense: Accelerated Dragon, Modern Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nc3 +B35 Sicilian Defense: Accelerated Dragon, Modern Bc4 Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nc3 Bg7 Be3 Nf6 Bc4 +B35 Sicilian Defense: Dragon Variation, Modern Bc4 Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nc3 Bg7 Be3 Nf6 Bc4 d6 +B36 Sicilian Defense: Accelerated Dragon, Maróczy Bind e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 +B36 Sicilian Defense: Accelerated Dragon, Maróczy Bind, Gurgenidze Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 Nf6 Nc3 Nxd4 Qxd4 d6 +B37 Sicilian Defense: Accelerated Dragon, Maróczy Bind e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 Bg7 +B37 Sicilian Defense: Accelerated Dragon, Simagin Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 Bg7 Nc2 d6 Be2 Nh6 +B38 Sicilian Defense: Accelerated Dragon, Maróczy Bind e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 Bg7 Be3 +B39 Sicilian Defense: Accelerated Dragon, Maróczy Bind, Breyer Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 c4 Bg7 Be3 Nf6 Nc3 Ng4 +B40 Sicilian Defense: Alapin Variation, Sherzer Variation e4 c5 Nf3 e6 c3 Nf6 e5 Nd5 d4 Nc6 +B40 Sicilian Defense: Delayed Alapin Variation, with e6 e4 c5 Nf3 e6 c3 +B40 Sicilian Defense: Drazic Variation e4 c5 Nf3 e6 d4 a6 +B40 Sicilian Defense: French Variation e4 c5 Nf3 e6 +B40 Sicilian Defense: French Variation, Normal e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 +B40 Sicilian Defense: French Variation, Open e4 c5 Nf3 e6 d4 cxd4 +B40 Sicilian Defense: French Variation, Westerinen Attack e4 c5 Nf3 e6 b3 +B40 Sicilian Defense: Gaw-Paw Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 Qb6 +B40 Sicilian Defense: Kan Variation, Wing Attack, Fianchetto Variation e4 c5 Nf3 e6 Nc3 a6 g3 b5 d4 cxd4 Nxd4 +B40 Sicilian Defense: Kramnik Variation e4 c5 Nf3 e6 c4 +B40 Sicilian Defense: Kveinis Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Qb6 +B40 Sicilian Defense: Marshall Counterattack e4 c5 Nf3 e6 d4 d5 +B40 Sicilian Defense: Paulsen-Basman Defense e4 c5 Nf3 e6 d4 cxd4 Nxd4 Bc5 +B40 Sicilian Defense: Pin Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 Bb4 +B40 Sicilian Defense: Pin Variation, Jaffe Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 Bb4 Bd3 e5 +B40 Sicilian Defense: Pin Variation, Koch Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 Bb4 e5 +B40 Sicilian Defense: Smith-Morra Gambit Deferred e4 c5 Nf3 e6 d4 cxd4 c3 +B40 Sicilian Defense: Wing Gambit Deferred e4 c5 Nf3 e6 b4 +B41 Sicilian Defense: Kan Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 +B41 Sicilian Defense: Kan Variation, Maróczy Bind, Bronstein Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 c4 Nf6 Nc3 Bb4 Bd3 Nc6 +B41 Sicilian Defense: Kan Variation, Maróczy Bind, Bronstein Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 c4 Nf6 Nc3 Bb4 Bd3 Nc6 Bc2 +B41 Sicilian Defense: Kan Variation, Maróczy Bind, Hedgehog Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 c4 g6 +B41 Sicilian Defense: Kan Variation, Maróczy Bind, Réti Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 c4 +B42 Sicilian Defense: Kan Variation, Gipslis Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Bd3 Nf6 O-O d6 c4 g6 +B42 Sicilian Defense: Kan Variation, Modern Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Bd3 +B42 Sicilian Defense: Kan Variation, Polugaevsky Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Bd3 Bc5 +B42 Sicilian Defense: Kan Variation, Swiss Cheese Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Bd3 g6 +B43 Sicilian Defense: Kan Variation, Knight Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Nc3 +B43 Sicilian Defense: Kan Variation, Wing Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Nc3 b5 +B43 Sicilian Defense: Kan Variation, Wing Attack, Christiansen's Dream e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Nc3 b5 Bd3 Qb6 Be3 Bc5 Qg4 +B43 Sicilian Defense: Kan Variation, Wing Attack, Spraggett Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 a6 Nc3 b5 Bd3 Qb6 Nf3 +B44 Sicilian Defense: Taimanov Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 +B44 Sicilian Defense: Taimanov Variation, Gary Gambit e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nb5 d6 c4 Nf6 N1c3 a6 Na3 d5 +B44 Sicilian Defense: Taimanov Variation, Modern Line e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nb5 d6 c4 Nf6 N1c3 a6 Na3 Be7 Be2 O-O O-O b6 +B44 Sicilian Defense: Taimanov Variation, Szén Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nb5 +B45 Sicilian Defense: Four Knights Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Nf6 +B45 Sicilian Defense: Four Knights Variation, American Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Nf6 Ndb5 Bb4 Nd6 +B45 Sicilian Defense: Four Knights Variation, Cobra Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Nf6 Ndb5 Bc5 +B45 Sicilian Defense: Four Knights Variation, Exchange Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Nf6 Nxc6 +B45 Sicilian Defense: Four Knights Variation, Sveshnikov Transfer e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Nf6 Ndb5 d6 +B45 Sicilian Defense: Taimanov Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 +B46 Sicilian Defense: Taimanov Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 a6 +B47 Sicilian Defense: Taimanov Variation, Bastrikov Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 +B47 Sicilian Defense: Taimanov Variation, Bastrikov Variation, Ponomariov Gambit e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Ndb5 Qb8 Be3 a6 Bb6 +B48 Sicilian Defense: Taimanov Variation, Bastrikov Variation, English Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Be3 +B49 Sicilian Defense: Taimanov Variation, Bastrikov Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Be3 a6 Be2 +B50 Sicilian Defense e4 c5 Nf3 d6 d4 +B50 Sicilian Defense e4 c5 Nf3 d6 d4 cxd4 +B50 Sicilian Defense: Delayed Alapin Variation, Basman-Palatnik Double Gambit e4 c5 Nf3 d6 c3 Nf6 Be2 Nc6 d4 cxd4 cxd4 Nxe4 d5 Qa5 Nc3 Nxc3 bxc3 +B50 Sicilian Defense: Delayed Alapin Variation, Basman-Palatnik Gambit e4 c5 Nf3 d6 c3 Nf6 Be2 Nc6 d4 cxd4 cxd4 Nxe4 +B50 Sicilian Defense: Delayed Alapin Variation, with d6 e4 c5 Nf3 d6 c3 +B50 Sicilian Defense: Kopec System e4 c5 Nf3 d6 Bd3 +B50 Sicilian Defense: Kotov Gambit e4 c5 Nf3 d6 g3 b5 +B50 Sicilian Defense: Modern Variations e4 c5 Nf3 d6 +B50 Sicilian Defense: Modern Variations, Anti-Qxd4 Move Order e4 c5 Nf3 d6 d4 Nf6 +B50 Sicilian Defense: Modern Variations, Anti-Qxd4 Move Order Accepted e4 c5 Nf3 d6 d4 Nf6 dxc5 Nxe4 +B50 Sicilian Defense: Modern Variations, Tartakower e4 c5 Nf3 d6 d4 cxd4 c3 +B50 Sicilian Defense: Wing Gambit, Deferred Variation e4 c5 Nf3 d6 b4 +B51 Sicilian Defense: Moscow Variation e4 c5 Nf3 d6 Bb5 +B51 Sicilian Defense: Moscow Variation, Dorfman Gambit e4 c5 Nf3 d6 Bb5 Nc6 O-O Bd7 Qe2 g6 e5 +B51 Sicilian Defense: Moscow Variation, Moscow Gambit e4 c5 Nf3 d6 Bb5 Nc6 O-O Bd7 c3 Nf6 Re1 a6 Bxc6 Bxc6 d4 Bxe4 Bg5 +B52 Sicilian Defense: Moscow Variation, Haag Gambit e4 c5 Nf3 d6 Bb5 Bd7 Bxd7 Qxd7 O-O Nc6 c3 Nf6 d4 +B52 Sicilian Defense: Moscow Variation, Main Line e4 c5 Nf3 d6 Bb5 Bd7 +B52 Sicilian Defense: Moscow Variation, Sokolsky Variation e4 c5 Nf3 d6 Bb5 Bd7 Bxd7 Qxd7 c4 +B53 Sicilian Defense: Chekhover Variation e4 c5 Nf3 d6 d4 cxd4 Qxd4 +B53 Sicilian Defense: Chekhover Variation, Zaitsev Defense e4 c5 Nf3 d6 d4 cxd4 Qxd4 Nc6 Bb5 Qd7 +B54 Sicilian Defense: Dragon Variation, Accelerated Dragon e4 c5 Nf3 d6 d4 cxd4 Nxd4 g6 +B54 Sicilian Defense: Modern Variations, Ginsberg Gambit e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Bc4 +B54 Sicilian Defense: Modern Variations, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 +B54 Sicilian Defense: Prins Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 f3 +B55 Sicilian Defense: Prins Variation, Venice Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 f3 e5 Bb5 +B56 Sicilian Defense: Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 +B56 Sicilian Defense: Classical Variation, Fianchetto Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 g3 +B56 Sicilian Defense: Kupreichik Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Bd7 +B56 Sicilian Defense: Spielmann Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Nde2 +B56 Sicilian Defense: Venice Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 e5 Bb5 +B57 Sicilian Defense: Classical Variation, Anti-Sozin Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 Qb6 +B57 Sicilian Defense: Classical Variation, Sozin Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bc4 +B57 Sicilian Defense: Magnus Smith Trap e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 g6 Nxc6 bxc6 e5 +B58 Sicilian Defense: Boleslavsky Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Be2 e5 +B58 Sicilian Defense: Boleslavsky Variation, Louma Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 e5 Nxc6 +B58 Sicilian Defense: Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Be2 +B58 Sicilian Defense: Classical Variation, Dragon Transfer e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Be2 Nxd4 Qxd4 g6 +B59 Sicilian Defense: Boleslavsky Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 e5 Nb3 +B60 Sicilian Defense: Richter-Rauzer Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 +B60 Sicilian Defense: Richter-Rauzer Variation, Dragon Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 g6 +B60 Sicilian Defense: Richter-Rauzer Variation, Modern Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 Bd7 +B61 Sicilian Defense: Richter-Rauzer Variation, Modern Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 Bd7 Qd2 +B62 Sicilian Defense: Richter-Rauzer Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 +B62 Sicilian Defense: Richter-Rauzer Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd3 +B62 Sicilian Defense: Richter-Rauzer Variation, Exchange Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Nxc6 +B62 Sicilian Defense: Richter-Rauzer Variation, Podebrady Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 e6 Nb3 +B62 Sicilian Defense: Richter-Rauzer Variation, Vitolins Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Bb5 +B63 Sicilian Defense: Richter-Rauzer Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Be7 +B63 Sicilian Defense: Richter-Rauzer Variation, Classical Variation, Kantscher Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Be7 O-O-O Nxd4 Qxd4 a6 f4 b5 +B63 Sicilian Defense: Richter-Rauzer Variation, Ivanov Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Qb6 +B63 Sicilian Defense: Richter-Rauzer Variation, Traditional Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 +B64 Sicilian Defense: Richter-Rauzer Variation, Classical Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 e6 Qd2 Be7 O-O-O O-O f4 e5 +B64 Sicilian Defense: Richter-Rauzer Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Be7 O-O-O O-O f4 +B65 Sicilian Defense: Richter-Rauzer Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Be7 O-O-O O-O f4 Nxd4 Qxd4 +B65 Sicilian Defense: Richter-Rauzer Variation, Rauzer Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 Be7 O-O-O O-O f4 Nxd4 +B66 Sicilian Defense: Richter-Rauzer Variation, Neo-Modern Variation, Early Deviations e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bg5 e6 Qd2 a6 +B67 Sicilian Defense: Richter-Rauzer Variation, Neo-Modern Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 e6 Qd2 a6 O-O-O Bd7 +B68 Sicilian Defense: Richter-Rauzer Variation, Neo-Modern Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 e6 Qd2 a6 O-O-O Bd7 f4 Be7 +B69 Sicilian Defense: Richter-Rauzer Variation, Neo-Modern Variation, Nyezhmetdinov Attack e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bg5 e6 Qd2 a6 O-O-O Bd7 f4 Be7 Nf3 b5 Bxf6 +B70 Sicilian Defense: Dragon Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 +B70 Sicilian Defense: Dragon Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 +B70 Sicilian Defense: Dragon Variation, Fianchetto Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 g3 +B71 Sicilian Defense: Dragon Variation, Levenfish Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 f4 +B71 Sicilian Defense: Dragon Variation, Levenfish Variation, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 f4 Nbd7 +B72 Sicilian Defense: Dragon Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 +B72 Sicilian Defense: Dragon Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 Be2 +B72 Sicilian Defense: Dragon Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 Be2 Nc6 +B72 Sicilian Defense: Dragon Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 Be2 Nc6 Nb3 +B72 Sicilian Defense: Dragon Variation, Classical Variation, Amsterdam Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 g6 Be3 Bg7 Qd2 +B72 Sicilian Defense: Dragon Variation, Classical Variation, Grigoriev Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 g6 Be3 Bg7 Qd2 O-O O-O-O +B73 Sicilian Defense: Dragon Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 Bg7 O-O Nc6 Be3 +B73 Sicilian Defense: Dragon Variation, Classical Variation, Battery Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 Bg7 O-O O-O Be3 Nc6 Qd2 +B73 Sicilian Defense: Dragon Variation, Classical Variation, Zollner Gambit e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Be3 Bg7 Be2 Nf6 Nc3 O-O O-O d6 f4 Qb6 e5 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Alekhine Line e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nc3 Bg7 Be3 Nf6 Be2 O-O O-O d6 Nb3 a5 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Bernard Defense e4 c5 Nf3 g6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 Bg7 O-O O-O Be3 Nc6 Nb3 Be6 f4 Na5 f5 Bc4 Bd3 Bxd3 cxd3 d5 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Maróczy Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 Bg7 O-O O-O Be3 Nc6 Nb3 Be6 f4 Na5 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Normal Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 Bg7 O-O O-O Be3 Nc6 Nb3 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Spielmann Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 g6 Nc3 Bg7 Be3 Nf6 Be2 O-O Nb3 d6 O-O Be6 f4 Na5 f5 Bc4 Bd3 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Stockholm Attack e4 c5 Nc3 d6 f4 Nc6 Nf3 g6 d4 cxd4 Nxd4 Bg7 Be3 Nf6 Be2 O-O Nb3 Be6 O-O Na5 f5 Bc4 Nxa5 Bxe2 Qxe2 Qxa5 g4 +B74 Sicilian Defense: Dragon Variation, Classical Variation, Tartakower Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be2 Bg7 O-O O-O Be3 Nc6 Nb3 Be6 f4 Qc8 +B75 Sicilian Defense: Dragon Variation, Yugoslav Attack, Belezky Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 Nc6 +B75 Sicilian Defense: Dragon Variation, Yugoslav Attack, Early Deviations e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 +B75 Sicilian Defense: Dragon Variation, Yugoslav Attack, Hungarian Dragon e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Nc6 f3 h5 +B76 Sicilian Defense: Dragon Variation, Yugoslav Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O +B76 Sicilian Defense: Dragon Variation, Yugoslav Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 +B76 Sicilian Defense: Dragon Variation, Yugoslav Attack, Modern Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 Nc6 Qd2 O-O O-O-O +B76 Sicilian Defense: Dragon Variation, Yugoslav Attack, Panov Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 g4 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Byrne Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 a5 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Czerniak Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 Nc6 Qd2 O-O Bc4 Nxd4 Bxd4 Be6 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Czerniak Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 Nc6 Qd2 O-O Bc4 Nxd4 Bxd4 Be6 Bb3 Qa5 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 Bb3 +B77 Sicilian Defense: Dragon Variation, Yugoslav Attack, Sosonko Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 Nc6 Qd2 O-O Bc4 Nd7 +B78 Sicilian Defense: Dragon Variation, Yugoslav Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 O-O-O +B78 Sicilian Defense: Dragon Variation, Yugoslav Attack, Chinese Dragon e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 O-O-O Rb8 +B78 Sicilian Defense: Dragon Variation, Yugoslav Attack, Old Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 O-O-O Rc8 +B78 Sicilian Defense: Dragon Variation, Yugoslav Attack, Topalov Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 O-O-O Rc8 Bb3 Nxd4 Bxd4 +B79 Sicilian Defense: Dragon Variation, Yugoslav Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 h4 Qa5 O-O-O Rfc8 Bb3 +B79 Sicilian Defense: Dragon Variation, Yugoslav Attack, Soltis Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 g6 Be3 Bg7 f3 O-O Qd2 Nc6 Bc4 Bd7 O-O-O Qa5 h4 Rfc8 Bb3 h5 +B80 Sicilian Defense: Scheveningen Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 +B80 Sicilian Defense: Scheveningen Variation, English Attack, with Qd2 e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e6 Qd2 +B80 Sicilian Defense: Scheveningen Variation, Fianchetto Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 g3 +B80 Sicilian Defense: Scheveningen Variation, Vitolins Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bb5 +B81 Sicilian Defense: Scheveningen Variation, Keres Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 g4 +B82 Sicilian Defense: Scheveningen Variation, Matanovic Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 f4 +B82 Sicilian Defense: Scheveningen Variation, Tal Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 f4 Nc6 Be3 Be7 Qf3 +B83 Sicilian Defense: Scheveningen Variation, Classical Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 +B83 Sicilian Defense: Scheveningen Variation, Modern Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 d6 Be2 Nf6 +B83 Sicilian Defense: Scheveningen Variation, Modern Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 Be7 O-O O-O f4 Nc6 Be3 +B83 Sicilian Defense: Scheveningen Variation, Modern Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Be2 Be7 O-O O-O f4 Nc6 Be3 Bd7 Nb3 +B84 Sicilian Defense: Najdorf Variation, Scheveningen Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 e6 O-O Nbd7 +B84 Sicilian Defense: Scheveningen Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 e6 +B84 Sicilian Defense: Scheveningen Variation, Classical Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 e6 O-O Qc7 +B85 Sicilian Defense: Scheveningen Variation, Classical Main Line e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Be2 a6 O-O Nf6 Be3 Be7 f4 d6 Qe1 O-O +B85 Sicilian Defense: Scheveningen Variation, Classical Variation, Paulsen Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 f4 e6 Be2 Qc7 O-O Nc6 +B85 Sicilian Defense: Scheveningen Variation, Classical Variation, Paulsen Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Be2 a6 O-O Nf6 Be3 d6 f4 +B85 Sicilian Defense: Scheveningen Variation, Classical Variation, Paulsen Variation e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nc6 Nc3 Qc7 Be2 a6 O-O Nf6 Kh1 Be7 f4 d6 a4 +B86 Sicilian Defense: Sozin Attack e4 c5 Nf3 e6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 +B87 Sicilian Defense: Sozin Attack, Flank Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bc4 e6 Bb3 b5 +B88 Sicilian Defense: Sozin Attack, Fischer Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 e6 Bb3 Be7 Be3 O-O f4 +B88 Sicilian Defense: Sozin Attack, Leonhardt Variation e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 e6 +B89 Sicilian Defense: Sozin Attack, Main Line e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 e6 Be3 +B89 Sicilian Defense: Sozin Attack, Main Line, Sherbakov Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 Nc6 Bc4 e6 Be3 Be7 Bb3 O-O O-O Na5 f4 b6 +B89 Sicilian Defense: Velimirovic Attack e4 c5 Nf3 Nc6 d4 cxd4 Nxd4 Nf6 Nc3 d6 Bc4 e6 Be3 Be7 Qe2 +B90 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 +B90 Sicilian Defense: Najdorf Variation, Adams Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 h3 +B90 Sicilian Defense: Najdorf Variation, Dekker Gambit e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 g4 +B90 Sicilian Defense: Najdorf Variation, English Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 +B90 Sicilian Defense: Najdorf Variation, English Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e5 Nb3 Be6 f3 +B90 Sicilian Defense: Najdorf Variation, English Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e5 Nb3 Be7 f3 +B90 Sicilian Defense: Najdorf Variation, English Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e5 Nb3 Be6 h3 +B90 Sicilian Defense: Najdorf Variation, English Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e5 Nb3 Be7 h3 +B90 Sicilian Defense: Najdorf Variation, English Attack, Anti-English e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 Ng4 +B90 Sicilian Defense: Najdorf Variation, Lipnitsky Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bc4 +B90 Sicilian Defense: Najdorf Variation, Petronić Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Rg1 +B90 Sicilian Defense: Najdorf Variation, Yates Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bd3 +B90 Sicilian Defense: Scheveningen Variation, Delayed Keres Attack e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e6 g4 +B90 Sicilian Defense: Scheveningen Variation, Delayed Keres Attack, Perenyi Gambit e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e6 g4 e5 Nf5 g6 g5 +B90 Sicilian Defense: Scheveningen Variation, English Attack, with f3 e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be3 e6 f3 +B91 Sicilian Defense: Najdorf Variation, Zagreb Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 g3 +B92 Sicilian Defense: Najdorf Variation, Opocensky Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 +B92 Sicilian Defense: Najdorf Variation, Opocensky Variation e4 c5 Nf3 Nf6 Nc3 d6 d4 cxd4 Nxd4 a6 Be2 e5 Nb3 Be6 Be3 +B92 Sicilian Defense: Najdorf Variation, Opocensky Variation, Modern Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 e5 Nb3 Be7 O-O Be6 +B92 Sicilian Defense: Najdorf Variation, Opocensky Variation, Traditional Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Be2 e5 Nb3 Be7 O-O O-O +B93 Sicilian Defense: Najdorf Variation, Amsterdam Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 f4 +B94 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 +B94 Sicilian Defense: Najdorf Variation, Ivkov Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 Nbd7 Bc4 Qa5 Qd2 e6 O-O-O b5 Bb3 Bb7 Rhe1 Nc5 e5 +B95 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 +B96 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 +B96 Sicilian Defense: Najdorf Variation, Neo-Classical Defense e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Nc6 +B96 Sicilian Defense: Najdorf Variation, Polugaevsky Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 b5 +B96 Sicilian Defense: Najdorf Variation, Polugaevsky Variation, Simagin Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 b5 e5 dxe5 fxe5 Qc7 Qe2 +B97 Sicilian Defense: Najdorf Variation, Poisoned Pawn Accepted e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Qb6 Qd2 Qxb2 Rb1 Qa3 +B97 Sicilian Defense: Najdorf Variation, Poisoned Pawn Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Qb6 +B98 Sicilian Defense: Najdorf Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Be7 +B98 Sicilian Defense: Najdorf Variation, Browne Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Be7 Qf3 h6 Bh4 Qc7 +B98 Sicilian Defense: Najdorf Variation, Goteborg Variation e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Be7 Qf3 h6 Bh4 g5 +B98 Sicilian Defense: Najdorf Variation, Traditional Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Be7 Qf3 Qc7 +B99 Sicilian Defense: Najdorf Variation, Main Line e4 c5 Nf3 d6 d4 cxd4 Nxd4 Nf6 Nc3 a6 Bg5 e6 f4 Be7 Qf3 Qc7 O-O-O Nbd7 +C00 French Defense e4 e6 +C00 French Defense e4 e6 d4 d5 +C00 French Defense: Alapin Gambit e4 e6 d4 d5 Be3 +C00 French Defense: Baeuerle Gambit e4 e6 d4 b5 +C00 French Defense: Banzai-Leong Gambit e4 e6 b4 +C00 French Defense: Banzai-Leong Gambit, Pinova Gambit e4 e6 b4 Bxb4 e5 +C00 French Defense: Bird Invitation e4 e6 Bb5 +C00 French Defense: Carlson Gambit e4 e6 d4 d5 Nf3 dxe4 Ne5 +C00 French Defense: Chigorin Variation e4 e6 Qe2 +C00 French Defense: Diemer-Duhm Gambit e4 e6 d4 d5 c4 +C00 French Defense: Diemer-Duhm Gambit Accepted e4 e6 d4 d5 c4 dxe4 +C00 French Defense: Franco-Hiva Gambit e4 e6 d4 f5 +C00 French Defense: Franco-Hiva Gambit Accepted e4 e6 d4 f5 exf5 +C00 French Defense: Franco-Sicilian Defense e4 e6 d4 c5 +C00 French Defense: Hoffmann Gambit e4 e6 d4 d5 Qe2 e5 f4 exf4 +C00 French Defense: Horwitz Attack e4 e6 b3 +C00 French Defense: Horwitz Attack, Papa-Ticulat Gambit e4 e6 b3 d5 Bb2 +C00 French Defense: King's Indian Attack e4 e6 d3 +C00 French Defense: King's Indian Attack, Franco-Hiva Gambit e4 e6 d3 f5 +C00 French Defense: Knight Variation e4 e6 Nf3 +C00 French Defense: Knight Variation, Franco-Hiva Gambit e4 e6 Nf3 f5 +C00 French Defense: La Bourdonnais Variation e4 e6 f4 +C00 French Defense: La Bourdonnais Variation, Reuter Gambit e4 e6 f4 d5 Nf3 dxe4 +C00 French Defense: Mediterranean Defense e4 e6 d4 Nf6 +C00 French Defense: Morphy Gambit e4 e6 d4 d5 Nh3 +C00 French Defense: Normal Variation e4 e6 d4 +C00 French Defense: Orthoschnapp Gambit e4 e6 c4 d5 cxd5 exd5 Qb3 +C00 French Defense: Pelikan Variation e4 e6 Nc3 d5 f4 +C00 French Defense: Perseus Gambit e4 e6 d4 d5 Nf3 +C00 French Defense: Queen's Knight e4 e6 Nc3 +C00 French Defense: Reversed Philidor Formation e4 e6 d3 d5 Nd2 Nf6 Ngf3 Nc6 Be2 +C00 French Defense: Réti-Spielmann Attack e4 e6 g3 +C00 French Defense: Schlechter Variation e4 e6 d4 d5 Bd3 +C00 French Defense: St. George Defense e4 e6 d4 a6 +C00 French Defense: St. George Defense, Sanky-George Gambit e4 e6 d4 a6 c4 b5 +C00 French Defense: St. George Defense, St. George Gambit e4 e6 d4 a6 c4 b5 cxb5 axb5 +C00 French Defense: St. George Defense, Three Pawn Attack e4 e6 d4 a6 c4 +C00 French Defense: St. George Defense, Traditional Line e4 e6 d4 a6 Nf3 b5 Bd3 c5 c3 Bb7 O-O Nf6 +C00 French Defense: Steiner Variation e4 e6 c4 +C00 French Defense: Steinitz Attack e4 e6 e5 +C00 French Defense: Two Knights Variation e4 e6 Nf3 d5 Nc3 +C00 French Defense: Wing Gambit e4 e6 Nf3 d5 e5 c5 b4 +C00 Rat Defense: Small Center Defense d4 e6 e4 d6 +C01 French Defense: Exchange Variation e4 e6 d4 d5 exd5 +C01 French Defense: Exchange Variation e4 e6 d4 d5 exd5 exd5 Nf3 +C01 French Defense: Exchange Variation e4 e6 d4 d5 exd5 exd5 Nc3 +C01 French Defense: Exchange Variation, Bogoljubow Variation e4 e6 d4 d5 exd5 exd5 Nc3 Nf6 Bg5 Nc6 +C01 French Defense: Exchange Variation, Monte Carlo Variation e4 e6 d4 d5 exd5 exd5 c4 +C01 French Defense: Exchange Variation, Svenonius Variation e4 e6 d4 d5 Nc3 Nf6 exd5 exd5 Bg5 +C02 French Defense: Advance Variation e4 e6 d4 d5 e5 +C02 French Defense: Advance Variation e4 e6 d4 d5 e5 c5 +C02 French Defense: Advance Variation e4 e6 d4 d5 e5 c5 c3 +C02 French Defense: Advance Variation e4 e6 d4 d5 e5 c5 c3 Nc6 +C02 French Defense: Advance Variation, Euwe Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Bd7 +C02 French Defense: Advance Variation, Extended Bishop Swap e4 e6 d4 d5 e5 Bd7 +C02 French Defense: Advance Variation, Frenkel Gambit e4 e6 d4 d5 e5 c5 b4 +C02 French Defense: Advance Variation, Kupreichik Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Be3 +C02 French Defense: Advance Variation, Lputian Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 a3 Nh6 +C02 French Defense: Advance Variation, Main Line e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 a3 +C02 French Defense: Advance Variation, Milner-Barry Gambit e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 Bd3 +C02 French Defense: Advance Variation, Milner-Barry Gambit, Hector Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 Bd3 cxd4 O-O +C02 French Defense: Advance Variation, Milner-Barry Gambit, Hector Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 Bd3 cxd4 O-O Bd7 Re1 +C02 French Defense: Advance Variation, Milner-Barry Gambit, Main Line e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 Bd3 cxd4 cxd4 Bd7 O-O +C02 French Defense: Advance Variation, Milner-Barry Gambit, Sørensen Variation e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 Qb6 Bd3 cxd4 cxd4 Bd7 O-O Nxd4 Ng5 +C02 French Defense: Advance Variation, Nimzowitsch Attack e4 e6 d4 d5 e5 c5 Qg4 +C02 French Defense: Advance Variation, Nimzowitsch Gambit e4 e6 d4 d5 e5 c5 Qg4 cxd4 Nf3 +C02 French Defense: Advance Variation, Nimzowitsch System e4 e6 d4 d5 e5 c5 Nf3 +C02 French Defense: Advance Variation, Paulsen Attack e4 e6 d4 d5 e5 c5 c3 Nc6 Nf3 +C02 French Defense: Advance Variation, Ruisdonk Gambit e4 e6 d4 d5 e5 c5 Nf3 cxd4 Bd3 +C02 French Defense: Advance Variation, Steinitz Variation e4 e6 d4 d5 e5 c5 dxc5 +C02 French Defense: Advance Variation, Wade Variation e4 e6 d4 d5 e5 c5 c3 Qb6 Nf3 Bd7 +C03 French Defense: Tarrasch Variation e4 e6 d4 d5 Nd2 +C03 French Defense: Tarrasch Variation, Guimard Defense e4 e6 d4 d5 Nd2 Nc6 +C03 French Defense: Tarrasch Variation, Guimard Defense, Thunderbunny Variation e4 e6 d4 d5 Nd2 Nc6 c3 dxe4 Nxe4 e5 +C03 French Defense: Tarrasch Variation, Haberditz Variation e4 e6 d4 d5 Nd2 f5 +C03 French Defense: Tarrasch Variation, Modern System e4 e6 d4 d5 Nd2 a6 +C03 French Defense: Tarrasch Variation, Morozevich Variation e4 e6 d4 d5 Nd2 Be7 +C04 French Defense: Tarrasch Variation, Guimard Defense, Main Line e4 e6 d4 d5 Nd2 Nc6 Ngf3 Nf6 +C05 French Defense: Tarrasch Variation, Botvinnik Variation e4 e6 d4 d5 Nd2 Nf6 e5 Nfd7 Bd3 c5 c3 b6 +C05 French Defense: Tarrasch Variation, Closed Variation e4 e6 d4 d5 Nd2 Nf6 +C05 French Defense: Tarrasch Variation, Closed Variation e4 e6 d4 d5 Nd2 Nf6 e5 Nfd7 Bd3 c5 c3 Nc6 +C05 French Defense: Tarrasch Variation, Pawn Center Variation e4 e6 d4 d5 Nd2 Nf6 e5 Nfd7 f4 +C06 French Defense: Tarrasch Variation, Closed Variation, Main Line e4 e6 d4 d5 Nd2 Nf6 e5 Nfd7 Bd3 c5 c3 Nc6 Ne2 cxd4 cxd4 +C06 French Defense: Tarrasch Variation, Leningrad Variation e4 e6 d4 d5 Nd2 Nf6 e5 Nfd7 Bd3 c5 c3 Nc6 Ne2 cxd4 cxd4 Nb6 +C07 French Defense: Tarrasch Variation, Chistyakov Defense e4 e6 d4 d5 Nd2 c5 exd5 Qxd5 +C07 French Defense: Tarrasch Variation, Chistyakov Defense, Modern Line e4 e6 d4 d5 Nd2 c5 exd5 Qxd5 Ngf3 cxd4 Bc4 Qd6 O-O Nf6 Nb3 Nc6 Nbxd4 Nxd4 Nxd4 a6 +C07 French Defense: Tarrasch Variation, Eliskases Variation e4 e6 d4 d5 Nd2 c5 exd5 Qxd5 Ngf3 cxd4 Bc4 Qd8 +C07 French Defense: Tarrasch Variation, Open System e4 e6 d4 d5 Nd2 c5 +C07 French Defense: Tarrasch Variation, Open System, Euwe-Keres Line e4 e6 d4 d5 Nd2 c5 Ngf3 +C07 French Defense: Tarrasch Variation, Open System, Shaposhnikov Gambit e4 e6 d4 d5 Nd2 c5 exd5 Nf6 +C07 French Defense: Tarrasch Variation, Open System, Süchting Line e4 e6 d4 d5 Nd2 c5 c3 +C08 French Defense: Tarrasch Variation, Open System e4 e6 d4 d5 Nd2 c5 exd5 exd5 +C08 French Defense: Tarrasch Variation, Open System, Advance Line e4 e6 d4 d5 Nd2 c5 exd5 exd5 Ngf3 c4 +C09 French Defense: Tarrasch Variation, Open System, Main Line e4 e6 d4 d5 Nd2 c5 exd5 exd5 Ngf3 Nc6 +C09 French Defense: Tarrasch Variation, Open System, Main Line e4 e6 d4 d5 Nd2 c5 exd5 exd5 Ngf3 Nc6 Bb5 Bd6 dxc5 Bxc5 O-O Ne7 c3 +C10 French Defense: Hecht-Reefschläger Variation e4 e6 d4 d5 Nc3 Nc6 +C10 French Defense: Marshall Gambit e4 e6 d4 d5 Nc3 c5 +C10 French Defense: Paulsen Variation e4 e6 d4 d5 Nc3 +C10 French Defense: Rubinstein Variation e4 e6 d4 d5 Nc3 dxe4 +C10 French Defense: Rubinstein Variation, Blackburne Defense e4 e6 d4 d5 Nc3 dxe4 Nxe4 Nd7 +C10 French Defense: Rubinstein Variation, Capablanca Line e4 e6 d4 d5 Nc3 dxe4 Nxe4 Nd7 Nf3 Ngf6 Nxf6 Nxf6 Ne5 +C10 French Defense: Rubinstein Variation, Ellis Gambit e4 e6 d4 d5 Nc3 dxe4 Nxe4 e5 +C10 French Defense: Rubinstein Variation, Fort Knox Variation e4 e6 d4 d5 Nc3 dxe4 Nxe4 Bd7 Nf3 Bc6 +C10 French Defense: Rubinstein Variation, Kasparov Attack e4 e6 d4 d5 Nd2 dxe4 Nxe4 Nd7 Nf3 Ngf6 Nxf6 Nxf6 c3 +C10 French Defense: Rubinstein Variation, Maric Variation e4 e6 d4 d5 Nc3 dxe4 Nxe4 Qd5 +C11 French Defense: Classical Variation e4 e6 d4 d5 Nc3 Nf6 +C11 French Defense: Classical Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 +C11 French Defense: Classical Variation, Burn Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 dxe4 +C11 French Defense: Classical Variation, Burn Variation, Main Line e4 e6 d4 d5 Nc3 Nf6 Bg5 dxe4 Nxe4 Be7 Bxf6 Bxf6 Nf3 O-O +C11 French Defense: Classical Variation, Burn Variation, Morozevich Line e4 e6 d4 d5 Nc3 Nf6 Bg5 dxe4 Nxe4 Be7 Bxf6 gxf6 +C11 French Defense: Classical Variation, Delayed Exchange Variation e4 e6 d4 d5 Nc3 Nf6 exd5 +C11 French Defense: Classical Variation, Shirov-Anand Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 Nce2 +C11 French Defense: Classical Variation, Steinitz Variation e4 e6 d4 d5 Nc3 Nf6 e5 +C11 French Defense: Classical Variation, Swiss Variation e4 e6 d4 d5 Nc3 Nf6 Bd3 +C11 French Defense: Henneberger Variation e4 e6 d4 d5 Nc3 Nf6 Be3 +C11 French Defense: Steinitz Variation e4 e6 d4 d5 Nc3 a6 Nf3 Nf6 e5 Nfd7 +C11 French Defense: Steinitz Variation e4 e6 d4 d5 Nc3 a6 Nf3 Nf6 e5 Nfd7 a3 +C11 French Defense: Steinitz Variation e4 e6 d4 d5 Nc3 a6 Nf3 Nf6 e5 Nfd7 Ne2 +C11 French Defense: Steinitz Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 f4 c5 dxc5 Nc6 +C11 French Defense: Steinitz Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 f4 c5 Nf3 +C11 French Defense: Steinitz Variation, Boleslavsky Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 f4 c5 Nf3 Nc6 Be3 +C11 French Defense: Steinitz Variation, Bradford Attack Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 f4 c5 dxc5 Bxc5 Qg4 +C11 French Defense: Steinitz Variation, Brodsky-Jones Variation e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 f4 c5 dxc5 Nc6 a3 Bxc5 Qg4 O-O Nf3 f6 +C11 French Defense: Steinitz Variation, Gledhill Attack e4 e6 d4 d5 Nc3 Nf6 e5 Nfd7 Qg4 +C12 French Defense: McCutcheon Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 +C12 French Defense: McCutcheon Variation, Advance Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 +C12 French Defense: McCutcheon Variation, Bernstein Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Bh4 +C12 French Defense: McCutcheon Variation, Bogoljubow Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 exd5 Qxd5 Bxf6 gxf6 Qd2 Qa5 +C12 French Defense: McCutcheon Variation, Chigorin Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 exf6 +C12 French Defense: McCutcheon Variation, Dr. Olland Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Bc1 +C12 French Defense: McCutcheon Variation, Duras Variation e4 e6 Nc3 d5 d4 Nf6 Bg5 Bb4 e5 h6 Bd2 Bxc3 bxc3 Ne4 Qg4 Kf8 Bc1 +C12 French Defense: McCutcheon Variation, Exchange Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 exd5 +C12 French Defense: McCutcheon Variation, Grigoriev Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 exf6 hxg5 fxg7 Rg8 h4 gxh4 Qg4 +C12 French Defense: McCutcheon Variation, Janowski Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Be3 +C12 French Defense: McCutcheon Variation, Lasker Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Bd2 Bxc3 +C12 French Defense: McCutcheon Variation, Lasker Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Bd2 Bxc3 bxc3 Ne4 Qg4 g6 +C12 French Defense: McCutcheon Variation, Tartakower Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Bb4 e5 h6 Bd2 Nfd7 +C13 French Defense: Alekhine-Chatard Attack e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 +C13 French Defense: Alekhine-Chatard Attack, Albin-Chatard Gambit e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 Bxg5 hxg5 Qxg5 +C13 French Defense: Alekhine-Chatard Attack, Breyer Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 c5 +C13 French Defense: Alekhine-Chatard Attack, Maróczy Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 a6 +C13 French Defense: Alekhine-Chatard Attack, Spielmann Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 O-O +C13 French Defense: Alekhine-Chatard Attack, Teichmann Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 h4 f6 +C13 French Defense: Classical Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 dxe4 Nxe4 Be7 +C13 French Defense: Classical Variation, Frankfurt Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Ng8 Be3 b6 +C13 French Defense: Classical Variation, Normal Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 +C13 French Defense: Classical Variation, Richter Attack e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 Bxf6 +C13 French Defense: Classical Variation, Richter Attack e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 Bxf6 Bxf6 e5 Be7 Qg4 +C13 French Defense: Classical Variation, Tartakower Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Ne4 +C13 French Defense: Classical Variation, Vistaneckis Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Ng8 +C14 French Defense: Classical Variation e4 e6 d4 d5 Nc3 a6 Nf3 Nf6 e5 Nfd7 Bg5 +C14 French Defense: Classical Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 +C14 French Defense: Classical Variation, Alapin Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 Nb5 +C14 French Defense: Classical Variation, Pollock Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 Qg4 +C14 French Defense: Classical Variation, Rubinstein Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 Qd2 +C14 French Defense: Classical Variation, Stahlberg Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 f4 O-O Nf3 c5 Qd2 Nc6 O-O-O c4 +C14 French Defense: Classical Variation, Steinitz Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 f4 +C14 French Defense: Classical Variation, Tarrasch Variation e4 e6 d4 d5 Nc3 Nf6 Bg5 Be7 e5 Nfd7 Bxe7 Qxe7 Bd3 +C15 French Defense: McCutcheon Variation, Wolf Gambit e4 e6 d4 d5 Nc3 Bb4 Ne2 Nf6 Bg5 +C15 French Defense: Winawer Variation e4 e6 d4 d5 Nc3 Bb4 +C15 French Defense: Winawer Variation, Alekhine Gambit Accepted e4 e6 d4 d5 Nc3 Bb4 Ne2 dxe4 a3 Bxc3 +C15 French Defense: Winawer Variation, Alekhine Gambit, Alatortsev Variation e4 e6 d4 d5 Nc3 Bb4 Ne2 dxe4 a3 Be7 Nxe4 Nf6 N2g3 O-O Be2 Nc6 +C15 French Defense: Winawer Variation, Alekhine Gambit, Kan Variation e4 e6 d4 d5 Nc3 Bb4 Ne2 dxe4 a3 Bxc3 Nxc3 Nc6 +C15 French Defense: Winawer Variation, Alekhine-Maróczy Gambit e4 e6 d4 d5 Nc3 Bb4 Ne2 +C15 French Defense: Winawer Variation, Delayed Exchange Variation e4 e6 d4 d5 Nc3 Bb4 exd5 +C15 French Defense: Winawer Variation, Exchange Variation, Canal Attack e4 e6 d4 d5 Nc3 Bb4 exd5 exd5 Bd3 Ne7 Qh5 +C15 French Defense: Winawer Variation, Fingerslip Variation e4 e6 d4 d5 Nc3 Bb4 Bd2 +C15 French Defense: Winawer Variation, Fingerslip Variation, Kunin Double Gambit e4 e6 d4 d5 Nc3 Bb4 Bd2 dxe4 Qg4 Qxd4 +C15 French Defense: Winawer Variation, Fingerslip Variation, Main Line e4 e6 d4 d5 Nc3 Bb4 Bd2 dxe4 Qg4 Nf6 Qxg7 Rg8 Qh6 +C15 French Defense: Winawer Variation, Fingerslip Variation, Schwarz's Line e4 e6 d4 d5 Nc3 Bb4 Bd2 Ne7 Nb1 +C15 French Defense: Winawer Variation, Kondratiyev Variation e4 e6 d4 d5 Nc3 Bb4 Bd3 c5 exd5 Qxd5 Bd2 +C15 French Defense: Winawer Variation, Winckelmann-Reimer Gambit e4 e6 d4 d5 Nc3 Bb4 a3 Bxc3 bxc3 dxe4 f3 +C16 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 +C16 French Defense: Winawer Variation, Petrosian Variation e4 e6 d4 d5 Nc3 Bb4 e5 Qd7 +C17 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 +C17 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 +C17 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 cxd4 axb4 dxc3 Nf3 +C17 French Defense: Winawer Variation, Advance Variation, Moscow Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 Qg4 +C17 French Defense: Winawer Variation, Bogoljubow Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 Bd2 +C17 French Defense: Winawer Variation, Bogoljubow Variation, Icelandic Defense e4 e6 d4 d5 Nc3 Bb4 e5 c5 Bd2 Ne7 f4 +C17 French Defense: Winawer Variation, Maróczy-Wallis Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 cxd4 axb4 dxc3 +C17 French Defense: Winawer Variation, Retreat Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Ba5 +C17 French Defense: Winawer Variation, Retreat Variation, Armenian Line e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Ba5 b4 cxd4 +C18 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 +C18 French Defense: Winawer Variation, Advance Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 +C18 French Defense: Winawer Variation, Advance Variation, with Bd3 e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Bd3 +C18 French Defense: Winawer Variation, Advance Variation, with Bd3 e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Bd3 Qc7 +C18 French Defense: Winawer Variation, Advance Variation, with h4 e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 h4 +C18 French Defense: Winawer Variation, Advance Variation, with h4 e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 h4 Qc7 +C18 French Defense: Winawer Variation, Classical Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Qc7 +C18 French Defense: Winawer Variation, Eingorn Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 Kf8 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 Qc7 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 cxd4 Qxg7 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 cxd4 Qxg7 Rg8 Qxh7 Nbc6 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation Declined e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 Qc7 Bd3 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation, Main Line e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 Qc7 Qxg7 Rg8 Qxh7 cxd4 Ne2 +C18 French Defense: Winawer Variation, Poisoned Pawn Variation, Paoli Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 Qc7 Qxg7 Rg8 Qxh7 cxd4 Kd1 +C18 French Defense: Winawer Variation, Portisch-Hook Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Qa5 +C18 French Defense: Winawer Variation, Warsaw Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Qg4 O-O +C19 French Defense: Winawer Variation, Advance Variation, Smyslov Variation e4 e6 d4 d5 Nc3 Bb4 e5 Ne7 a3 Bxc3 bxc3 c5 a4 +C19 French Defense: Winawer Variation, Advance Variation, Smyslov Variation e4 e6 d4 d5 Nc3 Bb4 e5 Ne7 a3 Bxc3 bxc3 c5 a4 Qc7 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 Qa5 Qd2 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 Qa5 Qd2 Bd7 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 Qa5 Bd2 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 Qa5 Bd2 Bd7 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 a4 Nbc6 Nf3 Qa5 Bd2 c4 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Nf3 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Nc6 Nf3 Nge7 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Nf3 Qc7 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Nf3 Qc7 h4 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Ne7 Bd3 Nbc6 Nf3 +C19 French Defense: Winawer Variation, Positional Variation e4 e6 d4 d5 Nc3 Bb4 e5 c5 a3 Bxc3 bxc3 Nc6 Nf3 Qa5 Bd2 Nge7 +C20 Barnes Opening: Walkerling f3 e5 e4 Nf6 Bc4 +C20 Bongcloud Attack e4 e5 Ke2 +C20 Center Game e4 e5 d4 +C20 English Opening: The Whale e4 e5 c4 +C20 King's Pawn Game e4 e5 +C20 King's Pawn Game: Alapin Opening e4 e5 Ne2 +C20 King's Pawn Game: Bavarian Gambit e4 e5 c4 d5 +C20 King's Pawn Game: Beyer Gambit e4 e5 d4 d5 +C20 King's Pawn Game: Clam Variation, King's Gambit Reversed e4 e5 d3 f5 +C20 King's Pawn Game: Clam Variation, Radisch Gambit e4 e5 d3 Nf6 f4 Bc5 +C20 King's Pawn Game: King's Head Opening e4 e5 f3 +C20 King's Pawn Game: King's Head Opening e4 e5 f3 Nf6 Nc3 +C20 King's Pawn Game: Leonardis Variation e4 e5 d3 +C20 King's Pawn Game: MacLeod Attack e4 e5 c3 +C20 King's Pawn Game: MacLeod Attack, Lasa Gambit e4 e5 c3 f5 +C20 King's Pawn Game: MacLeod Attack, Norwalde Gambit e4 e5 c3 d5 Qh5 Bd6 +C20 King's Pawn Game: Mengarini's Opening e4 e5 a3 +C20 King's Pawn Game: Napoleon Attack e4 e5 Qf3 +C20 King's Pawn Game: Philidor Gambit e4 e5 d4 d6 dxe5 Bd7 +C20 King's Pawn Game: Tortoise Opening e4 e5 Bd3 +C20 King's Pawn Game: Wayward Queen Attack e4 e5 Qh5 +C20 King's Pawn Game: Wayward Queen Attack, Kiddie Countergambit e4 e5 Qh5 Nf6 +C20 King's Pawn Game: Wayward Queen Attack, Mellon Gambit e4 e5 Qh5 Nc6 Bc4 Nh6 d3 g6 Qf3 f6 Ne2 d5 +C20 King's Pawn Game: Weber Gambit e4 e5 d3 d5 exd5 c6 dxc6 Nxc6 +C20 King's Pawn Opening e4 e5 b3 +C20 King's Pawn Opening: Speers e4 e5 Qg4 Nf6 Qf5 +C20 King's Pawn Opening: Van Hooydoon Gambit e4 e5 Qe2 Nc6 c3 Nf6 Nf3 Bc5 d4 exd4 cxd4 Nxd4 +C20 Portuguese Opening e4 e5 Bb5 +C20 Portuguese Opening: Miguel Gambit e4 e5 Bb5 Bc5 b4 +C20 Portuguese Opening: Portuguese Gambit e4 e5 Bb5 Nf6 d4 +C21 Center Game e4 e5 d4 exd4 Qxd4 +C21 Center Game Accepted e4 e5 d4 exd4 +C21 Center Game: Halasz-McDonnell Gambit e4 e5 d4 exd4 f4 +C21 Center Game: Halasz-McDonnell Gambit, Crocodile Variation e4 e5 d4 exd4 f4 Bc5 Nf3 Nc6 c3 +C21 Center Game: Kieseritzky Variation e4 e5 d4 exd4 Nf3 +C21 Center Game: Kieseritzky Variation e4 e5 d4 exd4 Nf3 c5 +C21 Center Game: Kieseritzky Variation e4 e5 d4 exd4 Nf3 c5 Bc4 +C21 Center Game: Lanc-Arnold Gambit e4 e5 d4 exd4 Nf3 Bc5 c3 +C21 Center Game: Lanc-Arnold Gambit, Schippler Gambit e4 e5 d4 exd4 Nf3 Bc5 c3 dxc3 Bc4 +C21 Center Game: Ross Gambit e4 e5 d4 exd4 Bd3 +C21 Center Game: von der Lasa Gambit e4 e5 d4 exd4 Bc4 +C21 Danish Gambit e4 e5 d4 exd4 c3 +C21 Danish Gambit Accepted e4 e5 d4 exd4 c3 dxc3 +C21 Danish Gambit Accepted: Chigorin Defense e4 e5 d4 exd4 c3 dxc3 Bc4 cxb2 Bxb2 Qe7 +C21 Danish Gambit Accepted: Classical Defense e4 e5 d4 exd4 c3 dxc3 Bc4 cxb2 Bxb2 Nf6 +C21 Danish Gambit Accepted: Copenhagen Defense e4 e5 d4 exd4 c3 dxc3 Bc4 cxb2 Bxb2 Bb4 +C21 Danish Gambit Accepted: Schlechter Defense e4 e5 d4 exd4 c3 dxc3 Bc4 cxb2 Bxb2 d5 +C21 Danish Gambit Accepted: Svenonius Defense e4 e5 d4 exd4 c3 Ne7 +C21 Danish Gambit Declined: Sörensen Defense e4 e5 d4 exd4 c3 d5 +C22 Center Game: Berger Variation e4 e5 d4 exd4 Qxd4 Nc6 Qe3 Nf6 +C22 Center Game: Charousek Variation e4 e5 d4 exd4 Qxd4 Nc6 Qe3 Bb4 c3 Be7 +C22 Center Game: Hall Variation e4 e5 d4 exd4 Qxd4 Nc6 Qc4 +C22 Center Game: Kupreichik Variation e4 e5 d4 exd4 Qxd4 Nc6 Qe3 Nf6 Nc3 Bb4 Bd2 O-O O-O-O Re8 Bc4 d6 Nh3 +C22 Center Game: Normal Variation e4 e5 d4 exd4 Qxd4 Nc6 +C22 Center Game: Paulsen Attack Variation e4 e5 d4 exd4 Qxd4 Nc6 Qe3 +C22 Center Game: l'Hermet Variation e4 e5 d4 exd4 Qxd4 Nc6 Qe3 f5 +C23 Bishop's Opening e4 e5 Bc4 +C23 Bishop's Opening: Anderssen Gambit e4 e5 Bc4 b5 Bxb5 c6 +C23 Bishop's Opening: Boi Variation e4 e5 Bc4 Bc5 +C23 Bishop's Opening: Calabrese Countergambit e4 e5 Bc4 f5 +C23 Bishop's Opening: Calabrese Countergambit, Jaenisch Variation e4 e5 Bc4 f5 d3 +C23 Bishop's Opening: Four Pawns Gambit e4 e5 Bc4 Bc5 b4 Bxb4 f4 exf4 Nf3 Be7 d4 Bh4 g3 fxg3 O-O gxh2 Kh1 +C23 Bishop's Opening: Khan Gambit e4 e5 Bc4 d5 +C23 Bishop's Opening: Lewis Countergambit e4 e5 Bc4 Bc5 c3 d5 +C23 Bishop's Opening: Lewis Countergambit e4 e5 Bc4 Bc5 c3 d5 Bxd5 Nf6 +C23 Bishop's Opening: Lewis Countergambit, Walker Variation e4 e5 Bc4 Bc5 c3 d5 Bxd5 Nf6 d4 +C23 Bishop's Opening: Lewis Gambit e4 e5 Bc4 Bc5 d4 +C23 Bishop's Opening: Lisitsyn Variation e4 e5 Bc4 c6 d4 d5 exd5 cxd5 Bb5 Bd7 Bxd7 Nxd7 dxe5 Nxe5 Ne2 +C23 Bishop's Opening: Lopez Gambit e4 e5 Bc4 Bc5 Qe2 Nc6 c3 Nf6 f4 +C23 Bishop's Opening: Lopez Variation e4 e5 Bc4 Bc5 Qe2 +C23 Bishop's Opening: Lopez Variation, Lopez Gambit e4 e5 Bc4 Bc5 Qe2 Nf6 f4 +C23 Bishop's Opening: McDonnell Gambit e4 e5 Bc4 Bc5 b4 +C23 Bishop's Opening: McDonnell Gambit, La Bourdonnais-Denker Gambit e4 e5 Bc4 Bc5 b4 Bxb4 c3 +C23 Bishop's Opening: McDonnell Gambit, McDonnell Double Gambit e4 e5 Bc4 Bc5 b4 Bxb4 f4 +C23 Bishop's Opening: Philidor Counterattack e4 e5 Bc4 c6 +C23 Bishop's Opening: Philidor Variation e4 e5 Bc4 Bc5 c3 +C23 Bishop's Opening: Pratt Variation e4 e5 Bc4 Bc5 c3 Nf6 d4 exd4 e5 d5 exf6 dxc4 Qh5 O-O +C23 Bishop's Opening: Stein Gambit e4 e5 Bc4 Bc5 f4 +C23 Bishop's Opening: Thorold Gambit e4 e5 Bc4 b5 Bxb5 f5 +C23 Bishop's Opening: del Rio Variation e4 e5 Bc4 Bc5 c3 Qg5 +C24 Bishop's Opening: Berlin Defense e4 e5 Bc4 Nf6 +C24 Bishop's Opening: Berlin Defense, Greco Gambit e4 e5 Bc4 Nf6 f4 +C24 Bishop's Opening: Kitchener Folly e4 e5 Bc4 Nf6 d3 Be7 Nf3 O-O +C24 Bishop's Opening: Krejcik Gambit e4 e5 Bc4 Nf6 f3 Bc5 Ne2 Nc6 b4 +C24 Bishop's Opening: Pachman Gambit e4 e5 Bc4 Nf6 Ne2 Nxe4 Nec3 +C24 Bishop's Opening: Paulsen Defense e4 e5 Bc4 Nf6 d3 c6 +C24 Bishop's Opening: Ponziani Gambit e4 e5 Bc4 Nf6 d4 +C24 Bishop's Opening: Urusov Gambit, Panov Variation e4 e5 Bc4 Nf6 d4 exd4 Nf3 d5 exd5 Bb4 c3 Qe7 +C24 Bishop's Opening: Vienna Hybrid e4 e5 Bc4 Nf6 d3 Nc6 Nc3 +C24 Bishop's Opening: Warsaw Gambit e4 e5 Bc4 Nf6 d4 exd4 c3 +C25 Vienna Gambit, with Max Lange Defense e4 e5 Nc3 Nc6 f4 +C25 Vienna Gambit, with Max Lange Defense: Cunningham Defense e4 e5 Nc3 Nc6 f4 exf4 Nf3 Be7 +C25 Vienna Gambit, with Max Lange Defense: Hamppe-Allgaier Gambit e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 h4 g4 Ng5 +C25 Vienna Gambit, with Max Lange Defense: Hamppe-Allgaier Gambit, Alapin Variation e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 h4 g4 Ng5 d6 +C25 Vienna Gambit, with Max Lange Defense: Hamppe-Allgaier Gambit, Thorold Variation e4 e5 f4 exf4 Nf3 Nc6 Nc3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 d4 +C25 Vienna Gambit, with Max Lange Defense: Hamppe-Muzio Gambit e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 +C25 Vienna Gambit, with Max Lange Defense: Knight Variation e4 e5 Nc3 Nc6 f4 exf4 Nf3 +C25 Vienna Gambit, with Max Lange Defense: Pierce Gambit e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 d4 +C25 Vienna Gambit, with Max Lange Defense: Quelle Gambit e4 e5 Nc3 Nc6 f4 Bc5 fxe5 d6 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit e4 e5 Nc3 Nc6 f4 exf4 d4 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit, Fraser-Minckwitz Defense e4 e5 Nc3 Nc6 f4 exf4 d4 Qh4 Ke2 b6 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit, Main Line e4 e5 Nc3 Nc6 f4 exf4 d4 Qh4 Ke2 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit, Paulsen Defense e4 e5 Nc3 Nc6 f4 exf4 d4 Qh4 Ke2 d6 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit, Sörensen Defense e4 e5 Nc3 Nc6 f4 exf4 d4 Qh4 Ke2 g5 +C25 Vienna Gambit, with Max Lange Defense: Steinitz Gambit, Zukertort Defense e4 e5 Nc3 Nc6 f4 exf4 d4 Qh4 Ke2 d5 +C25 Vienna Game e4 e5 Nc3 +C25 Vienna Game: Anderssen Defense e4 e5 Nc3 Bc5 +C25 Vienna Game: Fyfe Gambit e4 e5 Nc3 Nc6 d4 +C25 Vienna Game: Giraffe Attack e4 e5 Nc3 Bc5 Qg4 +C25 Vienna Game: Hamppe-Meitner Variation e4 e5 Nc3 Bc5 Na4 +C25 Vienna Game: Hamppe-Muzio Gambit e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 Bc4 g4 O-O +C25 Vienna Game: Hamppe-Muzio, Dubois Variation e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Ne5 Qxf4 Qf6 +C25 Vienna Game: Max Lange Defense e4 e5 Nc3 Nc6 +C25 Vienna Game: Omaha Gambit e4 e5 Nc3 d6 f4 +C25 Vienna Game: Paulsen Variation e4 e5 Nc3 Nc6 g3 +C25 Vienna Game: Paulsen Variation e4 e5 Nc3 Nc6 g3 Nf6 Bg2 Bc5 Nge2 d5 +C25 Vienna Game: Paulsen Variation, Mariotti Gambit e4 e5 Nc3 Nc6 g3 Bc5 Bg2 h5 Nf3 h4 +C25 Vienna Game: Philidor Countergambit e4 e5 Nc3 Nc6 d4 f5 +C25 Vienna Game: Pierce Gambit, Rushmere Attack e4 e5 Nc3 Nc6 f4 exf4 Nf3 g5 d4 g4 Bc4 gxf3 O-O d5 exd5 Bg4 dxc6 +C25 Vienna Game: Stanley Variation, Meitner-Mieses Gambit e4 e5 Nc3 Nc6 Bc4 Bc5 Qg4 Qf6 Nd5 +C25 Vienna Game: Zhuravlev Countergambit e4 e5 Nc3 Bb4 Qg4 Nf6 +C26 Bishop's Opening: Horwitz Gambit e4 e5 Bc4 Nf6 Nc3 b5 +C26 Bishop's Opening: Vienna Hybrid, Spielmann Attack e4 e5 Nc3 Nf6 Bc4 Bc5 d3 +C26 Vienna Game: Falkbeer Variation e4 e5 Nc3 Nf6 +C26 Vienna Game: Mengarini Variation e4 e5 Nc3 Nf6 a3 +C26 Vienna Game: Mieses Variation e4 e5 Nc3 Nf6 g3 +C26 Vienna Game: Mieses Variation, Erben Gambit e4 e5 Nc3 Nf6 g3 d5 exd5 c6 +C26 Vienna Game: Paulsen Variation, Pollock Gambit e4 e5 Nc3 Nf6 g3 Bc5 Bg2 Nc6 Nge2 d5 exd5 +C26 Vienna Game: Stanley Variation e4 e5 Nc3 Nf6 Bc4 +C26 Vienna Game: Stanley Variation, Eifel Gambit e4 e5 Nc3 Nf6 Bc4 Bc5 Nge2 b5 +C26 Vienna Game: Stanley Variation, Reversed Spanish e4 e5 Nc3 Nf6 Bc4 Bb4 +C27 Bishop's Opening: Boden-Kieseritzky Gambit e4 e5 Nf3 Nf6 Bc4 Nxe4 Nc3 +C27 Bishop's Opening: Boden-Kieseritzky Gambit, Lichtenhein Defense e4 e5 Nf3 Nf6 Bc4 Nxe4 Nc3 d5 +C27 Vienna Game: Adams' Gambit e4 e5 Nc3 Nf6 Bc4 Nxe4 Qh5 Nd6 Bb3 Nc6 d4 +C27 Vienna Game: Frankenstein-Dracula Variation e4 e5 Nc3 Nf6 Bc4 Nxe4 +C27 Vienna Game: Stanley Variation, Alekhine Variation e4 e5 Nc3 Nf6 Bc4 Nxe4 Qh5 Nd6 Bb3 Be7 Nf3 Nc6 Nxe5 +C27 Vienna Game: Stanley Variation, Frankenstein-Dracula Variation e4 e5 Nc3 Nf6 Bc4 Nxe4 Qh5 Nd6 Bb3 Nc6 Nb5 g6 Qf3 f5 Qd5 Qe7 Nxc7 Kd8 Nxa8 b6 +C27 Vienna Game: Stanley Variation, Monster Declined e4 e5 Nc3 Nf6 Bc4 Nxe4 Qh5 Nd6 Bb3 Be7 +C28 Bishop's Opening: Vienna Hybrid, Hromádka Variation e4 e5 Nc3 Nc6 Bc4 Nf6 d3 Bb4 Ne2 +C28 Vienna Game: Stanley Variation, Bronstein Gambit e4 e5 Nc3 Nc6 Bc4 Nf6 f4 Nxe4 Nf3 +C28 Vienna Game: Stanley Variation, Three Knights Variation e4 e5 Nc3 Nc6 Bc4 Nf6 +C29 Vienna Game: Heyde Variation e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Qf3 f5 d4 +C29 Vienna Game: Vienna Gambit e4 e5 Nc3 Nf6 f4 +C29 Vienna Game: Vienna Gambit, Bardeleben Variation e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Qf3 f5 +C29 Vienna Game: Vienna Gambit, Breyer Variation e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Nf3 Be7 +C29 Vienna Game: Vienna Gambit, Kaufmann Variation e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Nf3 Bg4 Qe2 +C29 Vienna Game: Vienna Gambit, Main Line e4 e5 Nc3 Nf6 f4 d5 +C29 Vienna Game: Vienna Gambit, Modern Variation e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 d3 +C29 Vienna Game: Vienna Gambit, Paulsen Attack e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 Qf3 +C29 Vienna Game: Vienna Gambit, Steinitz Variation e4 e5 Nc3 Nf6 f4 d5 d3 +C29 Vienna Game: Vienna Gambit, Wurzburger Trap e4 e5 Nc3 Nf6 f4 d5 fxe5 Nxe4 d3 Qh4 g3 Nxg3 Nf3 Qh5 Nxd5 +C30 King's Gambit e4 e5 f4 +C30 King's Gambit Declined: Classical Variation e4 e5 f4 Bc5 +C30 King's Gambit Declined: Classical Variation e4 e5 f4 Bc5 Nf3 d6 c3 +C30 King's Gambit Declined: Classical Variation, Euwe Attack e4 e5 f4 Bc5 Nf3 d6 c3 Bg4 fxe5 dxe5 Qa4 +C30 King's Gambit Declined: Classical Variation, Rotlewi Countergambit e4 e5 f4 Bc5 Nf3 d6 b4 +C30 King's Gambit Declined: Classical Variation, Rubinstein Countergambit e4 e5 f4 Bc5 Nf3 d6 c3 f5 +C30 King's Gambit Declined: Classical Variation, Walthoffen Attack e4 e5 f4 Bc5 Qh5 +C30 King's Gambit Declined: Classical, Hanham Variation e4 e5 f4 Bc5 Nf3 d6 Nc3 Nd7 +C30 King's Gambit Declined: Classical, Réti Variation e4 e5 f4 Bc5 Nf3 d6 c3 f5 fxe5 dxe5 d4 exd4 Bc4 +C30 King's Gambit Declined: Classical, Soldatenkov Variation e4 e5 f4 Bc5 Nf3 d6 fxe5 +C30 King's Gambit Declined: Classical, Svenonius Variation e4 e5 Bc4 Nc6 Nc3 Nf6 d3 Bc5 f4 d6 Nf3 Bg4 h3 Bxf3 Qxf3 exf4 +C30 King's Gambit Declined: Hobbs-Zilbermints Gambit e4 e5 f4 Nc6 Nf3 g5 fxg5 h6 +C30 King's Gambit Declined: Keene Defense e4 e5 f4 Qh4 g3 Qe7 +C30 King's Gambit Declined: Keene's Defense e4 e5 f4 Qh4 +C30 King's Gambit Declined: Keene's Defense e4 e5 f4 Qh4 g3 +C30 King's Gambit Declined: Mafia Defense e4 c5 f4 e5 +C30 King's Gambit Declined: Miles Defense e4 e5 f4 Nc6 Nf3 f5 +C30 King's Gambit Declined: Norwalde Variation e4 e5 f4 Qf6 +C30 King's Gambit Declined: Norwalde Variation, Bücker Gambit e4 e5 f4 Qf6 Nc3 Qxf4 Nf3 Bb4 Bc4 +C30 King's Gambit Declined: Norwalde Variation, Schubert Variation e4 e5 f4 Qf6 Nc3 Qxf4 d4 +C30 King's Gambit Declined: Panteldakis Countergambit e4 e5 f4 f5 +C30 King's Gambit Declined: Panteldakis Countergambit, Greco Variation e4 e5 f4 f5 exf5 Qh4 +C30 King's Gambit Declined: Panteldakis Countergambit, Pawn Sacrifice Line e4 e5 f4 f5 exf5 exf4 Qh5 g6 fxg6 Qe7 Kd1 +C30 King's Gambit Declined: Panteldakis Countergambit, Schiller's Defense e4 e5 f4 f5 exf5 Bc5 +C30 King's Gambit Declined: Panteldakis Countergambit, Shirazi Line e4 e5 f4 f5 exf5 exf4 Qh5 Ke7 +C30 King's Gambit Declined: Panteldakis Countergambit, Symmetrical Variation e4 e5 f4 f5 exf5 exf4 Nf3 d5 d4 Bd6 Bd3 +C30 King's Gambit Declined: Petrov's Defense e4 e5 f4 Nf6 +C30 King's Gambit Declined: Queen's Knight Defense e4 e5 f4 Nc6 +C30 King's Gambit Declined: Senechaud Countergambit e4 e5 f4 Bc5 Nf3 g5 +C30 King's Gambit Declined: Soller-Zilbermints Gambit e4 e5 f4 f6 fxe5 Nc6 +C30 King's Gambit Declined: Zilbermints Double Countergambit e4 e5 f4 g5 +C30 King's Gambit Declined: Zilbermints Double Gambit e4 e5 f4 Nc6 Nf3 g5 +C31 King's Gambit Declined: Falkbeer Countergambit e4 e5 f4 d5 +C31 King's Gambit Declined: Falkbeer Countergambit Accepted e4 e5 f4 d5 exd5 +C31 King's Gambit Declined: Falkbeer Countergambit, Anderssen Attack e4 e5 f4 d5 exd5 e4 Bb5 +C31 King's Gambit Declined: Falkbeer Countergambit, Blackburne Attack e4 e5 f4 d5 Nf3 +C31 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit e4 e5 f4 d5 exd5 e4 d3 +C31 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit, Morphy Defense e4 e5 Nc3 Nf6 f4 d5 exd5 e4 d3 Bb4 Bd2 e3 +C31 King's Gambit Declined: Falkbeer Countergambit, Hinrichsen Gambit e4 e5 f4 d5 d4 +C31 King's Gambit Declined: Falkbeer Countergambit, Miles Gambit e4 e5 f4 d5 exd5 Bc5 +C31 King's Gambit Declined: Falkbeer Countergambit, Milner-Barry Variation e4 e5 f4 d5 Nc3 +C31 King's Gambit Declined: Falkbeer Countergambit, Modern Transfer e4 e5 f4 d5 exd5 exf4 +C31 King's Gambit Declined: Falkbeer Countergambit, Nimzowitsch-Marshall Countergambit e4 e5 f4 d5 exd5 c6 +C31 King's Gambit Declined: Falkbeer Countergambit, Pickler Gambit e4 e5 f4 d5 exd5 c6 dxc6 Bc5 +C31 King's Gambit Declined: Falkbeer Countergambit, Rubinstein Variation e4 e5 f4 d5 exd5 e4 Nc3 Nf6 Qe2 +C31 King's Gambit Declined: Falkbeer Countergambit, Staunton Line e4 e5 f4 d5 exd5 e4 +C31 Van Geet Opening: Grünfeld Defense, Steiner Gambit e4 e5 f4 d5 Nc3 dxe4 Nxe4 +C32 King's Gambit Declined: Falkbeer Countergambit, Alapin Variation e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 Nxe4 Nf3 Bc5 Qe2 Bf2 Kd1 Qxd5 Nfd2 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 Nxe4 Qe2 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit Accepted e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit, Keres Variation e4 e5 f4 d5 exd5 e4 d3 Nf6 Nd2 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit, Main Line e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 Nxe4 Nf3 Bc5 Qe2 Bf5 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Gambit, Old Line e4 e5 f4 d5 exd5 e4 d3 Nf6 Qe2 +C32 King's Gambit Declined: Falkbeer Countergambit, Charousek Variation e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 Nxe4 Qe2 Qxd5 Nd2 f5 g4 +C32 King's Gambit Declined: Falkbeer Countergambit, Tarrasch Variation e4 e5 f4 d5 exd5 e4 d3 Nf6 dxe4 Nxe4 Nf3 Bc5 Qe2 Bf5 g4 O-O +C33 King's Gambit Accepted e4 e5 f4 exf4 +C33 King's Gambit Accepted: Basman Gambit e4 e5 f4 exf4 Qe2 +C33 King's Gambit Accepted: Bishop's Gambit e4 e5 f4 exf4 Bc4 +C33 King's Gambit Accepted: Bishop's Gambit, Anderssen Defense e4 e5 f4 exf4 Bc4 g5 +C33 King's Gambit Accepted: Bishop's Gambit, Anderssen Variation e4 e5 f4 exf4 Bc4 d5 Bxd5 c6 +C33 King's Gambit Accepted: Bishop's Gambit, Bledow Countergambit e4 e5 f4 exf4 Bc4 d5 Bxd5 Nf6 +C33 King's Gambit Accepted: Bishop's Gambit, Bledow Variation e4 e5 f4 exf4 Bc4 d5 +C33 King's Gambit Accepted: Bishop's Gambit, Boden Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 Nc6 +C33 King's Gambit Accepted: Bishop's Gambit, Bogoljubow Defense e4 e5 f4 exf4 Bc4 Nf6 Nc3 c6 +C33 King's Gambit Accepted: Bishop's Gambit, Bogoljubow Variation e4 e5 f4 exf4 Bc4 Nf6 Nc3 +C33 King's Gambit Accepted: Bishop's Gambit, Boren-Svenonius Variation e4 e5 f4 exf4 Bc4 d5 Bxd5 Qh4 Kf1 Bd6 +C33 King's Gambit Accepted: Bishop's Gambit, Bryan Countergambit e4 e5 f4 exf4 Bc4 Qh4 Kf1 b5 +C33 King's Gambit Accepted: Bishop's Gambit, Chigorin's Attack e4 e5 f4 exf4 Bc4 Qh4 Kf1 d5 Bxd5 g5 g3 +C33 King's Gambit Accepted: Bishop's Gambit, Classical Defense e4 e5 f4 exf4 Bc4 Qh4 Kf1 Ne7 Nc3 g5 d4 Bg7 +C33 King's Gambit Accepted: Bishop's Gambit, Classical Defense, Cozio Attack e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 Qf3 +C33 King's Gambit Accepted: Bishop's Gambit, Cozio Defense e4 e5 f4 exf4 Bc4 Nf6 +C33 King's Gambit Accepted: Bishop's Gambit, Cozio Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 d6 +C33 King's Gambit Accepted: Bishop's Gambit, First Jaenisch Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 Nf6 +C33 King's Gambit Accepted: Bishop's Gambit, Fraser Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 Nc3 Bg7 g3 fxg3 Qf3 +C33 King's Gambit Accepted: Bishop's Gambit, Gianutio Gambit e4 e5 f4 exf4 Bc4 f5 +C33 King's Gambit Accepted: Bishop's Gambit, Greco Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 Bc5 +C33 King's Gambit Accepted: Bishop's Gambit, Grimm Attack e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 Nc3 Bg7 d4 d6 e5 +C33 King's Gambit Accepted: Bishop's Gambit, Kieseritzky Gambit e4 e5 f4 exf4 Bc4 b5 +C33 King's Gambit Accepted: Bishop's Gambit, Lopez Defense e4 e5 f4 exf4 Bc4 c6 +C33 King's Gambit Accepted: Bishop's Gambit, Lopez Variation e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 +C33 King's Gambit Accepted: Bishop's Gambit, Maurian Defense e4 e5 f4 exf4 Bc4 Nc6 +C33 King's Gambit Accepted: Bishop's Gambit, McDonnell Attack e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 Nc3 Bg7 d4 Ne7 g3 +C33 King's Gambit Accepted: Bishop's Gambit, McDonnell Attack e4 e5 f4 exf4 Bc4 Qh4 Kf1 g5 Nc3 Bg7 g3 +C33 King's Gambit Accepted: Bishop's Gambit, Paulsen Attack e4 e5 f4 exf4 Bc4 Nf6 Nc3 Bb4 e5 +C33 King's Gambit Accepted: Bishop's Gambit, Steinitz Defense e4 e5 f4 exf4 Bc4 Ne7 +C33 King's Gambit Accepted: Breyer Gambit e4 e5 f4 exf4 Qf3 +C33 King's Gambit Accepted: Carrera Gambit e4 e5 f4 exf4 Qh5 +C33 King's Gambit Accepted: Dodo Variation e4 e5 f4 exf4 Qg4 +C33 King's Gambit Accepted: Eisenberg Variation e4 e5 f4 exf4 Nh3 +C33 King's Gambit Accepted: Gaga Gambit e4 e5 f4 exf4 g3 +C33 King's Gambit Accepted: Lopez-Gianutio Countergambit, Hein Variation e4 e5 f4 exf4 Bc4 f5 Qe2 Qh4 Kd1 fxe4 Nc3 Kd8 +C33 King's Gambit Accepted: Mason-Keres Gambit e4 e5 f4 exf4 Nc3 +C33 King's Gambit Accepted: Orsini Gambit e4 e5 f4 exf4 b3 +C33 King's Gambit Accepted: Paris Gambit e4 e5 f4 exf4 Ne2 +C33 King's Gambit Accepted: Schurig Gambit, with Bb5 e4 e5 f4 exf4 Bb5 +C33 King's Gambit Accepted: Schurig Gambit, with Bd3 e4 e5 f4 exf4 Bd3 +C33 King's Gambit Accepted: Stamma Gambit e4 e5 f4 exf4 h4 +C33 King's Gambit Accepted: Tartakower Gambit e4 e5 f4 exf4 Be2 +C33 King's Gambit Accepted: Tartakower Gambit, Weiss Defense e4 e5 f4 exf4 Be2 f5 exf5 d6 +C33 King's Gambit Accepted: Tumbleweed e4 e5 f4 exf4 Kf2 +C33 King's Gambit Accepted: Villemson Gambit e4 e5 f4 exf4 d4 +C34 King's Gambit Accepted: Becker Defense e4 e5 f4 exf4 Nf3 h6 +C34 King's Gambit Accepted: Bonsch-Osmolovsky Variation e4 e5 f4 exf4 Nf3 Ne7 +C34 King's Gambit Accepted: Fischer Defense e4 e5 f4 exf4 Nf3 d6 +C34 King's Gambit Accepted: Fischer Defense, Schulder Gambit e4 e5 f4 exf4 Nf3 d6 b4 +C34 King's Gambit Accepted: Fischer Defense, Spanish Variation e4 e5 f4 exf4 Nf3 d6 d4 Nf6 Bd3 +C34 King's Gambit Accepted: Gianutio Countergambit e4 e5 f4 exf4 Nf3 f5 +C34 King's Gambit Accepted: Greco Gambit e4 e5 f4 exf4 Nf3 d6 Bc4 h6 d4 g5 h4 Bg7 +C34 King's Gambit Accepted: King's Knight's Gambit e4 e5 f4 exf4 Nf3 g5 +C34 King's Gambit Accepted: King's Knight's Gambit e4 e5 f4 exf4 Nf3 +C34 King's Gambit Accepted: MacLeod Defense e4 e5 f4 exf4 Nf3 Nc6 +C34 King's Gambit Accepted: Schallopp Defense e4 e5 f4 exf4 Nf3 Nf6 +C34 King's Gambit Accepted: Schallopp Defense, Tashkent Attack e4 e5 f4 exf4 Nf3 Nf6 e5 Nh5 g4 +C34 King's Gambit Accepted: Wagenbach Defense e4 e5 f4 exf4 Nf3 h5 +C35 King's Gambit Accepted: Cunningham Defense e4 e5 f4 exf4 Nf3 Be7 +C35 King's Gambit Accepted: Cunningham Defense, Bertin Gambit e4 e5 f4 exf4 Nf3 Be7 Bc4 Bh4 g3 +C35 King's Gambit Accepted: Cunningham Defense, Bertin Gambit e4 e5 f4 exf4 Nf3 Be7 Bc4 Bh4 g3 fxg3 O-O gxh2 Kh1 +C35 King's Gambit Accepted: Cunningham Defense, McCormick Defense e4 e5 f4 exf4 Nf3 Be7 Bc4 Nf6 +C36 King's Gambit Accepted: Abbazia Defense e4 e5 f4 exf4 Nf3 d5 exd5 Nf6 +C36 King's Gambit Accepted: Abbazia Defense, Main Line e4 e5 f4 exf4 Nf3 d5 exd5 Nf6 Bb5 c6 dxc6 bxc6 Bc4 Nd5 +C36 King's Gambit Accepted: Modern Defense e4 e5 f4 exf4 Nf3 d5 +C36 King's Gambit Accepted: Modern Defense e4 e5 f4 exf4 Nf3 d5 exd5 +C37 King's Gambit Accepted: Australian Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 h4 +C37 King's Gambit Accepted: Blachly Gambit e4 e5 f4 exf4 Nf3 Nc6 Bc4 g5 +C37 King's Gambit Accepted: Double Muzio Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 e5 Qxe5 Bxf7 +C37 King's Gambit Accepted: Double Muzio Gambit, Baldwin Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 Nc3 Qd4 Kh1 Qxc4 Nd5 +C37 King's Gambit Accepted: Double Muzio Gambit, Bello Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 Nc3 +C37 King's Gambit Accepted: Double Muzio Gambit, Paulsen Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 e5 Qxe5 d3 Bh6 Nc3 Ne7 Bd2 Nbc6 Rae1 +C37 King's Gambit Accepted: Double Muzio Gambit, Young Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 Bxf7 Kxf7 d4 Qxd4 Be3 Qf6 Nc3 fxe3 +C37 King's Gambit Accepted: Ghulam-Kassim Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 d4 +C37 King's Gambit Accepted: Ghulam-Kassim Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 d4 gxf3 Qxf3 +C37 King's Gambit Accepted: King's Knight's Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 +C37 King's Gambit Accepted: Kotov Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 d4 gxf3 Bxf4 +C37 King's Gambit Accepted: Lolli Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Bxf7 +C37 King's Gambit Accepted: Lolli Gambit, Young Variation e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Bxf7 Kxf7 O-O gxf3 Qxf3 Qf6 d4 Qxd4 Be3 Qf6 Nc3 +C37 King's Gambit Accepted: McDonnell Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Nc3 +C37 King's Gambit Accepted: Middleton Countergambit e4 e5 f4 exf4 Nf3 g5 Bc4 d6 O-O Bg4 h3 h5 hxg4 hxg4 +C37 King's Gambit Accepted: Muzio Gambit Accepted, From's Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qe7 +C37 King's Gambit Accepted: Muzio Gambit, Brentano Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O d5 +C37 King's Gambit Accepted: Muzio Gambit, Holloway Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Nc6 +C37 King's Gambit Accepted: Muzio Gambit, Kling and Horwitz Counterattack e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O Qe7 +C37 King's Gambit Accepted: Muzio Gambit, Sarratt Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O gxf3 Qxf3 Qf6 +C37 King's Gambit Accepted: Muzio Gambit, Wild Muzio Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 O-O +C37 King's Gambit Accepted: Quaade Gambit e4 e5 f4 exf4 Nf3 g5 Nc3 +C37 King's Gambit Accepted: Rosentreter Gambit e4 e5 f4 exf4 Nf3 g5 d4 +C37 King's Gambit Accepted: Rosentreter Gambit, Bird Gambit e4 e5 f4 exf4 Nf3 g5 d4 g4 Ne5 Qh4 g3 +C37 King's Gambit Accepted: Rosentreter Gambit, Sörensen Gambit e4 e5 f4 exf4 Nf3 g5 d4 g4 Nc3 +C37 King's Gambit Accepted: Rosentreter Gambit, Testa Variation e4 e5 f4 exf4 Nf3 g5 d4 g4 Bxf4 +C37 King's Gambit Accepted: Salvio Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 +C37 King's Gambit Accepted: Salvio Gambit, Anderssen Counterattack e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 Nh6 d4 d6 +C37 King's Gambit Accepted: Salvio Gambit, Cochrane Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 f3 +C37 King's Gambit Accepted: Salvio Gambit, Santa Maria Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 Nf6 +C37 King's Gambit Accepted: Salvio Gambit, Silberschmidt Defense e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 Nh6 +C37 King's Gambit Accepted: Salvio Gambit, Viennese Variation e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 Nc6 +C37 King's Gambit Accepted: Silberschmidt Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 g4 Ne5 Qh4 Kf1 Nh6 d4 f3 +C37 King's Gambit Accepted: Sörensen Gambit e4 e5 f4 exf4 Nf3 g5 d4 g4 Ne5 +C38 King's Gambit Accepted: Greco Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 Bg7 h4 h6 d4 d6 Nc3 c6 hxg5 hxg5 Rxh8 Bxh8 Ne5 +C38 King's Gambit Accepted: Hanstein Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 Bg7 O-O +C38 King's Gambit Accepted: Mayet Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 Bg7 d4 d6 c3 +C38 King's Gambit Accepted: Philidor Gambit e4 e5 f4 exf4 Nf3 g5 Bc4 Bg7 h4 +C38 King's Gambit Accepted: Philidor Gambit, Schultz Variation e4 e5 f4 exf4 Nf3 h6 Bc4 d6 d4 g5 h4 Bg7 Qd3 +C38 King's Gambit Accepted: Traditional Variation e4 e5 f4 exf4 Nf3 g5 Bc4 Bg7 +C39 King's Gambit Accepted: Allgaier Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 +C39 King's Gambit Accepted: Allgaier Gambit, Thorold Attack e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 d4 +C39 King's Gambit Accepted: Allgaier Gambit, Urusov Attack e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 Bc4 +C39 King's Gambit Accepted: Allgaier, Blackburne Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 Nc3 +C39 King's Gambit Accepted: Allgaier, Cook Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 d4 d5 Bxf4 dxe4 Bc4 Kg7 Be5 +C39 King's Gambit Accepted: Allgaier, Horny Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 Qxg4 Nf6 Qxf4 Bd6 +C39 King's Gambit Accepted: Allgaier, Schlechter Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 Nf6 +C39 King's Gambit Accepted: Allgaier, Urusov Attack e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 Kxf7 Bc4 d5 Bxd5 Kg7 d4 +C39 King's Gambit Accepted: Kieseritzky Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 +C39 King's Gambit Accepted: Kieseritzky Gambit, Anderssen Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Bc4 d5 exd5 Bd6 +C39 King's Gambit Accepted: Kieseritzky Gambit, Anderssen-Cordel Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Bc4 d5 exd5 Bd6 d4 Nh5 Bxf4 Nxf4 +C39 King's Gambit Accepted: Kieseritzky Gambit, Berlin Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 +C39 King's Gambit Accepted: Kieseritzky Gambit, Berlin Defense, Rubinstein Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 d4 +C39 King's Gambit Accepted: Kieseritzky Gambit, Berlin Defense, de Riviere Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Nxg4 d5 +C39 King's Gambit Accepted: Kieseritzky Gambit, Brentano Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 d5 +C39 King's Gambit Accepted: Kieseritzky Gambit, Brentano Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 d5 d4 Nf6 Bxf4 +C39 King's Gambit Accepted: Kieseritzky Gambit, Brentano Defense, Caro Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 d5 d4 Nf6 Bxf4 Nxe4 Nd2 +C39 King's Gambit Accepted: Kieseritzky Gambit, Cotter Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ng5 h6 Nxf7 +C39 King's Gambit Accepted: Kieseritzky Gambit, Kolisch Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 d6 +C39 King's Gambit Accepted: Kieseritzky Gambit, Long Whip e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 h5 +C39 King's Gambit Accepted: Kieseritzky Gambit, Neumann Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nc6 +C39 King's Gambit Accepted: Kieseritzky Gambit, Paulsen Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Bg7 +C39 King's Gambit Accepted: Kieseritzky Gambit, Paulsen Defense Deferred e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Bc4 d5 exd5 Bg7 +C39 King's Gambit Accepted: Kieseritzky Gambit, Rice Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Bc4 d5 exd5 Bd6 O-O Bxe5 +C39 King's Gambit Accepted: Kieseritzky Gambit, Rosenthal Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Qe7 +C39 King's Gambit Accepted: Kieseritzky, Long Whip Defense, Jaenisch Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 h5 Bc4 Rh7 d4 Bh6 Nc3 +C39 King's Gambit Accepted: Kieseritzky, Polerio Defense e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Be7 +C39 King's Gambit Accepted: Kieseritzky, Rice Gambit e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Nf6 Bc4 d5 exd5 Bd6 O-O +C39 King's Gambit Accepted: Kieseritzky, Salvio Defense, Cozio Variation e4 e5 f4 exf4 Nf3 g5 h4 g4 Ne5 Qe7 d4 f5 Bc4 +C39 King's Gambit Accepted: King's Knight's Gambit e4 e5 f4 exf4 Nf3 g5 h4 +C40 Elephant Gambit e4 e5 Nf3 d5 +C40 Elephant Gambit: Maróczy Gambit e4 e5 Nf3 d5 exd5 Bd6 +C40 Elephant Gambit: Paulsen Countergambit e4 e5 Nf3 d5 exd5 e4 +C40 Elephant Gambit: Wasp Variation e4 e5 Nf3 d5 Nxe5 dxe4 Bc4 Qg5 +C40 Gunderam Defense e4 e5 Nf3 Qe7 +C40 King's Knight Opening e4 e5 Nf3 +C40 King's Pawn Game: Busch-Gass Gambit e4 e5 Nf3 Bc5 +C40 King's Pawn Game: Busch-Gass Gambit, Chiodini Gambit e4 e5 Nf3 Bc5 Nxe5 Nc6 +C40 King's Pawn Game: Damiano Defense e4 e5 Nf3 f6 +C40 King's Pawn Game: Damiano Defense, Damiano Gambit e4 e5 Nf3 f6 Nxe5 fxe5 Qh5 g6 Qxe5 Qe7 Qxh8 +C40 King's Pawn Game: Damiano Defense, Damiano Gambit, Chigorin Gambit e4 e5 Nf3 f6 Nxe5 Qe7 Nf3 d5 +C40 King's Pawn Game: Gunderam Defense, Gunderam Gambit e4 e5 Nf3 Qe7 Bc4 f5 +C40 King's Pawn Game: Gunderam Gambit e4 e5 Nf3 c6 +C40 King's Pawn Game: La Bourdonnais Gambit e4 e5 Nf3 Qf6 Bc4 Qg6 O-O +C40 King's Pawn Game: McConnell Defense e4 e5 Nf3 Qf6 +C40 Latvian Gambit e4 e5 Nf3 f5 +C40 Latvian Gambit Accepted e4 e5 Nf3 f5 exf5 +C40 Latvian Gambit Accepted: Bilguer Variation e4 e5 Nf3 f5 Nxe5 Qf6 d4 d6 Nc4 +C40 Latvian Gambit Accepted: Bronstein Attack e4 e5 Nf3 f5 Nxe5 Qf6 d4 d6 Nc4 fxe4 Be2 +C40 Latvian Gambit Accepted: Bronstein Gambit e4 e5 Nf3 f5 Nxe5 Qf6 d4 d6 Nc4 fxe4 Qh5 g6 Qe2 +C40 Latvian Gambit Accepted: Foltys Variation e4 e5 Nf3 f5 Nxe5 Qf6 Nc4 fxe4 d3 +C40 Latvian Gambit Accepted: Foltys-Leonhardt Variation e4 e5 Nf3 f5 Nxe5 Qf6 Nc4 +C40 Latvian Gambit Accepted: Leonhardt Variation e4 e5 Nf3 f5 Nxe5 Qf6 Nc4 fxe4 Nc3 +C40 Latvian Gambit Accepted: Main Line e4 e5 Nf3 f5 Nxe5 Qf6 d4 +C40 Latvian Gambit Accepted: Nimzowitsch Attack e4 e5 Nf3 f5 Nxe5 Qf6 d4 d6 Nc4 fxe4 Ne3 +C40 Latvian Gambit: Behting Variation e4 e5 Nf3 f5 Bc4 fxe4 Nxe5 Qg5 Nf7 Qxg2 Rf1 d5 Nxh8 Nf6 +C40 Latvian Gambit: Corkscrew Countergambit e4 e5 Nf3 f5 Bc4 fxe4 Nxe5 Nf6 +C40 Latvian Gambit: Corkscrew Gambit e4 e5 Nf3 f5 Nxe5 Nf6 Bc4 fxe4 Nf7 Qe7 Nxh8 d5 +C40 Latvian Gambit: Diepstraten Countergambit e4 e5 Nf3 f5 c4 +C40 Latvian Gambit: Fraser Defense e4 e5 Nf3 f5 Nxe5 Nc6 +C40 Latvian Gambit: Greco Variation e4 e5 Nf3 f5 Nxe5 Qe7 +C40 Latvian Gambit: Lobster Gambit e4 e5 Nf3 f5 g4 +C40 Latvian Gambit: Mason Countergambit e4 e5 Nf3 f5 d4 +C40 Latvian Gambit: Mayet Attack e4 e5 Nf3 f5 Bc4 +C40 Latvian Gambit: Mayet Attack, Morgado Defense e4 e5 Nf3 f5 Bc4 Nf6 +C40 Latvian Gambit: Mayet Attack, Poisoned Pawn Variation e4 e5 Nf3 f5 Bc4 fxe4 Nxe5 Qg5 d4 Qxg2 +C40 Latvian Gambit: Mayet Attack, Polerio-Svedenborg Variation e4 e5 Nf3 f5 Bc4 fxe4 Nxe5 d5 +C40 Latvian Gambit: Mayet Attack, Strautins Gambit e4 e5 Nf3 f5 Bc4 b5 +C40 Latvian Gambit: Mlotkowski Variation e4 e5 Nf3 f5 Nc3 +C40 Latvian Gambit: Senechaud Gambit e4 e5 Nf3 f5 b4 +C41 Philidor Defense e4 e5 Nf3 d6 +C41 Philidor Defense e4 e5 Nf3 d6 d4 +C41 Philidor Defense e4 e5 Nf3 d6 Bc4 +C41 Philidor Defense e4 e5 Nf3 d6 Bc4 Be7 +C41 Philidor Defense: Albin-Blackburne Gambit e4 e5 Nf3 d6 d4 Bg4 dxe5 Nd7 +C41 Philidor Defense: Berger Variation e4 e5 Nf3 d6 d4 exd4 Nxd4 Nf6 Nc3 Be7 Be2 O-O O-O c5 Nf3 Nc6 Bg5 Be6 Re1 +C41 Philidor Defense: Bird Gambit e4 e5 Nf3 d6 d4 exd4 c3 +C41 Philidor Defense: Boden Variation e4 e5 Nf3 d6 d4 exd4 Qxd4 Bd7 +C41 Philidor Defense: Exchange Variation e4 e5 Nf3 d6 d4 exd4 +C41 Philidor Defense: Exchange Variation e4 e5 Nf3 d6 d4 exd4 Nxd4 +C41 Philidor Defense: Exchange Variation e4 e5 Nf3 d6 d4 exd4 Nxd4 Nf6 +C41 Philidor Defense: Hanham Variation e4 e5 Nf3 d6 d4 Nd7 +C41 Philidor Defense: Hanham Variation, Delmar Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 c6 c3 +C41 Philidor Defense: Hanham Variation, Krause Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 c6 O-O +C41 Philidor Defense: Hanham Variation, Schlechter Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 c6 Nc3 +C41 Philidor Defense: Hanham Variation, Sharp Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 Nb6 +C41 Philidor Defense: Hanham Variation, Steiner Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 c6 O-O Be7 dxe5 +C41 Philidor Defense: Hanham, Kmoch Variation e4 e5 Nf3 d6 d4 Nd7 Bc4 c6 Ng5 +C41 Philidor Defense: Larsen Variation e4 e5 Nf3 d6 d4 exd4 Nxd4 g6 +C41 Philidor Defense: Lion Variation e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 +C41 Philidor Defense: Lion Variation, Bishop Sacrifice e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 Bc4 Be7 Bxf7 +C41 Philidor Defense: Lion Variation, Delayed Bishop Sacrifice e4 d6 d4 Nf6 Nc3 Nbd7 Nf3 e5 Bc4 Be7 dxe5 dxe5 Bxf7 +C41 Philidor Defense: Lion Variation, Forcing Line e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 Bc4 Be7 Ng5 O-O Bxf7 Rxf7 Ne6 +C41 Philidor Defense: Lion Variation, Lion's Claw, with Bc4 and h6 e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 Bc4 Be7 O-O h6 +C41 Philidor Defense: Lion Variation, Lion's Claw, with Be2 and c6 e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 Be2 Be7 O-O c6 +C41 Philidor Defense: Lion Variation, Shirov Gambit e4 e5 Nf3 d6 d4 Nd7 Nc3 Ngf6 g4 +C41 Philidor Defense: Lion Variation, Sozin Variation e4 d6 d4 Nf6 Nc3 e5 Nf3 Nbd7 Bc4 Be7 O-O O-O Qe2 c6 a4 exd4 +C41 Philidor Defense: Lopez Countergambit e4 e5 Nf3 d6 Bc4 f5 +C41 Philidor Defense: Lopez Countergambit, Jaenisch Variation e4 e5 Nf3 d6 d4 f5 Bc4 exd4 Ng5 Nh6 Nxh7 +C41 Philidor Defense: Morphy Gambit e4 e5 Nf3 d6 d4 exd4 Bc4 +C41 Philidor Defense: Nimzowitsch Variation e4 e5 Nf3 d6 d4 Nf6 +C41 Philidor Defense: Nimzowitsch Variation e4 e5 Nf3 d6 d4 Nf6 dxe5 +C41 Philidor Defense: Nimzowitsch Variation, Klein Variation e4 e5 Nf3 d6 d4 Nf6 Bc4 +C41 Philidor Defense: Nimzowitsch Variation, Rellstab Variation e4 e5 Nf3 d6 d4 Nf6 dxe5 Nxe4 Qd5 +C41 Philidor Defense: Nimzowitsch Variation, Sokolsky Variation e4 e5 Nf3 d6 d4 Nf6 dxe5 Nxe4 Nbd2 +C41 Philidor Defense: Nimzowitsch, Larobok Variation e4 e5 Nf3 d6 d4 Nf6 Nc3 Nbd7 Bc4 Be7 Ng5 O-O Bxf7 +C41 Philidor Defense: Nimzowitsch, Locock Variation e4 e5 Nf3 d6 d4 Nf6 Ng5 +C41 Philidor Defense: Paulsen Attack e4 e5 Nf3 d6 d4 exd4 Nxd4 d5 exd5 +C41 Philidor Defense: Philidor Countergambit e4 e5 Nf3 d6 d4 f5 +C41 Philidor Defense: Philidor Countergambit, Berger Variation e4 e5 Nf3 d6 d4 f5 dxe5 fxe4 Ng5 d5 e6 Bc5 Nc3 +C41 Philidor Defense: Philidor Countergambit, Zukertort Variation e4 e5 Nf3 d6 d4 f5 Nc3 +C41 Philidor Defense: Philidor Countergambit, del Rio Attack e4 e5 Nf3 d6 d4 f5 dxe5 fxe4 Ng5 d5 e6 +C41 Philidor Defense: Philidor Gambit e4 e5 Nf3 d6 d4 Bd7 +C41 Philidor Defense: Steinitz Variation e4 e5 Nf3 d6 Bc4 Be7 c3 +C42 Petrov's Defense e4 e5 Nf3 Nf6 +C42 Petrov's Defense e4 e5 Nf3 Nf6 Nxe5 +C42 Petrov's Defense e4 e5 Nf3 Nf6 Nxe5 d6 +C42 Petrov's Defense e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 +C42 Petrov's Defense e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 +C42 Petrov's Defense: Classical Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 +C42 Petrov's Defense: Classical Attack, Berger Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Be7 O-O Nc6 Re1 Bg4 c3 f5 Nbd2 +C42 Petrov's Defense: Classical Attack, Chigorin Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Be7 O-O Nc6 Re1 +C42 Petrov's Defense: Classical Attack, Chigorin Variation, Browne Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 O-O Be7 c4 Nb4 cxd5 +C42 Petrov's Defense: Classical Attack, Chigorin Variation, Main Line e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 O-O Be7 c4 Nb4 Be2 +C42 Petrov's Defense: Classical Attack, Closed Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 Nf6 +C42 Petrov's Defense: Classical Attack, Jaenisch Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 O-O Be7 c4 +C42 Petrov's Defense: Classical Attack, Krause Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 O-O Be7 Re1 Bg4 c3 f5 c4 +C42 Petrov's Defense: Classical Attack, Marshall Trap e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Bd6 O-O O-O c4 Bg4 cxd5 f5 Re1 Bxh2 +C42 Petrov's Defense: Classical Attack, Marshall Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Bd6 +C42 Petrov's Defense: Classical Attack, Marshall Variation, Chinese Gambit e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Bd6 O-O O-O c4 c6 Re1 Bg4 +C42 Petrov's Defense: Classical Attack, Maróczy Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Be7 O-O Nc6 Re1 Bg4 c3 f5 c4 Bh4 +C42 Petrov's Defense: Classical Attack, Mason Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Be7 O-O O-O +C42 Petrov's Defense: Classical Attack, Mason-Showalter Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Nc6 +C42 Petrov's Defense: Classical Attack, Staunton Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Bd6 O-O O-O c4 c6 +C42 Petrov's Defense: Classical Attack, Tarrasch Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d4 d5 Bd3 Bd6 O-O O-O c4 Bg4 +C42 Petrov's Defense: Cochrane Gambit e4 e5 Nf3 Nf6 Nxe5 d6 Nxf7 +C42 Petrov's Defense: Cochrane Gambit, Bishop Check Line e4 e5 Nf3 Nf6 Nxe5 d6 Nxf7 Kxf7 Bc4 +C42 Petrov's Defense: Cochrane Gambit, Center Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nxf7 Kxf7 d4 +C42 Petrov's Defense: Cozio Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 Qe2 +C42 Petrov's Defense: Damiano Variation e4 e5 Nf3 Nf6 Nxe5 Nxe4 +C42 Petrov's Defense: Damiano Variation, Kholmov Gambit e4 e5 Nf3 Nf6 Nxe5 Nxe4 Qe2 Qe7 +C42 Petrov's Defense: French Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 d3 +C42 Petrov's Defense: Italian Variation e4 e5 Nf3 Nf6 Bc4 +C42 Petrov's Defense: Karklins-Martinovsky Variation e4 e5 Nf3 Nf6 Nxe5 d6 Nd3 +C42 Petrov's Defense: Kaufmann Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 c4 +C42 Petrov's Defense: Millennium Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 Bd3 +C42 Petrov's Defense: Moody Gambit e4 e5 Nf3 Nf6 Qe2 Nc6 d4 +C42 Petrov's Defense: Nimzowitsch Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nf3 Nxe4 Nc3 +C42 Petrov's Defense: Paulsen Attack e4 e5 Nf3 Nf6 Nxe5 d6 Nc4 +C42 Petrov's Defense: Stafford Gambit e4 e5 Nf3 Nf6 Nxe5 Nc6 +C42 Petrov's Defense: Stafford Gambit Accepted e4 e5 Nf3 Nf6 Nxe5 Nc6 Nxc6 dxc6 +C42 Petrov's Defense: Stafford Gambit Accepted e4 e5 Nf3 Nf6 Nxe5 Nc6 Nxc6 dxc6 Nc3 Bc5 +C42 Petrov's Defense: Stafford Gambit Accepted e4 e5 Nf3 Nf6 Nxe5 Nc6 Nxc6 dxc6 d3 Bc5 +C42 Petrov's Defense: Three Knights Game e4 e5 Nf3 Nf6 Nc3 +C43 Bishop's Opening: Urusov Gambit e4 e5 Bc4 Nf6 d4 exd4 Nf3 +C43 Bishop's Opening: Urusov Gambit, Keidansky Gambit e4 e5 Bc4 Nf6 d4 exd4 Nf3 Nxe4 Qxd4 +C43 Petrov's Defense: Modern Attack e4 e5 Nf3 Nf6 d4 +C43 Petrov's Defense: Modern Attack e4 e5 Nf3 Nf6 d4 exd4 +C43 Petrov's Defense: Modern Attack, Bardeleben Variation e4 e5 Nf3 Nf6 d4 exd4 e5 Ne4 Qe2 Nc5 Nxd4 Nc6 +C43 Petrov's Defense: Modern Attack, Center Attack e4 e5 Nf3 Nf6 d4 exd4 e5 Ne4 Qxd4 +C43 Petrov's Defense: Modern Attack, Center Variation e4 e5 Nf3 Nf6 d4 Nxe4 Bd3 +C43 Petrov's Defense: Modern Attack, Murrey Variation e4 e5 Nf3 Nf6 d4 Nxe4 Bd3 Nc6 +C43 Petrov's Defense: Modern Attack, Steinitz Variation e4 e5 Nf3 Nf6 d4 exd4 e5 Ne4 Qe2 +C43 Petrov's Defense: Modern Attack, Symmetrical Variation e4 e5 Nf3 Nf6 d4 d5 +C43 Petrov's Defense: Modern Attack, Tal Gambit e4 e5 Nf3 Nf6 d4 exd4 e5 Ne4 Bb5 +C43 Petrov's Defense: Modern Attack, Trifunovic Variation e4 e5 Nf3 Nf6 d4 Nxe4 Bd3 d5 Nxe5 Bd6 O-O O-O c4 Bxe5 +C44 Dresden Opening: The Goblin e4 e5 Nf3 Nc6 c4 Nf6 Nxe5 +C44 Irish Gambit e4 e5 Nf3 Nc6 Nxe5 +C44 King's Knight Opening: Konstantinopolsky e4 e5 Nf3 Nc6 g3 +C44 King's Knight Opening: Normal Variation e4 e5 Nf3 Nc6 +C44 King's Pawn Game: Dresden Opening e4 e5 Nf3 Nc6 c4 +C44 King's Pawn Game: Pachman Wing Gambit e4 e5 Nf3 Nc6 b4 +C44 King's Pawn Game: Schulze-Müller Gambit e4 e5 Nf3 Nc6 Nxe5 Nxe5 d4 +C44 King's Pawn Game: Tayler Opening e4 e5 Nf3 Nc6 Be2 +C44 King's Pawn Game: Tayler Opening e4 e5 Nf3 Nc6 Be2 Nf6 d4 +C44 King's Pawn Game: Tayler Opening, Basman Gambit e4 e5 Nf3 Nc6 Be2 Nf6 d4 exd4 e5 +C44 King's Pawn Game: Tayler Opening, Inverted Hanham e4 e5 Nf3 Nc6 Be2 Nf6 d3 d5 Nbd2 +C44 Latvian Gambit: Clam Gambit e4 e5 Nf3 Nc6 d3 f5 exf5 +C44 Ponziani Opening e4 e5 Nf3 Nc6 c3 +C44 Ponziani Opening: Caro Gambit e4 e5 Nf3 Nc6 c3 d5 Qa4 Bd7 +C44 Ponziani Opening: Jaenisch Counterattack e4 e5 Nf3 Nc6 c3 Nf6 +C44 Ponziani Opening: Jaenisch Counterattack e4 e5 Nf3 Nc6 c3 Nf6 d3 +C44 Ponziani Opening: Jaenisch Counterattack e4 e5 Nf3 Nc6 c3 Nf6 d3 d5 +C44 Ponziani Opening: Jaenisch Counterattack e4 e5 Nf3 Nc6 c3 Nf6 d3 d5 Nbd2 +C44 Ponziani Opening: Leonhardt Variation e4 e5 Nf3 Nc6 c3 d5 Qa4 Nf6 +C44 Ponziani Opening: Neumann Gambit e4 e5 Nf3 Nc6 c3 Nf6 Bc4 +C44 Ponziani Opening: Ponziani Countergambit e4 e5 Nf3 Nc6 c3 f5 +C44 Ponziani Opening: Ponziani Countergambit, Schmidt Attack e4 e5 Nf3 Nc6 c3 f5 d4 d6 d5 +C44 Ponziani Opening: Romanishin Variation e4 e5 Nf3 Nc6 c3 Be7 +C44 Ponziani Opening: Réti Variation e4 e5 Nf3 Nc6 c3 Nge7 +C44 Ponziani Opening: Spanish Variation e4 e5 Nf3 Nc6 c3 d5 Bb5 +C44 Ponziani Opening: Spanish Variation, Harrwitz Attack, Nikitin Gambit e4 e5 Nf3 Nc6 c3 d5 Bb5 dxe4 Nxe5 Qd5 Qa4 +C44 Ponziani Opening: Steinitz Variation e4 e5 Nf3 Nc6 c3 d5 Qa4 f6 +C44 Ponziani Opening: Vukovic Gambit e4 e5 Nf3 Nc6 c3 Nf6 d4 Nxe4 d5 Bc5 +C44 Scotch Game e4 e5 Nf3 Nc6 d4 +C44 Scotch Game e4 e5 Nf3 Nc6 d4 exd4 +C44 Scotch Game: Benima Defense e4 e5 Nf3 Nc6 Bc4 Be7 d4 exd4 +C44 Scotch Game: Cochrane Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bb4 c3 dxc3 bxc3 Ba5 e5 +C44 Scotch Game: Cochrane-Shumov Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 Ng5 Nh6 Nxf7 Nxf7 Bxf7 Kxf7 Qh5 g6 Qxc5 d5 +C44 Scotch Game: Göring Gambit e4 e5 Nf3 Nc6 d4 exd4 c3 +C44 Scotch Game: Göring Gambit, Bardeleben Variation e4 e5 Nf3 Nc6 d4 exd4 c3 dxc3 Bc4 Nf6 Nxc3 Bb4 +C44 Scotch Game: Göring Gambit, Double Pawn Sacrifice e4 e5 Nf3 Nc6 d4 exd4 c3 dxc3 Bc4 +C44 Scotch Game: Göring Gambit, Main Line e4 e5 Nf3 Nc6 d4 exd4 c3 dxc3 Nxc3 Bb4 +C44 Scotch Game: Hanneken Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bb4 c3 dxc3 O-O cxb2 Bxb2 Nf6 Ng5 O-O e5 Nxe5 +C44 Scotch Game: Haxo Gambit e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 +C44 Scotch Game: Lolli Variation e4 e5 Nf3 Nc6 d4 Nxd4 +C44 Scotch Game: Lolli Variation e4 e5 Nf3 Nc6 d4 Nxd4 Nxd4 exd4 Qxd4 +C44 Scotch Game: Napoleon Gambit e4 e5 Nf3 Nc6 d4 Nxd4 Nxd4 exd4 Bc4 +C44 Scotch Game: Relfsson Gambit e4 e5 Nf3 Nc6 d4 exd4 Bb5 +C44 Scotch Game: Scotch Gambit e4 e5 Nf3 Nc6 d4 exd4 Bc4 +C44 Scotch Game: Scotch Gambit, Advance Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 e5 +C44 Scotch Game: Scotch Gambit, Cochrane-Anderssen Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 O-O d6 c3 Bg4 +C44 Scotch Game: Scotch Gambit, Dubois Réti Defense e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 +C44 Scotch Game: Scotch Gambit, Göring Gambit Declined e4 e5 Nf3 Nc6 d4 exd4 c3 d5 +C44 Scotch Game: Scotch Gambit, Kingside Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 e5 Ng4 +C44 Scotch Game: Scotch Gambit, London Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bb4 +C44 Scotch Game: Scotch Gambit, Sarratt Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 Ng5 +C44 Scotch Game: Sea-Cadet Mate e4 e5 Nf3 Nc6 d4 exd4 c3 dxc3 Nxc3 d6 Bc4 Bg4 O-O Ne5 Nxe5 Bxd1 Bxf7 Ke7 Nd5 +C44 Scotch Game: Vitzthum Attack e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 Ng5 Nh6 Qh5 +C45 Scotch Game e4 e5 Nf3 Nc6 d4 exd4 Nxd4 +C45 Scotch Game e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nb5 Bb4 Bd2 +C45 Scotch Game: Alekhine Gambit e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nf6 e5 +C45 Scotch Game: Blumenfeld Attack e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 Nb5 +C45 Scotch Game: Braune Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Be3 +C45 Scotch Game: Classical Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 +C45 Scotch Game: Classical Variation, Blackburne Attack e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Nge7 Qd2 +C45 Scotch Game: Classical Variation, Intermezzo Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Nxc6 Qf6 +C45 Scotch Game: Classical Variation, Millennium Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Qg6 +C45 Scotch Game: Fraser Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nf3 +C45 Scotch Game: Ghulam-Kassim Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nxd4 Qxd4 d6 Bd3 +C45 Scotch Game: Gottschall Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Nge7 Qd2 d5 Nb5 Bxe3 Qxe3 O-O Nxc7 Rb8 Nxd5 Nxd5 exd5 Nb4 +C45 Scotch Game: Horwitz Attack e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nb5 +C45 Scotch Game: Horwitz Attack, Blackburne Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nb5 Bb4 Bd2 Qxe4 Be2 Kd8 O-O Bxd2 Qxd2 +C45 Scotch Game: Malaniuk Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bb4 +C45 Scotch Game: Meitner Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Nge7 Nc2 +C45 Scotch Game: Mieses Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nf6 Nxc6 bxc6 e5 +C45 Scotch Game: Modern Defense e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nc3 Bb4 +C45 Scotch Game: Paulsen Attack e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Nge7 Bb5 +C45 Scotch Game: Paulsen Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nf5 +C45 Scotch Game: Paulsen, Gunsberg Defense e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Be3 Qf6 c3 Nge7 Bb5 Nd8 +C45 Scotch Game: Potter Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Nb3 +C45 Scotch Game: Romanishin Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Bc5 Nb3 Bb4 +C45 Scotch Game: Rosenthal Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nb5 Bb4 Bd2 Qxe4 Be2 Kd8 O-O Bxd2 Nxd2 Qg6 +C45 Scotch Game: Schmidt Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nf6 +C45 Scotch Game: Steinitz Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 +C45 Scotch Game: Steinitz Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Qh4 Nc3 +C45 Scotch Game: Tartakower Variation e4 e5 Nf3 Nc6 d4 exd4 Nxd4 Nf6 Nxc6 bxc6 Nd2 +C46 Three Knights Opening e4 e5 Nf3 Nc6 Nc3 +C46 Three Knights Opening e4 e5 Nf3 Nc6 Nc3 Bb4 +C46 Three Knights Opening: Schlechter Variation e4 e5 Nf3 Nc6 Nc3 Bb4 Nd5 Nf6 +C46 Three Knights Opening: Steinitz Defense e4 e5 Nf3 Nc6 Nc3 g6 +C46 Three Knights Opening: Steinitz-Rosenthal Variation e4 e5 Nf3 Nc6 Nc3 g6 d4 exd4 Nd5 +C46 Three Knights Opening: Winawer Defense e4 e5 Nf3 Nc6 Nc3 f5 +C47 Four Knights Game e4 e5 Nf3 Nc6 Nc3 Nf6 +C47 Four Knights Game: Glek System e4 e5 Nf3 Nc6 Nc3 Nf6 g3 +C47 Four Knights Game: Glek System e4 e5 Nf3 Nc6 Nc3 Nf6 g3 d5 exd5 Nxd5 Bg2 Nxc3 bxc3 +C47 Four Knights Game: Gunsberg Variation e4 e5 Nf3 Nc6 Nc3 Nf6 a3 +C47 Four Knights Game: Gunsberg Variation, Provincial Opening e4 e5 Nf3 Nc6 Nc3 Nf6 a3 d6 h3 +C47 Four Knights Game: Halloween Gambit e4 e5 Nf3 Nc6 Nc3 Nf6 Nxe5 +C47 Four Knights Game: Halloween Gambit, Oldtimer Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Nxe5 Nxe5 d4 Ng6 e5 Ng8 Bc4 Bb4 Qf3 f5 +C47 Four Knights Game: Halloween Gambit, Plasma Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Nxe5 Nxe5 d4 Nc6 d5 Ne5 f4 Ng6 e5 Ng8 d6 cxd6 exd6 Qf6 Nb5 Rb8 +C47 Four Knights Game: Italian Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Nc3 +C47 Four Knights Game: Italian Variation, Noa Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 Nc3 Nxe4 Bxf7 +C47 Four Knights Game: Naroditsky Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Nd5 +C47 Four Knights Game: Scotch Variation e4 e5 Nf3 Nc6 Nc3 Nf6 d4 +C47 Four Knights Game: Scotch Variation Accepted e4 e5 Nf3 Nc6 Nc3 Nf6 d4 exd4 +C47 Four Knights Game: Scotch Variation Accepted, Main Line e4 e5 Nf3 Nc6 Nc3 Nf6 d4 exd4 Nxd4 Bb4 Nxc6 bxc6 Bd3 d5 exd5 O-O O-O +C47 Four Knights Game: Scotch Variation, Belgrade Gambit e4 e5 Nf3 Nc6 Nc3 Nf6 d4 exd4 Nd5 +C47 Four Knights Game: Scotch Variation, Belgrade Gambit, Modern Defense e4 e5 Nf3 Nc6 Nc3 Nf6 d4 exd4 Nd5 Nxe4 Qe2 f5 +C47 Four Knights Game: Scotch Variation, Krause Gambit e4 e5 Nf3 Nc6 Nc3 Nf6 d4 Bb4 Nxe5 +C47 Four Knights Game: Scotch Variation, Krause Gambit, Leonhardt Defense e4 e5 Nf3 Nc6 Nc3 Nf6 d4 Bb4 Nxe5 Qe7 +C47 Four Knights Game: Scotch Variation, Oxford Gambit e4 e5 Nf3 Nc6 Nc3 Nf6 d4 Bb4 d5 Nd4 +C47 Four Knights Game: Scotch Variation, Schmid Defense e4 e5 Nf3 Nc6 Nc3 Nf6 d4 exd4 Nxd4 Nxe4 +C48 Four Knights Game: Spanish Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 +C48 Four Knights Game: Spanish Variation, Bardeleben Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bc5 O-O O-O Nxe5 Nxe5 d4 Bd6 f4 Nc6 e5 Bb4 +C48 Four Knights Game: Spanish Variation, Classical Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bc5 +C48 Four Knights Game: Spanish Variation, Ranken Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 a6 Bxc6 +C48 Four Knights Game: Spanish Variation, Rubinstein Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 +C48 Four Knights Game: Spanish Variation, Rubinstein Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 Be2 +C48 Four Knights Game: Spanish Variation, Rubinstein Variation e4 e5 Nf3 Nf6 Nc3 Nc6 Bb5 Nd4 Nxe5 Qe7 f4 +C48 Four Knights Game: Spanish Variation, Rubinstein Variation Accepted e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 Nxd4 +C48 Four Knights Game: Spanish Variation, Rubinstein Variation, Henneberger Variation e4 e5 Nf3 Nf6 Nc3 Nc6 Bb5 Nd4 O-O +C48 Four Knights Game: Spanish Variation, Rubinstein Variation, Marshall Gambit e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 Ba4 Bc5 Nxe5 O-O +C48 Four Knights Game: Spanish Variation, Rubinstein Variation, Marshall Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 Nxe5 Bc5 O-O O-O +C48 Four Knights Game: Spanish Variation, Rubinstein Variation, Maróczy Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Nd4 Be2 Nxf3 Bxf3 Bc5 O-O O-O d3 d6 Na4 Bb6 +C48 Four Knights Game: Spanish Variation, Spielmann Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 a6 Bxc6 dxc6 Nxe5 Nxe4 Nxe4 Qd4 O-O Qxe5 Re1 Be6 d4 Qd5 +C49 Four Knights Game: Spanish Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 Bxc3 +C49 Four Knights Game: Spanish Variation, Alatortsev Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 Qe7 Ne2 d5 +C49 Four Knights Game: Spanish Variation, Double Spanish e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 +C49 Four Knights Game: Spanish Variation, Double Spanish e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 +C49 Four Knights Game: Spanish Variation, Gunsberg Counterattack e4 e5 Nf3 Nf6 Nc3 Nc6 Bb5 Bb4 O-O O-O Nd5 Nxd5 exd5 e4 +C49 Four Knights Game: Spanish Variation, Janowski Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 Bxc3 bxc3 d6 Re1 +C49 Four Knights Game: Spanish Variation, Nimzowitsch Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O Bxc6 +C49 Four Knights Game: Spanish Variation, Svenonius Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 Bxc3 bxc3 d5 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 Bg5 Bxc3 bxc3 Qe7 Re1 Nd8 d4 Bg4 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 Bg5 Ne7 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 Ne2 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation, Blake Variation e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 Bg5 Ne7 Nh4 c6 Bc4 d5 Bb3 Qd6 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation, Metger Unpin e4 e5 Nf3 Nc6 Nc3 Nf6 Bb5 Bb4 O-O O-O d3 d6 Bg5 Bxc3 bxc3 Qe7 +C49 Four Knights Game: Spanish Variation, Symmetrical Variation, Tarrasch Variation e4 e5 Nf3 Nf6 Nc3 Nc6 Bb5 Bb4 O-O O-O d3 d6 Bg5 Be6 +C50 Four Knights Game: Italian Variation e4 e5 Nf3 Nc6 Bc4 Bc5 Nc3 Nf6 +C50 Italian Game e4 e5 Nf3 Nc6 Bc4 +C50 Italian Game: Anti-Fried Liver Defense e4 e5 Nf3 Nc6 Bc4 h6 +C50 Italian Game: Blackburne-Kostić Gambit e4 e5 Nf3 Nc6 Bc4 Nd4 +C50 Italian Game: Classical Variation, Albin Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 c3 +C50 Italian Game: Deutz Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d4 +C50 Italian Game: Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 d3 +C50 Italian Game: Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Nf6 O-O Bc5 Nc3 d6 d3 +C50 Italian Game: Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 Nc3 Nf6 O-O O-O +C50 Italian Game: Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 Nc3 Nf6 O-O O-O d3 +C50 Italian Game: Giuoco Pianissimo, Canal Variation e4 e5 Nf3 Nc6 Bc4 Bc5 d3 Nf6 Nc3 d6 Bg5 +C50 Italian Game: Giuoco Pianissimo, Dubois Variation e4 e5 Nf3 Nc6 Bc4 Bc5 d3 f5 Ng5 f4 +C50 Italian Game: Giuoco Pianissimo, Italian Four Knights Variation e4 e5 Nf3 Nc6 Bc4 Bc5 d3 Nf6 Nc3 +C50 Italian Game: Giuoco Pianissimo, Lucchini Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 d3 f5 +C50 Italian Game: Giuoco Pianissimo, Normal e4 e5 Nf3 Nc6 Bc4 Nf6 d3 Bc5 +C50 Italian Game: Giuoco Piano e4 e5 Nf3 Nc6 Bc4 Bc5 +C50 Italian Game: Hungarian Defense e4 e5 Nf3 Nc6 Bc4 Be7 +C50 Italian Game: Hungarian Defense, Tartakower Variation e4 e5 Nf3 Nc6 Bc4 Be7 d4 exd4 c3 Nf6 e5 Ne4 +C50 Italian Game: Jerome Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 Bxf7 +C50 Italian Game: Paris Defense e4 e5 Nf3 Nc6 Bc4 d6 +C50 Italian Game: Rosentreter Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 d4 +C50 Italian Game: Rousseau Gambit e4 e5 Nf3 Nc6 Bc4 f5 +C51 Italian Game: Evans Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 +C51 Italian Game: Evans Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Bg4 +C51 Italian Game: Evans Gambit Accepted e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 +C51 Italian Game: Evans Gambit Declined e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 +C51 Italian Game: Evans Gambit Declined e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 a4 +C51 Italian Game: Evans Gambit Declined, Cordel Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 Bb2 +C51 Italian Game: Evans Gambit Declined, Hicken Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 b5 Na5 Nxe5 Qg5 Qf3 Qxe5 Qxf7 Kd8 Bb2 +C51 Italian Game: Evans Gambit Declined, Hirschbach Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 b5 Na5 Nxe5 Qg5 +C51 Italian Game: Evans Gambit Declined, Lange Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 b5 Na5 Nxe5 Nh6 +C51 Italian Game: Evans Gambit Declined, Pavlov Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 b5 Na5 Nxe5 Nh6 d4 d6 Bxh6 dxe5 Bxg7 Rg8 Bxf7 Kxf7 Bxe5 Qg5 Nd2 +C51 Italian Game: Evans Gambit Declined, Showalter Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 a4 a6 Nc3 +C51 Italian Game: Evans Gambit Declined, Vasquez Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bb6 b5 Na5 Nxe5 Qg5 Bxf7 Ke7 Qh5 +C51 Italian Game: Evans Gambit, Anderssen Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Be7 +C51 Italian Game: Evans Gambit, Anderssen Variation, Cordel Line e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Be7 d4 Na5 +C51 Italian Game: Evans Gambit, Fontaine Countergambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 b5 +C51 Italian Game: Evans Gambit, Fraser Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Bg4 Qa4 +C51 Italian Game: Evans Gambit, Fraser-Mortimer Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Bg4 Qa4 Bd7 Qb3 Na5 Bxf7 Kf8 Qc2 +C51 Italian Game: Evans Gambit, Göring Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Na5 Bg5 +C51 Italian Game: Evans Gambit, Harding Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 cxd4 Bb4 Bd2 +C51 Italian Game: Evans Gambit, Hein Countergambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 d5 +C51 Italian Game: Evans Gambit, Mayet Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bf8 +C51 Italian Game: Evans Gambit, McDonnell Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 +C51 Italian Game: Evans Gambit, McDonnell Defense, Main Line e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 +C51 Italian Game: Evans Gambit, Morphy Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 +C51 Italian Game: Evans Gambit, Mortimer-Evans Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Bg4 Qa4 Bd7 Qb3 Na5 Bxf7 Kf8 Qc2 Kxf7 +C51 Italian Game: Evans Gambit, Paulsen Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 d5 Na5 Bb2 Ne7 +C51 Italian Game: Evans Gambit, Steinitz Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 Nc3 Na5 Bg5 f6 Be3 +C51 Italian Game: Evans Gambit, Stone-Ware Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bd6 +C51 Italian Game: Evans Gambit, Ulvestad Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Bc5 d4 exd4 O-O d6 cxd4 Bb6 d5 Na5 Bb2 +C52 Italian Game: Evans Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O d6 +C52 Italian Game: Evans Gambit, Alapin-Steinitz Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O d6 d4 Bg4 +C52 Italian Game: Evans Gambit, Anderssen Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O Nf6 d4 exd4 +C52 Italian Game: Evans Gambit, Bronstein Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 d6 +C52 Italian Game: Evans Gambit, Compromised Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O dxc3 +C52 Italian Game: Evans Gambit, Compromised Defense, Main Line e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O dxc3 Qb3 Qf6 e5 Qg6 Nxc3 Nge7 Ba3 +C52 Italian Game: Evans Gambit, Compromised Defense, Potter Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O dxc3 Qb3 Qf6 e5 Qg6 Nxc3 Nge7 Rd1 +C52 Italian Game: Evans Gambit, Dufresne Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O d3 +C52 Italian Game: Evans Gambit, Johner Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O b5 +C52 Italian Game: Evans Gambit, Laroche Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 Nf6 +C52 Italian Game: Evans Gambit, Lasker Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O d6 d4 Bb6 +C52 Italian Game: Evans Gambit, Leonhardt Countergambit e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 b5 +C52 Italian Game: Evans Gambit, Levenfish Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 d6 Qb3 Qd7 dxe5 dxe5 O-O Bb6 Ba3 Na5 Nxe5 +C52 Italian Game: Evans Gambit, Main Line e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 +C52 Italian Game: Evans Gambit, Mieses Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O Nge7 +C52 Italian Game: Evans Gambit, Pierce Defense e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 +C52 Italian Game: Evans Gambit, Richardson Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O Nf6 d4 O-O Nxe5 +C52 Italian Game: Evans Gambit, Sanders-Alapin Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O d6 d4 Bd7 +C52 Italian Game: Evans Gambit, Slow Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 O-O +C52 Italian Game: Evans Gambit, Sokolsky Variation e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 d6 Bg5 +C52 Italian Game: Evans Gambit, Tartakower Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 d6 Qb3 +C52 Italian Game: Evans Gambit, Waller Attack e4 e5 Nf3 Nc6 Bc4 Bc5 b4 Bxb4 c3 Ba5 d4 exd4 O-O d6 Qb3 +C53 Italian Game: Bird's Attack e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 b4 +C53 Italian Game: Classical Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 +C53 Italian Game: Classical Variation, Center Holding Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Qe7 d4 Bb6 +C53 Italian Game: Classical Variation, Closed Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Qe7 +C53 Italian Game: Classical Variation, Eisinger Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Qe7 d4 Bb6 d5 Nb8 d6 +C53 Italian Game: Classical Variation, La Bourdonnais Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 d6 d4 exd4 cxd4 Bb6 +C53 Italian Game: Classical Variation, Mestel Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Qe7 d4 Bb6 Bg5 +C53 Italian Game: Classical Variation, Tarrasch Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Qe7 d4 Bb6 O-O d6 a4 a6 h3 Nf6 Re1 +C54 Italian Game: Classical Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 +C54 Italian Game: Classical Variation, Center Attack e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 +C54 Italian Game: Classical Variation, Ghulam-Kassim Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 e5 Ne4 Bd5 Nxf2 Kxf2 dxc3 Kg3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 Nbd2 O-O O-O +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 h6 c3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a5 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 Bb6 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 O-O +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 a4 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 a4 Ba7 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 a4 O-O +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 Re1 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 a6 Re1 Ba7 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 h6 Re1 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 h6 Nbd2 +C54 Italian Game: Classical Variation, Giuoco Pianissimo e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 O-O c3 d5 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, Albin Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 b4 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, Main Line e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 O-O O-O Re1 a6 Bb3 Ba7 h3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, with a4 a5 e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 O-O O-O a4 a5 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, with a5 e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 a5 c3 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, with a6 e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 a6 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, with a6 e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d6 Nbd2 a6 +C54 Italian Game: Classical Variation, Giuoco Pianissimo, with h6 e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d3 d6 c3 h6 +C54 Italian Game: Classical Variation, Greco Gambit, Anderssen Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 e5 d5 Bb5 Ne4 cxd4 Bb4 +C54 Italian Game: Classical Variation, Greco Gambit, Dubov Italian e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 b4 +C54 Italian Game: Classical Variation, Greco Gambit, Greco Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Nxc3 +C54 Italian Game: Classical Variation, Greco Gambit, Main Line e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Bxc3 +C54 Italian Game: Classical Variation, Greco Gambit, Modern Line e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 e5 +C54 Italian Game: Classical Variation, Greco Gambit, Modern Line e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 e5 d5 +C54 Italian Game: Classical Variation, Greco Gambit, Moeller-Bayonet Attack e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Bxc3 d5 Bf6 Re1 Ne7 Rxe4 d6 g4 +C54 Italian Game: Classical Variation, Greco Gambit, Moeller-Therkatz Attack e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Bxc3 d5 +C54 Italian Game: Classical Variation, Greco Gambit, Traditional Line e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 +C54 Italian Game: Classical Variation, with d5 e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d3 d5 +C54 Italian Game: Giuoco Piano, Aitken Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Nxc3 bxc3 Bxc3 Ba3 +C54 Italian Game: Giuoco Piano, Bernstein Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Nxc3 bxc3 Bxc3 Qb3 d5 +C54 Italian Game: Giuoco Piano, Cracow Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Kf1 +C54 Italian Game: Giuoco Piano, Greco's Attack e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 +C54 Italian Game: Giuoco Piano, Holzhausen Attack e4 e5 Nf3 Nc6 Bc4 Nf6 O-O Bc5 d4 Bxd4 Nxd4 Nxd4 Bg5 d6 f4 Qe7 fxe5 dxe5 Nc3 +C54 Italian Game: Giuoco Piano, Krause Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Bd2 Nxe4 Bxb4 Nxb4 Bxf7 Kxf7 Qb3 d5 Ne5 Kf6 f3 +C54 Italian Game: Giuoco Piano, Rosentreter Variation e4 e5 Nf3 Nc6 Bc4 Nf6 O-O Bc5 d4 Bxd4 Nxd4 Nxd4 Bg5 h6 Bh4 g5 f4 +C54 Italian Game: Giuoco Piano, Steinitz Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Bxc3 bxc3 d5 Ba3 +C54 Italian Game: Giuoco Piano, Therkatz-Herzog Variation e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 cxd4 Bb4 Nc3 Nxe4 O-O Bxc3 d5 Bf6 Re1 Ne7 Rxe4 d6 Bg5 Bxg5 Nxg5 O-O Nxh7 +C55 Italian Game: Two Knights Defense e4 e5 Nf3 Nc6 Bc4 Nf6 +C55 Italian Game: Two Knights Defense e4 e5 Nf3 Nc6 Bc4 Nf6 O-O Bc5 d4 Bxd4 Nxd4 Nxd4 Bg5 d6 +C55 Italian Game: Two Knights Defense e4 e5 Nf3 Nc6 Bc4 Nf6 Nc3 Nxe4 Nxe4 d5 +C55 Italian Game: Two Knights Defense, Modern Bishop's Opening e4 e5 Nf3 Nc6 Bc4 Nf6 d3 +C55 Italian Game: Two Knights Defense, Modern Bishop's Opening e4 e5 Nf3 Nc6 Bc4 Nf6 d3 Be7 +C55 Italian Game: Two Knights Defense, Modern Bishop's Opening e4 e5 Nf3 Nc6 Bc4 Nf6 d3 h6 O-O d6 +C56 Italian Game: Scotch Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O +C56 Italian Game: Scotch Gambit, Anderssen Attack e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Nxe4 Re1 d5 Bxd5 Qxd5 Nc3 +C56 Italian Game: Scotch Gambit, Anderssen Attack, Main Line e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Nxe4 Re1 d5 Bxd5 Qxd5 Nc3 Qa5 Nxe4 Be6 Bd2 Qd5 Bg5 +C56 Italian Game: Scotch Gambit, Canal Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Nxe4 Re1 d5 Nc3 +C56 Italian Game: Scotch Gambit, Double Gambit Accepted e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Nxe4 +C56 Italian Game: Scotch Gambit, Janowski Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O d6 +C56 Italian Game: Scotch Gambit, Max Lange Attack e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Bc5 +C56 Italian Game: Scotch Gambit, Max Lange Attack e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 e5 d5 Bb5 Ne4 +C56 Italian Game: Scotch Gambit, Max Lange Attack Accepted e4 e5 Nf3 Nc6 Bc4 Bc5 O-O Nf6 d4 exd4 e5 d5 exf6 dxc4 Re1 Be6 fxg7 +C56 Italian Game: Scotch Gambit, Max Lange Attack, Long Variation e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Bc5 e5 d5 exf6 dxc4 Re1 Be6 Ng5 Qd5 Nc3 Qf5 Nce4 +C56 Italian Game: Scotch Gambit, Max Lange Attack, Spielmann Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Bc5 e5 Ng4 +C56 Italian Game: Scotch Gambit, Nakhmanson Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Nxe4 Nc3 +C56 Italian Game: Scotch Gambit, Walbrodt-Baird Gambit e4 e5 Nf3 Nc6 Bc4 Bc5 c3 Nf6 d4 exd4 O-O +C56 Italian Game: Scotch Gambit, de Riviere Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Be7 +C56 Italian Game: Scotch Invitation Declined e4 e5 Nf3 Nc6 Bc4 Nf6 d4 d6 +C56 Italian Game: Two Knights Defense, Keidansky Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 e5 d5 Bb5 Ne4 Nxd4 Bc5 Nxc6 Bxf2 Kf1 Qh4 +C56 Italian Game: Two Knights Defense, Max Lange Attack e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Bc5 e5 +C56 Italian Game: Two Knights Defense, Max Lange Attack, Berger Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Bc5 e5 d5 exf6 dxc4 Re1 Be6 Ng5 Qd5 Nc3 Qf5 g4 Qg6 Nce4 Bb6 f4 O-O-O +C56 Italian Game: Two Knights Defense, Max Lange Attack, Krause Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Bc5 e5 Ng4 c3 +C56 Italian Game: Two Knights Defense, Max Lange Attack, Loman Defense e4 e5 Nf3 Nc6 d4 exd4 Bc4 Bc5 O-O Nf6 e5 d5 exf6 dxc4 Re1 Be6 Ng5 g6 +C56 Italian Game: Two Knights Defense, Max Lange Attack, Rubinstein Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 O-O Bc5 e5 d5 exf6 dxc4 Re1 Be6 Ng5 Qd5 Nc3 Qf5 Nce4 Bf8 +C56 Italian Game: Two Knights Defense, Open Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 +C56 Italian Game: Two Knights Defense, Perreux Variation e4 e5 Nf3 Nc6 Bc4 Nf6 d4 exd4 Ng5 +C56 Italian Game: Two Knights Defense, Yurdansky Attack e4 e5 Nf3 Nc6 d4 exd4 Bc4 Nf6 O-O Nxe4 Re1 d5 Bxd5 Qxd5 Nc3 Qa5 Nxe4 Be6 Bg5 h6 Bh4 g5 Nf6 Ke7 b4 +C57 Italian Game: Two Knights Defense, Fegatello Attack, Leonhardt Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nxd5 Nxf7 Kxf7 Qf3 Ke6 Nc3 Nb4 Qe4 c6 a3 Na6 d4 Nc7 +C57 Italian Game: Two Knights Defense, Fried Liver Attack e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nxd5 Nxf7 +C57 Italian Game: Two Knights Defense, Fritz Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nd4 +C57 Italian Game: Two Knights Defense, Fritz, Gruber Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nd4 c3 b5 Bf1 Nxd5 Ne4 +C57 Italian Game: Two Knights Defense, Kloss Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nb4 +C57 Italian Game: Two Knights Defense, Knight Attack e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 +C57 Italian Game: Two Knights Defense, Knight Attack, Normal Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 +C57 Italian Game: Two Knights Defense, Lolli Attack e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nxd5 d4 +C57 Italian Game: Two Knights Defense, Pincus Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Nxd5 d4 Bb4 +C57 Italian Game: Two Knights Defense, Ponziani-Steinitz Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Nxe4 +C57 Italian Game: Two Knights Defense, Traxler Counterattack e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Bc5 +C57 Italian Game: Two Knights Defense, Traxler Counterattack, Bishop Sacrifice Line e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Bc5 Bxf7 +C57 Italian Game: Two Knights Defense, Traxler Counterattack, King March Line e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Bc5 Nxf7 Bxf2 Kxf2 Nxe4 Ke3 +C57 Italian Game: Two Knights Defense, Traxler Counterattack, Knight Sacrifice Line e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Bc5 Nxf7 +C57 Italian Game: Two Knights Defense, Traxler Variation, Trencianske-Teplice Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 Bc5 Bxf7 Ke7 d4 +C57 Italian Game: Two Knights Defense, Ulvestad Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 b5 +C57 Italian Game: Two Knights Defense, Ulvestad Variation, Kurkin Gambit e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 b5 Bf1 h6 Nxf7 +C58 Italian Game: Two Knights Defense e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Be2 +C58 Italian Game: Two Knights Defense, Blackburne Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Qf3 cxb5 +C58 Italian Game: Two Knights Defense, Colman Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Qf3 Rb8 +C58 Italian Game: Two Knights Defense, Maróczy Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 d3 h6 Nf3 e4 Qe2 Nxc4 dxc4 Be7 +C58 Italian Game: Two Knights Defense, Paoli Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Qf3 Qc7 Bd3 +C58 Italian Game: Two Knights Defense, Polerio Defense e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 +C58 Italian Game: Two Knights Defense, Polerio Defense, Bishop Check Line e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 +C58 Italian Game: Two Knights Defense, Polerio Defense, Bogoljubow Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Qf3 +C58 Italian Game: Two Knights Defense, Polerio Defense, Kieseritzky Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 d3 +C58 Italian Game: Two Knights Defense, Polerio Defense, Yankovich Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 d3 h6 Nf3 e4 Qe2 Nxc4 dxc4 Bc5 Nfd2 +C59 Italian Game: Two Knights Defense, Knorre Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Be2 h6 Nf3 e4 Ne5 Bd6 d4 Qc7 Bd2 +C59 Italian Game: Two Knights Defense, Polerio Defense, Göring Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Be2 h6 Nf3 e4 Ne5 Qc7 +C59 Italian Game: Two Knights Defense, Polerio Defense, Suhle Defense e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Be2 h6 +C59 Italian Game: Two Knights Defense, Steinitz Variation e4 e5 Nf3 Nc6 Bc4 Nf6 Ng5 d5 exd5 Na5 Bb5 c6 dxc6 bxc6 Be2 h6 Nh3 +C60 Ruy Lopez e4 e5 Nf3 Nc6 Bb5 +C60 Ruy Lopez: Alapin Defense e4 e5 Nf3 Nc6 Bb5 Bb4 +C60 Ruy Lopez: Alapin Defense, Alapin Gambit e4 e5 Nf3 Nc6 Bb5 Bb4 c3 Ba5 Bxc6 dxc6 +C60 Ruy Lopez: Brentano Gambit e4 e5 Nf3 Nc6 Bb5 g5 +C60 Ruy Lopez: Bulgarian Variation e4 e5 Nf3 Nc6 Bb5 a5 +C60 Ruy Lopez: Cozio Defense e4 e5 Nf3 Nc6 Bb5 Nge7 +C60 Ruy Lopez: Cozio Defense, Paulsen Variation e4 e5 Nf3 Nc6 Bb5 Nge7 Nc3 g6 +C60 Ruy Lopez: Cozio Defense, Tartakower Gambit e4 e5 Nf3 Nc6 Bb5 g6 d4 exd4 Nxd4 Bg7 Be3 Nge7 Nc3 O-O Qd2 d5 +C60 Ruy Lopez: Fianchetto Defense e4 e5 Nf3 Nc6 Bb5 g6 +C60 Ruy Lopez: Fianchetto Defense, Kevitz Gambit e4 e5 Nf3 Nc6 Bb5 g6 c3 f5 +C60 Ruy Lopez: Lucena Variation e4 e5 Nf3 Nc6 Bb5 Be7 +C60 Ruy Lopez: Nürnberg Variation e4 e5 Nf3 Nc6 Bb5 f6 +C60 Ruy Lopez: Pollock Defense e4 e5 Nf3 Nc6 Bb5 Na5 +C60 Ruy Lopez: Retreat Variation e4 e5 Nf3 Nc6 Bb5 Nb8 +C60 Ruy Lopez: Rotary-Albany Gambit e4 e5 Nf3 Nc6 Bb5 b6 +C60 Ruy Lopez: Spanish Countergambit e4 e5 Nf3 Nc6 Bb5 d5 +C60 Ruy Lopez: Spanish Countergambit, Harding Countergambit, Fricke Gambit e4 e5 Nf3 Nc6 Bb5 d5 Nxe5 Qg5 O-O +C60 Ruy Lopez: Spanish Countergambit, Harding Gambit e4 e5 Nf3 Nc6 Bb5 d5 Nxe5 Qg5 Nxc6 +C60 Ruy Lopez: Vinogradov Variation e4 e5 Nf3 Nc6 Bb5 Qe7 +C61 Ruy Lopez: Bird Variation e4 e5 Nf3 Nc6 Bb5 Nd4 +C61 Ruy Lopez: Bird Variation, Paulsen Variation e4 e5 Nf3 Nc6 Bb5 Nd4 Nxd4 exd4 O-O Ne7 +C62 Ruy Lopez: Steinitz Defense e4 e5 Nf3 Nc6 Bb5 d6 +C62 Ruy Lopez: Steinitz Defense e4 e5 Nf3 Nc6 Bb5 d6 d4 +C62 Ruy Lopez: Steinitz Defense, Center Gambit e4 e5 Nf3 Nc6 Bb5 d6 d4 exd4 O-O +C62 Ruy Lopez: Steinitz Defense, Nimzowitsch Attack e4 e5 Nf3 Nc6 Bb5 d6 d4 Bd7 Nc3 Nf6 Bxc6 +C62 Ruy Lopez: Steinitz Defense, Semi-Duras Variation e4 e5 Nf3 Nc6 Bb5 d6 d4 Bd7 c4 +C63 Ruy Lopez: Schliemann Defense e4 e5 Nf3 Nc6 Bb5 f5 +C63 Ruy Lopez: Schliemann Defense, Classical Variation e4 e5 Nf3 Nc6 Bb5 f5 Nc3 fxe4 Nxe4 d5 Nxe5 dxe4 Nxc6 Qg5 +C63 Ruy Lopez: Schliemann Defense, Dyckhoff Variation e4 e5 Nf3 Nc6 Bb5 f5 Nc3 +C63 Ruy Lopez: Schliemann Defense, Exchange Variation e4 e5 Nf3 Nc6 Bb5 f5 Bxc6 +C63 Ruy Lopez: Schliemann Defense, Jaenisch Gambit Accepted e4 e5 Nf3 Nc6 Bb5 f5 exf5 +C63 Ruy Lopez: Schliemann Defense, Kostić Defense e4 e5 Nf3 Nc6 Bb5 f5 Nc3 fxe4 Nxe4 Be7 +C63 Ruy Lopez: Schliemann Defense, Möhring Variation e4 e5 Nf3 Nc6 Bb5 f5 Nc3 fxe4 Nxe4 d5 Nxe5 dxe4 Nxc6 Qd5 +C63 Ruy Lopez: Schliemann Defense, Schönemann Attack e4 e5 Nf3 Nc6 Bb5 f5 d4 +C63 Ruy Lopez: Schliemann Defense, Tartakower Variation e4 e5 Nf3 Nc6 Bb5 f5 Nc3 fxe4 Nxe4 Nf6 +C64 Ruy Lopez: Classical Defense, Benelux Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Bc5 c3 O-O d4 Bb6 +C64 Ruy Lopez: Classical Defense, Boden Variation e4 e5 Nf3 Nc6 Bb5 Bc5 c3 Qe7 +C64 Ruy Lopez: Classical Defense, Zaitsev Variation e4 e5 Nf3 Nc6 Bb5 Bc5 O-O Nd4 b4 +C64 Ruy Lopez: Classical Variation e4 e5 Nf3 Nc6 Bb5 Bc5 +C64 Ruy Lopez: Classical Variation, Central Variation e4 e5 Nf3 Nc6 Bb5 Bc5 c3 +C64 Ruy Lopez: Classical Variation, Charousek Variation e4 e5 Nf3 Nc6 Bb5 Bc5 c3 Bb6 +C64 Ruy Lopez: Classical Variation, Cordel Gambit e4 e5 Nf3 Nc6 Bb5 Bc5 c3 f5 +C64 Ruy Lopez: Classical Variation, Konikowski Gambit e4 e5 Nf3 Nc6 Bb5 Bc5 c3 d5 +C64 Ruy Lopez: Classical Variation, Modern Main Line e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Bc5 c3 O-O d4 Bb6 Bg5 +C64 Ruy Lopez: Classical Variation, Spanish Wing Gambit e4 e5 Nf3 Nc6 Bb5 Bc5 b4 +C65 Ruy Lopez: Berlin Defense e4 e5 Nf3 Nc6 Bb5 Nf6 +C65 Ruy Lopez: Berlin Defense e4 e5 Nf3 Nc6 Bb5 Nf6 O-O +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation e4 e5 Nf3 Nc6 Bb5 Nf6 d3 +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation, Anderssen Variation e4 e5 Nf3 Nc6 Bb5 Nf6 d3 d6 Bxc6 +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation, Duras Variation e4 e5 Nf3 Nc6 Bb5 Nf6 d3 d6 c4 +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation, Kaufmann Variation e4 e5 Nf3 Nc6 Bb5 Nf6 d3 Bc5 Be3 +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation, Mortimer Trap e4 e5 Nf3 Nc6 Bb5 Nf6 d3 Ne7 Nxe5 c6 +C65 Ruy Lopez: Berlin Defense, Anti-Berlin Variation, Mortimer Variation e4 e5 Nf3 Nc6 Bb5 Nf6 d3 Ne7 +C65 Ruy Lopez: Berlin Defense, Beverwijk Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Bc5 +C65 Ruy Lopez: Berlin Defense, Fishing Pole Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Ng4 +C65 Ruy Lopez: Berlin Defense, Nyholm Attack e4 e5 Nf3 Nc6 Bb5 Nf6 d4 exd4 O-O +C65 Ruy Lopez: Classical Variation, Zukertort Gambit e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Bc5 c3 +C65 Ruy Lopez: Halloween Attack e4 e5 Nf3 Nc6 Bb5 Nf6 Nxe5 +C66 Ruy Lopez: Berlin Defense, Closed Bernstein Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 d4 Bd7 Nc3 Be7 Bg5 +C66 Ruy Lopez: Berlin Defense, Closed Showalter Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 d4 Bd7 Nc3 Be7 Bxc6 +C66 Ruy Lopez: Berlin Defense, Closed Wolf Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 d4 Bd7 Nc3 exd4 +C66 Ruy Lopez: Berlin Defense, Hedgehog Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 d4 Bd7 Nc3 Be7 +C66 Ruy Lopez: Berlin Defense, Improved Steinitz Defense e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 +C66 Ruy Lopez: Berlin Defense, Tarrasch Trap e4 e5 Nf3 Nc6 Bb5 d6 d4 Bd7 Nc3 Nf6 O-O Be7 Re1 O-O +C66 Ruy Lopez: Closed Berlin Defense, Chigorin Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O d6 d4 Nd7 +C67 Ruy Lopez: Berlin Defense, Berlin Wall e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 Bxc6 dxc6 dxe5 Nf5 Qxd8 Kxd8 Nc3 Bd7 +C67 Ruy Lopez: Berlin Defense, Cordel Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 Nd6 Bxc6 bxc6 dxe5 Nf5 +C67 Ruy Lopez: Berlin Defense, Minckwitz Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 dxe5 +C67 Ruy Lopez: Berlin Defense, Pillsbury Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 Nd6 Bxc6 bxc6 dxe5 Nb7 b3 +C67 Ruy Lopez: Berlin Defense, Rio Gambit Accepted e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 +C67 Ruy Lopez: Berlin Defense, Rio de Janeiro Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 +C67 Ruy Lopez: Berlin Defense, Rio de Janeiro Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 Nd6 Bxc6 bxc6 dxe5 Nb7 Nc3 O-O Re1 Nc5 Nd4 Ne6 Be3 Nxd4 Bxd4 c5 +C67 Ruy Lopez: Berlin Defense, Rosenthal Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 a6 +C67 Ruy Lopez: Berlin Defense, Trifunovic Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 d5 +C67 Ruy Lopez: Berlin Defense, Winawer Attack e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 Nd6 Bxc6 bxc6 dxe5 Nb7 Nd4 +C67 Ruy Lopez: Berlin Defense, Zukertort Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Be7 Qe2 Nd6 Bxc6 bxc6 dxe5 Nb7 c4 +C67 Ruy Lopez: Berlin Defense, l'Hermet Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 +C67 Ruy Lopez: Berlin Defense, l'Hermet Variation, Berlin Wall Defense e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 Bxc6 dxc6 dxe5 Nf5 Qxd8 Kxd8 +C67 Ruy Lopez: Berlin Defense, l'Hermet Variation, Westerinen Line e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 Bxc6 dxc6 dxe5 Ne4 +C67 Ruy Lopez: Open Berlin Defense, Showalter Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 Ba4 +C67 Ruy Lopez: Open Berlin Defense, l'Hermet Variation e4 e5 Nf3 Nc6 Bb5 Nf6 O-O Nxe4 d4 Nd6 dxe5 +C68 Ruy Lopez: Exchange Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 +C68 Ruy Lopez: Exchange Variation, Alekhine Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 d4 exd4 Qxd4 Qxd4 Nxd4 Bd6 +C68 Ruy Lopez: Exchange Variation, Keres Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 Nc3 +C68 Ruy Lopez: Exchange Variation, Lutikov Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 bxc6 +C68 Ruy Lopez: Exchange Variation, Romanovsky Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 Nc3 f6 d3 +C68 Ruy Lopez: Exchange, Alekhine Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 d4 exd4 Qxd4 Qxd4 Nxd4 Bd7 +C69 Ruy Lopez: Exchange Variation, Alapin Gambit e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 O-O Bg4 h3 h5 +C69 Ruy Lopez: Exchange Variation, Bronstein Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 O-O Qd6 +C69 Ruy Lopez: Exchange Variation, Gligoric Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 O-O f6 +C69 Ruy Lopez: Exchange Variation, King's Bishop Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 O-O Bd6 +C69 Ruy Lopez: Exchange Variation, Normal Variation e4 e5 Nf3 Nc6 Bb5 a6 Bxc6 dxc6 O-O +C70 Ruy Lopez: Bird's Defense Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nd4 +C70 Ruy Lopez: Morphy Defense e4 e5 Nf3 Nc6 Bb5 a6 +C70 Ruy Lopez: Morphy Defense, Alapin's Defense Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Bb4 +C70 Ruy Lopez: Morphy Defense, Caro Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 b5 +C70 Ruy Lopez: Morphy Defense, Classical Defense Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Bc5 +C70 Ruy Lopez: Morphy Defense, Cozio Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nge7 +C70 Ruy Lopez: Morphy Defense, Fianchetto Defense Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 g6 +C70 Ruy Lopez: Morphy Defense, Graz Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 b5 Bb3 Bc5 +C70 Ruy Lopez: Morphy Defense, Norwegian Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 b5 Bb3 Na5 +C70 Ruy Lopez: Morphy Defense, Norwegian Variation, Nightingale Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 b5 Bb3 Na5 Bxf7 +C70 Ruy Lopez: Morphy Defense, Schliemann Defense Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 f5 +C70 Ruy Lopez: Morphy Defense, Schliemann Defense Deferred, Jaenisch Gambit Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 f5 exf5 +C71 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 +C71 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 Nc3 +C71 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c4 +C71 Ruy Lopez: Noah's Ark Trap e4 e5 Nf3 Nc6 Bb5 a6 Ba4 b5 Bb3 d6 d4 Nxd4 Nxd4 exd4 Qxd4 c5 +C72 Ruy Lopez: Closed, Kecskemet Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 O-O Bd7 c3 Nf6 d4 Be7 Nbd2 O-O Re1 Be8 +C72 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 O-O +C73 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 Bxc6 bxc6 d4 +C73 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 Bxc6 bxc6 d4 f6 +C74 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c3 +C74 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c3 f5 exf5 Bxf5 O-O +C74 Ruy Lopez: Morphy Defense, Modern Steinitz Defense, Siesta Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c3 f5 +C75 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c3 Bd7 +C75 Ruy Lopez: Morphy Defense, Modern Steinitz Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 d6 c3 Bd7 d4 Nge7 +C76 Ruy Lopez: Morphy Defense, Modern Steinitz Defense, Fianchetto Variation e4 e5 Nf3 Nc6 Bb5 g6 c3 a6 Ba4 d6 d4 Bd7 +C77 Ruy Lopez: Morphy Defense, Anderssen Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 d3 +C77 Ruy Lopez: Morphy Defense, Bayreuth Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 Bxc6 +C77 Ruy Lopez: Morphy Defense, Duras Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 d3 d6 c4 +C77 Ruy Lopez: Morphy Defense, Jaffe Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 c3 +C77 Ruy Lopez: Morphy Defense, Mackenzie Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 d4 +C77 Ruy Lopez: Morphy Defense, Tarrasch Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 Nc3 +C77 Ruy Lopez: Morphy Defense, Wormald Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 Qe2 +C77 Ruy Lopez: Wormald Attack, Grünfeld Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 Qe2 b5 Bb3 Be7 d4 d6 c3 Bg4 +C78 Ruy Lopez: Brix Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O g6 +C78 Ruy Lopez: Central Countergambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O d5 +C78 Ruy Lopez: Morphy Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O +C78 Ruy Lopez: Morphy Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O b5 Bb3 d6 +C78 Ruy Lopez: Morphy Defense, Arkhangelsk Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O b5 Bb3 Bb7 +C78 Ruy Lopez: Morphy Defense, Møller Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Bc5 +C78 Ruy Lopez: Morphy Defense, Neo-Arkhangelsk Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O b5 Bb3 Bc5 +C78 Ruy Lopez: Morphy Defense, Wing Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O b5 Bb3 Be7 a4 +C78 Ruy Lopez: Rabinovich Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O b5 Bb3 d6 Ng5 d5 exd5 Nd4 Re1 Bc5 Rxe5 Kf8 +C79 Ruy Lopez: Morphy Defense, Steinitz Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O d6 +C79 Ruy Lopez: Morphy Defense, Steinitz Deferred e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O d6 Bxc6 bxc6 d4 Nxe4 +C79 Ruy Lopez: Steinitz Defense Deferred, Boleslavsky Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O d6 Bxc6 bxc6 d4 Nxe4 Re1 f5 dxe5 d5 Nc3 +C79 Ruy Lopez: Steinitz Defense Deferred, Lipnitsky Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O d6 Bxc6 bxc6 d4 Bg4 +C80 Ruy Lopez: Morphy Defense, Tartakower Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 Qe2 +C80 Ruy Lopez: Open e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 +C80 Ruy Lopez: Open e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 +C80 Ruy Lopez: Open e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 +C80 Ruy Lopez: Open e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 +C80 Ruy Lopez: Open, Berger Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 a4 Nxd4 Nxd4 exd4 Nc3 +C80 Ruy Lopez: Open, Bernstein Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Nbd2 +C80 Ruy Lopez: Open, Bernstein Variation, Luther Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Nbd2 Bc5 Qe1 +C80 Ruy Lopez: Open, Friess Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Nxe5 +C80 Ruy Lopez: Open, Harksen Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 c4 +C80 Ruy Lopez: Open, Karpov Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Nbd2 Nc5 c3 d4 Ng5 +C80 Ruy Lopez: Open, Knorre Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 Nc3 +C80 Ruy Lopez: Open, Main Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 +C80 Ruy Lopez: Open, Richter Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 d5 +C80 Ruy Lopez: Open, Riga Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 exd4 +C80 Ruy Lopez: Open, Schlechter Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 a4 Nxd4 +C80 Ruy Lopez: Open, Skipworth Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 Re1 d5 +C80 Ruy Lopez: Open, Zukertort Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Ne7 +C81 Ruy Lopez: Open, Howell Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Qe2 +C81 Ruy Lopez: Open, Howell Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Qe2 Be7 c4 +C81 Ruy Lopez: Open, Howell Attack, Ekstrom Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Qe2 Be7 Rd1 O-O c4 bxc4 Bxc4 Qd7 +C82 Ruy Lopez: Open e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 +C82 Ruy Lopez: Open, Berlin Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Nc5 +C82 Ruy Lopez: Open, Dilworth Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Bc5 Nbd2 O-O Bc2 Nxf2 +C82 Ruy Lopez: Open, Italian Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Bc5 +C82 Ruy Lopez: Open, Motzko Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Bc5 Qd3 +C82 Ruy Lopez: Open, Motzko Attack, Nenarokov Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Bc5 Qd3 Ne7 +C82 Ruy Lopez: Open, St. Petersburg Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Bc5 Nbd2 +C83 Ruy Lopez: Open, Breslau Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Be7 Re1 O-O Nd4 Nxe5 +C83 Ruy Lopez: Open, Classical Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Be7 +C83 Ruy Lopez: Open, Classical Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 Nbd2 Nc5 c3 Be7 +C83 Ruy Lopez: Open, Classical Defense, Main Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 Be7 Re1 b5 Bb3 d5 dxe5 Be6 c3 +C83 Ruy Lopez: Open, Malkin Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Be7 Nbd2 O-O Qe2 +C83 Ruy Lopez: Open, Tarrasch Trap e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Nxe4 d4 b5 Bb3 d5 dxe5 Be6 c3 Be7 Re1 O-O Nd4 Qd7 Nxe6 fxe6 Rxe4 +C84 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 +C84 Ruy Lopez: Closed, Basque Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 d4 exd4 e5 Ne4 c3 +C84 Ruy Lopez: Closed, Center Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 d4 +C84 Ruy Lopez: Closed, Center Attack, Basque Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 d4 exd4 e5 Ne4 c3 dxc3 +C84 Ruy Lopez: Closed, Martinez Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 d3 +C84 Ruy Lopez: Closed, Morphy Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Nc3 +C85 Ruy Lopez: Closed, Delayed Exchange e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Bxc6 +C86 Ruy Lopez: Closed, Worrall Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Qe2 +C86 Ruy Lopez: Closed, Worrall Attack, Castling Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Qe2 b5 Bb3 O-O +C86 Ruy Lopez: Closed, Worrall Attack, Castling Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 Qe2 Be7 O-O b5 Bb3 O-O c3 d5 d3 +C86 Ruy Lopez: Closed, Worrall Attack, Delayed Castling Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Qe2 b5 Bb3 d6 +C87 Ruy Lopez: Closed, Averbakh Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 d6 +C88 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 +C88 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O +C88 Ruy Lopez: Closed, Alekhine Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 Na5 Bc2 c5 d4 Qc7 Nbd2 O-O Nf1 Bg4 Ne3 Bxf3 Qxf3 +C88 Ruy Lopez: Closed, Anti-Marshall e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O a4 +C88 Ruy Lopez: Closed, Balla Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 Na5 Bc2 c5 d4 Qc7 a4 +C88 Ruy Lopez: Closed, Leonhardt Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 Na5 Bc2 c5 d4 Qc7 h3 Nc6 d5 Nb8 Nbd2 g5 +C88 Ruy Lopez: Closed, Rosen Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 d4 +C88 Ruy Lopez: Closed, Trajkovic Counterattack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 Bb7 +C88 Ruy Lopez: Noah's Ark Trap e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 d4 Nxd4 Nxd4 exd4 Qxd4 c5 +C89 Ruy Lopez: Marshall Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 +C89 Ruy Lopez: Marshall Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 a4 Bb7 +C89 Ruy Lopez: Marshall Attack, Main Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 c6 d4 +C89 Ruy Lopez: Marshall Attack, Main Line, Spassky Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 c6 d4 Bd6 Re1 Qh4 g3 Qh3 Be3 Bg4 Qd3 Rae8 Nd2 Re6 a4 Qh5 +C89 Ruy Lopez: Marshall Attack, Modern Main Line e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 c6 d4 Bd6 Re1 Qh4 g3 Qh3 +C89 Ruy Lopez: Marshall Attack, Modern Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 c6 +C89 Ruy Lopez: Marshall Attack, Original Marshall Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 Nf6 +C89 Ruy Lopez: Marshall Attack, Re3 Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 Nxd5 Nxe5 Nxe5 Rxe5 c6 Bxd5 cxd5 d4 Bd6 Re3 +C89 Ruy Lopez: Marshall Attack, Steiner Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O c3 d5 exd5 e4 +C90 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O +C90 Ruy Lopez: Closed, Lutikov Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O Bc2 +C90 Ruy Lopez: Closed, Pilnik Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 O-O d3 d6 c3 +C90 Ruy Lopez: Closed, Suetin Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O a3 +C91 Ruy Lopez: Closed, Bogoljubow Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O d4 Bg4 +C91 Ruy Lopez: Closed, Yates Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O d4 +C91 Ruy Lopez: Closed, Yates Variation, Short Attack e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O d4 Bg4 a4 +C92 Ruy Lopez: Closed e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 +C92 Ruy Lopez: Closed, Flohr System e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Bb7 +C92 Ruy Lopez: Closed, Karpov Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nd7 +C92 Ruy Lopez: Closed, Kholmov Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Be6 +C92 Ruy Lopez: Closed, Smyslov-Breyer-Zaitsev Hybrid e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Bb7 d4 Re8 Nbd2 Bf8 a3 h6 +C92 Ruy Lopez: Closed, Zaitsev System e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Re8 +C93 Ruy Lopez: Closed, Smyslov Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 h6 +C94 Ruy Lopez: Closed, Breyer Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 +C94 Ruy Lopez: Closed, Breyer Defense, Quiet Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 d3 +C95 Ruy Lopez: Closed, Breyer e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 d4 +C95 Ruy Lopez: Closed, Breyer Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 d4 Nbd7 Nbd2 Bb7 Bc2 c5 +C95 Ruy Lopez: Closed, Breyer Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 d4 Nbd7 Nh4 +C95 Ruy Lopez: Closed, Breyer Defense, Zaitsev Hybrid e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Nb8 d4 Nbd7 +C96 Ruy Lopez: Closed, Borisenko Variation e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Nc6 +C96 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 +C96 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 +C96 Ruy Lopez: Closed, Chigorin Defense, Gajewski Gambit e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 d5 +C96 Ruy Lopez: Closed, Keres Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Nd7 +C96 Ruy Lopez: Closed, Rossolimo Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c6 d4 Qc7 +C97 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 +C97 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Qc7 +C97 Ruy Lopez: Closed, Chigorin, Yugoslav System e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Qc7 Nbd2 Bd7 Nf1 Rfe8 Ne3 g6 +C98 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Qc7 Nbd2 Nc6 +C98 Ruy Lopez: Closed, Chigorin Defense e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Qc7 Nbd2 Nc6 dxc5 +C99 Ruy Lopez: Closed, Chigorin Defense, Panov System e4 e5 Nf3 Nc6 Bb5 a6 Ba4 Nf6 O-O Be7 Re1 b5 Bb3 d6 c3 O-O h3 Na5 Bc2 c5 d4 Qc7 Nbd2 cxd4 cxd4 +D00 Amazon Attack d4 d5 Qd3 +D00 Blackmar-Diemer Gambit d4 d5 e4 +D00 Blackmar-Diemer Gambit d4 d5 e4 dxe4 Nc3 Nf6 +D00 Blackmar-Diemer Gambit Accepted d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 +D00 Blackmar-Diemer Gambit Accepted: Bogoljubow Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 g6 +D00 Blackmar-Diemer Gambit Accepted: Bogoljubow Defense, Kloss Attack d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 g6 Bc4 Bg7 O-O O-O Kh1 +D00 Blackmar-Diemer Gambit Accepted: Bogoljubow Defense, Mad Dog Attack d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 g6 Bc4 Bg7 h4 +D00 Blackmar-Diemer Gambit Accepted: Bogoljubow Defense, Nimzowitsch Attack d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 g6 Bc4 Bg7 Ne5 +D00 Blackmar-Diemer Gambit Accepted: Bogoljubow Defense, Studier Attack d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 g6 Bc4 Bg7 O-O O-O Qe1 +D00 Blackmar-Diemer Gambit Accepted: Euwe Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 e6 +D00 Blackmar-Diemer Gambit Accepted: Euwe Defense, Duthilleul Gambit d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 e6 Bd3 +D00 Blackmar-Diemer Gambit Accepted: Euwe Defense, Zilbermints Gambit d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 e6 Bg5 Be7 Bd3 Nc6 O-O Nxd4 Kh1 +D00 Blackmar-Diemer Gambit Accepted: Gunderam Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bf5 +D00 Blackmar-Diemer Gambit Accepted: Gunderam Defense, Stader Variation d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bf5 Ne5 e6 g4 Be4 +D00 Blackmar-Diemer Gambit Accepted: Holwell Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Qd6 +D00 Blackmar-Diemer Gambit Accepted: Kaulich Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 c5 +D00 Blackmar-Diemer Gambit Accepted: Pietrowsky Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Nc6 +D00 Blackmar-Diemer Gambit Accepted: Ritter Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 b6 +D00 Blackmar-Diemer Gambit Accepted: Ryder Gambit d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Qxf3 +D00 Blackmar-Diemer Gambit Accepted: Schlutter Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Nbd7 +D00 Blackmar-Diemer Gambit Accepted: Teichmann Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bg4 +D00 Blackmar-Diemer Gambit Accepted: Teichmann Defense, Ciesielski Variation d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bg4 h3 Bxf3 Qxf3 c6 Qf2 +D00 Blackmar-Diemer Gambit Accepted: Teichmann Defense, Classical Variation d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bg4 h3 Bxf3 Qxf3 c6 Be3 +D00 Blackmar-Diemer Gambit Accepted: Teichmann Defense, Seidel-Hall Attack d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 Bg4 h3 Bxf3 Qxf3 c6 g4 +D00 Blackmar-Diemer Gambit Accepted: Ziegler Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 exf3 Nxf3 c6 +D00 Blackmar-Diemer Gambit Declined: Brombacher Countergambit d4 d5 e4 dxe4 Nc3 Nf6 f3 c5 +D00 Blackmar-Diemer Gambit Declined: Elbert Countergambit d4 d5 e4 dxe4 Nc3 Nf6 f3 e5 +D00 Blackmar-Diemer Gambit Declined: Gedult Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 a6 +D00 Blackmar-Diemer Gambit Declined: Lamb Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 Nc6 +D00 Blackmar-Diemer Gambit Declined: Langeheinicke Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 e3 +D00 Blackmar-Diemer Gambit Declined: O'Kelly Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 c6 +D00 Blackmar-Diemer Gambit Declined: Vienna Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 Bf5 +D00 Blackmar-Diemer Gambit Declined: Weinsbach Defense d4 d5 e4 dxe4 Nc3 Nf6 f3 e6 +D00 Blackmar-Diemer Gambit Declined: Weinsbach Defense, Pfrang Gambit d4 d5 e4 dxe4 Nc3 Nf6 f3 e6 fxe4 +D00 Blackmar-Diemer Gambit: Blackmar Gambit d4 d5 e4 dxe4 f3 +D00 Blackmar-Diemer Gambit: Diemer-Rosenberg Attack d4 d5 e4 dxe4 Be3 +D00 Blackmar-Diemer Gambit: Fritz Attack d4 d5 e4 dxe4 Bc4 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit d4 d5 e4 dxe4 Nc3 e5 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit, Endgame Variation d4 d5 e4 dxe4 Nc3 e5 dxe5 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit, Lange Gambit d4 d5 e4 dxe4 Nc3 e5 Nxe4 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit, Rasmussen Attack d4 d5 e4 dxe4 Nc3 e5 Nge2 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit, Sneiders Attack d4 d5 e4 dxe4 Nc3 e5 Qh5 +D00 Blackmar-Diemer Gambit: Lemberger Countergambit, Soller Attack d4 d5 e4 dxe4 Nc3 e5 Be3 +D00 Blackmar-Diemer Gambit: Netherlands Variation d4 d5 e4 dxe4 Nc3 f5 +D00 Blackmar-Diemer Gambit: Rasa-Studier Gambit d4 d5 e4 dxe4 Nc3 Nf6 Be3 +D00 Blackmar-Diemer Gambit: Reversed Albin Countergambit d4 d5 e4 dxe4 Nc3 c5 +D00 Blackmar-Diemer Gambit: Zeller Defense d4 d5 e4 dxe4 Nc3 Bf5 +D00 Blackmar-Diemer Gambit: Zeller Defense, Soller Attack d4 d5 e4 dxe4 Nc3 Bf5 f3 Nf6 Bc4 +D00 Blackmar-Diemer Gambit: von Popiel Gambit d4 d5 e4 dxe4 Nc3 Nf6 Bg5 +D00 Blackmar-Diemer Gambit: von Popiel Gambit, Zilbermints Variation d4 d5 e4 dxe4 Nc3 Nf6 Bg5 Bf5 Bxf6 exf6 g4 Bg6 Qe2 Bb4 Qb5 +D00 Queen's Pawn Game d4 d5 +D00 Queen's Pawn Game d4 d5 e3 +D00 Queen's Pawn Game d4 d5 e3 Nf6 +D00 Queen's Pawn Game: Accelerated London System d4 d5 Bf4 +D00 Queen's Pawn Game: Accelerated London System, Steinitz Countergambit d4 d5 Bf4 c5 +D00 Queen's Pawn Game: Accelerated London System, Steinitz Countergambit Accepted d4 d5 Bf4 c5 dxc5 +D00 Queen's Pawn Game: Accelerated London System, Steinitz Countergambit, Morris Countergambit d4 d5 Bf4 c5 e4 +D00 Queen's Pawn Game: Accelerated London System, Steinitz Countergambit, Morris Countergambit Accepted d4 d5 Bf4 c5 e4 dxe4 +D00 Queen's Pawn Game: Chigorin Variation d4 d5 Nc3 +D00 Queen's Pawn Game: Chigorin Variation d4 d5 Nc3 e6 +D00 Queen's Pawn Game: Chigorin Variation, Alburt Defense d4 d5 Nc3 Bf5 +D00 Queen's Pawn Game: Chigorin Variation, Anti-Veresov d4 d5 Nc3 Bg4 +D00 Queen's Pawn Game: Chigorin Variation, Fianchetto Defense d4 g6 Nf3 Bg7 Nc3 d5 +D00 Queen's Pawn Game: Chigorin Variation, Irish Gambit d4 d5 Nc3 c5 +D00 Queen's Pawn Game: Chigorin Variation, Shaviliuk Gambit d4 d5 Nc3 e5 +D00 Queen's Pawn Game: Chigorin Variation, Shropshire Defense d4 d5 Nc3 h5 +D00 Queen's Pawn Game: Hübsch Gambit d4 Nf6 Nc3 d5 e4 +D00 Queen's Pawn Game: Levitsky Attack d4 d5 Bg5 +D00 Queen's Pawn Game: Levitsky Attack, Welling Variation d4 d5 Bg5 Bg4 +D00 Queen's Pawn Game: Mason Attack d4 d5 f4 +D00 Queen's Pawn Game: Stonewall Attack d4 d5 e3 Nf6 Bd3 +D00 Queen's Pawn Game: Zurich Gambit d4 d5 g4 +D01 Rapport-Jobava System d4 d5 Nc3 Nf6 Bf4 +D01 Rapport-Jobava System d4 d5 Nc3 Nf6 Bf4 e6 +D01 Rapport-Jobava System d4 d5 Nc3 Nf6 Bf4 g6 +D01 Rapport-Jobava System, with e6 d4 d5 Nc3 e6 Bf4 +D01 Richter-Veresov Attack d4 Nf6 Nc3 d5 Bg5 +D01 Richter-Veresov Attack d4 Nf6 Nc3 d5 Bg5 Bf5 +D01 Richter-Veresov Attack: Boyce Defense d4 Nf6 Nc3 d5 Bg5 Ne4 +D01 Richter-Veresov Attack: Malich Gambit d4 Nf6 Nc3 d5 Bg5 c5 Bxf6 gxf6 e4 dxe4 d5 +D01 Richter-Veresov Attack: Richter Variation d4 Nf6 Nc3 d5 Bg5 Bf5 f3 +D01 Richter-Veresov Attack: Two Knights System d4 Nf6 Nc3 d5 Bg5 Nbd7 Nf3 +D01 Richter-Veresov Attack: Two Knights System, Grünfeld Defense d4 Nf6 Nc3 d5 Bg5 Nbd7 Nf3 g6 +D01 Richter-Veresov Attack: Veresov Variation d4 Nf6 Nc3 d5 Bg5 Bf5 Bxf6 +D02 London System: Poisoned Pawn Variation d4 Nf6 Nf3 d5 Bf4 c5 e3 Qb6 Nc3 +D02 Queen's Gambit Declined: Baltic Defense, Pseudo-Slav d4 d5 Nf3 Bf5 c4 e6 Nc3 c6 +D02 Queen's Pawn Game: Anti-Torre Nf3 d5 d4 Bg4 +D02 Queen's Pawn Game: Chandler Gambit d4 d5 Nf3 c5 g3 cxd4 Bg2 +D02 Queen's Pawn Game: Chigorin Variation d4 d5 Nf3 Nc6 +D02 Queen's Pawn Game: Krause Variation d4 d5 Nf3 c5 +D02 Queen's Pawn Game: Levitsky Attack, Euwe Variation, Modern Line d4 d5 Nf3 c6 Bg5 h6 Bh4 Qb6 +D02 Queen's Pawn Game: London System d4 d5 Nf3 Nf6 Bf4 +D02 Queen's Pawn Game: London System d4 d5 Nf3 Nf6 Bf4 c5 e3 +D02 Queen's Pawn Game: London System d4 d5 Nf3 Nf6 Bf4 c5 e3 Nc6 Nbd2 +D02 Queen's Pawn Game: London System d4 d5 Nf3 Nf6 Bf4 c5 e3 Nc6 Nbd2 e6 c3 +D02 Queen's Pawn Game: London System, Pterodactyl Variation d4 g6 Nf3 Bg7 Bf4 c5 c3 cxd4 cxd4 Qa5 +D02 Queen's Pawn Game: London System, with e6 d4 d5 Nf3 e6 Bf4 +D02 Queen's Pawn Game: London System, with e6 d4 d5 Nf3 e6 Bf4 Nf6 +D02 Queen's Pawn Game: Symmetrical Variation d4 d5 Nf3 Nf6 +D02 Queen's Pawn Game: Symmetrical Variation, Pseudo-Catalan d4 d5 Nf3 Nf6 g3 +D02 Queen's Pawn Game: Symmetrical Variation, Pseudo-Catalan d4 d5 Nf3 Nf6 g3 c6 Bg2 Bg4 +D02 Queen's Pawn Game: Symmetrical Variation, Pseudo-Catalan Nf3 d5 g3 c6 Bg2 Nf6 O-O Bg4 d4 e6 +D02 Queen's Pawn Game: Zilbermints Countergambit d4 d5 Nf3 Nf6 c4 b5 +D02 Queen's Pawn Game: Zukertort Variation d4 d5 Nf3 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 Nbd2 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 Nbd2 Nc6 c3 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nbd7 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nbd7 Nbd2 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nbd7 Nbd2 Bd6 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nbd7 Nbd2 Be7 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nc6 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 c5 c3 Nc6 Bd3 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 e3 Nbd7 Bd3 +D03 Queen's Pawn Game: Torre Attack d4 d5 Nf3 Nf6 Bg5 e6 Nbd2 Be7 c3 Nbd7 e3 +D03 Queen's Pawn Game: Torre Attack, Gossip Variation d4 d5 Nf3 Nf6 Bg5 Ne4 +D03 Queen's Pawn Game: Torre Attack, Grünfeld Variation d4 d5 Nf3 Nf6 Bg5 g6 +D03 Queen's Pawn Game: Torre Attack, Grünfeld Variation d4 d5 Nf3 Nf6 Bg5 g6 e3 +D04 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 +D04 Queen's Pawn Game: Colle System, Anti-Colle d4 d5 Nf3 Nf6 e3 Bf5 +D04 Queen's Pawn Game: Colle System, Grünfeld Formation d4 d5 Nf3 Nf6 e3 g6 Bd3 Bg7 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 Bd3 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 b3 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 b3 c5 Bb2 Nc6 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 b3 c5 Bb2 Nc6 Bd3 +D05 Queen's Pawn Game: Colle System d4 d5 Nf3 Nf6 e3 e6 b3 c5 Bb2 Nc6 Nbd2 +D05 Queen's Pawn Game: Colle System d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 O-O c5 b3 Be7 Bb2 O-O Nbd2 d5 +D05 Queen's Pawn Game: Colle System, Traditional Colle d4 Nf6 Nf3 e6 e3 c5 Bd3 d5 c3 +D05 Queen's Pawn Game: Zukertort Variation d4 d5 Nf3 c5 e3 Nf6 Nbd2 e6 b3 +D05 Rubinstein Opening d4 Nf6 Nf3 e6 e3 c5 Bd3 d5 b3 +D05 Rubinstein Opening: Bogoljubow Defense d4 Nf6 Nf3 e6 e3 c5 Bd3 d5 b3 Nc6 O-O Bd6 Bb2 O-O +D05 Rubinstein Opening: Classical Defense d4 Nf6 Nf3 e6 e3 c5 Bd3 d5 b3 Nc6 O-O Be7 Bb2 O-O +D05 Rubinstein Opening: Semi-Slav Defense d4 d5 Nf3 Nf6 e3 e6 Bd3 Bd6 O-O O-O b3 Nbd7 Bb2 +D05 Rubinstein Opening: Semi-Slav Defense d4 d5 Nf3 Nf6 e3 e6 Bd3 Bd6 O-O O-O b3 Nbd7 Bb2 c6 +D05 Rubinstein Opening: Semi-Slav Defense d4 d5 Nf3 Nf6 e3 e6 Bd3 Bd6 O-O O-O b3 Nbd7 Bb2 c6 Nbd2 +D06 Queen's Gambit d4 d5 c4 +D06 Queen's Gambit Declined: Austrian Attack, Salvio Countergambit d4 d5 c4 c5 dxc5 d4 +D06 Queen's Gambit Declined: Austrian Defense d4 d5 c4 c5 +D06 Queen's Gambit Declined: Austrian Defense, Gusev Countergambit d4 d5 c4 c5 cxd5 Nf6 +D06 Queen's Gambit Declined: Austrian Defense, Haberditz Variation d4 d5 c4 c5 cxd5 Nf6 e4 Nxe4 dxc5 Qa5 +D06 Queen's Gambit Declined: Baltic Defense d4 d5 c4 Bf5 +D06 Queen's Gambit Declined: Baltic Defense, Argentinian Gambit d4 d5 c4 Bf5 cxd5 Bxb1 Qa4 c6 dxc6 Nxc6 +D06 Queen's Gambit Declined: Baltic Defense, Pseudo-Chigorin d4 d5 c4 Bf5 Nc3 e6 Nf3 Nc6 +D06 Queen's Gambit Declined: Baltic Defense, Queen Attack d4 d5 c4 Bf5 Qb3 +D06 Queen's Gambit Declined: Baltic Defense, Queen Attack Deferred d4 d5 c4 Bf5 Nc3 e6 Qb3 +D06 Queen's Gambit Declined: Marshall Defense d4 d5 c4 Nf6 +D06 Queen's Gambit Declined: Marshall Defense, Tan Gambit d4 d5 c4 Nf6 cxd5 c6 +D06 Queen's Gambit Declined: Zilbermints Gambit d4 d5 c4 b5 +D07 Queen's Gambit Declined: Chigorin Defense d4 d5 c4 Nc6 +D07 Queen's Gambit Declined: Chigorin Defense d4 d5 c4 Nc6 Nc3 +D07 Queen's Gambit Declined: Chigorin Defense d4 d5 c4 Nc6 Nc3 dxc4 +D07 Queen's Gambit Declined: Chigorin Defense, Exchange Variation d4 d5 c4 Nc6 cxd5 Qxd5 +D07 Queen's Gambit Declined: Chigorin Defense, Exchange Variation, Costa's Line d4 d5 c4 Nc6 cxd5 Qxd5 e3 e5 Nc3 Bb4 Bd2 Bxc3 Bxc3 exd4 Ne2 +D07 Queen's Gambit Declined: Chigorin Defense, Janowski Variation d4 d5 c4 Nc6 Nc3 dxc4 Nf3 +D07 Queen's Gambit Declined: Chigorin Defense, Lazard Gambit d4 d5 c4 Nc6 Nf3 e5 +D07 Queen's Gambit Declined: Chigorin Defense, Main Line d4 d5 c4 Nc6 Nf3 Bg4 +D07 Queen's Gambit Declined: Chigorin Defense, Main Line, Alekhine Variation d4 d5 c4 Nc6 Nf3 Bg4 Qa4 +D07 Queen's Gambit Declined: Chigorin Defense, Modern Gambit d4 d5 c4 Nc6 Nc3 dxc4 Nf3 Nf6 +D07 Queen's Gambit Declined: Chigorin Defense, Tartakower Gambit d4 d5 c4 Nc6 Nc3 e5 +D08 Queen's Gambit Declined: Albin Countergambit d4 d5 c4 e5 +D08 Queen's Gambit Declined: Albin Countergambit, Balogh Variation d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 Nbd2 Qe7 +D08 Queen's Gambit Declined: Albin Countergambit, Janowski Variation d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 Nbd2 f6 +D08 Queen's Gambit Declined: Albin Countergambit, Krenosz Variation d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 Nbd2 Bg4 h3 Bxf3 Nxf3 Bb4 Bd2 Qe7 +D08 Queen's Gambit Declined: Albin Countergambit, Lasker Trap d4 d5 c4 e5 dxe5 d4 e3 Bb4 Bd2 dxe3 +D08 Queen's Gambit Declined: Albin Countergambit, Modern Line d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 Nbd2 +D08 Queen's Gambit Declined: Albin Countergambit, Normal Line d4 d5 c4 e5 dxe5 d4 Nf3 +D08 Queen's Gambit Declined: Albin Countergambit, Spassky Variation d4 d5 c4 e5 dxe5 d4 e4 +D08 Queen's Gambit Declined: Albin Countergambit, Tartakower Defense d4 d5 c4 e5 dxe5 d4 Nf3 c5 +D09 Queen's Gambit Declined: Albin Countergambit, Fianchetto Variation d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 g3 +D09 Queen's Gambit Declined: Albin Countergambit, Fianchetto Variation, Be6 Line d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 g3 Be6 +D09 Queen's Gambit Declined: Albin Countergambit, Fianchetto Variation, Bf5 Line d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 g3 Bf5 +D09 Queen's Gambit Declined: Albin Countergambit, Fianchetto Variation, Bg4 Line d4 d5 c4 e5 dxe5 d4 Nf3 Nc6 g3 Bg4 +D10 Slav Defense d4 d5 c4 c6 +D10 Slav Defense d4 d5 c4 c6 Nc3 +D10 Slav Defense d4 d5 c4 c6 Nc3 dxc4 +D10 Slav Defense: Diemer Gambit d4 d5 c4 c6 e4 +D10 Slav Defense: Exchange Variation d4 d5 c4 c6 cxd5 +D10 Slav Defense: Exchange Variation, Boor Attack d4 d5 c4 c6 cxd5 cxd5 Nc3 Nf6 f3 +D10 Slav Defense: Slav Gambit, Alekhine Attack d4 d5 c4 c6 Nc3 dxc4 e4 +D10 Slav Defense: Winawer Countergambit d4 d5 c4 c6 Nc3 e5 +D10 Slav Defense: Winawer Countergambit, Anti-Winawer Gambit d4 d5 c4 c6 Nc3 e5 e4 +D11 Slav Defense: Bonet Gambit d4 d5 c4 c6 Nf3 Nf6 Bg5 +D11 Slav Defense: Breyer Variation d4 d5 c4 c6 Nf3 Nf6 Nbd2 +D11 Slav Defense: Modern Line d4 d5 c4 c6 Nf3 +D11 Slav Defense: Modern Line d4 d5 c4 c6 Nf3 Nf6 g3 dxc4 Bg2 g6 +D11 Slav Defense: Modern Line d4 d5 c4 c6 Nf3 Nf6 g3 Bg4 Bg2 e6 O-O +D11 Slav Defense: Modern Line d4 d5 Nf3 Nf6 g3 c6 Bg2 Bg4 O-O Nbd7 c4 +D11 Slav Defense: Quiet Variation d4 d5 c4 c6 Nf3 Nf6 e3 +D11 Slav Defense: Quiet Variation, Pin Defense d4 d5 c4 c6 Nf3 Nf6 e3 Bg4 +D12 Slav Defense: Quiet Variation, Amsterdam Variation d4 d5 c4 c6 Nf3 Nf6 e3 Bf5 cxd5 cxd5 Nc3 e6 Ne5 Nfd7 +D12 Slav Defense: Quiet Variation, Landau Variation d4 d5 c4 c6 Nf3 Nf6 e3 Bf5 cxd5 cxd5 Qb3 Qc8 Bd2 e6 Na3 +D12 Slav Defense: Quiet Variation, Schallopp Defense d4 d5 c4 c6 Nf3 Nf6 e3 Bf5 +D12 Slav Defense: Quiet Variation, Schallopp Defense d4 d5 c4 c6 Nf3 Nf6 e3 Bf5 Nc3 e6 +D13 Slav Defense: Exchange Variation d4 d5 c4 c6 Nf3 Nf6 cxd5 cxd5 +D13 Slav Defense: Exchange Variation, Schallopp Variation d4 d5 c4 c6 Nf3 Nf6 e3 Bf5 cxd5 cxd5 Nc3 +D14 Slav Defense: Exchange Variation, Symmetrical Line d4 d5 c4 c6 cxd5 cxd5 Nc3 Nf6 Nf3 Nc6 Bf4 Bf5 +D14 Slav Defense: Exchange Variation, Trifunovic Variation d4 d5 c4 c6 Nf3 Nf6 cxd5 cxd5 Nc3 Nc6 Bf4 Bf5 e3 e6 Qb3 Bb4 +D15 Slav Defense: Alekhine Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 e3 +D15 Slav Defense: Chebanenko Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 a6 +D15 Slav Defense: Chebanenko Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 a6 e3 Bf5 +D15 Slav Defense: Chebanenko Variation, Advance System d4 d5 c4 c6 Nf3 Nf6 Nc3 a6 c5 +D15 Slav Defense: Geller Gambit d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 e4 +D15 Slav Defense: Geller Gambit d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 e4 b5 e5 +D15 Slav Defense: Schlechter Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 g6 +D15 Slav Defense: Süchting Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 Qb6 +D15 Slav Defense: Three Knights Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 +D15 Slav Defense: Two Knights Attack d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 +D16 Slav Defense: Alapin Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 +D16 Slav Defense: Smyslov Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Na6 +D16 Slav Defense: Soultanbeieff Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 e6 +D16 Slav Defense: Steiner Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bg4 +D17 Slav Defense: Czech Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 +D17 Slav Defense: Czech Variation, Bled Attack d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Nh4 +D17 Slav Defense: Czech Variation, Carlsbad Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 Nbd7 Nxc4 Qc7 g3 e5 +D17 Slav Defense: Czech Variation, Carlsbad Variation, Morozevich Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 Nbd7 Nxc4 Qc7 g3 e5 dxe5 Nxe5 Bf4 Nfd7 Bg2 g5 +D17 Slav Defense: Czech Variation, Krause Attack d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 +D17 Slav Defense: Czech Variation, Krause Attack, Fazekas Gambit d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 Na6 e4 +D17 Slav Defense: Czech Variation, Wiesbaden Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 e6 +D17 Slav Defense: Czech Variation, Wiesbaden Variation, Sharp Line d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 Ne5 e6 f3 Bb4 e4 +D18 Slav Defense: Czech Variation, Classical System d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 +D18 Slav Defense: Czech Variation, Lasker Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 Na6 +D19 Slav Defense: Czech Variation, Classical System, Main Line d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 e6 Bxc4 Bb4 O-O O-O Qe2 +D19 Slav Defense: Czech Variation, Dutch Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 e6 Bxc4 Bb4 O-O +D19 Slav Defense: Czech Variation, Dutch Variation, Sämisch Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 dxc4 a4 Bf5 e3 e6 Bxc4 Bb4 O-O O-O Qe2 Ne4 g4 +D20 Queen's Gambit Accepted d4 d5 c4 dxc4 +D20 Queen's Gambit Accepted: Accelerated Mannheim Variation d4 d5 c4 dxc4 Qa4 +D20 Queen's Gambit Accepted: Central Variation, Alekhine System d4 d5 c4 dxc4 e4 Nf6 +D20 Queen's Gambit Accepted: Central Variation, Greco Variation d4 d5 c4 dxc4 e4 b5 +D20 Queen's Gambit Accepted: Central Variation, McDonnell Defense d4 d5 c4 dxc4 e4 e5 +D20 Queen's Gambit Accepted: Central Variation, McDonnell Defense, Somov Gambit d4 d5 c4 dxc4 e4 e5 Bxc4 +D20 Queen's Gambit Accepted: Central Variation, Modern Defense d4 d5 c4 dxc4 e4 Nc6 +D20 Queen's Gambit Accepted: Central Variation, Rubinstein Defense d4 d5 c4 dxc4 e4 c5 +D20 Queen's Gambit Accepted: Central Variation, Rubinstein Defense, Yefimov Gambit d4 d5 c4 dxc4 e4 c5 d5 b5 +D20 Queen's Gambit Accepted: Linares Variation d4 d5 c4 dxc4 e4 c5 d5 Nf6 Nc3 b5 +D20 Queen's Gambit Accepted: Old Variation d4 d5 c4 dxc4 e3 +D20 Queen's Gambit Accepted: Old Variation, Billinger Gambit d4 d5 c4 dxc4 e3 e5 Bxc4 exd4 Qb3 Qe7 a3 +D20 Queen's Gambit Accepted: Old Variation, Christensen Gambit d4 d5 c4 dxc4 e3 e5 Bxc4 exd4 Qb3 Qe7 Nf3 +D20 Queen's Gambit Accepted: Old Variation, Korchnoi Gambit d4 d5 c4 dxc4 e3 e5 Bxc4 exd4 Qb3 Qe7 Kf1 +D20 Queen's Gambit Accepted: Old Variation, Novikov Gambit d4 d5 c4 dxc4 e3 e5 Bxc4 exd4 Qb3 Qe7 Nd2 +D20 Queen's Gambit Accepted: Saduleto Variation d4 d5 c4 dxc4 e4 +D20 Queen's Gambit Accepted: Schwartz Defense d4 d5 c4 dxc4 e4 f5 +D21 Queen's Gambit Accepted: Alekhine Defense, Borisenko-Furman Variation d4 d5 c4 dxc4 Nf3 a6 e4 +D21 Queen's Gambit Accepted: Godes Variation d4 d5 c4 dxc4 Nf3 Nd7 +D21 Queen's Gambit Accepted: Gunsberg Defense d4 d5 c4 dxc4 Nf3 c5 +D21 Queen's Gambit Accepted: Normal Variation d4 d5 c4 dxc4 Nf3 +D21 Queen's Gambit Accepted: Rosenthal Variation d4 d5 c4 dxc4 Nf3 e6 +D21 Queen's Gambit Accepted: Slav Gambit d4 d5 c4 dxc4 Nf3 b5 +D22 Queen's Gambit Accepted: Alekhine Defense d4 d5 c4 dxc4 Nf3 a6 +D22 Queen's Gambit Accepted: Alekhine Defense, Alatortsev Variation d4 d5 c4 dxc4 Nf3 a6 e3 Bg4 Bxc4 e6 d5 +D22 Queen's Gambit Accepted: Alekhine Defense, Haberditz Variation d4 d5 c4 dxc4 Nf3 a6 e3 b5 +D23 Queen's Gambit Accepted d4 d5 c4 dxc4 Nf3 Nf6 +D23 Queen's Gambit Accepted: Mannheim Variation d4 d5 c4 dxc4 Nf3 Nf6 Qa4 +D24 Queen's Gambit Accepted d4 d5 c4 e6 Nf3 Nf6 Nc3 dxc4 e4 +D24 Queen's Gambit Accepted d4 d5 c4 e6 Nf3 Nf6 Nc3 dxc4 Bg5 +D24 Queen's Gambit Accepted: Bogoljubow Defense d4 d5 c4 dxc4 Nf3 Nf6 Nc3 a6 e4 +D24 Queen's Gambit Accepted: Gunsberg Defense, Prianishenmo Gambit d4 d5 c4 dxc4 Nf3 Nf6 Nc3 c5 d5 e6 e4 exd5 e5 +D24 Queen's Gambit Accepted: Showalter Variation d4 d5 c4 dxc4 Nf3 Nf6 Nc3 +D25 Queen's Gambit Accepted: Janowski-Larsen Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 Bg4 +D25 Queen's Gambit Accepted: Normal Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 +D25 Queen's Gambit Accepted: Smyslov Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 g6 +D25 Queen's Gambit Accepted: Winawer Defense d4 d5 c4 dxc4 Nf3 Nf6 e3 Be6 +D26 Queen's Gambit Accepted: Classical Defense d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 +D26 Queen's Gambit Accepted: Classical Defense, Normal Line d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O +D26 Queen's Gambit Accepted: Classical Defense, Steinitz Variation, Development Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O Nc6 +D26 Queen's Gambit Accepted: Classical Defense, Steinitz Variation, Exchange Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O cxd4 +D26 Queen's Gambit Accepted: Classical, Furman Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 Qe2 a6 dxc5 Bxc5 O-O Nc6 e4 b5 e5 +D26 Queen's Gambit Accepted: Normal Variation, Traditional System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 +D26 Queen's Gambit Accepted: Normal Variation, Traditional System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 Be7 O-O a6 +D26 Queen's Gambit Accepted: Normal Variation, Traditional System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 Be7 O-O O-O +D26 Queen's Gambit Accepted: Normal Variation, Traditional System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 Be7 O-O O-O Nc3 +D27 Queen's Gambit Accepted: Classical Defense, Main Line d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 +D27 Queen's Gambit Accepted: Classical Defense, Main Line d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Nc3 +D27 Queen's Gambit Accepted: Classical Defense, Rubinstein Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 a4 +D27 Queen's Gambit Accepted: Classical Defense, Rubinstein Variation d4 d5 c4 dxc4 Nf3 e6 e3 Nf6 Bxc4 Be7 O-O O-O Nc3 a6 a4 c5 +D27 Queen's Gambit Accepted: Classical Defense, Russian Gambit d4 d5 c4 dxc4 e3 Nf6 Bxc4 e6 Nf3 c5 O-O a6 e4 +D27 Queen's Gambit Accepted: Furman Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 dxc5 Bxc5 +D28 Queen's Gambit Accepted: Classical Defense, Alekhine System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 +D28 Queen's Gambit Accepted: Classical Defense, Alekhine System d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 b5 +D28 Queen's Gambit Accepted: Classical, Flohr Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 b5 Bb3 Nc6 Rd1 c4 Bc2 Nb4 Nc3 Nxc2 Qxc2 Bb7 d5 Qc7 +D29 Queen's Gambit Accepted: Classical Defense, Alekhine System, Main Line d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 b5 Bb3 Bb7 +D29 Queen's Gambit Accepted: Classical Defense, Alekhine System, Main Line d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 b5 Bb3 Bb7 Nc3 +D29 Queen's Gambit Accepted: Classical Defense, Alekhine System, Smyslov Variation d4 d5 c4 dxc4 Nf3 Nf6 e3 e6 Bxc4 c5 O-O a6 Qe2 b5 Bb3 Bb7 Rd1 Nbd7 Nc3 Bd6 +D30 Queen's Gambit Declined d4 d5 c4 e6 +D30 Queen's Gambit Declined: Capablanca Variation d4 Nf6 c4 e6 Nf3 d5 Bg5 h6 +D30 Queen's Gambit Declined: Capablanca Variation d4 Nf6 Nf3 e6 c4 d5 Bg5 c6 Nbd2 Nbd7 e3 +D30 Queen's Gambit Declined: Semmering Variation d4 d5 c4 c6 Nf3 Nf6 e3 e6 Nbd2 Nbd7 Bd3 c5 +D30 Queen's Gambit Declined: Spielmann Variation d4 d5 c4 e6 Nf3 Nf6 e3 c6 Nbd2 g6 +D30 Queen's Gambit Declined: Stonewall Variation d4 d5 c4 c6 Nf3 Nf6 e3 e6 Nbd2 Ne4 Bd3 f5 +D30 Queen's Gambit Declined: Tarrasch Defense, Pseudo-Tarrasch d4 d5 c4 e6 Nf3 c5 +D30 Queen's Gambit Declined: Tarrasch Defense, Pseudo-Tarrasch Bishop Attack d4 d5 c4 e6 Nf3 c5 cxd5 exd5 Bg5 +D30 Queen's Gambit Declined: Traditional Variation d4 Nf6 c4 e6 Nf3 d5 Bg5 +D30 Queen's Gambit Declined: Vienna Variation d4 Nf6 c4 e6 Nf3 d5 Bg5 Bb4 +D30 Semi-Slav Defense: Quiet Variation d4 d5 c4 c6 Nf3 Nf6 e3 e6 Nbd2 +D30 Semi-Slav Defense: Quiet Variation d4 d5 c4 c6 Nf3 Nf6 e3 e6 Nbd2 Nbd7 +D31 Queen's Gambit Declined: Alapin Variation d4 e6 c4 b6 Nc3 d5 +D31 Queen's Gambit Declined: Charousek Variation d4 d5 c4 e6 Nc3 Be7 +D31 Queen's Gambit Declined: Charousek Variation, Miladinovic Gambit d4 d5 c4 e6 Nc3 Be7 e4 dxe4 f3 +D31 Queen's Gambit Declined: Janowski Variation d4 d5 c4 e6 Nc3 a6 +D31 Queen's Gambit Declined: Queen's Knight Variation d4 d5 c4 e6 Nc3 +D31 Queen's Gambit Declined: Semi-Slav, Abrahams Variation d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 a4 Bb4 e3 b5 Bd2 a5 +D31 Queen's Gambit Declined: Semi-Slav, Junge Variation d4 d5 c4 e6 Nf3 c6 Nc3 dxc4 a4 Bb4 e3 b5 Bd2 Qb6 +D31 Queen's Gambit Declined: Semi-Slav, Koomen Variation d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 e3 b5 a4 Bb4 Bd2 Qe7 +D31 Semi-Slav Defense: Accelerated Move Order d4 d5 c4 e6 Nc3 c6 +D31 Semi-Slav Defense: Anti-Noteboom, Stonewall Variation d4 d5 c4 e6 Nc3 c6 e3 f5 +D31 Semi-Slav Defense: Anti-Noteboom, Stonewall Variation, Portisch Gambit d4 d5 c4 e6 Nc3 c6 e3 f5 g4 +D31 Semi-Slav Defense: Gunderam Gambit d4 d5 c4 e6 Nc3 c6 e4 dxe4 f3 +D31 Semi-Slav Defense: Marshall Gambit d4 d5 c4 e6 Nc3 c6 e4 +D31 Semi-Slav Defense: Marshall Gambit, Forgotten Variation d4 d5 c4 e6 Nc3 c6 e4 dxe4 Nxe4 Bb4 Nc3 +D31 Semi-Slav Defense: Marshall Gambit, Main Line d4 d5 c4 e6 Nc3 c6 e4 dxe4 Nxe4 Bb4 Bd2 +D31 Semi-Slav Defense: Marshall Gambit, Tolush Variation d4 d5 c4 e6 Nc3 c6 e4 dxe4 Nxe4 Bb4 Bd2 Qxd4 Bxb4 Qxe4 Be2 c5 Bxc5 Qxg2 +D31 Semi-Slav Defense: Noteboom Variation d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 +D31 Semi-Slav Defense: Noteboom Variation, Abrahams Variation d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 a4 Bb4 e3 Bxc3 bxc3 b5 axb5 cxb5 +D31 Semi-Slav Defense: Noteboom Variation, Anti-Noteboom Gambit d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 g3 +D31 Semi-Slav Defense: Noteboom Variation, Anti-Noteboom Variation d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 Bg5 +D31 Semi-Slav Defense: Noteboom Variation, Anti-Noteboom Variation, Belyavsky Line d4 d5 c4 e6 Nc3 c6 Nf3 dxc4 Bg5 f6 +D32 Queen's Gambit Declined: Tarrasch Defense d4 d5 c4 e6 Nc3 c5 cxd5 exd5 +D32 Queen's Gambit Declined: Tarrasch Defense d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 Bg5 Be7 +D32 Queen's Gambit Declined: Tarrasch Defense d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 Bg5 Be7 Bxe7 Ngxe7 +D32 Queen's Gambit Declined: Tarrasch Defense d4 Nf6 c4 e6 Nf3 d5 e3 c5 cxd5 exd5 Nc3 a6 Be2 Nc6 +D32 Tarrasch Defense d4 d5 c4 e6 Nc3 c5 +D32 Tarrasch Defense: Grünfeld Gambit d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 dxc5 d4 Na4 b5 +D32 Tarrasch Defense: Marshall Gambit d4 d5 c4 e6 Nc3 c5 cxd5 exd5 e4 +D32 Tarrasch Defense: Schara Gambit d4 d5 c4 e6 Nc3 c5 cxd5 cxd4 +D32 Tarrasch Defense: Symmetrical Variation d4 d5 c4 e6 Nc3 c5 e3 Nf6 Nf3 Nc6 +D32 Tarrasch Defense: Symmetrical Variation c4 c5 Nf3 Nc6 Nc3 Nf6 e3 e6 d4 d5 cxd5 exd5 +D32 Tarrasch Defense: Tarrasch Gambit d4 d5 c4 e6 Nc3 c5 cxd5 exd5 dxc5 d4 Na4 b5 +D32 Tarrasch Defense: Two Knights Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 +D32 Tarrasch Defense: von Hennig Gambit d4 d5 c4 e6 Nc3 c5 cxd5 cxd4 Qxd4 Nc6 Qd1 exd5 Qxd5 Be6 +D33 Tarrasch Defense: Dubov Tarrasch d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 cxd4 Nxd4 Bc5 +D33 Tarrasch Defense: Prague Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 +D33 Tarrasch Defense: Rubinstein System d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 +D33 Tarrasch Defense: Swedish Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 c4 +D33 Tarrasch Defense: Swedish Variation, Central Break d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 c4 e4 +D33 Tarrasch Defense: Wagner Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Bg4 +D34 Queen's Gambit Declined: Tarrasch Defense, Stoltz Variation d4 d5 c4 e6 Nf3 c5 cxd5 exd5 g3 Nc6 Bg2 Nf6 O-O Be7 Nc3 O-O Bg5 Be6 Rc1 b6 +D34 Tarrasch Defense: Classical Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O +D34 Tarrasch Defense: Classical Variation, Advance Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 c4 +D34 Tarrasch Defense: Classical Variation, Bogoljubow Variation d4 Nf6 c4 e6 Nc3 c5 Nf3 d5 cxd5 exd5 g3 Nc6 Bg2 Be7 O-O O-O Bg5 Be6 Rc1 c4 +D34 Tarrasch Defense: Classical Variation, Carlsbad Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 +D34 Tarrasch Defense: Classical Variation, Chandler Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 cxd4 Nxd4 h6 Be3 Re8 Rc1 Be6 +D34 Tarrasch Defense: Classical Variation, Classical Tarrasch Gambit d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O dxc5 d4 +D34 Tarrasch Defense: Classical Variation, Endgame Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 Be6 +D34 Tarrasch Defense: Classical Variation, Main Line d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 cxd4 Nxd4 h6 Be3 Re8 +D34 Tarrasch Defense: Classical Variation, Petursson Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 cxd4 Nxd4 Re8 +D34 Tarrasch Defense: Classical Variation, Réti Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O dxc5 Bxc5 Na4 +D34 Tarrasch Defense: Classical Variation, Spassky Variation d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 O-O O-O Bg5 cxd4 Nxd4 h6 Be3 Bg4 +D34 Tarrasch Defense: Prague Variation, Main Line d4 d5 c4 e6 Nc3 c5 cxd5 exd5 Nf3 Nc6 g3 Nf6 Bg2 Be7 +D35 Queen's Gambit Declined: Exchange Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 +D35 Queen's Gambit Declined: Exchange Variation d4 Nf6 c4 e6 Nf3 d5 e3 b6 Nc3 Bd6 cxd5 exd5 +D35 Queen's Gambit Declined: Exchange Variation d4 d5 c4 e6 Nc3 Nf6 e3 Be7 cxd5 exd5 Bd3 O-O Nf3 c6 +D35 Queen's Gambit Declined: Exchange Variation, Carlsen Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 Be7 e3 h6 Bh4 Bg4 +D35 Queen's Gambit Declined: Exchange Variation, Chameleon Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 Be7 e3 O-O Bd3 Nbd7 Qc2 Re8 Nge2 Nf8 O-O-O +D35 Queen's Gambit Declined: Exchange Variation, Positional Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 +D35 Queen's Gambit Declined: Exchange Variation, Positional Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 c6 +D35 Queen's Gambit Declined: Exchange Variation, Sämisch Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Nbd7 cxd5 exd5 Bf4 +D35 Queen's Gambit Declined: Harrwitz Attack d4 d5 c4 e6 Nc3 Nf6 Bf4 +D35 Queen's Gambit Declined: Normal Defense d4 d5 c4 e6 Nc3 Nf6 +D36 Queen's Gambit Declined: Exchange Variation, Reshevsky Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 c6 Qc2 +D36 Queen's Gambit Declined: Exchange Variation, Reshevsky Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 c6 Qc2 Be7 e3 Nbd7 Bd3 +D36 Queen's Gambit Declined: Exchange Variation, Reshevsky Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 c6 Qc2 Be7 e3 O-O Bd3 +D36 Queen's Gambit Declined: Exchange Variation, Reshevsky Variation d4 Nf6 c4 e6 Nc3 d5 cxd5 exd5 Bg5 c6 Qc2 Be7 e3 O-O Bd3 h6 Bh4 +D37 Queen's Gambit Declined: Barmen Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Nbd7 +D37 Queen's Gambit Declined: Harrwitz Attack d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bf4 +D37 Queen's Gambit Declined: Harrwitz Attack d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bf4 O-O e3 c5 dxc5 Bxc5 Qc2 Nc6 Rd1 Qa5 a3 +D37 Queen's Gambit Declined: Harrwitz Attack d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bf4 O-O e3 c5 dxc5 Bxc5 Qc2 Nc6 a3 Qa5 O-O-O +D37 Queen's Gambit Declined: Harrwitz Attack, Fianchetto Defense d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bf4 O-O e3 b6 +D37 Queen's Gambit Declined: Harrwitz Attack, Main Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bf4 O-O e3 c5 dxc5 Bxc5 +D37 Queen's Gambit Declined: Harrwitz Attack, Orthodox Defense d4 d5 c4 e6 Nc3 Nf6 Nf3 Be7 Bf4 O-O e3 c6 +D37 Queen's Gambit Declined: Harrwitz Attack, Two Knights Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bf4 O-O e3 Nbd7 +D37 Queen's Gambit Declined: Harrwitz Attack, Two Knights Defense, Blockade Line d4 Nf6 c4 e6 Nc3 d5 Nf3 Be7 Bf4 O-O e3 Nbd7 c5 +D37 Queen's Gambit Declined: Knight Defense, Alekhine Gambit d4 Nf6 c4 e6 Nf3 d5 Nc3 Nbd7 Bg5 h6 Bh4 dxc4 +D37 Queen's Gambit Declined: Miles Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O Qc2 +D37 Queen's Gambit Declined: Three Knights Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 +D37 Queen's Gambit Declined: Three Knights Variation d4 d5 c4 e6 Nc3 Nf6 Nf3 Be7 e3 O-O +D37 Queen's Gambit Declined: Three Knights, Vienna Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 dxc4 +D37 Queen's Gambit Declined: Vienna Variation, Quiet Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 dxc4 e3 +D38 Queen's Gambit Declined: Ragozin Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 Bb4 +D38 Queen's Gambit Declined: Ragozin Defense, Alekhine Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Bb4 Qa4 +D38 Queen's Gambit Declined: Westphalian Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Bb4 Bg5 Nbd7 e3 c5 +D39 Queen's Gambit Declined: Ragozin Defense, Vienna Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Bb4 Bg5 dxc4 +D40 Queen's Gambit Declined: Semi-Tarrasch Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 +D40 Queen's Gambit Declined: Semi-Tarrasch Defense d4 d5 c4 e6 Nc3 Nf6 Nf3 c5 e3 Nc6 a3 cxd4 exd4 Bd6 +D40 Queen's Gambit Declined: Semi-Tarrasch Defense, Levenfish Variation d4 d5 c4 e6 Nc3 Nf6 Nf3 c5 e3 Nc6 Bd3 Bd6 O-O O-O Qe2 Qe7 dxc5 Bxc5 e4 +D40 Queen's Gambit Declined: Semi-Tarrasch Defense, Pillsbury Variation d4 d5 c4 e6 Nc3 Nf6 Nf3 c5 Bg5 +D40 Queen's Gambit Declined: Semi-Tarrasch Defense, Symmetrical Variation d4 d5 c4 e6 Nc3 Nf6 Nf3 c5 e3 Nc6 Bd3 Bd6 O-O O-O +D40 Queen's Gambit Declined: Semi-Tarrasch Defense, with e3 d4 d5 c4 c5 Nf3 Nf6 Nc3 e6 e3 Nc6 Bd3 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense c4 c5 Nf3 Nf6 Nc3 Nc6 g3 d5 d4 e6 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 g3 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 g3 Nc6 Bg2 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, Endgame Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 cxd4 Qxd4 exd5 e4 dxe4 Qxd8 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, Exchange Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 e4 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, Exchange Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 e4 Nxc3 bxc3 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, Kmoch Variation d4 d5 c4 e6 Nc3 Nf6 Nf3 c5 cxd5 Nxd5 e4 Nxc3 bxc3 cxd4 cxd4 Bb4 Bd2 Bxd2 Qxd2 O-O Bb5 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, Pillsbury Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 e3 +D41 Queen's Gambit Declined: Semi-Tarrasch Defense, San Sebastian Variation d4 d5 c4 e6 Nc3 Nf6 cxd5 Nxd5 e4 Nxc3 bxc3 c5 Nf3 cxd4 cxd4 Bb4 Bd2 Qa5 +D42 Queen's Gambit Declined: Semi-Tarrasch Defense, Main Line d4 Nf6 c4 e6 Nf3 d5 Nc3 c5 cxd5 Nxd5 e3 Nc6 Bd3 +D43 Semi-Slav Defense d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 +D43 Semi-Slav Defense: Anti-Moscow Gambit d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 h6 Bh4 +D43 Semi-Slav Defense: Hastings Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 h6 Bxf6 Qxf6 Qb3 +D43 Semi-Slav Defense: Moscow Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 h6 Bxf6 Qxf6 +D44 Semi-Slav Defense Accepted d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 dxc4 +D44 Semi-Slav Defense: Botvinnik Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 dxc4 e4 +D44 Semi-Slav Defense: Botvinnik Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 dxc4 e4 b5 e5 h6 Bh4 g5 Nxg5 +D44 Semi-Slav Defense: Botvinnik Variation, Alatortsev System d4 Nf6 c4 e6 Nf3 d5 Nc3 c6 Bg5 dxc4 e4 b5 e5 h6 Bh4 g5 Nxg5 Nd5 +D44 Semi-Slav Defense: Botvinnik Variation, Ekstrom Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 dxc4 e4 b5 e5 h6 Bh4 g5 exf6 gxh4 Ne5 +D44 Semi-Slav Defense: Botvinnik Variation, Lilienthal Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 dxc4 e4 b5 e5 h6 Bh4 g5 Nxg5 hxg5 Bxg5 Nbd7 g3 +D44 Semi-Slav Defense: Botvinnik Variation, Szabo Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 c6 Bg5 dxc4 e4 b5 e5 h6 Bh4 g5 Nxg5 hxg5 Bxg5 Nbd7 Qf3 +D45 Semi-Slav Defense: Accelerated Meran Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 a6 +D45 Semi-Slav Defense: Main Line d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 +D45 Semi-Slav Defense: Normal Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 +D45 Semi-Slav Defense: Normal Variation Nf3 d5 e3 Nf6 c4 c6 Nc3 e6 b3 Bd6 Bb2 O-O d4 Nbd7 +D45 Semi-Slav Defense: Normal Variation d4 d5 c4 e6 Nc3 c6 Nf3 Nf6 e3 Nbd7 b3 Bd6 Bb2 O-O Be2 +D45 Semi-Slav Defense: Rubinstein System d4 d5 c4 e6 Nc3 c6 Nf3 Nf6 e3 Nbd7 Ne5 +D45 Semi-Slav Defense: Stoltz Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 +D45 Semi-Slav Defense: Stoltz Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 b6 b3 +D45 Semi-Slav Defense: Stoltz Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 b6 b3 Bb7 +D45 Semi-Slav Defense: Stoltz Variation d4 d5 Nf3 Nf6 c4 c6 e3 e6 Nc3 Nbd7 Qc2 Bd6 b3 +D45 Semi-Slav Defense: Stoltz Variation d4 d5 Nf3 Nf6 c4 c6 e3 e6 Nc3 Nbd7 Qc2 Bd6 b3 O-O Bb2 +D45 Semi-Slav Defense: Stoltz Variation, Center Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Qc2 Bd6 e4 +D45 Semi-Slav Defense: Stoltz Variation, Center Variation, Mikhalchishin Line d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Qc2 Bd6 e4 dxe4 Nxe4 Nxe4 Qxe4 e5 dxe5 +D45 Semi-Slav Defense: Stoltz Variation, Shabalov Attack d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Qc2 Bd6 g4 +D45 Semi-Slav Defense: Stonewall Defense d4 d5 Nf3 Nf6 c4 c6 Nc3 e6 e3 Ne4 Bd3 f5 +D46 Semi-Slav Defense: Bogoljubow Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 Be7 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 Bd6 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 Bd6 Qc2 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 b3 Bd6 Bb2 O-O Bd3 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 b6 b3 Bb7 Bd3 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 Bd6 b3 O-O Bb2 Re8 Bd3 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 Bd6 b3 O-O Bb2 Qe7 Bd3 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nf3 e6 e3 Nf6 Nc3 Bd6 Bd3 dxc4 Bxc4 b5 Bd3 Nbd7 O-O O-O Qc2 +D46 Semi-Slav Defense: Chigorin Defense d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 Bd6 O-O Bb7 a3 O-O Qc2 +D46 Semi-Slav Defense: Main Line d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 +D46 Semi-Slav Defense: Main Line d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Qc2 b6 b3 Bb7 Bd3 Be7 O-O O-O Bb2 +D46 Semi-Slav Defense: Romih Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 Bb4 +D47 Semi-Slav Defense: Meran Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 +D47 Semi-Slav Defense: Meran Variation, Lundin Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 b4 +D47 Semi-Slav Defense: Meran Variation, Wade Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 Bb7 +D47 Semi-Slav Defense: Meran Variation, Wade Variation, Kaidanov Gambit d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 Bb7 e4 b4 Na4 c5 e5 Nd5 O-O cxd4 Nxd4 +D47 Semi-Slav Defense: Meran Variation, Wade Variation, Larsen Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 Bb7 e4 b4 Na4 c5 e5 Nd5 +D47 Semi-Slav Defense: Semi-Meran Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 +D48 Semi-Slav Defense: Meran Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 +D48 Semi-Slav Defense: Meran Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 +D48 Semi-Slav Defense: Meran Variation, Old Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 +D48 Semi-Slav Defense: Meran Variation, Pirc Variation d4 d5 c4 e6 Nc3 c6 e3 Nf6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 b4 +D48 Semi-Slav Defense: Meran Variation, Reynolds' Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 d5 +D49 Semi-Slav Defense: Meran Variation, Blumenfeld Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 +D49 Semi-Slav Defense: Meran Variation, Rabinovich Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 Ng4 +D49 Semi-Slav Defense: Meran Variation, Rellstab Attack d4 d5 c4 c6 Nc3 Nf6 Nf3 e6 e3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 Nxe5 Nxe5 axb5 O-O Qd5 Qe2 Ba6 Bg5 +D49 Semi-Slav Defense: Meran Variation, Sozin Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 e3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 Nxe5 +D49 Semi-Slav Defense: Meran Variation, Sozin Variation d4 d5 Nf3 Nf6 c4 c6 Nc3 e6 e3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 Nxe5 Nxe5 axb5 O-O +D49 Semi-Slav Defense: Meran Variation, Stahlberg Variation d4 d5 c4 c6 Nc3 Nf6 e3 e6 Nf3 Nbd7 Bd3 dxc4 Bxc4 b5 Bd3 a6 e4 c5 e5 cxd4 Nxb5 Nxe5 Nxe5 axb5 Qf3 +D50 Queen's Gambit Declined: Been-Koomen Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c5 +D50 Queen's Gambit Declined: Modern Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 +D50 Queen's Gambit Declined: Pseudo-Tarrasch Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c5 cxd5 +D50 Queen's Gambit Declined: Pseudo-Tarrasch Variation, Canal Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c5 cxd5 Qb6 +D50 Queen's Gambit Declined: Pseudo-Tarrasch Variation, Primitive Pillsbury Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c5 Nf3 cxd4 Qxd4 +D50 Queen's Gambit Declined: Semi-Tarrasch Defense, Krause Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c5 Nf3 cxd4 Nxd4 e5 Ndb5 a6 Qa4 +D51 Queen's Gambit Declined: Alekhine Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 Nf3 c6 e4 +D51 Queen's Gambit Declined: Capablanca Variation, Anti-Cambridge Springs Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 c6 a3 +D51 Queen's Gambit Declined: Manhattan Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 Bb4 +D51 Queen's Gambit Declined: Modern Variation, Knight Defense d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 +D51 Queen's Gambit Declined: Modern Variation, Knight Defense d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 +D51 Queen's Gambit Declined: Modern Variation, Knight Defense d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 c6 +D51 Queen's Gambit Declined: Rochlin Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 Nf3 c6 Rc1 Qa5 Bd2 +D52 Queen's Gambit Declined d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 +D52 Queen's Gambit Declined: Cambridge Springs Defense d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 Qa5 +D52 Queen's Gambit Declined: Cambridge Springs Defense d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 Qa5 cxd5 +D52 Queen's Gambit Declined: Cambridge Springs Defense, Argentine Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 c6 Nf3 Qa5 Nd2 Bb4 Qc2 O-O Bh4 +D52 Queen's Gambit Declined: Cambridge Springs Defense, Bogoljubow Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 Qa5 Nd2 Bb4 Qc2 +D52 Queen's Gambit Declined: Cambridge Springs Defense, Capablanca Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Nbd7 e3 c6 Nf3 Qa5 Bxf6 +D52 Queen's Gambit Declined: Cambridge Springs Defense, Rubinstein Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 Qa5 Nd2 dxc4 +D52 Queen's Gambit Declined: Cambridge Springs Defense, Yugoslav Variation d4 d5 c4 c6 Nf3 Nf6 Nc3 e6 Bg5 Nbd7 e3 Qa5 cxd5 Nxd5 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 Nf3 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 Nf3 c6 e3 dxc4 Bxc4 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nf3 Nf6 Nc3 dxc4 Bg5 Be7 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nf3 Nf6 Nc3 dxc4 Bg5 Be7 e4 +D53 Queen's Gambit Declined d4 d5 c4 e6 Nf3 Nf6 Nc3 Nc6 Bg5 Be7 e3 O-O +D53 Queen's Gambit Declined: Lasker Defense d4 Nf6 c4 e6 Nc3 d5 Bg5 Be7 e3 Ne4 +D53 Queen's Gambit Declined: Modern Variation, Heral Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 Bxf6 +D53 Queen's Gambit Declined: Uhlmann Variation d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O Rc1 dxc4 +D54 Queen's Gambit Declined: Neo-Orthodox Variation d4 Nf6 c4 e6 Nc3 d5 Bg5 Be7 e3 O-O Rc1 +D55 Queen's Gambit Declined: Anti-Tartakower Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 h6 Bxf6 +D55 Queen's Gambit Declined: Anti-Tartakower Variation, Petrosian Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 h6 Bxf6 Bxf6 e3 O-O Rc1 c6 Bd3 Nd7 O-O dxc4 Bxc4 +D55 Queen's Gambit Declined: Modern Variation, Normal Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 +D55 Queen's Gambit Declined: Neo-Orthodox Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 h6 +D55 Queen's Gambit Declined: Neo-Orthodox Variation, Main Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 h6 Bh4 O-O e3 +D55 Queen's Gambit Declined: Pillsbury Attack d4 Nf6 c4 e6 Nf3 b6 Nc3 d5 cxd5 exd5 Bg5 Be7 e3 O-O Bd3 Bb7 Ne5 +D56 Queen's Gambit Declined d4 d5 c4 e6 Nf3 Nf6 Nc3 Nc6 Bg5 Be7 e3 O-O Rc1 h6 Bh4 +D56 Queen's Gambit Declined: Lasker Defense d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O e3 Ne4 +D56 Queen's Gambit Declined: Lasker Defense d4 d5 c4 e6 Nf3 Nf6 Nc3 Nc6 Bg5 Be7 e3 O-O Rc1 h6 Bh4 Ne4 +D56 Queen's Gambit Declined: Lasker Defense, Russian Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 h6 Bh4 Ne4 Bxe7 Qxe7 Qc2 Nf6 Bd3 dxc4 Bxc4 c5 O-O Nc6 Rfd1 Bd7 +D56 Queen's Gambit Declined: Lasker Defense, Teichmann Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 h6 Bh4 O-O e3 Ne4 Bxe7 Qxe7 Qc2 +D57 Queen's Gambit Declined: Lasker Defense, Bernstein Variation d4 Nf6 c4 e6 Nc3 d5 Bg5 Be7 e3 h6 Bh4 O-O Nf3 Ne4 Bxe7 Qxe7 cxd5 Nxc3 bxc3 exd5 Qb3 Qd6 +D57 Queen's Gambit Declined: Lasker Defense, Bernstein Variation, Mar del Plata Gambit d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 h6 Bh4 Ne4 Bxe7 Qxe7 cxd5 Nxc3 bxc3 exd5 Qb3 Rd8 c4 Be6 +D57 Queen's Gambit Declined: Lasker Defense, Main Line d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O e3 Ne4 Bxe7 Qxe7 cxd5 Nxc3 bxc3 +D58 Queen's Gambit Declined: Tartakower Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 h6 Bh4 O-O e3 b6 +D58 Queen's Gambit Declined: Tartakower Defense, Exchange Variation d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O e3 b6 cxd5 exd5 +D59 Queen's Gambit Declined: Tartakower Defense d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O e3 b6 cxd5 Nxd5 Bxe7 Qxe7 Nxd5 exd5 Rc1 Be6 +D59 Queen's Gambit Declined: Tartakower Defense, Makogonov Exchange Variation d4 d5 c4 e6 Nc3 Be7 Nf3 Nf6 Bg5 h6 Bh4 O-O e3 b6 cxd5 Nxd5 +D60 Queen's Gambit Declined: Orthodox Defense d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 +D60 Queen's Gambit Declined: Orthodox Defense, Botvinnik Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Bd3 +D60 Queen's Gambit Declined: Orthodox Defense, Botvinnik Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Bd3 c6 +D60 Queen's Gambit Declined: Orthodox Defense, Rauzer Variation d4 d5 Nf3 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Qb3 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 c5 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 c6 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 c6 a3 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 a6 cxd5 exd5 Bd3 Re8 +D61 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Qc2 c6 Rd1 a6 +D62 Queen's Gambit Declined: Orthodox Defense, Rubinstein Variation, Flohr Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Qc2 c5 cxd5 +D63 Queen's Gambit Declined: Orthodox Defense, Capablanca Variation Nf3 d5 d4 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 b6 cxd5 exd5 Bb5 +D63 Queen's Gambit Declined: Orthodox Defense, Henneberger Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 a6 +D63 Queen's Gambit Declined: Orthodox Defense, Henneberger Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 a6 c5 +D63 Queen's Gambit Declined: Orthodox Defense, Henneberger Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 a6 c5 c6 +D63 Queen's Gambit Declined: Orthodox Defense, Henneberger Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 a6 c5 c6 Bd3 +D63 Queen's Gambit Declined: Orthodox Defense, Main Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 +D63 Queen's Gambit Declined: Orthodox Defense, Main Line d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 +D63 Queen's Gambit Declined: Orthodox Defense, Main Line d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 Nbd7 Nf3 O-O Rc1 h6 Bh4 c5 +D63 Queen's Gambit Declined: Orthodox Defense, Pillsbury Variation d4 Nf6 c4 e6 Nc3 d5 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 b6 cxd5 exd5 Bd3 +D63 Queen's Gambit Declined: Orthodox Defense, Swiss, Carlsbad Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 a6 cxd5 +D64 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack d4 Nf6 c4 e6 Nc3 d5 Nf3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 a3 a6 Qc2 +D64 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Qc2 +D64 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Qc2 a6 +D64 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack Nf3 d5 d4 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Qc2 Ne4 +D65 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack d4 d5 Nf3 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Qc2 a6 cxd5 +D65 Queen's Gambit Declined: Orthodox Defense, Rubinstein Attack d4 d5 Nf3 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Qc2 a6 cxd5 exd5 Bd3 +D66 Queen's Gambit Declined: Orthodox Defense, Bd3 Line d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 +D66 Queen's Gambit Declined: Orthodox Defense, Bd3 Line d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 h6 Bh4 +D66 Queen's Gambit Declined: Orthodox Defense, Fianchetto Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 c6 Nf3 Be7 e3 Nbd7 Rc1 O-O Bd3 dxc4 Bxc4 b5 +D67 Queen's Gambit Declined: Orthodox Defense, Alekhine Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 Ne4 +D67 Queen's Gambit Declined: Orthodox Defense, Bd3 Line d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 +D67 Queen's Gambit Declined: Orthodox Defense, Capablanca System d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 +D67 Queen's Gambit Declined: Orthodox Defense, Janowski Variation d4 d5 Nf3 Nf6 c4 e6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 h4 +D67 Queen's Gambit Declined: Orthodox Defense, Main Line d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 O-O +D68 Queen's Gambit Declined: Orthodox Defense, Classical Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 O-O Nxc3 Rxc3 e5 +D68 Queen's Gambit Declined: Orthodox Defense, Classical Variation d4 d5 c4 e6 Nf3 Nf6 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 O-O Nxc3 Rxc3 e5 Qb1 +D68 Queen's Gambit Declined: Orthodox Defense, Classical Variation d4 Nf6 c4 e6 Nf3 d5 Nc3 Be7 Bg5 O-O e3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 O-O Nxc3 Rxc3 e5 Qc2 +D69 Queen's Gambit Declined: Orthodox Defense, Classical Variation d4 d5 c4 e6 Nc3 Nf6 Bg5 Be7 e3 O-O Nf3 Nbd7 Rc1 c6 Bd3 dxc4 Bxc4 Nd5 Bxe7 Qxe7 O-O Nxc3 Rxc3 e5 dxe5 Nxe5 Nxe5 Qxe5 +D70 Neo-Grünfeld Defense: Goglidze Attack d4 Nf6 c4 g6 f3 d5 +D70 Neo-Grünfeld Defense: with Nf3 d4 Nf6 c4 g6 Nf3 d5 +D70 Neo-Grünfeld Defense: with g3 d4 Nf6 c4 g6 g3 d5 +D71 Neo-Grünfeld Defense: Exchange Variation d4 Nf6 c4 g6 g3 Bg7 Bg2 d5 cxd5 Nxd5 +D71 Neo-Grünfeld Defense: Exchange Variation c4 Nf6 g3 g6 Bg2 Bg7 d4 d5 cxd5 Nxd5 Nf3 +D72 Neo-Grünfeld Defense: with g3 d4 Nf6 c4 g6 g3 d5 Bg2 Bg7 cxd5 Nxd5 e4 Nb6 Ne2 +D73 Neo-Grünfeld Defense: with g3 d4 Nf6 c4 g6 g3 d5 Bg2 Bg7 Nf3 +D74 Neo-Grünfeld Defense: Delayed Exchange Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d5 cxd5 Nxd5 O-O +D75 Neo-Grünfeld Defense: Delayed Exchange Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 O-O g3 d5 cxd5 Nxd5 Bg2 c5 O-O +D75 Neo-Grünfeld Defense: Delayed Exchange Variation d4 Nf6 Nf3 g6 c4 Bg7 g3 O-O Bg2 d5 cxd5 Nxd5 O-O c5 dxc5 +D76 Neo-Grünfeld Defense: Delayed Exchange Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d5 cxd5 Nxd5 O-O Nb6 +D77 Neo-Grünfeld Defense: Classical Variation d4 Nf6 Nf3 g6 g3 Bg7 Bg2 O-O O-O d5 c4 +D77 Neo-Grünfeld Defense: Classical Variation, Modern Defense d4 Nf6 Nf3 g6 g3 Bg7 Bg2 O-O O-O d5 c4 dxc4 +D77 Neo-Grünfeld Defense: Classical Variation, Polgar Variation d4 Nf6 Nf3 g6 g3 Bg7 Bg2 O-O O-O d5 c4 Nc6 +D78 Neo-Grünfeld Defense: Classical Variation, Original Defense d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 c6 O-O d5 +D79 Neo-Grünfeld Defense: Ultra-Delayed Exchange Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 c6 O-O d5 cxd5 cxd5 +D80 Grünfeld Defense d4 Nf6 c4 g6 Nc3 d5 +D80 Grünfeld Defense: Gibbon Gambit d4 Nf6 c4 g6 Nc3 d5 g4 +D80 Grünfeld Defense: Lundin Variation d4 Nf6 c4 g6 Nc3 d5 Bg5 Ne4 Nxe4 dxe4 Qd2 c5 +D80 Grünfeld Defense: Lutikov Variation d4 Nf6 c4 g6 Nc3 d5 f3 +D80 Grünfeld Defense: Lutikov Variation, Murrey Attack d4 Nf6 c4 g6 Nc3 d5 f3 c5 cxd5 Nxd5 Na4 +D80 Grünfeld Defense: Stockholm Variation d4 Nf6 c4 g6 Nc3 d5 Bg5 +D80 Grünfeld Defense: Zaitsev Gambit d4 Nf6 c4 g6 Nc3 d5 h4 +D81 Grünfeld Defense: Russian Variation, Accelerated Variation d4 Nf6 c4 g6 Nc3 d5 Qb3 +D82 Grünfeld Defense: Brinckmann Attack d4 Nf6 c4 g6 Nc3 d5 Bf4 +D83 Grünfeld Defense: Brinckmann Attack, Grünfeld Gambit d4 Nf6 c4 g6 Nc3 d5 Bf4 Bg7 e3 O-O +D83 Grünfeld Defense: Brinckmann Attack, Grünfeld Gambit, Botvinnik Variation d4 Nf6 c4 g6 Nc3 d5 Bf4 Bg7 e3 O-O Rc1 c5 dxc5 Be6 +D83 Grünfeld Defense: Brinckmann Attack, Grünfeld Gambit, Capablanca Variation d4 Nf6 c4 g6 Nc3 d5 Bf4 Bg7 e3 O-O Rc1 +D83 Grünfeld Defense: Brinckmann Attack, Reshevsky Gambit d4 Nf6 c4 g6 Nc3 d5 Bf4 Bg7 Rc1 O-O e3 c5 dxc5 Qa5 +D84 Grünfeld Defense: Brinckmann Attack, Grünfeld Gambit Accepted d4 Nf6 c4 g6 Nc3 d5 Bf4 Bg7 e3 O-O cxd5 Nxd5 Nxd5 Qxd5 Bxc7 +D85 Grünfeld Defense: Exchange Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 +D85 Grünfeld Defense: Exchange Variation, Modern Exchange Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Nf3 +D85 Grünfeld Defense: Exchange Variation, Modern Exchange Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Nf3 c5 +D85 Grünfeld Defense: Exchange Variation, Modern Exchange Variation d4 Nf6 Nf3 g6 c4 Bg7 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 c5 Rb1 +D85 Grünfeld Defense: Exchange Variation, Modern Exchange Variation, Kramnik's Line d4 Nf6 Nf3 g6 c4 Bg7 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 c5 h3 +D85 Grünfeld Defense: Exchange Variation, Modern Exchange Variation, Pawn Grab Line d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Nf3 c5 Rb1 O-O Be2 Nc6 d5 Bxc3 +D85 Grünfeld Defense: Exchange Variation, Nadanian Attack d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 Na4 +D86 Grünfeld Defense: Exchange Variation, Classical Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 +D86 Grünfeld Defense: Exchange Variation, Larsen Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 O-O Ne2 Qd7 +D86 Grünfeld Defense: Exchange Variation, Larsen Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 O-O Ne2 Qd7 O-O b6 +D86 Grünfeld Defense: Exchange Variation, Simagin's Improved Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 O-O Ne2 Nc6 +D86 Grünfeld Defense: Exchange Variation, Simagin's Lesser Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 O-O Ne2 b6 +D87 Grünfeld Defense: Exchange Variation, Seville Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 c5 Ne2 Nc6 Be3 O-O O-O Bg4 f3 Na5 Bxf7 +D87 Grünfeld Defense: Exchange Variation, Spassky Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 c5 Ne2 O-O +D88 Grünfeld Defense: Exchange Variation, Spassky Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 c5 Ne2 Nc6 Be3 O-O O-O cxd4 cxd4 +D89 Grünfeld Defense: Exchange Variation, Sokolsky Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 c5 Ne2 O-O O-O Nc6 Be3 Bg4 f3 Na5 Bd3 cxd4 cxd4 Be6 d5 +D89 Grünfeld Defense: Exchange Variation, Spassky Variation d4 Nf6 c4 g6 Nc3 d5 cxd5 Nxd5 e4 Nxc3 bxc3 Bg7 Bc4 c5 Ne2 Nc6 Be3 O-O O-O Bg4 f3 Na5 Bd3 cxd4 cxd4 Be6 +D90 Grünfeld Defense: Flohr Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qa4 +D90 Grünfeld Defense: Three Knights Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 +D90 Grünfeld Defense: Three Knights Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 +D91 Grünfeld Defense: Three Knights Variation, Petrosian System d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Bg5 +D92 Grünfeld Defense: Three Knights Variation, Hungarian Attack d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Bf4 +D93 Grünfeld Defense: Three Knights Variation, Hungarian Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Bf4 O-O e3 +D94 Grünfeld Defense: Flohr Defense d4 d5 c4 c6 Nc3 Nf6 e3 g6 Nf3 Bg7 Bd3 O-O O-O Bf5 +D94 Grünfeld Defense: Makogonov Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 O-O b4 +D94 Grünfeld Defense: Opocensky Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 O-O Bd2 +D94 Grünfeld Defense: Smyslov Defense d4 d5 c4 c6 Nc3 Nf6 e3 g6 Nf3 Bg7 Bd3 O-O O-O Bg4 +D94 Grünfeld Defense: Three Knights Variation, Burille Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 +D94 Grünfeld Defense: Three Knights Variation, Paris Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 O-O Bd3 +D95 Grünfeld Defense: Botvinnik Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 O-O Qb3 e6 +D95 Grünfeld Defense: Pachman Variation d4 Nf6 c4 g6 Nc3 d5 e3 Bg7 Qb3 dxc4 Bxc4 O-O Nf3 Nbd7 Ng5 +D95 Grünfeld Defense: Three Knights Variation, Vienna Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 e3 O-O Qb3 +D96 Grünfeld Defense: Russian Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 +D97 Grünfeld Defense: Russian Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 +D97 Grünfeld Defense: Russian Variation, Byrne Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Nc6 +D97 Grünfeld Defense: Russian Variation, Hungarian Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 a6 +D97 Grünfeld Defense: Russian Variation, Levenfish Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 b6 +D97 Grünfeld Defense: Russian Variation, Prins Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Na6 +D97 Grünfeld Defense: Russian Variation, Szabo Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 c6 +D98 Grünfeld Defense: Russian Variation, Keres Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Bg4 Be3 Nfd7 Be2 Nb6 Qd3 Nc6 O-O-O +D98 Grünfeld Defense: Russian Variation, Smyslov Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Bg4 +D99 Grünfeld Defense: Russian Variation, Smyslov Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Bg4 Be3 Nfd7 Qb3 +D99 Grünfeld Defense: Russian Variation, Yugoslav Variation d4 Nf6 c4 g6 Nc3 d5 Nf3 Bg7 Qb3 dxc4 Qxc4 O-O e4 Bg4 Be3 Nfd7 Qb3 c5 +E00 Catalan Opening d4 Nf6 c4 e6 g3 +E00 Catalan Opening d4 Nf6 c4 e6 g3 d5 +E00 Catalan Opening: Hungarian Gambit d4 Nf6 c4 e6 g3 e5 +E00 Indian Defense d4 Nf6 c4 e6 Qb3 +E00 Indian Defense: Devin Gambit d4 Nf6 c4 e6 g4 +E00 Indian Defense: Seirawan Attack d4 Nf6 c4 e6 Bg5 +E01 Catalan Opening: Open Defense d4 Nf6 c4 e6 g3 d5 Bg2 +E01 Catalan Opening: Tarrasch Defense d4 Nf6 c4 e6 g3 d5 Bg2 c5 Nf3 Nc6 +E02 Catalan Opening: Open Defense d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 +E03 Catalan Opening: Open Defense d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Qa4 Nbd7 Qxc4 +E03 Catalan Opening: Open Defense, Alekhine Variation d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Qa4 Nbd7 Qxc4 a6 Qc2 +E04 Catalan Opening: Open Defense d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Nf3 +E04 Catalan Opening: Open Defense d4 Nf6 c4 e6 Nf3 d5 g3 c6 Bg2 dxc4 +E04 Catalan Opening: Open Defense, Modern Sharp Variation d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Nf3 Nc6 Qa4 Bb4 +E05 Catalan Opening: Open Defense, Classical Line d4 Nf6 c4 e6 g3 d5 Bg2 dxc4 Nf3 Be7 +E05 Catalan Opening: Open Defense, Classical Line d4 Nf6 c4 e6 Nf3 d5 g3 Be7 Bg2 O-O O-O dxc4 +E06 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 +E06 Catalan Opening: Closed c4 e6 Nf3 d5 g3 Nf6 Bg2 Be7 d4 O-O O-O c6 +E06 Catalan Opening: Closed d4 Nf6 c4 e6 Nf3 d5 g3 Bb4 Bd2 Be7 Bg2 O-O O-O c6 Bf4 b6 +E06 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O c6 Qc2 b6 Nbd2 Bb7 e4 Na6 +E07 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 +E07 Catalan Opening: Closed, Botvinnik Variation d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Nc3 c6 Qd3 +E08 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Qc2 +E08 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Qc2 c6 b3 +E08 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Qc2 c6 b3 b6 +E08 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O c6 Qc2 b6 Rd1 Nbd7 Bf4 +E08 Catalan Opening: Closed d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Qc2 c6 Bf4 b6 Nbd2 Bb7 e4 +E08 Catalan Opening: Closed, Spassky Gambit d4 Nf6 c4 e6 g3 Be7 Bg2 d5 Nf3 O-O O-O Nbd7 Qc2 c6 b3 b6 Rd1 Bb7 Nc3 b5 +E08 Catalan Opening: Closed, Zagoryansky Variation d4 e6 c4 Nf6 Nf3 d5 g3 Be7 Bg2 O-O O-O Nbd7 Qc2 c6 Rd1 b6 a4 +E09 Catalan Opening: Closed Variation, Rabinovich Variation d4 d5 c4 c6 Nf3 Nf6 Qc2 e6 Nbd2 Be7 g3 Nbd7 Bg2 O-O O-O b5 +E09 Catalan Opening: Closed Variation, Traditional Variation d4 Nf6 c4 e6 Nf3 d5 g3 Be7 Bg2 O-O O-O Nbd7 Qc2 c6 Nbd2 b6 +E09 Catalan Opening: Closed, Main Line d4 Nf6 c4 e6 Nf3 d5 g3 Be7 Bg2 O-O O-O Nbd7 Qc2 c6 Nbd2 +E09 Catalan Opening: Closed, Main Line d4 Nf6 c4 e6 Nf3 d5 g3 Be7 Bg2 O-O O-O c6 Qc2 b6 Nbd2 Bb7 e4 Nbd7 +E09 Catalan Opening: Closed, Main Line d4 Nf6 c4 e6 Nf3 d5 g3 Be7 Bg2 O-O O-O Nbd7 Qc2 c6 Bf4 b6 Nbd2 Bb7 e4 dxe4 Nxe4 Nxe4 Qxe4 +E09 Catalan Opening: Closed, Sokolsky Variation d4 Nf6 c4 e6 g3 d5 Bg2 Be7 Nf3 O-O O-O Nbd7 Qc2 c6 Nbd2 b6 b3 a5 Bb2 Ba6 +E10 Blumenfeld Countergambit d4 Nf6 c4 e6 Nf3 c5 d5 b5 +E10 Blumenfeld Countergambit Accepted d4 Nf6 c4 e6 Nf3 c5 d5 b5 dxe6 fxe6 cxb5 d5 +E10 Blumenfeld Countergambit: Duz-Khotimirsky Variation d4 Nf6 c4 e6 Nf3 c5 d5 b5 Bg5 +E10 Blumenfeld Countergambit: Spielmann Variation d4 Nf6 c4 e6 Nf3 c5 d5 b5 Bg5 exd5 cxd5 h6 +E10 Indian Defense: Anti-Nimzo-Indian d4 Nf6 c4 e6 Nf3 +E10 Indian Defense: Dzindzi-Indian Defense d4 Nf6 c4 e6 Nf3 a6 +E10 Indian Defense: Döry Indian d4 Nf6 c4 e6 Nf3 Ne4 +E11 Bogo-Indian Defense d4 Nf6 c4 e6 Nf3 Bb4 +E11 Bogo-Indian Defense: Exchange Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 Bxd2 +E11 Bogo-Indian Defense: Grünfeld Variation d4 Nf6 c4 e6 Nf3 Bb4 Nbd2 +E11 Bogo-Indian Defense: Haiti Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 Nc6 +E11 Bogo-Indian Defense: Monticelli Trap d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Bd2 Bxd2 Qxd2 O-O Nc3 Ne4 Qc2 Nxc3 Ng5 +E11 Bogo-Indian Defense: New England Variation d4 Nf6 c4 e6 Nf3 Bb4 Nfd2 +E11 Bogo-Indian Defense: Nimzowitsch Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 Qe7 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 Be7 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 O-O +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 O-O O-O +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 O-O Qc2 c6 O-O +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 Nbd7 O-O O-O Qc2 c6 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 Nbd7 O-O O-O Qc2 c6 b3 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 Nbd7 O-O O-O Qc2 c6 Rc1 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 Nbd7 O-O O-O Qc2 c6 Rd1 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 g3 Bb4 Bd2 Be7 Bg2 d5 Nf3 Nbd7 O-O O-O Qc2 c6 Rd1 h6 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 Nf3 d5 g3 Bb4 Bd2 Be7 Bg2 O-O O-O c6 Qc2 Nbd7 Bf4 b6 Nbd2 +E11 Bogo-Indian Defense: Retreat Variation d4 Nf6 c4 e6 Nf3 d5 g3 Bb4 Bd2 Be7 Bg2 O-O O-O c6 Qc2 Nbd7 Bf4 b6 Nbd2 Ba6 +E11 Bogo-Indian Defense: Vitolins Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 c5 +E11 Bogo-Indian Defense: Wade-Smyslov Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 a5 +E12 Queen's Indian Defense d4 Nf6 c4 e6 Nf3 b6 +E12 Queen's Indian Defense: Kasparov Variation d4 Nf6 c4 e6 Nf3 b6 Nc3 +E12 Queen's Indian Defense: Kasparov Variation, Botvinnik Attack d4 Nf6 c4 e6 Nf3 b6 Nc3 Bb7 Bg5 h6 Bh4 g5 Bg3 Nh5 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Andersson Variation d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 Ne4 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Classical Variation d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 exd5 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Hedgehog Variation d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 g6 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Kasparov Attack d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 Nxd5 Qc2 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Main Line d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Marco Defense d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 Be7 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Modern Variation d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 Nxd5 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Petrosian Attack d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 Nxd5 e3 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Polovodin Gambit d4 Nf6 c4 e6 Nf3 b6 Nc3 Bb7 a3 d5 cxd5 Nxd5 e4 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Rashkovsky Attack d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 Nxd5 Qa4 +E12 Queen's Indian Defense: Kasparov-Petrosian Variation, Romanishin Attack d4 Nf6 c4 e6 Nf3 b6 a3 Bb7 Nc3 d5 cxd5 Nxd5 Bd2 +E12 Queen's Indian Defense: Miles Variation d4 Nf6 c4 e6 Nf3 b6 Bf4 +E12 Queen's Indian Defense: Petrosian Variation d4 Nf6 c4 e6 Nf3 b6 a3 +E12 Queen's Indian Defense: Petrosian Variation, Farago Defense d4 Nf6 c4 e6 Nf3 b6 a3 Ba6 Qc2 Bb7 +E13 Queen's Indian Defense: Kasparov Variation d4 Nf6 c4 e6 Nf3 b6 Nc3 Bb4 Bg5 h6 Bh4 Bb7 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 O-O c5 c4 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 O-O c5 c4 Be7 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 O-O c5 c4 g6 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 O-O Be7 c4 O-O Nc3 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 e6 e3 b6 Bd3 Bb7 Nbd2 c5 b3 Be7 Bb2 d6 O-O O-O c4 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 b6 Nc3 Bb7 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 b6 Nc3 Bd6 Bd3 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 b6 Nc3 Bd6 Bd3 O-O O-O Bb7 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 Be7 Nc3 O-O b3 b6 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 Be7 b3 O-O Bd3 b6 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 d5 e3 Be7 b3 O-O Bb2 b6 Nbd2 Bb7 Bd3 +E14 Queen's Indian Defense, with e3 d4 Nf6 c4 e6 Nf3 Bb4 Nbd2 b6 a3 Bxd2 Qxd2 Bb7 e3 +E14 Queen's Indian Defense, with e3 Nf3 d5 e3 Nf6 c4 e6 Nc3 Be7 d4 O-O b3 b6 cxd5 exd5 Bb2 Bb7 Bd3 +E14 Queen's Indian Defense, with e3 d4 Nf6 Nf3 d5 c4 e6 e3 b6 b3 Bb7 Bd3 Nbd7 O-O Bd6 Bb2 O-O Nbd2 +E14 Queen's Indian Defense, with e3, Bb4+ Line d4 Nf6 c4 e6 Nf3 Bb4 Nbd2 b6 e3 Bb7 +E14 Queen's Indian Defense: Averbakh Variation d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 Bd3 c5 O-O Be7 b3 O-O Bb2 cxd4 Nxd4 +E14 Queen's Indian Defense: Spassky System d4 Nf6 c4 e6 Nf3 b6 e3 +E14 Queen's Indian Defense: Spassky System d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 +E14 Queen's Indian Defense: Spassky System d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 Bd3 +E14 Queen's Indian Defense: Spassky System d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 Bd3 d5 +E14 Queen's Indian Defense: Spassky System3 d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 Bd3 c5 +E14 Queen's Indian Defense: Spassky System3 d4 Nf6 c4 e6 Nf3 b6 e3 Bb7 Bd3 c5 Nc3 cxd4 exd4 Be7 O-O d5 cxd5 Nxd5 +E15 Queen's Indian Defense: Buerger Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 c5 d5 exd5 Ng5 +E15 Queen's Indian Defense: Fianchetto Variation d4 Nf6 c4 e6 Nf3 b6 g3 +E15 Queen's Indian Defense: Fianchetto Variation, Check Variation d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 b3 Bb4 +E15 Queen's Indian Defense: Fianchetto Variation, Check Variation, Intermezzo Line d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 b3 Bb4 Bd2 Be7 +E15 Queen's Indian Defense: Fianchetto Variation, Check Variation, Modern Line d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 b3 Bb4 Bd2 Qe7 +E15 Queen's Indian Defense: Fianchetto Variation, Nimzowitsch Variation d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 +E15 Queen's Indian Defense: Fianchetto Variation, Nimzowitsch Variation, Nimzowitsch Attack d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 Qa4 +E15 Queen's Indian Defense: Fianchetto Variation, Nimzowitsch Variation, Quiet Line d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 b3 +E15 Queen's Indian Defense: Fianchetto Variation, Nimzowitsch Variation, Timman's Line d4 Nf6 c4 e6 Nf3 b6 g3 Ba6 Qb3 +E15 Queen's Indian Defense: Fianchetto Variation, Rubinstein Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 c5 d5 exd5 Nh4 +E15 Queen's Indian Defense: Fianchetto Variation, Sämisch Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 c5 +E15 Queen's Indian Defense: Fianchetto Variation, Traditional Line d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 +E16 Queen's Indian Defense: Capablanca Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 +E16 Queen's Indian Defense: Capablanca Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Nbd2 O-O O-O +E16 Queen's Indian Defense: Capablanca Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Nbd2 O-O O-O d5 +E16 Queen's Indian Defense: Capablanca Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Nbd2 O-O O-O a5 +E16 Queen's Indian Defense: Riumin Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Bd2 Be7 +E16 Queen's Indian Defense: Riumin Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Bd2 Be7 O-O O-O Nc3 +E16 Queen's Indian Defense: Riumin Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Bb4 Bd2 Be7 O-O O-O Nc3 d5 +E16 Queen's Indian Defense: Yates Variation d4 Nf6 c4 e6 Nf3 Bb4 Bd2 a5 g3 b6 Bg2 Bb7 +E17 Queen's Indian Defense: Anti-Queen's Indian System d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 Nc3 +E17 Queen's Indian Defense: Classical Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O +E17 Queen's Indian Defense: Classical Variation, Polugaevsky Gambit d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O d5 exd5 Nh4 +E17 Queen's Indian Defense: Classical Variation, Taimanov Gambit d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O d5 exd5 Nd4 +E17 Queen's Indian Defense: Euwe Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O b3 +E17 Queen's Indian Defense: Fianchetto Variation, Kramnik Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O Re1 +E17 Queen's Indian Defense: Opocensky Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 Nc3 Ne4 Bd2 +E17 Queen's Indian Defense: Traditional Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 +E18 Queen's Indian Defense: Classical Variation, Tiviakov Defense d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O Nc3 Na6 +E18 Queen's Indian Defense: Classical Variation, Traditional Variation d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O Nc3 +E18 Queen's Indian Defense: Classical Variation, Traditional Variation, Nimzowitsch Line d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O Nc3 d5 +E19 Queen's Indian Defense: Classical Variation, Traditional Variation, Main Line d4 Nf6 c4 e6 Nf3 b6 g3 Bb7 Bg2 Be7 O-O O-O Nc3 Ne4 Qc2 Nxc3 Qxc3 +E20 Nimzo-Indian Defense d4 Nf6 c4 e6 Nc3 Bb4 +E20 Nimzo-Indian Defense: Dilworth Gambit d4 Nf6 c4 e6 Nc3 Bb4 e4 +E20 Nimzo-Indian Defense: Kmoch Variation d4 Nf6 c4 e6 Nc3 Bb4 f3 +E20 Nimzo-Indian Defense: Mikenas Attack d4 Nf6 c4 e6 Nc3 Bb4 Qd3 +E20 Nimzo-Indian Defense: Romanishin Variation d4 Nf6 c4 e6 Nc3 Bb4 g3 +E20 Nimzo-Indian Defense: Romanishin Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 c5 g3 O-O Bg2 +E20 Nimzo-Indian Defense: Romanishin Variation, English Hybrid d4 Nf6 c4 e6 Nc3 Bb4 Nf3 c5 g3 cxd4 Nxd4 O-O Bg2 d5 cxd5 Nxd5 +E21 Nimzo-Indian Defense: Three Knights Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 +E21 Nimzo-Indian Defense: Three Knights Variation, Euwe Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 c5 d5 Ne4 +E21 Nimzo-Indian Defense: Three Knights Variation, Korchnoi Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 c5 d5 +E21 Nimzo-Indian Defense: Three Knights Variation, Shocron Gambit d4 Nf6 c4 e6 Nf3 Bb4 Nc3 c5 d5 b5 +E22 Nimzo-Indian Defense: Spielmann Variation d4 Nf6 c4 e6 Nc3 Bb4 Qb3 +E23 Nimzo-Indian Defense: Spielmann Variation, Carlsbad Variation d4 Nf6 c4 e6 Nc3 Bb4 Qb3 c5 dxc5 Nc6 Nf3 Ne4 Bd2 Nxd2 +E23 Nimzo-Indian Defense: Spielmann Variation, Romanovsky Gambit d4 Nf6 c4 e6 Nc3 Bb4 Qb3 c5 dxc5 Nc6 +E23 Nimzo-Indian Defense: Spielmann Variation, Stahlberg Variation d4 Nf6 c4 e6 Nc3 Bb4 Qb3 c5 dxc5 Nc6 Nf3 Ne4 Bd2 Nxc5 +E23 Nimzo-Indian Defense: Spielmann Variation, Stahlberg Variation d4 Nf6 c4 e6 Nc3 Bb4 Qb3 c5 dxc5 Nc6 Nf3 Ne4 Bd2 Nxc5 Qc2 f5 g3 +E24 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 a3 +E24 Nimzo-Indian Defense: Sämisch Variation, Botvinnik Variation d4 Nf6 c4 e6 Nc3 Bb4 f3 d5 a3 Bxc3 bxc3 c5 e3 O-O cxd5 Nxd5 +E25 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 f3 d5 a3 Bxc3 bxc3 c5 cxd5 +E25 Nimzo-Indian Defense: Sämisch Variation, Keres Variation d4 Nf6 c4 e6 Nc3 Bb4 f3 d5 a3 Bxc3 bxc3 c5 cxd5 Nxd5 dxc5 +E25 Nimzo-Indian Defense: Sämisch Variation, Romanovsky Variation d4 Nf6 c4 e6 Nc3 Bb4 f3 d5 a3 Bxc3 bxc3 c5 cxd5 Nxd5 dxc5 f5 +E26 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 a3 Bxc3 bxc3 c5 e3 +E26 Nimzo-Indian Defense: Sämisch Variation, O'Kelly Variation d4 Nf6 c4 e6 Nc3 Bb4 a3 Bxc3 bxc3 c5 e3 b6 +E27 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 a3 Bxc3 bxc3 O-O +E28 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O a3 Bxc3 bxc3 +E29 Nimzo-Indian Defense: Sämisch Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Bd3 Nc6 a3 Bxc3 bxc3 O-O +E29 Nimzo-Indian Defense: Sämisch Variation, Capablanca Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Bd3 Nc6 a3 Bxc3 bxc3 O-O Ne2 b6 e4 Ne8 +E30 Nimzo-Indian Defense: Leningrad Variation d4 Nf6 c4 e6 Nc3 Bb4 Bg5 +E30 Nimzo-Indian Defense: Leningrad Variation, Averbakh Gambit d4 Nf6 c4 e6 Nc3 Bb4 Bg5 h6 Bh4 c5 d5 b5 +E31 Nimzo-Indian Defense: Leningrad Variation, Benoni Defense d4 Nf6 c4 e6 Nc3 Bb4 Bg5 h6 Bh4 c5 d5 d6 +E32 Nimzo-Indian Defense: Classical Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 +E32 Nimzo-Indian Defense: Classical Variation, Keres Defense d4 Nf6 c4 e6 Nc3 Bb4 Qc2 O-O a3 Bxc3 Qxc3 b6 +E32 Nimzo-Indian Defense: Classical Variation, Vitolins-Adorjan Gambit d4 Nf6 c4 e6 Nc3 Bb4 Qc2 O-O a3 Bxc3 Qxc3 b5 +E33 Nimzo-Indian Defense: Classical Variation, Milner-Barry Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 Nc6 Nf3 d6 +E33 Nimzo-Indian Defense: Classical Variation, Zurich Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 Nc6 +E34 Nimzo-Indian Defense: Classical Variation, Belyavsky Gambit d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 cxd5 Qxd5 Nf3 Qf5 Qd1 e5 +E34 Nimzo-Indian Defense: Classical Variation, Noa Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 +E35 Nimzo-Indian Defense: Classical Variation, Noa Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 cxd5 exd5 +E36 Nimzo-Indian Defense: Classical Variation, Noa Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 +E36 Nimzo-Indian Defense: Classical Variation, Noa Variation, Botvinnik Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 Nc6 +E36 Nimzo-Indian Defense: Classical Variation, Noa Variation, Main Line d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 Ne4 +E36 Nimzo-Indian Defense: Classical Variation, Romanishin Gambit d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 c5 +E37 Nimzo-Indian Defense: Classical Variation, Modern Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 Ne4 Qc2 c5 +E37 Nimzo-Indian Defense: Classical Variation, Noa Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 Ne4 Qc2 +E37 Nimzo-Indian Defense: Classical Variation, Noa Variation, San Remo Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 d5 a3 Bxc3 Qxc3 Ne4 Qc2 Nc6 e3 e5 +E38 Nimzo-Indian Defense: Classical Variation, Berlin Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 c5 +E38 Nimzo-Indian Defense: Classical Variation, Berlin Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 O-O e3 d5 Nf3 c5 +E38 Nimzo-Indian Defense: Classical Variation, Berlin Variation, Steiner Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 c5 dxc5 Bxc3 +E39 Nimzo-Indian Defense: Classical Variation, Berlin Variation, Macieja System d4 Nf6 c4 e6 Nc3 Bb4 Qc2 c5 dxc5 O-O a3 Bxc5 Nf3 b6 +E39 Nimzo-Indian Defense: Classical Variation, Berlin Variation, Pirc Variation d4 Nf6 c4 e6 Nc3 Bb4 Qc2 c5 dxc5 O-O +E40 Nimzo-Indian Defense: Rubinstein System d4 Nf6 c4 e6 Nc3 Bb4 e3 +E40 Nimzo-Indian Defense: Rubinstein System, Taimanov Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 Nc6 +E41 Nimzo-Indian Defense: Rubinstein System d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 +E41 Nimzo-Indian Defense: Rubinstein System, Hübner Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Bd3 Nc6 Nf3 Bxc3 bxc3 d6 +E41 Nimzo-Indian Defense: Rubinstein System, Hübner Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Bd3 Nc6 Nf3 Bxc3 bxc3 d6 O-O O-O +E42 Nimzo-Indian Defense: Rubinstein System, Rubinstein Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Ne2 +E42 Nimzo-Indian Defense: Rubinstein System, Rubinstein Variation, Main Line d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Ne2 cxd4 exd4 O-O a3 +E42 Nimzo-Indian Defense: Rubinstein System, Rubinstein Variation, Sherbakov Attack d4 Nf6 c4 e6 Nc3 Bb4 e3 c5 Ne2 cxd4 exd4 O-O c5 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 O-O +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 O-O O-O +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 O-O O-O c5 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 O-O O-O c5 Na4 cxd4 a3 Be7 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 Ne4 Qc2 f5 Nf3 b6 Bd3 Bb7 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 c5 Nf3 b6 O-O Bb7 Na4 Qe7 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 Bxc3 bxc3 b6 e3 Bb7 Bd3 O-O O-O +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 b6 e3 Ne4 Qc2 +E43 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 Nf3 b6 e3 Ne4 Qc2 Bb7 Bd3 Bxc3 bxc3 f5 O-O +E43 Nimzo-Indian Defense: St. Petersburg Variation, with Ne4 d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 Ne4 +E44 Nimzo-Indian Defense: St. Petersburg Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Ne2 +E44 Nimzo-Indian Defense: St. Petersburg Variation, American Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Ne2 Ne4 +E44 Nimzo-Indian Defense: St. Petersburg Variation, Romanishin-Psakhis Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Ne2 c5 a3 Ba5 +E45 Nimzo-Indian Defense: St. Petersburg Variation, Fischer Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Ne2 Ba6 +E46 Nimzo-Indian Defense: Normal Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O +E46 Nimzo-Indian Defense: Reshevsky Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Ne2 +E46 Nimzo-Indian Defense: Simagin Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Ne2 d5 a3 Bd6 +E47 Nimzo-Indian Defense: Normal Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 +E48 Nimzo-Indian Defense: Normal Variation, Classical Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 +E48 Nimzo-Indian Defense: Ragozin Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 Nc6 O-O +E49 Nimzo-Indian Defense: Normal Variation, Botvinnik System d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 a3 Bxc3 bxc3 +E50 Nimzo-Indian Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Nf3 +E51 Nimzo-Indian Defense: Normal Variation, Ragozin Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Nf3 d5 +E51 Nimzo-Indian Defense: Normal Variation, Sämisch Deferred d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Nf3 d5 a3 +E51 Nimzo-Indian Defense: Ragozin Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 Nc6 O-O dxc4 +E52 Nimzo-Indian Defense: Normal Variation, Schlechter Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 b6 +E52 Nimzo-Indian Defense: Normal Variation, Schlechter Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 b6 Bd3 Bb7 Nf3 O-O O-O d5 +E53 Nimzo-Indian Defense: Normal Variation, Gligoric System d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 +E53 Nimzo-Indian Defense: Normal Variation, Gligoric System d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O Nbd7 +E53 Nimzo-Indian Defense: Normal Variation, Gligoric System, Keres Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O b6 +E54 Nimzo-Indian Defense: Normal Variation, Gligoric System, Exchange Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O dxc4 Bxc4 +E54 Nimzo-Indian Defense: Normal Variation, Gligoric System, Exchange Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O dxc4 Bxc4 cxd4 exd4 +E54 Nimzo-Indian Defense: Normal Variation, Gligoric System, Smyslov Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O dxc4 Bxc4 Qe7 +E55 Nimzo-Indian Defense: Normal Variation, Gligoric System, Bronstein Variation d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O dxc4 Bxc4 Nbd7 +E56 Nimzo-Indian Defense: Normal Variation, Gligoric System, Bernstein Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O Nc6 +E57 Nimzo-Indian Defense: Normal Variation, Gligoric System, Bernstein Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O Nc6 a3 dxc4 Bxc4 cxd4 +E58 Nimzo-Indian Defense: Normal Variation, Bernstein Defense, Exchange Line d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O Nc6 a3 Bxc3 bxc3 +E59 Nimzo-Indian Defense: Normal Variation, Bernstein Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 Nf3 c5 O-O Nc6 a3 Bxc3 bxc3 dxc4 Bxc4 +E59 Nimzo-Indian Defense: Normal Variation, Bernstein Defense d4 Nf6 c4 e6 Nc3 Bb4 e3 O-O Bd3 d5 a3 Bxc3 bxc3 dxc4 Bxc4 c5 Nf3 Nc6 O-O Qc7 Qc2 +E60 Grünfeld Defense: Counterthrust Variation d4 Nf6 c4 g6 g3 Bg7 Bg2 d5 +E60 Indian Defense: Anti-Grünfeld, Adorjan Gambit d4 Nf6 c4 g6 d5 b5 +E60 Indian Defense: Anti-Grünfeld, Advance Variation d4 Nf6 c4 g6 d5 +E60 Indian Defense: Anti-Grünfeld, Alekhine Variation d4 Nf6 c4 g6 f3 +E60 Indian Defense: Anti-Grünfeld, Alekhine Variation, Leko Gambit d4 Nf6 c4 g6 f3 e5 +E60 Indian Defense: Anti-Grünfeld, Basman-Williams Attack d4 Nf6 c4 g6 h4 +E60 Indian Defense: West Indian Defense d4 Nf6 c4 g6 +E60 King's Indian Defense: Fianchetto Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 +E60 King's Indian Defense: Fianchetto Variation, Immediate Fianchetto d4 Nf6 c4 g6 g3 +E60 King's Indian Defense: Normal Variation, King's Knight Variation d4 Nf6 Nf3 g6 c4 +E60 King's Indian Defense: Santasiere Variation d4 Nf6 c4 g6 Nf3 Bg7 b4 +E60 King's Indian Defense: Semi-Classical Variation, Benoni Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 O-O e3 d6 Be2 c6 +E60 King's Indian Defense: Semi-Classical Variation, Hollywood Variation d4 Nf6 Nf3 g6 c4 Bg7 Nc3 O-O e3 d6 Be2 Nc6 +E60 Queen's Pawn, Mengarini Attack d4 Nf6 c4 g6 Qc2 +E61 King's Indian Defense d4 Nf6 c4 g6 Nc3 +E61 King's Indian Defense: Fianchetto Variation, Benjamin Defense d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 g3 O-O Bg2 c6 O-O Qb6 +E61 King's Indian Defense: Semi-Classical Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 O-O e3 d6 Be2 +E61 King's Indian Defense: Semi-Classical Variation, Exchange Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 O-O e3 d6 Be2 Nbd7 O-O e5 dxe5 dxe5 +E61 King's Indian Defense: Semi-Classical Variation, Queenside Storm Line d4 Nf6 c4 g6 Nc3 Bg7 Nf3 O-O e3 d6 Be2 Nbd7 O-O e5 b4 +E61 King's Indian Defense: Smyslov Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 Bg5 +E62 King's Indian Defense: Fianchetto Variation, Carlsbad Variation d4 Nf6 c4 g6 g3 Bg7 Bg2 O-O Nc3 d6 Nf3 Nc6 +E62 King's Indian Defense: Fianchetto Variation, Delayed Fianchetto d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 g3 +E62 King's Indian Defense: Fianchetto Variation, Kavalek Defense d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O c6 Nc3 Qa5 +E62 King's Indian Defense: Fianchetto Variation, Larsen Defense d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 g3 O-O Bg2 c6 O-O Bf5 +E62 King's Indian Defense: Fianchetto Variation, Lesser Simagin (Spassky) d4 Nf6 c4 g6 g3 Bg7 Bg2 O-O Nc3 d6 Nf3 Nc6 O-O Bf5 +E62 King's Indian Defense: Fianchetto Variation, Simagin Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 g3 O-O Bg2 Nc6 O-O Bg4 +E62 King's Indian Defense: Fianchetto Variation, Uhlmann-Szabo System d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nc6 Nc3 e5 +E63 King's Indian Defense: Fianchetto Variation, Panno Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nc6 Nc3 a6 +E63 King's Indian Defense: Fianchetto Variation, Panno Variation, Blockade Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nc6 Nc3 a6 d5 Na5 Nd2 c5 Qc2 e5 +E63 King's Indian Defense: Fianchetto Variation, Panno Variation, Donner Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nc6 Nc3 a6 d5 Na5 Nd2 c5 Qc2 Rb8 b3 b5 Bb2 bxc4 bxc4 Bh6 +E63 King's Indian Defense: Fianchetto Variation, Panno Variation, Korchnoi Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nc6 Nc3 a6 h3 Rb8 Be3 b5 Nd2 +E64 King's Indian Defense: Fianchetto Variation, Double Fianchetto Attack d4 Nf6 c4 g6 Nf3 Bg7 g3 d6 Bg2 O-O O-O Nbd7 Nc3 e5 b3 +E64 King's Indian Defense: Fianchetto Variation, Hungarian Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 d6 Bg2 O-O O-O Nbd7 Nc3 a6 +E64 King's Indian Defense: Fianchetto Variation, Pterodactyl Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 c5 Bg2 Qa5 +E64 King's Indian Defense: Fianchetto Variation, Yugoslav System d4 Nf6 c4 g6 Nf3 Bg7 g3 d6 Bg2 O-O O-O c5 +E64 King's Indian Defense: Fianchetto Variation, Yugoslav Variation, Rare Line d4 Nf6 c4 g6 g3 Bg7 Bg2 O-O Nc3 d6 Nf3 c5 +E65 King's Indian Defense: Fianchetto Variation, Yugoslav Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O c5 Nc3 +E65 King's Indian Defense: Fianchetto Variation, Yugoslav Variation, Exchange Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O c5 Nc3 Nc6 dxc5 dxc5 +E66 King's Indian Defense: Fianchetto Variation, Yugoslav Variation, Advance Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O c5 Nc3 Nc6 d5 +E67 King's Indian Defense: Fianchetto Variation, Classical Fianchetto d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nbd7 Nc3 e5 +E67 King's Indian Defense: Fianchetto Variation, Debrecen Defense d4 Nf6 c4 g6 g3 Bg7 Bg2 O-O Nc3 d6 Nf3 Nbd7 +E68 King's Indian Defense: Fianchetto Variation, Classical Variation d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nbd7 Nc3 e5 e4 +E68 King's Indian Defense: Fianchetto Variation, Long Variation d4 Nf6 c4 g6 Nc3 Bg7 Nf3 d6 g3 O-O Bg2 Nbd7 O-O e5 e4 Re8 h3 exd4 Nxd4 Nc5 Re1 a5 +E69 King's Indian Defense: Fianchetto Variation, Classical Main Line d4 Nf6 c4 g6 Nf3 Bg7 g3 O-O Bg2 d6 O-O Nbd7 Nc3 e5 e4 c6 h3 +E70 King's Indian Defense: Accelerated Averbakh Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Bg5 +E70 King's Indian Defense: Kramer Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nge2 +E70 King's Indian Defense: Normal Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 +E70 King's Indian Defense: Normal Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 +E71 King's Indian Defense: Karpov System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 h3 O-O Be3 +E71 King's Indian Defense: Makogonov Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 h3 +E72 King's Indian Defense: Normal Variation, Deferred Fianchetto d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 g3 +E72 King's Indian Defense: Pomar System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 g3 O-O Bg2 e5 Nge2 +E73 King's Indian Defense: Averbakh Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 +E73 King's Indian Defense: Averbakh Variation, Flexible Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 h6 +E73 King's Indian Defense: Averbakh Variation, Geller Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 Nbd7 +E73 King's Indian Defense: Averbakh Variation, Modern Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 Na6 +E73 King's Indian Defense: Averbakh Variation, Modern Defense, Burgess Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 Na6 Qd2 c6 +E73 King's Indian Defense: Averbakh Variation, Nc6 Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 Nc6 +E73 King's Indian Defense: Averbakh Variation, Spanish Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 a6 +E73 King's Indian Defense: Normal Variation, Standard Development d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 +E73 King's Indian Defense: Semi-Averbakh System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Be3 +E74 King's Indian Defense: Averbakh Variation, Benoni Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 c5 +E74 King's Indian Defense: Averbakh Variation, Benoni Defense, Advance Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 c5 d5 +E74 King's Indian Defense: Averbakh Variation, Benoni Defense, Exchange Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 c5 dxc5 +E75 King's Indian Defense: Averbakh Variation, Main Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O Bg5 c5 d5 e6 +E76 King's Indian Defense: Four Pawns Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 +E76 King's Indian Defense: Four Pawns Attack, Dynamic Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Nf3 c5 d5 +E76 King's Indian Defense: Four Pawns Attack, Modern Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 Na6 +E77 King's Indian Defense: Four Pawns Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Be2 O-O f4 +E77 King's Indian Defense: Four Pawns Attack, Florentine Gambit d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Nf3 c5 d5 e6 Be2 exd5 e5 +E77 King's Indian Defense: Four Pawns Attack, Normal Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Nf3 c5 d5 e6 Be2 +E77 King's Indian Defense: Six Pawns Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Be2 c5 d5 e6 dxe6 fxe6 g4 Nc6 h4 +E78 King's Indian Defense: Four Pawns Attack, Fluid Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Nf3 c5 Be2 +E79 King's Indian Defense: Four Pawns Attack, Exchange Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f4 O-O Nf3 c5 Be2 cxd4 Nxd4 Nc6 Be3 +E80 King's Indian Defense: Sämisch Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 +E81 King's Indian Defense: Steiner Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 +E81 King's Indian Defense: Steiner Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 c5 d5 h6 Bf4 +E81 King's Indian Defense: Steiner Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 c5 d5 e6 Qd2 exd5 Nxd5 +E81 King's Indian Defense: Steiner Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Bg5 c5 d5 e6 Qd2 h6 Bxh6 +E81 King's Indian Defense: Sämisch Variation, Bobotsov-Korchnoi-Petrosian Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Nge2 +E81 King's Indian Defense: Sämisch Variation, Byrne Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 c6 Bd3 a6 +E81 King's Indian Defense: Sämisch Variation, Normal Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O +E81 King's Indian Defense: Sämisch Variation, Sämisch Gambit d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 c5 +E81 King's Indian Defense: Sämisch Variation, Sämisch Gambit Accepted d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 c5 dxc5 dxc5 Qxd8 Rxd8 Bxc5 +E82 King's Indian Defense: Sämisch Variation, Double Fianchetto d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 b6 +E83 King's Indian Defense: Sämisch Variation, Panno Formation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 Nc6 Nge2 a6 +E83 King's Indian Defense: Sämisch Variation, Ruban Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 Nc6 Nge2 Rb8 +E83 King's Indian Defense: Sämisch Variation, Yates Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 Nc6 +E84 King's Indian Defense: Sämisch Variation, Panno Main Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 Nc6 Nge2 a6 Qd2 Rb8 +E85 King's Indian Defense: Sämisch Variation, Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 +E86 King's Indian Defense: Sämisch Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 Nge2 c6 +E87 King's Indian Defense: Sämisch Variation, Bronstein Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 d5 Nh5 Qd2 Qh4 g3 Nxg3 Qf2 Nxf1 Qxh4 Nxe3 Ke2 +E87 King's Indian Defense: Sämisch Variation, Closed Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 d5 +E87 King's Indian Defense: Sämisch Variation, Orthodox Variation, Bronstein Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 d5 Nh5 Qd2 Qh4 g3 Nxg3 Qf2 Nxf1 Qxh4 Nxe3 Ke2 Nxc4 +E88 King's Indian Defense: Sämisch Variation, Closed Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 d5 c6 +E89 King's Indian Defense: Sämisch Variation, Closed Variation, Main Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 f3 O-O Be3 e5 Nge2 c6 d5 cxd5 +E90 King's Indian Defense: Larsen Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be3 +E90 King's Indian Defense: Normal Variation, Rare Defenses d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 +E90 King's Indian Defense: Zinnowitz Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Bg5 +E91 King's Indian Defense: Kazakh Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 Na6 +E91 King's Indian Defense: Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 +E92 King's Indian Defense: Exchange Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 dxe5 +E92 King's Indian Defense: Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 +E92 King's Indian Defense: Orthodox Variation, Gligoric-Taimanov System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 Be3 +E92 King's Indian Defense: Petrosian Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 d5 +E92 King's Indian Defense: Petrosian Variation, Stein Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 d5 a5 +E93 King's Indian Defense: Petrosian Variation, Keres Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 d5 Nbd7 Bg5 h6 Bh4 g5 Bg3 Nh5 h4 +E93 King's Indian Defense: Petrosian Variation, Normal Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 d5 Nbd7 +E94 King's Indian Defense: Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O +E94 King's Indian Defense: Orthodox Variation, Donner Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O c6 +E94 King's Indian Defense: Orthodox Variation, Glek Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Na6 +E94 King's Indian Defense: Orthodox Variation, Positional Defense d4 Nf6 c4 d6 Nc3 Nbd7 e4 e5 Nf3 g6 Be2 Bg7 O-O O-O +E94 King's Indian Defense: Orthodox Variation, Positional Defense, Closed Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 Nbd7 O-O e5 d5 +E94 King's Indian Defense: Orthodox Variation, Ukrainian Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O a5 +E95 King's Indian Defense: Orthodox Variation d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nbd7 Re1 +E96 King's Indian Defense: Orthodox Variation, Positional Defense, Main Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nbd7 Re1 c6 Bf1 a5 +E97 King's Indian Defense: Orthodox Variation, Aronin-Taimanov Defense d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 +E97 King's Indian Defense: Orthodox Variation, Bayonet Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 b4 +E97 King's Indian Defense: Orthodox Variation, Bayonet Attack, Sokolov's Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 b4 Nh5 Re1 +E97 King's Indian Defense: Orthodox Variation, Bayonet Attack, Yepishin's Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 b4 Nh5 Qc2 +E97 King's Indian Defense: Orthodox Variation, Korchnoi Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Bd2 +E97 King's Indian Defense: Orthodox Variation, Modern System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Nd2 +E98 King's Indian Defense: Orthodox Variation, Classical System d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Ne1 +E98 King's Indian Defense: Orthodox Variation, Classical System, Kozul Gambit d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Ne1 Nd7 Be3 f5 f3 f4 Bf2 g5 Rc1 Ng6 c5 +E98 King's Indian Defense: Orthodox Variation, Classical System, Neo-Classical Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Ne1 Nd7 Be3 +E99 King's Indian Defense: Orthodox Variation, Classical System, Benko Attack d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Ne1 Nd7 f3 f5 g4 +E99 King's Indian Defense: Orthodox Variation, Classical System, Traditional Line d4 Nf6 c4 g6 Nc3 Bg7 e4 d6 Nf3 O-O Be2 e5 O-O Nc6 d5 Ne7 Ne1 Nd7 f3 f5 diff --git a/app/src/main/assets/puzzles.json b/app/src/main/assets/puzzles.json new file mode 100644 index 0000000..cfc65f0 --- /dev/null +++ b/app/src/main/assets/puzzles.json @@ -0,0 +1 @@ +[{"id":1,"theme":"mate_in_1","fen":"2rq1rk1/1p1nbp1p/p1b1p1p1/2Pp4/1P1Q4/P3P3/1BB1NPPP/R4RK1 w - - 2 16","solution":["d4g7"],"rating":408,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":2,"theme":"mate_in_1","fen":"6k1/1r4p1/R7/7p/3Bn1p1/P7/2P3PP/6K1 b - - 0 30","solution":["b7b1"],"rating":408,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":3,"theme":"mate_in_2","fen":"1r4k1/5ppp/p3pb2/8/3P4/2Q5/5PPP/B5K1 b - - 0 25","solution":["b8b1","c3c1","b1c1"],"rating":409,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":4,"theme":"mate_in_1","fen":"2kr3r/Qpp1n1p1/3p4/7p/1B1Pp1q1/6P1/PPP5/1K1R1B1R b - - 0 20","solution":["g4d1"],"rating":413,"themes":["hangingPiece","mate","mateIn1","middlegame"]},{"id":5,"theme":"mate_in_1","fen":"4r1k1/p2r2p1/1pn3P1/2pp1P2/8/2P3B1/P1P5/2KRR3 w - - 0 30","solution":["e1e8"],"rating":419,"themes":["endgame","hangingPiece","mate","mateIn1"]},{"id":6,"theme":"mate_in_2","fen":"7k/p1p3pp/8/5r2/P4n2/6P1/1PP4P/3R1K2 w - - 0 26","solution":["d1d8","f5f8","d8f8"],"rating":419,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":7,"theme":"mate_in_1","fen":"r2k4/ppp3p1/2p5/2b1P2p/3q4/2NP2P1/PPP2Q2/R1B2K2 b - - 0 18","solution":["d4f2"],"rating":425,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":8,"theme":"mate_in_1","fen":"r3k2r/ppp1qpQp/3p4/b7/8/2nN4/P2BBPPP/R3K2R b KQkq - 0 16","solution":["e7e2"],"rating":426,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":9,"theme":"mate_in_2","fen":"3r2k1/pp2rp1p/2p1bBp1/1nP5/4P3/1P3BP1/P7/3R2K1 w - - 0 28","solution":["d1d8","e7e8","d8e8"],"rating":429,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":10,"theme":"mate_in_1","fen":"r1b2rk1/pp2n2p/4p1p1/3pQ3/1Pp5/P1P5/2B3PP/RNB2R1K b - - 0 17","solution":["f8f1"],"rating":434,"themes":["backRankMate","mate","mateIn1","middlegame"]},{"id":11,"theme":"mate_in_2","fen":"7k/5ppp/p7/1p1n4/3Nr3/8/PP4PP/2R2K2 w - - 5 28","solution":["c1c8","e4e8","c8e8"],"rating":434,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":12,"theme":"mate_in_1","fen":"3r2k1/p4p1p/5rpP/7q/PP6/8/8/1K1R1R2 w - - 0 37","solution":["d1d8"],"rating":435,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":13,"theme":"mate_in_2","fen":"6k1/5p2/pr3B2/5P2/P3R3/8/1P4PK/2r5 w - - 3 44","solution":["e4e8","g8h7","e8h8"],"rating":438,"themes":["endgame","mate","mateIn2","operaMate"]},{"id":14,"theme":"mate_in_1","fen":"rn2Qr1k/ppp3p1/8/3p3p/3P2nq/3B4/PPP2PP1/R4RK1 w - - 2 17","solution":["e8f8"],"rating":438,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":15,"theme":"mate_in_1","fen":"r4rk1/2b2pp1/p2qp2p/1pp5/3P4/P1P2Q1P/BP3PP1/R4RK1 b - - 0 18","solution":["d6h2"],"rating":442,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":16,"theme":"mate_in_2","fen":"3r3k/ppr3pp/8/2p5/3n4/P7/1PP2RPP/5RK1 w - - 0 23","solution":["f2f8","d8f8","f1f8"],"rating":443,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":17,"theme":"mate_in_2","fen":"4r1kr/ppp5/5Rpp/3P4/8/8/PPP3PP/R1B4K b - - 0 23","solution":["e8e1","f6f1","e1f1"],"rating":443,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":18,"theme":"mate_in_2","fen":"7k/6pp/p2q4/1p3p2/2P5/P5PP/4QnK1/RB1r4 w - - 0 37","solution":["e2e8","d6f8","e8f8"],"rating":447,"themes":["endgame","mate","mateIn2","short"]},{"id":19,"theme":"mate_in_1","fen":"r1bk1b1n/pppp1B2/7p/2q5/3p3p/8/PPP2PPP/RN2R1K1 w - - 0 15","solution":["e1e8"],"rating":447,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":20,"theme":"mate_in_1","fen":"3k4/4b3/2Qr4/pp5p/7P/6P1/PPP5/1K1R4 b - - 0 38","solution":["d6d1"],"rating":448,"themes":["backRankMate","endgame","hangingPiece","mate"]},{"id":21,"theme":"mate_in_1","fen":"6k1/6r1/5K2/4R1N1/8/8/8/3b4 w - - 11 56","solution":["e5e8"],"rating":451,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":22,"theme":"mate_in_1","fen":"k1r5/pp4r1/5n2/1P3p1p/P2P1B1p/8/5PP1/2R3K1 w - - 0 29","solution":["c1c8"],"rating":455,"themes":["backRankMate","endgame","mate","mateIn1"]},{"id":23,"theme":"mate_in_1","fen":"3Q1b1k/1p6/p6p/2pP3q/4B3/P6P/1P5K/8 w - - 3 41","solution":["d8f8"],"rating":461,"themes":["endgame","hangingPiece","mate","mateIn1"]},{"id":24,"theme":"mate_in_2","fen":"r1b3k1/2p3pp/p2p4/1p1P1rb1/3q4/P1Nn3P/BPP1Q1P1/R4R1K w - - 0 25","solution":["e2e8","f5f8","e8f8"],"rating":462,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":25,"theme":"mate_in_1","fen":"5r1r/pp1kb1Np/4ppn1/1q1pP3/P2P4/2P5/2Q3PP/R1B2R1K b - a3 0 20","solution":["b5f1"],"rating":463,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":26,"theme":"mate_in_1","fen":"4R3/6pk/p7/4N2p/8/bP4P1/P6P/1KR2r2 b - - 0 42","solution":["f1c1"],"rating":463,"themes":["endgame","master","mate","mateIn1"]},{"id":27,"theme":"mate_in_1","fen":"1br2rk1/pbqn1ppp/1p2pn2/1Npp4/2PP4/1P1BPP2/P1QBN1PP/R4R1K b - - 4 13","solution":["c7h2"],"rating":475,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":28,"theme":"mate_in_1","fen":"R7/5p1k/6p1/7p/3B4/2P2K2/2r1r1PP/8 w - - 4 41","solution":["a8h8"],"rating":477,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":29,"theme":"mate_in_1","fen":"4r3/p6p/kpR5/8/2Np4/3n3P/PP3NP1/5K2 b - - 0 35","solution":["e8e1"],"rating":480,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":30,"theme":"mate_in_1","fen":"5R2/ppkb4/4p3/4n1P1/2p2B2/2q5/P5PP/1R1B3K b - - 1 28","solution":["c3e1"],"rating":482,"themes":["backRankMate","mate","mateIn1","middlegame"]},{"id":31,"theme":"mate_in_1","fen":"r4rk1/3q1ppp/2n1bb2/1pp3N1/8/PP2P3/2QP1PPP/R3KB1R w KQ - 0 14","solution":["c2h7"],"rating":482,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":32,"theme":"mate_in_1","fen":"2R1r1k1/5ppb/p6p/1p6/1P1BpPP1/4P3/1P5P/6K1 w - - 3 29","solution":["c8e8"],"rating":483,"themes":["endgame","hangingPiece","mate","mateIn1"]},{"id":33,"theme":"mate_in_2","fen":"2bqr1k1/6pp/3rp3/2Q2p2/PP6/2P1P3/5PPP/R2R2K1 b - - 2 24","solution":["d6d1","a1d1","d8d1"],"rating":486,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":34,"theme":"mate_in_1","fen":"r3k2r/3bbppp/q2p4/3Q2N1/4NP2/8/PP4PP/R1B2R1K b kq - 4 19","solution":["a6f1"],"rating":486,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":35,"theme":"mate_in_1","fen":"r1bq1rk1/pp1nbppp/4p3/2p5/3PQ3/3B1N2/PPP2PPP/R1B1K2R w KQ c6 0 10","solution":["e4h7"],"rating":488,"themes":["kingsideAttack","mate","mateIn1","oneMove"]},{"id":36,"theme":"mate_in_1","fen":"r4rk1/pb3ppp/2q1p3/8/3N4/2P5/PP1Q1PPP/2R1R1K1 b - - 0 18","solution":["c6g2"],"rating":490,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":37,"theme":"mate_in_2","fen":"4r1k1/pp3pp1/4q2p/8/PP1B2n1/6P1/2Q2PP1/3R2K1 b - b3 0 26","solution":["e6e1","d1e1","e8e1"],"rating":490,"themes":["endgame","mate","mateIn2","sacrifice"]},{"id":38,"theme":"mate_in_1","fen":"6k1/1r3p1p/4p1pB/p3b3/1n6/1P4PP/P3BP2/3R2K1 w - - 2 30","solution":["d1d8"],"rating":490,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":39,"theme":"mate_in_1","fen":"rb2r1k1/ppq2ppp/2p2pn1/2N5/PP1P4/4PB1P/5PP1/2RQ1RK1 b - - 6 18","solution":["c7h2"],"rating":491,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":40,"theme":"mate_in_1","fen":"r2q1knr/p4p1p/4p1p1/1B6/4Q1bP/2P5/P4PP1/R1B1K2R b KQ - 0 14","solution":["d8d1"],"rating":493,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":41,"theme":"mate_in_1","fen":"2kr3N/ppp1q1pp/8/3B1b2/2Q5/6P1/PPPP1bP1/RNB2K1R b - - 0 13","solution":["e7e1"],"rating":494,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":42,"theme":"mate_in_1","fen":"8/5p2/4p1p1/4P3/3p1P1k/2p2K2/2R5/3r4 w - - 0 59","solution":["c2h2"],"rating":494,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":43,"theme":"mate_in_1","fen":"1r6/p1b5/4R2p/3p2p1/3P2Pk/2P4P/PP3P2/5K2 w - - 1 34","solution":["e6h6"],"rating":494,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":44,"theme":"mate_in_1","fen":"r4rk1/1ppqnpp1/1b6/p2b2Np/P2p2nP/2P3P1/1PQN1PB1/R1B2RK1 w - - 0 17","solution":["c2h7"],"rating":495,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":45,"theme":"mate_in_1","fen":"r3k2r/p4pp1/2p1p1b1/3p1qB1/5P1P/8/PPP1NQ2/2KR3R b kq - 0 21","solution":["f5c2"],"rating":497,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":46,"theme":"mate_in_2","fen":"r3r1k1/1p3p1p/q2p2pB/2pb4/8/p3QNP1/Pb3PBP/1R2R1K1 w - - 2 22","solution":["e3e8","a8e8","e1e8"],"rating":498,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":47,"theme":"mate_in_1","fen":"r4rk1/ppp2ppp/3q4/6N1/3P2B1/2P1n3/PPQ3PP/R5K1 w - - 2 17","solution":["c2h7"],"rating":498,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":48,"theme":"mate_in_1","fen":"1b6/3R4/6kp/3p1p2/3Np3/2r1P2P/5PP1/7K b - - 1 39","solution":["c3c1"],"rating":498,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":49,"theme":"mate_in_2","fen":"1r4k1/5ppb/4p2p/2RpPn2/p2P4/Pr3N2/3B1PPP/2R3K1 w - - 4 25","solution":["c5c8","b8c8","c1c8"],"rating":499,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":50,"theme":"mate_in_1","fen":"rk3b1r/1p3p1p/p4p2/1N1R4/8/8/PP3PPP/2R3K1 w - - 3 21","solution":["d5d8"],"rating":499,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":51,"theme":"mate_in_1","fen":"r4rk1/p1qpb1pp/1p2p3/5p2/2PQb1n1/1P2P1P1/PB2BP1P/R4RK1 w - - 0 15","solution":["d4g7"],"rating":506,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":52,"theme":"mate_in_1","fen":"1r5r/1b1k1ppp/p1q1pb2/1P6/2NP4/4P3/2P1BPPP/RQ3RK1 b - - 0 17","solution":["c6g2"],"rating":515,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":53,"theme":"mate_in_1","fen":"3r1rk1/ppp2ppp/3b4/4q3/3Nn3/PP2P2P/1BQ2PP1/3R1RK1 b - - 6 19","solution":["e5h2"],"rating":518,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":54,"theme":"mate_in_1","fen":"r4rk1/2qn1bbp/p2p2p1/1pp1p1N1/5PnQ/2PB4/PP1P2PP/R1B2RK1 w - - 0 19","solution":["h4h7"],"rating":522,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":55,"theme":"mate_in_1","fen":"r3kb1r/1bp2ppp/pnq1p3/1p2N1B1/3P4/1BN5/PP3PPP/2RQ1RK1 b kq - 13 15","solution":["c6g2"],"rating":525,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":56,"theme":"mate_in_2","fen":"6k1/2r2ppp/rRp1p3/8/3P4/4P3/5PPP/6K1 w - - 0 25","solution":["b6b8","c7c8","b8c8"],"rating":526,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":57,"theme":"mate_in_2","fen":"1k5r/ppR3p1/3bp3/8/7p/3rq2P/PPQ1N1P1/2R4K w - - 1 24","solution":["c7c8","h8c8","c2c8"],"rating":527,"themes":["mate","mateIn2","middlegame","queensideAttack"]},{"id":58,"theme":"mate_in_1","fen":"r4rk1/6pp/1BP2b2/pP1Pp3/P1q5/4RpPb/5P1P/R2QN1K1 b - - 2 27","solution":["c4f1"],"rating":531,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":59,"theme":"mate_in_1","fen":"r4rk1/pp1bnNp1/1q2p3/3pP2Q/3P4/1P2P3/P2b2PP/R4RK1 w - - 3 19","solution":["h5h8"],"rating":531,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":60,"theme":"mate_in_1","fen":"3r1rk1/pppb1ppp/8/4q3/1PN1P1n1/P1PB4/2Q3PP/R4RK1 b - - 6 19","solution":["e5h2"],"rating":531,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":61,"theme":"mate_in_1","fen":"r2qk2r/pp1n1ppp/2pbp3/6P1/3P4/2PB1Q1P/P1P5/R1B2RK1 w kq - 3 13","solution":["f3f7"],"rating":531,"themes":["attackingF2F7","mate","mateIn1","middlegame"]},{"id":62,"theme":"mate_in_1","fen":"rn1qr1k1/ppp2ppp/3p4/3P4/3Qn3/P1B4b/1PP1P1PP/R3KB1R w KQ - 0 11","solution":["d4g7"],"rating":532,"themes":["kingsideAttack","mate","mateIn1","oneMove"]},{"id":63,"theme":"mate_in_1","fen":"5r2/1pp1n1pk/4Q2p/r7/P3P3/2P5/6PP/RN3R1K b - - 0 26","solution":["f8f1"],"rating":534,"themes":["backRankMate","mate","mateIn1","middlegame"]},{"id":64,"theme":"mate_in_1","fen":"rn3k1r/pb1pb1p1/4p2q/1Bp5/4P3/2NP1NQ1/PPP2PP1/R3R1K1 b - - 8 16","solution":["h6h1"],"rating":536,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":65,"theme":"promotion","fen":"8/8/7K/1p1p2P1/p7/P1k5/8/8 w - - 0 56","solution":["g5g6","b5b4","g6g7","b4b3","g7g8q"],"rating":538,"themes":["advancedPawn","crushing","endgame","long"]},{"id":66,"theme":"mate_in_1","fen":"rnb2rk1/b1q2ppp/p7/1p1p1P2/3Np1n1/1NP1P3/PPBB2PP/R2Q1RK1 b - - 3 15","solution":["c7h2"],"rating":542,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":67,"theme":"mate_in_1","fen":"r2b2r1/1q3p1k/p2p1n1p/8/R1QN4/7P/1PP1NPP1/4R1K1 b - - 8 25","solution":["b7g2"],"rating":542,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":68,"theme":"mate_in_1","fen":"r4rk1/pppq1pp1/2npb2p/8/2P1Q2n/2NBP3/PP3PPP/R3K2R w KQ - 0 13","solution":["e4h7"],"rating":543,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":69,"theme":"mate_in_2","fen":"3r2k1/1b4pp/5n2/2p1N3/p7/8/qp3PPP/3R2K1 w - - 0 30","solution":["d1d8","f6e8","d8e8"],"rating":543,"themes":["endgame","mate","mateIn2","short"]},{"id":70,"theme":"mate_in_1","fen":"3q2k1/6r1/2p1p1P1/2n1Np2/1p3P1P/pP6/P7/1K1Q4 w - - 0 42","solution":["d1d8"],"rating":547,"themes":["endgame","hangingPiece","mate","mateIn1"]},{"id":71,"theme":"mate_in_1","fen":"3r3k/1p2p2p/4Nbp1/4p3/4P2P/pPPR1P2/P5q1/1K1R4 w - - 0 32","solution":["d3d8"],"rating":548,"themes":["endgame","master","mate","mateIn1"]},{"id":72,"theme":"mate_in_2","fen":"2k4r/Qp1qn1p1/R1p1Np1p/2P5/5B2/2Pr4/5PPP/1R4K1 b - - 0 26","solution":["d3d1","b1d1","d7d1"],"rating":555,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":73,"theme":"mate_in_1","fen":"2rqkbnr/p2b1ppp/3p4/1ppQ4/4P3/1BN5/PPP2PPP/R1B1K2R w KQk - 2 11","solution":["d5f7"],"rating":557,"themes":["attackingF2F7","mate","mateIn1","oneMove"]},{"id":74,"theme":"mate_in_1","fen":"5rk1/ppp2pp1/7p/5q2/2QB1n2/2P2P1P/PP3P1K/6R1 b - - 3 24","solution":["f5h3"],"rating":557,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":75,"theme":"mate_in_1","fen":"4k3/1p3p2/p3p3/5n2/1bPQ4/6Pq/P4P2/3R2K1 w - - 3 31","solution":["d4d8"],"rating":558,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":76,"theme":"mate_in_3","fen":"2k5/4Q3/1R6/5p1p/8/3pPpP1/r2B1P1P/6K1 b - - 9 32","solution":["a2a1","b6b1","a1b1","d2c1","b1c1"],"rating":559,"themes":["endgame","long","mate","mateIn3"]},{"id":77,"theme":"mate_in_1","fen":"r1b2rk1/2qn2p1/4pp1p/np1pN2P/p1pP1PP1/P1P2P2/1PQN4/RB2K2R w KQ - 0 18","solution":["c2h7"],"rating":563,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":78,"theme":"mate_in_3","fen":"8/8/7R/5Qp1/r6P/2R2Pk1/8/6K1 b - - 0 41","solution":["a4a1","f5b1","a1b1","c3c1","b1c1"],"rating":565,"themes":["endgame","exposedKing","long","mate"]},{"id":79,"theme":"mate_in_1","fen":"7r/5p2/4p3/K1k2p1P/2P5/3B2P1/5P2/7R b - - 0 40","solution":["h8a8"],"rating":569,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":80,"theme":"pin","fen":"8/6p1/7p/7P/1PR3P1/1K2qk2/8/8 w - - 6 49","solution":["c4c3","e3c3","b3c3"],"rating":573,"themes":["crushing","defensiveMove","endgame","pin"]},{"id":81,"theme":"hanging_piece","fen":"1rb2rk1/ppqn1ppB/3bp3/2pp4/3P1B2/2P1PN2/PP3PPP/R2QK2R b KQ - 0 11","solution":["g8h7","f4d6","c7d6"],"rating":573,"themes":["advantage","hangingPiece","opening","short"]},{"id":82,"theme":"mate_in_2","fen":"2bkr3/2b3p1/2PP2pp/4r3/3Q4/8/P4PPP/2R3K1 b - - 0 30","solution":["e5e1","c1e1","e8e1"],"rating":576,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":83,"theme":"mate_in_1","fen":"2kr2r1/ppb2ppp/3qNn2/3p2B1/P7/2P2Q1P/1PB2PP1/R4RK1 b - - 0 18","solution":["d6h2"],"rating":578,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":84,"theme":"mate_in_2","fen":"r3rk2/5pp1/3qp1n1/p2p2BQ/1p1P4/1Pp4R/P1P2PPP/6K1 w - - 6 25","solution":["h5h8","g6h8","h3h8"],"rating":578,"themes":["mate","mateIn2","middlegame","pillsburysMate"]},{"id":85,"theme":"mate_in_1","fen":"r4rk1/1b2nppp/p2p3B/2n2q2/8/6Q1/BPP2PPP/R3R1K1 w - - 0 23","solution":["g3g7"],"rating":578,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":86,"theme":"mate_in_1","fen":"R7/8/3n1Kpk/P6p/8/8/6P1/r7 w - - 7 55","solution":["a8h8"],"rating":579,"themes":["endgame","master","mate","mateIn1"]},{"id":87,"theme":"mate_in_2","fen":"6k1/p3r1p1/1p1p1p2/4p1Np/4P1nP/1P1P2P1/P4PK1/2R5 w - - 0 24","solution":["c1c8","e7e8","c8e8"],"rating":580,"themes":["endgame","kingsideAttack","mate","mateIn2"]},{"id":88,"theme":"mate_in_1","fen":"r1b2r1k/1p4pp/p1n5/4pp2/1Q6/4P2q/PP1NBP2/2KR1R2 w - - 2 19","solution":["b4f8"],"rating":580,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":89,"theme":"mate_in_1","fen":"r1b2rk1/pp3ppp/2n5/q5N1/3BQP2/2n3P1/P6P/R3KB1R w KQ - 0 16","solution":["e4h7"],"rating":584,"themes":["kingsideAttack","mate","mateIn1","oneMove"]},{"id":90,"theme":"mate_in_1","fen":"rn2k2r/ppp2p2/4b3/6Q1/2q5/2b5/P1P3PP/3R1R1K w kq - 1 17","solution":["d1d8"],"rating":584,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":91,"theme":"tactic","fen":"1r4k1/r4pp1/P3bb1p/1Bp1q3/2P5/R7/4QPPP/4R1K1 w - - 0 27","solution":["e2e5","f6e5","e1e5"],"rating":584,"themes":["advantage","middlegame","short"]},{"id":92,"theme":"mate_in_2","fen":"1k1rr3/pp3pp1/2p1p1p1/Q7/3qN3/R7/PPP2PBP/1K5R b - - 0 21","solution":["d4d1","h1d1","d8d1"],"rating":587,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":93,"theme":"tactic","fen":"3r2k1/pp1q1ppp/3rp3/P1P5/2P5/1PQ4P/3R1PP1/3R2K1 b - - 0 29","solution":["d6d2","c3d2","d7d2","d1d2","d8d2"],"rating":588,"themes":["crushing","endgame","long"]},{"id":94,"theme":"mate_in_2","fen":"5rk1/p2r1ppp/b3p3/P3P3/4R3/6B1/2R2PPP/6K1 b - - 0 23","solution":["d7d1","e4e1","d1e1"],"rating":588,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":95,"theme":"mate_in_1","fen":"rn3r1k/p1ppb2p/1p2p3/4Nqp1/3Pb3/2P1P3/PP3PBP/R1BQK1R1 b Q - 1 18","solution":["f5f2"],"rating":589,"themes":["attackingF2F7","mate","mateIn1","oneMove"]},{"id":96,"theme":"mate_in_1","fen":"r2q2k1/pppbrpp1/3p3P/8/3QPn2/5P2/PPP4P/1K1R1B1R w - - 0 17","solution":["d4g7"],"rating":589,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":97,"theme":"mate_in_1","fen":"4r3/7p/2k5/8/1b6/1p5R/1N3PPP/5K2 b - - 3 30","solution":["e8e1"],"rating":595,"themes":["endgame","master","mate","mateIn1"]},{"id":98,"theme":"mate_in_1","fen":"r2qkn1r/1b2nppp/pp1p1b2/1NpPp3/Q1P1P3/3BBN2/PP3PPP/R4RK1 w kq - 0 14","solution":["b5c7"],"rating":596,"themes":["doubleCheck","mate","mateIn1","middlegame"]},{"id":99,"theme":"mate_in_2","fen":"4r2k/pp1n1Qpp/2p5/q7/8/P7/1P3PPP/5K2 w - - 0 26","solution":["f7e8","d7f8","e8f8"],"rating":597,"themes":["endgame","fork","mate","mateIn2"]},{"id":100,"theme":"mate_in_2","fen":"7k/1rq3bp/p3Q1p1/1p2P3/3P4/6P1/P4PKP/8 w - - 4 31","solution":["e6e8","g7f8","e8f8"],"rating":597,"themes":["endgame","mate","mateIn2","short"]},{"id":101,"theme":"tactic","fen":"r1bq1r1k/1p3Q1p/p5p1/3pb3/2P3P1/2N5/PP2B3/1R3RK1 w - - 0 23","solution":["f7f8","d8f8","f1f8"],"rating":603,"themes":["crushing","kingsideAttack","middlegame","short"]},{"id":102,"theme":"tactic","fen":"6k1/2p2qp1/7p/PpQ5/2p5/2P2PP1/R1brrK1P/4R3 w - - 0 34","solution":["e1e2","d2e2","f2e2"],"rating":604,"themes":["advantage","middlegame","short"]},{"id":103,"theme":"mate_in_1","fen":"r1b2r1k/1p1n1pp1/1qn1p2p/3pP2P/1b1P1P2/3Q1NP1/PpB3K1/R1B3NR w - - 0 17","solution":["d3h7"],"rating":606,"themes":["mate","mateIn1","oneMove","opening"]},{"id":104,"theme":"mate_in_2","fen":"4r2k/ppp2rpp/6q1/4Q3/8/4P3/PP4PP/6K1 w - - 0 23","solution":["e5e8","f7f8","e8f8"],"rating":608,"themes":["endgame","hangingPiece","mate","mateIn2"]},{"id":105,"theme":"skewer","fen":"8/8/1kr5/p2K2R1/P4pPp/5P1P/8/8 b - - 0 51","solution":["c6c5","d5e4","c5g5"],"rating":610,"themes":["crushing","endgame","rookEndgame","short"]},{"id":106,"theme":"mate_in_1","fen":"8/5R2/p7/1p6/4nPpk/4P2P/r5PK/8 w - - 0 37","solution":["f7h7"],"rating":610,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":107,"theme":"mate_in_2","fen":"7k/pp4p1/2pb3p/5B2/4R3/1P5P/P4rP1/7K w - - 1 37","solution":["e4e8","d6f8","e8f8"],"rating":613,"themes":["endgame","mate","mateIn2","pillsburysMate"]},{"id":108,"theme":"mate_in_2","fen":"5r1k/5Rbp/6p1/p3p1q1/1pB5/1Pp5/P1P5/1K3Q2 w - - 3 36","solution":["f7f8","g7f8","f1f8"],"rating":620,"themes":["endgame","mate","mateIn2","short"]},{"id":109,"theme":"mate_in_1","fen":"r3k2r/ppp2pp1/2p1b1q1/5N2/4P3/4B2p/PPP2PP1/R2QR1K1 b kq - 5 17","solution":["g6g2"],"rating":621,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":110,"theme":"mate_in_2","fen":"4r1k1/7p/3b2pB/1R3p2/4p2P/8/rP1R1PP1/6K1 b - - 2 28","solution":["a2a1","d2d1","a1d1"],"rating":623,"themes":["endgame","mate","mateIn2","pillsburysMate"]},{"id":111,"theme":"mate_in_2","fen":"1k6/ppp2rpp/1b6/4R3/6B1/8/PP1r1PPP/4R1K1 w - - 5 22","solution":["e5e8","d2d8","e8d8"],"rating":624,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":112,"theme":"mate_in_3","fen":"3r2k1/5p1p/n1q2bpP/2r1P3/p4PP1/P2Q4/1PP5/2KR3R w - - 0 27","solution":["d3d8","f6d8","d1d8","c6e8","d8e8"],"rating":628,"themes":["kingsideAttack","long","mate","mateIn3"]},{"id":113,"theme":"mate_in_1","fen":"3r1rk1/1b3ppp/pp1qp1n1/3p2N1/P2P2n1/2PB3Q/1P3PPP/R3R1K1 w - - 0 19","solution":["h3h7"],"rating":630,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":114,"theme":"fork","fen":"8/1p1k4/1p6/p5P1/2P3r1/5N2/5KP1/8 w - - 2 39","solution":["f3e5","d7e6","e5g4"],"rating":631,"themes":["crushing","endgame","fork","short"]},{"id":115,"theme":"mate_in_1","fen":"8/5p2/R5p1/1p2Pk2/3K1P1p/2P4P/p6r/8 w - - 7 44","solution":["a6f6"],"rating":634,"themes":["endgame","master","mate","mateIn1"]},{"id":116,"theme":"mate_in_1","fen":"2kr3r/1pp2ppp/p2b1n2/4q2B/8/2N1P2P/PPPB1PP1/R2Q1RK1 b - - 0 13","solution":["e5h2"],"rating":640,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":117,"theme":"mate_in_2","fen":"r4r1k/6pp/pp5q/2p5/P1Q2R2/8/1P4P1/5RK1 w - - 6 29","solution":["f4f8","a8f8","f1f8"],"rating":640,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":118,"theme":"mate_in_1","fen":"5rk1/r1p3pp/8/4Q3/P1q1P3/1P6/1B4PP/7K w - - 0 38","solution":["e5g7"],"rating":640,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":119,"theme":"mate_in_2","fen":"2r3k1/p1pr1ppp/1p3q2/3p4/2P1Q3/1P6/P4PPP/3RR1K1 w - - 0 28","solution":["e4e8","c8e8","e1e8"],"rating":641,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":120,"theme":"mate_in_1","fen":"r2qk2r/pp1n1pp1/2pbp2p/8/3P2PP/2NBnQ2/PPP5/2KR1R2 w kq - 0 14","solution":["f3f7"],"rating":641,"themes":["attackingF2F7","mate","mateIn1","middlegame"]},{"id":121,"theme":"mate_in_2","fen":"2r3rk/5p2/4pP1p/ppb2n1Q/1q3P2/1P5R/P5PP/3R3K w - - 0 29","solution":["h5h6","f5h6","h3h6"],"rating":641,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":122,"theme":"mate_in_1","fen":"3r1rk1/ppp2p1p/5Q2/q3p3/3nP3/1B1R4/PPP2PPP/4R1K1 b - - 4 17","solution":["a5e1"],"rating":642,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":123,"theme":"mate_in_1","fen":"1r1r2k1/1pp1qpp1/p2b2bp/8/5p2/1RQPP3/4B1PP/B4R1K w - - 0 28","solution":["c3g7"],"rating":647,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":124,"theme":"fork","fen":"8/7p/1b6/4k1p1/1P2pp2/7P/3NK1P1/8 w - - 0 52","solution":["d2c4","e5d4","c4b6"],"rating":648,"themes":["crushing","endgame","fork","master"]},{"id":125,"theme":"skewer","fen":"3R4/2p5/4k3/p7/1p3P2/3K4/P7/4r3 w - - 0 45","solution":["d8e8","e6f5","e8e1"],"rating":651,"themes":["crushing","endgame","master","rookEndgame"]},{"id":126,"theme":"mate_in_1","fen":"rn2kbnr/pp3ppp/4p3/2P1PbB1/2P5/5N2/P4PPP/qN1QKB1R w Kkq - 0 10","solution":["d1d8"],"rating":651,"themes":["mate","mateIn1","oneMove","opening"]},{"id":127,"theme":"mate_in_2","fen":"5R2/1pr5/p7/4N1pk/1Pb5/P4p2/5P2/4K3 w - - 0 50","solution":["f8h8","c7h7","h8h7"],"rating":651,"themes":["anastasiaMate","endgame","mate","mateIn2"]},{"id":128,"theme":"mate_in_1","fen":"1k6/pPp5/P1q5/8/5Pp1/2P3Pp/7K/4QR2 b - - 0 41","solution":["c6g2"],"rating":655,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":129,"theme":"mate_in_1","fen":"r2q1rk1/pp1nbppp/2pp4/8/3Qn3/1P2PB2/PBP2PPP/R4RK1 w - - 0 12","solution":["d4g7"],"rating":655,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":130,"theme":"mate_in_1","fen":"r1b4k/ppp2Bbp/3p2p1/8/8/2B5/P1P2PPP/4R1K1 w - - 0 26","solution":["e1e8"],"rating":656,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":131,"theme":"mate_in_2","fen":"b5k1/5pp1/7p/1Pp1q3/8/1P3p2/2B3PP/3Q2K1 w - - 0 26","solution":["d1d8","e5e8","d8e8"],"rating":658,"themes":["endgame","fork","mate","mateIn2"]},{"id":132,"theme":"mate_in_1","fen":"rn3r1k/pbpp2pB/1p2p3/4P3/3P4/2P3q1/PPQ3P1/R1B2RK1 w - - 1 18","solution":["f1f8"],"rating":661,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":133,"theme":"mate_in_3","fen":"6k1/1b4pp/2p1p1P1/2b5/3q4/p7/5N1P/4QBK1 w - - 0 34","solution":["e1e6","g8h8","e6e8","c5f8","e8f8"],"rating":662,"themes":["endgame","long","mate","mateIn3"]},{"id":134,"theme":"discovered_attack","fen":"r5k1/2p3pp/2Pp2q1/p3prb1/4Q3/1P4P1/PBR2PKP/3R4 b - - 1 30","solution":["f5f2","c2f2","g6e4"],"rating":662,"themes":["crushing","discoveredAttack","middlegame","short"]},{"id":135,"theme":"mate_in_3","fen":"6k1/5p1p/R6P/5bp1/3K4/5P2/4rr2/8 w - - 1 47","solution":["a6a8","f5c8","a8c8","e2e8","c8e8"],"rating":663,"themes":["endgame","long","mate","mateIn3"]},{"id":136,"theme":"mate_in_1","fen":"2r2rk1/1p2bpp1/p2qN2p/3p4/3B2n1/P1NBP3/1P2QPPP/2R2RK1 b - - 0 18","solution":["d6h2"],"rating":665,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":137,"theme":"fork","fen":"8/8/4k3/1b1N2p1/1P6/4K1p1/8/8 w - - 2 51","solution":["d5c7","e6f5","c7b5"],"rating":672,"themes":["crushing","endgame","fork","master"]},{"id":138,"theme":"mate_in_2","fen":"4q2k/pbp3pp/8/2p1r1P1/3p4/7P/PPPB1RP1/5RK1 w - - 0 23","solution":["f2f8","e8f8","f1f8"],"rating":672,"themes":["backRankMate","endgame","fork","mate"]},{"id":139,"theme":"mate_in_1","fen":"r4rk1/pp2bpp1/2b1p2p/1q4N1/3pQB1P/3P4/PP3PP1/R4K1R w - - 7 18","solution":["e4h7"],"rating":675,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":140,"theme":"fork","fen":"8/3k1ppp/3pp3/p7/N1bP4/4P1P1/3K1P1P/8 w - - 2 34","solution":["a4b6","d7c6","b6c4"],"rating":677,"themes":["advantage","endgame","fork","short"]},{"id":141,"theme":"mate_in_1","fen":"r2qnr1k/pp4pB/2p1p2p/3pP3/7b/2N1P3/PPQ3PP/R4RK1 w - - 2 18","solution":["f1f8"],"rating":677,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":142,"theme":"mate_in_1","fen":"3r3r/2pk1q2/Q1pPb3/6p1/4n3/8/PP2BBpP/3RR1K1 b - - 0 28","solution":["f7f2"],"rating":684,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":143,"theme":"mate_in_1","fen":"r3k2r/bpqn1pp1/p3p3/P2p2Bp/1P1NB1nP/2P1P3/3Q1P2/RN3RK1 b kq - 0 19","solution":["c7h2"],"rating":685,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":144,"theme":"mate_in_1","fen":"rn2kbnr/ppp1pppp/3q2N1/8/1PPp2PP/5P2/P2PP3/RNBQKB1R b KQkq - 0 8","solution":["d6g3"],"rating":687,"themes":["mate","mateIn1","oneMove","opening"]},{"id":145,"theme":"mate_in_1","fen":"3N2k1/1p4pp/8/1N2p3/1r2P3/8/R1P2PPP/6K1 b - - 0 30","solution":["b4b1"],"rating":688,"themes":["backRankMate","endgame","mate","mateIn1"]},{"id":146,"theme":"mate_in_1","fen":"r2q1rk1/ppp2ppp/2nbp3/6N1/3P4/2PQ4/P1P1bPPP/R1B2RK1 w - - 0 11","solution":["d3h7"],"rating":690,"themes":["kingsideAttack","mate","mateIn1","oneMove"]},{"id":147,"theme":"mate_in_1","fen":"3r1rk1/pp6/7p/n3Bqp1/4p2P/2P1P3/PPQ1BP2/R3K2R b KQ - 0 27","solution":["f5f2"],"rating":691,"themes":["attackingF2F7","mate","mateIn1","middlegame"]},{"id":148,"theme":"mate_in_1","fen":"r1b2rk1/pp5p/2p2q2/3p1pNQ/2P5/3BP1P1/P1P2PP1/b3R1K1 w - - 1 19","solution":["h5h7"],"rating":692,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":149,"theme":"mate_in_2","fen":"r6k/1pp2p2/3b1N2/4n1RP/2q5/p7/2P5/1K4R1 w - - 4 36","solution":["g5g8","a8g8","g1g8"],"rating":695,"themes":["arabianMate","mate","mateIn2","middlegame"]},{"id":150,"theme":"mate_in_1","fen":"r2b1rk1/p5pp/1pq1p3/2P3N1/5n2/3Q2P1/PP3P1P/R3R1K1 w - - 0 20","solution":["d3h7"],"rating":698,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":151,"theme":"discovered_attack","fen":"r3nr1k/ppq4p/2p2p1P/4n3/3pPQ2/3P4/PPP1B3/1NKR3R b - - 2 23","solution":["e5d3","e2d3","c7f4"],"rating":700,"themes":["advantage","discoveredAttack","middlegame","queensideAttack"]},{"id":152,"theme":"skewer","fen":"2b5/p4p1p/1p2k1p1/3pP3/1P1K4/P6P/4B1P1/8 w - - 0 30","solution":["e2g4","e6e7","g4c8"],"rating":701,"themes":["bishopEndgame","crushing","endgame","short"]},{"id":153,"theme":"skewer","fen":"R7/8/4pk1p/8/2K5/1PP2rp1/8/8 w - - 0 35","solution":["a8f8","f6g5","f8f3"],"rating":704,"themes":["crushing","endgame","master","rookEndgame"]},{"id":154,"theme":"mate_in_1","fen":"r3k2r/1p4pp/1qp1p1p1/p5P1/1b1PP3/2P5/P1PQ4/2KR1BNR b kq - 0 17","solution":["b4a3"],"rating":704,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":155,"theme":"fork","fen":"1N6/4k3/3pp1b1/7p/3bP3/1B3K1P/2P5/8 w - - 17 43","solution":["b8c6","e7f6","c6d4"],"rating":705,"themes":["crushing","endgame","fork","master"]},{"id":156,"theme":"mate_in_2","fen":"1Q6/8/3p2p1/3Bb1k1/3pP3/3P2p1/3q1PK1/1Q6 b - - 2 42","solution":["d2f2","g2h3","f2h2"],"rating":706,"themes":["endgame","mate","mateIn2","short"]},{"id":157,"theme":"mate_in_2","fen":"r4k1r/pp1Qnppp/3Rp3/8/4P3/8/PPP2qPP/2K4R w - - 0 14","solution":["d7d8","a8d8","d6d8"],"rating":709,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":158,"theme":"mate_in_1","fen":"r1b2rk1/pp4bp/3p2p1/q1pN1pB1/4P3/1P1P3P/1PPQ2P1/2KR3R b - - 2 18","solution":["a5a1"],"rating":716,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":159,"theme":"mate_in_3","fen":"r5k1/5ppp/p1p4q/8/3Nb3/2Pn4/P4QPP/5RK1 w - - 0 34","solution":["f2f7","g8h8","f7f8","a8f8","f1f8"],"rating":718,"themes":["backRankMate","long","mate","mateIn3"]},{"id":160,"theme":"mate_in_1","fen":"r3r1k1/pp4p1/1q6/3pP1N1/3n4/bP4P1/P1Q4P/R4RK1 w - - 0 22","solution":["c2h7"],"rating":720,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":161,"theme":"discovered_attack","fen":"4r3/ppk1r3/2p2p1p/3pnP2/6PN/7P/PPP1R3/2K1R3 b - - 7 32","solution":["e5d3","c2d3","e7e2","e1e2","e8e2"],"rating":721,"themes":["advantage","discoveredAttack","endgame","long"]},{"id":162,"theme":"mate_in_2","fen":"8/1p2k2P/2p3B1/p1P1bR2/1r6/8/6P1/7K b - - 3 39","solution":["b4b1","f5f1","b1f1"],"rating":729,"themes":["endgame","mate","mateIn2","pillsburysMate"]},{"id":163,"theme":"fork","fen":"r2q1k1r/5Pp1/p2p2p1/8/2pNb2b/4B3/PPPQ4/R2K3R w - - 0 21","solution":["d4e6","f8f7","e6d8"],"rating":733,"themes":["advantage","fork","middlegame","short"]},{"id":164,"theme":"mate_in_3","fen":"6k1/1p1r1p2/p4Bp1/3P2pn/1P6/P6K/7Q/3q4 w - - 0 40","solution":["h2b8","d7d8","b8d8","g8h7","d8h8"],"rating":733,"themes":["endgame","long","mate","mateIn3"]},{"id":165,"theme":"mate_in_1","fen":"r3k3/ppp2p1p/2n5/3p1b2/1b5q/1PN1PN2/PBPP1PrP/R2QK2R b KQq - 3 11","solution":["h4f2"],"rating":734,"themes":["attackingF2F7","mate","mateIn1","middlegame"]},{"id":166,"theme":"mate_in_2","fen":"7k/1pr3pp/3B4/3Qp3/3p1p2/8/2q2PPP/R5K1 b - - 0 40","solution":["c2c1","a1c1","c7c1"],"rating":736,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":167,"theme":"mate_in_1","fen":"1k2r2r/1pq5/p4P1p/2p5/6n1/PBP1B3/2P2PP1/R2Q1RK1 b - - 0 26","solution":["c7h2"],"rating":737,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":168,"theme":"fork","fen":"8/3r3p/Rp1r4/p2PK1k1/P5P1/2N5/1P6/8 w - - 0 37","solution":["c3e4","g5g4","e4d6"],"rating":739,"themes":["crushing","endgame","fork","short"]},{"id":169,"theme":"mate_in_1","fen":"r3k2r/ppp2ppp/2N5/1B1pP3/4nQbq/6P1/PPP3P1/RNB2K1R b kq - 0 12","solution":["h4h1"],"rating":739,"themes":["hangingPiece","mate","mateIn1","middlegame"]},{"id":170,"theme":"fork","fen":"7k/8/p1p4p/4K3/2P2R1n/3P1p2/7P/8 b - - 4 40","solution":["h4g6","e5e4","g6f4"],"rating":741,"themes":["crushing","endgame","fork","master"]},{"id":171,"theme":"skewer","fen":"3k4/3p3p/1N6/4Pp2/p4P2/2R2K2/2P4r/8 b - - 0 40","solution":["h2h3","f3g2","h3c3"],"rating":741,"themes":["crushing","endgame","master","short"]},{"id":172,"theme":"fork","fen":"8/5ppk/7p/2b5/8/3r2P1/P5BP/B4K2 w - - 0 31","solution":["g2e4","h7g8","e4d3"],"rating":742,"themes":["advantage","endgame","fork","short"]},{"id":173,"theme":"hanging_piece","fen":"8/5PK1/6q1/3p4/3kp3/8/8/8 w - - 0 69","solution":["g7g6","e4e3","f7f8q"],"rating":743,"themes":["advancedPawn","crushing","endgame","hangingPiece"]},{"id":174,"theme":"promotion","fen":"3r4/p2P2k1/1p2P3/7p/8/8/4n1PP/5K2 w - - 1 44","solution":["e6e7","d8d7","e7e8q"],"rating":754,"themes":["advancedPawn","advantage","endgame","promotion"]},{"id":175,"theme":"mate_in_1","fen":"r1b3k1/pp1n1rpp/2p5/3p1p2/3P4/1QN2P1n/PP1NB1PP/2R3RK b - - 0 19","solution":["h3f2"],"rating":755,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":176,"theme":"mate_in_1","fen":"8/1q3p1k/R4Q1p/6p1/8/6PP/1P3P1K/4r3 b - - 4 40","solution":["b7h1"],"rating":759,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":177,"theme":"discovered_attack","fen":"8/p3r1k1/1p1qPr1p/2p1R1p1/3p2P1/1P1P2Q1/P6K/4R3 w - - 0 34","solution":["e5g5","h6g5","g3d6"],"rating":759,"themes":["crushing","discoveredAttack","endgame","master"]},{"id":178,"theme":"mate_in_1","fen":"r3k1nr/p1pp1p1p/b7/2b1P3/1p2P1pq/1B2B3/PPP3PP/RN1Q2KR b kq - 3 12","solution":["c5e3"],"rating":763,"themes":["hangingPiece","kingsideAttack","mate","mateIn1"]},{"id":179,"theme":"mate_in_1","fen":"2r5/1R5p/5Rp1/6Pk/5P2/p5K1/r6P/8 w - - 1 43","solution":["b7h7"],"rating":764,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":180,"theme":"discovered_attack","fen":"2r4k/5pb1/p4n2/r5Np/4PP1P/1K3PR1/8/6R1 w - - 5 37","solution":["g5f7","h8g8","g3g7"],"rating":765,"themes":["crushing","discoveredAttack","master","middlegame"]},{"id":181,"theme":"mate_in_2","fen":"r7/pp1kn3/4p1pq/2ppQ3/3P4/8/PPP2PPP/RN4K1 b - - 3 17","solution":["h6c1","e5e1","c1e1"],"rating":766,"themes":["endgame","kingsideAttack","mate","mateIn2"]},{"id":182,"theme":"mate_in_1","fen":"r1b1k2r/1p3pB1/p3p3/7p/P2P2n1/6P1/1q3PBP/2RQ1K1R b kq - 0 17","solution":["b2f2"],"rating":768,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":183,"theme":"tactic","fen":"2k3rr/pppq1p2/2np1p2/4p3/2B1P3/3P1bRP/PPPQ1P2/2K3R1 w - - 0 18","solution":["g3g8","h8g8","g1g8"],"rating":772,"themes":["advantage","middlegame","short"]},{"id":184,"theme":"skewer","fen":"7R/8/5p2/r4k2/8/8/5KP1/8 w - - 0 57","solution":["h8h5","f5e4","h5a5"],"rating":774,"themes":["crushing","endgame","rookEndgame","short"]},{"id":185,"theme":"mate_in_1","fen":"R7/7k/6p1/3rBp1p/4p3/6PP/4K1n1/8 w - - 2 40","solution":["a8h8"],"rating":775,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":186,"theme":"mate_in_1","fen":"r1b1k2r/p1pp1ppp/2p5/2B5/4P1nq/3B4/PPP2PPP/RN1Q1RK1 b kq - 0 9","solution":["h4h2"],"rating":776,"themes":["kingsideAttack","mate","mateIn1","oneMove"]},{"id":187,"theme":"rook_endgame","fen":"8/5ppp/2pk4/8/2R3PP/4KP2/P7/3r4 w - - 1 35","solution":["c4d4","d1d4","e3d4"],"rating":778,"themes":["crushing","endgame","master","rookEndgame"]},{"id":188,"theme":"mate_in_1","fen":"2r2rk1/pp2n1b1/1qn1p2p/3Pp1pP/8/P1NP2P1/1P3PB1/R1BQK2R b KQ - 0 19","solution":["b6f2"],"rating":779,"themes":["attackingF2F7","master","masterVsMaster","mate"]},{"id":189,"theme":"mate_in_1","fen":"6k1/3r1npp/1p2Q3/8/1p3q2/1P3P1P/2n3P1/7K w - - 0 37","solution":["e6e8"],"rating":783,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":190,"theme":"tactic","fen":"2r2r2/pp5k/3q2np/2pPbb2/2P1Bp2/1PN4P/P1Q2B2/3RR1K1 w - - 4 35","solution":["e4f5","f8f5","c2f5"],"rating":784,"themes":["crushing","master","middlegame","short"]},{"id":191,"theme":"mate_in_1","fen":"1r1q3r/ppkbb1n1/4p2p/1B1pP1p1/6P1/2N2N2/PPQ2P1P/R3K2R w KQ - 1 20","solution":["c3d5"],"rating":784,"themes":["discoveredCheck","doubleCheck","epauletteMate","mate"]},{"id":192,"theme":"mate_in_2","fen":"r1b1r1k1/pp3ppp/1q1p4/3Q4/2B5/4P2P/PP1K1PP1/n1B3NR w - - 1 16","solution":["d5f7","g8h8","f7e8"],"rating":786,"themes":["backRankMate","fork","mate","mateIn2"]},{"id":193,"theme":"mate_in_1","fen":"r1b2rk1/1ppp1ppp/p1B5/2bQP3/8/8/PPP2qPP/RNB1R2K b - - 1 14","solution":["f2e1"],"rating":788,"themes":["backRankMate","hangingPiece","mate","mateIn1"]},{"id":194,"theme":"fork","fen":"1r4k1/p1b2ppp/1p3p2/2p1n3/5BqP/PP4P1/2P2PQ1/R3R1K1 b - - 6 31","solution":["e5f3","g2f3","g4f3"],"rating":789,"themes":["advantage","fork","middlegame","short"]},{"id":195,"theme":"mate_in_1","fen":"N4k1r/1p2ppbp/p2p2p1/Q1pP3n/2P1P3/2NB1n1R/PP1q4/1K6 w - - 0 24","solution":["a5d8"],"rating":789,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":196,"theme":"mate_in_2","fen":"2r3k1/B4pp1/3p3p/pR2p3/4P1n1/P2P3P/2r2PP1/1R4K1 b - - 0 26","solution":["c2c1","b1c1","c8c1"],"rating":795,"themes":["endgame","mate","mateIn2","short"]},{"id":197,"theme":"fork","fen":"R7/p2r2kp/1p4p1/1Pp5/2P2n2/P4P2/6P1/2R3K1 b - - 3 43","solution":["f4e2","g1f2","e2c1"],"rating":795,"themes":["advantage","endgame","fork","short"]},{"id":198,"theme":"discovered_attack","fen":"2r3k1/5p1p/2br2p1/3Bp3/pp2P1P1/7P/PPPR1K2/4R3 w - - 1 27","solution":["d5f7","g8f7","d2d6"],"rating":797,"themes":["advantage","discoveredAttack","endgame","kingsideAttack"]},{"id":199,"theme":"fork","fen":"2Q5/4k2q/p6p/3p2p1/1Pp5/P7/1B4PP/6K1 b - - 0 49","solution":["h7b1","g1f2","b1b2"],"rating":797,"themes":["crushing","endgame","fork","short"]},{"id":200,"theme":"tactic","fen":"rn1q2r1/p4k2/1b2bQ1p/1p1p2p1/1P6/P2P3P/BBP2PP1/RN3RK1 b - - 0 15","solution":["d8f6","b2f6","f7f6"],"rating":799,"themes":["advantage","middlegame","short"]},{"id":201,"theme":"discovered_attack","fen":"7q/3k2r1/p1p1pQ2/3p3p/3Pb3/2P3P1/PP3P1P/R3R1K1 b - - 1 24","solution":["g7g3","f2g3","h8f6"],"rating":800,"themes":["advantage","discoveredAttack","endgame","short"]},{"id":202,"theme":"mate_in_1","fen":"r2q1rk1/2p2ppp/p7/1pp2N2/8/2N3Q1/P1P2PPP/b4RK1 w - - 0 19","solution":["g3g7"],"rating":802,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":203,"theme":"tactic","fen":"8/8/8/R2K4/1p5r/1P6/Pk6/8 b - - 6 67","solution":["h4h5","d5c4","h5a5"],"rating":804,"themes":["endgame","master"]},{"id":204,"theme":"mate_in_1","fen":"rnb2q2/pp1pp3/2pk1r2/6Q1/3P4/4P3/PPP2PP1/RNB1K3 w Q - 1 17","solution":["g5e5"],"rating":807,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":205,"theme":"discovered_attack","fen":"r2q2k1/5Npb/p2b1p1p/1p1Q1P2/2pP2P1/2P1R2P/PP1B4/R5K1 b - - 0 25","solution":["d6h2","g1h2","d8d5"],"rating":809,"themes":["advantage","discoveredAttack","middlegame","short"]},{"id":206,"theme":"mate_in_1","fen":"r2qb1k1/1pp1n1pN/p3P2p/2bpn3/P7/2NBP3/1P1B2PP/R4QK1 w - - 3 18","solution":["f1f8"],"rating":810,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":207,"theme":"discovered_attack","fen":"r4rk1/pppb1pp1/2n1p2p/8/3P2PP/2QB1q2/PPP2P2/2KR3R w - - 0 14","solution":["d3h7","g8h7","c3f3"],"rating":813,"themes":["crushing","discoveredAttack","middlegame","short"]},{"id":208,"theme":"mate_in_2","fen":"3r4/R7/6p1/6k1/3n4/5P2/PPP2P2/2K5 b - - 0 25","solution":["d4e2","c1b1","d8d1"],"rating":814,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":209,"theme":"fork","fen":"4kb1r/2p1pppp/8/1p1n4/1q6/4B3/3N1PPP/Q3K2R w Kk - 0 20","solution":["a1a8","e8d7","a8d5"],"rating":815,"themes":["advantage","fork","middlegame","short"]},{"id":210,"theme":"tactic","fen":"8/8/1k3b2/pp3P2/1p2K3/3R4/8/8 w - - 3 48","solution":["d3d6","b6c5","d6f6"],"rating":817,"themes":["endgame","master"]},{"id":211,"theme":"skewer","fen":"4k2r/ppR2ppp/2b1p3/3pP3/6P1/P7/3K1P1P/8 w k - 1 24","solution":["c7c8","e8e7","c8h8"],"rating":819,"themes":["advantage","endgame","short","skewer"]},{"id":212,"theme":"fork","fen":"7r/1pk5/p4r1p/3p3R/1N6/2P5/PP1K4/8 w - - 2 35","solution":["b4d5","c7c6","d5f6"],"rating":826,"themes":["advantage","endgame","fork","short"]},{"id":213,"theme":"mate_in_1","fen":"rn2k2r/pp3ppp/2pbp3/6N1/3P4/4B2q/PPP1BP2/R2Q1RK1 b kq - 1 12","solution":["h3h2"],"rating":826,"themes":["mate","mateIn1","oneMove","opening"]},{"id":214,"theme":"fork","fen":"5rk1/5p2/p2b2p1/3P3n/1q6/3BQ2P/1PP3P1/3R1R1K b - - 2 25","solution":["h5g3","e3g3","d6g3"],"rating":831,"themes":["advantage","fork","middlegame","short"]},{"id":215,"theme":"mate_in_2","fen":"6k1/6pp/p4R2/1p2p3/6Q1/PqPr4/1P4PP/7K w - - 0 31","solution":["g4c8","d3d8","c8d8"],"rating":834,"themes":["endgame","mate","mateIn2","short"]},{"id":216,"theme":"mate_in_1","fen":"r1bqr2Q/ppppk1p1/2n5/2bnP1N1/3p1P2/8/PPP3PP/RNB2RK1 w - - 7 15","solution":["h8g7"],"rating":835,"themes":["mate","mateIn1","oneMove","opening"]},{"id":217,"theme":"mate_in_1","fen":"3q1knr/1b3rb1/p2Np1pp/1P2P3/3p4/1B6/PP4PP/R1B2RK1 w - - 0 19","solution":["f1f7"],"rating":835,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":218,"theme":"mate_in_2","fen":"6k1/5ppp/p7/7q/P7/1PQ2P2/3r1P1P/5K2 w - - 0 31","solution":["c3c8","d2d8","c8d8"],"rating":836,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":219,"theme":"mate_in_1","fen":"2kr3r/Qppnpb2/pq3p2/3P1B2/6P1/7P/PPP1P3/2KR3R w - - 5 24","solution":["a7a8"],"rating":840,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":220,"theme":"mate_in_1","fen":"rn2kb1r/pp3pp1/2p1p3/4q3/4Q3/8/PPPN1PPP/R1B2RK1 b kq - 0 12","solution":["e5h2"],"rating":841,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":221,"theme":"fork","fen":"r6r/1p2kppp/pq6/4n3/8/2NB4/PPP3PP/RNBK4 w - - 0 22","solution":["c3d5","e7e6","d5b6"],"rating":841,"themes":["advantage","fork","middlegame","short"]},{"id":222,"theme":"mate_in_1","fen":"r4rk1/pp3ppp/5q2/2Pp4/3Np3/2PnP1P1/PP1N4/R2Q2KR b - - 2 18","solution":["f6f2"],"rating":845,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":223,"theme":"mate_in_1","fen":"r2q1rk1/ppp2p1p/3p1ppQ/6N1/2PP2b1/6P1/PP2PPBP/n4K1R w - - 0 15","solution":["h6h7"],"rating":845,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":224,"theme":"discovered_attack","fen":"3r1r2/p1p3pk/2Qbq2p/5p2/3Pp3/2P4P/PP1N1PP1/R3R1K1 b - - 0 19","solution":["d6h2","g1h2","e6c6"],"rating":849,"themes":["crushing","discoveredAttack","middlegame","short"]},{"id":225,"theme":"mate_in_1","fen":"6rk/1p5p/2pN4/1p1pPp2/8/7P/PP4RK/5r2 w - - 0 33","solution":["d6f7"],"rating":850,"themes":["cornerMate","endgame","mate","mateIn1"]},{"id":226,"theme":"skewer","fen":"8/8/Pk6/1r6/8/3K2R1/8/8 b - - 0 55","solution":["b5b3","d3e4","b3g3"],"rating":852,"themes":["crushing","endgame","rookEndgame","short"]},{"id":227,"theme":"mate_in_1","fen":"1r4k1/5pb1/6p1/p4p2/8/2Q2P2/P4P2/K5RR b - - 0 28","solution":["g7c3"],"rating":852,"themes":["endgame","master","mate","mateIn1"]},{"id":228,"theme":"zugzwang","fen":"8/6k1/7p/1p1p1p1P/1P1P1K2/2P5/8/8 b - - 1 41","solution":["g7f6","f4e3","f6g5"],"rating":853,"themes":["crushing","endgame","master","pawnEndgame"]},{"id":229,"theme":"mate_in_3","fen":"7k/6rp/p4p2/5P2/3p3P/P5Rq/2r2P2/1R4K1 w - - 0 34","solution":["b1b8","c2c8","b8c8","g7g8","g3g8"],"rating":854,"themes":["endgame","long","mate","mateIn3"]},{"id":230,"theme":"skewer","fen":"8/8/5p2/p6R/r4k2/2K5/8/8 w - - 0 46","solution":["h5h4","f4e3","h4a4"],"rating":854,"themes":["crushing","endgame","master","rookEndgame"]},{"id":231,"theme":"mate_in_1","fen":"r2qkb1r/1p2pppp/p4n2/3pN2Q/5B2/2N4P/PP1K1PP1/n6R w kq - 0 13","solution":["h5f7"],"rating":854,"themes":["attackingF2F7","mate","mateIn1","middlegame"]},{"id":232,"theme":"fork","fen":"8/1p6/p1b5/2P4K/1P3k2/8/8/3R4 b - - 6 57","solution":["c6f3","h5g6","f3d1"],"rating":854,"themes":["crushing","endgame","fork","short"]},{"id":233,"theme":"fork","fen":"6k1/pp1q1p2/2pb2p1/6p1/3PNn2/3B1P2/PP2QP1P/6K1 w - - 8 28","solution":["e4f6","g8g7","f6d7","f4e2","d3e2"],"rating":859,"themes":["advantage","endgame","fork","long"]},{"id":234,"theme":"mate_in_2","fen":"6k1/2p2ppp/1p6/p7/P7/1Pqp2PP/2P3Q1/1K1Rr3 w - - 2 33","solution":["g2a8","e1e8","a8e8"],"rating":861,"themes":["endgame","mate","mateIn2","short"]},{"id":235,"theme":"fork","fen":"8/2p5/pk4b1/8/PP1KN2r/8/5R2/8 w - - 3 46","solution":["f2f6","b6a7","f6g6"],"rating":864,"themes":["advantage","endgame","fork","short"]},{"id":236,"theme":"mate_in_1","fen":"1n1q3k/1p3p1p/p3pPrQ/P2pP1p1/2rP2P1/2N4R/1P5P/R5K1 w - - 2 25","solution":["h6h7"],"rating":865,"themes":["kingsideAttack","master","mate","mateIn1"]},{"id":237,"theme":"mate_in_2","fen":"5rk1/p5p1/1p6/3p4/4pPb1/2P4q/PPB1NK2/R5Q1 b - - 7 29","solution":["h3f3","f2e1","f3e2"],"rating":865,"themes":["mate","mateIn2","middlegame","short"]},{"id":238,"theme":"fork","fen":"r3r1k1/pp2pp1p/6pP/2p1R3/2Pn4/2N5/PP1P1P1K/R1B5 b - - 2 20","solution":["d4f3","h2g2","f3e5"],"rating":866,"themes":["advantage","fork","middlegame","short"]},{"id":239,"theme":"mate_in_1","fen":"r5rk/ppqnbp2/2pp3p/3Pp2n/2P1P3/2NB1P1P/PP1Q1PRK/R7 w - - 0 17","solution":["d2h6"],"rating":867,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":240,"theme":"mate_in_1","fen":"8/ppR3pk/7p/3P1pbq/1P2p3/P3P3/5PQ1/5K2 b - - 8 33","solution":["h5d1"],"rating":870,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":241,"theme":"mate_in_1","fen":"1r2k2r/5p2/4p3/1pB2b2/p1p2np1/2N5/1P3PBP/3RR1K1 w k - 0 27","solution":["g2c6"],"rating":870,"themes":["mate","mateIn1","middlegame","morphysMate"]},{"id":242,"theme":"fork","fen":"rn2r1k1/1pq2n1p/p2p2p1/2pP1b2/P3NPPB/2P4P/2Q1B1K1/R4R2 b - - 0 20","solution":["f5e4","c2e4","e8e4"],"rating":874,"themes":["advantage","fork","middlegame","short"]},{"id":243,"theme":"mate_in_1","fen":"5r2/p2n3k/4p1R1/2p1q1P1/1pp5/1P1r4/P3Q1K1/8 w - - 1 38","solution":["e2h5"],"rating":878,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":244,"theme":"mate_in_1","fen":"r6k/1p1Pp1bp/p5p1/6B1/Q7/2N4n/PP4PP/6RK b - - 0 26","solution":["h3f2"],"rating":881,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":245,"theme":"rook_endgame","fen":"8/8/8/4k3/5RK1/8/8/r7 b - - 24 95","solution":["a1g1","g4f3","g1f1","f3e3","f1f4"],"rating":884,"themes":["crushing","endgame","long","rookEndgame"]},{"id":246,"theme":"mate_in_1","fen":"8/3p1pkp/R4n2/5PK1/3r2P1/8/7P/4R3 b - - 8 44","solution":["d4g4"],"rating":885,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":247,"theme":"mate_in_2","fen":"1R6/4kp2/2p1b1p1/1P3p1p/5P1P/3BBKP1/r7/8 b - - 0 43","solution":["e6d5","d3e4","f5e4"],"rating":886,"themes":["endgame","mate","mateIn2","short"]},{"id":248,"theme":"tactic","fen":"1r4k1/1q5p/4b3/2p1p1P1/p2pPn2/P2N1PN1/2P5/KR5Q b - - 5 33","solution":["b7b1","h1b1","b8b1"],"rating":886,"themes":["crushing","middlegame","short"]},{"id":249,"theme":"mate_in_2","fen":"8/p1R4R/4p3/4k3/8/r3P3/1r4PP/6K1 b - - 0 27","solution":["a3a1","c7c1","a1c1"],"rating":891,"themes":["endgame","mate","mateIn2","rookEndgame"]},{"id":250,"theme":"discovered_attack","fen":"2r5/4rpkp/p1pR2p1/4n3/N7/1P6/P1P2PPP/4R1K1 b - - 3 22","solution":["e5f3","g2f3","e7e1"],"rating":893,"themes":["advantage","discoveredAttack","endgame","short"]},{"id":251,"theme":"mate_in_1","fen":"r4rk1/p4ppp/2p5/6q1/1P1NPn2/P4P2/5P1P/R2Q1R1K b - - 2 20","solution":["g5g2"],"rating":900,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":252,"theme":"tactic","fen":"4r1k1/1p3pb1/p1p3pp/2Bn1b2/2QP4/1P3NP1/P3qPBP/4R1K1 b - - 12 27","solution":["e2e1","f3e1","e8e1"],"rating":904,"themes":["crushing","kingsideAttack","master","middlegame"]},{"id":253,"theme":"mate_in_1","fen":"r2q1rk1/p4pbp/1p2p3/4pQN1/8/7P/PPP2PP1/R4RK1 w - - 0 18","solution":["f5h7"],"rating":905,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":254,"theme":"tactic","fen":"1r2r1k1/1p3p2/p3R1p1/3pQ3/1P1P3P/2Pq2P1/1n3PK1/2R5 w - - 3 34","solution":["e6e8","b8e8","e5e8"],"rating":907,"themes":["crushing","kingsideAttack","middlegame","short"]},{"id":255,"theme":"mate_in_1","fen":"rn1q1bB1/p1ppk3/1p2ppQr/8/3P1B2/4P3/PPP2P1P/RN2K1Nb w Q - 1 10","solution":["g6f7"],"rating":907,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":256,"theme":"mate_in_1","fen":"8/p6r/2p5/k2bbp2/8/3R1P2/3p1KP1/1R6 w - - 0 46","solution":["d3a3"],"rating":912,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":257,"theme":"mate_in_1","fen":"rn1qkb1r/pb1pnp1p/6p1/1ppNP3/2P5/1P6/P4PPP/R1BQKBNR w KQkq - 0 9","solution":["d5f6"],"rating":912,"themes":["mate","mateIn1","oneMove","opening"]},{"id":258,"theme":"fork","fen":"1b4k1/5ppp/1q4b1/1B1Q2n1/1B1N2P1/2P4P/5PK1/8 b - - 0 33","solution":["g6e4","d5e4","g5e4"],"rating":912,"themes":["crushing","fork","middlegame","short"]},{"id":259,"theme":"tactic","fen":"8/p7/1p4k1/5p2/4NP1p/P5pP/1P4P1/5K2 b - - 0 44","solution":["f5e4","f1e2","g6f5"],"rating":915,"themes":["crushing","endgame","short"]},{"id":260,"theme":"mate_in_1","fen":"r6k/p1p4p/1p1qpr2/3b2RP/6P1/1PB5/PKP5/8 w - - 0 29","solution":["c3f6"],"rating":916,"themes":["endgame","mate","mateIn1","morphysMate"]},{"id":261,"theme":"mate_in_2","fen":"r1b2r2/1pp2ppk/1b1p4/p3p2q/PPB1P1NP/2PP2Q1/3NnP2/R5RK w - - 3 21","solution":["g4f6","g7f6","g3g7"],"rating":921,"themes":["clearance","mate","mateIn2","middlegame"]},{"id":262,"theme":"mate_in_1","fen":"1r2r1k1/5pB1/p3pPp1/3b4/4q3/2P5/P2Q2PR/2KR4 w - - 2 28","solution":["h2h8"],"rating":925,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":263,"theme":"mate_in_2","fen":"r3r3/ppp2kpp/8/8/2PBn3/1PP5/P4PPP/R2B1K2 b - - 2 16","solution":["e4d2","f1g1","e8e1"],"rating":927,"themes":["backRankMate","endgame","mate","mateIn2"]},{"id":264,"theme":"mate_in_1","fen":"4r2k/1pQ4p/2p5/4p3/3nPq2/2N3RP/PP6/6K1 w - - 1 32","solution":["c7g7"],"rating":937,"themes":["endgame","master","mate","mateIn1"]},{"id":265,"theme":"tactic","fen":"r4rk1/pp3p1p/4n1p1/1BP3q1/3PpP2/8/P2Q1PPP/2R2RK1 b - - 0 21","solution":["e6f4","d2f4","g5f4"],"rating":938,"themes":["crushing","middlegame","short"]},{"id":266,"theme":"mate_in_2","fen":"r3r1k1/1bp2p2/p4p2/2p1p2R/P3pb2/1P1P3Q/KBP2P2/6q1 w - - 0 27","solution":["h5h8","g8g7","h3h7"],"rating":939,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":267,"theme":"mate_in_1","fen":"8/3N2kp/1p1Qppp1/pP1n4/3q4/7P/5PPK/8 w - - 0 30","solution":["d6f8"],"rating":942,"themes":["endgame","master","mate","mateIn1"]},{"id":268,"theme":"mate_in_1","fen":"rk3qnr/ppp2Qbp/2n2p2/3p1Bp1/3P4/2P1P1B1/PP3PPP/1R3RK1 w - - 5 17","solution":["g3c7"],"rating":946,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":269,"theme":"pawn_endgame","fen":"8/8/8/8/pK2k3/Pp6/1P6/8 b - - 3 46","solution":["e4d3","b4a4","d3c2","a4b4","c2b2"],"rating":948,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":270,"theme":"mate_in_2","fen":"8/5Q2/6pk/2p3r1/2P3q1/3r4/P4RP1/6K1 w - - 0 47","solution":["f7f8","h6h5","f8h8"],"rating":950,"themes":["endgame","mate","mateIn2","short"]},{"id":271,"theme":"tactic","fen":"2r3k1/pp5p/4R1p1/2qp4/5Q2/PB1b2P1/1P3PP1/K7 b - - 0 31","solution":["c5c1","f4c1","c8c1","a1a2","d3b1"],"rating":950,"themes":["crushing","endgame","long"]},{"id":272,"theme":"mate_in_3","fen":"r4r1k/p1R1R2p/6p1/3p4/3P4/8/Pq3PPP/3Q2K1 b - - 1 23","solution":["b2f2","g1h1","f2f1","d1f1","f8f1"],"rating":960,"themes":["backRankMate","endgame","long","mate"]},{"id":273,"theme":"mate_in_1","fen":"8/1p6/p6R/3kp2p/P7/1PPKBP1r/6r1/8 w - - 3 46","solution":["c3c4"],"rating":960,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":274,"theme":"mate_in_2","fen":"5rk1/5ppp/5q2/8/2RP4/2Q5/r4PPP/3R2K1 b - - 1 24","solution":["f6f2","g1h1","f2g2"],"rating":961,"themes":["endgame","mate","mateIn2","short"]},{"id":275,"theme":"rook_endgame","fen":"8/6pk/7p/p7/Rr1K4/5PP1/6P1/8 w - - 2 45","solution":["a4b4","a5b4","d4c4","h7g6","c4b4"],"rating":962,"themes":["crushing","endgame","long","rookEndgame"]},{"id":276,"theme":"mate_in_1","fen":"r3k2r/2p2ppp/p2p4/1p1Np1q1/3bP3/1B1PBP1b/PPP2K2/R3QR2 b kq - 5 19","solution":["g5g2"],"rating":963,"themes":["epauletteMate","master","mate","mateIn1"]},{"id":277,"theme":"mate_in_2","fen":"r1q2Nk1/pb2bppp/1p6/2p5/2P5/4P3/PPQnBPPP/3R2K1 w - - 0 17","solution":["c2h7","g8f8","h7h8"],"rating":964,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":278,"theme":"fork","fen":"6k1/5p2/6p1/1P4r1/2P4p/3QpB1P/6PK/4q3 w - - 0 36","solution":["d3d8","g8g7","d8g5"],"rating":966,"themes":["advantage","endgame","fork","master"]},{"id":279,"theme":"mate_in_1","fen":"3r1rk1/1b3ppn/p1p2n1p/1p5N/6QP/1Pq3P1/P5BK/R7 w - - 0 30","solution":["g4g7"],"rating":968,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":280,"theme":"mate_in_2","fen":"8/3Q3p/6pk/5n2/8/3R4/5qBP/7K b - - 1 37","solution":["f2e1","g2f1","e1f1"],"rating":970,"themes":["endgame","mate","mateIn2","short"]},{"id":281,"theme":"sacrifice","fen":"2kr3r/1p3p2/1np5/p1Np4/Pq1P4/3BP2b/1PQ2P2/R4K1R w - - 0 24","solution":["h1h3","h8h3","d3f5"],"rating":971,"themes":["advantage","master","middlegame","sacrifice"]},{"id":282,"theme":"mate_in_2","fen":"r1r3k1/5p2/p3p1p1/1p2qnNQ/7p/3P3P/5PP1/RR4K1 w - - 0 26","solution":["h5h7","g8f8","h7f7"],"rating":972,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":283,"theme":"discovered_attack","fen":"r1b2rk1/ppp2ppp/8/8/3q1n2/3B4/PPP2PPP/R2QR1K1 w - - 0 14","solution":["d3h7","g8h7","d1d4"],"rating":973,"themes":["advantage","discoveredAttack","kingsideAttack","middlegame"]},{"id":284,"theme":"mate_in_2","fen":"4rk2/pR3p1p/3p2p1/3P4/8/1Nb5/R1P1B2P/3K1Nr1 b - - 4 30","solution":["g1f1","e2f1","e8e1"],"rating":975,"themes":["mate","mateIn2","middlegame","operaMate"]},{"id":285,"theme":"mate_in_2","fen":"r1b2rk1/p3qppp/2p1p3/1p5Q/2PPNn2/1P1B4/P4PPP/R3K2R w KQ - 1 20","solution":["e4f6","g8h8","h5h7"],"rating":977,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":286,"theme":"mate_in_1","fen":"r4b1k/1r5n/5q2/p1pB1p1p/2P2P2/1P5P/P7/2Q3RK w - - 0 37","solution":["g1g8"],"rating":979,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":287,"theme":"rook_endgame","fen":"6k1/1p4pp/2r1pp2/8/6P1/P1R4P/4KP2/8 w - - 0 39","solution":["c3c6","b7c6","a3a4","g8f7","a4a5"],"rating":980,"themes":["crushing","defensiveMove","endgame","long"]},{"id":288,"theme":"mate_in_1","fen":"3r2k1/1R3p2/6B1/4Q2p/8/4PP2/4KP2/7q b - - 0 30","solution":["h1d1"],"rating":982,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":289,"theme":"fork","fen":"8/6p1/8/1P4k1/3N4/p7/7r/1K6 w - - 0 53","solution":["d4f3","g5f4","f3h2"],"rating":984,"themes":["crushing","endgame","fork","short"]},{"id":290,"theme":"deflection","fen":"5r2/R4Pk1/5n2/2n2K1P/8/1P2P3/P5P1/8 w - - 3 43","solution":["h5h6","g7h6","f5f6"],"rating":985,"themes":["advantage","deflection","endgame","short"]},{"id":291,"theme":"mate_in_2","fen":"2b2r1k/1r2B1p1/4p1Qp/p2pPp2/8/2P1P1R1/2p3PP/R6K b - - 0 28","solution":["b7b1","a1b1","c2b1q"],"rating":986,"themes":["advancedPawn","backRankMate","mate","mateIn2"]},{"id":292,"theme":"fork","fen":"8/R3p1r1/3N1k2/2pP4/7K/4nP2/8/8 w - - 1 44","solution":["d6e8","f6f7","e8g7"],"rating":988,"themes":["advantage","endgame","fork","master"]},{"id":293,"theme":"mate_in_1","fen":"2b1k3/3p4/2qP1Q1p/1p6/1p4P1/8/5K1P/8 w - - 1 34","solution":["f6e7"],"rating":988,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":294,"theme":"fork","fen":"r1b1kbnr/ppqppp1p/6p1/1Bp5/4P3/3PBN2/PPP2PPP/R2QK2R b KQkq - 3 8","solution":["c7a5","d1d2","a5b5"],"rating":989,"themes":["advantage","fork","opening","short"]},{"id":295,"theme":"fork","fen":"8/6p1/4p1p1/3k2P1/b1N2P2/1pK3P1/8/8 w - - 6 45","solution":["c4b6","d5c6","b6a4"],"rating":991,"themes":["crushing","endgame","fork","short"]},{"id":296,"theme":"tactic","fen":"8/6p1/p2P2k1/Pb2QBp1/4p1n1/B3Pq2/5P2/6K1 b - - 8 43","solution":["f3f5","e5f5","g6f5"],"rating":992,"themes":["crushing","endgame","master","short"]},{"id":297,"theme":"mate_in_2","fen":"r1kq3r/pp2BQp1/4p3/2p5/3n4/P1P5/1P3PPP/RN1R2K1 b - - 0 17","solution":["d4e2","g1f1","d8d1"],"rating":992,"themes":["discoveredAttack","kingsideAttack","mate","mateIn2"]},{"id":298,"theme":"pin","fen":"4rrk1/ppp3p1/2bp1p2/4n3/2P1N3/2K1P1RP/PP2B3/5R2 w - - 2 27","solution":["e4f6","f8f6","f1f6"],"rating":994,"themes":["advantage","kingsideAttack","middlegame","pin"]},{"id":299,"theme":"fork","fen":"2k3r1/pp3R2/3q2r1/2pP3p/2P5/3P4/P3Q1PP/1R4K1 b - - 0 23","solution":["g6g2","e2g2","g8g2","g1g2","d6g6"],"rating":994,"themes":["attraction","crushing","endgame","fork"]},{"id":300,"theme":"mate_in_1","fen":"r3k2r/pp3pp1/2p1p3/3p3p/8/2BPnNq1/PPP1P1B1/R3QRK1 b kq - 5 16","solution":["g3g2"],"rating":995,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":301,"theme":"mate_in_1","fen":"r1k3nr/pppn1Q2/4N2b/3pP2p/3P2p1/2P5/PPK3Pq/RNB5 w - - 3 19","solution":["f7e8"],"rating":1010,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":302,"theme":"tactic","fen":"8/p4p2/4p1pk/5q2/2PQn3/P3P3/5PP1/6K1 w - - 3 40","solution":["d4h8","h6g5","f2f4","f5f4","e3f4"],"rating":1013,"themes":["crushing","endgame","long"]},{"id":303,"theme":"tactic","fen":"r7/3q2kp/p5p1/3Np3/4P3/5Q1P/6PK/8 w - - 11 37","solution":["f3f6","g7g8","d5e7","d7e7","f6e7"],"rating":1016,"themes":["crushing","endgame","long"]},{"id":304,"theme":"mate_in_2","fen":"4r3/pp4k1/6p1/2pQ1p2/3n1B2/P2B2PK/1P2r3/1R6 b - - 0 32","solution":["e8h8","f4h6","h8h6"],"rating":1016,"themes":["mate","mateIn2","middlegame","short"]},{"id":305,"theme":"mate_in_2","fen":"1rbqk2r/6b1/p2pBpp1/n3p3/1p2P1Q1/1P2B3/P1P2PPP/R4RK1 w k - 0 20","solution":["g4g6","e8f8","g6f7"],"rating":1020,"themes":["fork","mate","mateIn2","middlegame"]},{"id":306,"theme":"mate_in_2","fen":"5rk1/2n2pbp/3N1p2/p1pPq3/6Q1/PP4R1/5PPP/R5K1 b - - 6 26","solution":["e5a1","g4d1","a1d1"],"rating":1023,"themes":["backRankMate","hangingPiece","mate","mateIn2"]},{"id":307,"theme":"tactic","fen":"6r1/1pp2p1k/p2p3p/2q2n2/5Qr1/P1B2RP1/1P5P/3R1K2 w - - 1 30","solution":["f4f5","c5f5","f3f5"],"rating":1024,"themes":["advantage","middlegame","short"]},{"id":308,"theme":"rook_endgame","fen":"8/5pk1/3K2p1/6r1/R1P5/8/8/8 w - - 0 50","solution":["c4c5","g5g1","c5c6"],"rating":1026,"themes":["crushing","endgame","quietMove","rookEndgame"]},{"id":309,"theme":"mate_in_2","fen":"r1n2r2/pp4kp/4p3/3pP1PQ/4n2P/2B1q3/PP3R2/R5K1 w - - 0 28","solution":["h5h6","g7h8","h6f8"],"rating":1028,"themes":["deflection","mate","mateIn2","middlegame"]},{"id":310,"theme":"mate_in_1","fen":"Nn3rk1/pb2b1pp/1p2p1q1/4Pp2/2pP1B2/2P1p2P/PP2QPPN/R4RK1 b - - 0 16","solution":["g6g2"],"rating":1034,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":311,"theme":"fork","fen":"8/6k1/2q2pp1/1pP1p3/4Pn2/5PQP/5P1K/2R5 b - - 3 31","solution":["f4e2","c1c2","e2g3"],"rating":1041,"themes":["advantage","endgame","fork","short"]},{"id":312,"theme":"skewer","fen":"6r1/p1k4r/3p4/5p2/1R2p2p/4P1P1/PP3PK1/7R w - - 2 34","solution":["h1c1","c7d7","b4b7","d7e6","b7h7"],"rating":1042,"themes":["crushing","endgame","long","rookEndgame"]},{"id":313,"theme":"hanging_piece","fen":"r2qkb1r/ppB2pp1/2n1p3/3p2p1/3Pn3/2P1P2P/PPQN1PP1/R3K1NR b KQkq - 0 10","solution":["d8c7","d2e4","d5e4"],"rating":1043,"themes":["advantage","hangingPiece","opening","short"]},{"id":314,"theme":"pin","fen":"r1bq1rk1/1p1pbppp/p3p3/4P3/3N1Qn1/1BN5/PPP2PPP/2KR3R b - - 2 13","solution":["e7g5","f4g5","d8g5"],"rating":1046,"themes":["advantage","middlegame","pin","short"]},{"id":315,"theme":"mate_in_2","fen":"5rk1/p3qpp1/1pN5/2p5/3r4/6Pb/P4P1P/3Q2K1 w - - 0 28","solution":["c6e7","g8h7","d1h5"],"rating":1046,"themes":["anastasiaMate","endgame","hangingPiece","mate"]},{"id":316,"theme":"mate_in_1","fen":"r3k3/1bqp1pp1/pp2p3/2B2P1r/2P1P1np/PPN5/2NQ2PP/R4RK1 b q - 0 19","solution":["c7h2"],"rating":1047,"themes":["kingsideAttack","mate","mateIn1","middlegame"]},{"id":317,"theme":"mate_in_2","fen":"3r3k/5p2/pq2pN1p/1p2Pn2/2p2PQ1/P7/2P3RP/2K5 w - - 7 30","solution":["g4g8","d8g8","g2g8"],"rating":1050,"themes":["arabianMate","endgame","mate","mateIn2"]},{"id":318,"theme":"pin","fen":"r2qr1k1/pp2bpp1/2n4p/3p4/8/1NB2B2/PPPQ1PPP/2KR3R b - - 0 16","solution":["e7g5","c1b1","g5d2"],"rating":1052,"themes":["advantage","middlegame","pin","short"]},{"id":319,"theme":"mate_in_1","fen":"8/8/8/8/5B2/5k2/7p/5K2 b - - 0 58","solution":["h2h1q"],"rating":1052,"themes":["advancedPawn","endgame","mate","mateIn1"]},{"id":320,"theme":"hanging_piece","fen":"5q1k/R6p/3p2N1/1p6/2b1P3/4QP2/2rN3P/2b4K b - - 0 34","solution":["h7g6","a7a8","f8a8"],"rating":1052,"themes":["advantage","hangingPiece","middlegame","short"]},{"id":321,"theme":"fork","fen":"r4rk1/pb1nbppp/1p6/2ppP3/3PN3/P2BBN1P/1PP2PP1/R3K2R b KQ - 0 14","solution":["d5e4","d3b5","e4f3"],"rating":1052,"themes":["advantage","fork","middlegame","short"]},{"id":322,"theme":"skewer","fen":"5BQ1/1p1q1p2/p1p1kb2/8/P2p4/1P6/2P4P/6K1 w - - 8 37","solution":["g8g4","e6e5","g4d7"],"rating":1053,"themes":["crushing","deflection","endgame","short"]},{"id":323,"theme":"mate_in_1","fen":"4r2r/pp1b3k/2n1N3/2b2p1q/3p1P1N/3P2Q1/PP5P/R4RK1 w - - 7 30","solution":["g3g7"],"rating":1053,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":324,"theme":"mate_in_2","fen":"r2qr1k1/5p2/p6Q/2p1PBB1/8/P7/2p3PP/2R4K b - - 3 31","solution":["d8d1","c1d1","c2d1q"],"rating":1054,"themes":["advancedPawn","backRankMate","mate","mateIn2"]},{"id":325,"theme":"fork","fen":"4k3/3p4/3np2p/1p1r2p1/1P2N3/2K3PP/8/R7 w - - 0 35","solution":["e4f6","e8e7","f6d5"],"rating":1055,"themes":["advantage","endgame","fork","master"]},{"id":326,"theme":"mate_in_2","fen":"rnb1k2r/ppp1qppp/8/2bP4/8/1PP1P1P1/PB3KBP/RN1Q2NR b kq - 0 10","solution":["e7e3","f2f1","e3f2"],"rating":1059,"themes":["mate","mateIn2","opening","short"]},{"id":327,"theme":"skewer","fen":"1Q6/8/8/1K6/3q4/4k2P/8/8 b - - 10 71","solution":["d4b2","b5c6","b2b8"],"rating":1060,"themes":["crushing","endgame","queenEndgame","short"]},{"id":328,"theme":"skewer","fen":"r1b2rk1/ppp2ppp/3p1n2/2q5/4P2P/2N2Q2/PPP2PP1/2KR1B1R b - h3 0 11","solution":["c8g4","f3f4","g4d1"],"rating":1061,"themes":["advantage","middlegame","short","skewer"]},{"id":329,"theme":"pawn_endgame","fen":"8/8/8/p3k3/Pp6/3K4/1P6/8 w - - 0 47","solution":["d3c4","e5e4","c4b5","e4d3","b5a5"],"rating":1063,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":330,"theme":"mate_in_2","fen":"8/R2b1k2/5Bp1/4P3/5P1K/1r6/7P/8 b - - 8 43","solution":["b3h3","h4g5","h3h5"],"rating":1071,"themes":["endgame","mate","mateIn2","pillsburysMate"]},{"id":331,"theme":"tactic","fen":"4rrk1/1ppn2pp/p5q1/2PP4/3Bpp2/P6P/2P1QPP1/R4KNR b - - 0 20","solution":["f4f3","g2f3","e4f3","g1f3","e8e2"],"rating":1075,"themes":["advantage","long","middlegame"]},{"id":332,"theme":"mate_in_2","fen":"2R5/p7/5kpp/4pp2/3N3P/1P1P1PK1/P4QP1/3q3r b - - 0 39","solution":["f5f4","g3g4","h6h5"],"rating":1077,"themes":["endgame","mate","mateIn2","short"]},{"id":333,"theme":"mate_in_2","fen":"r1b2k1r/ppN2ppp/3p4/8/8/7P/PPP2P1n/R1BQKB1q w Q - 2 15","solution":["d1d6","f8g8","d6d8"],"rating":1080,"themes":["backRankMate","mate","mateIn2","middlegame"]},{"id":334,"theme":"fork","fen":"2rq4/1b4k1/p5pp/1p2p3/5N2/1PQ5/P4PPP/R5K1 w - - 0 28","solution":["f4e6","g7f6","e6d8","c8c3","d8b7"],"rating":1082,"themes":["crushing","endgame","fork","long"]},{"id":335,"theme":"mate_in_1","fen":"8/5k2/6p1/4P3/8/1P1p4/1r1R4/3K4 b - - 0 55","solution":["b2b1"],"rating":1084,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":336,"theme":"tactic","fen":"3r1rk1/6pp/p4B2/1p4Q1/1bp1q3/4P1P1/PP3P1P/2RR2K1 b - - 2 25","solution":["d8d1","c1d1","f8f6"],"rating":1084,"themes":["advantage","master","middlegame","short"]},{"id":337,"theme":"tactic","fen":"8/8/3p1p1k/3PpPp1/npK1P1P1/5B2/8/8 w - - 1 54","solution":["c4b4","a4c5","b4b5"],"rating":1085,"themes":["crushing","endgame","master","short"]},{"id":338,"theme":"tactic","fen":"r5k1/ppp2rp1/6p1/3P4/2PB2q1/1P1Q1PP1/P7/2R2R1K b - - 0 30","solution":["g4h3","h1g1","h3g3"],"rating":1086,"themes":["crushing","kingsideAttack","middlegame","short"]},{"id":339,"theme":"fork","fen":"r1bqk2r/1pp2pp1/1b1p1n1p/p3p3/2BNP3/P1NPB3/1PPQ1PPP/2KR3R b kq - 0 10","solution":["e5d4","e3d4","b6d4"],"rating":1088,"themes":["advantage","fork","middlegame","short"]},{"id":340,"theme":"fork","fen":"3r1rk1/p7/1p1p3p/1Ppn2p1/P3N3/6PB/4PP1P/5RK1 w - - 1 28","solution":["h3e6","g8h8","e6d5"],"rating":1089,"themes":["advantage","endgame","fork","short"]},{"id":341,"theme":"deflection","fen":"8/8/4pppR/8/5k2/6rP/5K2/8 w - - 0 52","solution":["h6h4","f4e5","f2g3"],"rating":1089,"themes":["crushing","deflection","endgame","rookEndgame"]},{"id":342,"theme":"hanging_piece","fen":"r5k1/1p1n1ppp/2r1b3/p2B4/P2p4/1P1P3P/N1P1RPP1/4R1K1 b - - 0 24","solution":["e6d5","e2e8","a8e8"],"rating":1089,"themes":["advantage","hangingPiece","middlegame","short"]},{"id":343,"theme":"zugzwang","fen":"8/1p6/p1p1k3/P1P2p1p/1P2bPpP/2KB2P1/8/8 b - - 4 52","solution":["e4d3","c3d3","e6d5","d3e3","d5c4"],"rating":1090,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":344,"theme":"mate_in_3","fen":"r4rk1/pp2p2p/1q2b1p1/4Q3/8/8/PP3PPP/R1B1R1K1 b - - 0 17","solution":["b6f2","g1h1","f2f1","e1f1","f8f1"],"rating":1091,"themes":["backRankMate","long","mate","mateIn3"]},{"id":345,"theme":"mate_in_2","fen":"7k/p3P1p1/2Q4p/2P2p2/5P1n/q2r3P/4N1P1/6RK b - - 0 32","solution":["d3h3","g2h3","a3h3"],"rating":1092,"themes":["endgame","mate","mateIn2","sacrifice"]},{"id":346,"theme":"mate_in_1","fen":"8/6kp/1p4p1/3R4/2p1P3/2P2P2/2KR2PP/r5r1 b - - 4 31","solution":["a1a2"],"rating":1095,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":347,"theme":"mate_in_2","fen":"8/8/8/p4p1p/5P1k/5K2/Pr6/4b1R1 w - - 2 53","solution":["g1h1","b2h2","h1h2"],"rating":1095,"themes":["endgame","fork","mate","mateIn2"]},{"id":348,"theme":"discovered_attack","fen":"r3k2r/p1q2pp1/bp2p2p/2bnP3/4Q3/P4NP1/1P3PBP/RNR3K1 b kq - 4 18","solution":["c5f2","g1f2","c7c1"],"rating":1096,"themes":["crushing","discoveredAttack","middlegame","short"]},{"id":349,"theme":"mate_in_1","fen":"3qk3/r5Q1/p2p1b2/1p1P1b2/2P2P2/1P6/P7/2K4R w - - 0 32","solution":["h1h8"],"rating":1099,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":350,"theme":"knight_endgame","fen":"8/2p1k3/2p5/1p1nP3/1N1P1K2/P7/8/8 w - - 4 43","solution":["b4d5","c6d5","f4f5"],"rating":1099,"themes":["crushing","defensiveMove","endgame","knightEndgame"]},{"id":351,"theme":"pin","fen":"5k2/p4p2/1p1Pq3/4P1r1/4QRp1/1P2K1P1/P7/8 b - - 18 44","solution":["g5e5","e4e5","e6e5"],"rating":1104,"themes":["crushing","endgame","pin","short"]},{"id":352,"theme":"pin","fen":"1k5r/pp1rq2p/4pb1p/3p4/3N4/1R4P1/P3QPKP/R7 w - - 2 23","solution":["d4c6","b8a8","c6e7"],"rating":1107,"themes":["advantage","middlegame","pin","short"]},{"id":353,"theme":"mate_in_1","fen":"1rb4r/ppN1k1pp/2p5/4P3/2B5/4n3/PPP4P/2KR1R2 w - - 4 18","solution":["f1f7"],"rating":1109,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":354,"theme":"tactic","fen":"r4rk1/1pp2pp1/p5np/8/3P1NP1/P2QPq1P/1P3P2/R4RK1 b - - 2 19","solution":["g6f4","e3f4","f3d3"],"rating":1114,"themes":["capturingDefender","crushing","middlegame","short"]},{"id":355,"theme":"tactic","fen":"3r2k1/1Q3ppp/3q4/p1p1N3/P7/2Pp4/1P3PPP/4R1K1 b - - 1 35","solution":["d3d2","b7f7","g8h8","e1d1","d6e5"],"rating":1116,"themes":["advancedPawn","advantage","endgame","long"]},{"id":356,"theme":"mate_in_2","fen":"1r6/pp1k4/3p4/3P1R2/2P3r1/8/P1P4K/5R2 b - - 0 35","solution":["b8h8","f5h5","h8h5"],"rating":1117,"themes":["endgame","mate","mateIn2","rookEndgame"]},{"id":357,"theme":"tactic","fen":"3r3k/2p3p1/2p4p/8/1P6/P4Q1P/5PPq/4RK2 b - - 6 30","solution":["h2h1","f1e2","d8e8","f3e3","e8e3"],"rating":1118,"themes":["advantage","endgame","long"]},{"id":358,"theme":"pin","fen":"r4rk1/1pnq2pp/p1n1p3/3pP1Q1/4NB2/8/PPP3PP/3R1RK1 w - - 4 18","solution":["e4f6","f8f6","e5f6"],"rating":1121,"themes":["crushing","kingsideAttack","middlegame","pin"]},{"id":359,"theme":"fork","fen":"r1b1k2r/ppp2ppp/8/8/1b1qP3/2N5/PP2Q1PP/R1B1KB1R b KQkq - 0 11","solution":["b4c3","b2c3","d4c3","e2d2","c3a1"],"rating":1121,"themes":["crushing","exposedKing","fork","long"]},{"id":360,"theme":"knight_endgame","fen":"8/7p/5K2/4N3/8/6p1/7k/8 b - - 1 40","solution":["g3g2","e5f3","h2g3"],"rating":1122,"themes":["advancedPawn","crushing","defensiveMove","endgame"]},{"id":361,"theme":"mate_in_2","fen":"rn1q4/pbp2B1k/1p1p3b/3n3Q/8/8/PPP3PP/R6K w - - 0 20","solution":["h5g6","h7h8","g6h6"],"rating":1131,"themes":["deflection","mate","mateIn2","middlegame"]},{"id":362,"theme":"mate_in_2","fen":"r4r1k/7p/p1p3pQ/1p2q3/8/1P1P4/6R1/5R1K w - - 0 27","solution":["f1f8","a8f8","h6f8"],"rating":1132,"themes":["endgame","mate","mateIn2","short"]},{"id":363,"theme":"mate_in_1","fen":"r3kb1r/pp1npppp/2p5/4P3/6Q1/2B3P1/PqP1PPBP/RN2K2R b KQkq - 1 11","solution":["b2c1"],"rating":1132,"themes":["mate","mateIn1","oneMove","opening"]},{"id":364,"theme":"tactic","fen":"6k1/2q1pp1p/3p2p1/p2P4/P1p1P3/Qr5P/5PP1/2R2K2 w - - 2 32","solution":["a3b3","c4b3","c1c7"],"rating":1133,"themes":["crushing","endgame","short"]},{"id":365,"theme":"pin","fen":"r7/ppp2q1k/7p/2bpQP1n/8/2NP3P/PPP2P1K/R5R1 b - - 0 20","solution":["c5d6","e5d6","c7d6"],"rating":1134,"themes":["advantage","middlegame","pin","short"]},{"id":366,"theme":"mate_in_3","fen":"2k2bnr/ppp2p2/7p/8/4Pp2/4B3/PPP1n1BP/1K1R4 w - - 0 19","solution":["g2h3","f7f5","h3f5","c8b8","d1d8"],"rating":1135,"themes":["long","mate","mateIn3","middlegame"]},{"id":367,"theme":"mate_in_1","fen":"6k1/5p1p/p6p/3r1NP1/1p6/nP3P2/P1r5/K3R3 w - - 0 35","solution":["e1e8"],"rating":1136,"themes":["endgame","master","mate","mateIn1"]},{"id":368,"theme":"skewer","fen":"r2k4/pp5p/2pp3r/4pb2/2B1N3/3P4/PP1R2KP/5R2 b - - 1 22","solution":["f5h3","g2h1","h3f1"],"rating":1140,"themes":["crushing","middlegame","short","skewer"]},{"id":369,"theme":"rook_endgame","fen":"6r1/5RP1/1p3K2/8/1k6/8/8/8 w - - 3 58","solution":["f7f8","g8g7","f6g7"],"rating":1145,"themes":["crushing","endgame","rookEndgame","short"]},{"id":370,"theme":"tactic","fen":"r1b2rk1/pp5p/3q2p1/2Nnbp2/4p3/2P1B1P1/PP2BP1P/R2Q1RK1 b - - 0 15","solution":["d5e3","d1d6","e5d6"],"rating":1146,"themes":["crushing","middlegame","short"]},{"id":371,"theme":"discovered_attack","fen":"r2q1rk1/1pp2pp1/p1nb1n1p/4pb2/3PN3/P2QPN2/1PB2PPP/R1B2RK1 w - - 2 14","solution":["e4f6","d8f6","d3f5","f6f5","c2f5"],"rating":1150,"themes":["advantage","discoveredAttack","kingsideAttack","long"]},{"id":372,"theme":"mate_in_1","fen":"5k2/5p2/1Q2p2P/2pb4/8/5PK1/2q3P1/8 w - - 3 53","solution":["b6d8"],"rating":1152,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":373,"theme":"mate_in_2","fen":"4k3/6RR/r1n1b2p/1p6/8/8/1p3PPP/6K1 w - - 0 35","solution":["h7h8","e6g8","h8g8"],"rating":1153,"themes":["endgame","mate","mateIn2","short"]},{"id":374,"theme":"fork","fen":"r1b1k2r/ppp2pp1/3p1q1p/3P4/1bPPp3/2N5/PP3PPP/R2QKB1R w KQkq - 0 11","solution":["d1a4","c8d7","a4b4"],"rating":1155,"themes":["advantage","fork","middlegame","short"]},{"id":375,"theme":"pin","fen":"6k1/3q2p1/3p1p1p/r2P1N2/1p4Q1/7P/P5P1/7K w - - 2 40","solution":["f5h6","g8h7","g4d7"],"rating":1156,"themes":["crushing","discoveredAttack","endgame","pin"]},{"id":376,"theme":"tactic","fen":"r3k2r/pp2qppp/4b3/1N2P3/2P1Q1n1/8/PP3PPP/R3KB1R b KQkq - 0 13","solution":["e7b4","b5c3","b4b2"],"rating":1156,"themes":["crushing","middlegame","short"]},{"id":377,"theme":"tactic","fen":"6k1/5p1p/p5p1/1pb5/8/2P3Pq/PP2bPB1/3Q2K1 w - - 0 38","solution":["d1d8","c5f8","g2h3"],"rating":1157,"themes":["crushing","endgame","short"]},{"id":378,"theme":"discovered_attack","fen":"N1q1r2k/1p1nb1pp/p1n5/7b/5B2/1BN5/PPP3PP/R3QRK1 b - - 0 18","solution":["e7c5","g1h1","e8e1","a1e1","c8a8"],"rating":1159,"themes":["advantage","discoveredAttack","long","middlegame"]},{"id":379,"theme":"fork","fen":"r4k2/pp3ppp/2N5/8/3n4/8/P4PPP/2R2RK1 b - - 0 24","solution":["d4e2","g1h1","e2c1"],"rating":1160,"themes":["advantage","endgame","fork","short"]},{"id":380,"theme":"tactic","fen":"4b2r/8/P1p2k2/1pN1p3/1P2P3/1P6/1KB5/8 w - - 1 69","solution":["a6a7","e8g6","c5d7"],"rating":1160,"themes":["advancedPawn","advantage","endgame","master"]},{"id":381,"theme":"mate_in_1","fen":"r1b4r/pppp1Bbp/5n1k/8/3PN3/1P6/1B3P1P/3K4 w - - 1 18","solution":["b2c1"],"rating":1160,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":382,"theme":"discovered_attack","fen":"5rk1/p5p1/3Q3p/2p1p1bP/2P5/P2B4/1P3r2/3KR2R b - - 0 31","solution":["f2d2","d1c1","d2d3","c1b1","d3d6"],"rating":1163,"themes":["crushing","discoveredAttack","discoveredCheck","exposedKing"]},{"id":383,"theme":"mate_in_2","fen":"3r1r2/1pk2p1p/p3BR2/4p3/3nP2N/8/PPP3PP/2KR4 b - - 0 20","solution":["d4e2","c1b1","d8d1"],"rating":1167,"themes":["backRankMate","deflection","discoveredAttack","mate"]},{"id":384,"theme":"tactic","fen":"2Qnk2r/p4pp1/2N1pn2/2p1q3/8/2PP2P1/PP3PK1/3R1R2 b k - 2 22","solution":["e5d5","f2f3","d5c6","c8c6","d8c6"],"rating":1167,"themes":["advantage","long","middlegame"]},{"id":385,"theme":"tactic","fen":"rn2k2r/ppp3pp/3q1p2/3pN3/3Pp3/4P3/PPP2PPP/R2QK2R w KQkq - 0 11","solution":["d1h5","g7g6","e5g6","h7g6","h5h8"],"rating":1176,"themes":["advantage","long","middlegame"]},{"id":386,"theme":"tactic","fen":"rn1qk2r/pp4pp/2p2p2/3pNp2/3Pn3/2P1P3/PBP2PPP/R2Q1RK1 w kq - 0 11","solution":["d1h5","g7g6","e5g6","h7g6","h5h8"],"rating":1176,"themes":["advantage","long","middlegame"]},{"id":387,"theme":"mate_in_3","fen":"5rk1/5Rpp/pq2p3/4P1N1/1b3Q2/6BP/b4PP1/6K1 w - - 0 25","solution":["f7f8","b4f8","f4f7","g8h8","f7f8"],"rating":1177,"themes":["clearance","deflection","long","mate"]},{"id":388,"theme":"promotion","fen":"k2q4/1p3p1P/p1p2r2/3p4/3P4/P5Q1/1PP5/2K5 w - - 2 38","solution":["g3g8","f6f1","c1d2","d8g8","h7g8q"],"rating":1181,"themes":["advancedPawn","crushing","endgame","long"]},{"id":389,"theme":"tactic","fen":"8/3k4/p1p5/2Bb3p/1P3p2/P2R3P/5pr1/7K w - - 0 43","solution":["d3d5","c6d5","h1g2","f2f1q","g2f1"],"rating":1182,"themes":["crushing","endgame","long"]},{"id":390,"theme":"skewer","fen":"4R3/8/8/b1NP1kp1/6pp/6P1/r4P1P/5K2 b - - 3 45","solution":["a2a1","f1e2","a1e1","e2d3","e1e8"],"rating":1182,"themes":["crushing","endgame","long","master"]},{"id":391,"theme":"fork","fen":"r1b1r1k1/pp3pp1/2p2n1p/q1n1p3/4P3/P1NB1N2/1PP2PPP/R2QR1K1 w - - 8 14","solution":["b2b4","a5b6","b4c5"],"rating":1183,"themes":["crushing","fork","opening","short"]},{"id":392,"theme":"mate_in_1","fen":"8/7k/7p/6p1/5pP1/B4n1P/5r2/3RN2K b - - 0 40","solution":["f2h2"],"rating":1184,"themes":["arabianMate","endgame","master","mate"]},{"id":393,"theme":"fork","fen":"1B2r1k1/1P3p2/2Q1p2p/p3P1p1/1pb2b2/5K1P/P5P1/8 b - - 0 37","solution":["c4d5","c6d5","e6d5"],"rating":1185,"themes":["crushing","endgame","fork","short"]},{"id":394,"theme":"pin","fen":"r4rk1/pp5p/2p5/6qB/2P1R3/2N2p2/PP3PPP/5RK1 w - - 1 25","solution":["e4g4","g5g4","h5g4"],"rating":1185,"themes":["advantage","middlegame","pin","short"]},{"id":395,"theme":"pin","fen":"1r4k1/5pbp/q2p2p1/P2p1b2/R1pP4/2P1BN1P/1r3PP1/R1Q3K1 b - - 8 27","solution":["b2b1","a1b1","b8b1","c1b1","f5b1"],"rating":1187,"themes":["crushing","long","middlegame","pin"]},{"id":396,"theme":"fork","fen":"k7/pp2Q2p/1npr2p1/8/3P2R1/1PKB3q/P1P2P2/8 b - - 1 30","solution":["b6d5","c3b2","d5e7"],"rating":1188,"themes":["advantage","endgame","fork","short"]},{"id":397,"theme":"mate_in_2","fen":"4R3/pp3pp1/k7/2Q5/NP1r1b2/P6q/2P1KP2/R7 b - - 7 34","solution":["d4d2","e2e1","h3h1"],"rating":1194,"themes":["mate","mateIn2","middlegame","short"]},{"id":398,"theme":"discovered_attack","fen":"5rk1/p3q2p/1pp1P1p1/2n5/3R4/1B6/PPP2PPP/4R1K1 w - - 1 19","solution":["d4d7","e7f6","e6e7"],"rating":1196,"themes":["advancedPawn","advantage","discoveredAttack","discoveredCheck"]},{"id":399,"theme":"pawn_endgame","fen":"8/6pk/pp6/2p5/P1P5/2P2K1P/8/8 w - - 0 43","solution":["f3e4","h7h6","e4d5"],"rating":1197,"themes":["crushing","endgame","pawnEndgame","short"]},{"id":400,"theme":"tactic","fen":"r2q1r1k/1pp4n/1pn5/5pNQ/1P2p3/1BPP4/P4PPP/R3K2R b KQ - 1 21","solution":["d8g5","h5g5","h7g5"],"rating":1198,"themes":["advantage","middlegame","short"]},{"id":401,"theme":"mate_in_2","fen":"r5k1/p4ppp/1nQ1p3/3pP3/5Pn1/PP3qP1/7P/2R2BK1 w - - 7 28","solution":["c6a8","b6a8","c1c8"],"rating":1202,"themes":["backRankMate","clearance","mate","mateIn2"]},{"id":402,"theme":"mate_in_2","fen":"r6r/3k2pp/pp1P2q1/n4b2/7Q/2N5/PPP3PP/R1B3K1 w - - 1 23","solution":["h4e7","d7c6","e7c7"],"rating":1204,"themes":["epauletteMate","mate","mateIn2","middlegame"]},{"id":403,"theme":"rook_endgame","fen":"8/R7/1p6/4p1p1/PP3k2/1KP2r2/8/8 w - - 0 39","solution":["a7f7","f4e4","f7f3","e4f3","a4a5"],"rating":1209,"themes":["crushing","endgame","long","rookEndgame"]},{"id":404,"theme":"fork","fen":"r2qk1nr/ppp3pp/4p3/3pb3/8/2P1P2P/PP3P2/RN1QKB1R w KQkq - 0 12","solution":["d1h5","e8d7","h5e5"],"rating":1211,"themes":["advantage","fork","middlegame","short"]},{"id":405,"theme":"promotion","fen":"8/8/8/8/8/p1K5/kp5R/8 b - - 1 65","solution":["a2a1","h2h1","b2b1q","h1b1","a1b1"],"rating":1213,"themes":["advancedPawn","crushing","endgame","long"]},{"id":406,"theme":"bishop_endgame","fen":"8/6pp/8/5p2/P1K4P/1P4B1/4kb2/8 w - - 3 38","solution":["g3f2","e2f2","a4a5"],"rating":1213,"themes":["bishopEndgame","crushing","defensiveMove","endgame"]},{"id":407,"theme":"mate_in_3","fen":"5Rrk/pp4rp/2b5/8/3Q4/P7/1PP3q1/1K3R2 w - - 6 29","solution":["f8g8","h8g8","d4d8","c6e8","d8e8"],"rating":1215,"themes":["attraction","long","mate","mateIn3"]},{"id":408,"theme":"fork","fen":"4k3/8/p2r4/1p3R1p/6n1/PB4P1/1P4K1/8 b - - 0 41","solution":["g4e3","g2f3","e3f5"],"rating":1217,"themes":["crushing","endgame","fork","short"]},{"id":409,"theme":"mate_in_3","fen":"8/6pk/p1R4p/5pP1/8/8/r2r3P/5RK1 w - - 2 38","solution":["g5g6","h7h8","c6c8","d2d8","c8d8"],"rating":1219,"themes":["endgame","long","mate","mateIn3"]},{"id":410,"theme":"tactic","fen":"3Rnk2/2q1pp2/p4b2/1p1Q4/2p5/2P4P/PP3PP1/6K1 b - - 2 34","solution":["e7e6","d8e8","f8e8"],"rating":1222,"themes":["crushing","endgame","master","short"]},{"id":411,"theme":"tactic","fen":"r3k2r/4npb1/p1p1p1pp/q2pP3/3PN3/5Q1P/PP1B1PP1/R4RK1 b kq - 3 15","solution":["d5e4","f3f7","e8f7"],"rating":1223,"themes":["advantage","middlegame","short"]},{"id":412,"theme":"mate_in_1","fen":"8/8/8/R5P1/7K/5k2/8/1r6 b - - 4 71","solution":["b1h1"],"rating":1223,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":413,"theme":"pin","fen":"4n3/6PR/p1k3r1/8/8/3K4/5P1P/8 w - - 5 43","solution":["h7h6","g6h6","g7g8q"],"rating":1223,"themes":["advancedPawn","advantage","deflection","endgame"]},{"id":414,"theme":"pin","fen":"2kr1b1r/pp4p1/4qn2/6p1/2nP4/2PB4/PPQ3PP/R1BK3R w - - 2 21","solution":["d3f5","e6f5","c2f5"],"rating":1224,"themes":["crushing","master","opening","pin"]},{"id":415,"theme":"pawn_endgame","fen":"8/8/2p1p3/3pPp2/p1kP1P2/P1P3P1/1K6/8 b - - 5 53","solution":["c4d3","g3g4","f5g4"],"rating":1225,"themes":["crushing","endgame","pawnEndgame","short"]},{"id":416,"theme":"pin","fen":"3r2k1/8/4p2p/pB4p1/P4b2/6qP/6P1/3RRKQ1 b - - 3 35","solution":["d8d1","e1d1","f4e3","g1e3","g3e3"],"rating":1226,"themes":["advantage","long","middlegame","pin"]},{"id":417,"theme":"fork","fen":"5r2/7k/3p4/p3p2p/P2pPrp1/1PpP1P2/2P1K1Q1/5R2 b - - 1 34","solution":["g4f3","f1f3","f4f3","g2f3","f8f3"],"rating":1226,"themes":["crushing","endgame","fork","long"]},{"id":418,"theme":"tactic","fen":"2rr2k1/pp3ppp/4p3/4N2q/2P1b3/P7/2Q2PPP/3R1RK1 w - - 0 20","solution":["d1d8","c8d8","c2e4"],"rating":1229,"themes":["advantage","intermezzo","middlegame","short"]},{"id":419,"theme":"tactic","fen":"3r1rk1/pp3p1p/4pPp1/4P3/1qP1K1P1/1P2Q2N/P6P/R7 w - - 1 24","solution":["e3h6","d8d4","e4d4","f8d8","d4e4"],"rating":1232,"themes":["crushing","endgame","long"]},{"id":420,"theme":"tactic","fen":"r1b3k1/6pp/4p3/b2p4/8/q7/4QPPP/2R2RK1 w - - 0 25","solution":["c1c8","a8c8","e2e6"],"rating":1233,"themes":["crushing","middlegame","short"]},{"id":421,"theme":"fork","fen":"rn1qk2r/pbp2ppp/1p2p3/3pN3/1b1PnB2/2NQP3/PPP2PPP/R3KB1R w KQkq - 5 8","solution":["d3b5","b8c6","e5c6","b4c3","b2c3"],"rating":1234,"themes":["advantage","fork","long","opening"]},{"id":422,"theme":"sacrifice","fen":"8/8/4n2p/kp1P4/1p2N2P/1K2Pp2/PP6/8 b - - 1 55","solution":["e6c5","e4c5","f3f2"],"rating":1240,"themes":["advancedPawn","advantage","endgame","knightEndgame"]},{"id":423,"theme":"mate_in_2","fen":"r3r1k1/2p2ppp/3b1q2/p3R3/1p1P2b1/3Q4/PPB2PPP/RN4K1 w - - 0 18","solution":["d3h7","g8f8","h7h8"],"rating":1240,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":424,"theme":"tactic","fen":"r1bqr1k1/pp3pb1/2p3p1/3pn3/4nB1P/2N1PN2/PPPQB3/2KR3R w - - 1 15","solution":["c3e4","e5f3","e2f3"],"rating":1243,"themes":["advantage","middlegame","short"]},{"id":425,"theme":"fork","fen":"3r2k1/p4pp1/7p/P2p3P/1P4rq/2PQ2N1/2R3K1/7R b - - 1 38","solution":["g4g3","d3g3","h4e4"],"rating":1244,"themes":["advantage","fork","middlegame","sacrifice"]},{"id":426,"theme":"mate_in_2","fen":"5k2/pp2b3/7p/P1p2pp1/2P4n/1P1P3K/4B1rP/4R1R1 b - - 1 30","solution":["g5g4","e2g4","f5g4"],"rating":1245,"themes":["endgame","mate","mateIn2","short"]},{"id":427,"theme":"mate_in_2","fen":"8/8/2r1p1pk/p1qpQpNr/8/PP6/1P5P/R4K2 w - - 2 33","solution":["g5f7","h6h7","e5h8"],"rating":1247,"themes":["endgame","mate","mateIn2","short"]},{"id":428,"theme":"discovered_attack","fen":"3r3k/6b1/2P4p/4p3/1p1qPp2/1Q1B4/P1R1K1P1/8 b - - 0 41","solution":["d4e3","e2f1","d8d3"],"rating":1250,"themes":["crushing","deflection","discoveredAttack","endgame"]},{"id":429,"theme":"tactic","fen":"r5k1/pp3rp1/2p4p/2n1q2N/2p3Q1/2N1P2P/PP3P2/2K3RR b - - 3 22","solution":["c5d3","c1b1","d3f2"],"rating":1255,"themes":["advantage","middlegame","short"]},{"id":430,"theme":"mate_in_3","fen":"r1b2rk1/2qp1Npp/1p3p2/n7/4Pn2/P4P2/QP4PP/R2R3K w - - 3 23","solution":["f7h6","g8h8","a2g8","f8g8","h6f7"],"rating":1258,"themes":["discoveredCheck","doubleCheck","kingsideAttack","long"]},{"id":431,"theme":"mate_in_2","fen":"2q4k/5Qbp/4N1p1/1N3p2/3P4/P3P1P1/3n1P1P/6K1 b - - 2 29","solution":["c8c1","g1g2","c1f1"],"rating":1260,"themes":["endgame","master","mate","mateIn2"]},{"id":432,"theme":"tactic","fen":"r4rk1/ppp2ppp/2np1b2/8/4P3/3P1BPP/PPP2P2/R2NK2R b KQ - 1 15","solution":["c6d4","f3g2","d4c2"],"rating":1260,"themes":["advantage","middlegame","short"]},{"id":433,"theme":"fork","fen":"5rk1/2p1qr1p/pp1p2p1/3P4/PP2p1N1/2P1Q2B/4KP2/R7 w - - 5 33","solution":["g4h6","g8g7","h6f7"],"rating":1263,"themes":["advantage","fork","middlegame","short"]},{"id":434,"theme":"mate_in_2","fen":"8/2Q5/1p4pk/p3pp2/6PP/5P1K/P2r4/6b1 b - - 0 42","solution":["d2h2","h3g3","f5f4"],"rating":1266,"themes":["endgame","mate","mateIn2","short"]},{"id":435,"theme":"discovered_attack","fen":"5n2/5k2/4bp2/1p1p4/1PpP1pPp/2P2P1P/r1B1R3/1N2K3 w - - 2 38","solution":["c2g6","f7g6","e2a2"],"rating":1267,"themes":["advantage","discoveredAttack","endgame","short"]},{"id":436,"theme":"mate_in_2","fen":"7k/4Qpp1/pp5p/4p3/2P2q2/1P4RP/P5PK/3r4 w - - 2 37","solution":["e7f8","h8h7","f8g7"],"rating":1269,"themes":["endgame","mate","mateIn2","short"]},{"id":437,"theme":"tactic","fen":"r1b2rk1/pp3p1p/3p1qp1/2p1P3/2N1P1Q1/1P1P4/P1P3PP/R4RK1 b - - 0 17","solution":["f6f1","a1f1","c8g4"],"rating":1270,"themes":["advantage","kingsideAttack","middlegame","short"]},{"id":438,"theme":"mate_in_2","fen":"8/8/8/8/2p2Rp1/2k5/6r1/1RK5 b - - 2 52","solution":["g2g1","f4f1","g1f1"],"rating":1272,"themes":["endgame","mate","mateIn2","rookEndgame"]},{"id":439,"theme":"tactic","fen":"k3q3/pr6/2p5/2B5/3Q2P1/2P2P2/1PK2P2/8 b - - 0 42","solution":["e8e2","c2c1","e2b2"],"rating":1275,"themes":["crushing","endgame","short"]},{"id":440,"theme":"mate_in_2","fen":"rnbk3r/2q2ppp/p2b4/2Pp4/6n1/5N2/PPP2PPP/RNBQRBK1 b - - 0 12","solution":["d6h2","f3h2","c7h2"],"rating":1276,"themes":["kingsideAttack","mate","mateIn2","opening"]},{"id":441,"theme":"tactic","fen":"1r2kb1r/Q2n4/4pqpp/8/2p5/8/PP3PPP/RNB1R1K1 b k - 0 16","solution":["f8c5","a7b8","d7b8"],"rating":1278,"themes":["advantage","middlegame","short"]},{"id":442,"theme":"mate_in_2","fen":"5r1k/4Np1p/3p1b2/7P/4Pp2/1p1P1P2/q5Q1/5KR1 w - - 0 32","solution":["g2g8","f8g8","g1g8"],"rating":1281,"themes":["endgame","mate","mateIn2","sacrifice"]},{"id":443,"theme":"mate_in_3","fen":"r3k3/pp1nn3/4Qpp1/2pp2N1/8/3P4/P1P2PP1/qN2K3 w q - 0 18","solution":["e6f7","e8d8","g5e6","d8c8","f7e8"],"rating":1286,"themes":["exposedKing","long","mate","mateIn3"]},{"id":444,"theme":"deflection","fen":"1Q6/p4ppk/8/7p/3P4/2P2bKP/PP2qR2/1R6 b - - 1 31","solution":["h5h4","g3h4","e2f2"],"rating":1287,"themes":["attraction","crushing","deflection","endgame"]},{"id":445,"theme":"mate_in_2","fen":"5rk1/7r/1n1p3Q/1ppPp2p/q3P3/1N3P2/1pP1N3/1K1R4 w - - 0 27","solution":["d1g1","h7g7","h6g7"],"rating":1289,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":446,"theme":"deflection","fen":"2kr4/Qp2b3/4q2p/1NP2pp1/2n5/4BP1P/P3nP2/R6K w - - 1 27","solution":["a7a8","c8d7","a8b7","d7e8","b5c7"],"rating":1289,"themes":["crushing","deflection","long","middlegame"]},{"id":447,"theme":"mate_in_2","fen":"5rk1/6p1/Q7/3pN1qp/3Pnp2/2P4P/5RPK/6R1 b - - 0 34","solution":["g5g3","h2h1","e4f2"],"rating":1289,"themes":["fork","intermezzo","mate","mateIn2"]},{"id":448,"theme":"deflection","fen":"2r2br1/5k2/p1p4p/3nPp2/1p1N4/8/PPP1RP1P/2K3R1 w - - 0 29","solution":["e5e6","f7f6","g1g8"],"rating":1295,"themes":["crushing","deflection","master","middlegame"]},{"id":449,"theme":"mate_in_2","fen":"8/pR6/2p1k3/4P3/1PP5/1KBn4/P5r1/8 b - - 8 42","solution":["d3c1","b3a4","g2a2"],"rating":1296,"themes":["deflection","endgame","mate","mateIn2"]},{"id":450,"theme":"mate_in_3","fen":"r3k2r/1b3ppp/p3p3/1pP5/6n1/P1NP1N1q/2P1B3/R3QRK1 b kq - 3 19","solution":["b7f3","f1f3","h3h2","g1f1","h2h1"],"rating":1299,"themes":["exposedKing","kingsideAttack","long","mate"]},{"id":451,"theme":"tactic","fen":"r7/pp1qp1k1/3p3p/3P2pP/3p2b1/3P4/PPPQBr2/2KR3R w - - 4 19","solution":["e2g4","f2d2","g4d7"],"rating":1303,"themes":["advantage","master","middlegame","short"]},{"id":452,"theme":"mate_in_2","fen":"r1b2r2/pp4p1/2n1p3/q1bp2k1/5R2/2NQ4/PPP3PP/R3K3 w Q - 0 22","solution":["d3g3","g5h6","f4h4"],"rating":1305,"themes":["mate","mateIn2","middlegame","short"]},{"id":453,"theme":"pin","fen":"1k6/1p1r3p/pQnp4/2p1n3/2P3q1/PPN5/K3R1B1/8 w - - 2 39","solution":["g2c6","e5c6","e2e8","d7d8","e8d8"],"rating":1306,"themes":["advantage","long","master","middlegame"]},{"id":454,"theme":"mate_in_1","fen":"7r/p2k2pp/5p2/B1b5/2BnPn2/2K5/Pr1N1PPP/3R3R b - - 8 21","solution":["b2c2"],"rating":1308,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":455,"theme":"tactic","fen":"1n6/3r4/p1k1p3/3pP1Q1/1p1b2Pr/1Pp5/P1P1B2P/2R4K b - - 1 29","solution":["d7h7","g5h4","h7h4"],"rating":1311,"themes":["advantage","middlegame","quietMove","short"]},{"id":456,"theme":"mate_in_2","fen":"rnbqkr2/pp1pbpQ1/4p2B/7p/1nP1N3/8/P5PP/R3KBNR w KQq - 2 17","solution":["e4f6","e7f6","g7f8"],"rating":1311,"themes":["deflection","mate","mateIn2","opening"]},{"id":457,"theme":"mate_in_2","fen":"6Q1/1p6/p2p3p/4pb2/3q1p2/5k2/PP5R/7K w - - 2 48","solution":["g8g2","f3e3","g2e2"],"rating":1312,"themes":["endgame","mate","mateIn2","short"]},{"id":458,"theme":"mate_in_3","fen":"2r3kr/p2n1ppp/1nQB4/5q2/8/1P4P1/5P1P/R3R1K1 w - - 3 25","solution":["c6c8","b6c8","e1e8","d7f8","e8f8"],"rating":1315,"themes":["fork","long","mate","mateIn3"]},{"id":459,"theme":"tactic","fen":"r1b1k1nr/pppp1ppp/5q2/4b3/2BpP1Q1/3P4/PPP2PPP/RNB1K2R b KQkq - 0 8","solution":["d7d5","g4e2","d5c4"],"rating":1319,"themes":["advantage","opening","short"]},{"id":460,"theme":"mate_in_2","fen":"r5k1/pp2prn1/4P1Q1/3q1p2/5P2/7P/PPPp4/3K2R1 w - - 0 27","solution":["g6f7","g8h8","f7g7"],"rating":1324,"themes":["endgame","mate","mateIn2","short"]},{"id":461,"theme":"discovered_attack","fen":"r1b2rk1/1p3ppp/p1n5/1qbQPp2/P1N5/2P2N2/1P3PPP/R1B2RK1 b - a3 0 13","solution":["c5f2","f1f2","b5d5"],"rating":1325,"themes":["crushing","discoveredAttack","kingsideAttack","opening"]},{"id":462,"theme":"mate_in_1","fen":"r5rk/p1p2pR1/1pn2q1p/8/3p4/2PB1P2/P1P1QP1P/6RK w - - 1 18","solution":["g7h7"],"rating":1327,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":463,"theme":"mate_in_1","fen":"4r1k1/2Q4R/p5p1/2P5/1P2p3/P1q3PK/7P/4q3 w - - 0 44","solution":["c7f7"],"rating":1327,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":464,"theme":"tactic","fen":"4r3/1p1Q1Rpk/p5pp/8/6P1/1P5K/P3q3/5R2 b - - 2 39","solution":["e8e3","f1f3","e3f3","f7f3","e2f3"],"rating":1328,"themes":["crushing","endgame","long"]},{"id":465,"theme":"knight_endgame","fen":"8/p1n5/1p3k1p/2p3p1/P1P1KN2/3P2P1/7P/8 w - g6 0 42","solution":["f4d5","f6e6","d5c7"],"rating":1328,"themes":["crushing","endgame","knightEndgame","short"]},{"id":466,"theme":"mate_in_1","fen":"r7/ppq1k1p1/2pb1n1r/3p1BN1/3P1Pn1/2P1P2p/PP4P1/R1BQ1RKN b - - 0 18","solution":["h3h2"],"rating":1330,"themes":["advancedPawn","mate","mateIn1","middlegame"]},{"id":467,"theme":"tactic","fen":"5rk1/8/1b3q1p/pQ4p1/2p3P1/P1P4P/4RP2/R5K1 b - - 0 32","solution":["b6f2","e2f2","f6f2","g1h1","f2f3"],"rating":1331,"themes":["crushing","endgame","long"]},{"id":468,"theme":"mate_in_2","fen":"r1q1k2r/ppp1pp2/6p1/3P4/3QP3/1P3PP1/P1P2Rb1/R4NK1 b kq - 0 18","solution":["h8h1","g1g2","c8h3"],"rating":1333,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":469,"theme":"mate_in_3","fen":"r4rk1/p1p5/1pnb3Q/5qN1/3PR3/8/PP3PPP/4R1K1 b - - 2 21","solution":["f5f2","g1h1","f2f1","e1f1","f8f1"],"rating":1333,"themes":["kingsideAttack","long","mate","mateIn3"]},{"id":470,"theme":"fork","fen":"r2r2k1/p4p1p/qp4p1/3R4/1Qp1n3/2P2N2/P4PPP/R5K1 w - - 2 20","solution":["d5d8","a8d8","b4e7","a6c8","e7e4"],"rating":1334,"themes":["crushing","fork","long","middlegame"]},{"id":471,"theme":"hanging_piece","fen":"4Rr1k/p6p/1p4p1/1PpN4/2Pb4/q5NP/P5Q1/2R4K b - - 0 37","solution":["a3c1","g2f1","c1f1","g3f1","f8e8"],"rating":1336,"themes":["crushing","exposedKing","hangingPiece","long"]},{"id":472,"theme":"mate_in_3","fen":"2kr2r1/2p2p2/4p3/2Q5/5P2/PP1q2Pp/3P3P/R4RK1 b - - 0 25","solution":["g8g3","h2g3","d3g3","g1h1","g3g2"],"rating":1337,"themes":["endgame","long","mate","mateIn3"]},{"id":473,"theme":"fork","fen":"r3kb1r/1pp1qp2/p2p3p/3Pp1p1/4n3/QP3N2/P1P1NPPP/R4RK1 w kq - 1 16","solution":["a3a4","e7d7","a4e4"],"rating":1338,"themes":["advantage","fork","middlegame","short"]},{"id":474,"theme":"mate_in_2","fen":"r1b1qk1r/pp1nb1p1/2p2nQ1/6N1/2pP4/2N4P/PP2PPB1/R3K2R w KQ - 1 14","solution":["g5e6","f8g8","g6g7"],"rating":1338,"themes":["master","mate","mateIn2","middlegame"]},{"id":475,"theme":"mate_in_1","fen":"8/2Q5/p2p2k1/2pPbqN1/P1PnN3/5p2/8/5K2 w - - 2 51","solution":["c7h7"],"rating":1338,"themes":["endgame","master","masterVsMaster","mate"]},{"id":476,"theme":"hanging_piece","fen":"1k1r2R1/ppp5/5p2/3pn3/4Q3/7B/PP3PKP/8 b - - 0 28","solution":["d8g8","g2f1","d5e4"],"rating":1338,"themes":["crushing","endgame","hangingPiece","intermezzo"]},{"id":477,"theme":"mate_in_2","fen":"r5k1/5ppp/2Q5/3p1P2/p2P2PP/Pr1q4/1P6/KR5R b - - 0 31","solution":["b3a3","b2a3","d3a3"],"rating":1344,"themes":["endgame","mate","mateIn2","sacrifice"]},{"id":478,"theme":"tactic","fen":"r3n3/2p2k2/pp2Rq1p/3P2n1/1P3Q2/2N3B1/P4PP1/6K1 b - - 3 29","solution":["f6f4","g3f4","g5e6"],"rating":1347,"themes":["advantage","master","middlegame","short"]},{"id":479,"theme":"mate_in_1","fen":"k2r1bnr/pp3ppb/2p4p/4n3/5N2/1PP3N1/P2BBPPP/R1KR4 b - - 0 15","solution":["f8a3"],"rating":1348,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":480,"theme":"rook_endgame","fen":"8/8/7p/6p1/6P1/3r4/kp2K2P/1R6 w - - 2 47","solution":["b1b2","a2b2","e2d3"],"rating":1349,"themes":["crushing","endgame","rookEndgame","short"]},{"id":481,"theme":"mate_in_2","fen":"6k1/p3pp1p/1p4P1/4b2Q/8/4r3/P1r5/5K2 w - - 0 29","solution":["h5h7","g8f8","h7f7"],"rating":1350,"themes":["endgame","mate","mateIn2","short"]},{"id":482,"theme":"tactic","fen":"8/4b3/8/3k4/1p1Pp3/1K2Pp2/3N1P2/8 b - - 3 48","solution":["e7h4","b3c2","h4f2"],"rating":1351,"themes":["crushing","endgame","master","short"]},{"id":483,"theme":"tactic","fen":"r3k2r/p1pq1ppp/1pn1pn2/3pN3/Q1PP1Bb1/2P1P3/P4PPP/R3KB1R b KQkq - 2 10","solution":["c6e5","a4d7","e5d7"],"rating":1351,"themes":["advantage","middlegame","short"]},{"id":484,"theme":"tactic","fen":"rq2kbnr/4pppp/p7/1pp1n3/3p2b1/3P1N2/PPPNQPPP/R1B1KB1R w KQkq - 0 11","solution":["e2e5","b8e5","f3e5"],"rating":1353,"themes":["advantage","opening","short"]},{"id":485,"theme":"mate_in_1","fen":"5k2/4R1p1/1p2n1B1/2p1r3/6P1/8/P7/6K1 w - - 3 36","solution":["e7e8"],"rating":1358,"themes":["endgame","master","mate","mateIn1"]},{"id":486,"theme":"discovered_attack","fen":"6r1/pppk3q/3p3B/3Pp3/8/P2R1Q2/1PP2b1K/8 w - - 0 33","solution":["f3h3","d7d8","h6g5","g8g5","h3h7"],"rating":1362,"themes":["crushing","discoveredAttack","endgame","long"]},{"id":487,"theme":"mate_in_1","fen":"2Rq1rk1/pp2nppp/3bb3/4p1P1/1n1pP3/3P1N1P/PP1BNP2/3QKB1R b K - 0 13","solution":["b4d3"],"rating":1364,"themes":["master","mate","mateIn1","middlegame"]},{"id":488,"theme":"fork","fen":"5r2/6pk/5qp1/8/r5P1/3Q1P2/5RK1/4R3 w - - 2 40","solution":["e1h1","h7g8","d3b3","f6f7","b3a4"],"rating":1369,"themes":["crushing","endgame","fork","long"]},{"id":489,"theme":"hanging_piece","fen":"1r4k1/b1p3p1/p3prNp/3Q4/PP1P4/2P2P1P/5P2/3R1RK1 b - - 0 27","solution":["f6g6","g1h2","e6d5"],"rating":1371,"themes":["advantage","hangingPiece","intermezzo","middlegame"]},{"id":490,"theme":"pin","fen":"8/6pp/2q1k3/2pN4/2K5/1R3PP1/5P1P/8 w - - 10 52","solution":["b3b6","c6b6","d5b6"],"rating":1373,"themes":["crushing","endgame","master","pin"]},{"id":491,"theme":"mate_in_3","fen":"2r3k1/4Rp1p/1B4p1/3p4/8/6P1/1R2bP1P/7K b - - 0 30","solution":["e2f3","h1g1","c8c1","e7e1","c1e1"],"rating":1379,"themes":["endgame","long","mate","mateIn3"]},{"id":492,"theme":"fork","fen":"1k5r/1p1Q4/pP1p4/P1pP3p/3qP3/2N3p1/2P5/R1K1R3 b - - 4 35","solution":["d4c3","d7d6","b8a8","e1d1","c3a1"],"rating":1384,"themes":["advantage","endgame","fork","long"]},{"id":493,"theme":"tactic","fen":"r3k1nr/pp3pbp/2nqp1p1/1B1N4/1B1P4/1Q2PP2/PP3P1P/R3K2R b KQkq - 1 12","solution":["d6d5","b3d5","e6d5"],"rating":1385,"themes":["advantage","middlegame","short"]},{"id":494,"theme":"mate_in_2","fen":"2r5/1r3ppk/7p/B6P/P5P1/b4P2/P3R3/KR6 b - - 4 33","solution":["b7b1","a1b1","c8c1"],"rating":1391,"themes":["attraction","endgame","mate","mateIn2"]},{"id":495,"theme":"fork","fen":"7k/R7/4B2p/P7/8/2b2P2/5KPP/1r6 b - - 2 39","solution":["c3d4","f2g3","d4a7"],"rating":1391,"themes":["advantage","endgame","fork","short"]},{"id":496,"theme":"discovered_attack","fen":"1r2r1k1/p2b1ppp/2pq1n2/8/2p5/1P1B2N1/P2Q1PPP/R3R1K1 w - - 0 17","solution":["d3h7","g8h7","d2d6"],"rating":1392,"themes":["crushing","discoveredAttack","kingsideAttack","middlegame"]},{"id":497,"theme":"tactic","fen":"5rk1/pp4p1/2p2q1p/3pr3/3Q4/1B1P3P/PPP2PP1/4RRK1 b - - 2 20","solution":["e5e1","d4f6","e1f1"],"rating":1393,"themes":["advantage","kingsideAttack","middlegame","short"]},{"id":498,"theme":"tactic","fen":"1k2r3/p6p/Bnp3p1/1PB5/4P3/8/2P1KP1P/8 w - - 1 28","solution":["c5d6","b8a8","b5c6"],"rating":1394,"themes":["crushing","endgame","short"]},{"id":499,"theme":"mate_in_2","fen":"4n1rk/5ppp/p7/4pPB1/P2pPbRQ/3p4/2q4P/3RK3 w - - 0 32","solution":["h4h7","h8h7","g4h4"],"rating":1394,"themes":["attraction","kingsideAttack","mate","mateIn2"]},{"id":500,"theme":"pin","fen":"8/4k3/3Rbp2/4q1p1/8/5P1P/3R1KP1/8 w - - 6 35","solution":["d6e6","e5e6","d2e2"],"rating":1397,"themes":["crushing","endgame","pin","sacrifice"]},{"id":501,"theme":"bishop_endgame","fen":"8/2p5/6P1/7P/5Pk1/4K3/1b6/8 w - - 3 47","solution":["h5h6","g4f5","g6g7"],"rating":1400,"themes":["advancedPawn","bishopEndgame","crushing","endgame"]},{"id":502,"theme":"zugzwang","fen":"8/7p/p3k1pP/1p1p1p2/1PpP1PP1/P1P3K1/8/8 b - - 2 45","solution":["f5g4","g3g4","e6f6"],"rating":1400,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":503,"theme":"mate_in_1","fen":"3qkb1r/2rpnppp/1p2p3/1Nn5/4P3/5N2/PPP2PPP/R2QR1K1 w k - 0 15","solution":["b5d6"],"rating":1402,"themes":["mate","mateIn1","oneMove","opening"]},{"id":504,"theme":"fork","fen":"r3r1k1/1p3p2/p5pq/4RnN1/5P2/4P1P1/P3Q1K1/7R b - - 2 26","solution":["h6h1","g2h1","f5g3","h1g2","g3e2"],"rating":1402,"themes":["attraction","crushing","fork","long"]},{"id":505,"theme":"tactic","fen":"r1b5/pp2q2k/2pp1bp1/8/2n1P3/2N2Q2/PPP3PP/R4RK1 w - - 0 18","solution":["f3f6","e7f6","f1f6"],"rating":1402,"themes":["crushing","middlegame","short"]},{"id":506,"theme":"pin","fen":"5r1k/p4N1n/Pp6/2b1q3/4P3/5QPP/1P3P2/5RK1 b - - 0 32","solution":["f8f7","f3f7","e5g3","g1h1","g3h3"],"rating":1406,"themes":["advantage","deflection","long","middlegame"]},{"id":507,"theme":"deflection","fen":"rn3kr1/p4p1Q/1p1p1q2/3P2N1/1p2PP2/3P4/P5P1/R4RK1 b - f3 0 25","solution":["f6d4","f1f2","d4a1"],"rating":1406,"themes":["advantage","deflection","middlegame","short"]},{"id":508,"theme":"tactic","fen":"r4rk1/1pp2pp1/p2p1nnp/2b1p3/4P3/P1PP1QNq/BP3P1N/R1B2RK1 b - - 1 15","solution":["g6h4","g3f5","h4f3"],"rating":1407,"themes":["crushing","kingsideAttack","middlegame","short"]},{"id":509,"theme":"attraction","fen":"r2k1b2/pp2p3/7p/q2P4/8/1PR1P2Q/PB1K1P2/3R2r1 b - - 6 30","solution":["a5d5","c3d3","g1d1","d2d1","d5d3"],"rating":1411,"themes":["attraction","crushing","long","middlegame"]},{"id":510,"theme":"tactic","fen":"2r3k1/p2q1p2/5pp1/3Bn2p/1bP2P2/4B1PP/P1Q3K1/1R6 b - - 2 29","solution":["d7d5","c4d5","c8c2"],"rating":1412,"themes":["crushing","middlegame","short"]},{"id":511,"theme":"fork","fen":"8/1p1q3r/1P2p3/p3Qppk/3B1n2/8/P4PPP/2R3K1 b - - 3 34","solution":["d7d4","e5d4","f4e2","g1f1","e2d4"],"rating":1413,"themes":["advantage","attraction","endgame","fork"]},{"id":512,"theme":"mate_in_1","fen":"8/7P/1p2k1K1/2p1pnB1/P7/2P2b1r/8/R5R1 b - - 8 47","solution":["f3h5"],"rating":1413,"themes":["endgame","master","mate","mateIn1"]},{"id":513,"theme":"trapped_piece","fen":"r4r2/3bpknQ/p5p1/3P4/6P1/2N2Pq1/PP2B3/R2K3R b - - 0 22","solution":["f8h8","h7h8","a8h8"],"rating":1414,"themes":["advantage","middlegame","short","trappedPiece"]},{"id":514,"theme":"pawn_endgame","fen":"8/Pk6/3K4/7p/5pP1/8/6PP/8 b - - 0 54","solution":["h5g4","d6d5","f4f3"],"rating":1414,"themes":["crushing","endgame","pawnEndgame","short"]},{"id":515,"theme":"fork","fen":"3r1r2/p3q2k/6pp/2p5/2Bnp3/1P4PP/PQ3R2/5RK1 w - - 0 29","solution":["f2f7","f8f7","f1f7","e7f7","c4f7"],"rating":1419,"themes":["advantage","collinearMove","fork","long"]},{"id":516,"theme":"mate_in_3","fen":"8/2pq2Bk/p2p3P/1p2p2Q/3np3/P2P4/BPP2r2/2K5 w - - 0 26","solution":["a2g8","h7g8","h6h7","g8g7","h7h8q"],"rating":1420,"themes":["advancedPawn","attraction","endgame","exposedKing"]},{"id":517,"theme":"mate_in_2","fen":"3r2k1/1Q3p2/6pp/5q2/4P3/P1P1Rn1P/5P2/R4K2 b - - 0 28","solution":["f5h3","f1e2","d8d2"],"rating":1424,"themes":["endgame","mate","mateIn2","short"]},{"id":518,"theme":"mate_in_2","fen":"6k1/6q1/2rR2P1/2P5/7Q/7P/1b3PK1/q7 w - - 3 46","solution":["d6d8","g7f8","h4h7"],"rating":1424,"themes":["endgame","mate","mateIn2","pin"]},{"id":519,"theme":"mate_in_1","fen":"r2kr3/pbp2P2/1p3N1p/3p4/2B5/8/PPP2PPP/4b1K1 w - - 0 20","solution":["f7e8q"],"rating":1427,"themes":["advancedPawn","endgame","mate","mateIn1"]},{"id":520,"theme":"tactic","fen":"q4rk1/2pnppbp/1p1p2p1/1Q6/2PPb3/5N2/1B3PPP/1B3RK1 w - - 0 16","solution":["b1e4","a8e4","b5d7"],"rating":1431,"themes":["advantage","middlegame","short"]},{"id":521,"theme":"skewer","fen":"4r3/pQpk4/3b2p1/7q/8/5P2/PP4P1/R2KR3 b - - 2 28","solution":["e8e1","d1e1","h5h1","e1d2","h1a1"],"rating":1431,"themes":["advantage","attraction","endgame","exposedKing"]},{"id":522,"theme":"tactic","fen":"8/8/5R2/2P5/1P2k3/PK2B3/4rp2/8 b - - 0 49","solution":["e2e3","b3c4","e3f3","f6f3","e4f3"],"rating":1433,"themes":["crushing","endgame","long"]},{"id":523,"theme":"discovered_attack","fen":"4r1k1/5p2/4q2p/1p2B1p1/p1pQ2P1/P1Pn3P/1P3P1K/4R3 w - - 11 32","solution":["e5h8","f7f6","e1e6"],"rating":1433,"themes":["crushing","discoveredAttack","endgame","quietMove"]},{"id":524,"theme":"tactic","fen":"2kr3r/pbppn1p1/1pq4p/2b3B1/8/1B3N2/PPP3PP/R2QR2K w - - 2 16","solution":["g5e7","c5e7","e1e7"],"rating":1437,"themes":["advantage","middlegame","short"]},{"id":525,"theme":"deflection","fen":"rnbqk2r/p1p1Pppp/1p6/2b5/5B2/5N2/PPP1PPPP/RN1QKB1R b KQkq - 0 6","solution":["c5f2","e1f2","d8d1"],"rating":1441,"themes":["advantage","attackingF2F7","deflection","opening"]},{"id":526,"theme":"mate_in_2","fen":"Q7/3rppkp/3r2p1/4R3/8/4B1P1/Pq3PKP/8 w - - 6 29","solution":["e3h6","g7f6","a8h8"],"rating":1443,"themes":["endgame","mate","mateIn2","short"]},{"id":527,"theme":"tactic","fen":"8/7k/P6p/3b4/5Q1P/P7/5R1K/4q3 b - - 0 48","solution":["e1h1","h2g3","h1g1","g3h3","d5e6"],"rating":1444,"themes":["crushing","endgame","exposedKing","long"]},{"id":528,"theme":"discovered_attack","fen":"6k1/pp4pp/2p1pp2/2P1n2q/1r2NQ2/4P2P/P5PK/5R2 w - - 2 24","solution":["e4f6","g7f6","f4b4"],"rating":1445,"themes":["advantage","discoveredAttack","endgame","short"]},{"id":529,"theme":"mate_in_2","fen":"2Q5/r3qrkp/6pR/1p2P3/p1pP4/2P5/7P/6RK w - - 10 37","solution":["g1g6","h7g6","c8h8"],"rating":1445,"themes":["endgame","mate","mateIn2","sacrifice"]},{"id":530,"theme":"pin","fen":"4r1r1/pppkn2p/8/8/2Pq4/B6b/P1P1QRPP/R5K1 w - - 0 21","solution":["a1d1","g8g2","g1h1","e7f5","d1d4"],"rating":1447,"themes":["advantage","long","middlegame","pin"]},{"id":531,"theme":"mate_in_1","fen":"1k1r2r1/2p2p1p/4qp2/1p6/8/3PBB2/2P2PPP/Q5K1 w - - 0 21","solution":["a1a8"],"rating":1448,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":532,"theme":"skewer","fen":"3qr2k/6pp/3p4/N2b2b1/8/2PQ4/2N2PPP/R5K1 b - - 2 28","solution":["d5e4","d3b5","e4c2"],"rating":1454,"themes":["advantage","middlegame","short","skewer"]},{"id":533,"theme":"deflection","fen":"8/pk3P2/1pp5/2p4q/6rP/5QPK/PPP2P2/4R3 b - - 0 36","solution":["g4h4","h3g2","h4h2","g2g1","h5f3"],"rating":1454,"themes":["advantage","deflection","endgame","long"]},{"id":534,"theme":"mate_in_2","fen":"Q2r3r/1p1k1pp1/2p1p3/4P2p/3q3P/8/PP3RP1/6K1 w - - 2 29","solution":["a8b7","d7e8","b7f7"],"rating":1455,"themes":["attackingF2F7","endgame","mate","mateIn2"]},{"id":535,"theme":"mate_in_2","fen":"8/4R3/7p/p2r2pr/3p1k2/3R4/PP2KP2/8 w - - 2 40","solution":["d3f3","f4g4","e7e4"],"rating":1457,"themes":["endgame","mate","mateIn2","rookEndgame"]},{"id":536,"theme":"fork","fen":"r2qkb1r/p2b1ppp/2p2n2/QNp5/3p4/6P1/PPP1PP1P/R1B1KB1R w KQkq - 0 11","solution":["b5c7","d8c7","a5c7"],"rating":1457,"themes":["crushing","fork","opening","short"]},{"id":537,"theme":"rook_endgame","fen":"8/6p1/7p/2pk1P2/4r1PP/K4R2/8/8 b - - 0 44","solution":["e4g4","f5f6","g7f6","f3f6","g4h4"],"rating":1457,"themes":["crushing","endgame","long","rookEndgame"]},{"id":538,"theme":"tactic","fen":"5r1k/6p1/p3Nr2/3Q1P1p/3p2q1/1P2b3/P5PP/3R1R1K b - - 3 38","solution":["f6f5","e6f8","f5d5"],"rating":1458,"themes":["crushing","middlegame","short"]},{"id":539,"theme":"mate_in_1","fen":"5rk1/1p3R1p/n3N2p/4n3/p7/P1P5/6PP/6K1 w - - 0 31","solution":["f7f8"],"rating":1461,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":540,"theme":"pin","fen":"4k2r/1ppbnppp/1b1q4/1B6/Q2Pn3/2P5/P4PPP/R1B1K2R w KQk - 0 15","solution":["a4a8","e7c8","a8c8"],"rating":1476,"themes":["crushing","middlegame","pin","short"]},{"id":541,"theme":"pin","fen":"2b2rk1/5qb1/pp1p1nQ1/2pP2B1/2P2R1P/8/PP2N1P1/6K1 w - - 7 27","solution":["f4f6","f7g6","f6g6"],"rating":1476,"themes":["advantage","middlegame","pin","short"]},{"id":542,"theme":"tactic","fen":"3r3k/ppNNQ1pp/8/8/8/P1P4P/KP3P2/3q4 b - - 0 27","solution":["d1d7","e7d7","d8d7"],"rating":1477,"themes":["crushing","endgame","short"]},{"id":543,"theme":"deflection","fen":"rnbqk1nr/pp3ppp/4p3/2b5/2N5/5N2/PP2PPPP/R1BQKB1R b KQkq - 0 6","solution":["c5f2","e1f2","d8d1"],"rating":1478,"themes":["attackingF2F7","crushing","deflection","opening"]},{"id":544,"theme":"rook_endgame","fen":"8/7p/rk2pp2/7p/3K1P1P/8/6P1/R7 w - - 0 40","solution":["a1a6","b6a6","d4c5","e6e5","f4e5"],"rating":1482,"themes":["crushing","endgame","long","rookEndgame"]},{"id":545,"theme":"discovered_attack","fen":"r1b3k1/1pp2ppp/1p1p3q/4nPr1/4PQ2/2P2N2/PP2B1PP/R3R1K1 b - - 6 22","solution":["g5g2","g1g2","h6f4"],"rating":1485,"themes":["advantage","discoveredAttack","kingsideAttack","middlegame"]},{"id":546,"theme":"tactic","fen":"r2q1r1k/5ppp/4p3/p2p4/1p2n2Q/6P1/PPP2P1P/2BRR1K1 w - - 2 22","solution":["e1e4","d8h4","e4h4"],"rating":1487,"themes":["advantage","middlegame","short"]},{"id":547,"theme":"pawn_endgame","fen":"8/pp6/3K4/2p1pk2/8/2PP4/PP6/8 b - - 0 34","solution":["c5c4","d3d4","e5e4"],"rating":1490,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":548,"theme":"pin","fen":"2r3k1/pR5p/4P1pq/5p2/3P4/5Q1P/6P1/2r2RK1 b - - 0 31","solution":["c1f1","f3f1","c8c1","f1c1","h6c1"],"rating":1493,"themes":["clearance","crushing","endgame","long"]},{"id":549,"theme":"mate_in_2","fen":"6rk/5Qbp/p1Np2q1/3P4/4r3/1P6/P5PP/3R1RK1 b - - 0 30","solution":["g7d4","c6d4","g6g2"],"rating":1495,"themes":["mate","mateIn2","middlegame","sacrifice"]},{"id":550,"theme":"fork","fen":"r2q1rk1/pbpn2pp/1p2p3/2PpN3/3Pp3/1QB3P1/PP2PP1P/R4RK1 w - - 0 14","solution":["c5c6","d7e5","c6b7"],"rating":1496,"themes":["advancedPawn","advantage","fork","middlegame"]},{"id":551,"theme":"tactic","fen":"r2qk2r/1ppbb1p1/2n4p/pB1pNp2/3Pn3/PP2P3/1BQ2PPP/RN2K2R b KQkq - 3 12","solution":["c6e5","b5d7","e5d7"],"rating":1500,"themes":["crushing","middlegame","short"]},{"id":552,"theme":"tactic","fen":"3qk2r/p2R1p1p/1b2pp2/4rb2/Q1B5/2N1P3/PP3PPP/4K2R b Kk - 0 16","solution":["d8d7","c4b5","e5b5"],"rating":1502,"themes":["advantage","middlegame","short"]},{"id":553,"theme":"sacrifice","fen":"8/kp6/2bPQ3/p2r2p1/6P1/4K3/8/8 w - - 0 43","solution":["e6d5","c6d5","d6d7","a7b6","d7d8q"],"rating":1508,"themes":["advancedPawn","crushing","endgame","long"]},{"id":554,"theme":"fork","fen":"q4rk1/2Q2n1p/3p1pp1/3P4/4PP2/1R4PP/r5B1/3R2K1 b - - 0 30","solution":["a2g2","g1g2","a8a2","g2h1","a2b3"],"rating":1509,"themes":["advantage","attraction","exposedKing","fork"]},{"id":555,"theme":"rook_endgame","fen":"8/8/7R/6P1/1pK5/4rk2/8/8 w - - 0 56","solution":["h6h3","f3f4","h3e3"],"rating":1511,"themes":["crushing","endgame","rookEndgame","short"]},{"id":556,"theme":"tactic","fen":"r2k3r/pp1n2p1/2p3q1/5p1p/3P1b2/P1N1QPB1/1PP5/R4RK1 w - - 0 21","solution":["e3f4","h5h4","f4c7"],"rating":1514,"themes":["advantage","middlegame","short"]},{"id":557,"theme":"skewer","fen":"8/2r5/8/8/5RK1/4k3/6P1/8 b - - 5 55","solution":["c7g7","g4f5","g7f7","f5e6","f7f4"],"rating":1515,"themes":["crushing","deflection","endgame","long"]},{"id":558,"theme":"tactic","fen":"8/p1p2p2/6p1/3q4/7k/r6P/6P1/4RQ1K w - - 4 42","solution":["f1f4","h4h5","e1e5"],"rating":1520,"themes":["endgame"]},{"id":559,"theme":"tactic","fen":"6k1/3nQpp1/1p1N1n1p/3p4/3Pp3/1q2P2P/5PPK/8 w - - 0 31","solution":["e7f7","g8h8","d6f5"],"rating":1524,"themes":["crushing","endgame","short"]},{"id":560,"theme":"attraction","fen":"1b1r2k1/1p3pp1/r6p/p2p3q/3N2n1/2P2N2/PP3P2/2BRR1KQ b - - 5 22","solution":["h5h1","g1h1","g4f2"],"rating":1527,"themes":["advantage","attraction","kingsideAttack","master"]},{"id":561,"theme":"tactic","fen":"6rk/pR6/1pp3np/5R2/3q1P2/6Q1/2P3PP/2K5 b - - 1 32","solution":["d4a1","c1d2","g8d8","g3d3","d8d3"],"rating":1528,"themes":["advantage","endgame","long","master"]},{"id":562,"theme":"mate_in_2","fen":"r7/6k1/p1p5/7Q/3q2r1/6b1/PP4P1/5R1K w - - 5 32","solution":["f1f7","g7g8","h5h7"],"rating":1535,"themes":["endgame","mate","mateIn2","short"]},{"id":563,"theme":"sacrifice","fen":"3r1rk1/p5pp/b1p5/8/1nPq1p2/1P1PRN2/P4PPP/R2QN1K1 b - - 1 22","solution":["f4e3","f3d4","e3f2"],"rating":1536,"themes":["advancedPawn","advantage","kingsideAttack","middlegame"]},{"id":564,"theme":"mate_in_3","fen":"8/6kp/p2r2p1/1p6/5qP1/2PrRB2/PP2RQ2/2K5 b - - 2 32","solution":["d3d1","c1c2","f4a4","b2b3","a4a2"],"rating":1536,"themes":["long","mate","mateIn3","middlegame"]},{"id":565,"theme":"mate_in_3","fen":"3k4/3P4/4K3/3pP3/8/5p2/8/8 w - - 0 46","solution":["e6d6","f3f2","e5e6","d5d4","e6e7"],"rating":1537,"themes":["advancedPawn","endgame","long","mate"]},{"id":566,"theme":"mate_in_2","fen":"5nk1/pppb1q2/1b4Np/3Q4/2P5/2B5/PP4PP/7K w - - 2 29","solution":["g6e7","g8h7","d5f7"],"rating":1539,"themes":["deflection","mate","mateIn2","middlegame"]},{"id":567,"theme":"mate_in_2","fen":"8/pp3prk/2p2R1p/3p4/6q1/8/PPP5/1K5R w - - 6 32","solution":["f6h6","h7g8","h6h8"],"rating":1541,"themes":["endgame","mate","mateIn2","queenRookEndgame"]},{"id":568,"theme":"tactic","fen":"4k3/R4pp1/3Pb2p/8/4B3/P5P1/3K3n/r7 w - - 2 39","solution":["e4c6","e8d8","a7a8","e6c8","d6d7"],"rating":1543,"themes":["advancedPawn","crushing","endgame","long"]},{"id":569,"theme":"rook_endgame","fen":"8/8/1k4P1/p2r4/7P/4PK2/5P2/8 w - - 1 50","solution":["g6g7","d5d8","h4h5","d8g8","h5h6"],"rating":1544,"themes":["advancedPawn","crushing","endgame","long"]},{"id":570,"theme":"fork","fen":"3r1rk1/p4pp1/4p1np/2p1q3/4N3/2P1PQ2/3R2PP/5RK1 w - - 0 24","solution":["d2d8","f8d8","f3f7","g8h7","e4f6"],"rating":1545,"themes":["advantage","fork","long","middlegame"]},{"id":571,"theme":"tactic","fen":"r2r2k1/pp2pp1p/6p1/1Nq5/2Qb4/7P/PP3PP1/R2R2K1 w - - 3 20","solution":["d1d4","c5c4","d4c4"],"rating":1546,"themes":["advantage","master","middlegame","short"]},{"id":572,"theme":"mate_in_3","fen":"5rk1/pp3ppp/2p5/4R3/3r1Q1P/1P1q4/P5P1/5R1K w - - 1 26","solution":["f4f7","f8f7","e5e8","f7f8","f1f8"],"rating":1548,"themes":["endgame","long","mate","mateIn3"]},{"id":573,"theme":"mate_in_2","fen":"5rk1/p3Qppp/b1p4q/8/2p5/P7/1r4PP/3RR2K w - - 0 25","solution":["e7f8","g8f8","d1d8"],"rating":1549,"themes":["attraction","mate","mateIn2","middlegame"]},{"id":574,"theme":"fork","fen":"1kb4r/8/p2q4/1p1pnQ2/3N4/P1P4P/1P4P1/5R1K w - - 1 31","solution":["f5e5","d6e5","d4c6","b8c7","c6e5"],"rating":1549,"themes":["advantage","attraction","exposedKing","fork"]},{"id":575,"theme":"fork","fen":"r1b1r1k1/pp3p1p/1qp3P1/3p2NB/8/1P3n2/P1PP2P1/bN3R1K w - - 0 17","solution":["g6f7","g8g7","f7e8q"],"rating":1552,"themes":["advancedPawn","crushing","fork","middlegame"]},{"id":576,"theme":"tactic","fen":"2r2rk1/p3bppp/1qn1pn2/3p4/N2P4/1P3N1P/P3bPP1/R1BQ1RK1 w - - 0 14","solution":["a4b6","e2d1","b6c8","d1f3","c8e7"],"rating":1554,"themes":["advantage","long","master","middlegame"]},{"id":577,"theme":"tactic","fen":"3r1rk1/pbp1q1pp/1p2P3/3P1p2/1b6/PnN1PN2/1PQ1BPPP/R4RK1 b - - 2 16","solution":["b3a1","f1a1","b4c3"],"rating":1555,"themes":["advantage","middlegame","short"]},{"id":578,"theme":"fork","fen":"r2q1rk1/ppp2ppp/1bnpbn2/4p3/3PP3/2N1BN2/PPP1BPPP/R2Q1RK1 w - - 3 10","solution":["d4d5","b6e3","f2e3","e6d7","d5c6"],"rating":1556,"themes":["crushing","fork","long","opening"]},{"id":579,"theme":"hanging_piece","fen":"r1bqk3/ppp2r2/1b4Q1/3Pp2p/7N/2N5/P4PPP/R4RK1 b q - 4 21","solution":["d8h4","g6g8","f7f8"],"rating":1557,"themes":["advantage","hangingPiece","master","middlegame"]},{"id":580,"theme":"tactic","fen":"6k1/ppp2pp1/3p3p/1Pq5/5p2/5P2/2r3PP/1Q2RK2 w - - 2 30","solution":["e1e8","g8h7","e8e2"],"rating":1558,"themes":["crushing","endgame","short"]},{"id":581,"theme":"mate_in_2","fen":"1k5r/ppp1BP1r/3p4/4p2n/6QP/P2P4/1PP1KP2/q7 w - - 5 31","solution":["g4g8","h8g8","f7g8q"],"rating":1560,"themes":["advancedPawn","backRankMate","endgame","mate"]},{"id":582,"theme":"tactic","fen":"5r1k/4p1b1/p3P2p/1pq2nB1/2p1B3/2P4Q/PP4P1/4R2K b - - 2 31","solution":["c5f2","e1b1","f5g3"],"rating":1564,"themes":["crushing","middlegame","short"]},{"id":583,"theme":"pawn_endgame","fen":"8/p5p1/Ppp1k1Pp/3p4/1P1P1K2/5P2/7P/8 w - - 1 37","solution":["h2h4","h6h5","f4g5"],"rating":1567,"themes":["crushing","endgame","pawnEndgame","quietMove"]},{"id":584,"theme":"tactic","fen":"2r1k2r/pp3p1p/1q2p1pP/3p1n2/N7/1n3B2/PPPQ1PP1/2KR3R w k - 2 17","solution":["a2b3","b6b3","a4c3"],"rating":1567,"themes":["crushing","middlegame","short"]},{"id":585,"theme":"discovered_attack","fen":"6k1/pQ3p1p/2p2qp1/4p3/4n3/1BP4P/Pr3PP1/5RK1 w - - 0 23","solution":["b3f7","f6f7","b7b2"],"rating":1567,"themes":["advantage","discoveredAttack","endgame","short"]},{"id":586,"theme":"tactic","fen":"r5k1/6pp/8/p7/1qp5/3p1NPP/1P1QnPK1/4R3 w - - 1 33","solution":["e1e2","b4d2","e2d2"],"rating":1568,"themes":["advantage","endgame","short"]},{"id":587,"theme":"mate_in_3","fen":"6kb/pp3rBp/3p1Pp1/4p3/3pP2Q/3P1R2/r1q4P/5RK1 w - - 6 23","solution":["h4h7","g8h7","f3h3","h7g8","h3h8"],"rating":1569,"themes":["attraction","kingsideAttack","long","mate"]},{"id":588,"theme":"mate_in_1","fen":"5r1k/1p3p1p/4bqpQ/1pn1p3/3pP1P1/P1rP1N1P/2P2P1K/2R2BR1 w - - 4 27","solution":["h6f8"],"rating":1571,"themes":["hangingPiece","kingsideAttack","master","mate"]},{"id":589,"theme":"fork","fen":"6k1/1p1q1p2/p3p1pp/1n1pP1bN/1P1P2Q1/P3r2P/6PN/5R1K w - - 0 28","solution":["g4g5","h6g5","h5f6","g8g7","f6d7"],"rating":1572,"themes":["advantage","fork","long","middlegame"]},{"id":590,"theme":"hanging_piece","fen":"6k1/pp3Bpp/6q1/2b5/3P1n2/2P2P1P/PP3P1K/R1B1rQ2 b - - 0 23","solution":["g8f7","c1f4","e1f1"],"rating":1572,"themes":["advantage","hangingPiece","middlegame","short"]},{"id":591,"theme":"fork","fen":"r3k1nr/p4pp1/Q1p1p2p/2b1B3/2p5/5P1P/PP3PK1/RN1q4 w kq - 0 15","solution":["a6c6","d1d7","c6a8","d7d8","a8c6"],"rating":1580,"themes":["crushing","fork","long","middlegame"]},{"id":592,"theme":"tactic","fen":"4r1k1/pRQ2pp1/5n1p/2p1p3/2P1P3/5q1P/P4P2/1R4K1 b - - 1 23","solution":["f6e4","c7f7","f3f7","b7f7","g8f7"],"rating":1581,"themes":["crushing","endgame","long"]},{"id":593,"theme":"rook_endgame","fen":"8/7P/6K1/1k6/6R1/p6r/8/8 w - - 0 82","solution":["g4g5","b5a4","g5h5","h3h5","g6h5"],"rating":1582,"themes":["crushing","endgame","long","rookEndgame"]},{"id":594,"theme":"tactic","fen":"4rrk1/pp1q2pp/4b3/3BP3/n1pQ1P2/2P3P1/1P5P/R4RK1 w - - 1 22","solution":["d5e6","d7e6","a1a4"],"rating":1582,"themes":["advantage","middlegame","short"]},{"id":595,"theme":"fork","fen":"2b1r1k1/4bppp/3qpn2/p3N3/P2Pp3/2N3P1/2P2PBP/1Q2R1K1 b - - 0 20","solution":["d6d4","c3e4","d4e5","e4f6","e5f6"],"rating":1587,"themes":["advantage","fork","long","middlegame"]},{"id":596,"theme":"pawn_endgame","fen":"8/6pk/4p3/1p5p/4P1PP/P1p5/4K3/8 w - - 0 44","solution":["g4g5","h7g6","e2d3","c3c2","d3c2"],"rating":1589,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":597,"theme":"fork","fen":"r4k2/2p1rppp/p1n5/1p2Nb2/3q4/PB6/1P2QPPP/R3R1K1 w - - 0 20","solution":["e5c6","e7e2","c6d4"],"rating":1590,"themes":["advantage","fork","hangingPiece","middlegame"]},{"id":598,"theme":"trapped_piece","fen":"2q2rk1/1p3pp1/8/p2QPP2/1b1N3p/1P1bPR1P/1B4P1/6K1 b - - 0 29","solution":["f8d8","d5d8","c8d8"],"rating":1592,"themes":["crushing","master","middlegame","short"]},{"id":599,"theme":"tactic","fen":"r2r2k1/2p1bp2/p5p1/4P2p/2q4N/1n1p2QP/5PP1/1RBR3K w - - 0 28","solution":["h4g6","f7g6","g3g6"],"rating":1596,"themes":["advantage","kingsideAttack","middlegame","short"]},{"id":600,"theme":"fork","fen":"2r2n2/6kp/p4q2/1ppQ4/3pP3/P2P2P1/1PP4P/R5K1 w - - 1 27","solution":["d5b7","f6f7","b7c8"],"rating":1597,"themes":["crushing","endgame","fork","short"]},{"id":601,"theme":"bishop_endgame","fen":"8/3Pk3/2K5/b7/8/6Bp/8/8 w - - 4 68","solution":["g3c7","a5c7","c6c7"],"rating":1600,"themes":["bishopEndgame","crushing","endgame","short"]},{"id":602,"theme":"tactic","fen":"3rq1k1/1b3p2/1p1P2p1/p6p/2p5/P1B3P1/1PQ2P1P/3R2K1 b - - 0 28","solution":["e8c6","f2f3","c6f3"],"rating":1604,"themes":["crushing","endgame","short"]},{"id":603,"theme":"deflection","fen":"rn1qk2r/ppP2ppp/5n2/2b3B1/6b1/5N2/PPP1PPPP/RN1QKB1R b KQkq - 0 6","solution":["c5f2","e1f2","d8d1"],"rating":1607,"themes":["attackingF2F7","crushing","deflection","opening"]},{"id":604,"theme":"tactic","fen":"r4rk1/pp3p1p/2n1bQp1/q5N1/1b6/2N1P3/PP2BPPP/R4RK1 b - - 2 13","solution":["b4e7","f6e6","f7e6"],"rating":1607,"themes":["advantage","middlegame","short"]},{"id":605,"theme":"fork","fen":"8/6k1/3bpN2/3np1PP/8/5PK1/8/8 w - - 1 81","solution":["f6e8","g7g8","e8d6"],"rating":1612,"themes":["crushing","endgame","fork","master"]},{"id":606,"theme":"fork","fen":"6k1/1b2q1p1/p1n5/1p6/3R3p/P3QP1P/6P1/6K1 w - - 2 31","solution":["e3e7","c6e7","d4d7","b7d5","d7e7"],"rating":1614,"themes":["crushing","endgame","fork","long"]},{"id":607,"theme":"pin","fen":"r1bq1rk1/bppp1p2/p1n4p/4P3/2BP4/4Rn1P/PP1Q1PP1/RN4K1 w - - 0 14","solution":["e3f3","d8g5","f3g3","g5g3","f2g3"],"rating":1615,"themes":["advantage","long","middlegame","pin"]},{"id":608,"theme":"fork","fen":"2rqknr1/1b3p2/p3p3/3nP2Q/1ppPN3/P6P/1P3PP1/1BR1R1K1 w - - 0 26","solution":["e4d6","d8d6","e5d6"],"rating":1616,"themes":["crushing","fork","middlegame","short"]},{"id":609,"theme":"tactic","fen":"4r3/5qpk/2p2p1p/ppBb1P2/2p3Q1/P1P4P/1P4P1/4R1K1 w - - 1 31","solution":["g4g6","f7g6","f5g6","h7g6","e1e8"],"rating":1616,"themes":["advantage","endgame","long"]},{"id":610,"theme":"hanging_piece","fen":"3r1rk1/5pp1/6Rp/2P1q3/1P1pn1P1/B2B1Q1P/3R1PK1/8 b - - 0 29","solution":["e4d2","f3f5","e5f5","g4f5","f7g6"],"rating":1619,"themes":["advantage","hangingPiece","long","middlegame"]},{"id":611,"theme":"tactic","fen":"r4rk1/5pp1/4pn1p/3p4/1bqP1B2/4PN2/1Q3PPP/R4RK1 b - - 1 22","solution":["b4c3","a1a8","c3b2","a8f8","g8f8"],"rating":1619,"themes":["crushing","long","middlegame"]},{"id":612,"theme":"trapped_piece","fen":"r4bk1/q4pp1/2Q1b2p/r2pP3/3P4/4BNNP/p4PP1/R4RK1 b - - 0 23","solution":["a8c8","c6c8","e6c8"],"rating":1619,"themes":["advantage","middlegame","short","trappedPiece"]},{"id":613,"theme":"trapped_piece","fen":"8/7k/7p/8/p2N4/r1P2P1P/2K5/8 w - - 0 47","solution":["c2b2","a3a1","b2a1"],"rating":1619,"themes":["crushing","endgame","short","trappedPiece"]},{"id":614,"theme":"fork","fen":"rk3q1r/ppp4p/3pQ3/4p3/4N3/8/PPP2PPP/4R1K1 w - - 4 20","solution":["e4f6","a7a6","f6d7","b8a7","d7f8"],"rating":1621,"themes":["crushing","endgame","fork","long"]},{"id":615,"theme":"tactic","fen":"8/4Pn2/5nk1/N4ppp/2p5/5PP1/4RKP1/2r5 w - - 1 49","solution":["e2e6","f7d6","e6d6","g6f7","d6f6"],"rating":1624,"themes":["crushing","endgame","long","master"]},{"id":616,"theme":"deflection","fen":"r3k2r/pppq2p1/2np2p1/2bNp1B1/2B1P1n1/3P4/PPP2P2/R2Q1RK1 w kq - 0 14","solution":["d5c7","d7c7","d1g4"],"rating":1626,"themes":["advantage","deflection","middlegame","short"]},{"id":617,"theme":"fork","fen":"rnbr2k1/pppp1p1p/8/3n4/8/2qP1N2/P1PQKPPP/R4B1R w - - 4 14","solution":["d2g5","g8f8","g5d8"],"rating":1631,"themes":["crushing","fork","middlegame","short"]},{"id":618,"theme":"mate_in_2","fen":"2r4n/q4rBk/p1p1pPp1/Pb1pP3/1p1P2P1/5N2/2R5/RN4K1 w - - 0 29","solution":["c2h2","h7g8","h2h8"],"rating":1631,"themes":["mate","mateIn2","middlegame","short"]},{"id":619,"theme":"tactic","fen":"2bqr1r1/5ppk/3p3p/p1pPbP2/PpP1Pp1P/1P3N2/2BQ1PR1/2K4R w - - 6 50","solution":["f3g5","h7h8","g5f7"],"rating":1635,"themes":["crushing","middlegame","short"]},{"id":620,"theme":"mate_in_3","fen":"5r2/6p1/1pk4p/4p1b1/PPB1P3/2PPn2K/4R3/7R b - - 4 29","solution":["f8f3","h3h2","g5f4","h2g1","f3f1"],"rating":1640,"themes":["endgame","exposedKing","long","mate"]},{"id":621,"theme":"sacrifice","fen":"r2k3r/2pbn3/1p1p4/pP1P2qp/P1PN4/8/5QPP/R4RK1 w - - 0 29","solution":["f2f8","h8f8","f1f8","d7e8","d4e6"],"rating":1641,"themes":["crushing","long","middlegame","sacrifice"]},{"id":622,"theme":"discovered_attack","fen":"3r2k1/1Qq2pp1/1pB1p2p/1P2P3/2Pb1P2/8/5P1P/3R2K1 b - - 1 27","solution":["c7b7","c6b7","d4f2","g1f2","d8d1"],"rating":1644,"themes":["advantage","discoveredAttack","endgame","long"]},{"id":623,"theme":"pin","fen":"1Rb5/3r4/p3p1k1/3pBq2/P1pP1Pr1/7Q/5P1K/6R1 b - - 3 33","solution":["d7h7","h3h7","g6h7","g1g4","f5g4"],"rating":1650,"themes":["crushing","long","middlegame","pin"]},{"id":624,"theme":"tactic","fen":"4r1k1/6pp/1qp2pn1/p2p4/1B1P4/2P5/PP3QPP/4R1K1 b - - 1 21","solution":["e8e1","f2e1","a5b4","e1e6","g8f8"],"rating":1652,"themes":["crushing","endgame","long"]},{"id":625,"theme":"mate_in_2","fen":"r4r2/1p3p1k/p3pp1p/1b5Q/6NP/6q1/PPP5/1K3R2 w - - 0 27","solution":["h5h6","h7g8","g4f6"],"rating":1655,"themes":["mate","mateIn2","middlegame","short"]},{"id":626,"theme":"tactic","fen":"3r1rk1/1b3pp1/p6B/1p6/2pb1q2/P1N4P/BPP3P1/R4R1K w - - 0 22","solution":["h6f4","d4c3","b2c3"],"rating":1657,"themes":["advantage","middlegame","short"]},{"id":627,"theme":"tactic","fen":"2r3k1/4qpp1/4p1p1/1p1Q4/r7/P1P3PP/1P4P1/R3R1K1 b - - 0 23","solution":["e7a7","d5d4","a4d4"],"rating":1657,"themes":["advantage","endgame","master","short"]},{"id":628,"theme":"pin","fen":"r2q1rk1/p4p1p/1p1n3p/2pPpN2/2n1P3/2P5/P3Q1PP/R4RK1 w - - 0 19","solution":["e2g4","d8g5","f5h6","g8h8","g4g5"],"rating":1659,"themes":["crushing","intermezzo","kingsideAttack","long"]},{"id":629,"theme":"pin","fen":"8/pp1k4/2r1p3/2p1q1B1/8/1P3Q2/P7/2K5 w - - 4 48","solution":["f3f7","d7d6","g5f4","e5f4","f7f4"],"rating":1659,"themes":["advantage","endgame","long","pin"]},{"id":630,"theme":"pawn_endgame","fen":"8/8/6kP/4p1P1/1p2K3/8/8/8 w - - 0 46","solution":["e4d3","b4b3","d3c3","e5e4","c3b3"],"rating":1660,"themes":["crushing","endgame","long","master"]},{"id":631,"theme":"tactic","fen":"8/5p2/2R3p1/3kP3/5K2/8/8/8 b - - 0 47","solution":["d5c6","f4g5","c6d5","g5f6","g6g5"],"rating":1662,"themes":["crushing","defensiveMove","endgame","long"]},{"id":632,"theme":"rook_endgame","fen":"6k1/3R4/5p1p/5KpP/5rP1/8/8/8 w - - 6 55","solution":["f5g6","g8f8","g6h6","f4g4","h6g6"],"rating":1663,"themes":["crushing","endgame","long","rookEndgame"]},{"id":633,"theme":"pin","fen":"4r3/2R2rk1/3p1ppp/3P4/pP2q3/P3P3/2Q3P1/1KR5 b - - 1 33","solution":["f7c7","c2e4","c7c1","b1c1","e8e4"],"rating":1665,"themes":["crushing","endgame","exposedKing","intermezzo"]},{"id":634,"theme":"tactic","fen":"2r1r1k1/pb2b2p/1p2pnpB/6N1/3q4/P6Q/5PPP/1R3RK1 w - - 0 24","solution":["h3e6","g8h8","g5f7"],"rating":1668,"themes":["crushing","kingsideAttack","master","masterVsMaster"]},{"id":635,"theme":"tactic","fen":"4k3/5r2/2q1p1p1/3pQ3/Pp1P2P1/1Pp5/2R2PK1/8 w - - 2 44","solution":["e5b8","e8e7","b8b4"],"rating":1671,"themes":["crushing","endgame","master","short"]},{"id":636,"theme":"tactic","fen":"2kr3r/p1p1n1pp/1pn1Q3/1Nb3B1/6q1/5N2/PP3PPP/3RR1K1 b - - 9 18","solution":["g4e6","d1d8","c6d8","e1e6","d8e6"],"rating":1674,"themes":["crushing","long","middlegame"]},{"id":637,"theme":"pin","fen":"8/2p4p/p5pk/8/2BK4/2Q2q2/P7/8 b - - 4 46","solution":["c7c5","d4c5","f3c3"],"rating":1674,"themes":["crushing","deflection","endgame","pin"]},{"id":638,"theme":"zugzwang","fen":"8/8/8/4kp2/4P3/8/4K3/8 b - - 1 61","solution":["e5e4","e2f2","e4f4"],"rating":1676,"themes":["crushing","defensiveMove","endgame","master"]},{"id":639,"theme":"double_check","fen":"1r1q1r1k/pp2n1p1/5b1p/2pB1N2/2Pp1PP1/P6Q/1P1N4/5RK1 w - - 7 25","solution":["f5h6","e7d5","h6f7","h8g8","f7d8"],"rating":1677,"themes":["advantage","discoveredCheck","doubleCheck","kingsideAttack"]},{"id":640,"theme":"tactic","fen":"r2qr1k1/pp2bpp1/6p1/2pN2P1/6P1/4B3/PPn3QP/R3R1K1 w - - 0 19","solution":["d5e7","d8e7","g2c2"],"rating":1680,"themes":["advantage","intermezzo","middlegame","short"]},{"id":641,"theme":"tactic","fen":"r4rk1/1pq1bpp1/p2p3p/2pn4/P4Q2/3B1N2/1PP2PPP/R3R1K1 w - - 0 17","solution":["f4e4","d5f6","e4e7"],"rating":1680,"themes":["crushing","master","middlegame","short"]},{"id":642,"theme":"tactic","fen":"4r1k1/pR6/2p4p/2P5/P1bP1pBP/8/4p1PK/3rR3 w - - 6 42","solution":["e1d1","f4f3","g4f3","e2d1r","f3d1"],"rating":1680,"themes":["crushing","endgame","long"]},{"id":643,"theme":"tactic","fen":"6k1/q4pp1/4pn2/3pN3/3P3Q/r6P/5P2/1R4K1 w - - 4 34","solution":["e5c6","a7c7","b1b8"],"rating":1683,"themes":["advantage","endgame","short"]},{"id":644,"theme":"fork","fen":"4kr2/pp2n1p1/2p1B2p/8/4q3/BQP3b1/P2R3P/R5K1 b - - 2 25","solution":["e4e3","g1h1","e3d2","h2g3","f8f2"],"rating":1685,"themes":["advantage","defensiveMove","fork","long"]},{"id":645,"theme":"mate_in_2","fen":"7r/R7/p2r1ppp/1p1P2k1/6P1/6PK/PP6/5R2 w - - 2 37","solution":["f1f5","g6f5","a7g7"],"rating":1686,"themes":["endgame","mate","mateIn2","rookEndgame"]},{"id":646,"theme":"tactic","fen":"r4rk1/1pp2pp1/4p3/p2p3p/5P2/P5qP/1Pn1N1P1/R1BQR1K1 b - - 1 19","solution":["g3e1","d1e1","c2e1"],"rating":1688,"themes":["crushing","kingsideAttack","middlegame","short"]},{"id":647,"theme":"tactic","fen":"2r4k/1p1b2p1/1q2p1np/pP1pP3/r5B1/5N1P/3Q2P1/2R1R2K w - - 0 29","solution":["c1c8","d7c8","d2c2"],"rating":1691,"themes":["advantage","master","middlegame","short"]},{"id":648,"theme":"deflection","fen":"2rkr3/1R2b1pp/p1p1Qn2/4P3/3P2q1/8/P4PPP/5RK1 w - - 1 23","solution":["b7d7","f6d7","e6g4"],"rating":1694,"themes":["advantage","deflection","middlegame","short"]},{"id":649,"theme":"pawn_endgame","fen":"8/p3pp2/7p/2P3k1/3KP1p1/1P6/8/8 w - - 2 39","solution":["c5c6","g4g3","d4e3","g3g2","e3f2"],"rating":1695,"themes":["crushing","endgame","long","master"]},{"id":650,"theme":"tactic","fen":"6k1/p1q3p1/7p/1p2P3/2pQR1P1/2P2r1P/PP3r2/4R1K1 b - - 12 33","solution":["c7f7","d4f2","f3f2"],"rating":1695,"themes":["crushing","endgame","quietMove","short"]},{"id":651,"theme":"zugzwang","fen":"8/2p5/1p2k2p/1PP1p1p1/1P2K2P/8/6P1/8 w - - 0 35","solution":["h4g5","h6g5","g2g4"],"rating":1702,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":652,"theme":"hanging_piece","fen":"r1q1kbnr/ppn1pp2/2p1b2p/3pP1p1/3P1P1N/P1NBB3/1PP3PP/R2QK2R b KQkq - 0 11","solution":["g5h4","d1h5","e6g4"],"rating":1705,"themes":["advantage","hangingPiece","middlegame","short"]},{"id":653,"theme":"bishop_endgame","fen":"8/8/pp1Bp1p1/3p4/kP1P1PpP/2K5/8/8 b - - 1 37","solution":["g4g3","f4f5","g3g2","d6h2","e6f5"],"rating":1705,"themes":["advancedPawn","bishopEndgame","crushing","endgame"]},{"id":654,"theme":"bishop_endgame","fen":"8/3b4/4p1kp/3pP1p1/pKpP2P1/2P2B2/6P1/8 w - - 3 59","solution":["f3d1","a4a3","b4a3"],"rating":1706,"themes":["advantage","bishopEndgame","endgame","master"]},{"id":655,"theme":"attraction","fen":"3rr1k1/ppp3bp/2n2q2/4p2P/2P1P3/B1P2p2/P2R1PBN/4QRK1 b - - 0 21","solution":["f3g2","g1g2","f6g5"],"rating":1706,"themes":["advancedPawn","advantage","attraction","kingsideAttack"]},{"id":656,"theme":"fork","fen":"5q1k/1n3p1p/p1br1N2/1p2p1P1/2p1P2P/2PnQB2/PP2R1K1/3R4 b - - 2 32","solution":["d3f4","g2h2","d6d1"],"rating":1707,"themes":["advantage","discoveredAttack","fork","middlegame"]},{"id":657,"theme":"fork","fen":"r3k2r/p4ppp/bb3q2/3pN3/1P1p4/P1N5/5PPP/R2QK2R w KQkq - 0 17","solution":["d1a4","e8f8","e5d7","f8g8","d7f6"],"rating":1707,"themes":["crushing","fork","long","middlegame"]},{"id":658,"theme":"trapped_piece","fen":"2r2rk1/pp3p2/nb1p1n1p/1N1P1qp1/1P4b1/P5P1/1B1Q1PNP/R3R1KB b - - 1 20","solution":["c8c2","d2c2","f5c2"],"rating":1707,"themes":["crushing","middlegame","short","trappedPiece"]},{"id":659,"theme":"tactic","fen":"2r2rk1/3nbppp/pq2p3/1p1bP3/3PN1Q1/P2BB3/1P4PP/R4RK1 b - - 4 17","solution":["d7e5","e4f6","e7f6","d3h7","g8h7"],"rating":1709,"themes":["crushing","long","middlegame"]},{"id":660,"theme":"tactic","fen":"1r4k1/6Pp/5p1P/2p1p3/8/1K1Rq3/p1P5/Q7 w - - 3 44","solution":["b3c3","e3e4","a1a2"],"rating":1709,"themes":["advantage","defensiveMove","endgame","short"]},{"id":661,"theme":"promotion","fen":"5k2/8/4PP2/7p/2b1B2n/8/8/6K1 w - - 1 48","solution":["e6e7","f8f7","e4c6","f7f6","e7e8q"],"rating":1711,"themes":["advancedPawn","crushing","endgame","long"]},{"id":662,"theme":"trapped_piece","fen":"1n6/8/pp3k2/3Kp3/PP2P1p1/6P1/5P2/8 w - - 4 41","solution":["d5d6","f6f7","d6c7","f7e7","c7b8"],"rating":1712,"themes":["crushing","endgame","knightEndgame","long"]},{"id":663,"theme":"mate_in_2","fen":"r4rk1/6pp/p3R3/1p4B1/3P3K/1Q1B4/PP4q1/R7 b - - 1 21","solution":["g2h2","h4g4","h7h5"],"rating":1718,"themes":["mate","mateIn2","middlegame","short"]},{"id":664,"theme":"mate_in_2","fen":"3r4/4p2p/p2k4/q5p1/P1Q5/5K2/4RPPP/3n4 w - - 2 30","solution":["e2e6","d6d7","c4c6"],"rating":1718,"themes":["endgame","mate","mateIn2","short"]},{"id":665,"theme":"queen_endgame","fen":"8/1p6/8/3P4/p5p1/P2qkp2/1P5Q/4K3 w - - 4 52","solution":["h2e5","d3e4","e5e4","e3e4","d5d6"],"rating":1720,"themes":["crushing","endgame","long","master"]},{"id":666,"theme":"mate_in_1","fen":"1b2n3/3b3p/3p4/4pp2/2PpP1Pk/3P3P/5PK1/3BB3 w - - 0 34","solution":["f2f4"],"rating":1722,"themes":["discoveredAttack","discoveredCheck","endgame","mate"]},{"id":667,"theme":"mate_in_2","fen":"r2q2kr/pp3pbp/2n3n1/3B1N2/3P4/5Q2/PPP3PP/R4K1R w - - 0 18","solution":["f5h6","g7h6","f3f7"],"rating":1726,"themes":["discoveredAttack","kingsideAttack","mate","mateIn2"]},{"id":668,"theme":"tactic","fen":"2r1r1k1/p3bpp1/1p3np1/3p2B1/q4N1Q/4R2P/P4PP1/4R1K1 w - - 2 24","solution":["e3e7","e8e7","e1e7"],"rating":1727,"themes":["advantage","middlegame","short"]},{"id":669,"theme":"rook_endgame","fen":"8/8/5p2/5P1K/4k3/7r/5R2/8 w - - 0 57","solution":["h5g6","e4e5","f2e2"],"rating":1728,"themes":["crushing","endgame","rookEndgame","short"]},{"id":670,"theme":"rook_endgame","fen":"4rk2/p1p3pp/2p5/5p2/2p1R3/2P2P2/PP2K1PP/8 w - f6 0 26","solution":["e4e8","f8e8","e2e3","e8e7","e3d4"],"rating":1730,"themes":["crushing","endgame","long","rookEndgame"]},{"id":671,"theme":"tactic","fen":"2rq1rk1/3bpp1p/p1np2p1/1ppP4/5P2/PP1P1N2/1bP1B1PP/1R1Q1RK1 w - - 0 14","solution":["d5c6","b2c3","c6d7"],"rating":1732,"themes":["advancedPawn","advantage","opening","short"]},{"id":672,"theme":"tactic","fen":"r3r1k1/pppn1Rpp/3q4/4N3/3P4/8/PPP1Q1PP/5RK1 b - - 0 16","solution":["d6d4","e2f2","d4f2"],"rating":1733,"themes":["advantage","kingsideAttack","middlegame","short"]},{"id":673,"theme":"deflection","fen":"1r6/3P2k1/4K1p1/7p/p7/4P3/1p6/1R6 w - - 1 49","solution":["b1b2","b8b2","d7d8q"],"rating":1735,"themes":["advancedPawn","crushing","deflection","endgame"]},{"id":674,"theme":"tactic","fen":"2r2qkr/1b5p/5Pp1/p5Q1/1p6/3p1p1P/PPP2R2/2K1R3 w - - 0 33","solution":["e1e7","f8e7","f6e7"],"rating":1736,"themes":["advancedPawn","advantage","middlegame","short"]},{"id":675,"theme":"hanging_piece","fen":"8/8/8/5p2/5pk1/r6R/6Kp/8 w - - 4 56","solution":["h3a3","f4f3","g2h2","f3f2","h2g2"],"rating":1738,"themes":["crushing","endgame","hangingPiece","long"]},{"id":676,"theme":"tactic","fen":"1r1r2k1/7p/4bqp1/pPb2p2/P2p4/3B1Q2/2P1RPPP/1R4K1 w - - 2 23","solution":["f3c6","b8c8","c6e6"],"rating":1739,"themes":["advantage","master","middlegame","short"]},{"id":677,"theme":"fork","fen":"6k1/1Bp1qpbp/p3p1p1/1p6/1r6/Q3N1PP/P4PK1/2R5 b - - 8 28","solution":["g7b2","c1c7","e7c7","a3b4","c7b7"],"rating":1741,"themes":["advantage","fork","long","middlegame"]},{"id":678,"theme":"tactic","fen":"r4rk1/pp3ppp/1qp2n2/3p2B1/3b1Q2/3B3P/PP3PP1/1R2R1K1 w - - 2 18","solution":["g5f6","d4f6","f4f5","g7g6","f5f6"],"rating":1743,"themes":["advantage","long","middlegame"]},{"id":679,"theme":"sacrifice","fen":"5k2/6p1/2p1Pp1p/P1P2P2/6K1/3b4/1B6/8 w - - 3 65","solution":["g4h5","d3f5","a5a6","f5e6","a6a7"],"rating":1744,"themes":["advancedPawn","bishopEndgame","crushing","endgame"]},{"id":680,"theme":"tactic","fen":"r4k2/6p1/1p5p/1N1p2nQ/P2Pp2P/3qP1b1/1K1B4/R7 w - - 10 34","solution":["d2b4","f8g8","h4g5"],"rating":1747,"themes":["advantage","middlegame","short"]},{"id":681,"theme":"fork","fen":"r2qr1k1/pR6/1p3bp1/3p1pN1/1P1n1P2/P1NQB3/8/R3KB2 b Q - 0 21","solution":["e8e3","d3e3","d4c2","e1e2","c2e3"],"rating":1747,"themes":["advantage","attraction","exposedKing","fork"]},{"id":682,"theme":"fork","fen":"1r5k/pp2n1bp/4Q1p1/PPq5/3r4/7P/3N1PP1/4RRK1 w - - 0 23","solution":["d2b3","c5b5","b3d4","g7d4","e6e7"],"rating":1750,"themes":["crushing","fork","long","middlegame"]},{"id":683,"theme":"tactic","fen":"1k5r/1P4p1/4Bp2/5P2/2Q4P/P7/2R2K1b/q7 b - - 0 35","solution":["a1g1","f2e2","g1g2","e2d1","h8d8"],"rating":1751,"themes":["advantage","endgame","exposedKing","long"]},{"id":684,"theme":"deflection","fen":"5rk1/5ppp/1Q2p3/3pP3/P2q4/8/2r2PPP/RR4K1 b - - 2 29","solution":["c2c1","b1c1","d4b6"],"rating":1754,"themes":["crushing","deflection","endgame","short"]},{"id":685,"theme":"pin","fen":"2r2Rk1/6pn/p3p1N1/1P1bR3/3P4/PqrBQ3/1B5P/1K6 b - - 0 33","solution":["h7f8","g6e7","g8f7"],"rating":1756,"themes":["advantage","middlegame","pin","short"]},{"id":686,"theme":"mate_in_2","fen":"5r2/2pk1pp1/3b2q1/1P1Qp1B1/4N2p/P5PP/6K1/8 w - - 9 30","solution":["e4c5","d7e8","d5c6"],"rating":1767,"themes":["endgame","mate","mateIn2","short"]},{"id":687,"theme":"tactic","fen":"2k1r3/1pp4p/p5p1/1q2rp2/8/2P2PP1/PP3Q1P/2KRR3 b - - 2 26","solution":["e5e2","e1e2","e8e2","d1d2","e2f2"],"rating":1769,"themes":["collinearMove","crushing","endgame","long"]},{"id":688,"theme":"tactic","fen":"r1b2rk1/6pp/2p1p3/p2p1q2/1P6/PNb1B3/R1Q3PP/3K1B1R b - - 1 20","solution":["f5f1","h1f1","f8f1","d1e2","c8a6"],"rating":1769,"themes":["crushing","exposedKing","long","middlegame"]},{"id":689,"theme":"hanging_piece","fen":"5rk1/pp4p1/2p1p2p/5rbP/3P2q1/4P2R/PPP1Q3/1K4R1 w - - 0 25","solution":["e2g4","f5f1","g4d1"],"rating":1773,"themes":["crushing","hangingPiece","master","middlegame"]},{"id":690,"theme":"mate_in_3","fen":"4rrk1/1bq2ppp/p2bp3/1ppP4/2P1Q1N1/1P6/PB3PPP/2R2RK1 w - - 3 19","solution":["g4f6","g7f6","e4g4","g8h8","b2f6"],"rating":1775,"themes":["clearance","intermezzo","kingsideAttack","long"]},{"id":691,"theme":"tactic","fen":"2kr2nr/ppp1qppp/3b4/5b2/3nPP2/6P1/PPPNN1BP/R1BQK2R b KQ - 2 9","solution":["f5g4","e2d4","g4d1"],"rating":1775,"themes":["advantage","opening","short"]},{"id":692,"theme":"mate_in_2","fen":"r3k2r/p2b1p2/3p2pp/n1p1pP2/1PB1P1P1/P1KPqN2/2PN1b1P/R2Q1R2 b kq b3 0 17","solution":["e3d4","f3d4","f2d4"],"rating":1777,"themes":["mate","mateIn2","middlegame","sacrifice"]},{"id":693,"theme":"tactic","fen":"2n2rk1/p5bp/1p1p4/3qppQ1/8/P4N2/1P1B1PPP/2R3K1 w - - 0 23","solution":["c1c7","d5f7","c7f7"],"rating":1777,"themes":["crushing","middlegame","short"]},{"id":694,"theme":"zugzwang","fen":"8/8/8/5p2/4p1k1/3RP1P1/5K2/8 b - - 0 48","solution":["e4d3","f2e1","g4f3"],"rating":1780,"themes":["crushing","endgame","master","short"]},{"id":695,"theme":"mate_in_2","fen":"7k/p1B1b1p1/7p/8/4Q3/1P1P3b/P1P1q2P/2KR4 b - - 1 30","solution":["e7a3","c1b1","e2d1"],"rating":1787,"themes":["deflection","endgame","mate","mateIn2"]},{"id":696,"theme":"tactic","fen":"r4r1k/ppN3pp/4b2q/2p5/5pn1/3B2Q1/PPP2PP1/R4RK1 w - - 0 20","solution":["g3h3","h6h3","g2h3"],"rating":1788,"themes":["crushing","middlegame","short"]},{"id":697,"theme":"mate_in_2","fen":"8/P1N5/8/4R3/2pP2pk/2r1p3/6P1/6K1 b - - 0 47","solution":["c3c1","g1h2","g4g3"],"rating":1791,"themes":["endgame","mate","mateIn2","short"]},{"id":698,"theme":"fork","fen":"2k5/1pp1b3/p3Nn1p/3p1p1B/5P2/4P2P/PPPP1q2/R1BQ3K b - - 0 21","solution":["f6e4","d1g1","e4g3","g1g3","f2g3"],"rating":1793,"themes":["crushing","exposedKing","fork","long"]},{"id":699,"theme":"discovered_attack","fen":"3r2k1/pp3pp1/7p/3N4/8/bqP4P/3Q1PP1/4R1K1 w - - 5 24","solution":["d5f6","g7f6","d2d8"],"rating":1794,"themes":["crushing","discoveredAttack","endgame","short"]},{"id":700,"theme":"pin","fen":"8/1pp2k2/p1nppr2/6Qq/P3Pp2/2PPN2P/1P3P2/5KR1 b - - 0 37","solution":["h5g5","g1g5","f4e3"],"rating":1799,"themes":["advantage","endgame","pin","short"]},{"id":701,"theme":"pin","fen":"r4rk1/pp5p/2n1bqpQ/5p2/5R2/1NPB4/P1P3PP/4R1K1 w - - 2 18","solution":["e1e6","f6e6","d3c4","e6c4","f4c4"],"rating":1801,"themes":["advantage","long","middlegame","pin"]},{"id":702,"theme":"tactic","fen":"3r2k1/5p2/5p2/p3RQ2/8/8/P4PK1/3q4 w - - 0 37","solution":["f5f6","d1g4","g2h2"],"rating":1806,"themes":["crushing","defensiveMove","endgame","short"]},{"id":703,"theme":"deflection","fen":"5rk1/pp4p1/2b4p/5R2/6Q1/4N3/Pq4PP/7K w - - 0 29","solution":["g4c4","g8h7","f5f8"],"rating":1807,"themes":["advantage","deflection","endgame","short"]},{"id":704,"theme":"tactic","fen":"r1bqk3/pp1pbp2/2n1pn2/1N4Br/2B1P3/8/PP3PPP/R2Q1RK1 w q - 3 13","solution":["g5f6","h5b5","f6e7","d8e7","c4b5"],"rating":1809,"themes":["advantage","long","middlegame"]},{"id":705,"theme":"tactic","fen":"8/p2P1pkp/1p1q2p1/2N5/5P2/2R3P1/PP4KP/8 w - - 0 34","solution":["c3d3","d6c6","g2h3"],"rating":1810,"themes":["advantage","defensiveMove","endgame","short"]},{"id":706,"theme":"tactic","fen":"rn2k2r/pp3ppp/2pqpn2/3p4/3P2PP/2N5/PPPQP3/R3KBNR b KQkq - 0 9","solution":["d6g3","e1d1","f6g4","g1h3","g4e3"],"rating":1813,"themes":["advantage","intermezzo","long","opening"]},{"id":707,"theme":"tactic","fen":"5rk1/5ppp/4pb2/2B5/1p6/1qP1Q2P/1P2RPP1/R2r2K1 w - - 2 31","solution":["a1d1","b3d1","e2e1"],"rating":1815,"themes":["advantage","middlegame","short"]},{"id":708,"theme":"mate_in_1","fen":"4R3/p1p2p1k/3p3p/5q1P/3Q4/2P5/PPP3r1/2K5 b - - 3 29","solution":["f5c2"],"rating":1815,"themes":["endgame","mate","mateIn1","oneMove"]},{"id":709,"theme":"rook_endgame","fen":"1R6/5pkp/1R2p3/rP1r1p2/5P2/p5P1/P3K2P/8 b - - 0 40","solution":["a5a4","b6c6","a4e4"],"rating":1815,"themes":["crushing","endgame","master","rookEndgame"]},{"id":710,"theme":"tactic","fen":"r2qk2r/p4ppp/1p2b3/2bpQ3/6n1/2N3P1/PP2PPBP/R1BR2K1 w kq - 6 13","solution":["e5g7","d8f6","g7f6"],"rating":1817,"themes":["crushing","opening","short"]},{"id":711,"theme":"tactic","fen":"2rk2n1/2p5/P1Qp1p2/3Pp3/P3Pq2/3KN3/5r2/R4B2 w - - 1 39","solution":["f1h3","f6f5","h3f5"],"rating":1819,"themes":["advantage","middlegame","short"]},{"id":712,"theme":"mate_in_1","fen":"5r2/1pk4p/p1b4n/4p3/2Q1P2B/2PBK3/Pq3PPP/1R1R4 b - - 8 28","solution":["h6g4"],"rating":1820,"themes":["mate","mateIn1","middlegame","oneMove"]},{"id":713,"theme":"sacrifice","fen":"r1bqkb1r/pppp1ppp/2n2n2/6B1/2PPN3/8/PP2PPPP/R2QKBNR b KQkq - 0 5","solution":["f6e4","g5d8","f8b4"],"rating":1821,"themes":["crushing","opening","sacrifice","short"]},{"id":714,"theme":"tactic","fen":"3rRrk1/1pq2ppp/2p5/p7/P2P4/2P2Q2/1P4PP/4R1K1 w - - 2 25","solution":["e1e7","d8e8","e7c7"],"rating":1821,"themes":["crushing","endgame","short"]},{"id":715,"theme":"tactic","fen":"5rk1/ppq2ppp/4p3/1n1p1PQ1/1b1P4/8/P3RB2/7K w - - 1 29","solution":["f5f6","g7g6","g5h6","c7c1","h6c1"],"rating":1822,"themes":["advantage","long","middlegame"]},{"id":716,"theme":"pawn_endgame","fen":"8/6p1/5p1p/3k1P1P/1pP1pKP1/pP6/P7/8 b - - 0 45","solution":["d5d4","c4c5","e4e3","f4f3","d4d3"],"rating":1826,"themes":["crushing","defensiveMove","endgame","long"]},{"id":717,"theme":"deflection","fen":"5qk1/4Q1p1/p2p2p1/1b1P3p/5r2/1B5P/PP4P1/4R1K1 b - - 1 31","solution":["f4f1","e1f1","f8e7"],"rating":1826,"themes":["crushing","deflection","endgame","short"]},{"id":718,"theme":"promotion","fen":"5R2/5P2/2p5/2Pb2k1/8/4K3/7p/8 b - - 0 56","solution":["d5f7","f8f7","h2h1q"],"rating":1832,"themes":["advancedPawn","crushing","endgame","promotion"]},{"id":719,"theme":"tactic","fen":"1rbqk2r/p1pp1ppp/2p2n2/b5B1/2P1P3/P1N5/1P3PPP/R2QKB1R w KQk - 3 11","solution":["b2b4","b8b4","a3b4"],"rating":1834,"themes":["advantage","opening","short"]},{"id":720,"theme":"tactic","fen":"4r2k/p5p1/1p3n1p/2qB4/2P5/P3rPPP/1PQ1R1K1/4R3 b - - 0 31","solution":["f6d5","c2d2","e3e2"],"rating":1835,"themes":["crushing","middlegame","short"]},{"id":721,"theme":"mate_in_2","fen":"8/1p2P3/1ppk4/5b2/PPBK1p2/2P5/8/8 b - - 0 39","solution":["c6c5","b4c5","b6c5"],"rating":1836,"themes":["bishopEndgame","endgame","mate","mateIn2"]},{"id":722,"theme":"deflection","fen":"3r4/2pr1bkp/pp3p2/5P2/4P2P/P1NR4/1PKR4/8 b - - 0 28","solution":["f7b3","c2b3","d7d3"],"rating":1838,"themes":["crushing","deflection","endgame","short"]},{"id":723,"theme":"interference","fen":"2Q5/pp3rkp/2pb1qn1/5p2/8/1PP4P/1P4P1/4RR1K w - - 10 32","solution":["e1e6","f6g5","e6d6"],"rating":1838,"themes":["advantage","interference","master","middlegame"]},{"id":724,"theme":"mate_in_1","fen":"8/5r2/4Q3/p1k1P3/P1p4n/4N2P/4q1P1/6K1 w - - 2 41","solution":["e6d6"],"rating":1838,"themes":["endgame","master","masterVsMaster","mate"]},{"id":725,"theme":"sacrifice","fen":"6k1/1p1r1pp1/p7/6R1/2rp4/2P2P1P/PP4P1/3R1K2 b - - 0 29","solution":["d4c3","d1d7","c3c2"],"rating":1839,"themes":["advancedPawn","advantage","endgame","master"]},{"id":726,"theme":"rook_endgame","fen":"8/4k3/4p3/2K1p1p1/8/7p/8/2R5 b - - 1 62","solution":["g5g4","c1h1","e7f6"],"rating":1841,"themes":["advantage","defensiveMove","endgame","quietMove"]},{"id":727,"theme":"tactic","fen":"r4rk1/pp4pp/2np2q1/4p1B1/2P3QP/3P4/PP3PP1/R4RK1 b - - 0 18","solution":["h7h6","g4e4","g6e4","d3e4","h6g5"],"rating":1846,"themes":["advantage","long","middlegame"]},{"id":728,"theme":"tactic","fen":"6k1/6bp/pp3pp1/2pp4/q7/2PP1PQ1/BP4PP/6K1 w - - 0 29","solution":["a2d5","g8f8","g3d6"],"rating":1850,"themes":["crushing","endgame","short"]},{"id":729,"theme":"tactic","fen":"3r1r1k/p5pp/1p2qb2/2n5/2Q5/BP2P3/P4PPP/1R1R2K1 w - - 7 23","solution":["c4e6","c5e6","a3f8"],"rating":1852,"themes":["advantage","master","middlegame","short"]},{"id":730,"theme":"tactic","fen":"8/p7/2p1Q2p/4Ppk1/P1P5/1P2n2q/6rN/6RK w - - 1 32","solution":["e6g8","g5f4","g1g2"],"rating":1852,"themes":["crushing","endgame","master","short"]},{"id":731,"theme":"tactic","fen":"r4rk1/2b2ppp/p1p3b1/1pN2n2/1P1P3q/P2B3P/1B3PP1/R2Q1RK1 b - - 0 20","solution":["h4f4","g2g3","f5g3"],"rating":1855,"themes":["crushing","middlegame","short"]},{"id":732,"theme":"tactic","fen":"3rr1k1/pb3p2/1p1qp1pQ/2p5/8/2Pp3P/PP1B1RP1/4R1K1 w - - 1 25","solution":["f2f7","d6h2","g1h2"],"rating":1856,"themes":["crushing","middlegame","short"]},{"id":733,"theme":"hanging_piece","fen":"1r6/p1qk4/Q1p1n1n1/3N4/3P1r2/P4N1p/2P2P2/1R3R1K b - - 0 32","solution":["c6d5","b1b8","c7b8"],"rating":1858,"themes":["advantage","hangingPiece","middlegame","short"]},{"id":734,"theme":"mate_in_2","fen":"2r3k1/1b5p/p3pqpP/1pn2R2/4p1Q1/1B2P3/PPPN2P1/2KR4 b - - 0 21","solution":["c5d3","c1b1","f6b2"],"rating":1859,"themes":["mate","mateIn2","middlegame","pin"]},{"id":735,"theme":"tactic","fen":"r3k2r/1b1p1ppp/p1B1p3/1p2q1B1/1b6/2N5/PP2QPPP/2R2RK1 b kq - 0 15","solution":["e5e2","c6d7","e8d7"],"rating":1860,"themes":["advantage","middlegame","short"]},{"id":736,"theme":"mate_in_3","fen":"r2q1rnk/pb1n3p/1pp2ppQ/3p3P/3P4/P1NB1N2/1PP2PP1/R3K2R w KQ - 1 16","solution":["h6h7","h8h7","h5g6","h7g7","h1h7"],"rating":1862,"themes":["attraction","discoveredCheck","doubleCheck","epauletteMate"]},{"id":737,"theme":"tactic","fen":"3k3r/ppp1n1nq/3b1p2/3p2P1/3P2Q1/2P2N2/PP1BR1RP/7K b - - 0 25","solution":["f6f5","g4h4","h7h4","f3h4","h8h4"],"rating":1864,"themes":["advantage","long","middlegame"]},{"id":738,"theme":"bishop_endgame","fen":"8/1K5p/8/3k2p1/5pP1/7P/8/6B1 b - - 5 59","solution":["d5e4","g1c5","e4f3"],"rating":1870,"themes":["bishopEndgame","crushing","endgame","short"]},{"id":739,"theme":"tactic","fen":"2k5/2pq1p1p/p2bb1r1/1p1pB2Q/8/1BP5/PPP2PPP/R5K1 b - - 2 18","solution":["e6g4","h5h7","d6e5"],"rating":1870,"themes":["crushing","master","middlegame","short"]},{"id":740,"theme":"tactic","fen":"5r1r/2q2pk1/p5p1/1p2P1N1/2pp4/5Q2/PPP3PP/5RK1 w - - 3 27","solution":["f3f6","g7g8","g5e6","f7e6","f6f8"],"rating":1872,"themes":["crushing","endgame","long"]},{"id":741,"theme":"mate_in_2","fen":"4r3/3P1R2/6k1/6pp/1p6/1B1n1PK1/P5PP/8 b - - 0 36","solution":["h5h4","g3g4","d3f2"],"rating":1873,"themes":["endgame","mate","mateIn2","short"]},{"id":742,"theme":"trapped_piece","fen":"3rk2r/2p2ppp/2p2b2/5b2/3B4/1PP5/P4PPP/RN2K2R b KQk - 2 15","solution":["d8d4","c3d4","f6d4","e1g1","d4a1"],"rating":1876,"themes":["advantage","long","master","middlegame"]},{"id":743,"theme":"tactic","fen":"r2r4/pp3kp1/n1p1q1np/4Pp2/2P5/2B2Q1P/PP3PP1/3RR1K1 w - - 3 20","solution":["d1d6","d8d6","e5d6"],"rating":1880,"themes":["advantage","collinearMove","master","middlegame"]},{"id":744,"theme":"skewer","fen":"5k1r/2q2p2/pp2p1r1/2p1P2N/3p1P2/1B1PnQ1P/PPP2R1K/8 w - - 4 37","solution":["f3a8","f8e7","a8h8","c7c6","h5g3"],"rating":1883,"themes":["advantage","defensiveMove","long","middlegame"]},{"id":745,"theme":"mate_in_2","fen":"5rk1/1R6/2R1p2p/3pP1p1/3P4/P4rPq/1B1Q1P2/6K1 b - - 0 31","solution":["f3g3","f2g3","f8f1"],"rating":1885,"themes":["clearance","killBoxMate","mate","mateIn2"]},{"id":746,"theme":"discovered_attack","fen":"r2q1r1k/ppp3pp/3p1b2/3P2N1/2P2n2/7P/PP1Q2B1/4RRK1 w - - 0 19","solution":["f1f4","f6g5","f4f8","d8f8","d2g5"],"rating":1886,"themes":["advantage","discoveredAttack","hangingPiece","kingsideAttack"]},{"id":747,"theme":"pin","fen":"1Q6/p2r1pkp/b1p1q1p1/8/8/b1P2NBP/PP3PP1/1K5R b - - 3 23","solution":["d7b7","b8e5","e6e5","g3e5","f7f6"],"rating":1891,"themes":["advantage","long","middlegame","pin"]},{"id":748,"theme":"tactic","fen":"4r1k1/pbp2ppp/3b1q2/6B1/3n2Q1/2N4P/PPP2PP1/R3N1K1 b - - 6 19","solution":["f6e5","g5f4","e5f4","g4f4","d6f4"],"rating":1893,"themes":["advantage","long","middlegame"]},{"id":749,"theme":"mate_in_3","fen":"r3k2r/ppp2pp1/2p1b3/2b1q3/4PPp1/2NP2P1/PPP4P/R1BQ1R1K b kq f3 0 12","solution":["h8h2","h1h2","e5h5","h2g2","h5h3"],"rating":1893,"themes":["attraction","kingsideAttack","long","mate"]},{"id":750,"theme":"tactic","fen":"3n1rk1/1p1br2p/3NPnp1/p4pBq/8/1BP3P1/PP1Q1P2/R3R1K1 b - - 0 26","solution":["d7c6","g5h4","h5f3"],"rating":1895,"themes":["advantage","middlegame","quietMove","short"]},{"id":751,"theme":"tactic","fen":"2R1rk2/1p4p1/p2p1rPp/1b6/4p1Q1/7P/5PKR/3q4 w - - 0 43","solution":["c8e8","b5e8","g4d1","f6g6","g2h1"],"rating":1901,"themes":["advantage","defensiveMove","intermezzo","long"]},{"id":752,"theme":"deflection","fen":"r2q1knr/ppp3pp/2n5/8/1b1Pp1b1/1QN1PN2/PP3PPP/R1B2RK1 w - - 2 11","solution":["f3e5","c6e5","b3b4","c7c5","b4c5"],"rating":1903,"themes":["advantage","deflection","long","middlegame"]},{"id":753,"theme":"deflection","fen":"8/6pp/1Pk5/p1Pb2P1/3K4/P1P5/7P/8 w - - 4 51","solution":["b6b7","c6b7","d4d5"],"rating":1909,"themes":["advancedPawn","bishopEndgame","crushing","deflection"]},{"id":754,"theme":"discovered_attack","fen":"5rk1/p3Rrpp/2p5/q7/2Q5/8/2P3PP/4R1K1 w - - 1 28","solution":["e7f7","a5e1","f7f1","g8h8","f1e1"],"rating":1909,"themes":["crushing","discoveredAttack","discoveredCheck","endgame"]},{"id":755,"theme":"discovered_attack","fen":"2rqk3/4np1Q/p2p4/4pP2/2N5/2PB4/b4PrP/2KR3R w - - 1 21","solution":["c4d6","d8d6","d3b5","a6b5","d1d6"],"rating":1910,"themes":["clearance","crushing","discoveredAttack","long"]},{"id":756,"theme":"fork","fen":"N3r1k1/pp5p/3p2pb/3P4/2P1P1pq/1QN4P/PP6/R2K3R b - - 0 21","solution":["h4f2","b3c2","f2f3","c2e2","f3h1"],"rating":1915,"themes":["advantage","exposedKing","fork","long"]},{"id":757,"theme":"tactic","fen":"3rk1r1/2pp1p2/1p6/p1b5/Q1P3pp/P2R2P1/1q3PBP/3R2K1 w - - 0 27","solution":["d3d7","e8f8","d7d8"],"rating":1915,"themes":["advantage","middlegame","short"]},{"id":758,"theme":"tactic","fen":"2r2rk1/5p1p/4BQn1/p1q5/Pp6/1P5P/5PP1/2R2RK1 b - - 0 24","solution":["c5c1","f1c1","c8c1","g1h2","f7e6"],"rating":1918,"themes":["advantage","long","middlegame"]},{"id":759,"theme":"mate_in_2","fen":"8/8/pR6/2k4p/2N3r1/1P1K4/r7/8 w - - 5 47","solution":["b3b4","c5d5","b6d6"],"rating":1924,"themes":["endgame","mate","mateIn2","short"]},{"id":760,"theme":"tactic","fen":"r2r2k1/pp3pbp/2p1bnp1/4p1B1/2P5/1PN1PB2/P4PPP/3R1RK1 w - - 2 14","solution":["d1d8","a8d8","c3e4","f6e4","g5d8"],"rating":1926,"themes":["crushing","long","master","middlegame"]},{"id":761,"theme":"rook_endgame","fen":"8/2p4k/1pP5/p7/2P1p3/Pr2P1RK/8/8 b - - 1 48","solution":["b3a3","h3g4","a3c3","g4f5","c3c4"],"rating":1926,"themes":["crushing","endgame","long","rookEndgame"]},{"id":762,"theme":"mate_in_2","fen":"r6r/pk5p/1ppb2pP/3BqP2/2Q5/8/P7/nN3K1R w - - 0 36","solution":["c4c6","b7a6","c6a4"],"rating":1929,"themes":["mate","mateIn2","middlegame","short"]},{"id":763,"theme":"tactic","fen":"1k1r4/1p1q1p1p/4p3/1pP2p2/8/2Qn2PP/5PB1/1R4K1 w - - 2 28","solution":["c5c6","b7c6","g2c6"],"rating":1934,"themes":["crushing","endgame","short"]},{"id":764,"theme":"fork","fen":"8/1ppk1p2/p1p4p/2b1PPp1/8/2P3N1/PP1r3P/5R1K w - - 0 23","solution":["g3e4","d2d5","e4f6"],"rating":1937,"themes":["advantage","endgame","fork","short"]},{"id":765,"theme":"tactic","fen":"r4rk1/ppq2ppp/2nbp3/1B1p4/3P4/1QP3B1/PP1N1PPn/R4RK1 w - - 0 14","solution":["g1h2","d6g3","f2g3"],"rating":1939,"themes":["crushing","middlegame","short"]},{"id":766,"theme":"tactic","fen":"r4rk1/p5pp/bq1bp3/8/2NPpB2/8/PP1Q1PPP/2R1K2R b K - 3 17","solution":["d6f4","c4b6","f4d2"],"rating":1941,"themes":["crushing","master","middlegame","short"]},{"id":767,"theme":"tactic","fen":"1k5r/pp3pp1/3p4/3n4/3P2q1/5NB1/PP2nK2/R6R w - - 0 27","solution":["g3d6","b8c8","h1h8","c8d7","f3e5"],"rating":1941,"themes":["crushing","long","middlegame","queensideAttack"]},{"id":768,"theme":"tactic","fen":"3b2k1/1p4pp/p1p5/P2p2Pq/1P1PpBQ1/2P4P/5P2/5K2 b - - 2 29","solution":["h5g4","h3g4","g8f7"],"rating":1943,"themes":["crushing","defensiveMove","endgame","short"]},{"id":769,"theme":"rook_endgame","fen":"8/5p2/4k1p1/7p/2p2P2/2P1K1P1/r2R3P/8 b - - 3 35","solution":["a2d2","e3d2","e6f5","d2e3","f5g4"],"rating":1944,"themes":["crushing","endgame","long","rookEndgame"]},{"id":770,"theme":"pin","fen":"1r4k1/1P3ppp/3p4/8/8/5KP1/3p1P1P/R7 w - - 2 33","solution":["f3e2","d2d1b","e2d1","g8f8","a1a8"],"rating":1947,"themes":["crushing","endgame","long","pin"]},{"id":771,"theme":"sacrifice","fen":"4r3/p3Qpkp/1p1P1np1/5p2/2q5/P4B1P/5PP1/4R1K1 w - - 3 29","solution":["e7e8","f6e8","d6d7","e8f6","d7d8q"],"rating":1949,"themes":["advancedPawn","crushing","endgame","long"]},{"id":772,"theme":"fork","fen":"3r1r2/1p4k1/2pp4/p1q1bb2/2P5/1P2N2P/P3QP2/3R1R1K w - - 0 26","solution":["e3f5","f8f5","e2g4","g7f6","g4h4"],"rating":1954,"themes":["crushing","exposedKing","fork","long"]},{"id":773,"theme":"rook_endgame","fen":"3r4/6pk/2p3pp/P2r4/3pR1P1/3RKP1P/P7/8 w - - 0 42","solution":["d3d4","d5d4","e4d4"],"rating":1955,"themes":["crushing","endgame","rookEndgame","short"]},{"id":774,"theme":"mate_in_2","fen":"6Q1/7R/1p1p1k2/1P1Pp1b1/1NP1Pp2/3BnPp1/4K1P1/6Nq b - - 2 36","solution":["h1g2","e2e1","g2f2"],"rating":1957,"themes":["fork","mate","mateIn2","middlegame"]},{"id":775,"theme":"tactic","fen":"8/6b1/2N5/5k2/1Pp2p2/2P2K2/8/8 w - - 5 71","solution":["b4b5","g7c3","b5b6","c3b4","c6b4"],"rating":1962,"themes":["crushing","endgame","long","quietMove"]},{"id":776,"theme":"tactic","fen":"2r4k/p5pp/1p1q4/2rR4/2P5/8/P2Q1PPP/2R3K1 b - - 0 26","solution":["d6d5","d2d5","c5d5"],"rating":1964,"themes":["crushing","endgame","short"]},{"id":777,"theme":"tactic","fen":"r4rk1/pp2bppp/2p2n2/5R2/4q3/1B1QB2P/PPP3P1/3R2K1 w - - 2 21","solution":["d3e4","f6e4","f5e5"],"rating":1966,"themes":["advantage","middlegame","short"]},{"id":778,"theme":"tactic","fen":"3r2rk/7p/p3p3/1p2Ppq1/2pPp1Pn/P1P1P2Q/1P1B2R1/6RK w - - 10 32","solution":["g2h2","f5g4","h3h4"],"rating":1967,"themes":["crushing","middlegame","quietMove","short"]},{"id":779,"theme":"fork","fen":"2r3k1/2p2pp1/p2q1n1p/1p2rQ2/1P1P2P1/P1P2R1P/B6K/8 w - - 0 33","solution":["d4e5","d6d2","f3f2"],"rating":1967,"themes":["crushing","fork","middlegame","short"]},{"id":780,"theme":"trapped_piece","fen":"3r1r1k/pp4pp/1bn2p2/4p3/2Q5/P4N2/1qP2PPP/R2RB1K1 w - - 2 22","solution":["d1b1","b2a1","b1a1"],"rating":1969,"themes":["advantage","middlegame","short","trappedPiece"]},{"id":781,"theme":"discovered_attack","fen":"1qb1r1k1/5pBp/pp6/3p1N2/1P2rbQ1/P2RP2P/6P1/3R2K1 b - - 2 32","solution":["f4h2","g1h1","e4g4"],"rating":1969,"themes":["crushing","discoveredAttack","kingsideAttack","middlegame"]},{"id":782,"theme":"tactic","fen":"r1bqk2r/ppp2ppp/2np4/4N3/8/2P3PP/PPP2nB1/R1BQK2R w KQkq - 0 9","solution":["e5c6","f2d1","c6d8"],"rating":1969,"themes":["advantage","opening","short"]},{"id":783,"theme":"tactic","fen":"6k1/pp4p1/8/1B6/2Pp2QK/3Pb3/PP5P/5q2 b - - 8 31","solution":["g7g5","g4g5","e3g5"],"rating":1970,"themes":["crushing","endgame","short"]},{"id":784,"theme":"hanging_piece","fen":"3r1b1r/kp3q1p/p3pP2/2P5/4bQ2/6P1/PPP3P1/2KR3R w - - 1 26","solution":["d1d8","f8h6","h1h6","h8d8","f4e4"],"rating":1971,"themes":["advantage","hangingPiece","long","middlegame"]},{"id":785,"theme":"mate_in_2","fen":"r1b3r1/1pqnb1p1/p2ppk2/7B/3NPP2/2N1n3/PPP5/2KR3R w - - 2 20","solution":["e4e5","d6e5","c3e4"],"rating":1972,"themes":["mate","mateIn2","middlegame","short"]},{"id":786,"theme":"tactic","fen":"2bq1r1k/3nb1pp/4Q3/1pPp3n/1P1P4/2NBPN1P/6PB/4K2R b K - 0 18","solution":["d7c5","e6d5","c5d3"],"rating":1972,"themes":["crushing","master","middlegame","short"]},{"id":787,"theme":"pin","fen":"3r4/6k1/pq4p1/1b1B1p2/1p1RpP1p/1P6/1Q4PP/4R1K1 b - - 0 38","solution":["d8d5","e1d1","b5d3"],"rating":1973,"themes":["crushing","defensiveMove","master","masterVsMaster"]},{"id":788,"theme":"tactic","fen":"3r2k1/p3pp1p/2p3pB/q2np3/8/2P1Q2P/P1P2PP1/1R4K1 w - - 4 21","solution":["e3e5","a5c3","b1b8","c3e1","e5e1"],"rating":1973,"themes":["crushing","endgame","long"]},{"id":789,"theme":"tactic","fen":"r4rk1/2q1nppp/b2bp3/p2pN2n/3P1B2/PR1B4/1P3PPP/3Q1RK1 w - - 0 20","solution":["d3h7","g8h8","d1h5"],"rating":1973,"themes":["crushing","intermezzo","kingsideAttack","master"]},{"id":790,"theme":"pin","fen":"4n1k1/5pb1/3p4/2pQ4/2P3p1/6B1/1q3PP1/3B2K1 w - - 0 28","solution":["d5a8","g7f8","a8e8"],"rating":1981,"themes":["advantage","endgame","pin","short"]},{"id":791,"theme":"tactic","fen":"2rr2k1/pp3p2/2n4p/3q2p1/8/P1pQ2P1/1P4PP/2N1RRK1 w - - 0 24","solution":["e1e8","g8g7","d3d5","d8d5","e8c8"],"rating":1990,"themes":["advantage","long","middlegame"]},{"id":792,"theme":"mate_in_2","fen":"1r4k1/1q3pp1/4p2p/3B4/p4PP1/P1P5/K2Q3P/1rBRR3 b - - 0 38","solution":["b1a1","a2a1","b7b1"],"rating":1991,"themes":["attraction","mate","mateIn2","middlegame"]},{"id":793,"theme":"mate_in_2","fen":"r2q3r/n1p1kp1Q/3p1p2/3P4/8/5N2/PPP3PP/R5K1 w - - 1 21","solution":["a1e1","e7d7","h7f5"],"rating":1991,"themes":["mate","mateIn2","middlegame","short"]},{"id":794,"theme":"mate_in_2","fen":"5kr1/pp1n1p2/2pbP3/5B2/2P5/2B5/PP2RPPr/4R1K1 b - - 0 23","solution":["h2g2","g1f1","g2g1"],"rating":1991,"themes":["kingsideAttack","mate","mateIn2","middlegame"]},{"id":795,"theme":"mate_in_2","fen":"r3nrk1/5p1p/pb5Q/5P2/8/5R2/PPP1p1PP/3qR2K w - - 1 27","solution":["f3g3","g8h8","h6f8"],"rating":1992,"themes":["deflection","kingsideAttack","mate","mateIn2"]},{"id":796,"theme":"pin","fen":"6Q1/8/5k2/1p2q3/6b1/8/p4BK1/8 w - - 10 86","solution":["f2d4","e5d4","g8h8","f6f7","h8d4"],"rating":1993,"themes":["crushing","endgame","exposedKing","long"]},{"id":797,"theme":"tactic","fen":"r2q2kr/pp1bb1pp/2np1n2/4p1N1/4P3/P1N2P2/1P2Q1PP/R1B2RK1 w - - 1 13","solution":["e2c4","d6d5","c3d5"],"rating":1994,"themes":["crushing","opening","short"]},{"id":798,"theme":"deflection","fen":"r5k1/ppq1p2p/2bp2p1/5r2/3B1n2/2N2B1P/PP3PP1/1R1Q1RK1 b - - 2 19","solution":["f4h3","g2h3","c6f3","d1b3","d6d5"],"rating":1995,"themes":["advantage","defensiveMove","deflection","kingsideAttack"]},{"id":799,"theme":"trapped_piece","fen":"6k1/p4r2/1p2Np2/7p/P1PB3q/3P3P/6P1/5R1K w - - 4 35","solution":["d4f2","h4f2","f1f2"],"rating":1995,"themes":["crushing","endgame","short","trappedPiece"]},{"id":800,"theme":"pawn_endgame","fen":"8/p6p/1p2k3/5p2/PP3K2/2P4P/8/8 b - - 0 41","solution":["e6d5","h3h4","d5c4","f4f5","c4c3"],"rating":1998,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":801,"theme":"sacrifice","fen":"2b5/p6p/1p1k2pP/2p2pP1/2P1pP2/2P1P3/P4K2/3B4 w - - 3 31","solution":["d1h5","g6h5","g5g6"],"rating":2002,"themes":["bishopEndgame","crushing","endgame","sacrifice"]},{"id":802,"theme":"tactic","fen":"6k1/1q3pp1/RB2p2p/1P1bQ3/3P4/5P1P/1P4PK/2r5 b - - 2 29","solution":["d5f3","a6a7","b7b6","a7f7","g8f7"],"rating":2008,"themes":["advantage","endgame","long"]},{"id":803,"theme":"queen_endgame","fen":"8/3Q2qk/2p4p/1p1p2p1/8/1P5P/P5P1/6K1 w - - 2 41","solution":["d7g7","h7g7","a2a4","g7f6","a4a5"],"rating":2008,"themes":["crushing","defensiveMove","endgame","long"]},{"id":804,"theme":"pin","fen":"2r2rk1/6p1/bp1bpq2/p2pR3/P7/5N2/BP3PPP/1Q1R2K1 w - - 6 26","solution":["e5e6","f6e6","a2d5","e6d5","d1d5"],"rating":2008,"themes":["advantage","long","middlegame","pin"]},{"id":805,"theme":"tactic","fen":"6k1/p1q3pp/2p1pr2/P3Np2/2PPpP2/B1n1P1Q1/6PP/Rr3K2 w - - 1 27","solution":["a1b1","c3b1","a3b4","b1d2","b4d2"],"rating":2011,"themes":["crushing","long","middlegame","quietMove"]},{"id":806,"theme":"tactic","fen":"2r3k1/5pp1/7p/8/8/P2P1P2/1QP1N1qP/R2K4 b - - 1 29","solution":["c8e8","b2c3","g2e2"],"rating":2011,"themes":["advantage","endgame","short"]},{"id":807,"theme":"zugzwang","fen":"8/5p2/4p1p1/1k2P1P1/3K1P1p/7P/8/8 b - - 0 38","solution":["b5b4","d4e4","b4c4","e4e3","c4c3"],"rating":2012,"themes":["crushing","defensiveMove","endgame","long"]},{"id":808,"theme":"zugzwang","fen":"8/8/5k2/2p2pp1/1pP3P1/1P2KP2/8/8 b - - 1 48","solution":["f5g4","f3g4","f6e5"],"rating":2017,"themes":["crushing","defensiveMove","endgame","master"]},{"id":809,"theme":"pin","fen":"q7/2R2p1k/p3bnr1/1p2Q3/4P3/5Pp1/PP5P/2R3K1 w - - 0 37","solution":["e5e6","g3h2","g1h1"],"rating":2018,"themes":["crushing","middlegame","pin","short"]},{"id":810,"theme":"tactic","fen":"7k/p4r1p/1p6/5q2/2Nr1b2/2Q4P/PP3P2/R5RK b - - 1 27","solution":["f5d5","g1g2","d5c4"],"rating":2021,"themes":["advantage","middlegame","short"]},{"id":811,"theme":"fork","fen":"rn2r1k1/pp2q1bR/2p2pQ1/5b2/3P4/2P1BP2/PP2N1P1/R3K3 w Q - 5 18","solution":["h7g7","e7g7","g6e8"],"rating":2023,"themes":["advantage","deflection","fork","middlegame"]},{"id":812,"theme":"double_check","fen":"2kr3r/1pp2pp1/p2bpn2/1q6/NPQ2B1p/P4BP1/5P1P/2R3K1 w - - 1 22","solution":["c4c7","d6c7","c1c7","c8b8","c7b7"],"rating":2026,"themes":["advantage","discoveredCheck","doubleCheck","long"]},{"id":813,"theme":"pawn_endgame","fen":"8/6p1/4kp2/1p6/pP2PK1P/P7/8/8 b - - 2 46","solution":["g7g5","f4g4","g5h4"],"rating":2032,"themes":["crushing","endgame","pawnEndgame","short"]},{"id":814,"theme":"discovered_attack","fen":"8/1R3P2/8/4k3/R2p4/5r2/2pK3P/3b4 b - - 0 49","solution":["c2c1q","d2c1","d1a4"],"rating":2033,"themes":["advancedPawn","crushing","discoveredAttack","endgame"]},{"id":815,"theme":"trapped_piece","fen":"6nr/p1p3pp/2p1k3/8/8/P3B3/1r1p1PPP/3R1K1R w - - 2 22","solution":["e3d4","b2b8","d4g7","g8e7","g7h8"],"rating":2035,"themes":["crushing","endgame","long","trappedPiece"]},{"id":816,"theme":"discovered_attack","fen":"2r3r1/p2p1k2/1p1Bp2p/4RnpP/5q2/3Q1P2/P5P1/3R2K1 w - - 5 29","solution":["e5e6","d7e6","d6f4"],"rating":2041,"themes":["advantage","discoveredAttack","master","middlegame"]},{"id":817,"theme":"tactic","fen":"2rqr1k1/1b3pp1/p2p1b1p/1p1P4/1Pn1N3/5P2/1BPQB1PP/1R2R1K1 w - - 8 22","solution":["e4f6","g7f6","e2c4"],"rating":2042,"themes":["advantage","middlegame","short"]},{"id":818,"theme":"tactic","fen":"2r3k1/2r4p/Q3p1pR/1p1bPpP1/1P1q1P2/5BK1/P1p3P1/7R w - - 2 38","solution":["h6h7","d4f4","g3f4","c2c1q","h1c1"],"rating":2045,"themes":["crushing","long","master","masterVsMaster"]},{"id":819,"theme":"tactic","fen":"r1bqk2r/1pp1nppp/1b3n2/pP2N1B1/P3N3/2PP4/5PPP/R2QKB1R b KQkq - 0 11","solution":["f6e4","d3e4","d8d1","a1d1","f7f6"],"rating":2045,"themes":["advantage","long","middlegame"]},{"id":820,"theme":"tactic","fen":"8/pp5p/k3P3/8/P4N2/4b1P1/3r2bP/1R2K3 w - - 3 37","solution":["f4g2","d2g2","e6e7"],"rating":2046,"themes":["advancedPawn","advantage","endgame","short"]},{"id":821,"theme":"mate_in_3","fen":"r2Bk1r1/pppb1p2/2np4/2b1p2p/2B1n3/P2P2NP/1PP2P1N/R2QK2R b KQq - 0 14","solution":["c5f2","e1f1","d7h3","f1e2","c6d4"],"rating":2046,"themes":["attackingF2F7","long","mate","mateIn3"]},{"id":822,"theme":"tactic","fen":"2r1r1k1/p3ppbp/2Q3p1/2P5/3q4/4B2P/PP3PP1/R3R1K1 b - - 2 17","solution":["c8c6","e3d4","g7d4"],"rating":2048,"themes":["advantage","middlegame","short"]},{"id":823,"theme":"tactic","fen":"3r1k2/1p1qbb1B/p4p2/P2p1Q2/3P4/2P4P/1P4P1/4R1K1 w - - 1 35","solution":["f5f4","d7d6","f4h6","f8e8","h7f5"],"rating":2052,"themes":["crushing","defensiveMove","exposedKing","long"]},{"id":824,"theme":"tactic","fen":"2r1b2r/2p2k2/2PpNq2/3P1p2/1P2pPpP/8/2Q3RK/3R1B2 b - - 2 39","solution":["f6h4","h2g1","g4g3"],"rating":2057,"themes":["advantage","master","middlegame","short"]},{"id":825,"theme":"pin","fen":"3k2rr/4b3/p3Qpq1/P2pn3/1p1Nb3/6B1/1PP1B2P/3R1RK1 b - - 0 25","solution":["h8h2","d4c6","e5c6"],"rating":2061,"themes":["advantage","master","middlegame","pin"]},{"id":826,"theme":"tactic","fen":"8/1Q3pk1/P2p4/3P4/1P1qr3/8/6PP/5R1K b - - 1 41","solution":["d4f2","b7f7","f2f7","f1f7","g7f7"],"rating":2065,"themes":["crushing","endgame","long"]},{"id":827,"theme":"tactic","fen":"8/5bP1/4pk2/2Np3p/P7/8/8/6K1 w - - 1 52","solution":["a4a5","f6g7","a5a6","f7e8","c5e6"],"rating":2067,"themes":["crushing","endgame","long","quietMove"]},{"id":828,"theme":"tactic","fen":"4r3/pp4k1/2pb3p/3p1q1b/3P1p1B/P3PQ2/1P2NPP1/5RK1 w - - 4 35","solution":["e2g3","g7g6","g3f5","h5f3","f5d6"],"rating":2070,"themes":["advantage","long","middlegame"]},{"id":829,"theme":"pin","fen":"5r1k/1pp3p1/p1bp3p/8/5bNq/P2P3P/BPP2QP1/R4R1K b - - 3 23","solution":["h4h3","h1g1","h3g4"],"rating":2075,"themes":["advantage","kingsideAttack","middlegame","pin"]},{"id":830,"theme":"tactic","fen":"2r2bk1/3r1p2/p1p3R1/2pq2Qp/P6P/2BP4/1PP3P1/5RK1 b - - 0 25","solution":["f7g6","g5g6","f8g7","f1f5","d5d6"],"rating":2075,"themes":["advantage","long","middlegame"]},{"id":831,"theme":"pawn_endgame","fen":"8/3k4/1P4P1/7p/p3p2P/P1p1K3/3p4/8 w - - 0 44","solution":["e3e2","e4e3","e2d1","e3e2","d1e2"],"rating":2076,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":832,"theme":"tactic","fen":"6k1/5pb1/pqB1p1p1/1p4Pp/8/1P3Q2/r4P2/3R2K1 w - - 2 38","solution":["d1d7","a2f2","f3f2","b6f2","g1f2"],"rating":2078,"themes":["advantage","endgame","long"]},{"id":833,"theme":"fork","fen":"r4r1k/p5pp/1p4n1/3Q1pq1/3Pn3/4PP2/PP2N1PP/2R1BRK1 b - - 0 22","solution":["g5e3","g1h1","e3e2"],"rating":2078,"themes":["advantage","fork","middlegame","short"]},{"id":834,"theme":"mate_in_3","fen":"6rk/ppRN1R2/3p3p/8/8/P5q1/1P2n1B1/7K w - - 5 33","solution":["f7h7","h8h7","d7f8","h7h8","c7h7"],"rating":2080,"themes":["attraction","discoveredCheck","doubleCheck","exposedKing"]},{"id":835,"theme":"pin","fen":"7r/2p3Rp/2kb4/4pb2/R1PP3P/1P6/1K6/8 w - - 0 45","solution":["a4a6","c6b7","a6d6"],"rating":2083,"themes":["crushing","deflection","endgame","pin"]},{"id":836,"theme":"tactic","fen":"6k1/5p1p/p2p2bB/8/q7/1p5P/6P1/4Q2K w - - 0 38","solution":["e1c3","f7f6","c3f6","a4a1","f6a1"],"rating":2083,"themes":["crushing","endgame","long"]},{"id":837,"theme":"tactic","fen":"4k3/q4p2/3P2p1/pp1B4/2p5/P7/1P4PP/3R1K2 w - - 7 34","solution":["d5c6","e8d8","d1e1","a7d7","c6d7"],"rating":2083,"themes":["crushing","endgame","long","quietMove"]},{"id":838,"theme":"mate_in_3","fen":"r1bRRb1r/k1q3p1/ppp4p/8/PPQ5/3B4/2P3P1/5K2 w - - 0 27","solution":["c4a6","c8a6","d8a8","a7b7","d3a6"],"rating":2087,"themes":["long","mate","mateIn3","middlegame"]},{"id":839,"theme":"fork","fen":"8/1p2qkp1/p6p/3p4/2r5/2NQ4/PP3PPP/4rRK1 w - - 7 25","solution":["d3d5","e7e6","f1e1","e6d5","c3d5"],"rating":2087,"themes":["advantage","endgame","fork","long"]},{"id":840,"theme":"sacrifice","fen":"r1b1r1k1/pp3pbp/1np2qp1/3p4/8/B1PQN1P1/P1PP1PBP/1R2R1K1 w - - 4 16","solution":["e3d5","e8e1","b1e1","c6d5","e1e8"],"rating":2087,"themes":["crushing","long","middlegame","sacrifice"]},{"id":841,"theme":"mate_in_3","fen":"r5k1/6p1/1p4N1/2pp1r2/8/3q4/1B6/2K1R2R w - - 0 36","solution":["h1h8","g8f7","e1e7","f7g6","e7g7"],"rating":2087,"themes":["long","mate","mateIn3","middlegame"]},{"id":842,"theme":"discovered_attack","fen":"r2q1rk1/pp3p2/2b1p1P1/2p2nNQ/8/3P2N1/P3PPB1/R3K2R b KQ - 0 22","solution":["d8a5","e1f1","f5g3","f2g3","f7g6"],"rating":2089,"themes":["advantage","discoveredAttack","discoveredCheck","long"]},{"id":843,"theme":"mate_in_2","fen":"3r1rk1/1b3ppp/p7/N3N3/Pp2n3/3P3P/1P1Q3P/2R2R1K b - - 0 27","solution":["e4f2","h1g1","f2h3"],"rating":2090,"themes":["discoveredCheck","doubleCheck","kingsideAttack","mate"]},{"id":844,"theme":"fork","fen":"4r3/1k3pp1/p1p2n1p/Pp6/1P2B2P/5Qq1/2P4b/3NRK2 w - - 1 28","solution":["e4c6","b7c7","f3g3","h2g3","e1e8"],"rating":2092,"themes":["crushing","fork","long","middlegame"]},{"id":845,"theme":"pawn_endgame","fen":"8/8/5ppp/ppk1p3/4P1P1/1P1KP2P/1P6/8 b - - 1 33","solution":["c5b4","d3c2","g6g5"],"rating":2092,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":846,"theme":"mate_in_3","fen":"7k/1p2qr1p/5p1R/p3pQ2/r7/4P1R1/2P3PP/6K1 w - - 0 30","solution":["h6h7","f7h7","f5c8","e7d8","c8d8"],"rating":2092,"themes":["endgame","long","mate","mateIn3"]},{"id":847,"theme":"tactic","fen":"r3kb1r/5p2/p1b1p1p1/1p1p3p/5P2/2PB3q/PP1BQ3/2KR2R1 w kq - 0 22","solution":["g1h1","h3g4","e2g4","h5g4","h1h8"],"rating":2096,"themes":["advantage","long","middlegame"]},{"id":848,"theme":"trapped_piece","fen":"r1bq2n1/pp1n1kbQ/2p3p1/8/4P3/8/PPP2PPP/RNB2RK1 b - - 4 12","solution":["d7f8","h7g7","f7g7"],"rating":2097,"themes":["crushing","opening","short","trappedPiece"]},{"id":849,"theme":"tactic","fen":"4rnk1/6pp/ppQ5/2pNq3/2P5/5B2/PPb3PP/5RK1 b - - 6 26","solution":["e5d4","g1h1","d4f2","h2h3","f2f1"],"rating":2098,"themes":["advantage","kingsideAttack","long","middlegame"]},{"id":850,"theme":"mate_in_3","fen":"5rk1/5pbp/p1p2np1/4r2q/4P3/P1NNQbP1/1P3P1P/R1B1R1K1 b - - 2 20","solution":["h5h2","g1h2","e5h5","h2g1","h5h1"],"rating":2099,"themes":["attraction","kingsideAttack","long","mate"]},{"id":851,"theme":"hanging_piece","fen":"2k1r3/ppp2ppp/8/8/PPB1Nn2/2b2P2/R4P2/7K w - - 4 30","solution":["e4c3","e8e1","h1h2","e1c1","a2a3"],"rating":2102,"themes":["advantage","defensiveMove","endgame","hangingPiece"]},{"id":852,"theme":"tactic","fen":"8/Q3Rpk1/5qp1/7p/7P/6P1/P2r1PK1/8 b - - 2 31","solution":["f6c6","g2h2","c6f3"],"rating":2102,"themes":["crushing","endgame","master","short"]},{"id":853,"theme":"tactic","fen":"r2q1rk1/1pp1bpp1/p1p4p/8/3pn2B/N4Q1P/PPP2PP1/3R1RK1 w - - 0 13","solution":["f3e4","e7h4","d1d4"],"rating":2103,"themes":["advantage","middlegame","short"]},{"id":854,"theme":"hanging_piece","fen":"r1b2r2/ppp2kpB/5q2/4R1p1/3p3R/3Q4/PPP2PPP/6K1 b - - 0 17","solution":["g5h4","d3c4","c8e6"],"rating":2103,"themes":["crushing","hangingPiece","master","middlegame"]},{"id":855,"theme":"hanging_piece","fen":"4r1k1/1p3p1p/p1b3p1/P7/3r1PP1/6QP/RP2B3/2B3K1 b - - 0 29","solution":["e8e2","g3b3","c6d5"],"rating":2104,"themes":["advantage","hangingPiece","master","middlegame"]},{"id":856,"theme":"tactic","fen":"6k1/pp2b1p1/2pq2P1/5Q2/3p1n1p/7P/PPP4K/4R3 w - - 0 34","solution":["f5f7","g8h8","f7e7","d6e7","e1e7"],"rating":2106,"themes":["crushing","endgame","long"]},{"id":857,"theme":"tactic","fen":"5r2/1p4kp/p1qb2pN/r7/4p3/P1P2pPQ/1P3P1P/2BR2K1 w - - 2 33","solution":["h3e6","a5e5","e6d6","c6d6","d1d6"],"rating":2106,"themes":["advantage","long","middlegame"]},{"id":858,"theme":"skewer","fen":"r2q3r/ppp1nkp1/1b1Pbn1p/8/2B5/8/P4PPP/RNBQ1RK1 w - - 1 16","solution":["c4e6","f7e6","f1e1","e6f7","e1e7"],"rating":2109,"themes":["advantage","attraction","long","middlegame"]},{"id":859,"theme":"trapped_piece","fen":"1r2kb1r/p1Qb2pp/2n2n2/2qp4/8/2P1PN2/PP3PPP/RNB1KB1R b KQk - 0 10","solution":["f8d6","b2b4","b8b4","c7d6","c5d6"],"rating":2110,"themes":["advantage","long","middlegame","trappedPiece"]},{"id":860,"theme":"bishop_endgame","fen":"8/6p1/8/p1K4P/P1P5/1P3k2/8/4b3 w - - 0 45","solution":["c5b5","f3g4","c4c5","g4h5","c5c6"],"rating":2111,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":861,"theme":"tactic","fen":"2R5/5p1k/6pp/1Pp1q3/5n2/7P/2Q2PP1/6K1 b - - 2 35","solution":["e5e1","g1h2","f4e2","c2e2","e1e2"],"rating":2112,"themes":["advantage","endgame","long","quietMove"]},{"id":862,"theme":"deflection","fen":"2k4r/B6p/1Q4p1/2N2P1b/2q1n3/3P4/P1P3PP/R4RK1 b - - 0 23","solution":["c4d4","f1f2","d4a1","b6b1","a1b1"],"rating":2119,"themes":["crushing","deflection","long","middlegame"]},{"id":863,"theme":"rook_endgame","fen":"8/4k3/4rp1p/3K4/6P1/pP2p2P/P7/2R5 b - - 1 47","solution":["e3e2","c1e1","e6d6","d5c4","d6d2"],"rating":2120,"themes":["advancedPawn","crushing","endgame","long"]},{"id":864,"theme":"tactic","fen":"8/pp6/2Pn3k/7p/PPP1B1pK/8/6P1/8 b - - 0 37","solution":["d6e4","c6b7","e4d6","h4g3","d6b7"],"rating":2122,"themes":["advantage","endgame","long"]},{"id":865,"theme":"fork","fen":"3r1rk1/ppq2ppp/2p1p3/2nnP3/4NP2/2P5/PP1BQ1PP/R3K2R b KQ - 4 17","solution":["d5f4","d2f4","c5d3","e2d3","d8d3"],"rating":2125,"themes":["crushing","exposedKing","fork","long"]},{"id":866,"theme":"attraction","fen":"r4r1k/pbpn1qbp/1p6/6p1/3B1p1N/1QP2N2/PP3P1P/R3R1K1 w - - 2 22","solution":["b3f7","f8f7","f3g5","g7d4","g5f7"],"rating":2127,"themes":["advantage","attraction","kingsideAttack","long"]},{"id":867,"theme":"sacrifice","fen":"4r1k1/p1p4p/3p2pB/2nPb1N1/2P5/7P/Pr2R1P1/5R1K w - - 1 28","solution":["e2e5","d6e5","f1f7"],"rating":2129,"themes":["crushing","middlegame","sacrifice","short"]},{"id":868,"theme":"knight_endgame","fen":"8/8/8/1N6/2p1pp2/P5k1/1P2K3/8 b - - 0 48","solution":["g3g2","b5d6","f4f3"],"rating":2131,"themes":["advantage","endgame","knightEndgame","short"]},{"id":869,"theme":"tactic","fen":"r3r1k1/p4ppp/b1p1q3/n2p3Q/8/2nP1N2/PBB2KPP/RN5R b - - 0 18","solution":["e6e3","f2g3","c3e2"],"rating":2134,"themes":["crushing","middlegame","short"]},{"id":870,"theme":"clearance","fen":"2k5/pp1r4/2nP1R2/2p1p2p/P2p2rB/2PP4/1P4P1/R5K1 w - - 1 29","solution":["f6f8","c6d8","h4e7"],"rating":2137,"themes":["clearance","crushing","endgame","short"]},{"id":871,"theme":"tactic","fen":"r3k2r/6pp/2p1p3/p2p1Pp1/2qP4/Q6P/P4P2/2N2RK1 w kq - 0 22","solution":["a3d6","a8d8","d6e6"],"rating":2143,"themes":["advantage","endgame","short"]},{"id":872,"theme":"tactic","fen":"6k1/1r5p/2RP2p1/4P1b1/1p4P1/3P4/5K2/8 w - - 0 41","solution":["c6c8","g8f7","c8c7","f7e6","c7b7"],"rating":2144,"themes":["crushing","endgame","long"]},{"id":873,"theme":"tactic","fen":"r2nk3/1b1n1p2/pq2p1p1/1p1pP1Nr/5P1P/P1PBB3/2P1K1Q1/R6R b q - 2 19","solution":["d5d4","d3e4","d4e3"],"rating":2144,"themes":["crushing","master","middlegame","short"]},{"id":874,"theme":"tactic","fen":"1R3nk1/p1Q2p1n/2P1p1pp/3bP3/3P2qN/6P1/2B2P1P/6K1 b - - 0 32","solution":["g4e2","c7a5","e2c2"],"rating":2144,"themes":["crushing","middlegame","short"]},{"id":875,"theme":"tactic","fen":"1k1r3r/ppp2p1p/3b4/3p2p1/6Q1/P1NPP1qP/1PP3P1/R1B2RK1 b - - 4 15","solution":["g3h2","g1f2","f7f5"],"rating":2145,"themes":["advantage","middlegame","short"]},{"id":876,"theme":"sacrifice","fen":"2rrbk2/1p2Nppp/p4n2/3p4/6P1/1P2PR1P/PqPQN3/R5K1 w - - 3 24","solution":["d2b4","b2a1","f3f1","a1f1","g1f1"],"rating":2149,"themes":["crushing","defensiveMove","long","middlegame"]},{"id":877,"theme":"tactic","fen":"3r1k2/p4pp1/1p6/1q3PQ1/4P3/6P1/P2pK3/2rR3R w - - 4 41","solution":["e2f2","b5c5","f2g2"],"rating":2151,"themes":["crushing","defensiveMove","endgame","short"]},{"id":878,"theme":"tactic","fen":"r4rk1/p2bnppp/1p6/2p1p3/2BbP1q1/1Q2BN2/PP3PP1/3R1RK1 w - - 2 17","solution":["e3d4","e5d4","f3e5","g4f4","e5d7"],"rating":2153,"themes":["advantage","long","middlegame"]},{"id":879,"theme":"tactic","fen":"1rr3k1/1bR2pp1/p2Qpn1p/1p6/3P3N/3BP3/qP3PPP/5RK1 w - - 2 21","solution":["d6e7","c8c7","e7c7"],"rating":2153,"themes":["crushing","middlegame","short"]},{"id":880,"theme":"tactic","fen":"5rk1/1b5p/p3p1pP/3q1p2/2NP4/7r/P4QP1/2RR2K1 w - - 2 30","solution":["c4b6","d5g2","f2g2","b7g2","g1g2"],"rating":2153,"themes":["advantage","long","middlegame"]},{"id":881,"theme":"tactic","fen":"6k1/p4pp1/1p6/2pQ4/5q2/P1n2N1P/2P2PP1/5K2 w - - 0 30","solution":["d5d8","g8h7","d8d3"],"rating":2154,"themes":["advantage","endgame","short"]},{"id":882,"theme":"tactic","fen":"r2q1rk1/pp2ppbp/3p1n2/2p5/2n1P2Q/2N3R1/PPP3PP/R1B3K1 w - - 0 14","solution":["c1h6","c4e5","h6g7"],"rating":2156,"themes":["crushing","master","middlegame","short"]},{"id":883,"theme":"tactic","fen":"5q1k/6b1/r2p4/2nPn3/p3P1Pp/2N1B3/PPQ1N1K1/5R2 b - - 1 28","solution":["h4h3","g2g1","h3h2","g1g2","f8f1"],"rating":2161,"themes":["advancedPawn","crushing","exposedKing","long"]},{"id":884,"theme":"fork","fen":"r7/6kp/2N3p1/p1P3b1/3Qp3/4PrPq/1R5P/2R3K1 b - - 4 32","solution":["g7h6","c6e5","g5e3","d4e3","f3e3"],"rating":2162,"themes":["crushing","defensiveMove","fork","long"]},{"id":885,"theme":"tactic","fen":"3r2k1/Qp3ppp/2p5/8/N3P1n1/5R2/PPPBK1P1/R6q b - - 4 23","solution":["h1g2","f3f2","g4f2"],"rating":2165,"themes":["crushing","middlegame","short"]},{"id":886,"theme":"fork","fen":"4br2/6k1/p3Q3/1p1pP1qp/3P2p1/1P1B4/P5PP/5RK1 b - - 2 31","solution":["g5e3","g1h1","e3d3","e6e7","f8f7"],"rating":2166,"themes":["crushing","endgame","fork","long"]},{"id":887,"theme":"hanging_piece","fen":"2k2r2/pp4R1/2p5/3p4/PP1Pp2R/2P1P3/4N1r1/3K1N2 b - - 0 38","solution":["f8f1","d1c2","g2g7"],"rating":2169,"themes":["advantage","endgame","hangingPiece","short"]},{"id":888,"theme":"tactic","fen":"r1bqk2r/pp1pbpp1/2n1p2p/8/Q3n2B/2NB4/PPP2PPP/R3K1NR w KQkq - 0 9","solution":["h4e7","e4c3","a4c6","d7c6","e7d8"],"rating":2172,"themes":["advantage","long","opening"]},{"id":889,"theme":"sacrifice","fen":"4r3/1p6/1R1k1r2/5pNp/5K1P/4p3/PP1p4/3R4 b - - 1 35","solution":["d6c7","b6f6","e3e2"],"rating":2172,"themes":["advancedPawn","advantage","defensiveMove","endgame"]},{"id":890,"theme":"tactic","fen":"7Q/pkp5/1p2b3/2q1P3/8/8/PP6/KN6 b - - 0 37","solution":["c5c4","h8h1","e6d5","h1d5","c4d5"],"rating":2172,"themes":["crushing","defensiveMove","endgame","long"]},{"id":891,"theme":"clearance","fen":"r2k2r1/pppbn1q1/3p2Np/3P1p1B/2P2N2/1P6/P5P1/3RQ1K1 w - - 13 28","solution":["e1h4","g8e8","d1e1"],"rating":2178,"themes":["clearance","crushing","middlegame","short"]},{"id":892,"theme":"tactic","fen":"r6r/pp2k3/n3b2p/q1pn2p1/3b4/P1NQ2p1/1PP1NPPP/2KR1B1R w - - 0 18","solution":["c3d5","e6d5","e2d4","c5d4","d3d4"],"rating":2178,"themes":["advantage","long","middlegame"]},{"id":893,"theme":"tactic","fen":"1rbq1rk1/2b2ppp/1n2p3/p2pP3/1n1P4/BN3N2/3QBPPP/R4RK1 w - - 4 19","solution":["b3a5","b6c4","a5c4"],"rating":2186,"themes":["crushing","master","middlegame","short"]},{"id":894,"theme":"fork","fen":"7R/4kp2/1q2p3/3pPnp1/2pP4/2P2PP1/2Q1NKP1/1r6 b - - 2 28","solution":["b1f1","f2f1","f5e3","f1f2","e3c2"],"rating":2188,"themes":["attraction","crushing","endgame","fork"]},{"id":895,"theme":"tactic","fen":"r4rk1/p3ppbp/1p4p1/nq1NP2P/3Q4/5N2/PPP2PP1/2K4R w - - 0 22","solution":["d5e7","g8h8","h5g6","b5f1","h1f1"],"rating":2192,"themes":["crushing","kingsideAttack","long","middlegame"]},{"id":896,"theme":"tactic","fen":"r1bq2k1/ppp2pp1/2n4p/3nr2Q/2B5/8/PPPB2PP/R4RK1 w - - 0 16","solution":["h5f7","g8h8","f7f8","d8f8","f1f8"],"rating":2192,"themes":["advantage","kingsideAttack","long","middlegame"]},{"id":897,"theme":"pin","fen":"k6r/1q1p1pp1/p4n2/2p1P1Q1/1P4P1/P1P5/5KB1/R1B2r2 w - - 0 29","solution":["f2f1","h8h1","g2h1","b7h1","f1e2"],"rating":2193,"themes":["crushing","long","middlegame","pin"]},{"id":898,"theme":"deflection","fen":"kr4r1/n1R4Q/3p2p1/8/K7/NPP5/7P/6q1 w - - 3 34","solution":["h7f7","g1b6","f7d5","b8b7","d5g8"],"rating":2194,"themes":["advantage","deflection","exposedKing","long"]},{"id":899,"theme":"discovered_attack","fen":"3kr3/2pn1R2/1p1pBp2/p2r4/2b5/5K1P/6P1/4R3 w - - 0 33","solution":["f7d7","d8c8","d7e7","c8b7","e7e8"],"rating":2194,"themes":["advantage","discoveredAttack","discoveredCheck","long"]},{"id":900,"theme":"tactic","fen":"1r4k1/4bppp/p3p3/2p5/2Np4/1P1Q3P/q4PP1/1R4K1 w - - 2 28","solution":["d3d1","a2b1","d1b1"],"rating":2195,"themes":["advantage","endgame","short"]},{"id":901,"theme":"tactic","fen":"7R/1kP5/p2K4/8/1P4b1/P4p1p/8/8 b - - 2 44","solution":["f3f2","h8b8","b7a7","d6c6","g4f3"],"rating":2200,"themes":["advancedPawn","crushing","endgame","long"]},{"id":902,"theme":"fork","fen":"3r1rk1/pp4q1/7p/2P1n3/1PPpRp1n/P6Q/1B3PP1/3R1BK1 b - - 0 26","solution":["h4f3","g1h1","f3g5","h3h4","g5e4"],"rating":2201,"themes":["crushing","fork","long","master"]},{"id":903,"theme":"bishop_endgame","fen":"b7/8/2p2K2/5P2/1k6/8/8/8 w - - 0 51","solution":["f6e5","c6c5","f5f6","a8c6","f6f7"],"rating":2202,"themes":["advancedPawn","bishopEndgame","crushing","endgame"]},{"id":904,"theme":"tactic","fen":"8/4Q1pk/2p2r1p/1p1p4/8/1P2Ppqb/4B1P1/6RK w - - 0 35","solution":["g2f3","h3g2","g1g2","g3h4","h1g1"],"rating":2211,"themes":["advantage","endgame","long"]},{"id":905,"theme":"pin","fen":"rr4k1/2p3pp/2p3P1/q2p4/2nP4/1P1NP3/P1P1Q3/RK5R b - - 0 27","solution":["a5c3","a2a4","c4d2","e2d2","c3d2"],"rating":2213,"themes":["crushing","long","middlegame","pin"]},{"id":906,"theme":"mate_in_1","fen":"r4r2/p2R4/1p2p1p1/5pP1/2Np1n2/1P1k4/P7/1K2R3 w - - 4 36","solution":["e1e3"],"rating":2214,"themes":["endgame","hookMate","mate","mateIn1"]},{"id":907,"theme":"tactic","fen":"r6r/p4k2/3b1qpp/1Q2pp2/8/2P2P1P/PP3PP1/2KR3R w - - 1 19","solution":["b5d5","f6e6","d5d6"],"rating":2215,"themes":["crushing","middlegame","short"]},{"id":908,"theme":"promotion","fen":"8/8/rkp2P2/3p4/1P6/7p/1P1K4/R7 w - - 0 45","solution":["f6f7","a6a1","f7f8q"],"rating":2217,"themes":["advancedPawn","crushing","endgame","master"]},{"id":909,"theme":"rook_endgame","fen":"8/4k3/5R2/1r3pKp/7P/6P1/8/8 w - - 13 50","solution":["f6f5","b5b3","g5f4"],"rating":2218,"themes":["crushing","defensiveMove","endgame","rookEndgame"]},{"id":910,"theme":"tactic","fen":"r2q1bkr/pp1np1pp/2p2n2/6N1/8/5Q1P/PPPP1PP1/R1B1K2R w KQ - 2 10","solution":["f3f5","d7c5","f5c5"],"rating":2224,"themes":["advantage","opening","short"]},{"id":911,"theme":"tactic","fen":"8/pp5k/3QBqp1/7p/3pPr2/8/PP4KP/1R6 b - - 1 34","solution":["f4g4","e6g4","f6d6"],"rating":2225,"themes":["crushing","endgame","short"]},{"id":912,"theme":"sacrifice","fen":"1r3rk1/p1p1qp2/2pb1n1p/4P1p1/6b1/2N2NB1/PPP1QPPP/2KR3R b - - 0 14","solution":["d6a3","b2a3","e7a3"],"rating":2226,"themes":["advantage","middlegame","queensideAttack","sacrifice"]},{"id":913,"theme":"tactic","fen":"r6k/pp6/2pp2p1/7p/3PP1nq/P1N1b2P/1PP1Q1P1/R4R1K b - - 0 25","solution":["h4g3","e2g4","h5g4","c3e2","g3h4"],"rating":2226,"themes":["crushing","long","middlegame"]},{"id":914,"theme":"fork","fen":"3r4/8/pbk1pPQp/1p2p3/n1q4p/P1P4P/1P3PP1/3R2K1 w - - 3 39","solution":["d1d8","b6d8","g6e8","c6b7","f6f7"],"rating":2228,"themes":["advancedPawn","advantage","endgame","fork"]},{"id":915,"theme":"tactic","fen":"r2qk2r/pb2bppp/5n2/3Np1B1/2B5/5Q2/PPP2PPP/R3K2R b KQkq - 0 11","solution":["b7d5","c4b5","e8f8"],"rating":2231,"themes":["advantage","defensiveMove","middlegame","short"]},{"id":916,"theme":"tactic","fen":"r6k/p1pQ1p1p/1p3p2/8/1n1Pp3/3qP1PB/P1r4P/4R1K1 w - - 0 29","solution":["d7f7","b4d5","h3f5","d3e3","e1e3"],"rating":2232,"themes":["advantage","long","middlegame"]},{"id":917,"theme":"fork","fen":"8/6rk/6p1/2Q4p/2P5/1p1qR1P1/5P1P/6K1 b - - 1 41","solution":["b3b2","e3d3","b2b1q","g1g2","b1d3"],"rating":2235,"themes":["advancedPawn","advantage","endgame","fork"]},{"id":918,"theme":"pin","fen":"6k1/B7/4p1p1/7p/2P3q1/4Q1P1/P4P1P/3r1BK1 b - - 6 32","solution":["g4c4","g1g2","c4f1"],"rating":2236,"themes":["advantage","endgame","master","pin"]},{"id":919,"theme":"pawn_endgame","fen":"8/2p3p1/p1p5/5p2/1PP2P2/4KPk1/P7/8 b - - 0 41","solution":["c6c5","b4b5","a6a5"],"rating":2238,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":920,"theme":"pawn_endgame","fen":"6k1/1p6/pP1p1Pp1/3PpK2/5p2/5P2/P7/8 w - - 0 42","solution":["f5e6","g8f8","e6d6","e5e4","d6c7"],"rating":2241,"themes":["crushing","defensiveMove","endgame","long"]},{"id":921,"theme":"tactic","fen":"8/3pk3/1P3Rp1/2K1PbPp/5P2/6r1/8/8 w - - 0 49","solution":["b6b7","g3c3","c5b4","c3c1","f6b6"],"rating":2242,"themes":["advancedPawn","crushing","defensiveMove","endgame"]},{"id":922,"theme":"pawn_endgame","fen":"8/6p1/p6p/1p2k2P/2P1p3/1P6/P4K2/8 w - - 2 41","solution":["c4b5","a6b5","a2a4"],"rating":2248,"themes":["crushing","endgame","pawnEndgame","short"]},{"id":923,"theme":"sacrifice","fen":"r5k1/2p2ppp/1p5q/3NP3/2P2n2/p4P2/3Q1P1P/1K1B3R b - - 1 27","solution":["f4d5","d2h6","d5c3","b1a1","g7h6"],"rating":2250,"themes":["advantage","exposedKing","intermezzo","long"]},{"id":924,"theme":"tactic","fen":"r4rk1/pp2pp1p/1qnp2p1/3b4/3b4/1P1BBN1P/P4PP1/R2QR1K1 w - - 0 16","solution":["f3d4","c6d4","d3c4","d5c4","e3d4"],"rating":2250,"themes":["advantage","intermezzo","long","middlegame"]},{"id":925,"theme":"tactic","fen":"3r3k/p6b/1p2Q3/8/4p1B1/2P4P/PP3qPK/8 w - - 6 45","solution":["e6e5","h8g8","e5g5"],"rating":2252,"themes":["advantage","endgame","short"]},{"id":926,"theme":"tactic","fen":"r5k1/1q3ppb/3Rp2p/Q3P3/1p2PB2/5P2/1P4PP/7K b - - 4 24","solution":["b7c8","a5a8","c8a8"],"rating":2253,"themes":["advantage","endgame","quietMove","short"]},{"id":927,"theme":"fork","fen":"5k2/2q3b1/pN1p1r2/P2Pp3/6Q1/4K3/8/6R1 w - - 12 46","solution":["b6d7","f8e7","d7f6"],"rating":2253,"themes":["crushing","endgame","fork","short"]},{"id":928,"theme":"tactic","fen":"4bb1r/1pq2pk1/2r1P1Bp/3p3Q/p4N2/P5R1/1P4PP/1R5K b - - 0 27","solution":["c6c1","h5d1","c1d1","b1d1","c7f4"],"rating":2254,"themes":["crushing","kingsideAttack","long","middlegame"]},{"id":929,"theme":"attraction","fen":"8/pp1N1Qpk/2p4p/3p1K2/1P1PnB2/7P/P5q1/8 b - - 1 33","solution":["e4d6","f5e6","d6f7","e6f7","g2g6"],"rating":2254,"themes":["advantage","attraction","endgame","long"]},{"id":930,"theme":"hanging_piece","fen":"8/8/6p1/5p1p/2k4P/1p1NK1P1/4PP2/4b3 w - - 0 47","solution":["d3e1","b3b2","e1f3"],"rating":2255,"themes":["advantage","defensiveMove","endgame","hangingPiece"]},{"id":931,"theme":"tactic","fen":"rb2r1k1/1p3pp1/p2q3p/3p1b1N/8/1PQ1PB2/PB3P1P/2RR2K1 b - - 0 23","solution":["d6h2","g1f1","b8e5"],"rating":2256,"themes":["crushing","kingsideAttack","master","middlegame"]},{"id":932,"theme":"pin","fen":"8/1r5k/1P5P/1qPpPp2/7b/4p3/2Q1K2P/6R1 w - - 1 50","solution":["e2f3","b5e8","c2f5"],"rating":2256,"themes":["crushing","defensiveMove","endgame","master"]},{"id":933,"theme":"fork","fen":"5rk1/p3q1p1/7p/3Np3/4n3/8/PPP1Q1PP/5RK1 b - - 0 24","solution":["f8f1","g1f1","e7f7","f1e1","f7d5"],"rating":2256,"themes":["advantage","attraction","endgame","fork"]},{"id":934,"theme":"fork","fen":"r1b3k1/p3qp1p/1ppp1npQ/2b5/2BnP3/P1N2P2/1PP1N1PP/2KR3R b - - 1 17","solution":["d4f5","e4f5","c5e3","h6e3","e7e3"],"rating":2267,"themes":["advantage","clearance","fork","long"]},{"id":935,"theme":"tactic","fen":"1k5r/1pp2p2/p2b4/4n3/5nP1/P1N2P2/1PP1B3/3RRK2 b - - 0 26","solution":["d6c5","d1d8","h8d8"],"rating":2275,"themes":["advantage","middlegame","short"]},{"id":936,"theme":"tactic","fen":"5r1k/p1bb2pp/1pp1qR2/8/3BP1Q1/2P3PP/PP5K/5R2 b - - 0 26","solution":["g7f6","g4e6","d7e6","d4f6","h8g8"],"rating":2276,"themes":["advantage","long","middlegame"]},{"id":937,"theme":"tactic","fen":"r4r2/1ppq1p1k/1p1p3p/4n2P/2B1P3/6Q1/PP3P2/3RR1K1 w - - 3 20","solution":["g3e5","f8g8","g1h2","a8a5","d1d5"],"rating":2281,"themes":["advantage","long","middlegame"]},{"id":938,"theme":"tactic","fen":"8/p2R4/k1q3Pp/B6P/4rb2/P2Q4/1PP2p2/1K6 b - - 7 37","solution":["c6c4","d3c4","e4c4","d7d1","a6a5"],"rating":2282,"themes":["crushing","defensiveMove","endgame","long"]},{"id":939,"theme":"tactic","fen":"r1b2rk1/ppppqppp/2n4n/2b3N1/2BpP3/3Q4/PPP2PPP/RNB2RK1 w - - 10 8","solution":["e4e5","g7g6","d3h3"],"rating":2283,"themes":["advantage","opening","quietMove","short"]},{"id":940,"theme":"sacrifice","fen":"r1q4k/1b5p/1Q4p1/pP1p4/6r1/1P1N4/5PPP/R4RK1 b - - 0 31","solution":["g4g2","g1g2","c8g4","g2h1","g4f3"],"rating":2284,"themes":["advantage","attraction","long","middlegame"]},{"id":941,"theme":"tactic","fen":"8/3kp2p/qP1p1pp1/Nr1P4/Q3P3/7P/5PP1/6K1 w - - 14 40","solution":["b6b7","a6b6","a5c4","b6b7","c4a3"],"rating":2285,"themes":["advancedPawn","crushing","endgame","long"]},{"id":942,"theme":"tactic","fen":"rnbq1rk1/1p2bpp1/p2p4/4p1B1/4n3/1NN4P/PPP2P2/R2QKB1R w KQ - 0 12","solution":["g5e7","e4c3","d1d6","d8d6","e7d6"],"rating":2286,"themes":["advantage","long","opening"]},{"id":943,"theme":"tactic","fen":"r4r1k/pp4p1/4QnqB/8/8/7R/PP3P1P/R6K b - - 2 29","solution":["g7h6","a1g1","g6h7"],"rating":2287,"themes":["advantage","defensiveMove","middlegame","short"]},{"id":944,"theme":"fork","fen":"rn3rk1/ppqb1ppp/4p2n/3pP3/1P1N1P2/P2B4/2P3PP/R1BQK2R b KQ - 1 12","solution":["c7c3","d1d2","c3a1","c2c3","f8c8"],"rating":2290,"themes":["advantage","fork","long","master"]},{"id":945,"theme":"knight_endgame","fen":"3n4/K1k3p1/7p/1P6/P7/7P/6P1/8 w - - 1 50","solution":["a4a5","c7c8","a5a6"],"rating":2291,"themes":["crushing","endgame","knightEndgame","quietMove"]},{"id":946,"theme":"hanging_piece","fen":"r2q1rk1/p1pb1ppp/2p2n2/8/B7/8/PPP2PPb/RNBQR1K1 w - - 0 13","solution":["g1h2","f6g4","h2g3"],"rating":2294,"themes":["advantage","hangingPiece","opening","short"]},{"id":947,"theme":"bishop_endgame","fen":"6B1/8/3p4/p3kp2/PbP3pP/4K1P1/8/8 b - - 1 55","solution":["b4e1","e3d3","e1g3","h4h5","g3f4"],"rating":2295,"themes":["bishopEndgame","crushing","defensiveMove","endgame"]},{"id":948,"theme":"skewer","fen":"8/2pq4/p5p1/7p/4kP1Q/6P1/P1P2K2/8 w - - 0 47","solution":["h4h1","e4d4","h1d1","d4c5","d1d7"],"rating":2295,"themes":["crushing","endgame","long","queenEndgame"]},{"id":949,"theme":"tactic","fen":"3r3r/6np/R4pk1/1p4P1/5P2/4P3/8/2R3K1 w - - 1 35","solution":["a6f6","g6h5","g1f2"],"rating":2296,"themes":["crushing","defensiveMove","endgame","short"]},{"id":950,"theme":"tactic","fen":"3rr3/pp2q1kp/6b1/8/8/1QP2P2/PP2B1R1/3RK3 b - - 3 27","solution":["e7h4","e1f1","h4h1","g2g1","h1h3"],"rating":2296,"themes":["crushing","exposedKing","long","middlegame"]},{"id":951,"theme":"tactic","fen":"R7/4kpp1/1P2p2p/4n3/P2pbb2/7P/4K3/3R4 w - - 0 40","solution":["a8a7","e7f6","d1d4"],"rating":2300,"themes":["advantage","endgame","short"]},{"id":952,"theme":"tactic","fen":"2Rb2k1/3q3r/Q5pp/1p1ppn2/1P1P4/P4P1P/B4P2/6K1 w - - 0 34","solution":["a6a8","g8g7","c8d8"],"rating":2302,"themes":["crushing","middlegame","short"]},{"id":953,"theme":"deflection","fen":"8/1p6/6N1/8/1pkp1PP1/7P/b7/2K5 w - - 1 39","solution":["c1b2","d4d3","g6e5","c4d5","e5d3"],"rating":2303,"themes":["crushing","deflection","endgame","long"]},{"id":954,"theme":"fork","fen":"3r4/pp4k1/2p2qp1/7p/3r1N1P/5PQ1/PP6/2KR4 w - - 0 28","solution":["d1d4","f6d4","f4e6","g7f7","e6d4"],"rating":2306,"themes":["attraction","crushing","endgame","fork"]},{"id":955,"theme":"tactic","fen":"r6k/3b1Q1p/2p2p2/1p1p1P2/p2q1b2/P2B4/NPP2P1P/2K1R3 w - - 1 24","solution":["c1b1","f4e5","a2c3","a8g8","f7d7"],"rating":2309,"themes":["crushing","defensiveMove","long","middlegame"]},{"id":956,"theme":"tactic","fen":"3n4/3knp1p/p3p1p1/1pB1P1P1/4BP2/1P6/P4K1P/8 w - - 1 33","solution":["c5e7","d7e7","f2e3","e7d7","e3d4"],"rating":2310,"themes":["advantage","defensiveMove","endgame","long"]},{"id":957,"theme":"deflection","fen":"r3k2B/5p2/p2b3p/1p1q1bp1/3pn3/1P3Q2/1PP2PPP/2KR3R w q - 2 18","solution":["d1d4","d5e6","d4d6","e6d6","f3f5"],"rating":2310,"themes":["advantage","deflection","long","middlegame"]},{"id":958,"theme":"tactic","fen":"4r3/5pk1/6p1/3q2P1/4pQ2/PR6/5PK1/8 w - - 7 45","solution":["f4f6","g7f8","b3h3","e4e3","f2f3"],"rating":2311,"themes":["crushing","defensiveMove","endgame","long"]},{"id":959,"theme":"tactic","fen":"5rk1/p2Q1ppp/8/Pr6/3P4/4PB2/1qb2PPP/R1R3K1 b - - 4 27","solution":["b5a5","a1b1","c2b1"],"rating":2313,"themes":["advantage","middlegame","short"]},{"id":960,"theme":"tactic","fen":"6k1/2p3p1/p1P5/1p3r1p/1P2p1P1/1P2K2P/8/8 w - - 0 41","solution":["g4f5","g8f7","e3e4","f7f6","e4f4"],"rating":2313,"themes":["advantage","defensiveMove","endgame","long"]},{"id":961,"theme":"zugzwang","fen":"8/5k2/6p1/5pK1/5P2/8/7P/8 w - - 6 58","solution":["g5h6","f7f6","h2h4","f6f7","h6h7"],"rating":2315,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":962,"theme":"pawn_endgame","fen":"8/8/p2k2pp/1p3p2/3K4/1P4PP/P4P2/8 w - - 0 42","solution":["b3b4","f5f4","g3f4"],"rating":2317,"themes":["crushing","endgame","pawnEndgame","quietMove"]},{"id":963,"theme":"tactic","fen":"6k1/6p1/5n2/3p1p1p/p2P1P1P/4pPP1/P1R3K1/1r3N2 b - - 1 35","solution":["b1e1","f1e3","e1e3"],"rating":2318,"themes":["advantage","endgame","master","short"]},{"id":964,"theme":"tactic","fen":"3r1q2/2k2N1p/1p2r1pb/p1pn1p2/3p1P2/1P3Q1P/3B2PK/R3R3 w - - 4 40","solution":["f7d8","e6e1","f3d5","f8d8","d5d8"],"rating":2321,"themes":["advantage","capturingDefender","long","middlegame"]},{"id":965,"theme":"sacrifice","fen":"5rk1/6bb/3p3p/1B1Nn3/2N1pp1q/2P2P2/1P4PP/Q4RK1 b - - 0 24","solution":["e5f3","g2f3","h4g5"],"rating":2322,"themes":["advantage","kingsideAttack","middlegame","sacrifice"]},{"id":966,"theme":"tactic","fen":"8/R4p1k/p4qpp/1p1pp3/3n4/PP1Q1P1P/6P1/6K1 b - - 0 30","solution":["f6b6","a7f7","h7g8"],"rating":2324,"themes":["crushing","endgame","short"]},{"id":967,"theme":"tactic","fen":"r2q1rk1/pQpbbppp/n3pn2/3p2B1/2PP4/2N1PN2/PP3PPP/R3KB1R b KQ - 0 8","solution":["a6b4","g5f6","g7f6"],"rating":2326,"themes":["advantage","middlegame","short"]},{"id":968,"theme":"tactic","fen":"5rk1/R4p2/p1q1p1p1/1p2P3/1B3Q2/1P4P1/P4Pb1/6K1 b - - 3 34","solution":["g2h3","f2f3","c6b6"],"rating":2329,"themes":["advantage","endgame","quietMove","short"]},{"id":969,"theme":"pin","fen":"r1b2rk1/pp3p2/2p1p1p1/2n1q3/4N3/3P1P2/P1PQK1R1/6R1 w - - 2 26","solution":["d2h6","e5g7","g2g6","f7g6","g1g6"],"rating":2330,"themes":["crushing","long","middlegame","pin"]},{"id":970,"theme":"pawn_endgame","fen":"8/8/4k2p/4p1p1/4P3/4K1PP/8/8 w - - 0 42","solution":["e3d3","g5g4","h3h4","e6d6","d3c4"],"rating":2331,"themes":["crushing","defensiveMove","endgame","long"]},{"id":971,"theme":"tactic","fen":"4rr1k/1b1q3p/p5p1/1pb2p2/P4B2/3ppN1Q/BP2R1PP/R5K1 w - - 0 25","solution":["f3e5","d7g7","e5d3"],"rating":2333,"themes":["advantage","middlegame","short"]},{"id":972,"theme":"tactic","fen":"r1b1k2r/pp3ppp/4p3/q7/1n1P4/2RB1N2/P1Q2PPP/4K2R w Kkq - 1 16","solution":["c3c8","a8c8","c2c8","e8e7","c8b7"],"rating":2334,"themes":["advantage","long","middlegame"]},{"id":973,"theme":"mate_in_3","fen":"5rr1/ppp2pk1/3qB2p/3Pp2Q/2P5/5R2/P1P3PP/6K1 w - - 6 22","solution":["f3f7","f8f7","h5f7","g7h8","f7g8"],"rating":2335,"themes":["endgame","long","mate","mateIn3"]},{"id":974,"theme":"discovered_attack","fen":"4r3/6kp/p1p2pp1/8/8/3P3P/PPPQnqPB/3R3K b - - 6 28","solution":["e8e3","d2e1","e2g3","h2g3","e3e1"],"rating":2336,"themes":["crushing","discoveredAttack","endgame","long"]},{"id":975,"theme":"tactic","fen":"r4r1k/1pp4R/p2p4/3Pnq2/2P1Q3/8/PP2BP2/1K4R1 b - - 0 24","solution":["h8h7","e2d3","f5e4"],"rating":2336,"themes":["advantage","middlegame","short"]},{"id":976,"theme":"promotion","fen":"3r2k1/1r1P1pp1/2b4p/1p3B2/2p5/7P/1P3PP1/3RR1K1 w - - 1 30","solution":["e1e8","d8e8","d7d8q"],"rating":2337,"themes":["advancedPawn","crushing","endgame","master"]},{"id":977,"theme":"rook_endgame","fen":"8/6p1/1r6/5P1K/6PP/2k5/1p6/1R6 b - - 2 53","solution":["b6h6","h5g5","c3c2"],"rating":2339,"themes":["crushing","endgame","rookEndgame","short"]},{"id":978,"theme":"tactic","fen":"2q2rk1/1b1N3p/p1n1p1p1/1p6/2p5/5NPP/1b2BP2/R2QR1K1 b - - 0 24","solution":["f8d8","e2c4","b5c4"],"rating":2342,"themes":["advantage","middlegame","short"]},{"id":979,"theme":"pin","fen":"r1bqr1k1/1pp4R/p1n5/3B4/3P4/2N1bN2/PPPQ2P1/2KR4 b - - 0 17","solution":["g8h7","d5e4","e8e4","c3e4","e3d2"],"rating":2344,"themes":["advantage","hangingPiece","long","middlegame"]},{"id":980,"theme":"attraction","fen":"r1b2rk1/p1p4p/1pn3n1/4qpb1/1P1ppN2/6P1/P1P1BP2/R1BQK2R w KQ - 0 19","solution":["e2c4","f8f7","c4f7","g8f7","h1h7"],"rating":2345,"themes":["attraction","crushing","kingsideAttack","long"]},{"id":981,"theme":"tactic","fen":"4r3/R4pk1/2NQ3p/3br3/1p4pP/2b3P1/6PK/8 b - - 7 29","solution":["e8e6","a7f7","g7f7","c6e5","e6e5"],"rating":2347,"themes":["crushing","long","master","masterVsMaster"]},{"id":982,"theme":"clearance","fen":"8/4Rp1k/7P/1P2p3/1P2Prp1/3K4/8/8 b - - 2 46","solution":["g4g3","e7e5","f4g4","b5b6","g3g2"],"rating":2349,"themes":["advancedPawn","clearance","crushing","endgame"]},{"id":983,"theme":"tactic","fen":"6k1/7p/5B2/6pb/2P2p2/pP2p2P/P3N1K1/8 b - - 3 43","solution":["h5e2","f6g5","f4f3","g2g3","f3f2"],"rating":2351,"themes":["advancedPawn","crushing","endgame","long"]},{"id":984,"theme":"pawn_endgame","fen":"8/8/7p/3K3P/8/8/5k2/8 w - - 0 46","solution":["d5e4","f2e2","e4f5","e2d3","f5g6"],"rating":2351,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":985,"theme":"bishop_endgame","fen":"8/1p4b1/p5p1/5k2/3Bp2p/2P4P/PP3KP1/8 b - - 4 34","solution":["g7d4","c3d4","f5e6","f2e3","e6d5"],"rating":2351,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":986,"theme":"tactic","fen":"r3kbnr/2p2pp1/3p1q2/pp2p2p/3nP1P1/PB1P1N2/1PPN1PP1/R1BQ1RK1 b kq - 0 10","solution":["h5g4","f1e1","f6h6"],"rating":2355,"themes":["advantage","middlegame","short"]},{"id":987,"theme":"tactic","fen":"8/5p2/p3p1p1/Bk2P2p/5P1P/1P3KP1/8/8 b - - 0 35","solution":["b5a5","f4f5","a5b4","f5g6","f7g6"],"rating":2356,"themes":["endgame"]},{"id":988,"theme":"hanging_piece","fen":"6r1/ppN1k3/3p1n2/1q1PpQ2/4P3/8/PPPbNPpP/1K4R1 b - - 0 24","solution":["b5e2","f5e6","e7d8","e6d6","d8c8"],"rating":2359,"themes":["advantage","hangingPiece","long","middlegame"]},{"id":989,"theme":"pawn_endgame","fen":"8/p4p2/6p1/2pp1k1p/5P2/2P1K1PP/PP6/8 w - - 1 45","solution":["b2b4","d5d4","c3d4","c5b4","d4d5"],"rating":2363,"themes":["crushing","defensiveMove","endgame","long"]},{"id":990,"theme":"deflection","fen":"r2qkb1r/3bnppp/p1Bp4/1ppQP3/8/8/PB3PPP/R3K1NR w KQkq - 4 14","solution":["c6d7","e8d7","d5b7","d7e8","e5d6"],"rating":2367,"themes":["advantage","attraction","deflection","long"]},{"id":991,"theme":"zugzwang","fen":"8/3k2p1/2p2p1p/3p3P/1P1P1KP1/8/1P6/8 b - g3 0 37","solution":["d7e6","b2b3","e6e7"],"rating":2371,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":992,"theme":"tactic","fen":"6k1/3q1rp1/1R2p1Qp/4Bp1P/p1b2P2/8/6P1/6K1 w - - 1 40","solution":["e5g7","d7d1","g1h2","d1h5","g6h5"],"rating":2377,"themes":["crushing","endgame","long"]},{"id":993,"theme":"hanging_piece","fen":"2kr4/2p4p/8/RPbPB3/6P1/1B1R1r1P/1P4K1/5n2 b - - 6 39","solution":["f3d3","a5a8","c8d7","a8d8","d7d8"],"rating":2380,"themes":["advantage","hangingPiece","long","middlegame"]},{"id":994,"theme":"tactic","fen":"r1b3k1/p2nr1pp/1qp5/1p1pp3/5P2/P1NBPQ1P/1P4P1/R4RK1 w - - 0 17","solution":["c3d5","c6d5","f3d5"],"rating":2380,"themes":["advantage","middlegame","short"]},{"id":995,"theme":"discovered_attack","fen":"r3r1k1/pbp1qpb1/1p3nQ1/4n1Bp/2B4P/2P1PP2/PP1N1P2/R3K1R1 w Q - 1 17","solution":["g6f6","g7f6","g5f6","g8h7","f6e7"],"rating":2380,"themes":["advantage","discoveredAttack","discoveredCheck","kingsideAttack"]},{"id":996,"theme":"tactic","fen":"6k1/5pp1/2pBP1bp/8/2BP4/1Q2n2P/5qP1/7K w - - 1 37","solution":["e6f7","g6f7","c4f7","g8h7","b3b1"],"rating":2383,"themes":["advancedPawn","crushing","endgame","long"]},{"id":997,"theme":"tactic","fen":"3r3k/pp5p/1b2R1p1/4N3/4Pp1N/2r5/P1p1KPPP/2R5 b - - 3 34","solution":["b6e3","c1c2","c3c2"],"rating":2388,"themes":["advantage","master","middlegame","short"]},{"id":998,"theme":"fork","fen":"r2q4/pp4p1/2n1b3/2bp2Nk/6r1/2P2Q2/P4P2/R1B2K2 w - - 0 21","solution":["g5e6","d8f6","e6f4","f6f4","c1f4"],"rating":2392,"themes":["advantage","fork","long","middlegame"]},{"id":999,"theme":"fork","fen":"1r4k1/5p2/4p1p1/3pP1Pp/bRqQ3P/P2R4/1PP2P2/1K6 b - - 0 32","solution":["a4c2","b1c1","b8b4","d4c4","b4c4"],"rating":2393,"themes":["crushing","endgame","fork","intermezzo"]},{"id":1000,"theme":"en_passant","fen":"r5k1/5p2/b1r1p1p1/1p1pP3/1B3PP1/P2B4/2P2K2/7R w - - 1 33","solution":["b4e7","f7f5","e5f6"],"rating":2395,"themes":["crushing","enPassant","endgame","quietMove"]},{"id":1001,"theme":"tactic","fen":"r1b2rk1/1ppq1pp1/3p3p/p1nNp2P/2P3n1/3P4/PP2PPB1/R1BQK2R w KQ - 2 14","solution":["f2f3","g4f6","d5f6"],"rating":2400,"themes":["advantage","opening","short"]},{"id":1002,"theme":"pawn_endgame","fen":"8/2p5/7p/p1Ppp1k1/P5P1/2P2K1P/2P5/8 b - - 3 31","solution":["g5h4","c3c4","d5c4","f3e4","h4h3"],"rating":2401,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1003,"theme":"sacrifice","fen":"5R2/kp5r/2p2P2/p2p4/P7/1R5r/KPP5/8 w - - 0 37","solution":["f6f7","h3b3","f8a8","a7a8","f7f8q"],"rating":2401,"themes":["advancedPawn","attraction","crushing","endgame"]},{"id":1004,"theme":"tactic","fen":"8/p1p3k1/2Np4/1P2P3/2P1Q1p1/6q1/4Pr1p/1R5K b - - 0 37","solution":["g3h3","c6e7","g4g3"],"rating":2407,"themes":["advantage","endgame","master","quietMove"]},{"id":1005,"theme":"tactic","fen":"4r3/1p3r1k/p5q1/P1B2Np1/4PbQ1/8/1P4K1/6R1 w - - 4 40","solution":["g1h1","h7g8","h1h6"],"rating":2409,"themes":["crushing","middlegame","short"]},{"id":1006,"theme":"tactic","fen":"2rqrk2/8/p3pbQP/1p1p4/5P2/8/PP3P2/1K1Nn1R1 w - - 0 25","solution":["g6h7","c8c1","b1c1","d8c7","h7c7"],"rating":2410,"themes":["crushing","long","middlegame"]},{"id":1007,"theme":"en_passant","fen":"2r2k2/1p3pp1/p1b3p1/3p2P1/1Pq5/P5Q1/1b3P1P/3RR1K1 w - - 4 31","solution":["g3h3","f7f5","g5f6"],"rating":2412,"themes":["crushing","enPassant","middlegame","short"]},{"id":1008,"theme":"sacrifice","fen":"1r5k/p1p3pp/4b1B1/Q5P1/3q1n2/2P4P/PP6/2K1R2R b - - 0 28","solution":["d4f2","g6c2","f4d3","c2d3","f2b2"],"rating":2414,"themes":["advantage","long","middlegame","queensideAttack"]},{"id":1009,"theme":"tactic","fen":"8/4k3/8/p1N2p1p/P2p1Pp1/1P1P2P1/2P4K/4b3 b - - 0 43","solution":["e1b4","c5e4","f5e4"],"rating":2414,"themes":["crushing","endgame","short"]},{"id":1010,"theme":"pawn_endgame","fen":"8/2p5/p2p2pk/1p1PpK2/1P2P2P/P2P4/8/8 w - - 0 34","solution":["f5e6","h6h5","e6d7","h5h4","d7c7"],"rating":2421,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1011,"theme":"rook_endgame","fen":"R7/4k3/P7/7p/5p1p/7K/r5P1/8 w - - 2 45","solution":["a6a7","a2a1","h3h2"],"rating":2425,"themes":["advancedPawn","crushing","defensiveMove","endgame"]},{"id":1012,"theme":"mate_in_3","fen":"r3k2r/pp6/2nBpp2/4Nqp1/3P2n1/2P4p/PP2BPP1/R2Q1RK1 b kq - 1 18","solution":["f5f2","f1f2","h3h2","g1f1","h2h1q"],"rating":2427,"themes":["advancedPawn","deflection","kingsideAttack","long"]},{"id":1013,"theme":"tactic","fen":"1n6/p2r1r1k/1p2QPp1/3RP2p/8/8/2q3PP/5R1K w - - 1 34","solution":["d5d7","f7d7","f6f7","c2f2","e6c4"],"rating":2428,"themes":["advancedPawn","crushing","defensiveMove","long"]},{"id":1014,"theme":"tactic","fen":"rn2r1k1/pp3pbp/2p2np1/4N1B1/2P1P1b1/2N5/PP2BPPP/3R1RK1 b - - 0 12","solution":["g4e2","c3e2","f6e4"],"rating":2432,"themes":["crushing","middlegame","short"]},{"id":1015,"theme":"rook_endgame","fen":"3R4/p1r4p/6p1/8/2r1k2P/2p3PK/P1R5/8 w - - 10 49","solution":["c2e2","e4f3","d8e8"],"rating":2435,"themes":["crushing","defensiveMove","endgame","master"]},{"id":1016,"theme":"pawn_endgame","fen":"8/1p6/4k2p/PP1p2p1/8/2P4P/6K1/8 b - - 0 46","solution":["e6d6","g2g3","h6h5","g3f3","d6c5"],"rating":2436,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1017,"theme":"en_passant","fen":"5r2/2p3k1/3p1rp1/p2P3p/2P2R1P/1P3pK1/P4R2/8 w - - 0 39","solution":["f4f6","f8f6","f2f3","c7c5","d5c6"],"rating":2437,"themes":["advantage","enPassant","endgame","long"]},{"id":1018,"theme":"rook_endgame","fen":"8/3k4/1P1P3p/2KR2p1/5p2/7P/6r1/8 w - - 0 44","solution":["b6b7","g2b2","d5e5"],"rating":2442,"themes":["advancedPawn","crushing","endgame","rookEndgame"]},{"id":1019,"theme":"pin","fen":"r4rk1/1p3pp1/p1pp3p/3NP3/3n3q/3B2R1/PPPQ2PP/6K1 w - - 0 20","solution":["d5f6","g8h8","g3g4","h4g4","f6g4"],"rating":2443,"themes":["advantage","long","middlegame","pin"]},{"id":1020,"theme":"tactic","fen":"r1bq1bk1/pp1n1pp1/2p4p/3p1NNQ/3P1r2/7P/PPP2PP1/R4RK1 w - - 0 16","solution":["h5f7","g8h8","f5h6"],"rating":2445,"themes":["advantage","kingsideAttack","middlegame","short"]},{"id":1021,"theme":"tactic","fen":"8/3k3p/1R4p1/n1BpPp2/5P2/7P/6PK/2r5 w - - 12 54","solution":["e5e6","d7c7","e6e7"],"rating":2448,"themes":["advancedPawn","crushing","endgame","short"]},{"id":1022,"theme":"tactic","fen":"4r1k1/ppp2ppp/8/2b5/1n1qNP2/P1P5/1P2Q1PP/R1B1K2R b KQ - 0 15","solution":["b4c2","e1f1","d4e4","e2e4","e8e4"],"rating":2448,"themes":["advantage","long","middlegame"]},{"id":1023,"theme":"deflection","fen":"8/1p6/p7/4pp2/6k1/P1P3P1/1P3K2/8 b - - 1 55","solution":["e5e4","c3c4","e4e3","f2e3","g4g3"],"rating":2448,"themes":["crushing","deflection","endgame","long"]},{"id":1024,"theme":"tactic","fen":"6rk/2p3qp/5p2/p2P1b1r/P2P3N/1P6/3BRPPQ/4R1K1 b - - 0 37","solution":["h5h4","e2e7","g7g6","h2g3","h4g4"],"rating":2449,"themes":["advantage","long","middlegame"]},{"id":1025,"theme":"tactic","fen":"2r2rk1/pp3pp1/3q3p/4N3/1nBP4/1Q6/PP3PPP/1K1b3R w - - 0 17","solution":["c4f7","g8h7","h1d1"],"rating":2453,"themes":["advantage","intermezzo","middlegame","short"]},{"id":1026,"theme":"tactic","fen":"8/1p3r1k/p2P2p1/7p/1P1Q1Pp1/5qP1/3R1K1P/8 w - - 8 41","solution":["f2g1","f7d7","d2c2"],"rating":2457,"themes":["crushing","defensiveMove","endgame","master"]},{"id":1027,"theme":"rook_endgame","fen":"7R/4r3/p1pk1K2/1p1p4/3P4/2P5/PP6/8 w - - 6 49","solution":["h8d8","e7d7","d8d7","d6d7","b2b4"],"rating":2458,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1028,"theme":"tactic","fen":"r4rk1/pppb2p1/2nppq2/6bQ/3P3P/2PB4/PP3PP1/4RRK1 w - - 0 17","solution":["d3h7","g8h8","h4g5","f6g5","h5g5"],"rating":2458,"themes":["advantage","intermezzo","kingsideAttack","long"]},{"id":1029,"theme":"interference","fen":"r5r1/pQ3p2/3P1k2/4p1n1/BP4p1/2q3P1/P4PKP/R4R2 b - - 0 25","solution":["e5e4","a4d1","c3a1","d1g4","a1e5"],"rating":2461,"themes":["advantage","interference","long","middlegame"]},{"id":1030,"theme":"pin","fen":"r2r2k1/4pp1p/p5p1/8/5P2/1P2BBQ1/1qP3PP/3R3K b - - 7 25","solution":["d8d1","f3d1","b2a1","e3g1","a1d1"],"rating":2463,"themes":["crushing","long","middlegame","pin"]},{"id":1031,"theme":"fork","fen":"r5rb/ppkb3p/2p2p2/4pP2/4B2B/5R2/PPP3PP/3R2K1 b - - 5 18","solution":["g8g4","f3d3","d7e8","h4f2","g4e4"],"rating":2463,"themes":["advantage","fork","long","master"]},{"id":1032,"theme":"fork","fen":"r1bR4/4qp1k/p3p1pp/1p6/4N3/3Q1PP1/5PK1/8 w - - 0 31","solution":["d8e8","e7e8","e4f6","h7h8","f6e8"],"rating":2463,"themes":["attraction","crushing","endgame","fork"]},{"id":1033,"theme":"tactic","fen":"3r1r2/pbp1ppkp/1pq3p1/8/3P3R/2nB4/PPPQ2PP/R5K1 w - - 0 19","solution":["d2h6","g7f6","a1f1","f6e6","d3f5"],"rating":2465,"themes":["middlegame"]},{"id":1034,"theme":"tactic","fen":"r2q4/pp6/5knQ/4pbp1/1P6/7R/P4RPP/7K w - - 2 35","solution":["h3f3","d8d1","f2f1","d1f3","f1f3"],"rating":2466,"themes":["crushing","long","middlegame"]},{"id":1035,"theme":"pawn_endgame","fen":"8/7p/pp2kp2/2pp3P/3P1PP1/P3K3/1P6/8 w - - 1 44","solution":["d4c5","b6c5","b2b4"],"rating":2467,"themes":["crushing","endgame","master","pawnEndgame"]},{"id":1036,"theme":"tactic","fen":"2r5/1b2Q3/p2p1r2/1p4R1/3kP3/P1N2P2/1PP5/2K2q2 w - - 1 30","solution":["c1d2","f1f3","c3e2","f3e2","d2e2"],"rating":2468,"themes":["advantage","long","middlegame"]},{"id":1037,"theme":"pawn_endgame","fen":"8/p7/7p/4k1p1/PPK1pp2/7P/5PP1/8 w - g6 0 32","solution":["b4b5","h6h5","a4a5","g5g4","h3g4"],"rating":2471,"themes":["advantage","endgame","long","pawnEndgame"]},{"id":1038,"theme":"sacrifice","fen":"1r3rk1/2R1Qppp/4p3/3pP1N1/1p1P4/n6P/1q3PP1/R5K1 w - - 2 29","solution":["g5f7","b2a1","g1h2","a1c1","c7c1"],"rating":2473,"themes":["crushing","long","middlegame","sacrifice"]},{"id":1039,"theme":"sacrifice","fen":"3b2k1/p1p2ppp/1p1n4/1P2N1P1/q2p4/3P3P/2P1QPBK/8 w - - 0 32","solution":["e5f7","g8f7","g2d5","f7f8","e2e6"],"rating":2474,"themes":["advantage","attraction","endgame","kingsideAttack"]},{"id":1040,"theme":"tactic","fen":"8/1k6/7p/q2nNPb1/4Q3/2P3B1/2K4P/8 b - - 5 43","solution":["a5c3","c2b1","c3b3"],"rating":2474,"themes":["crushing","endgame","master","short"]},{"id":1041,"theme":"pin","fen":"r5r1/pR3Qbk/3q2p1/3P4/8/7P/P1P3P1/5R1K w - - 1 23","solution":["f1f4","g6g5","f4f6","d6f6","f7f6"],"rating":2479,"themes":["crushing","long","middlegame","pin"]},{"id":1042,"theme":"pawn_endgame","fen":"8/5pp1/6P1/3pP3/2pP1p2/2P1K1k1/2P5/8 w - - 0 49","solution":["e3e2","f7g6","e2f1","g3f3","e5e6"],"rating":2479,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1043,"theme":"rook_endgame","fen":"8/8/8/4Rp2/4kP2/1P2r2p/7K/8 b - - 13 61","solution":["e4f4","e5d5","f4g4"],"rating":2481,"themes":["crushing","defensiveMove","endgame","rookEndgame"]},{"id":1044,"theme":"fork","fen":"2r3k1/R4pbp/6p1/1r6/3n1N2/1P2BP2/P5PP/1K1R4 b - - 2 26","solution":["d4b3","a2b3","b5b3","b1a2","b3e3"],"rating":2482,"themes":["advantage","fork","long","middlegame"]},{"id":1045,"theme":"mate_in_3","fen":"r3r1k1/pp3ppp/1b1N4/3n1q2/8/1P2n1PP/PB3PB1/RQ1R2K1 b - - 1 20","solution":["f5f2","g1f2","e3g4","f2f3","g4h2"],"rating":2483,"themes":["attraction","discoveredCheck","doubleCheck","kingsideAttack"]},{"id":1046,"theme":"tactic","fen":"6k1/2q1p3/3p1r1Q/p1p5/2P1P3/5P2/Pr3P1P/R6K w - - 5 30","solution":["a1g1","g8f7","h6h5","f7e6","h5g4"],"rating":2484,"themes":["crushing","endgame","exposedKing","long"]},{"id":1047,"theme":"mate_in_3","fen":"3q3k/1Q3p1p/4pP2/RPp1Pn1B/6R1/2K5/1P4PP/4r3 b - - 2 29","solution":["e1c1","c3b3","d8d1","b3a2","c1a1"],"rating":2485,"themes":["exposedKing","long","mate","mateIn3"]},{"id":1048,"theme":"tactic","fen":"3R4/5p1p/6pk/4Q3/7K/5r2/8/5r2 b - - 5 51","solution":["f7f5","e5f4","f3f4"],"rating":2486,"themes":["crushing","endgame","queenRookEndgame","quietMove"]},{"id":1049,"theme":"tactic","fen":"rn3b1r/pp2pkp1/2p2n1p/q7/3P2b1/2P2N2/PP3PPP/R1BQKB1R w KQ - 2 9","solution":["d1b3","g4e6","b3b7"],"rating":2490,"themes":["advantage","opening","short"]},{"id":1050,"theme":"knight_endgame","fen":"8/6p1/3n4/3k3p/P2P2PP/1P2K3/8/8 w - - 0 43","solution":["g4h5","d6f5","e3f4","f5d4","f4g5"],"rating":2498,"themes":["crushing","defensiveMove","endgame","knightEndgame"]},{"id":1051,"theme":"tactic","fen":"3rr1k1/3PBppp/8/1p6/8/pq5P/1P1RNPP1/1K5R w - - 1 26","solution":["e7d8","e8d8","h1c1"],"rating":2501,"themes":["advantage","defensiveMove","middlegame","short"]},{"id":1052,"theme":"tactic","fen":"1r6/6pk/2p4p/8/2P2p1P/P1BKpP2/1P4r1/6NR b - - 2 37","solution":["b8d8","d3e4","d8d1","e4f4","e3e2"],"rating":2502,"themes":["advancedPawn","advantage","endgame","long"]},{"id":1053,"theme":"mate_in_3","fen":"5rk1/3P2pp/Q3p3/8/6n1/3B1P2/P5Pq/3R1K2 b - - 0 32","solution":["h2h1","f1e2","h1g2","e2e1","g2f2"],"rating":2509,"themes":["deflection","endgame","long","mate"]},{"id":1054,"theme":"fork","fen":"3r1rk1/5pp1/pq5p/3n4/8/1P1R1N2/P3QPPP/R6K b - - 4 24","solution":["d5f4","e2e3","b6g6","e3f4","g6d3"],"rating":2511,"themes":["advantage","fork","long","middlegame"]},{"id":1055,"theme":"double_check","fen":"5k2/p7/1pr1pNp1/4P1B1/3p1P2/2b1n2R/2P5/2K5 w - - 0 32","solution":["h3h8","f8e7","f6d5","e7f7","h8h7"],"rating":2511,"themes":["advantage","discoveredCheck","doubleCheck","endgame"]},{"id":1056,"theme":"tactic","fen":"q3k2r/p1pbbppp/5n2/4p3/2Q5/N3P1P1/1P1PNP1P/R1B2RK1 b k - 0 13","solution":["a8f3","a3c2","d7c6","c4c6","f3c6"],"rating":2513,"themes":["advantage","long","middlegame","quietMove"]},{"id":1057,"theme":"discovered_attack","fen":"2r2k1r/1b3ppp/pq1b4/3P4/1p3B2/3R1Q2/PPP2PPP/4R1K1 w - - 3 18","solution":["e1e6","f7e6","f4e3","f8e8","e3b6"],"rating":2515,"themes":["crushing","discoveredAttack","discoveredCheck","long"]},{"id":1058,"theme":"tactic","fen":"2r3k1/1qPQ1pp1/4p2p/3pNb2/1p4n1/P3P3/1P3P1P/2R3K1 w - - 2 27","solution":["e5c6","g8h7","c6e7"],"rating":2516,"themes":["advantage","middlegame","short"]},{"id":1059,"theme":"tactic","fen":"8/2R4p/5rpk/2NQnp2/3p4/1P1P2P1/P3qPKP/8 b - - 4 32","solution":["f5f4","c7h7","h6h7"],"rating":2517,"themes":["crushing","endgame","master","short"]},{"id":1060,"theme":"tactic","fen":"r6r/ppq2ppk/1np3b1/2B1bNPp/4p2P/7B/PPP1QP2/1K1R3R w - - 4 18","solution":["f5e7","b6d5","d1d5"],"rating":2517,"themes":["advantage","middlegame","short"]},{"id":1061,"theme":"sacrifice","fen":"1k1rr3/1q3pp1/3pb2p/Q1p5/R7/2P5/PPP2PPP/1K2R3 w - - 4 21","solution":["e1e6","f7e6","a4a3","b7g2","a3b3"],"rating":2520,"themes":["advantage","long","middlegame","quietMove"]},{"id":1062,"theme":"tactic","fen":"8/8/3p4/K1kB2P1/P1P5/8/1r6/8 w - - 1 54","solution":["g5g6","b2e2","a5a6"],"rating":2520,"themes":["crushing","defensiveMove","endgame","short"]},{"id":1063,"theme":"discovered_attack","fen":"2r4r/p1p3k1/1pQp1p1p/4pqp1/2P1N3/P2P1n1R/1P3P2/K6R w - - 2 32","solution":["e4g3","f5g4","g3h5","g7g6","h3f3"],"rating":2521,"themes":["crushing","discoveredAttack","long","middlegame"]},{"id":1064,"theme":"pawn_endgame","fen":"8/pp6/3p4/3Pp1pp/2P1k3/1P2P1P1/1P3K2/8 b - - 2 30","solution":["a7a5","c4c5","e4d5"],"rating":2522,"themes":["crushing","endgame","pawnEndgame","quietMove"]},{"id":1065,"theme":"rook_endgame","fen":"8/8/R3k3/7p/3P2p1/P4r2/6K1/8 b - - 11 51","solution":["e6f5","a6a5","f5g6"],"rating":2523,"themes":["crushing","defensiveMove","endgame","master"]},{"id":1066,"theme":"zugzwang","fen":"8/1p6/p7/3k4/P2p4/KP6/2P5/8 b - - 1 38","solution":["d5c5","a3b2","c5b4","b2b1","b4c3"],"rating":2528,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1067,"theme":"tactic","fen":"rr3k2/5pnB/p7/3p1bP1/3B4/5P2/1PPR4/qNK4R w - - 1 24","solution":["h7f5","g7f5","d4f6","a1b2","f6b2"],"rating":2528,"themes":["crushing","long","middlegame","quietMove"]},{"id":1068,"theme":"tactic","fen":"4rr2/pbpq1p1k/1p1pnQ2/4pn2/4P1B1/2PP3P/PP3PP1/R3K2R w KQ - 0 20","solution":["g4f5","h7g8","h3h4","d7e7","f6h6"],"rating":2528,"themes":["advantage","long","middlegame","quietMove"]},{"id":1069,"theme":"tactic","fen":"3r4/7k/6p1/1p2P2p/7P/P2NQ3/KPbr4/6R1 b - - 1 31","solution":["d2d3","e3a7","d8d7","a7d7","d3d7"],"rating":2530,"themes":["advantage","endgame","long"]},{"id":1070,"theme":"tactic","fen":"r2q1rk1/pb2nppp/1p6/4Q3/1b1N2PP/1P6/PBPPBn2/1NKR4 w - - 2 20","solution":["d4c6","f7f6","e5e6","g8h8","c6d8"],"rating":2532,"themes":["advantage","long","middlegame"]},{"id":1071,"theme":"tactic","fen":"8/p1r1k2p/3nP1p1/3B4/2P3P1/B7/P5K1/8 w - - 1 38","solution":["g2f3","c7c8","f3f4","h7h6","f4e5"],"rating":2532,"themes":["crushing","endgame","long","master"]},{"id":1072,"theme":"fork","fen":"r2q1knr/2p3p1/p1npp2p/1p5Q/4P3/3Pp3/PPP1NPPP/R4RK1 w - - 0 14","solution":["e2f4","g8f6","f4e6","f8e7","e6d8"],"rating":2532,"themes":["advantage","fork","long","middlegame"]},{"id":1073,"theme":"sacrifice","fen":"3Q1b1r/kp6/p1b1pR2/3pP2q/3P3N/2N5/PP4PP/R5K1 b - - 0 20","solution":["f8c5","d8h8","c5d4","g1h1","h5h8"],"rating":2537,"themes":["advantage","long","middlegame","sacrifice"]},{"id":1074,"theme":"bishop_endgame","fen":"8/p5b1/1p1p2kp/1PpPpb2/2P1B2P/P2PB1K1/8/8 w - - 6 35","solution":["h4h5","g6f6","e4f5","f6f5","g3f3"],"rating":2542,"themes":["bishopEndgame","crushing","defensiveMove","endgame"]},{"id":1075,"theme":"tactic","fen":"6k1/1Rr2pp1/p6p/P2Qp1qb/4P3/2P3PB/1P3P1P/6K1 b - - 0 29","solution":["g5c1","g1g2","h5e2"],"rating":2546,"themes":["crushing","defensiveMove","endgame","short"]},{"id":1076,"theme":"pawn_endgame","fen":"8/8/1Pk5/3p3p/5PpP/4K3/8/8 w - - 0 48","solution":["f4f5","g4g3","e3f3","d5d4","f3g3"],"rating":2547,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1077,"theme":"tactic","fen":"1r1n4/kp4Q1/p2Np2p/3pP3/b2P4/2q1P3/6PP/1R3BK1 b - - 1 27","solution":["a4c2","d6b5","a6b5"],"rating":2547,"themes":["crushing","middlegame","short"]},{"id":1078,"theme":"fork","fen":"5rk1/pp2p1b1/3pN1p1/4n3/4P2P/q1P1B3/2PKQP2/3R2R1 b - - 1 20","solution":["e5f3","e2f3","a3c3"],"rating":2547,"themes":["advantage","fork","middlegame","sacrifice"]},{"id":1079,"theme":"sacrifice","fen":"r1n1k2r/2q1b1pp/B1n1bp2/4p3/4P3/1PP1BN2/2QN1PPP/R2R2K1 b kq - 0 16","solution":["a8a6","a1a6","c6b4","a6a7","c8a7"],"rating":2548,"themes":["advantage","long","middlegame","sacrifice"]},{"id":1080,"theme":"zugzwang","fen":"8/5p2/p1p1kp1p/1p5P/2P2KP1/1P6/P7/8 w - - 0 33","solution":["c4b5","c6b5","b3b4","a6a5","b4a5"],"rating":2556,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1081,"theme":"deflection","fen":"4r1k1/2R2pp1/p4n2/5Q1p/1P3N2/P6P/3q1PP1/6K1 b - - 0 26","solution":["e8e1","g1h2","d2f2","c7c8","f6e8"],"rating":2556,"themes":["advantage","deflection","endgame","long"]},{"id":1082,"theme":"deflection","fen":"8/pp1k4/3p2p1/3K3p/2PP2br/1P4r1/P3R3/4R3 w - - 0 33","solution":["e2e7","d7d8","d5d6","g4e2","d4d5"],"rating":2559,"themes":["advantage","defensiveMove","deflection","endgame"]},{"id":1083,"theme":"tactic","fen":"6rk/3bb1q1/p3p3/3pN2p/2p5/2P2QpP/P4PB1/4R1K1 w - - 0 29","solution":["e5f7","g7f7","f3f7","g3f2","f7f2"],"rating":2559,"themes":["crushing","long","middlegame"]},{"id":1084,"theme":"tactic","fen":"2rq1r2/p3bp2/b3p1pk/3pP2N/1p1P2Q1/2P2R2/PP4PP/R5K1 w - - 2 23","solution":["f3h3","f8h8","g4f4","e7g5","f4f7"],"rating":2560,"themes":["crushing","long","middlegame","quietMove"]},{"id":1085,"theme":"deflection","fen":"1r3qk1/pbQ2ppp/1p6/3NP3/3n4/6P1/6BP/5R1K w - - 1 34","solution":["f1f7","f8f7","c7b8","f7f8","b8b7"],"rating":2560,"themes":["advantage","deflection","long","middlegame"]},{"id":1086,"theme":"mate_in_3","fen":"4Q3/2Q2R2/2n4p/2k1p2P/8/5K2/4B3/6qr b - - 2 40","solution":["h1h3","f3e4","g1b1","e2d3","b1d3"],"rating":2561,"themes":["exposedKing","long","master","mate"]},{"id":1087,"theme":"sacrifice","fen":"8/2P5/1K3k2/1B3b1R/5p2/4p3/2r5/8 w - - 4 52","solution":["h5f5","f6f5","b5c6"],"rating":2562,"themes":["advantage","defensiveMove","endgame","master"]},{"id":1088,"theme":"tactic","fen":"6k1/6p1/4ppNp/3n4/1pr5/6KP/R2Q1PP1/6q1 w - - 4 41","solution":["a2a8","g8f7","d2d3"],"rating":2564,"themes":["advantage","endgame","short"]},{"id":1089,"theme":"pin","fen":"r2q1rk1/pb3ppp/5B2/3P4/4p3/3Q4/PP2BPPP/R3K2R b KQ - 0 14","solution":["e4d3","f6d8","f8e8","d8g5","e8e2"],"rating":2567,"themes":["advantage","long","middlegame","pin"]},{"id":1090,"theme":"tactic","fen":"r3r1k1/pp3pp1/2n4p/3p3n/3P3q/2NQ1P2/PP3P1P/1BR2RK1 w - - 2 17","solution":["d3h7","g8f8","h7h8","f8e7","c1e1"],"rating":2568,"themes":["crushing","kingsideAttack","long","middlegame"]},{"id":1091,"theme":"tactic","fen":"1r2k1nr/pQ5p/2B2p2/3bb3/3q4/8/P2B1PPP/RN2R1K1 b k - 0 19","solution":["e8f8","b7a6","d5c6"],"rating":2568,"themes":["advantage","defensiveMove","middlegame","short"]},{"id":1092,"theme":"tactic","fen":"7k/pp3p2/2p2P1p/8/5R2/7b/PqBK4/5R2 w - - 2 38","solution":["f1e1","h3d7","e1e7"],"rating":2575,"themes":["crushing","endgame","master","quietMove"]},{"id":1093,"theme":"tactic","fen":"2r3k1/p1NR1p1p/1r2p3/8/1b6/1P3PP1/P3P3/2R2K2 b - - 2 31","solution":["b6d6","d7d6","b4d6","c1d1","d6c7"],"rating":2576,"themes":["advantage","endgame","long","master"]},{"id":1094,"theme":"pawn_endgame","fen":"8/8/p7/8/P2p1k2/3K3p/1P5P/8 w - - 1 55","solution":["d3d4","a6a5","b2b4","a5b4","a4a5"],"rating":2576,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1095,"theme":"tactic","fen":"4rrk1/pbpp1ppp/1p3q2/4Rn2/B4Q2/2PP4/PP3PPP/4RNK1 b - - 6 16","solution":["g7g5","f4f5","f6f5"],"rating":2576,"themes":["advantage","middlegame","short"]},{"id":1096,"theme":"pawn_endgame","fen":"8/4kpp1/1p5p/p1p1P2P/P1P2P2/5P2/3K4/8 b - - 0 32","solution":["e7e6","d2e2","e6f5","e2e3","f7f6"],"rating":2578,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1097,"theme":"tactic","fen":"2b3rk/1p3p2/4pqp1/2R4P/r2pQ3/2b3P1/5P2/1B1R2K1 w - - 1 34","solution":["h5g6","g8g6","c5c8","h8g7","c8c3"],"rating":2587,"themes":["advantage","exposedKing","long","middlegame"]},{"id":1098,"theme":"rook_endgame","fen":"8/5R2/4p3/2p1p1k1/1p3r2/4K3/2P2PPP/8 w - - 4 34","solution":["f7f4","e5f4","e3d3","f4f3","g2f3"],"rating":2589,"themes":["crushing","endgame","long","rookEndgame"]},{"id":1099,"theme":"hanging_piece","fen":"5rk1/7p/p3bppb/1p4N1/1q5P/4Q3/3RBPP1/6K1 w - - 0 28","solution":["e3e6","g8h8","d2d7","f6g5","e6e5"],"rating":2596,"themes":["crushing","hangingPiece","long","middlegame"]},{"id":1100,"theme":"tactic","fen":"rnb2k1r/pp3ppp/1q6/2b1Q3/8/2N1PN2/PP3PPP/R3KB1R b KQ - 0 11","solution":["b8d7","e5g5","f7f6","g5d5","b6b2"],"rating":2598,"themes":["advantage","long","opening"]},{"id":1101,"theme":"queen_endgame","fen":"8/6pk/7p/3Q4/2PK2q1/3P4/8/8 w - - 6 50","solution":["d5e4","g4e4","d3e4"],"rating":2603,"themes":["crushing","endgame","master","masterVsMaster"]},{"id":1102,"theme":"tactic","fen":"5r1k/p1p4p/2p3pP/2qrN3/8/2P3Q1/PP3PP1/4RK2 w - - 1 31","solution":["b2b4","c5f2","g3f2","f8f2","f1f2"],"rating":2605,"themes":["advantage","endgame","long"]},{"id":1103,"theme":"tactic","fen":"2b2r2/6pk/1p3q1p/2p5/p1Pbp2P/P5P1/2QN1P1N/1R4K1 w - - 0 34","solution":["d2e4","d4f2","c2f2"],"rating":2605,"themes":["advantage","middlegame","short"]},{"id":1104,"theme":"tactic","fen":"r3k1nr/p3bppp/1p6/2Bp4/8/5Q1P/PqP2PP1/R3R1K1 w kq - 0 15","solution":["f3d5","a8d8","d5c6","e8f8","a1d1"],"rating":2609,"themes":["crushing","long","middlegame"]},{"id":1105,"theme":"tactic","fen":"2B5/R7/8/1p2r3/1k1p4/6p1/P5P1/5K2 b - - 0 42","solution":["d4d3","c8g4","b4c3","a7f7","c3d2"],"rating":2609,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1106,"theme":"tactic","fen":"r1bq1b1r/p5pp/2p1k3/1p2P2Q/8/Pnn5/1P1P2PP/1RB2RK1 w - - 0 17","solution":["h5f7","e6e5","d2c3","f8c5","g1h1"],"rating":2609,"themes":["advantage","defensiveMove","intermezzo","long"]},{"id":1107,"theme":"rook_endgame","fen":"3r4/5pkp/p5p1/1p6/1P2P3/4KP1P/P2R4/8 b - - 5 33","solution":["d8d2","e3d2","g7h6","f3f4","h6h5"],"rating":2609,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1108,"theme":"pin","fen":"r2qn1k1/4b1pR/2bpp1P1/p7/1p2P3/4Q3/PPP1N3/2KR1B2 b - - 0 19","solution":["e7g5","e2f4","d8f6","c1b1","g5f4"],"rating":2610,"themes":["advantage","clearance","long","middlegame"]},{"id":1109,"theme":"deflection","fen":"rq1k1b1r/1b4pp/p7/1p1Pp1pQ/7P/3B4/PP4P1/3RR1K1 w - - 2 20","solution":["h5g5","f8e7","g5g7","h8f8","d5d6"],"rating":2611,"themes":["advantage","deflection","long","middlegame"]},{"id":1110,"theme":"tactic","fen":"6k1/Q2R1p1p/1p2p1p1/8/8/P1q4P/5PPK/2r5 w - - 5 30","solution":["a7b8","g8g7","b8f4","c3f6","f4c1"],"rating":2611,"themes":["crushing","endgame","long"]},{"id":1111,"theme":"pin","fen":"2r1kb1r/2q2ppp/4p3/3bB1PP/1Qn4R/5P2/PPPR4/2K2B2 w k - 1 23","solution":["b4b5","c7c6","h4c4","d5c4","f1c4"],"rating":2614,"themes":["advantage","long","middlegame","pin"]},{"id":1112,"theme":"promotion","fen":"8/3n4/7p/4PKpP/3k2P1/8/8/8 w - - 1 45","solution":["e5e6","d7b6","e6e7","b6c8","e7e8n"],"rating":2623,"themes":["advancedPawn","crushing","endgame","knightEndgame"]},{"id":1113,"theme":"fork","fen":"3Q4/pp5p/3P1ppk/8/3B4/1B3r1q/P6P/R5K1 b - - 0 25","solution":["h3g4","g1h1","g4e4","d8f8","h6g5"],"rating":2625,"themes":["crushing","endgame","fork","long"]},{"id":1114,"theme":"rook_endgame","fen":"8/2K5/8/1P1kp1p1/3p2Pp/3P1P1P/2R5/3r4 b - - 8 68","solution":["d1d3","b5b6","d3f3"],"rating":2627,"themes":["advantage","endgame","rookEndgame","short"]},{"id":1115,"theme":"attraction","fen":"2Q5/5pkp/4p1p1/3pP2P/p4P2/5R2/rq4PK/8 w - - 1 40","solution":["h5h6","g7h6","c8f8","h6h5","f3g3"],"rating":2629,"themes":["attraction","crushing","endgame","long"]},{"id":1116,"theme":"pin","fen":"4r3/pqp2kbp/4prp1/8/2Q4P/6PB/PP6/2KRR3 w - - 1 28","solution":["h3e6","f6e6","d1d7","f7f8","e1e6"],"rating":2632,"themes":["advantage","deflection","long","middlegame"]},{"id":1117,"theme":"trapped_piece","fen":"1n2kb1r/r3p2p/pn1pb1p1/qp6/B2Q4/2N1B3/PP3PPP/R3K2R w KQk - 0 15","solution":["b2b4","b8c6","b4a5","c6d4","a5b6"],"rating":2634,"themes":["advantage","long","middlegame","trappedPiece"]},{"id":1118,"theme":"discovered_attack","fen":"8/p6p/k4r2/1pB5/3P4/1PPpr1P1/P2K3P/RN6 b - - 1 31","solution":["f6f3","c3c4","e3e2","d2c3","d3d2"],"rating":2635,"themes":["advancedPawn","crushing","discoveredAttack","discoveredCheck"]},{"id":1119,"theme":"tactic","fen":"r3k2r/pp3ppp/2npp3/8/3P4/P1NnPN2/1q1Q1PPP/R2K3R w kq - 0 15","solution":["d1e2","b2d2","f3d2"],"rating":2637,"themes":["advantage","middlegame","short"]},{"id":1120,"theme":"tactic","fen":"2R5/pb3ppk/3r3p/4q3/2N3P1/7P/P4P2/R3Q1K1 b - - 6 30","solution":["e5d5","e1b1","d6g6","b1b7","d5b7"],"rating":2638,"themes":["advantage","defensiveMove","long","middlegame"]},{"id":1121,"theme":"bishop_endgame","fen":"2b5/8/1P1P4/2k2ppp/4p3/6K1/7P/8 w - - 0 39","solution":["d6d7","f5f4","g3g2","c8d7","b6b7"],"rating":2640,"themes":["advancedPawn","bishopEndgame","crushing","defensiveMove"]},{"id":1122,"theme":"trapped_piece","fen":"r2q1k1r/pQp3pp/2n2n2/2b1p3/2B1P3/8/PPP2PPP/RNB1K2R b KQ - 0 10","solution":["c6b4","e1g1","a8b8","b7b8","d8b8"],"rating":2643,"themes":["advantage","long","opening","trappedPiece"]},{"id":1123,"theme":"knight_endgame","fen":"8/5N2/8/2k2ppp/1p6/1P3K2/8/8 b - - 2 53","solution":["g5g4","f3e3","c5d5"],"rating":2645,"themes":["advantage","defensiveMove","endgame","knightEndgame"]},{"id":1124,"theme":"bishop_endgame","fen":"B7/4pp1p/3p2p1/3P4/1p6/1Pk4P/5PP1/3K4 b - - 6 39","solution":["c3b3","a8c6","b3b2","c6b5","b4b3"],"rating":2645,"themes":["advantage","bishopEndgame","endgame","long"]},{"id":1125,"theme":"tactic","fen":"4r1k1/1q1NPp2/1p2nP1Q/p5p1/8/PP2p3/6b1/3R1RK1 b - - 2 37","solution":["g2f1","d1f1","b7d7"],"rating":2646,"themes":["crushing","master","middlegame","short"]},{"id":1126,"theme":"tactic","fen":"8/8/p7/1pr3k1/1P4p1/2P3K1/1P6/8 w - - 0 46","solution":["b4c5","g5f6","g3g4","f6e5","b2b4"],"rating":2651,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1127,"theme":"tactic","fen":"3rk1r1/ppp1b3/5n1p/4NQp1/5q2/2P5/PP4PP/R3R2K w - - 0 22","solution":["e5g6","g8g6","f5g6","e8d7","g6f7"],"rating":2652,"themes":["crushing","exposedKing","long","middlegame"]},{"id":1128,"theme":"tactic","fen":"3rr1k1/1b1Q1pbp/p3p1p1/np5q/4P3/1BN4P/PPP3P1/3R1R1K w - - 1 24","solution":["d7d8","e8d8","d1d8","g7f8","b3e6"],"rating":2652,"themes":["advantage","kingsideAttack","long","middlegame"]},{"id":1129,"theme":"tactic","fen":"3r2r1/3bQpqk/p1P4p/P4p2/1P3P2/5pP1/7P/3RRB1K b - - 0 41","solution":["d7c6","h1g1","g8e8","d1d8","e8e7"],"rating":2654,"themes":["crushing","long","middlegame"]},{"id":1130,"theme":"bishop_endgame","fen":"5B2/7p/8/1p6/1P3k2/4pP2/4Kb1P/8 w - - 0 43","solution":["f8d6","f4g5","d6g3","f2g3","h2g3"],"rating":2658,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1131,"theme":"tactic","fen":"3rr1k1/5ppp/2p5/Q7/4nB2/5P2/PPP3PP/5K2 b - - 0 19","solution":["d8d1","f1e2","d1d5"],"rating":2658,"themes":["advantage","endgame","short"]},{"id":1132,"theme":"sacrifice","fen":"r1b1rn1R/pp3kp1/1q3b2/3p1B2/3P1pP1/1PP2N2/P4KP1/R6Q w - - 8 21","solution":["h1h5","g7g6","f5g6","f8g6","h5h7"],"rating":2665,"themes":["advantage","long","middlegame","sacrifice"]},{"id":1133,"theme":"tactic","fen":"5b1r/pp2kppp/4b3/1B6/1q6/8/PPP1QPPP/1K1R4 w - - 2 20","solution":["e2e5","b4b5","e5b5"],"rating":2666,"themes":["crushing","middlegame","short"]},{"id":1134,"theme":"tactic","fen":"4rrk1/1Q2Rppp/p7/b5B1/3q4/1B6/Pp4PP/5R1K b - - 0 25","solution":["e8e7","g5e7","d4d3","b3c4","d3c4"],"rating":2667,"themes":["advantage","long","middlegame"]},{"id":1135,"theme":"tactic","fen":"r7/4q1k1/4p3/3pN1pp/3P4/p3P3/Q2K4/1R6 w - - 2 42","solution":["a2c2","a3a2","c2g6","g7h8","b1h1"],"rating":2668,"themes":["crushing","endgame","exposedKing","long"]},{"id":1136,"theme":"sacrifice","fen":"r4rk1/pp1b2pp/2pbpq2/3p1p2/2PPn3/1P1BPP2/PB1N2PP/R2Q1RK1 b - - 0 12","solution":["d6h2","g1h2","f6h6","h2g1","h6e3"],"rating":2671,"themes":["attraction","crushing","kingsideAttack","long"]},{"id":1137,"theme":"tactic","fen":"r4k2/3bppb1/3p2p1/3P2P1/qN3P2/P7/1PPQ4/1KR4R b - - 0 28","solution":["g7b2","d2e3","b2g7"],"rating":2672,"themes":["advantage","defensiveMove","middlegame","short"]},{"id":1138,"theme":"tactic","fen":"8/8/pp4p1/7k/2P1r3/1P2K3/P7/8 w - - 0 61","solution":["e3e4","g6g5","b3b4","h5g6","a2a4"],"rating":2677,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1139,"theme":"tactic","fen":"4k3/2r1p2p/3pR1rP/2qP1Qp1/p7/1P3P2/1PP5/1K2R3 b - - 0 31","solution":["g6e6","f5e6","c5c2","b1a1","e8f8"],"rating":2680,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1140,"theme":"tactic","fen":"1r6/p5kp/2p3p1/8/2Q3R1/4r3/PPP2qPP/5R1K b - - 3 27","solution":["b8f8","c4d4","g7g8"],"rating":2682,"themes":["crushing","defensiveMove","endgame","quietMove"]},{"id":1141,"theme":"tactic","fen":"1R2B3/2B4p/4kP1q/2p1P1p1/2Pp4/P2Pn3/7P/6K1 b - - 4 40","solution":["h6h4","b8b6","e6f5","e8d7","f5g6"],"rating":2684,"themes":["advantage","endgame","long"]},{"id":1142,"theme":"tactic","fen":"3K4/8/2Pn4/3p1k2/3P4/8/4p3/4B3 w - - 5 54","solution":["c6c7","f5e6","e1b4"],"rating":2691,"themes":["advancedPawn","advantage","endgame","short"]},{"id":1143,"theme":"tactic","fen":"r7/1p2npk1/pq1p2p1/3Pn1Nr/4P3/2N4P/PP1Q1RP1/2R4K b - - 1 22","solution":["h5g5","c3a4","b6a7","c1c7","a8e8"],"rating":2691,"themes":["advantage","defensiveMove","long","middlegame"]},{"id":1144,"theme":"tactic","fen":"3N4/6pp/p3Pk2/8/2n1RPK1/r6P/8/8 b - - 10 35","solution":["h7h5","g4h4","c4d6"],"rating":2691,"themes":["crushing","endgame","short"]},{"id":1145,"theme":"knight_endgame","fen":"8/8/p4p2/P2p4/1Nn2kP1/2PKp2P/8/8 b - - 3 40","solution":["f4f3","b4c2","f3f2","d3d4","e3e2"],"rating":2692,"themes":["advancedPawn","crushing","endgame","knightEndgame"]},{"id":1146,"theme":"tactic","fen":"4rr1k/1pp3p1/p1bq3p/4Np2/2QP4/2P2P2/PP4P1/R3K2R b KQ - 0 19","solution":["c6b5","c4b4","c7c5"],"rating":2693,"themes":["advantage","middlegame","short"]},{"id":1147,"theme":"tactic","fen":"3r1k2/pp3p1Q/2p1bb2/8/3P1R2/6R1/qP3PPP/6K1 w - - 0 30","solution":["h2h3","f8e7","f4f6"],"rating":2693,"themes":["advantage","middlegame","quietMove","short"]},{"id":1148,"theme":"tactic","fen":"8/7k/2p3b1/p1P1P2p/2qPpKpP/4B1P1/P4Q2/8 b - - 0 38","solution":["c4f7","f4g5","f7g7"],"rating":2694,"themes":["crushing","endgame","short"]},{"id":1149,"theme":"tactic","fen":"r4kr1/4b1p1/2p2nQp/5P2/p2Bq3/pP5P/P1P5/1K1R2R1 w - - 0 28","solution":["g1e1","e4f3","d4f6","g7f6","g6h6"],"rating":2698,"themes":["crushing","long","middlegame"]},{"id":1150,"theme":"pin","fen":"2b2rk1/Q1p2p2/3b3p/8/5P2/6Pq/PPP4P/RN2R1K1 b - f3 0 20","solution":["h3h5","f4f5","h5f5","a7f2","d6c5"],"rating":2698,"themes":["crushing","long","middlegame","pin"]},{"id":1151,"theme":"tactic","fen":"1k1r4/1p3ppp/4pn2/1N2qb2/1PP5/1Q3P2/1P1rN1PP/2R1KB1R b K - 2 17","solution":["f5d3","b5c3","e5e3","c1d1","d3e2"],"rating":2700,"themes":["advantage","long","middlegame"]},{"id":1152,"theme":"tactic","fen":"6k1/2p5/1p1p4/p2P4/2P5/KP3Q2/P1q3r1/R7 b - - 6 43","solution":["c2d2","f3g2","d2g2"],"rating":2701,"themes":["crushing","endgame","master","short"]},{"id":1153,"theme":"pin","fen":"6r1/p1pk3p/8/8/1K2pPnQ/1PNP2P1/3qb2P/R5R1 b - - 1 28","solution":["g8b8","b4a3","d2c3","h4h7","d7d6"],"rating":2701,"themes":["crushing","defensiveMove","deflection","long"]},{"id":1154,"theme":"sacrifice","fen":"8/2p5/p2p3p/1p1Pk1p1/PPP3P1/4K2P/8/8 w - - 0 31","solution":["a4a5","b5c4","b4b5","a6b5","a5a6"],"rating":2703,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1155,"theme":"clearance","fen":"1r4k1/p5pp/8/4RQ2/8/2P2PPK/pq5P/8 b - - 0 32","solution":["b8f8","f5e6","g8h8","e5f5","f8g8"],"rating":2705,"themes":["clearance","crushing","defensiveMove","endgame"]},{"id":1156,"theme":"tactic","fen":"6r1/6P1/8/4kpK1/5N2/6P1/8/8 w - - 1 61","solution":["f4h5","f5f4","g3f4"],"rating":2706,"themes":["crushing","endgame","master","quietMove"]},{"id":1157,"theme":"tactic","fen":"4rk2/p1p5/8/2P3q1/3Rbppp/2P5/P6Q/5RK1 b - - 1 38","solution":["f4f3","d4e4","e8e4"],"rating":2706,"themes":["crushing","endgame","short"]},{"id":1158,"theme":"tactic","fen":"2kr3r/pp3pp1/4N3/7q/P2n1Pn1/6P1/1PP1N1Bp/R1BQ1R1K b - - 0 23","solution":["g4f2","f1f2","d4e2","d1e2","h5e2"],"rating":2708,"themes":["crushing","kingsideAttack","long","middlegame"]},{"id":1159,"theme":"tactic","fen":"r4rk1/ppp2q1p/3pR1pP/6p1/2P5/2QR4/PP3P2/2K5 w - - 1 26","solution":["d3e3","a8d8","e6e7","d8d7","e7f7"],"rating":2709,"themes":["advantage","endgame","long","quietMove"]},{"id":1160,"theme":"tactic","fen":"r4rk1/p2NQ1pp/1q2p3/3p4/3P1P2/2P1P3/PP3PP1/1R3K2 b - - 4 24","solution":["b6a6","f1e1","f8f7","e7f7","g8f7"],"rating":2709,"themes":["advantage","endgame","long"]},{"id":1161,"theme":"pawn_endgame","fen":"8/8/4p1p1/p7/2k1PPP1/4K3/8/8 w - - 0 40","solution":["g4g5","a5a4","e3d2","c4b3","d2c1"],"rating":2709,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1162,"theme":"fork","fen":"4k3/1p1q4/1bp1PQ2/1r3p2/3P4/2p3Pp/P2N3P/4RRK1 b - - 0 29","solution":["d7d4","f6d4","b6d4","g1h1","c3d2"],"rating":2711,"themes":["advancedPawn","advantage","fork","long"]},{"id":1163,"theme":"tactic","fen":"3r4/8/8/3B4/3K1p2/5N2/4k3/8 b - - 4 57","solution":["d8d5","d4e4","d5d8","f3g5","d8f8"],"rating":2712,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1164,"theme":"double_check","fen":"3r2nr/ppkbqppp/2pN1b2/8/5Q2/1BPn4/PP4PP/R1B2RK1 w - - 8 18","solution":["d6e8","c7b6","c1e3","c6c5","f4c7"],"rating":2715,"themes":["advantage","doubleCheck","long","middlegame"]},{"id":1165,"theme":"hanging_piece","fen":"8/p1kN4/2b5/b1Q2pB1/5P2/1P2P2P/P4rPK/q7 w - - 1 46","solution":["c5a5","c7d6","e3e4"],"rating":2715,"themes":["crushing","hangingPiece","master","middlegame"]},{"id":1166,"theme":"pawn_endgame","fen":"8/7p/6p1/2Pk1p2/8/1Pp5/3K2PP/8 w - - 0 38","solution":["d2c3","d5c5","h2h4","c5d5","b3b4"],"rating":2715,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1167,"theme":"bishop_endgame","fen":"5B2/1p2b3/1p2kp2/6p1/PP1K2P1/8/5P2/8 w - - 1 36","solution":["f8e7","e6e7","d4c4","e7e6","c4b5"],"rating":2717,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1168,"theme":"pin","fen":"4r3/6k1/1p3q2/p1nP1p1R/1p4n1/6P1/PP1Q2K1/7R w - - 3 37","solution":["h5g5","g7f7","g5g4","f5g4","h1f1"],"rating":2718,"themes":["advantage","long","middlegame","pin"]},{"id":1169,"theme":"rook_endgame","fen":"8/P6R/4k3/r6p/3p3K/5P2/8/8 w - - 0 41","solution":["h7h6","e6e7","h6h8"],"rating":2721,"themes":["crushing","endgame","master","masterVsMaster"]},{"id":1170,"theme":"tactic","fen":"1q2rnk1/pb3p2/1p5p/1Nr3b1/4n1Q1/1B4P1/PB3P1P/3RR1K1 w - - 4 26","solution":["b5d6","b8d6","d1d6","e4d6","e1e8"],"rating":2721,"themes":["advantage","long","master","middlegame"]},{"id":1171,"theme":"zugzwang","fen":"8/8/1p1kP3/1Pp3p1/2P1K2p/7P/6P1/8 b - - 2 50","solution":["d6e6","e4f3","e6e5"],"rating":2723,"themes":["crushing","defensiveMove","endgame","pawnEndgame"]},{"id":1172,"theme":"zugzwang","fen":"1K6/5p2/1p4p1/1pk2p1p/2p2P1P/P1P3P1/1P6/8 w - - 18 44","solution":["b8b7","f7f6","b7c7","c5d5","c7b6"],"rating":2723,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1173,"theme":"rook_endgame","fen":"8/5pk1/3K4/8/2PR4/8/8/2r5 w - - 1 56","solution":["c4c5","f7f5","c5c6","g7f6","d4d5"],"rating":2724,"themes":["crushing","endgame","long","quietMove"]},{"id":1174,"theme":"bishop_endgame","fen":"8/8/5p2/2k1p3/1p3p1p/1K1B1P1P/8/8 b - - 1 41","solution":["c5d4","d3e4","d4e3","b3b4","e3f2"],"rating":2725,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1175,"theme":"hanging_piece","fen":"6k1/5ppp/1P2p3/3pn3/3P4/P4rP1/7P/R5K1 w - - 0 29","solution":["d4e5","f3b3","a1c1","h7h5","c1c6"],"rating":2727,"themes":["advantage","endgame","hangingPiece","long"]},{"id":1176,"theme":"bishop_endgame","fen":"8/8/8/4k1p1/5bP1/BpPKp3/1P6/8 w - - 4 61","solution":["a3c5","e3e2","c5d4","e5e6","d3e2"],"rating":2729,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1177,"theme":"sacrifice","fen":"7k/1p4rp/pq1P2pQ/4p3/8/P2b2PP/BPr2R2/5RK1 w - - 5 32","solution":["d6d7","d3f1","h6e3","b6d8","f2c2"],"rating":2731,"themes":["advancedPawn","crushing","long","middlegame"]},{"id":1178,"theme":"tactic","fen":"1R4Q1/6p1/1pp2pkp/8/1P5P/P5P1/1B3PK1/3qr3 b - - 0 34","solution":["d1e2","g8e8","e2e8","b8e8","e1e8"],"rating":2731,"themes":["advantage","endgame","long","master"]},{"id":1179,"theme":"tactic","fen":"8/8/8/p4pk1/P2p4/1Pp1bKNP/2P5/8 b - - 4 45","solution":["d4d3","h3h4","g5g6","h4h5","g6g5"],"rating":2733,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1180,"theme":"pin","fen":"3r2k1/2p1qppp/pb6/1p2Pb2/5P2/PQ1BP1R1/1PPK1P1P/R7 b - - 7 21","solution":["b6a5","d2e2","f5e6","g3g7","g8g7"],"rating":2733,"themes":["advantage","long","middlegame","pin"]},{"id":1181,"theme":"fork","fen":"1r3rk1/pp2R2p/2p2pqP/4Q3/4N3/8/PP4P1/6K1 w - - 0 35","solution":["e5f4","b8e8","e7g7","g6g7","h6g7"],"rating":2734,"themes":["advancedPawn","advantage","endgame","fork"]},{"id":1182,"theme":"bishop_endgame","fen":"4B3/2p5/2P5/2K1kp2/5pPp/8/5PP1/8 b - - 0 45","solution":["f4f3","g2f3","f5f4","c5b5","h4h3"],"rating":2738,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1183,"theme":"tactic","fen":"r4Bk1/ppb3pp/6n1/5p2/N3p1Pq/1P2Q2P/P1B2P2/3R1RK1 b - - 0 27","solution":["g6f4","f8d6","c7d6","f1e1","f4h3"],"rating":2738,"themes":["advantage","long","middlegame"]},{"id":1184,"theme":"tactic","fen":"1kr4r/1bp2p2/Bp1p3p/p3q3/P1Q1P1p1/8/5PPP/1RR3K1 w - - 6 24","solution":["a6b7","b8b7","b1b5","e5e7","b5a5"],"rating":2746,"themes":["advantage","long","master","middlegame"]},{"id":1185,"theme":"tactic","fen":"r3r1k1/ppp2p2/1b4pB/n4b2/4p2Q/2Pq1N2/PP4PP/RNK1R3 w - - 0 18","solution":["h4f6","d3c2","c1c2","e4f3","e1e4"],"rating":2746,"themes":["advantage","long","middlegame"]},{"id":1186,"theme":"tactic","fen":"8/4bpkp/Q2R2p1/2P5/1P1p4/7P/5PPK/4q3 b - - 3 28","solution":["e7h4","a6a2","h4f2","a2f2","e1f2"],"rating":2748,"themes":["crushing","endgame","long"]},{"id":1187,"theme":"fork","fen":"2kr3r/ppp5/5n2/5p1p/1P3PpP/P4pP1/1B2qP2/R1Q3KR w - - 4 22","solution":["b2f6","d8d2","c1d2","e2d2","f6h8"],"rating":2752,"themes":["crushing","fork","hangingPiece","long"]},{"id":1188,"theme":"pin","fen":"4r1k1/6p1/p1P1nq1p/3Q4/8/P7/5PPP/4RK2 w - - 0 32","solution":["c6c7","g8h7","d5e4"],"rating":2753,"themes":["advancedPawn","advantage","endgame","pin"]},{"id":1189,"theme":"xray","fen":"1b6/8/1P6/2B2kpp/4p3/7P/4KP2/8 w - - 1 37","solution":["c5e7","b8f4","h3h4","g5h4","e7h4"],"rating":2753,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1190,"theme":"pawn_endgame","fen":"8/6p1/1p6/p2k4/P2p1K1P/6P1/1P6/8 w - - 2 46","solution":["h4h5","d5e6","f4e4","e6f6","e4d4"],"rating":2761,"themes":["crushing","endgame","long","pawnEndgame"]},{"id":1191,"theme":"knight_endgame","fen":"8/4p3/8/2k5/3p2Np/3K4/8/8 b - - 3 63","solution":["c5d5","d3e2","d5e4","g4f2","e4f4"],"rating":2762,"themes":["crushing","defensiveMove","endgame","knightEndgame"]},{"id":1192,"theme":"sacrifice","fen":"8/kpq1b3/p2pQ3/3Pp2P/4Pp2/BP3P2/P5K1/8 b - - 0 34","solution":["c7c2","g2h3","c2d1","e6e7","d1f3"],"rating":2764,"themes":["advantage","endgame","long","sacrifice"]},{"id":1193,"theme":"sacrifice","fen":"8/8/7p/5P2/1k1pR1P1/1rp1b1P1/2R1K3/8 b - - 7 45","solution":["b4c4","e4e3","b3b2","c2b2","c3b2"],"rating":2767,"themes":["advancedPawn","crushing","endgame","long"]},{"id":1194,"theme":"bishop_endgame","fen":"5k2/P7/1P4p1/3b2Pp/7P/6K1/5P2/8 w - - 3 45","solution":["f2f4","d5c6","f4f5","g6f5","g3f4"],"rating":2768,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1195,"theme":"tactic","fen":"4rr1k/p1q4p/5p2/1p3P2/1P6/PB1Q2b1/2P3P1/R4R1K b - - 2 30","solution":["c7g7","h1g1","e8e2"],"rating":2779,"themes":["crushing","middlegame","quietMove","short"]},{"id":1196,"theme":"hanging_piece","fen":"r4rk1/1p3ppp/4b3/4Q3/P1Pp4/1P1Pp2P/KBq1P3/R3nB1R w - - 3 27","solution":["a1e1","a8a4","b3a4","f8a8","a4a5"],"rating":2781,"themes":["advantage","defensiveMove","hangingPiece","long"]},{"id":1197,"theme":"fork","fen":"2r3k1/1p3qP1/p1bQ4/8/2P1P3/8/P5P1/1R5K w - - 1 38","solution":["d6h6","f7g7","h6e6","g8h7","b1b3"],"rating":2782,"themes":["crushing","endgame","exposedKing","fork"]},{"id":1198,"theme":"knight_endgame","fen":"4k3/7p/4P1p1/3KN1P1/8/8/5n2/8 w - - 3 57","solution":["e5d7","e8d8","d7f6","d8e7","f6g8"],"rating":2784,"themes":["crushing","endgame","knightEndgame","long"]},{"id":1199,"theme":"tactic","fen":"8/7p/5ppk/8/4qPK1/4Pn2/R3Q2P/8 b - - 2 47","solution":["f3g1","e2g2","e4e6","g4h4","e6e3"],"rating":2789,"themes":["crushing","endgame","long"]},{"id":1200,"theme":"hanging_piece","fen":"8/8/8/8/7p/N4K1P/1p4n1/2k5 w - - 6 61","solution":["f3g2","c1d1","g2f2","b2b1q","a3b1"],"rating":2794,"themes":["crushing","endgame","hangingPiece","knightEndgame"]},{"id":1201,"theme":"knight_endgame","fen":"4k3/7p/4PK2/p2P3P/1p1n4/1P6/P7/8 w - - 0 46","solution":["h5h6","d4b5","f6g7","e8e7","g7h7"],"rating":2800,"themes":["crushing","endgame","knightEndgame","long"]},{"id":1202,"theme":"bishop_endgame","fen":"8/3P2p1/4Kb1p/p7/1k3PPP/8/8/8 w - - 1 46","solution":["g4g5","h6g5","h4h5","a5a4","h5h6"],"rating":2800,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1203,"theme":"tactic","fen":"7r/5pk1/5p2/p5r1/5qP1/4Q3/PP3PR1/4R1K1 b - - 4 35","solution":["g5e5","e3c1","e5e1","c1e1","h8c8"],"rating":2800,"themes":["crushing","defensiveMove","endgame","long"]},{"id":1204,"theme":"tactic","fen":"8/1p6/p7/4Q3/4P1bk/3P4/P2q3P/2r2R1K w - - 1 31","solution":["e5e7","d2g5","e7g5"],"rating":2800,"themes":["advantage","endgame","short"]},{"id":1205,"theme":"bishop_endgame","fen":"8/2b5/8/2pP2k1/P1P5/3K4/1P6/8 w - - 4 42","solution":["d5d6","c7d6","d3e4","g5f6","e4d5"],"rating":2800,"themes":["bishopEndgame","crushing","endgame","long"]},{"id":1206,"theme":"discovered_attack","fen":"8/5p2/4bRPk/pp2q3/3p4/4p3/PPP3K1/5R2 w - - 0 37","solution":["g6f7","h6h5","f1h1","h5g5","f7f8q"],"rating":2800,"themes":["advancedPawn","crushing","discoveredAttack","discoveredCheck"]},{"id":1207,"theme":"attraction","fen":"3r1k2/5p1p/4P1p1/p2p2R1/Np1Q4/1P2P2P/P1q3PK/2r5 w - - 1 31","solution":["e6e7","f8e7","d4e5","e7d7","e5d5"],"rating":2800,"themes":["advancedPawn","advantage","attraction","endgame"]}] \ No newline at end of file diff --git a/app/src/main/java/cc/skysparkle/matewave/MainActivity.kt b/app/src/main/java/cc/skysparkle/matewave/MainActivity.kt new file mode 100644 index 0000000..8077f98 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/MainActivity.kt @@ -0,0 +1,357 @@ +package cc.skysparkle.matewave + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.fillMaxSize + +import android.os.Build +import android.os.Bundle +import androidx.activity.ComponentActivity +import androidx.activity.SystemBarStyle +import androidx.activity.enableEdgeToEdge +import androidx.activity.compose.setContent +import cc.skysparkle.matewave.audio.SoundManager +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.remember +import androidx.lifecycle.viewmodel.compose.viewModel +import androidx.navigation.compose.NavHost +import androidx.navigation.compose.composable +import androidx.navigation.compose.rememberNavController +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.network.TransportType +import cc.skysparkle.matewave.ui.screens.AccountScreen +import cc.skysparkle.matewave.ui.screens.ConnectionScreen +import cc.skysparkle.matewave.ui.screens.FriendsScreen +import cc.skysparkle.matewave.ui.screens.GameScreen +import cc.skysparkle.matewave.ui.screens.LicensesScreen +import cc.skysparkle.matewave.ui.screens.MainMenuScreen +import cc.skysparkle.matewave.ui.screens.AppearanceScreen +import cc.skysparkle.matewave.ui.screens.PermissionsScreen +import cc.skysparkle.matewave.ui.screens.PuzzleSolveScreen +import cc.skysparkle.matewave.ui.screens.SettingsScreen +import cc.skysparkle.matewave.ui.screens.ShareApkScreen +import cc.skysparkle.matewave.ui.screens.VsAiSetupScreen +import cc.skysparkle.matewave.ui.theme.MatewaveTheme +import cc.skysparkle.matewave.viewmodel.GameViewModel +import cc.skysparkle.matewave.presence.PresenceHub + +class MainActivity : ComponentActivity() { + /** Asks for the highest refresh rate at the current resolution, for smoother animations. */ + private fun enableHighRefreshRate() { + runCatching { + val screen: android.view.Display = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + display + } else { + @Suppress("DEPRECATION") + windowManager.defaultDisplay + } + val current = screen.mode + val best = screen.supportedModes + .filter { it.physicalWidth == current.physicalWidth && it.physicalHeight == current.physicalHeight } + .maxByOrNull { it.refreshRate } ?: return + window.attributes = window.attributes.apply { preferredDisplayModeId = best.modeId } + } + } + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + // The app has one dark look: light system bar icons over the background photo. + enableEdgeToEdge( + statusBarStyle = SystemBarStyle.dark(android.graphics.Color.TRANSPARENT), + navigationBarStyle = SystemBarStyle.dark(android.graphics.Color.TRANSPARENT) + ) + + enableHighRefreshRate() + SoundManager.init(this) + + val appContext = applicationContext + kotlin.concurrent.thread(name = "warmup", isDaemon = true) { + runCatching { cc.skysparkle.matewave.data.FriendsStore.preload() } + runCatching { cc.skysparkle.matewave.puzzles.PuzzleRepository.load(appContext) } + } + + setContent { + MatewaveTheme { + androidx.compose.foundation.layout.Box( + modifier = androidx.compose.ui.Modifier.fillMaxSize() + ) { + cc.skysparkle.matewave.ui.components.AppBackgroundImage() + androidx.compose.foundation.layout.Box( + modifier = androidx.compose.ui.Modifier + .fillMaxSize() + .background(cc.skysparkle.matewave.ui.theme.PhotoScrim) + ) + AppNavHost() + } + } + } + } + + override fun onResume() { + super.onResume() + SoundManager.onAppResumed() + } + + override fun onPause() { + super.onPause() + SoundManager.onAppPaused() + } +} + +@Composable +private fun AppNavHost() { + val navController = rememberNavController() + val viewModel: GameViewModel = viewModel() + val studyViewModel: cc.skysparkle.matewave.viewmodel.OpeningStudyViewModel = viewModel() + + val context = androidx.compose.ui.platform.LocalContext.current + + androidx.compose.runtime.LaunchedEffect(Unit) { viewModel.init(context) } + + // Presence is shared with the background service, so the lists stay the same in both. + val presence = remember { PresenceHub.get(context) } + androidx.compose.runtime.DisposableEffect(Unit) { + if (cc.skysparkle.matewave.presence.PresenceSettings(context).backgroundEnabled) { + cc.skysparkle.matewave.presence.PresenceService.start(context) + } + PresenceHub.acquire(context) + onDispose { PresenceHub.release(context) } + } + + NavHost( + navController = navController, + startDestination = "menu", + enterTransition = { + if (isTabSwitch(initialState.destination.route, targetState.destination.route)) fadeThroughIn() + else sharedAxisIn(forward = true) + }, + exitTransition = { + if (isTabSwitch(initialState.destination.route, targetState.destination.route)) fadeThroughOut() + else sharedAxisOut(forward = true) + }, + popEnterTransition = { + if (isTabSwitch(initialState.destination.route, targetState.destination.route)) fadeThroughIn() + else sharedAxisIn(forward = false) + }, + popExitTransition = { + if (isTabSwitch(initialState.destination.route, targetState.destination.route)) fadeThroughOut() + else sharedAxisOut(forward = false) + } + ) { + composable("menu") { + MainMenuScreen( + viewModel = viewModel, + studyViewModel = studyViewModel, + onContinueGame = { + if (viewModel.resumeVsAi()) navController.navigate("game") + }, + onQuickGame = { + // Quick game repeats the last setup against the AI. + val last = cc.skysparkle.matewave.settings.LastGameSetup(context) + val color = last.aiColor + viewModel.startVsAi( + last.aiDifficulty, + color ?: listOf(PieceColor.WHITE, PieceColor.BLACK).random(), + last.aiTime, + randomColor = color == null + ) + navController.navigate("game") + }, + onVsAiClick = { navController.navigate("vsAiSetup") }, + onPuzzlesClick = { + val puzzle = cc.skysparkle.matewave.puzzles.PuzzleRepository.pickForRating( + context, + cc.skysparkle.matewave.data.ProfileStore.get().elo, + cc.skysparkle.matewave.stats.Stats.solvedPuzzles() + ) + if (puzzle != null) { + viewModel.startPuzzle(puzzle) + navController.navigate("puzzleSolve") + } + }, + onStudyClick = { navController.navigate("openingStudy") }, + onVsPlayerClick = { navController.navigate("connectionNearby") }, + onSettingsClick = { navController.navigate("settings") }, + onAccountClick = { navController.navigate("account") }, + onFriendsClick = { navController.navigate("friends") } + ) + } + + composable("settings") { + SettingsScreen( + onHomeClick = { navController.popBackStack("menu", inclusive = false) }, + onFriendsClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("friends") + }, + onAccountClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("account") + }, + onOpenPermissions = { navController.navigate("permissions") }, + onOpenAppearance = { navController.navigate("appearance") }, + onOpenLicenses = { navController.navigate("licenses") }, + onOpenShare = { navController.navigate("shareApk") } + ) + } + + composable("shareApk") { + ShareApkScreen(onBack = { navController.popBackStack() }) + } + + composable("licenses") { + LicensesScreen(onBack = { navController.popBackStack() }) + } + + composable("permissions") { + PermissionsScreen(onBack = { navController.popBackStack() }) + } + + composable("appearance") { + AppearanceScreen(onBack = { navController.popBackStack() }) + } + + composable("account") { + AccountScreen( + studyViewModel = studyViewModel, + onStudyClick = { navController.navigate("openingStudy") }, + onHomeClick = { navController.popBackStack("menu", inclusive = false) }, + onFriendsClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("friends") + }, + onSettingsClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("settings") + } + ) + } + + composable("friends") { + FriendsScreen( + presence = presence, + onPlay = { navController.navigate("connectionNearby") }, + onHomeClick = { navController.popBackStack("menu", inclusive = false) }, + onSettingsClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("settings") + }, + onAccountClick = { + navController.popBackStack("menu", inclusive = false) + navController.navigate("account") + } + ) + } + + composable("vsAiSetup") { + VsAiSetupScreen( + onBack = { navController.popBackStack() }, + onStart = { difficulty, color, timeControl -> + + viewModel.startVsAi( + difficulty, + color ?: listOf(PieceColor.WHITE, PieceColor.BLACK).random(), + timeControl, + randomColor = color == null + ) + navController.navigate("game") + } + ) + } + + composable("game") { + GameScreen( + viewModel = viewModel, + onExit = { navController.popBackStack("menu", inclusive = false) } + ) + } + + composable("openingStudy") { + cc.skysparkle.matewave.ui.screens.OpeningStudyScreen( + viewModel = studyViewModel, + onBack = { navController.popBackStack() }, + onOpenTrainer = { navController.navigate("openingTrainer") } + ) + } + + composable("openingTrainer") { + cc.skysparkle.matewave.ui.screens.OpeningTrainerScreen( + viewModel = studyViewModel, + onBack = { navController.popBackStack() } + ) + } + + composable("puzzleSolve") { + PuzzleSolveScreen( + viewModel = viewModel, + onBack = { navController.popBackStack("menu", inclusive = false) }, + onNextPuzzle = { next -> viewModel.startPuzzle(next) } + ) + } + + composable("connectionNearby") { + val bleTransport = remember { cc.skysparkle.matewave.network.Transports.ble(context) } + val lanTransport = remember { cc.skysparkle.matewave.network.Transports.lan(context) } + + ConnectionScreen( + + presence = presence, + onStartHost = { timeControl -> + // Wait for the opponent on Wi-Fi and, if allowed, Bluetooth at once. + val transports = buildList { + add(lanTransport) + if (cc.skysparkle.matewave.network.AppPermissions.allGranted(context, cc.skysparkle.matewave.network.AppPermissions.nearby)) { + add(bleTransport) + } + } + val transport = if (transports.size == 1) lanTransport + else cc.skysparkle.matewave.network.DualHostTransport(transports) + viewModel.startVsPlayerNetwork(transport, PieceColor.WHITE, timeControl, isHost = true) + navController.navigate("game") + }, + onJoin = { type, timeControl, targetId -> + val transport = if (type == TransportType.BLUETOOTH) bleTransport else lanTransport + viewModel.startVsPlayerNetwork(transport, PieceColor.BLACK, timeControl, isHost = false, targetId = targetId) + navController.navigate("game") + }, + onBack = { navController.popBackStack() } + ) + } + } +} + +private val TAB_ROUTES = setOf("menu", "friends", "settings", "account") + +private fun isTabSwitch(from: String?, to: String?): Boolean = + from in TAB_ROUTES && to in TAB_ROUTES && from != to + +private val MotionEasing = androidx.compose.animation.core.CubicBezierEasing(0.2f, 0f, 0f, 1f) + +private fun fadeThroughIn(): androidx.compose.animation.EnterTransition = + androidx.compose.animation.fadeIn( + androidx.compose.animation.core.tween(durationMillis = 260, delayMillis = 90, easing = MotionEasing) + ) + androidx.compose.animation.scaleIn( + initialScale = 0.97f, + animationSpec = androidx.compose.animation.core.tween(durationMillis = 300, delayMillis = 90, easing = MotionEasing) + ) + +private fun fadeThroughOut(): androidx.compose.animation.ExitTransition = + androidx.compose.animation.fadeOut( + androidx.compose.animation.core.tween(durationMillis = 110, easing = androidx.compose.animation.core.LinearEasing) + ) + +private fun sharedAxisIn(forward: Boolean): androidx.compose.animation.EnterTransition = + androidx.compose.animation.slideInHorizontally( + androidx.compose.animation.core.tween(durationMillis = 340, easing = MotionEasing) + ) { width -> if (forward) width / 14 else -width / 14 } + + androidx.compose.animation.fadeIn( + androidx.compose.animation.core.tween(durationMillis = 240, delayMillis = 80, easing = MotionEasing) + ) + +private fun sharedAxisOut(forward: Boolean): androidx.compose.animation.ExitTransition = + androidx.compose.animation.slideOutHorizontally( + androidx.compose.animation.core.tween(durationMillis = 340, easing = MotionEasing) + ) { width -> if (forward) -width / 14 else width / 14 } + + androidx.compose.animation.fadeOut( + androidx.compose.animation.core.tween(durationMillis = 120, easing = androidx.compose.animation.core.LinearEasing) + ) diff --git a/app/src/main/java/cc/skysparkle/matewave/MatewaveApp.kt b/app/src/main/java/cc/skysparkle/matewave/MatewaveApp.kt new file mode 100644 index 0000000..19c3c90 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/MatewaveApp.kt @@ -0,0 +1,23 @@ +package cc.skysparkle.matewave + +import android.app.Application +import cc.skysparkle.matewave.data.FriendsStore +import cc.skysparkle.matewave.data.GameSaveStore +import cc.skysparkle.matewave.data.ProfileStore +import cc.skysparkle.matewave.settings.Haptics +import cc.skysparkle.matewave.stats.Stats + +/** + * Sets up the stores once per process, before any screen or the background presence service + * runs: the service can be restarted by the system without the activity. + */ +class MatewaveApp : Application() { + override fun onCreate() { + super.onCreate() + ProfileStore.init(this) + FriendsStore.init(this) + Stats.init(this) + GameSaveStore.init(this) + Haptics.init(this) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ai/ChessAI.kt b/app/src/main/java/cc/skysparkle/matewave/ai/ChessAI.kt new file mode 100644 index 0000000..74fa854 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ai/ChessAI.kt @@ -0,0 +1,328 @@ +package cc.skysparkle.matewave.ai + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.engine.PieceType + +enum class AiDifficulty(val maxDepth: Int, val timeBudgetMs: Long, val noiseCp: Int) { + EASY(2, 400, 150), + MEDIUM(3, 1000, 40), + HARD(5, 2500, 8), + EXPERT(7, 4500, 0) +} + +/** + * Chess engine opponent: minimax with alpha-beta pruning, iterative deepening and a + * quiescence search over captures. The time budget per move is derived from the + * remaining clock, and lower difficulty levels add Gaussian noise at the root so the + * AI does not play the same game every time (mates are never randomized away). + */ +object ChessAI { + private fun valueOf(type: PieceType): Int = when (type) { + PieceType.PAWN -> 100 + PieceType.KNIGHT -> 320 + PieceType.BISHOP -> 330 + PieceType.ROOK -> 500 + PieceType.QUEEN -> 900 + PieceType.KING -> 20000 + } + + private const val MATE = 100_000 + + private val pawnTable = intArrayOf( + 0, 0, 0, 0, 0, 0, 0, 0, + 5, 10, 10, -20, -20, 10, 10, 5, + 5, -5, -10, 0, 0, -10, -5, 5, + 0, 0, 0, 20, 20, 0, 0, 0, + 5, 5, 10, 25, 25, 10, 5, 5, + 10, 10, 20, 30, 30, 20, 10, 10, + 50, 50, 50, 50, 50, 50, 50, 50, + 0, 0, 0, 0, 0, 0, 0, 0 + ) + + private val knightTable = intArrayOf( + -50, -40, -30, -30, -30, -30, -40, -50, + -40, -20, 0, 5, 5, 0, -20, -40, + -30, 5, 10, 15, 15, 10, 5, -30, + -30, 0, 15, 20, 20, 15, 0, -30, + -30, 5, 15, 20, 20, 15, 5, -30, + -30, 0, 10, 15, 15, 10, 0, -30, + -40, -20, 0, 0, 0, 0, -20, -40, + -50, -40, -30, -30, -30, -30, -40, -50 + ) + + private val bishopTable = intArrayOf( + -20, -10, -10, -10, -10, -10, -10, -20, + -10, 5, 0, 0, 0, 0, 5, -10, + -10, 10, 10, 10, 10, 10, 10, -10, + -10, 0, 10, 10, 10, 10, 0, -10, + -10, 5, 5, 10, 10, 5, 5, -10, + -10, 0, 5, 10, 10, 5, 0, -10, + -10, 0, 0, 0, 0, 0, 0, -10, + -20, -10, -10, -10, -10, -10, -10, -20 + ) + + private val rookTable = intArrayOf( + 0, 0, 0, 5, 5, 0, 0, 0, + -5, 0, 0, 0, 0, 0, 0, -5, + -5, 0, 0, 0, 0, 0, 0, -5, + -5, 0, 0, 0, 0, 0, 0, -5, + -5, 0, 0, 0, 0, 0, 0, -5, + -5, 0, 0, 0, 0, 0, 0, -5, + 5, 10, 10, 10, 10, 10, 10, 5, + 0, 0, 0, 0, 0, 0, 0, 0 + ) + + private val queenTable = intArrayOf( + -20, -10, -10, -5, -5, -10, -10, -20, + -10, 0, 5, 0, 0, 0, 0, -10, + -10, 5, 5, 5, 5, 5, 0, -10, + 0, 0, 5, 5, 5, 5, 0, -5, + -5, 0, 5, 5, 5, 5, 0, -5, + -10, 0, 5, 5, 5, 5, 0, -10, + -10, 0, 0, 0, 0, 0, 0, -10, + -20, -10, -10, -5, -5, -10, -10, -20 + ) + + private val kingMiddleTable = intArrayOf( + 20, 30, 10, 0, 0, 10, 30, 20, + 20, 20, 0, 0, 0, 0, 20, 20, + -10, -20, -20, -20, -20, -20, -20, -10, + -20, -30, -30, -40, -40, -30, -30, -20, + -30, -40, -40, -50, -50, -40, -40, -30, + -30, -40, -40, -50, -50, -40, -40, -30, + -30, -40, -40, -50, -50, -40, -40, -30, + -30, -40, -40, -50, -50, -40, -40, -30 + ) + + private val kingEndTable = intArrayOf( + -50, -30, -30, -30, -30, -30, -30, -50, + -30, -30, 0, 0, 0, 0, -30, -30, + -30, -10, 20, 30, 30, 20, -10, -30, + -30, -10, 30, 40, 40, 30, -10, -30, + -30, -10, 30, 40, 40, 30, -10, -30, + -30, -10, 20, 30, 30, 20, -10, -30, + -30, -20, -10, 0, 0, -10, -20, -30, + -50, -40, -30, -20, -20, -30, -40, -50 + ) + + internal fun evaluate(board: Board): Int { + var nonPawnMaterial = 0 + for (sq in 0 until 64) { + val p = board.squares[sq] ?: continue + if (p.type != PieceType.PAWN && p.type != PieceType.KING) nonPawnMaterial += valueOf(p.type) + } + val endgame = nonPawnMaterial <= 1_300 + + var score = 0 + for (sq in 0 until 64) { + val piece = board.squares[sq] ?: continue + val white = piece.color == PieceColor.WHITE + val idx = if (white) sq else sq xor 56 + val positional = when (piece.type) { + PieceType.PAWN -> pawnTable[idx] + PieceType.KNIGHT -> knightTable[idx] + PieceType.BISHOP -> bishopTable[idx] + PieceType.ROOK -> rookTable[idx] + PieceType.QUEEN -> queenTable[idx] + PieceType.KING -> if (endgame) kingEndTable[idx] else kingMiddleTable[idx] + } + val value = valueOf(piece.type) + positional + score += if (white) value else -value + } + return score + } + + private fun moveScore(board: Board, m: Move): Int { + var score = 0 + val victim = board.squares[m.to] + if (victim != null) { + val attacker = board.squares[m.from] + score = valueOf(victim.type) * 16 - (if (attacker != null) valueOf(attacker.type) / 100 else 0) + } else if (m.isEnPassant) { + score = valueOf(PieceType.PAWN) * 16 + } + if (m.promotion == PieceType.QUEEN) score += 800 + return score + } + + internal fun orderMoves(board: Board, moves: List): List = + moves.sortedByDescending { m -> moveScore(board, m) } + + internal fun isTactical(board: Board, m: Move): Boolean = + board.squares[m.to] != null || m.isEnPassant || m.promotion != null + + private class Search(private val deadline: Long, val history: Set) { + private var nodes = 0 + var timedOut = false + private set + + fun timeUp(): Boolean { + if (timedOut) return true + nodes++ + if ((nodes and 1023) == 0 && System.currentTimeMillis() >= deadline) timedOut = true + return timedOut + } + } + + private fun quiesce( + board: Board, alphaIn: Int, betaIn: Int, maximizing: Boolean, qDepth: Int, search: Search + ): Int { + val standPat = evaluate(board) + if (search.timeUp() || qDepth == 0) return standPat + var alpha = alphaIn + var beta = betaIn + if (maximizing) { + if (standPat >= beta) return standPat + if (standPat > alpha) alpha = standPat + } else { + if (standPat <= alpha) return standPat + if (standPat < beta) beta = standPat + } + val captures = ChessEngine.legalMoves(board).filter { isTactical(board, it) } + if (captures.isEmpty()) return standPat + var best = standPat + for (m in orderMoves(board, captures)) { + val value = quiesce(ChessEngine.applyMove(board, m), alpha, beta, !maximizing, qDepth - 1, search) + if (maximizing) { + if (value > best) best = value + if (value > alpha) alpha = value + } else { + if (value < best) best = value + if (value < beta) beta = value + } + if (beta <= alpha || search.timedOut) break + } + return best + } + + private fun minimax( + board: Board, depth: Int, alphaIn: Int, betaIn: Int, maximizing: Boolean, ply: Int, search: Search + ): Int { + if (search.timeUp()) return evaluate(board) + var alpha = alphaIn + var beta = betaIn + + if (ply in 1..2 && Notation.positionKey(board) in search.history) return 0 + + if (board.halfmoveClock >= 100 || ChessEngine.isDeadPosition(board)) return 0 + + val inCheck = ChessEngine.isInCheck(board, board.sideToMove) + if (depth <= 0 && !inCheck) return quiesce(board, alpha, beta, maximizing, QUIESCENCE_DEPTH, search) + + val moves = ChessEngine.legalMoves(board) + if (moves.isEmpty()) { + return if (inCheck) { + if (maximizing) -MATE + ply else MATE - ply + } else 0 + } + + val nextDepth = if (depth <= 0) 0 else depth - 1 + + val ordered = orderMoves(board, moves) + if (maximizing) { + var best = Int.MIN_VALUE + for (m in ordered) { + val value = minimax(ChessEngine.applyMove(board, m), nextDepth, alpha, beta, false, ply + 1, search) + best = maxOf(best, value) + alpha = maxOf(alpha, value) + if (beta <= alpha || search.timedOut) break + } + return best + } else { + var best = Int.MAX_VALUE + for (m in ordered) { + val value = minimax(ChessEngine.applyMove(board, m), nextDepth, alpha, beta, true, ply + 1, search) + best = minOf(best, value) + beta = minOf(beta, value) + if (beta <= alpha || search.timedOut) break + } + return best + } + } + + fun bestMove( + board: Board, + difficulty: AiDifficulty, + history: Set = emptySet(), + clockMillis: Long? = null, + incrementMillis: Long = 0L, + random: java.util.Random = java.util.Random() + ): Move? { + val rootMoves = ChessEngine.legalMoves(board) + if (rootMoves.isEmpty()) return null + if (rootMoves.size == 1) return rootMoves.first() + + val budget = if (clockMillis == null || clockMillis > 24L * 3600 * 1000) { + difficulty.timeBudgetMs + } else { + minOf(difficulty.timeBudgetMs, clockMillis / 30 + incrementMillis * 3 / 4).coerceAtLeast(MIN_BUDGET_MS) + } + + val maximizing = board.sideToMove == PieceColor.WHITE + val search = Search(System.currentTimeMillis() + budget, history) + + var order = orderMoves(board, rootMoves) + var lastScored: List> = emptyList() + + var depth = 1 + while (depth <= difficulty.maxDepth && !search.timedOut) { + var alpha = Int.MIN_VALUE + var beta = Int.MAX_VALUE + var bestValueThisDepth = if (maximizing) Int.MIN_VALUE else Int.MAX_VALUE + var bestMoveThisDepth: Move? = null + val scored = ArrayList>(order.size) + var completed = true + + for (m in order) { + val next = ChessEngine.applyMove(board, m) + + val a = if (difficulty.noiseCp > 0) Int.MIN_VALUE else alpha + val b = if (difficulty.noiseCp > 0) Int.MAX_VALUE else beta + val value = minimax(next, depth - 1, a, b, !maximizing, 1, search) + + if (search.timedOut) { completed = false; break } + scored.add(m to value) + if (maximizing) { + if (bestMoveThisDepth == null || value > bestValueThisDepth) { + bestValueThisDepth = value; bestMoveThisDepth = m + } + alpha = maxOf(alpha, bestValueThisDepth) + } else { + if (bestMoveThisDepth == null || value < bestValueThisDepth) { + bestValueThisDepth = value; bestMoveThisDepth = m + } + beta = minOf(beta, bestValueThisDepth) + } + } + + if (completed && bestMoveThisDepth != null) { + lastScored = if (maximizing) scored.sortedByDescending { it.second } + else scored.sortedBy { it.second } + order = lastScored.map { it.first } + } else { + break + } + depth++ + } + + if (lastScored.isEmpty()) return order.first() + val bestEntry = lastScored.first() + if (difficulty.noiseCp <= 0) return bestEntry.first + + if (kotlin.math.abs(bestEntry.second) > MATE / 2) return bestEntry.first + + return lastScored + .filter { kotlin.math.abs(it.second) < MATE / 2 } + .maxByOrNull { (_, value) -> + val fromMover = if (maximizing) value else -value + fromMover + (random.nextGaussian() * difficulty.noiseCp).toInt() + }?.first ?: bestEntry.first + } + + private const val QUIESCENCE_DEPTH = 6 + private const val MIN_BUDGET_MS = 120L +} diff --git a/app/src/main/java/cc/skysparkle/matewave/audio/SoundManager.kt b/app/src/main/java/cc/skysparkle/matewave/audio/SoundManager.kt new file mode 100644 index 0000000..9d0118b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/audio/SoundManager.kt @@ -0,0 +1,320 @@ +package cc.skysparkle.matewave.audio + +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.content.IntentFilter +import android.media.AudioAttributes +import android.media.AudioFocusRequest +import android.media.AudioManager +import android.media.MediaPlayer +import android.media.SoundPool +import android.os.Build +import android.os.Handler +import android.os.Looper +import android.util.Log +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow + +enum class RadioState { IDLE, CONNECTING, PLAYING, ERROR } + +object SoundManager { + private val RADIO_SOURCES = listOf( + "http://stream.srg-ssr.ch/srgssr/rsj/aac/192", + "https://stream.srg-ssr.ch/srgssr/rsj/mp3/128", + "http://stream.srg-ssr.ch/srgssr/rsj/aac/96" + ) + + private const val PREFS = "chess_sound_prefs" + private const val KEY_MUSIC = "music_enabled" + private const val KEY_SFX = "sfx_enabled" + private const val TAG = "SoundManager" + + private const val RADIO_START_DELAY_MS = 1_500L + private const val MAX_RETRIES = 8 + private const val CONNECT_TIMEOUT_MS = 8_000L + private val RETRY_DELAYS_MS = longArrayOf(1_000, 2_000, 4_000, 8_000, 15_000, 30_000) + private const val BASE_VOLUME = 0.35f + + private var appContext: Context? = null + private var musicPlayer: MediaPlayer? = null + /** start/pause are only valid once the stream is prepared; before that they would throw. */ + private var playerPrepared = false + private var initialized = false + private var retryCount = 0 + private var sourceIndex = 0 + private var connectTimeoutRunnable: Runnable? = null + private var audioManager: AudioManager? = null + private var focusRequest: AudioFocusRequest? = null + private var noisyReceiverRegistered = false + private val mainHandler = Handler(Looper.getMainLooper()) + + var musicEnabled: Boolean = true + private set + var sfxEnabled: Boolean = true + private set + + private val _radioState = MutableStateFlow(RadioState.IDLE) + val radioState: StateFlow = _radioState + + private fun pauseRadio() { + val player = musicPlayer ?: return + if (playerPrepared) runCatching { if (player.isPlaying) player.pause() } + } + + private val noisyReceiver = object : BroadcastReceiver() { + override fun onReceive(context: Context, intent: Intent) { + if (intent.action == AudioManager.ACTION_AUDIO_BECOMING_NOISY) pauseRadio() + } + } + + private val focusChangeListener = AudioManager.OnAudioFocusChangeListener { change -> + when (change) { + AudioManager.AUDIOFOCUS_LOSS -> stopRadioInternal() + AudioManager.AUDIOFOCUS_LOSS_TRANSIENT -> pauseRadio() + AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK -> + runCatching { musicPlayer?.setVolume(BASE_VOLUME * 0.3f, BASE_VOLUME * 0.3f) } + AudioManager.AUDIOFOCUS_GAIN -> { + val player = musicPlayer + if (player != null && playerPrepared) runCatching { + player.setVolume(BASE_VOLUME, BASE_VOLUME) + if (!player.isPlaying) player.start() + } + } + } + } + + fun init(context: Context) { + if (initialized) return + initialized = true + val ctx = context.applicationContext + appContext = ctx + audioManager = ctx.getSystemService(Context.AUDIO_SERVICE) as? AudioManager + + val prefs = ctx.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + musicEnabled = prefs.getBoolean(KEY_MUSIC, true) + sfxEnabled = prefs.getBoolean(KEY_SFX, true) + + ensureSoundPool(ctx) + + if (musicEnabled) { + mainHandler.postDelayed({ if (musicEnabled) startRadio() }, RADIO_START_DELAY_MS) + } + } + + private fun requestAudioFocus(): Boolean { + val am = audioManager ?: return false + val attrs = AudioAttributes.Builder() + .setUsage(AudioAttributes.USAGE_MEDIA) + .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC) + .build() + val request = AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN) + .setAudioAttributes(attrs) + .setOnAudioFocusChangeListener(focusChangeListener, mainHandler) + .build() + focusRequest = request + return am.requestAudioFocus(request) == AudioManager.AUDIOFOCUS_REQUEST_GRANTED + } + + private fun abandonAudioFocus() { + val am = audioManager ?: return + focusRequest?.let { am.abandonAudioFocusRequest(it) } + focusRequest = null + } + + private fun registerNoisyReceiver() { + val ctx = appContext ?: return + if (noisyReceiverRegistered) return + val filter = IntentFilter(AudioManager.ACTION_AUDIO_BECOMING_NOISY) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + ctx.registerReceiver(noisyReceiver, filter, Context.RECEIVER_NOT_EXPORTED) + } else { + @Suppress("UnspecifiedRegisterReceiverFlag") + ctx.registerReceiver(noisyReceiver, filter) + } + noisyReceiverRegistered = true + } + + private fun unregisterNoisyReceiver() { + val ctx = appContext ?: return + if (!noisyReceiverRegistered) return + try { ctx.unregisterReceiver(noisyReceiver) } catch (_: IllegalArgumentException) {} + noisyReceiverRegistered = false + } + + private fun startRadio() { + val ctx = appContext ?: return + if (musicPlayer != null) return + if (!requestAudioFocus()) { + Log.w(TAG, "Audio focus denied, radio not started") + _radioState.value = RadioState.ERROR + return + } + registerNoisyReceiver() + retryCount = 0 + connect(ctx) + } + + private fun connect(ctx: Context) { + _radioState.value = RadioState.CONNECTING + val url = RADIO_SOURCES[sourceIndex % RADIO_SOURCES.size] + try { + val player = MediaPlayer() + musicPlayer = player + playerPrepared = false + player.setAudioAttributes( + AudioAttributes.Builder() + .setUsage(AudioAttributes.USAGE_MEDIA) + .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC) + .build() + ) + player.setVolume(BASE_VOLUME, BASE_VOLUME) + player.setDataSource(url) + player.setOnPreparedListener { + cancelConnectTimeout() + playerPrepared = true + it.start() + retryCount = 0 + _radioState.value = RadioState.PLAYING + } + player.setOnErrorListener { mp, _, _ -> + cancelConnectTimeout() + try { mp.release() } catch (_: Exception) {} + if (musicPlayer === mp) { + musicPlayer = null + playerPrepared = false + } + scheduleRetry(ctx) + true + } + // A live stream only "completes" when the connection drops: reconnect. + player.setOnCompletionListener { mp -> + try { mp.release() } catch (_: Exception) {} + if (musicPlayer === mp) { + musicPlayer = null + playerPrepared = false + retryCount = 0 + scheduleRetry(ctx) + } + } + player.prepareAsync() + scheduleConnectTimeout(ctx, player, url) + } catch (e: Exception) { + Log.w(TAG, "Radio connection error ($url): ${e.message}") + try { musicPlayer?.release() } catch (_: Exception) {} + musicPlayer = null + playerPrepared = false + scheduleRetry(ctx) + } + } + + private fun scheduleConnectTimeout(ctx: Context, player: MediaPlayer, url: String) { + cancelConnectTimeout() + val runnable = Runnable { + if (musicPlayer === player) { + Log.w(TAG, "Radio connection timed out ($url)") + try { player.release() } catch (_: Exception) {} + musicPlayer = null + playerPrepared = false + scheduleRetry(ctx) + } + } + connectTimeoutRunnable = runnable + mainHandler.postDelayed(runnable, CONNECT_TIMEOUT_MS) + } + + private fun cancelConnectTimeout() { + connectTimeoutRunnable?.let { mainHandler.removeCallbacks(it) } + connectTimeoutRunnable = null + } + + private fun scheduleRetry(ctx: Context) { + cancelConnectTimeout() + if (!musicEnabled) { + _radioState.value = RadioState.IDLE + return + } + if (retryCount >= MAX_RETRIES) { + _radioState.value = RadioState.ERROR + Log.w(TAG, "Could not connect to the radio after $MAX_RETRIES attempts") + return + } + sourceIndex++ + val delay = RETRY_DELAYS_MS.getOrElse(retryCount) { RETRY_DELAYS_MS.last() } + retryCount++ + _radioState.value = RadioState.CONNECTING + mainHandler.postDelayed({ + if (musicEnabled && musicPlayer == null) connect(ctx) + }, delay) + } + + private fun stopRadioInternal() { + cancelConnectTimeout() + try { musicPlayer?.release() } catch (_: Exception) {} + musicPlayer = null + playerPrepared = false + unregisterNoisyReceiver() + abandonAudioFocus() + mainHandler.removeCallbacksAndMessages(null) + _radioState.value = RadioState.IDLE + } + + fun onAppResumed() { + if (musicEnabled && musicPlayer == null) startRadio() + } + + fun onAppPaused() { + stopRadioInternal() + } + + fun setMusicEnabled(enabled: Boolean) { + musicEnabled = enabled + appContext?.getSharedPreferences(PREFS, Context.MODE_PRIVATE)?.edit() + ?.putBoolean(KEY_MUSIC, enabled)?.apply() + if (enabled) startRadio() else stopRadioInternal() + } + + fun setSfxEnabled(enabled: Boolean) { + sfxEnabled = enabled + appContext?.getSharedPreferences(PREFS, Context.MODE_PRIVATE)?.edit() + ?.putBoolean(KEY_SFX, enabled)?.apply() + } + + private var soundPool: SoundPool? = null + private val sfxSoundIds = HashMap() + private val sfxLoaded = HashSet() + + private fun ensureSoundPool(ctx: Context): SoundPool { + soundPool?.let { return it } + val attributes = AudioAttributes.Builder() + .setUsage(AudioAttributes.USAGE_GAME) + .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION) + .build() + val pool = SoundPool.Builder().setMaxStreams(4).setAudioAttributes(attributes).build() + pool.setOnLoadCompleteListener { _, soundId, status -> + if (status == 0) synchronized(sfxLoaded) { sfxLoaded.add(soundId) } + } + for (resId in intArrayOf( + cc.skysparkle.matewave.R.raw.sfx_move, + cc.skysparkle.matewave.R.raw.sfx_capture, + cc.skysparkle.matewave.R.raw.sfx_select + )) { + sfxSoundIds[resId] = pool.load(ctx, resId, 1) + } + soundPool = pool + return pool + } + + private fun playSfx(resId: Int) { + if (!sfxEnabled) return + val ctx = appContext ?: return + val pool = ensureSoundPool(ctx) + val soundId = sfxSoundIds[resId] ?: return + val ready = synchronized(sfxLoaded) { soundId in sfxLoaded } + if (ready) pool.play(soundId, 1f, 1f, 1, 0, 1f) + } + + fun playMove() { playSfx(cc.skysparkle.matewave.R.raw.sfx_move) } + fun playCapture() { playSfx(cc.skysparkle.matewave.R.raw.sfx_capture) } + fun playSelect() { playSfx(cc.skysparkle.matewave.R.raw.sfx_select) } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/clock/GameClock.kt b/app/src/main/java/cc/skysparkle/matewave/clock/GameClock.kt new file mode 100644 index 0000000..52bd2bd --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/clock/GameClock.kt @@ -0,0 +1,126 @@ +package cc.skysparkle.matewave.clock + +import cc.skysparkle.matewave.engine.PieceColor +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.isActive +import kotlinx.coroutines.launch + +data class ClockState( + val whiteMillis: Long, + val blackMillis: Long, + val running: PieceColor?, + val flagged: PieceColor? = null +) + +/** Chess clock with increment; state is exposed as a StateFlow for the UI. */ +class GameClock(private val timeControl: TimeControl, private val scope: CoroutineScope) { + private val unlimited = timeControl.initialSeconds == Int.MAX_VALUE + + private var whiteLeft = timeControl.initialSeconds * 1000L + private var blackLeft = timeControl.initialSeconds * 1000L + private var running: PieceColor? = null + private var flagged: PieceColor? = null + private var lastAccountedNs = System.nanoTime() + + private val _state = MutableStateFlow(ClockState(whiteLeft, blackLeft, null)) + val state: StateFlow = _state + + private var tickJob: Job? = null + + private fun account() { + val now = System.nanoTime() + val elapsedMs = (now - lastAccountedNs) / 1_000_000L + lastAccountedNs = now + val side = running ?: return + if (unlimited || flagged != null || elapsedMs <= 0) return + if (side == PieceColor.WHITE) whiteLeft = (whiteLeft - elapsedMs).coerceAtLeast(0) + else blackLeft = (blackLeft - elapsedMs).coerceAtLeast(0) + } + + private fun publish() { + _state.value = ClockState(whiteLeft, blackLeft, running, flagged) + } + + fun start(side: PieceColor) { + tickJob?.cancel() + account() + running = side + publish() + if (unlimited) return + tickJob = scope.launch { + while (isActive) { + val current = running ?: break + val left = if (current == PieceColor.WHITE) whiteLeft else blackLeft + + val sinceAccount = (System.nanoTime() - lastAccountedNs) / 1_000_000L + delay(((left - sinceAccount) % 1000L + 1L).coerceIn(1L, 1000L)) + account() + val nowLeft = if (current == PieceColor.WHITE) whiteLeft else blackLeft + if (nowLeft <= 0L) { + flagged = current + publish() + break + } + publish() + } + } + } + + fun onMoveMade(movedSide: PieceColor) { + account() + val incMs = timeControl.incrementSeconds * 1000L + if (!unlimited) { + if (movedSide == PieceColor.WHITE) whiteLeft += incMs else blackLeft += incMs + } + start(if (movedSide == PieceColor.WHITE) PieceColor.BLACK else PieceColor.WHITE) + } + + fun applyRemoteTime(side: PieceColor, remainingMillis: Long) { + if (remainingMillis < 0 || unlimited) return + account() + + if (flagged == side && remainingMillis > 0) { + // The opponent's move arrived in time after all: unflag and keep the clock ticking. + flagged = null + if (side == PieceColor.WHITE) whiteLeft = remainingMillis else blackLeft = remainingMillis + lastAccountedNs = System.nanoTime() + val current = running + if (current != null) start(current) else publish() + return + } + val local = if (side == PieceColor.WHITE) whiteLeft else blackLeft + if (kotlin.math.abs(local - remainingMillis) < SYNC_THRESHOLD_MS) return + if (side == PieceColor.WHITE) whiteLeft = remainingMillis else blackLeft = remainingMillis + publish() + } + + fun restore(whiteMillis: Long, blackMillis: Long) { + if (unlimited) return + account() + if (whiteMillis >= 0) whiteLeft = whiteMillis + if (blackMillis >= 0) blackLeft = blackMillis + publish() + } + + fun pause() { + tickJob?.cancel() + account() + running = null + publish() + } + + fun stop() { + tickJob?.cancel() + account() + running = null + publish() + } + + private companion object { + const val SYNC_THRESHOLD_MS = 1_500L + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/clock/TimeControl.kt b/app/src/main/java/cc/skysparkle/matewave/clock/TimeControl.kt new file mode 100644 index 0000000..fce7b99 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/clock/TimeControl.kt @@ -0,0 +1,28 @@ +package cc.skysparkle.matewave.clock + +data class TimeControl( + val label: String, + val initialSeconds: Int, + val incrementSeconds: Int +) { + companion object { + val BULLET_1_0 = TimeControl("Bullet 1+0", 60, 0) + val BULLET_2_1 = TimeControl("Bullet 2+1", 120, 1) + val BLITZ_3_0 = TimeControl("Blitz 3+0", 180, 0) + val BLITZ_5_0 = TimeControl("Blitz 5+0", 300, 0) + val BLITZ_5_3 = TimeControl("Blitz 5+3", 300, 3) + val RAPID_10_0 = TimeControl("Rapid 10+0", 600, 0) + val RAPID_15_10 = TimeControl("Rapid 15+10", 900, 10) + val CLASSICAL_30_0 = TimeControl("Classical 30+0", 1800, 0) + val CLASSICAL_30_20 = TimeControl("Classical 30+20", 1800, 20) + val NO_LIMIT = TimeControl("No time limit", Int.MAX_VALUE, 0) + + val presets = listOf( + BULLET_1_0, BULLET_2_1, + BLITZ_3_0, BLITZ_5_0, BLITZ_5_3, + RAPID_10_0, RAPID_15_10, + CLASSICAL_30_0, CLASSICAL_30_20, + NO_LIMIT + ) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/data/DeviceIdentity.kt b/app/src/main/java/cc/skysparkle/matewave/data/DeviceIdentity.kt new file mode 100644 index 0000000..f30961b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/data/DeviceIdentity.kt @@ -0,0 +1,25 @@ +package cc.skysparkle.matewave.data + +import android.content.Context +import java.util.UUID + +object DeviceIdentity { + private const val PREFS = "device_identity" + private const val KEY_DEVICE_ID = "deviceId" + + @Volatile private var cached: String? = null + + fun deviceId(context: Context): String { + cached?.let { return it } + synchronized(this) { + cached?.let { return it } + val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + val existing = prefs.getString(KEY_DEVICE_ID, null) + val id = existing ?: UUID.randomUUID().toString().also { + prefs.edit().putString(KEY_DEVICE_ID, it).apply() + } + cached = id + return id + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/data/GameSaveStore.kt b/app/src/main/java/cc/skysparkle/matewave/data/GameSaveStore.kt new file mode 100644 index 0000000..be29db0 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/data/GameSaveStore.kt @@ -0,0 +1,102 @@ +package cc.skysparkle.matewave.data + +import android.content.ContentValues +import android.content.Context +import android.database.sqlite.SQLiteDatabase +import android.database.sqlite.SQLiteOpenHelper + +data class SavedGame( + val fen: String, + val myColorWhite: Boolean, + val difficultyName: String, + val initialSeconds: Int, + val incrementSeconds: Int, + val whiteMillis: Long = -1, + val blackMillis: Long = -1, + /** Moves from the standard start in UCI, space separated; empty for saves made before version 3. */ + val movesUci: String = "" +) + +/** Persists the unfinished game against the AI: moves, position and remaining clock time. */ +object GameSaveStore { + private const val DB_NAME = "chess_save.db" + private const val DB_VERSION = 3 + private const val TABLE = "saved_game" + + @Volatile private var helper: DbHelper? = null + + fun init(context: Context) { + if (helper == null) synchronized(this) { + if (helper == null) helper = DbHelper(context.applicationContext) + } + } + + private class DbHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_VERSION) { + override fun onCreate(db: SQLiteDatabase) { + db.execSQL( + """ + CREATE TABLE $TABLE ( + id INTEGER PRIMARY KEY CHECK (id = 1), + fen TEXT NOT NULL, + my_color_white INTEGER NOT NULL, + difficulty TEXT NOT NULL, + initial_seconds INTEGER NOT NULL, + increment_seconds INTEGER NOT NULL, + white_ms INTEGER NOT NULL DEFAULT -1, + black_ms INTEGER NOT NULL DEFAULT -1, + moves TEXT NOT NULL DEFAULT '' + ) + """.trimIndent() + ) + } + + override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) { + if (oldVersion < 2) { + db.execSQL("ALTER TABLE $TABLE ADD COLUMN white_ms INTEGER NOT NULL DEFAULT -1") + db.execSQL("ALTER TABLE $TABLE ADD COLUMN black_ms INTEGER NOT NULL DEFAULT -1") + } + if (oldVersion < 3) { + db.execSQL("ALTER TABLE $TABLE ADD COLUMN moves TEXT NOT NULL DEFAULT ''") + } + } + } + + fun save(game: SavedGame) { + val db = runCatching { helper?.writableDatabase }.getOrNull() ?: return + val values = ContentValues().apply { + put("id", 1) + put("fen", game.fen) + put("my_color_white", if (game.myColorWhite) 1 else 0) + put("difficulty", game.difficultyName) + put("initial_seconds", game.initialSeconds) + put("increment_seconds", game.incrementSeconds) + put("white_ms", game.whiteMillis) + put("black_ms", game.blackMillis) + put("moves", game.movesUci) + } + runCatching { db.insertWithOnConflict(TABLE, null, values, SQLiteDatabase.CONFLICT_REPLACE) } + } + + fun load(): SavedGame? { + val db = runCatching { helper?.readableDatabase }.getOrNull() ?: return null + return runCatching { + db.query(TABLE, null, "id = 1", null, null, null, null).use { cursor -> + if (!cursor.moveToFirst()) return@use null + SavedGame( + fen = cursor.getString(cursor.getColumnIndexOrThrow("fen")), + myColorWhite = cursor.getInt(cursor.getColumnIndexOrThrow("my_color_white")) == 1, + difficultyName = cursor.getString(cursor.getColumnIndexOrThrow("difficulty")), + initialSeconds = cursor.getInt(cursor.getColumnIndexOrThrow("initial_seconds")), + incrementSeconds = cursor.getInt(cursor.getColumnIndexOrThrow("increment_seconds")), + whiteMillis = cursor.getLong(cursor.getColumnIndexOrThrow("white_ms")), + blackMillis = cursor.getLong(cursor.getColumnIndexOrThrow("black_ms")), + movesUci = cursor.getString(cursor.getColumnIndexOrThrow("moves")) ?: "" + ) + } + }.getOrNull() + } + + fun clear() { + runCatching { helper?.writableDatabase?.delete(TABLE, "id = 1", null) } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/data/ProfileStore.kt b/app/src/main/java/cc/skysparkle/matewave/data/ProfileStore.kt new file mode 100644 index 0000000..1936594 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/data/ProfileStore.kt @@ -0,0 +1,253 @@ +package cc.skysparkle.matewave.data + +import cc.skysparkle.matewave.ai.AiDifficulty +import android.content.Context +import org.json.JSONArray +import org.json.JSONObject +import kotlin.math.pow +import kotlin.math.roundToInt + +data class Profile( + + val userId: String, + val name: String, + val avatarBase64: String?, + val backgroundBase64: String?, + val elo: Int, + val levelChosen: Boolean +) + +object ProfileStore { + private const val PREFS = "chess_profile_prefs" + private const val KEY_USER_ID = "user_id" + private const val KEY_NAME = "name" + private const val KEY_AVATAR = "avatar" + private const val KEY_BACKGROUND = "background" + private const val KEY_ELO = "elo" + private const val KEY_LEVEL_CHOSEN = "level_chosen" + private const val K_FACTOR = 32.0 + + private var appContext: Context? = null + + fun init(context: Context) { + appContext = context.applicationContext + } + + private fun prefs() = appContext?.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + fun userId(): String { + val p = prefs() ?: return "local" + p.getString(KEY_USER_ID, null)?.let { return it } + val fresh = java.util.UUID.randomUUID().toString() + p.edit().putString(KEY_USER_ID, fresh).apply() + return fresh + } + + fun get(): Profile { + val p = prefs() + return Profile( + userId = userId(), + + name = p?.getString(KEY_NAME, null) + ?: appContext?.getString(cc.skysparkle.matewave.R.string.player_default_name) + ?: "Player", + avatarBase64 = p?.getString(KEY_AVATAR, null), + backgroundBase64 = p?.getString(KEY_BACKGROUND, null), + elo = p?.getInt(KEY_ELO, 1200) ?: 1200, + levelChosen = p?.getBoolean(KEY_LEVEL_CHOSEN, false) ?: false + ) + } + + fun setName(name: String) { + prefs()?.edit()?.putString(KEY_NAME, name)?.apply() + } + + fun setAvatar(base64: String?) { + prefs()?.edit()?.putString(KEY_AVATAR, base64)?.apply() + } + + fun resetAvatarToDefault() = setAvatar(null) + + fun setBackground(base64: String?) { + prefs()?.edit()?.putString(KEY_BACKGROUND, base64)?.apply() + } + + fun setStartingElo(elo: Int) { + prefs()?.edit() + ?.putInt(KEY_ELO, elo) + ?.putBoolean(KEY_LEVEL_CHOSEN, true) + ?.apply() + } + + fun applyEloDelta(opponentElo: Int, result: Double) { + val current = get().elo + val expected = 1.0 / (1.0 + 10.0.pow((opponentElo - current) / 400.0)) + val newElo = (current + K_FACTOR * (result - expected)).roundToInt().coerceIn(100, 3000) + prefs()?.edit()?.putInt(KEY_ELO, newElo)?.apply() + cc.skysparkle.matewave.stats.Stats.recordRating(current, newElo) + } + + fun aiNominalElo(difficulty: AiDifficulty): Int = when (difficulty) { + AiDifficulty.EASY -> 800 + AiDifficulty.MEDIUM -> 1200 + AiDifficulty.HARD -> 1600 + AiDifficulty.EXPERT -> 2000 + } +} + +data class FriendEntry( + + val userId: String, + val name: String, + val avatarBase64: String?, + val backgroundBase64: String?, + val elo: Int, + val lastPlayedMs: Long, + + val favorite: Boolean = false, + /** Last time the friend was seen nearby; together with the last game it gives "last seen". */ + val lastSeenMs: Long = 0 +) + +object FriendsStore { + private const val PREFS = "chess_friends_prefs" + private const val KEY_LIST = "friends_json" + private const val MAX_FRIENDS = 30 + + private var appContext: Context? = null + + private val lock = Any() + + @Volatile private var cached: List? = null + + fun init(context: Context) { + appContext = context.applicationContext + cached = null + } + + private fun prefs() = appContext?.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + fun list(): List = synchronized(lock) { readAll() } + + private fun readAll(): List { + cached?.let { return it } + val raw = prefs()?.getString(KEY_LIST, null) ?: return emptyList() + val arr = try { + JSONArray(raw) + } catch (e: Exception) { + return emptyList() + } + val result = ArrayList() + for (i in 0 until arr.length()) { + try { + val o = arr.getJSONObject(i) + result.add( + FriendEntry( + userId = o.optString("uid", "").ifBlank { o.getString("name") }, + name = o.getString("name"), + avatarBase64 = if (o.has("avatar")) o.getString("avatar") else null, + backgroundBase64 = if (o.has("background")) o.getString("background") else null, + elo = o.optInt("elo", 1200), + lastPlayedMs = o.optLong("t", 0), + favorite = o.optBoolean("fav", false), + lastSeenMs = o.optLong("s", 0) + ) + ) + } catch (e: Exception) { + } + } + val sorted = result.sortedByDescending { it.lastPlayedMs } + cached = sorted + return sorted + } + + private fun writeAll(entries: List) { + val p = prefs() ?: return + val arr = JSONArray() + entries.forEach { f -> + val o = JSONObject() + o.put("uid", f.userId) + o.put("name", f.name) + if (f.avatarBase64 != null) o.put("avatar", f.avatarBase64) + if (f.backgroundBase64 != null) o.put("background", f.backgroundBase64) + o.put("elo", f.elo) + o.put("t", f.lastPlayedMs) + if (f.favorite) o.put("fav", true) + if (f.lastSeenMs > 0) o.put("s", f.lastSeenMs) + arr.put(o) + } + p.edit().putString(KEY_LIST, arr.toString()).apply() + cached = entries.sortedByDescending { it.lastPlayedMs } + } + + fun preload() { + synchronized(lock) { readAll() } + } + + fun updateProfile( + userId: String, + name: String, + elo: Int, + avatarBase64: String? = null, + backgroundBase64: String? = null + ) { + synchronized(lock) { + val existing = readAll().firstOrNull { it.userId == userId } ?: return + val updated = existing.copy( + name = name.ifBlank { existing.name }, + elo = if (elo > 0) elo else existing.elo, + avatarBase64 = avatarBase64 ?: existing.avatarBase64, + backgroundBase64 = backgroundBase64 ?: existing.backgroundBase64 + ) + if (updated == existing) return + recordOpponent(updated) + } + } + + fun toggleFavorite(userId: String) { + synchronized(lock) { + val existing = readAll().firstOrNull { it.userId == userId } ?: return + recordOpponent(existing.copy(favorite = !existing.favorite)) + } + } + + fun mergeOpponent( + userId: String, + name: String, + elo: Int, + avatarBase64: String? = null, + backgroundBase64: String? = null + ): FriendEntry = synchronized(lock) { + val existing = readAll().firstOrNull { it.userId == userId } + val merged = FriendEntry( + userId = userId, + name = name.ifBlank { existing?.name ?: name }, + avatarBase64 = avatarBase64 ?: existing?.avatarBase64, + backgroundBase64 = backgroundBase64 ?: existing?.backgroundBase64, + elo = if (elo > 0) elo else (existing?.elo ?: 1200), + lastPlayedMs = System.currentTimeMillis(), + favorite = existing?.favorite ?: false, + lastSeenMs = existing?.lastSeenMs ?: 0 + ) + recordOpponent(merged) + merged + } + + /** Notes that a friend is nearby now. Written at most once a minute per friend. */ + fun markSeen(userId: String, at: Long) { + synchronized(lock) { + val all = readAll() + val index = all.indexOfFirst { it.userId == userId } + if (index < 0 || at - all[index].lastSeenMs < 60_000) return + // Order is kept: being seen is not a game, so the friend does not jump to the top. + writeAll(all.toMutableList().also { it[index] = all[index].copy(lastSeenMs = at) }) + } + } + + fun recordOpponent(entry: FriendEntry) { + synchronized(lock) { + val current = readAll().filter { it.userId != entry.userId } + writeAll((listOf(entry) + current).take(MAX_FRIENDS)) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/Board.kt b/app/src/main/java/cc/skysparkle/matewave/engine/Board.kt new file mode 100644 index 0000000..b0de7c9 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/Board.kt @@ -0,0 +1,121 @@ +package cc.skysparkle.matewave.engine + +data class Board( + val squares: Array, + val sideToMove: PieceColor, + val whiteKingSideCastle: Boolean, + val whiteQueenSideCastle: Boolean, + val blackKingSideCastle: Boolean, + val blackQueenSideCastle: Boolean, + val enPassantTarget: Int?, + val halfmoveClock: Int, + val fullmoveNumber: Int +) { + fun pieceAt(sq: Int): Piece? = squares[sq] + + fun deepCopySquares(): Array = squares.copyOf() + + fun kingSquare(color: PieceColor): Int { + for (i in 0 until 64) { + val p = squares[i] + if (p != null && p.type == PieceType.KING && p.color == color) return i + } + return -1 + } + + override fun equals(other: Any?): Boolean { + if (this === other) return true + if (other !is Board) return false + return squares.contentEquals(other.squares) && + sideToMove == other.sideToMove && + whiteKingSideCastle == other.whiteKingSideCastle && + whiteQueenSideCastle == other.whiteQueenSideCastle && + blackKingSideCastle == other.blackKingSideCastle && + blackQueenSideCastle == other.blackQueenSideCastle && + enPassantTarget == other.enPassantTarget + } + + override fun hashCode(): Int { + var result = squares.contentHashCode() + result = 31 * result + sideToMove.hashCode() + return result + } + + companion object { + fun startPosition(): Board = fromFen("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1") + + fun fromFen(fen: String): Board { + val parts = fen.trim().split(" ") + val rows = parts[0].split("/") + val squares = arrayOfNulls(64) + for (r in 0 until 8) { + val rank = 7 - r + var file = 0 + for (c in rows[r]) { + if (c.isDigit()) { + file += c.digitToInt() + } else { + val color = if (c.isUpperCase()) PieceColor.WHITE else PieceColor.BLACK + val type = when (c.uppercaseChar()) { + 'P' -> PieceType.PAWN + 'N' -> PieceType.KNIGHT + 'B' -> PieceType.BISHOP + 'R' -> PieceType.ROOK + 'Q' -> PieceType.QUEEN + 'K' -> PieceType.KING + else -> throw IllegalArgumentException("Bad FEN char $c") + } + squares[rank * 8 + file] = Piece(type, color) + file++ + } + } + } + val side = if (parts.getOrElse(1) { "w" } == "w") PieceColor.WHITE else PieceColor.BLACK + val castling = parts.getOrElse(2) { "-" } + val ep = parts.getOrElse(3) { "-" } + val halfmove = parts.getOrElse(4) { "0" }.toIntOrNull() ?: 0 + val fullmove = parts.getOrElse(5) { "1" }.toIntOrNull() ?: 1 + return Board( + squares = squares, + sideToMove = side, + whiteKingSideCastle = castling.contains('K'), + whiteQueenSideCastle = castling.contains('Q'), + blackKingSideCastle = castling.contains('k'), + blackQueenSideCastle = castling.contains('q'), + enPassantTarget = if (ep == "-") null else Move.squareFromName(ep), + halfmoveClock = halfmove, + fullmoveNumber = fullmove + ) + } + } + + fun toFen(): String { + val sb = StringBuilder() + for (r in 7 downTo 0) { + var empty = 0 + for (f in 0 until 8) { + val p = squares[r * 8 + f] + if (p == null) { + empty++ + } else { + if (empty > 0) { sb.append(empty); empty = 0 } + sb.append(p.fenChar()) + } + } + if (empty > 0) sb.append(empty) + if (r != 0) sb.append('/') + } + sb.append(if (sideToMove == PieceColor.WHITE) " w " else " b ") + val castle = buildString { + if (whiteKingSideCastle) append('K') + if (whiteQueenSideCastle) append('Q') + if (blackKingSideCastle) append('k') + if (blackQueenSideCastle) append('q') + } + sb.append(if (castle.isEmpty()) "-" else castle) + sb.append(' ') + sb.append(if (enPassantTarget == null) "-" else Move.squareName(enPassantTarget)) + sb.append(' ').append(halfmoveClock).append(' ').append(fullmoveNumber) + return sb.toString() + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/ChessEngine.kt b/app/src/main/java/cc/skysparkle/matewave/engine/ChessEngine.kt new file mode 100644 index 0000000..3b91e04 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/ChessEngine.kt @@ -0,0 +1,374 @@ +package cc.skysparkle.matewave.engine + +enum class GameStatus { + ONGOING, CHECKMATE, STALEMATE, DRAW_50_MOVES, DRAW_REPETITION, DRAW_MATERIAL, TIMEOUT, + /** A flag fell, but the other side has too little material to ever mate. */ + TIMEOUT_DRAW, + RESIGNATION, DRAW_AGREEMENT +} + +/** + * Rules of chess: legal move generation (castling, en passant, promotion), move + * application and game-status detection (mate, stalemate, 50-move rule, threefold + * repetition, insufficient material). + */ +object ChessEngine { + private fun file(sq: Int) = sq % 8 + private fun rank(sq: Int) = sq / 8 + private fun inBounds(f: Int, r: Int) = f in 0..7 && r in 0..7 + private fun sq(f: Int, r: Int) = r * 8 + f + + private val KNIGHT_DF = intArrayOf(1, 2, 2, 1, -1, -2, -2, -1) + private val KNIGHT_DR = intArrayOf(2, 1, -1, -2, -2, -1, 1, 2) + private val DIAG_DF = intArrayOf(1, 1, -1, -1) + private val DIAG_DR = intArrayOf(1, -1, 1, -1) + private val ORTHO_DF = intArrayOf(1, -1, 0, 0) + private val ORTHO_DR = intArrayOf(0, 0, 1, -1) + private val ALL_DF = intArrayOf(1, -1, 0, 0, 1, 1, -1, -1) + private val ALL_DR = intArrayOf(0, 0, 1, -1, 1, -1, 1, -1) + private val PAWN_DF = intArrayOf(-1, 1) + + private fun pseudoLegalMoves(board: Board): List { + val moves = ArrayList(48) + for (from in 0 until 64) { + val piece = board.squares[from] ?: continue + if (piece.color != board.sideToMove) continue + when (piece.type) { + PieceType.PAWN -> generatePawnMoves(board, from, piece, moves) + PieceType.KNIGHT -> generateKnightMoves(board, from, piece, moves) + PieceType.BISHOP -> generateSlidingMoves(board, from, piece, moves, DIAG_DF, DIAG_DR) + PieceType.ROOK -> generateSlidingMoves(board, from, piece, moves, ORTHO_DF, ORTHO_DR) + PieceType.QUEEN -> generateSlidingMoves(board, from, piece, moves, ALL_DF, ALL_DR) + PieceType.KING -> generateKingMoves(board, from, piece, moves) + } + } + return moves + } + + private fun generatePawnMoves(board: Board, from: Int, piece: Piece, out: MutableList) { + val dir = if (piece.color == PieceColor.WHITE) 1 else -1 + val startRank = if (piece.color == PieceColor.WHITE) 1 else 6 + val promoRank = if (piece.color == PieceColor.WHITE) 7 else 0 + val f = file(from); val r = rank(from) + + val oneR = r + dir + if (inBounds(f, oneR) && board.squares[sq(f, oneR)] == null) { + addPawnMoveOrPromotion(from, sq(f, oneR), oneR, promoRank, out) + val twoR = r + 2 * dir + if (r == startRank && board.squares[sq(f, twoR)] == null) { + out.add(Move(from, sq(f, twoR))) + } + } + for (df in PAWN_DF) { + val nf = f + df; val nr = r + dir + if (!inBounds(nf, nr)) continue + val target = sq(nf, nr) + val targetPiece = board.squares[target] + if (targetPiece != null && targetPiece.color != piece.color) { + addPawnMoveOrPromotion(from, target, nr, promoRank, out) + } else if (target == board.enPassantTarget) { + out.add(Move(from, target, isEnPassant = true)) + } + } + } + + private fun addPawnMoveOrPromotion(from: Int, to: Int, toRank: Int, promoRank: Int, out: MutableList) { + if (toRank == promoRank) { + out.add(Move(from, to, promotion = PieceType.QUEEN)) + out.add(Move(from, to, promotion = PieceType.ROOK)) + out.add(Move(from, to, promotion = PieceType.BISHOP)) + out.add(Move(from, to, promotion = PieceType.KNIGHT)) + } else { + out.add(Move(from, to)) + } + } + + private fun generateKnightMoves(board: Board, from: Int, piece: Piece, out: MutableList) { + val f = file(from); val r = rank(from) + for (i in 0 until 8) { + val nf = f + KNIGHT_DF[i]; val nr = r + KNIGHT_DR[i] + if (!inBounds(nf, nr)) continue + val target = sq(nf, nr) + val targetPiece = board.squares[target] + if (targetPiece == null || targetPiece.color != piece.color) out.add(Move(from, target)) + } + } + + private fun generateSlidingMoves( + board: Board, from: Int, piece: Piece, out: MutableList, dfs: IntArray, drs: IntArray + ) { + val f = file(from); val r = rank(from) + for (i in dfs.indices) { + val df = dfs[i]; val dr = drs[i] + var nf = f + df; var nr = r + dr + while (inBounds(nf, nr)) { + val target = sq(nf, nr) + val targetPiece = board.squares[target] + if (targetPiece == null) { + out.add(Move(from, target)) + } else { + if (targetPiece.color != piece.color) out.add(Move(from, target)) + break + } + nf += df; nr += dr + } + } + } + + private fun generateKingMoves(board: Board, from: Int, piece: Piece, out: MutableList) { + val f = file(from); val r = rank(from) + for (df in -1..1) for (dr in -1..1) { + if (df == 0 && dr == 0) continue + val nf = f + df; val nr = r + dr + if (!inBounds(nf, nr)) continue + val target = sq(nf, nr) + val targetPiece = board.squares[target] + if (targetPiece == null || targetPiece.color != piece.color) out.add(Move(from, target)) + } + val backRank = if (piece.color == PieceColor.WHITE) 0 else 7 + if (from == sq(4, backRank)) { + val ownRook = Piece(PieceType.ROOK, piece.color) + val kingSide = (if (piece.color == PieceColor.WHITE) board.whiteKingSideCastle else board.blackKingSideCastle) && + board.squares[sq(7, backRank)] == ownRook + val queenSide = (if (piece.color == PieceColor.WHITE) board.whiteQueenSideCastle else board.blackQueenSideCastle) && + board.squares[sq(0, backRank)] == ownRook + val enemy = piece.color.opposite() + if (kingSide && + board.squares[sq(5, backRank)] == null && board.squares[sq(6, backRank)] == null && + !isSquareAttacked(board, sq(4, backRank), enemy) && + !isSquareAttacked(board, sq(5, backRank), enemy) && + !isSquareAttacked(board, sq(6, backRank), enemy) + ) { + out.add(Move(from, sq(6, backRank), isCastleKingSide = true)) + } + if (queenSide && + board.squares[sq(3, backRank)] == null && board.squares[sq(2, backRank)] == null && board.squares[sq(1, backRank)] == null && + !isSquareAttacked(board, sq(4, backRank), enemy) && + !isSquareAttacked(board, sq(3, backRank), enemy) && + !isSquareAttacked(board, sq(2, backRank), enemy) + ) { + out.add(Move(from, sq(2, backRank), isCastleQueenSide = true)) + } + } + } + + fun isSquareAttacked(board: Board, target: Int, byColor: PieceColor): Boolean = + attacked(board.squares, target, byColor) + + private fun attacked(squares: Array, target: Int, byColor: PieceColor): Boolean { + val tf = file(target); val tr = rank(target) + val pawnDir = if (byColor == PieceColor.WHITE) -1 else 1 + for (df in PAWN_DF) { + val f = tf + df; val r = tr + pawnDir + if (inBounds(f, r)) { + val p = squares[sq(f, r)] + if (p != null && p.color == byColor && p.type == PieceType.PAWN) return true + } + } + for (i in 0 until 8) { + val f = tf + KNIGHT_DF[i]; val r = tr + KNIGHT_DR[i] + if (inBounds(f, r)) { + val p = squares[sq(f, r)] + if (p != null && p.color == byColor && p.type == PieceType.KNIGHT) return true + } + } + for (i in 0 until 8) { + val f = tf + ALL_DF[i]; val r = tr + ALL_DR[i] + if (inBounds(f, r)) { + val p = squares[sq(f, r)] + if (p != null && p.color == byColor && p.type == PieceType.KING) return true + } + } + for (i in 0 until 4) { + val df = DIAG_DF[i]; val dr = DIAG_DR[i] + var f = tf + df; var r = tr + dr + while (inBounds(f, r)) { + val p = squares[sq(f, r)] + if (p != null) { + if (p.color == byColor && (p.type == PieceType.BISHOP || p.type == PieceType.QUEEN)) return true + break + } + f += df; r += dr + } + } + for (i in 0 until 4) { + val df = ORTHO_DF[i]; val dr = ORTHO_DR[i] + var f = tf + df; var r = tr + dr + while (inBounds(f, r)) { + val p = squares[sq(f, r)] + if (p != null) { + if (p.color == byColor && (p.type == PieceType.ROOK || p.type == PieceType.QUEEN)) return true + break + } + f += df; r += dr + } + } + return false + } + + fun isInCheck(board: Board, color: PieceColor): Boolean { + val kingSq = board.kingSquare(color) + if (kingSq == -1) return false + return isSquareAttacked(board, kingSq, color.opposite()) + } + + fun legalMoves(board: Board): List { + val pseudo = pseudoLegalMoves(board) + val side = board.sideToMove + val enemy = side.opposite() + val work = board.squares.copyOf() + val ownKing = board.kingSquare(side) + val result = ArrayList(pseudo.size) + for (m in pseudo) { + val moving = work[m.from] ?: continue + val captured = work[m.to] + + var epIdx = -1 + var epPiece: Piece? = null + if (m.isEnPassant) { + val capturedRank = if (moving.color == PieceColor.WHITE) rank(m.to) - 1 else rank(m.to) + 1 + epIdx = sq(file(m.to), capturedRank) + epPiece = work[epIdx] + work[epIdx] = null + } + work[m.to] = if (m.promotion != null) Piece(m.promotion, moving.color) else moving + work[m.from] = null + + var rookFrom = -1 + var rookTo = -1 + var rook: Piece? = null + if (m.isCastleKingSide) { + val backRank = rank(m.from); rookFrom = sq(7, backRank); rookTo = sq(5, backRank) + } else if (m.isCastleQueenSide) { + val backRank = rank(m.from); rookFrom = sq(0, backRank); rookTo = sq(3, backRank) + } + if (rookFrom >= 0) { + rook = work[rookFrom] + work[rookTo] = rook + work[rookFrom] = null + } + + val kingSq = if (moving.type == PieceType.KING) m.to else ownKing + val safe = kingSq == -1 || !attacked(work, kingSq, enemy) + + if (rookFrom >= 0) { + work[rookFrom] = rook + work[rookTo] = null + } + work[m.from] = moving + work[m.to] = captured + if (epIdx >= 0) work[epIdx] = epPiece + + if (safe) result.add(m) + } + return result + } + + fun legalMovesFrom(board: Board, from: Int): List = legalMoves(board).filter { it.from == from } + + fun applyMove(board: Board, move: Move): Board { + val squares = board.deepCopySquares() + val moving = squares[move.from] ?: return board + val isPawn = moving.type == PieceType.PAWN + val isCapture = squares[move.to] != null + + if (move.isEnPassant) { + val capturedRank = if (moving.color == PieceColor.WHITE) rank(move.to) - 1 else rank(move.to) + 1 + squares[sq(file(move.to), capturedRank)] = null + } + + squares[move.to] = if (move.promotion != null) Piece(move.promotion, moving.color) else moving + squares[move.from] = null + + if (move.isCastleKingSide) { + val backRank = rank(move.from) + squares[sq(5, backRank)] = squares[sq(7, backRank)] + squares[sq(7, backRank)] = null + } + if (move.isCastleQueenSide) { + val backRank = rank(move.from) + squares[sq(3, backRank)] = squares[sq(0, backRank)] + squares[sq(0, backRank)] = null + } + + var wk = board.whiteKingSideCastle + var wq = board.whiteQueenSideCastle + var bk = board.blackKingSideCastle + var bq = board.blackQueenSideCastle + if (moving.type == PieceType.KING) { + if (moving.color == PieceColor.WHITE) { wk = false; wq = false } else { bk = false; bq = false } + } + if (move.from == sq(0, 0) || move.to == sq(0, 0)) wq = false + if (move.from == sq(7, 0) || move.to == sq(7, 0)) wk = false + if (move.from == sq(0, 7) || move.to == sq(0, 7)) bq = false + if (move.from == sq(7, 7) || move.to == sq(7, 7)) bk = false + + val newEnPassant = if (isPawn && kotlin.math.abs(rank(move.to) - rank(move.from)) == 2) { + sq(file(move.from), (rank(move.from) + rank(move.to)) / 2) + } else null + + val newHalfmove = if (isPawn || isCapture) 0 else board.halfmoveClock + 1 + val newFullmove = if (board.sideToMove == PieceColor.BLACK) board.fullmoveNumber + 1 else board.fullmoveNumber + + return Board( + squares = squares, + sideToMove = board.sideToMove.opposite(), + whiteKingSideCastle = wk, + whiteQueenSideCastle = wq, + blackKingSideCastle = bk, + blackQueenSideCastle = bq, + enPassantTarget = newEnPassant, + halfmoveClock = newHalfmove, + fullmoveNumber = newFullmove + ) + } + + fun gameStatus(board: Board, positionHistory: List = emptyList()): GameStatus { + val moves = legalMoves(board) + if (moves.isEmpty()) { + return if (isInCheck(board, board.sideToMove)) GameStatus.CHECKMATE else GameStatus.STALEMATE + } + if (board.halfmoveClock >= 100) return GameStatus.DRAW_50_MOVES + val key = Notation.positionKey(board) + if (positionHistory.count { it == key } >= 3) return GameStatus.DRAW_REPETITION + if (isDeadPosition(board)) return GameStatus.DRAW_MATERIAL + return GameStatus.ONGOING + } + + /** + * Neither side can ever mate: kings alone, a single minor piece, or only bishops that all + * stand on squares of one colour. + */ + fun isDeadPosition(board: Board): Boolean { + val minors = ArrayList(4) + for (i in 0 until 64) { + val p = board.squares[i] ?: continue + when (p.type) { + PieceType.KING -> Unit + PieceType.BISHOP, PieceType.KNIGHT -> minors.add(i) + else -> return false + } + } + if (minors.size <= 1) return true + if (minors.any { board.squares[it]?.type != PieceType.BISHOP }) return false + val shade = (file(minors[0]) + rank(minors[0])) % 2 + return minors.all { (file(it) + rank(it)) % 2 == shade } + } + + /** + * Whether [color] has enough material to mate at all. A player whose flag falls loses only if + * the opponent could still mate; otherwise the game is drawn. + */ + fun canMate(board: Board, color: PieceColor): Boolean { + var minors = 0 + for (p in board.squares) { + if (p == null || p.color != color) continue + when (p.type) { + PieceType.KING -> Unit + PieceType.BISHOP, PieceType.KNIGHT -> minors++ + else -> return true + } + } + return minors >= 2 + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/Material.kt b/app/src/main/java/cc/skysparkle/matewave/engine/Material.kt new file mode 100644 index 0000000..6285bdf --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/Material.kt @@ -0,0 +1,66 @@ +package cc.skysparkle.matewave.engine + +data class MaterialBalance( + val capturedByWhite: List, + val capturedByBlack: List, + val advantage: Int +) + +/** Captured pieces and material balance, shown next to the board. */ +object Material { + fun points(type: PieceType): Int = when (type) { + PieceType.PAWN -> 1 + PieceType.KNIGHT -> 3 + PieceType.BISHOP -> 3 + PieceType.ROOK -> 5 + PieceType.QUEEN -> 9 + PieceType.KING -> 0 + } + + private fun initialCount(type: PieceType): Int = when (type) { + PieceType.PAWN -> 8 + PieceType.KNIGHT, PieceType.BISHOP, PieceType.ROOK -> 2 + PieceType.QUEEN, PieceType.KING -> 1 + } + + private val DISPLAY_ORDER = listOf( + PieceType.PAWN, PieceType.KNIGHT, PieceType.BISHOP, PieceType.ROOK, PieceType.QUEEN + ) + + fun balance(board: Board): MaterialBalance { + val white = IntArray(PieceType.values().size) + val black = IntArray(PieceType.values().size) + var whitePoints = 0 + var blackPoints = 0 + for (piece in board.squares) { + if (piece == null) continue + if (piece.color == PieceColor.WHITE) { + white[piece.type.ordinal]++ + whitePoints += points(piece.type) + } else { + black[piece.type.ordinal]++ + blackPoints += points(piece.type) + } + } + return MaterialBalance( + capturedByWhite = missing(black), + capturedByBlack = missing(white), + advantage = whitePoints - blackPoints + ) + } + + private fun missing(counts: IntArray): List { + val promoted = DISPLAY_ORDER.filter { it != PieceType.PAWN } + .sumOf { maxOf(0, counts[it.ordinal] - initialCount(it)) } + val result = ArrayList() + for (type in DISPLAY_ORDER) { + val gone = if (type == PieceType.PAWN) { + initialCount(type) - counts[type.ordinal] - promoted + } else { + initialCount(type) - counts[type.ordinal] + } + repeat(maxOf(0, gone)) { result.add(type) } + } + return result + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/Move.kt b/app/src/main/java/cc/skysparkle/matewave/engine/Move.kt new file mode 100644 index 0000000..f3b4e2d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/Move.kt @@ -0,0 +1,44 @@ +package cc.skysparkle.matewave.engine + +data class Move( + val from: Int, + val to: Int, + val promotion: PieceType? = null, + val isCastleKingSide: Boolean = false, + val isCastleQueenSide: Boolean = false, + val isEnPassant: Boolean = false +) { + fun toUci(): String { + val promo = promotion?.symbol?.lowercaseChar()?.toString() ?: "" + return squareName(from) + squareName(to) + promo + } + + companion object { + fun squareName(sq: Int): String { + val file = sq % 8 + val rank = sq / 8 + return "${'a' + file}${rank + 1}" + } + + fun squareFromName(name: String): Int { + val file = name[0] - 'a' + val rank = name[1] - '1' + return rank * 8 + file + } + + fun fromUci(uci: String): Move { + val from = squareFromName(uci.substring(0, 2)) + val to = squareFromName(uci.substring(2, 4)) + val promo = if (uci.length > 4) { + when (uci[4].lowercaseChar()) { + 'q' -> PieceType.QUEEN + 'r' -> PieceType.ROOK + 'b' -> PieceType.BISHOP + 'n' -> PieceType.KNIGHT + else -> null + } + } else null + return Move(from, to, promo) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/Notation.kt b/app/src/main/java/cc/skysparkle/matewave/engine/Notation.kt new file mode 100644 index 0000000..900925d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/Notation.kt @@ -0,0 +1,96 @@ +package cc.skysparkle.matewave.engine + +/** + * Standard Algebraic Notation. SAN produced here matches Lichess notation without check marks + * (e.g. "Nbd7", "exd6", "e8=Q", "O-O"), which is the key format of the opening data. + */ +object Notation { + + fun isCastle(board: Board, move: Move): Boolean { + if (move.isCastleKingSide || move.isCastleQueenSide) return true + val piece = board.squares[move.from] ?: return false + return piece.type == PieceType.KING && kotlin.math.abs(move.to % 8 - move.from % 8) == 2 + } + + fun toSan( + board: Board, + move: Move, + legal: List = ChessEngine.legalMoves(board), + withCheck: Boolean = false + ): String { + val piece = board.squares[move.from] ?: return move.toUci() + val base = if (isCastle(board, move)) { + if (move.to % 8 > move.from % 8) "O-O" else "O-O-O" + } else { + val capture = board.squares[move.to] != null || move.isEnPassant + val dest = Move.squareName(move.to) + buildString { + if (piece.type == PieceType.PAWN) { + if (capture) append('a' + move.from % 8).append('x') + append(dest) + move.promotion?.let { append('=').append(it.symbol) } + } else { + append(piece.type.symbol) + val rivals = legal.filter { + it.to == move.to && it.from != move.from && + board.squares[it.from]?.type == piece.type + } + if (rivals.isNotEmpty()) { + val sameFile = rivals.any { it.from % 8 == move.from % 8 } + val sameRank = rivals.any { it.from / 8 == move.from / 8 } + when { + !sameFile -> append('a' + move.from % 8) + !sameRank -> append('1' + move.from / 8) + else -> append(Move.squareName(move.from)) + } + } + if (capture) append('x') + append(dest) + } + } + } + if (!withCheck) return base + val after = ChessEngine.applyMove(board, move) + if (!ChessEngine.isInCheck(after, after.sideToMove)) return base + return base + if (ChessEngine.legalMoves(after).isEmpty()) "#" else "+" + } + + /** Strips check marks, annotations and "=" so SAN from any source compares equal. */ + fun normalizeSan(san: String): String = + san.trim() + .replace("0-0-0", "O-O-O").replace("0-0", "O-O") + .trimEnd('+', '#', '!', '?') + .replace("=", "") + .trim() + + fun fromSan(board: Board, san: String, legal: List = ChessEngine.legalMoves(board)): Move? { + val wanted = normalizeSan(san) + if (wanted.isEmpty()) return null + legal.firstOrNull { normalizeSan(toSan(board, it, legal)) == wanted }?.let { return it } + + // Over-disambiguated or loosely written SAN, e.g. "Ngf3" or "e8Q". + val m = Regex("^([KQRBN])?([a-h])?([1-8])?x?([a-h][1-8])([QRBN])?$").find(wanted) ?: return null + val type = when (m.groupValues[1]) { + "K" -> PieceType.KING; "Q" -> PieceType.QUEEN; "R" -> PieceType.ROOK + "B" -> PieceType.BISHOP; "N" -> PieceType.KNIGHT; else -> PieceType.PAWN + } + val fromFile = m.groupValues[2].firstOrNull()?.let { it - 'a' } + val fromRank = m.groupValues[3].firstOrNull()?.let { it - '1' } + val to = Move.squareFromName(m.groupValues[4]) + val promo = when (m.groupValues[5]) { + "Q" -> PieceType.QUEEN; "R" -> PieceType.ROOK; "B" -> PieceType.BISHOP; "N" -> PieceType.KNIGHT + else -> null + } + return legal.filter { + it.to == to && board.squares[it.from]?.type == type && it.promotion == promo && + (fromFile == null || it.from % 8 == fromFile) && + (fromRank == null || it.from / 8 == fromRank) + }.singleOrNull() + } + + /** Position part of a FEN without move counters, used to compare positions. */ + fun positionKey(board: Board): String = + board.toFen().substringBeforeLast(' ').substringBeforeLast(' ') + + fun isStandardStart(board: Board): Boolean = positionKey(board) == positionKey(Board.startPosition()) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/engine/Piece.kt b/app/src/main/java/cc/skysparkle/matewave/engine/Piece.kt new file mode 100644 index 0000000..6980f43 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/engine/Piece.kt @@ -0,0 +1,53 @@ +package cc.skysparkle.matewave.engine + +enum class PieceColor { WHITE, BLACK } + +enum class PieceType(val symbol: Char) { + PAWN('P'), KNIGHT('N'), BISHOP('B'), ROOK('R'), QUEEN('Q'), KING('K') +} + +data class Piece(val type: PieceType, val color: PieceColor) { + fun drawableRes(): Int = when (color) { + PieceColor.WHITE -> when (type) { + PieceType.PAWN -> cc.skysparkle.matewave.R.drawable.piece_white_pawn + PieceType.KNIGHT -> cc.skysparkle.matewave.R.drawable.piece_white_knight + PieceType.BISHOP -> cc.skysparkle.matewave.R.drawable.piece_white_bishop + PieceType.ROOK -> cc.skysparkle.matewave.R.drawable.piece_white_rook + PieceType.QUEEN -> cc.skysparkle.matewave.R.drawable.piece_white_queen + PieceType.KING -> cc.skysparkle.matewave.R.drawable.piece_white_king + } + PieceColor.BLACK -> when (type) { + PieceType.PAWN -> cc.skysparkle.matewave.R.drawable.piece_black_pawn + PieceType.KNIGHT -> cc.skysparkle.matewave.R.drawable.piece_black_knight + PieceType.BISHOP -> cc.skysparkle.matewave.R.drawable.piece_black_bishop + PieceType.ROOK -> cc.skysparkle.matewave.R.drawable.piece_black_rook + PieceType.QUEEN -> cc.skysparkle.matewave.R.drawable.piece_black_queen + PieceType.KING -> cc.skysparkle.matewave.R.drawable.piece_black_king + } + } + + fun unicode(): String = when (color) { + PieceColor.WHITE -> when (type) { + PieceType.PAWN -> "\u2659" + PieceType.KNIGHT -> "\u2658" + PieceType.BISHOP -> "\u2657" + PieceType.ROOK -> "\u2656" + PieceType.QUEEN -> "\u2655" + PieceType.KING -> "\u2654" + } + PieceColor.BLACK -> when (type) { + PieceType.PAWN -> "\u265F" + PieceType.KNIGHT -> "\u265E" + PieceType.BISHOP -> "\u265D" + PieceType.ROOK -> "\u265C" + PieceType.QUEEN -> "\u265B" + PieceType.KING -> "\u265A" + } + } + + fun fenChar(): Char = + if (color == PieceColor.WHITE) type.symbol else type.symbol.lowercaseChar() +} + +fun PieceColor.opposite(): PieceColor = + if (this == PieceColor.WHITE) PieceColor.BLACK else PieceColor.WHITE diff --git a/app/src/main/java/cc/skysparkle/matewave/network/AppPermissions.kt b/app/src/main/java/cc/skysparkle/matewave/network/AppPermissions.kt new file mode 100644 index 0000000..578ed0b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/AppPermissions.kt @@ -0,0 +1,24 @@ +package cc.skysparkle.matewave.network + +import android.Manifest +import android.content.Context +import android.content.pm.PackageManager +import android.os.Build +import androidx.core.content.ContextCompat + +object AppPermissions { + /** Runtime permissions for Bluetooth play: scan, advertise and connect (location before Android 12). */ + val nearby: List = + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + listOf( + Manifest.permission.BLUETOOTH_CONNECT, + Manifest.permission.BLUETOOTH_SCAN, + Manifest.permission.BLUETOOTH_ADVERTISE + ) + } else { + listOf(Manifest.permission.ACCESS_FINE_LOCATION) + } + + fun allGranted(context: Context, permissions: List): Boolean = + permissions.all { ContextCompat.checkSelfPermission(context, it) == PackageManager.PERMISSION_GRANTED } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/BatteryOptimization.kt b/app/src/main/java/cc/skysparkle/matewave/network/BatteryOptimization.kt new file mode 100644 index 0000000..35c21ef --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/BatteryOptimization.kt @@ -0,0 +1,30 @@ +package cc.skysparkle.matewave.network + +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.os.PowerManager +import android.provider.Settings + +object BatteryOptimization { + fun isIgnoring(context: Context): Boolean { + val power = context.getSystemService(Context.POWER_SERVICE) as? PowerManager ?: return true + return runCatching { power.isIgnoringBatteryOptimizations(context.packageName) } + .getOrDefault(true) + } + + fun openSettings(context: Context) { + val intents = listOf( + Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) + .setData(Uri.parse("package:${context.packageName}")), + Intent(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS) + ) + for (intent in intents) { + val ok = runCatching { + context.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) + }.isSuccess + if (ok) return + } + NetworkLog.log("SYS", "Could not open battery settings") + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/BleTransport.kt b/app/src/main/java/cc/skysparkle/matewave/network/BleTransport.kt new file mode 100644 index 0000000..0ef7ce0 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/BleTransport.kt @@ -0,0 +1,1243 @@ +package cc.skysparkle.matewave.network + +import android.annotation.SuppressLint +import android.bluetooth.BluetoothAdapter +import android.bluetooth.BluetoothDevice +import android.bluetooth.BluetoothGatt +import android.bluetooth.BluetoothGattCallback +import android.bluetooth.BluetoothGattCharacteristic +import android.bluetooth.BluetoothGattDescriptor +import android.bluetooth.BluetoothGattServer +import android.bluetooth.BluetoothGattServerCallback +import android.bluetooth.BluetoothGattService +import android.bluetooth.BluetoothManager +import android.bluetooth.BluetoothProfile +import android.bluetooth.le.AdvertiseCallback +import android.bluetooth.le.AdvertiseData +import android.bluetooth.le.AdvertiseSettings +import android.bluetooth.le.ScanCallback +import android.bluetooth.le.ScanFilter +import android.bluetooth.le.ScanResult +import android.bluetooth.le.ScanSettings +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.content.IntentFilter +import android.os.ParcelUuid +import androidx.core.content.ContextCompat +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.channels.Channel +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.launch +import java.util.UUID + +data class NearbyPlayer( + val name: String, + val address: String, + + val fingerprint: String? = null +) + +/** + * Bluetooth LE transport without pairing. The host runs a GATT server and advertises; + * the guest scans and connects as a GATT client. Messages are split into MTU-sized + * chunks with a CRC32 check and ACK/NACK retransmission. Large messages (images) use a + * separate low-priority queue so moves are never stuck behind them. + */ +class BleTransport( + private val context: Context, + private val scope: CoroutineScope +) : ConnectionTransport { + companion object { + val SERVICE_UUID: UUID = UUID.fromString("6b1e7f10-2c3d-4a5b-8e9f-0a1b2c3d4e5f") + + val CHAR_WRITE_UUID: UUID = UUID.fromString("6b1e7f11-2c3d-4a5b-8e9f-0a1b2c3d4e5f") + + val CHAR_NOTIFY_UUID: UUID = UUID.fromString("6b1e7f12-2c3d-4a5b-8e9f-0a1b2c3d4e5f") + + val CCCD_UUID: UUID = UUID.fromString("00002902-0000-1000-8000-00805f9b34fb") + + private const val SAFE_CHUNK = 18 + private const val REQUESTED_MTU = 512 + + private const val MTU_TIMEOUT_MS = 2_000L + + private const val CHUNK_HEADER_SIZE = 6 + private const val CRC_SIZE = 4 + + private const val MAX_CHUNKS = 20_000 + + private const val INCOMPLETE_TTL_MS = 30_000L + + private const val CTRL_TOTAL_MARKER = 0 + private const val CTRL_ACK = 1 + private const val CTRL_NACK = 2 + + private const val ACK_TIMEOUT_MS = 1_500L + + private const val MAX_SEND_ATTEMPTS = 5 + + private const val BULK_THRESHOLD_CHARS = 4_096 + + private const val STALLED_PARTIAL_MS = 700L + + private const val SUBSCRIBE_TIMEOUT_MS = 8_000L + + private const val NEARBY_TTL_MS = 15_000L + + private const val NOTIFY_TIMEOUT_MS = 2_000L + + private const val FINGERPRINT_BYTES = 6 + + private const val NAME_BYTES_LIMIT = 6 + + const val MAX_MESSAGE_BYTES = 1_000_000 + + fun fingerprintOf(publicKeyOrId: String): String = + java.security.MessageDigest.getInstance("SHA-256") + .digest(publicKeyOrId.toByteArray(Charsets.UTF_8)) + .take(FINGERPRINT_BYTES).joinToString("") { "%02x".format(it) } + } + + override val type = TransportType.BLUETOOTH + + private val _connectionState = MutableStateFlow(ConnectionState.DISCONNECTED) + override val connectionState: StateFlow = _connectionState + + private val manager = context.getSystemService(Context.BLUETOOTH_SERVICE) as? BluetoothManager + private val adapter: BluetoothAdapter? = manager?.adapter + + private val dispatcher = MessageDispatcher() + var lastError: String? = null + private set + + private enum class Role { NONE, PERIPHERAL, CENTRAL } + private var role = Role.NONE + + private var gattServerActive = false + private var advertisingActive = false + + private var shuttingDown = false + + private var gattServer: BluetoothGattServer? = null + private var notifyCharacteristic: BluetoothGattCharacteristic? = null + private var connectedCentral: BluetoothDevice? = null + private var advertiseCallback: AdvertiseCallback? = null + + private var gattClient: BluetoothGatt? = null + private var writeCharacteristic: BluetoothGattCharacteristic? = null + private var scanCallback: ScanCallback? = null + + private var scanGeneration = 0 + private var discoveryCleanupJob: kotlinx.coroutines.Job? = null + + private val incoming = HashMap() + + private val recentlyCompleted = HashMap>() + + @Volatile private var hosting = false + + private var subscribeWatchJob: kotlinx.coroutines.Job? = null + + private var outgoingMessageId = 0 + + private var sendGeneration = 0 + private var partialWatcherStarted = false + + private val pendingAcks = HashMap>>() + + private var mtuSettled = false + + private var notificationsEnabled = false + + @Volatile private var notificationSent: kotlinx.coroutines.CompletableDeferred? = null + + @Volatile private var characteristicWritten: kotlinx.coroutines.CompletableDeferred? = null + + private var connectionGeneration = 0 + + private fun markReady() { + startWriterIfNeeded() + _connectionState.value = ConnectionState.CONNECTED + } + + private var chunkSize = SAFE_CHUNK + + private val outbox = Channel(capacity = Channel.UNLIMITED) + + private val controlOutbox = Channel(capacity = Channel.UNLIMITED) + private var writerStarted = false + + private val bulkOutbox = Channel(capacity = Channel.UNLIMITED) + + override fun addMessageListener(listener: (GameMessage) -> Unit): () -> Unit = + dispatcher.add(listener) + + /** Turning Bluetooth off destroys the GATT server and any advertising: forget them. */ + private val adapterStateReceiver = object : BroadcastReceiver() { + override fun onReceive(c: Context, intent: Intent) { + val state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR) + if (state == BluetoothAdapter.STATE_TURNING_OFF || state == BluetoothAdapter.STATE_OFF) onBluetoothOff() + } + } + + init { + runCatching { + ContextCompat.registerReceiver( + context, adapterStateReceiver, + IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED), + ContextCompat.RECEIVER_NOT_EXPORTED + ) + } + } + + @SuppressLint("MissingPermission") + private fun onBluetoothOff() { + if (!gattServerActive && gattClient == null && advertiseCallback == null) return + stopDiscovery() + advertiseCallback = null + advertisingActive = false + if (hosting || connectedCentral != null || gattClient != null) { + NetworkLog.reason("BLE", DisconnectReason.BLUETOOTH_OFF) + disconnect() + } + try { gattServer?.close() } catch (_: Exception) {} + gattServer = null + notifyCharacteristic = null + gattServerActive = false + } + + @SuppressLint("MissingPermission") + fun startPresence() { + shuttingDown = false + val ad = adapter + if (ad == null || !ad.isEnabled) { + lastError = "Bluetooth is off" + return + } + try { + val serverWasReady = gattServerActive + if (!gattServerActive) { + if (!startGattServer()) { + lastError = "Could not start the Bluetooth service" + return + } + gattServerActive = true + } + + if (serverWasReady && !advertisingActive) startAdvertising() + } catch (e: SecurityException) { + lastError = "No Bluetooth permission" + NetworkLog.reason("BLE", DisconnectReason.PERMISSION_DENIED) + } + } + + @SuppressLint("MissingPermission") + override fun startHosting() { + val ad = adapter + if (ad == null || !ad.isEnabled) { + lastError = "Bluetooth is off" + NetworkLog.reason("BLE", DisconnectReason.BLUETOOTH_OFF) + _connectionState.value = ConnectionState.FAILED + return + } + lastError = null + role = Role.PERIPHERAL + hosting = true + + startPresence() + _connectionState.value = ConnectionState.CONNECTING + } + + @SuppressLint("MissingPermission") + private fun startGattServer(): Boolean { + val server = manager?.openGattServer(context, serverCallback) ?: return false + gattServer = server + + val service = BluetoothGattService(SERVICE_UUID, BluetoothGattService.SERVICE_TYPE_PRIMARY) + + val writeChar = BluetoothGattCharacteristic( + CHAR_WRITE_UUID, + BluetoothGattCharacteristic.PROPERTY_WRITE or BluetoothGattCharacteristic.PROPERTY_WRITE_NO_RESPONSE, + BluetoothGattCharacteristic.PERMISSION_WRITE + ) + val notifyChar = BluetoothGattCharacteristic( + CHAR_NOTIFY_UUID, + BluetoothGattCharacteristic.PROPERTY_NOTIFY, + BluetoothGattCharacteristic.PERMISSION_READ + ).apply { + addDescriptor( + BluetoothGattDescriptor( + CCCD_UUID, + BluetoothGattDescriptor.PERMISSION_READ or BluetoothGattDescriptor.PERMISSION_WRITE + ) + ) + } + service.addCharacteristic(writeChar) + service.addCharacteristic(notifyChar) + notifyCharacteristic = notifyChar + + server.addService(service) + return true + } + + private fun announceAllowed(): Boolean = + hosting || cc.skysparkle.matewave.presence.PresenceSettings(context).announceEnabled + + /** Hiding takes effect at once; showing again waits until the nearby screen starts presence. */ + fun applyAnnounceSetting() { + if (!announceAllowed() && (advertisingActive || advertiseCallback != null)) stopAdvertising() + } + + /** Restarts advertising so nearby players see a changed name. */ + fun republishProfile() { + if (advertisingActive || advertiseCallback != null) startAdvertising() + } + + /** + * Bluetooth presence runs only while the nearby screen is open: once it closes, advertising + * stops unless a game is being hosted or played over Bluetooth. + */ + fun stopPresenceIfIdle() { + if (hosting || role != Role.NONE || connectedCentral != null || gattClient != null) return + stopAdvertising() + } + + @SuppressLint("MissingPermission") + private fun startAdvertising() { + if (!announceAllowed()) return + val advertiser = adapter?.bluetoothLeAdvertiser + if (advertiser == null) { + lastError = "This device does not support Bluetooth advertising" + if (hosting) _connectionState.value = ConnectionState.FAILED + return + } + // One advertisement at a time: a second start would leak the first one. + if (advertiseCallback != null) stopAdvertising() + val settings = AdvertiseSettings.Builder() + + .setAdvertiseMode(AdvertiseSettings.ADVERTISE_MODE_LOW_LATENCY) + .setTxPowerLevel(AdvertiseSettings.ADVERTISE_TX_POWER_HIGH) + .setConnectable(true) + .build() + + val data = AdvertiseData.Builder() + .setIncludeDeviceName(false) + .addServiceUuid(ParcelUuid(SERVICE_UUID)) + .build() + + val scanResponse = AdvertiseData.Builder() + .setIncludeDeviceName(false) + .addServiceData(ParcelUuid(SERVICE_UUID), buildIdentityPayload()) + .build() + + val cb = object : AdvertiseCallback() { + override fun onStartSuccess(settingsInEffect: AdvertiseSettings?) { + advertisingActive = true + } + + override fun onStartFailure(errorCode: Int) { + if (errorCode == AdvertiseCallback.ADVERTISE_FAILED_ALREADY_STARTED) { + advertisingActive = true + return + } + advertisingActive = false + if (advertiseCallback === this) advertiseCallback = null + lastError = "Advertising failed (code $errorCode)" + NetworkLog.log("BLE", "Advertising failed, code $errorCode") + // Without advertising nobody can find a hosted game; plain presence just goes quiet. + if (hosting && connectedCentral == null) _connectionState.value = ConnectionState.FAILED + } + } + advertiseCallback = cb + try { + advertiser.startAdvertising(settings, data, scanResponse, cb) + } catch (e: Exception) { + advertiseCallback = null + lastError = "Advertising failed: ${e.message}" + if (hosting) _connectionState.value = ConnectionState.FAILED + } + } + + private fun buildIdentityPayload(): ByteArray { + val profile = cc.skysparkle.matewave.data.ProfileStore.get() + + val material = cc.skysparkle.matewave.security.DeviceKeys.publicKey(context) + ?: profile.userId + val digest = java.security.MessageDigest.getInstance("SHA-256") + .digest(material.toByteArray(Charsets.UTF_8)) + + var nameBytes = ByteArray(0) + for (ch in profile.name) { + val candidate = (String(nameBytes, Charsets.UTF_8) + ch).toByteArray(Charsets.UTF_8) + if (candidate.size > NAME_BYTES_LIMIT) break + nameBytes = candidate + } + return digest.copyOfRange(0, FINGERPRINT_BYTES) + nameBytes + } + + private fun parseIdentityPayload(data: ByteArray?): Pair { + if (data == null || data.size < FINGERPRINT_BYTES) return null to null + val fingerprint = data.take(FINGERPRINT_BYTES).joinToString("") { "%02x".format(it) } + val name = if (data.size > FINGERPRINT_BYTES) { + String(data, FINGERPRINT_BYTES, data.size - FINGERPRINT_BYTES, Charsets.UTF_8) + .trim().ifBlank { null } + } else null + return fingerprint to name + } + + private val serverCallback = object : BluetoothGattServerCallback() { + @SuppressLint("MissingPermission") + override fun onServiceAdded(status: Int, service: BluetoothGattService?) { + if (status != BluetoothGatt.GATT_SUCCESS) { + lastError = "Could not start the Bluetooth service (code $status)" + NetworkLog.log("BLE", "Service not added, code $status") + gattServerActive = false + return + } + if (!advertisingActive && !shuttingDown) startAdvertising() + } + + @SuppressLint("MissingPermission") + override fun onConnectionStateChange(device: BluetoothDevice, status: Int, newState: Int) { + if (newState == BluetoothProfile.STATE_CONNECTED) { + if (!hosting) { + NetworkLog.log("BLE", "Incoming connection rejected: no game is being hosted") + try { gattServer?.cancelConnection(device) } catch (_: Exception) {} + return + } + + if (role == Role.CENTRAL || + (connectedCentral != null && connectedCentral?.address != device.address) + ) { + NetworkLog.log("BLE", "Second connection rejected: channel is busy") + try { gattServer?.cancelConnection(device) } catch (_: Exception) {} + return + } + connectedCentral = device + role = Role.PERIPHERAL + // A new peer starts at the default MTU until it negotiates a larger one. + chunkSize = SAFE_CHUNK + startWriterIfNeeded() + + _connectionState.value = ConnectionState.CONNECTING + stopAdvertising() + advertisingActive = false + + subscribeWatchJob?.cancel() + subscribeWatchJob = scope.launch { + kotlinx.coroutines.delay(SUBSCRIBE_TIMEOUT_MS) + if (!notificationsEnabled && connectedCentral?.address == device.address) { + NetworkLog.log("BLE", "Client did not enable notifications, disconnected") + dropPeripheralPeer(device) + } + } + } else if (newState == BluetoothProfile.STATE_DISCONNECTED) { + if (connectedCentral?.address != device.address) return + resetPeripheralSession() + } + } + + @SuppressLint("MissingPermission") + override fun onDescriptorWriteRequest( + device: BluetoothDevice, requestId: Int, descriptor: BluetoothGattDescriptor, + preparedWrite: Boolean, responseNeeded: Boolean, offset: Int, value: ByteArray + ) { + if (descriptor.uuid == CCCD_UUID) { + @Suppress("DEPRECATION") + descriptor.value = value + if (responseNeeded) { + gattServer?.sendResponse(device, requestId, BluetoothGatt.GATT_SUCCESS, 0, null) + } + + val enabled = value.contentEquals( + BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE + ) || value.contentEquals( + BluetoothGattDescriptor.ENABLE_INDICATION_VALUE + ) + if (device.address != connectedCentral?.address) return + notificationsEnabled = enabled + if (enabled) { + subscribeWatchJob?.cancel() + subscribeWatchJob = null + _connectionState.value = ConnectionState.CONNECTED + } else { + NetworkLog.log("BLE", "Opponent disabled notifications") + dropPeripheralPeer(device) + } + return + } + if (responseNeeded) { + gattServer?.sendResponse( + device, requestId, BluetoothGatt.GATT_REQUEST_NOT_SUPPORTED, 0, null + ) + } + } + + @SuppressLint("MissingPermission") + override fun onCharacteristicWriteRequest( + device: BluetoothDevice, requestId: Int, characteristic: BluetoothGattCharacteristic, + preparedWrite: Boolean, responseNeeded: Boolean, offset: Int, value: ByteArray + ) { + if (characteristic.uuid == CHAR_WRITE_UUID && device.address == connectedCentral?.address) { + appendInbound(value) + } + if (responseNeeded) { + gattServer?.sendResponse(device, requestId, BluetoothGatt.GATT_SUCCESS, 0, null) + } + } + + override fun onNotificationSent(device: BluetoothDevice, status: Int) { + if (connectedCentral?.address != device.address) return + notificationSent?.complete(status == BluetoothGatt.GATT_SUCCESS) + } + + override fun onMtuChanged(device: BluetoothDevice, mtu: Int) { + chunkSize = (mtu - 3).coerceAtLeast(SAFE_CHUNK) + } + } + + @SuppressLint("MissingPermission") + private fun dropPeripheralPeer(device: BluetoothDevice?) { + try { device?.let { gattServer?.cancelConnection(it) } } catch (_: Exception) {} + resetPeripheralSession() + } + + private fun resetPeripheralSession() { + subscribeWatchJob?.cancel() + subscribeWatchJob = null + connectedCentral = null + notificationsEnabled = false + hosting = false + if (role == Role.PERIPHERAL) role = Role.NONE + sendGeneration += 1 + synchronized(pendingAcks) { + pendingAcks.values.forEach { it.complete(emptySet()) } + pendingAcks.clear() + } + synchronized(nackAccumulator) { nackAccumulator.clear() } + synchronized(incoming) { incoming.clear() } + synchronized(recentlyCompleted) { recentlyCompleted.clear() } + while (outbox.tryReceive().isSuccess) { } + while (bulkOutbox.tryReceive().isSuccess) { } + while (controlOutbox.tryReceive().isSuccess) { } + _connectionState.value = ConnectionState.DISCONNECTED + + // The game is over: stop announcing it. The nearby screen starts presence again when opened. + stopAdvertising() + } + + @SuppressLint("MissingPermission") + fun discoverNearby(onFound: (List) -> Unit) { + val scanner = adapter?.bluetoothLeScanner ?: return + stopDiscovery() + scanGeneration += 1 + val myGeneration = scanGeneration + val found = LinkedHashMap() + + val lastSeen = HashMap() + + val filter = ScanFilter.Builder().setServiceUuid(ParcelUuid(SERVICE_UUID)).build() + val settings = ScanSettings.Builder() + .setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY) + + .setCallbackType(ScanSettings.CALLBACK_TYPE_ALL_MATCHES) + .setMatchMode(ScanSettings.MATCH_MODE_AGGRESSIVE) + .build() + + val cb = object : ScanCallback() { + override fun onScanResult(callbackType: Int, result: ScanResult) { + if (myGeneration != scanGeneration) return + val device = result.device ?: return + + val payload = result.scanRecord?.getServiceData(ParcelUuid(SERVICE_UUID)) + val (fingerprint, advertisedName) = parseIdentityPayload(payload) + + val bondedName = try { device.name } catch (e: SecurityException) { null } + val player = NearbyPlayer( + name = advertisedName ?: bondedName + ?: context.getString(cc.skysparkle.matewave.R.string.nearby_player_default), + address = device.address, + fingerprint = fingerprint + ) + val now = System.currentTimeMillis() + val previous = found.put(player.address, player) + lastSeen[player.address] = now + + val expired = lastSeen.filterValues { now - it > NEARBY_TTL_MS }.keys + expired.forEach { found.remove(it); lastSeen.remove(it) } + + if (previous == null || previous.name != player.name || expired.isNotEmpty()) { + val snapshot = found.values.toList() + scope.launch(Dispatchers.Main) { onFound(snapshot) } + } + } + + override fun onScanFailed(errorCode: Int) { + if (myGeneration != scanGeneration) return + lastError = "Nearby scan failed to start (code $errorCode)" + } + } + scanCallback = cb + try { + scanner.startScan(listOf(filter), settings, cb) + } catch (e: SecurityException) { + lastError = "No permission to scan for devices" + } + + // Scan results arrive on the main thread, so the expiry check runs there too. + discoveryCleanupJob = scope.launch(Dispatchers.Main) { + while (true) { + kotlinx.coroutines.delay(NEARBY_TTL_MS / 3) + if (myGeneration != scanGeneration) return@launch + val now = System.currentTimeMillis() + val expired = lastSeen.filterValues { now - it > NEARBY_TTL_MS }.keys.toList() + if (expired.isNotEmpty()) { + expired.forEach { found.remove(it); lastSeen.remove(it) } + onFound(found.values.toList()) + } + } + } + } + + @SuppressLint("MissingPermission") + fun stopDiscovery() { + scanGeneration += 1 + scanCallback?.let { + try { adapter?.bluetoothLeScanner?.stopScan(it) } catch (_: Exception) {} + } + scanCallback = null + discoveryCleanupJob?.cancel() + discoveryCleanupJob = null + } + + @SuppressLint("MissingPermission") + override fun startDiscoveryAndConnect(targetId: String?) { + val ad = adapter + if (ad == null || !ad.isEnabled || targetId.isNullOrBlank()) { + lastError = "Bluetooth is off or no opponent selected" + _connectionState.value = ConnectionState.FAILED + return + } + + if (role == Role.PERIPHERAL && connectedCentral != null) { + lastError = "A connection is already active, close it first" + _connectionState.value = ConnectionState.FAILED + return + } + _connectionState.value = ConnectionState.CONNECTING + lastError = null + stopDiscovery() + // A previous attempt must release its client: Android allows only a few at a time. + gattClient?.let { old -> + try { old.disconnect(); old.close() } catch (_: Exception) {} + } + gattClient = null + try { + val device = ad.getRemoteDevice(targetId) + role = Role.CENTRAL + connectionGeneration += 1 + val myGeneration = connectionGeneration + chunkSize = SAFE_CHUNK + + val gatt = device.connectGatt( + context, false, clientCallback(myGeneration), BluetoothDevice.TRANSPORT_LE + ) + gattClient = gatt + } catch (e: Exception) { + lastError = "Connection failed: ${e.message}" + _connectionState.value = ConnectionState.FAILED + } + } + + private fun clientCallback(generation: Int) = object : BluetoothGattCallback() { + private fun isCurrent() = generation == connectionGeneration + + @SuppressLint("MissingPermission") + override fun onConnectionStateChange(gatt: BluetoothGatt, status: Int, newState: Int) { + if (!isCurrent()) { + try { gatt.close() } catch (_: Exception) {} + return + } + when (newState) { + BluetoothProfile.STATE_CONNECTED -> { + mtuSettled = false + gatt.requestMtu(REQUESTED_MTU) + scope.launch { + kotlinx.coroutines.delay(MTU_TIMEOUT_MS) + + if (generation != connectionGeneration) return@launch + if (!mtuSettled) { + mtuSettled = true + try { gatt.discoverServices() } catch (_: SecurityException) {} + } + } + } + BluetoothProfile.STATE_DISCONNECTED -> { + _connectionState.value = ConnectionState.DISCONNECTED + + closeClient() + } + } + } + + @SuppressLint("MissingPermission") + override fun onMtuChanged(gatt: BluetoothGatt, mtu: Int, status: Int) { + if (!isCurrent()) return + if (mtuSettled) return + mtuSettled = true + + if (status == BluetoothGatt.GATT_SUCCESS) { + chunkSize = (mtu - 3).coerceAtLeast(SAFE_CHUNK) + } + gatt.discoverServices() + } + + @SuppressLint("MissingPermission") + override fun onServicesDiscovered(gatt: BluetoothGatt, status: Int) { + if (!isCurrent()) return + val service = if (status == BluetoothGatt.GATT_SUCCESS) gatt.getService(SERVICE_UUID) else null + if (service == null) { + lastError = "Peer does not expose this app's service" + NetworkLog.reason("BLE", DisconnectReason.SERVICE_NOT_FOUND, "status $status") + _connectionState.value = ConnectionState.FAILED + closeClient() + return + } + writeCharacteristic = service.getCharacteristic(CHAR_WRITE_UUID) + if (writeCharacteristic == null) { + lastError = "Peer does not support move exchange" + NetworkLog.reason("BLE", DisconnectReason.SERVICE_NOT_FOUND, "no write characteristic") + _connectionState.value = ConnectionState.FAILED + closeClient() + return + } + + val notifyChar = service.getCharacteristic(CHAR_NOTIFY_UUID) + if (notifyChar != null) { + gatt.setCharacteristicNotification(notifyChar, true) + val cccd = notifyChar.getDescriptor(CCCD_UUID) + if (cccd != null) { + @Suppress("DEPRECATION") + cccd.value = BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE + @Suppress("DEPRECATION") + gatt.writeDescriptor(cccd) + } + } + + if (notifyChar == null || notifyChar.getDescriptor(CCCD_UUID) == null) { + lastError = "Peer does not support the Bluetooth return channel" + NetworkLog.reason("BLE", DisconnectReason.SERVICE_NOT_FOUND, "no notify characteristic") + _connectionState.value = ConnectionState.FAILED + closeClient() + return + } + + scope.launch { + kotlinx.coroutines.delay(SUBSCRIBE_TIMEOUT_MS) + if (!isCurrent()) return@launch + if (_connectionState.value != ConnectionState.CONNECTED) { + lastError = "Peer did not confirm readiness" + NetworkLog.reason("BLE", DisconnectReason.SUBSCRIBE_FAILED) + _connectionState.value = ConnectionState.FAILED + closeClient() + } + } + } + + override fun onCharacteristicWrite( + gatt: BluetoothGatt, + characteristic: BluetoothGattCharacteristic, + status: Int + ) { + if (!isCurrent()) return + characteristicWritten?.complete(status == BluetoothGatt.GATT_SUCCESS) + } + + override fun onDescriptorWrite(gatt: BluetoothGatt, descriptor: BluetoothGattDescriptor, status: Int) { + if (!isCurrent()) return + if (descriptor.uuid != CCCD_UUID) return + if (status == BluetoothGatt.GATT_SUCCESS) { + markReady() + } else { + lastError = "Could not enable Bluetooth notifications (code $status)" + NetworkLog.reason("BLE", DisconnectReason.SUBSCRIBE_FAILED, "code $status") + _connectionState.value = ConnectionState.FAILED + closeClient() + } + } + + override fun onCharacteristicChanged( + gatt: BluetoothGatt, + characteristic: BluetoothGattCharacteristic, + value: ByteArray + ) { + if (characteristic.uuid == CHAR_NOTIFY_UUID) { + appendInbound(value) + } + } + + @Deprecated("Used only below Android 13; newer versions call the overload with value") + @Suppress("DEPRECATION") + override fun onCharacteristicChanged(gatt: BluetoothGatt, characteristic: BluetoothGattCharacteristic) { + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) return + if (characteristic.uuid == CHAR_NOTIFY_UUID) { + appendInbound(characteristic.value ?: return) + } + } + } + + private fun appendInbound(chunk: ByteArray) { + if (chunk.size < CHUNK_HEADER_SIZE) return + val messageId = ((chunk[0].toInt() and 0xFF) shl 8) or (chunk[1].toInt() and 0xFF) + val index = ((chunk[2].toInt() and 0xFF) shl 8) or (chunk[3].toInt() and 0xFF) + val total = ((chunk[4].toInt() and 0xFF) shl 8) or (chunk[5].toInt() and 0xFF) + + if (total == CTRL_TOTAL_MARKER) { + handleControlFrame(messageId, kind = index, body = chunk.copyOfRange(CHUNK_HEADER_SIZE, chunk.size)) + return + } + + if (total <= 0 || total > MAX_CHUNKS || index >= total) return + + val payload = chunk.copyOfRange(CHUNK_HEADER_SIZE, chunk.size) + var assembled: ByteArray? = null + + synchronized(incoming) { + val now = System.currentTimeMillis() + incoming.entries.removeAll { now - it.value.startedAt > INCOMPLETE_TTL_MS } + + val entry = incoming.getOrPut(messageId) { PartialMessage(total, now) } + if (entry.total != total) { + incoming[messageId] = PartialMessage(total, now).also { it.parts[index] = payload } + return + } + if (entry.receivedBytes + payload.size > MAX_MESSAGE_BYTES) { + incoming.remove(messageId) + NetworkLog.reason("BLE", DisconnectReason.MESSAGE_TOO_LARGE) + return + } + + val previous = entry.parts.put(index, payload) + if (previous == null) entry.receivedBytes += payload.size else NetworkMetrics.duplicateChunk() + entry.lastChunkAt = System.currentTimeMillis() + if (entry.parts.size == total) { + assembled = ByteArray(entry.receivedBytes).also { buf -> + var pos = 0 + for (i in 0 until total) { + val part = entry.parts[i] ?: return@also + System.arraycopy(part, 0, buf, pos, part.size) + pos += part.size + } + } + incoming.remove(messageId) + } + } + + val full = assembled ?: return + if (full.size <= CRC_SIZE) return + val body = full.copyOfRange(0, full.size - CRC_SIZE) + val expected = java.util.zip.CRC32().apply { update(body) }.value + val actual = ((full[full.size - 4].toLong() and 0xFF) shl 24) or + ((full[full.size - 3].toLong() and 0xFF) shl 16) or + ((full[full.size - 2].toLong() and 0xFF) shl 8) or + (full[full.size - 1].toLong() and 0xFF) + if (expected != actual) { + NetworkMetrics.messageCorrupted() + NetworkLog.log("BLE", "Corrupted message, retransmission requested") + sendControlFrame(messageId, CTRL_NACK, (0 until total).toList()) + return + } + + sendControlFrame(messageId, CTRL_ACK, emptyList()) + + val now = System.currentTimeMillis() + val isDuplicate = synchronized(recentlyCompleted) { + recentlyCompleted.entries.removeAll { now - it.value.second > INCOMPLETE_TTL_MS } + val previous = recentlyCompleted[messageId] + if (previous != null && previous.first == expected) { + true + } else { + recentlyCompleted[messageId] = expected to now + false + } + } + if (isDuplicate) { + NetworkLog.log("BLE", "Duplicate of already received message #$messageId skipped") + return + } + + val line = String(body, Charsets.UTF_8) + if (line.isBlank()) return + try { + dispatcher.dispatch(GameMessage.fromJson(line)) + } catch (_: Exception) { + NetworkLog.log("BLE", "Malformed message skipped") + } + } + + private val nackAccumulator = HashMap>() + + private fun handleControlFrame(messageId: Int, kind: Int, body: ByteArray) { + when (kind) { + CTRL_ACK -> { + val waiting = synchronized(pendingAcks) { pendingAcks[messageId] } + synchronized(nackAccumulator) { nackAccumulator.remove(messageId) } + waiting?.complete(emptySet()) + } + CTRL_NACK -> { + if (body.isEmpty()) return + + val more = body[0].toInt() != 0 + val indices = HashSet() + var i = 1 + while (i + 1 < body.size) { + indices.add(((body[i].toInt() and 0xFF) shl 8) or (body[i + 1].toInt() and 0xFF)) + i += 2 + } + val complete: Set? = synchronized(nackAccumulator) { + val acc = nackAccumulator.getOrPut(messageId) { HashSet() } + acc.addAll(indices) + if (more) { + null + } else { + nackAccumulator.remove(messageId) + acc + } + } + if (complete != null) { + val waiting = synchronized(pendingAcks) { pendingAcks[messageId] } + waiting?.complete(complete) + } + } + } + } + + @SuppressLint("MissingPermission") + private fun sendControlFrame(messageId: Int, kind: Int, indices: List) { + val room = ((chunkSize - CHUNK_HEADER_SIZE - 1) / 2).coerceAtLeast(1) + val batches: List> = + if (indices.isEmpty()) listOf(emptyList()) else indices.chunked(room) + batches.forEachIndexed { batchIndex, batch -> + val more = batchIndex < batches.size - 1 + val head = byteArrayOf( + (messageId shr 8).toByte(), messageId.toByte(), + (kind shr 8).toByte(), kind.toByte(), + 0, 0 + ) + val body = ByteArray(1 + batch.size * 2) + body[0] = if (more) 1 else 0 + batch.forEachIndexed { n, value -> + body[1 + n * 2] = (value shr 8).toByte() + body[1 + n * 2 + 1] = value.toByte() + } + + controlOutbox.trySend(head + body) + } + } + + private class PartialMessage(val total: Int, val startedAt: Long) { + val parts = HashMap() + var receivedBytes = 0 + + var lastChunkAt: Long = startedAt + } + + private fun startPartialWatcher() { + if (partialWatcherStarted) return + partialWatcherStarted = true + scope.launch { + while (true) { + kotlinx.coroutines.delay(STALLED_PARTIAL_MS) + val requests = ArrayList>>() + synchronized(incoming) { + val now = System.currentTimeMillis() + for ((messageId, entry) in incoming) { + if (now - entry.lastChunkAt < STALLED_PARTIAL_MS) continue + val missing = (0 until entry.total).filter { it !in entry.parts.keys } + if (missing.isNotEmpty()) requests.add(messageId to missing) + entry.lastChunkAt = now + } + } + for ((messageId, missing) in requests) { + sendControlFrame(messageId, CTRL_NACK, missing) + } + } + } + } + + private fun startWriterIfNeeded() { + if (writerStarted) return + writerStarted = true + startPartialWatcher() + scope.launch(Dispatchers.IO) { + while (true) { + var handled = false + while (true) { + val control = controlOutbox.tryReceive().getOrNull() ?: break + writeRaw(control) + handled = true + } + val payload = outbox.tryReceive().getOrNull() + if (payload != null) { + sendChunked(payload, bulk = false) + handled = true + } else { + val bulkPayload = bulkOutbox.tryReceive().getOrNull() + if (bulkPayload != null) { + sendChunked(bulkPayload, bulk = true) + handled = true + } + } + if (!handled) { + kotlinx.coroutines.selects.select { + controlOutbox.onReceive { writeRaw(it) } + outbox.onReceive { sendChunked(it, bulk = false) } + bulkOutbox.onReceive { sendChunked(it, bulk = true) } + } + } + } + } + } + + @SuppressLint("MissingPermission") + private suspend fun sendChunked(payload: String, bulk: Boolean) { + val body = payload.toByteArray(Charsets.UTF_8) + val crc = java.util.zip.CRC32().apply { update(body) }.value + val framed = body + byteArrayOf( + (crc shr 24).toByte(), (crc shr 16).toByte(), (crc shr 8).toByte(), crc.toByte() + ) + + val usable = (chunkSize - CHUNK_HEADER_SIZE).coerceAtLeast(1) + val total = (framed.size + usable - 1) / usable + if (total > MAX_CHUNKS) { + NetworkLog.reason("BLE", DisconnectReason.MESSAGE_TOO_LARGE, "parts: $total") + return + } + val messageId = nextMessageId() + val myGeneration = sendGeneration + + val chunks = Array(total) { index -> + val from = index * usable + val to = minOf(from + usable, framed.size) + byteArrayOf( + (messageId shr 8).toByte(), messageId.toByte(), + (index shr 8).toByte(), index.toByte(), + (total shr 8).toByte(), total.toByte() + ) + framed.copyOfRange(from, to) + } + + var toSend: List = (0 until total).toList() + + repeat(MAX_SEND_ATTEMPTS) { + val waiter = kotlinx.coroutines.CompletableDeferred>() + synchronized(pendingAcks) { pendingAcks[messageId] = waiter } + + for (index in toSend) { + if (myGeneration != sendGeneration) { + synchronized(pendingAcks) { pendingAcks.remove(messageId) } + return + } + NetworkMetrics.chunkSent() + if (!writeRaw(chunks[index])) { + synchronized(pendingAcks) { pendingAcks.remove(messageId) } + NetworkLog.reason("BLE", DisconnectReason.WRITE_FAILED) + failDelivery(bulk) + return + } + if (bulk) { + while (true) { + val control = controlOutbox.tryReceive().getOrNull() ?: break + writeRaw(control) + } + while (true) { + val urgent = outbox.tryReceive().getOrNull() ?: break + sendChunked(urgent, bulk = false) + if (myGeneration != sendGeneration) { + synchronized(pendingAcks) { pendingAcks.remove(messageId) } + return + } + } + } + } + + val answer = kotlinx.coroutines.withTimeoutOrNull(ACK_TIMEOUT_MS) { + while (!waiter.isCompleted) { + val control = controlOutbox.tryReceive().getOrNull() + if (control != null) writeRaw(control) else kotlinx.coroutines.delay(20) + } + waiter.await() + } + synchronized(pendingAcks) { pendingAcks.remove(messageId) } + if (myGeneration != sendGeneration) return + + when { + answer != null && answer.isEmpty() -> return + + answer != null -> { + toSend = answer.filter { it in 0 until total } + NetworkMetrics.chunkRetried(toSend.size) + } + + else -> { + toSend = (0 until total).toList() + NetworkMetrics.chunkRetried(total) + } + } + if (toSend.isEmpty()) return + } + + NetworkLog.log("BLE", "Message not delivered after $MAX_SEND_ATTEMPTS attempts") + failDelivery(bulk) + } + + private fun failDelivery(bulk: Boolean) { + if (bulk) return + NetworkLog.reason("BLE", DisconnectReason.WRITE_FAILED, "game message not delivered, disconnecting") + disconnect() + } + + @SuppressLint("MissingPermission") + private fun closeClient() { + connectionGeneration += 1 + sendGeneration += 1 + try { gattClient?.disconnect() } catch (_: Exception) {} + try { gattClient?.close() } catch (_: Exception) {} + gattClient = null + writeCharacteristic = null + mtuSettled = false + + if (role == Role.CENTRAL) role = Role.NONE + synchronized(pendingAcks) { + pendingAcks.values.forEach { it.complete(emptySet()) } + pendingAcks.clear() + } + synchronized(nackAccumulator) { nackAccumulator.clear() } + synchronized(incoming) { incoming.clear() } + synchronized(recentlyCompleted) { recentlyCompleted.clear() } + } + + @SuppressLint("MissingPermission") + private suspend fun writeRaw(chunk: ByteArray): Boolean { + return try { + val central = connectedCentral + if (role == Role.PERIPHERAL && central != null) { + val ch = notifyCharacteristic ?: return false + @Suppress("DEPRECATION") + ch.value = chunk + val waiter = kotlinx.coroutines.CompletableDeferred() + notificationSent = waiter + @Suppress("DEPRECATION") + val queued = gattServer?.notifyCharacteristicChanged(central, ch, false) ?: false + if (!queued) { + notificationSent = null + return false + } + + val sent = kotlinx.coroutines.withTimeoutOrNull(NOTIFY_TIMEOUT_MS) { waiter.await() } + notificationSent = null + sent == true + } else { + val ch = writeCharacteristic ?: return false + @Suppress("DEPRECATION") + ch.value = chunk + + ch.writeType = BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT + val waiter = kotlinx.coroutines.CompletableDeferred() + characteristicWritten = waiter + @Suppress("DEPRECATION") + val queued = gattClient?.writeCharacteristic(ch) ?: false + if (!queued) { + characteristicWritten = null + return false + } + val done = kotlinx.coroutines.withTimeoutOrNull(NOTIFY_TIMEOUT_MS) { waiter.await() } + characteristicWritten = null + done == true + } + } catch (e: SecurityException) { + false + } + } + + private fun nextMessageId(): Int { + outgoingMessageId = (outgoingMessageId + 1) and 0xFFFF + return outgoingMessageId + } + + private fun currentMaxMessageBytes(): Int { + val usable = (chunkSize - CHUNK_HEADER_SIZE).coerceAtLeast(1) + return minOf(MAX_MESSAGE_BYTES.toLong(), usable.toLong() * MAX_CHUNKS).toInt() + } + + override fun send(message: GameMessage) { + val json = message.toJson() + + if (json.toByteArray(Charsets.UTF_8).size > currentMaxMessageBytes()) { + NetworkLog.reason( + "BLE", DisconnectReason.MESSAGE_TOO_LARGE, + "${json.length} chars, current limit ${currentMaxMessageBytes()}" + ) + return + } + if (json.length > BULK_THRESHOLD_CHARS) bulkOutbox.trySend(json) else outbox.trySend(json) + } + + @SuppressLint("MissingPermission") + private fun stopAdvertising() { + advertiseCallback?.let { + try { adapter?.bluetoothLeAdvertiser?.stopAdvertising(it) } catch (_: Exception) {} + } + advertiseCallback = null + advertisingActive = false + } + + @SuppressLint("MissingPermission") + override fun disconnect() { + hosting = false + stopAdvertising() + subscribeWatchJob?.cancel() + subscribeWatchJob = null + try { gattClient?.disconnect(); gattClient?.close() } catch (_: Exception) {} + gattClient = null + + connectedCentral?.let { central -> + try { gattServer?.cancelConnection(central) } catch (_: Exception) {} + } + connectedCentral = null + notificationsEnabled = false + writeCharacteristic = null + role = Role.NONE + + sendGeneration += 1 + synchronized(pendingAcks) { + pendingAcks.values.forEach { it.complete(emptySet()) } + pendingAcks.clear() + } + synchronized(nackAccumulator) { nackAccumulator.clear() } + synchronized(incoming) { incoming.clear() } + synchronized(recentlyCompleted) { recentlyCompleted.clear() } + + while (outbox.tryReceive().isSuccess) { } + while (bulkOutbox.tryReceive().isSuccess) { } + + while (controlOutbox.tryReceive().isSuccess) { } + _connectionState.value = ConnectionState.DISCONNECTED + } + + @SuppressLint("MissingPermission") + fun shutdown() { + shuttingDown = true + stopDiscovery() + stopAdvertising() + disconnect() + try { gattServer?.close() } catch (_: Exception) {} + gattServer = null + notifyCharacteristic = null + gattServerActive = false + advertisingActive = false + shuttingDown = false + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/ConnectionTransport.kt b/app/src/main/java/cc/skysparkle/matewave/network/ConnectionTransport.kt new file mode 100644 index 0000000..f598e06 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/ConnectionTransport.kt @@ -0,0 +1,191 @@ +package cc.skysparkle.matewave.network + +import org.json.JSONObject + +enum class TransportType { BLUETOOTH, LAN } + +enum class ConnectionState { DISCONNECTED, CONNECTING, CONNECTED, FAILED } + +/** + * Wire protocol shared by all transports: one JSON object per message. + * Game messages travel inside [SignedMsg] once the handshake is done; only + * [ProfileMsg] and [PingMsg] are sent in the clear. Bump [PROTOCOL_VERSION] on any + * incompatible change: peers with an older version are rejected during the handshake. + */ +sealed class GameMessage { + data class MoveMsg( + val uci: String, + val remainingMillisSelf: Long, + val gameId: String = "", + val ply: Int = 0 + ) : GameMessage() + + data class ResignMsg(val byWhite: Boolean, val gameId: String = "") : GameMessage() + + data class DrawOfferMsg(val accept: Boolean? = null, val gameId: String = "") : GameMessage() + + data class ChatMsg(val text: String? = null, val imageBase64: String? = null, val gameId: String = "") : GameMessage() + + data class ProfileMsg( + + val userId: String, + val name: String, + val avatarBase64: String?, + val backgroundBase64: String?, + val elo: Int, + + val publicKey: String = "", + val signature: String = "", + + val protocolVersion: Int = PROTOCOL_VERSION, + + val ephemeralKey: String = "", + + val initialSeconds: Int = 0, + val incrementSeconds: Int = 0, + + val gameId: String = "" + ) : GameMessage() + + data class TimeoutMsg(val flaggedWhite: Boolean, val gameId: String = "") : GameMessage() + + data class LeaveMsg(val byWhite: Boolean, val gameId: String = "") : GameMessage() + + data class ProfileImagesMsg( + val avatarBase64: String? = null, + val backgroundBase64: String? = null, + val gameId: String = "" + ) : GameMessage() + + data class PingMsg(val reply: Boolean = false, val sessionId: Int = 0) : GameMessage() + + data class SignedMsg(val inner: String, val tag: String, val seq: Int = 0) : GameMessage() + + data class RematchMsg( + val action: String, + val gameId: String = "", + val newGameId: String = "" + ) : GameMessage() + + fun toJson(): String { + val o = JSONObject() + when (this) { + is MoveMsg -> { + o.put("type", "move"); o.put("uci", uci); o.put("t", remainingMillisSelf) + o.put("gameId", gameId); o.put("ply", ply) + } + is ResignMsg -> { o.put("type", "resign"); o.put("white", byWhite); o.put("gameId", gameId) } + is DrawOfferMsg -> { + o.put("type", "draw"); o.put("gameId", gameId) + if (accept != null) o.put("accept", accept) + } + is ChatMsg -> { + o.put("type", "chat"); o.put("gameId", gameId) + if (text != null) o.put("text", text) + if (imageBase64 != null) o.put("image", imageBase64) + } + is LeaveMsg -> { o.put("type", "leave"); o.put("byWhite", byWhite); o.put("gameId", gameId) } + is ProfileImagesMsg -> { + o.put("type", "profile_images"); o.put("gameId", gameId) + avatarBase64?.let { o.put("avatar", it) } + backgroundBase64?.let { o.put("background", it) } + } + is PingMsg -> { o.put("type", "ping"); o.put("reply", reply); o.put("sid", sessionId) } + is TimeoutMsg -> { o.put("type", "timeout"); o.put("white", flaggedWhite); o.put("gameId", gameId) } + is SignedMsg -> { + o.put("type", "signed"); o.put("inner", inner); o.put("tag", tag); o.put("seq", seq) + } + is RematchMsg -> { + o.put("type", "rematch"); o.put("action", action); o.put("gameId", gameId) + if (newGameId.isNotEmpty()) o.put("newGameId", newGameId) + } + is ProfileMsg -> { + o.put("type", "profile") + o.put("userId", userId) + o.put("name", name) + o.put("pv", protocolVersion) + if (initialSeconds > 0) { + o.put("ti", initialSeconds) + o.put("tx", incrementSeconds) + } + if (ephemeralKey.isNotEmpty()) o.put("ek", ephemeralKey) + if (gameId.isNotEmpty()) o.put("gid", gameId) + if (publicKey.isNotEmpty()) o.put("pk", publicKey) + if (signature.isNotEmpty()) o.put("sig", signature) + if (avatarBase64 != null) o.put("avatar", avatarBase64) + if (backgroundBase64 != null) o.put("background", backgroundBase64) + o.put("elo", elo) + } + } + return o.toString() + } + + companion object { + const val PROTOCOL_VERSION = 5 + + fun fromJson(raw: String): GameMessage { + val o = JSONObject(raw) + return when (o.getString("type")) { + "move" -> MoveMsg( + o.getString("uci"), o.optLong("t", 0), + o.optString("gameId", ""), o.optInt("ply", 0) + ) + "resign" -> ResignMsg(o.getBoolean("white"), o.optString("gameId", "")) + "draw" -> DrawOfferMsg( + if (o.has("accept")) o.getBoolean("accept") else null, + o.optString("gameId", "") + ) + "chat" -> ChatMsg( + text = if (o.has("text")) o.getString("text") else null, + imageBase64 = if (o.has("image")) o.getString("image") else null, + gameId = o.optString("gameId", "") + ) + "leave" -> LeaveMsg(o.getBoolean("byWhite"), o.optString("gameId", "")) + "profile_images" -> ProfileImagesMsg( + if (o.has("avatar")) o.getString("avatar") else null, + if (o.has("background")) o.getString("background") else null, + gameId = o.optString("gameId", "") + ) + "ping" -> PingMsg(o.optBoolean("reply", false), o.optInt("sid", 0)) + "timeout" -> TimeoutMsg(o.getBoolean("white"), o.optString("gameId", "")) + "signed" -> SignedMsg(o.getString("inner"), o.getString("tag"), o.optInt("seq", 0)) + "rematch" -> RematchMsg( + o.getString("action"), + o.optString("gameId", ""), + o.optString("newGameId", "") + ) + "profile" -> ProfileMsg( + + userId = o.optString("userId", "").ifBlank { o.getString("name") }, + protocolVersion = o.optInt("pv", 0), + initialSeconds = o.optInt("ti", 0), + incrementSeconds = o.optInt("tx", 0), + ephemeralKey = o.optString("ek", ""), + gameId = o.optString("gid", ""), + publicKey = o.optString("pk", ""), + signature = o.optString("sig", ""), + name = o.getString("name"), + avatarBase64 = if (o.has("avatar")) o.getString("avatar") else null, + backgroundBase64 = if (o.has("background")) o.getString("background") else null, + elo = o.optInt("elo", 1200) + ) + else -> throw IllegalArgumentException("Unknown message type") + } + } + } +} + +/** A single peer-to-peer game connection (Bluetooth LE or LAN). */ +interface ConnectionTransport { + val type: TransportType + val connectionState: kotlinx.coroutines.flow.StateFlow + + fun startHosting() + fun startDiscoveryAndConnect(targetId: String? = null) + + fun send(message: GameMessage) + + fun addMessageListener(listener: (GameMessage) -> Unit): () -> Unit + + fun disconnect() +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/DualHostTransport.kt b/app/src/main/java/cc/skysparkle/matewave/network/DualHostTransport.kt new file mode 100644 index 0000000..832f184 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/DualHostTransport.kt @@ -0,0 +1,102 @@ +package cc.skysparkle.matewave.network + +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.SupervisorJob +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.combine +import kotlinx.coroutines.launch +import java.util.concurrent.CopyOnWriteArrayList + +/** + * Hosts a game on every available transport at once (LAN and, with permission, Bluetooth), so + * a guest can join over whichever channel found the host. The first transport to connect wins; + * hosting on the others is stopped and from then on this behaves exactly like the winner. + */ +class DualHostTransport(transports: List) : ConnectionTransport { + + private val all = transports + private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate) + private val lock = Any() + + @Volatile private var active: ConnectionTransport? = null + private val listeners = CopyOnWriteArrayList<(GameMessage) -> Unit>() + private val unsubscribes = mutableListOf<() -> Unit>() + private var watchJob: Job? = null + + private val _state = MutableStateFlow(ConnectionState.DISCONNECTED) + override val connectionState: StateFlow = _state + + override val type: TransportType get() = active?.type ?: all.first().type + + override fun startHosting() { + synchronized(lock) { + active = null + unsubscribes.forEach { it() } + unsubscribes.clear() + all.forEach { t -> + unsubscribes += t.addMessageListener { message -> + // The first message can arrive before the state change is observed: claim here too. + if (active == null && t.connectionState.value == ConnectionState.CONNECTED) claim(t) + if (active === t) listeners.forEach { it(message) } + } + } + } + _state.value = ConnectionState.CONNECTING + all.forEach { runCatching { it.startHosting() } } + + watchJob?.cancel() + watchJob = scope.launch { + combine(all.map { it.connectionState }) { it.toList() }.collect { states -> + val current = active + if (current == null) { + val index = states.indexOfFirst { it == ConnectionState.CONNECTED } + when { + index >= 0 -> claim(all[index]) + states.all { it == ConnectionState.FAILED } -> _state.value = ConnectionState.FAILED + else -> _state.value = ConnectionState.CONNECTING + } + } else { + _state.value = states[all.indexOf(current)] + } + } + } + } + + private fun claim(winner: ConnectionTransport) { + val losers = synchronized(lock) { + if (active != null) return + active = winner + all.filter { it !== winner } + } + losers.forEach { runCatching { it.disconnect() } } + _state.value = ConnectionState.CONNECTED + } + + override fun startDiscoveryAndConnect(targetId: String?) { + all.first().startDiscoveryAndConnect(targetId) + } + + override fun send(message: GameMessage) { + active?.send(message) + } + + override fun addMessageListener(listener: (GameMessage) -> Unit): () -> Unit { + listeners.add(listener) + return { listeners.remove(listener) } + } + + override fun disconnect() { + watchJob?.cancel() + watchJob = null + synchronized(lock) { + unsubscribes.forEach { it() } + unsubscribes.clear() + active = null + } + all.forEach { runCatching { it.disconnect() } } + _state.value = ConnectionState.DISCONNECTED + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/Heartbeat.kt b/app/src/main/java/cc/skysparkle/matewave/network/Heartbeat.kt new file mode 100644 index 0000000..072af88 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/Heartbeat.kt @@ -0,0 +1,86 @@ +package cc.skysparkle.matewave.network + +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch + +/** Periodic ping that detects a silently dropped connection. */ +class Heartbeat( + private val scope: CoroutineScope, + private val transport: ConnectionTransport +) { + private var job: Job? = null + + private val sessionId = java.util.concurrent.ThreadLocalRandom.current().nextInt(1, Int.MAX_VALUE) + private var unsubscribe: (() -> Unit)? = null + + @Volatile private var lastReplyAt = 0L + @Volatile private var lastTrafficAt = 0L + + fun start() { + if (job != null) return + lastReplyAt = System.currentTimeMillis() + lastTrafficAt = lastReplyAt + + unsubscribe = transport.addMessageListener { msg -> + if (msg is GameMessage.PingMsg) { + if (msg.reply) { + if (msg.sessionId == sessionId) lastReplyAt = System.currentTimeMillis() + } else { + transport.send(GameMessage.PingMsg(reply = true, sessionId = msg.sessionId)) + } + } else { + lastTrafficAt = System.currentTimeMillis() + } + } + + job = scope.launch { + var wasConnected = false + while (true) { + delay(INTERVAL_MS) + val connected = transport.connectionState.value == ConnectionState.CONNECTED + if (!connected) { + wasConnected = false + continue + } + if (!wasConnected) { + val now = System.currentTimeMillis() + lastReplyAt = now + lastTrafficAt = now + wasConnected = true + } + val now = System.currentTimeMillis() + val silence = now - lastReplyAt + + if (silence > TIMEOUT_MS && now - lastTrafficAt > TIMEOUT_MS) { + NetworkLog.reason( + transport.type.name, + DisconnectReason.REMOTE_DISCONNECTED, + "no reply for ${silence / 1000} s" + ) + transport.disconnect() + continue + } + + if (silence > TIMEOUT_MS) { + NetworkLog.log(transport.type.name, "No heartbeat reply for ${silence / 1000} s, but data is flowing") + } + transport.send(GameMessage.PingMsg(reply = false, sessionId = sessionId)) + } + } + } + + fun stop() { + job?.cancel() + job = null + unsubscribe?.invoke() + unsubscribe = null + } + + private companion object { + const val INTERVAL_MS = 5_000L + + const val TIMEOUT_MS = 16_000L + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/LanTransport.kt b/app/src/main/java/cc/skysparkle/matewave/network/LanTransport.kt new file mode 100644 index 0000000..678e7ea --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/LanTransport.kt @@ -0,0 +1,663 @@ +package cc.skysparkle.matewave.network + +import android.content.Context +import android.net.nsd.NsdManager +import android.net.nsd.NsdServiceInfo +import android.net.wifi.WifiManager +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.channels.Channel +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.launch +import java.io.BufferedReader +import java.io.IOException +import java.io.InputStreamReader +import java.io.OutputStream +import java.net.InetSocketAddress +import java.net.NetworkInterface +import java.net.ServerSocket +import java.net.Socket + +data class LanPeer( + val name: String, + val host: String, + val port: Int, + val playerId: String = "", + val displayName: String = "", + val elo: Int = 0, + val fingerprint: String = "", + + val signature: String = "", + /** Raw NSD service name, used to remove the peer when the service is lost. */ + val serviceName: String = "" +) { + val id: String get() = "$host:$port" +} + +/** + * LAN transport: plain TCP sockets carrying newline-delimited JSON, with the game + * announced over NSD (mDNS). The listening socket stays open for discovery, but + * incoming connections are accepted only while the user is hosting a game. + */ +class LanTransport( + private val context: Context, + private val scope: CoroutineScope +) : ConnectionTransport { + companion object { + // Wire identifiers from before the rename; changing them would split old and new installs. + const val SERVICE_TYPE = "_chessapp._tcp." + const val SERVICE_NAME = "ChessApp" + + const val CONNECT_TIMEOUT_MS = 8_000 + + const val MAX_MESSAGE_CHARS = 1_400_000 + + const val ACCEPT_POLL_MS = 1_000 + + const val RESOLVE_RETRY_MS = 400L + + fun presencePayload(playerId: String, name: String, elo: Int): String = + "presence|$playerId|$name|$elo" + } + + override val type = TransportType.LAN + + private val _connectionState = MutableStateFlow(ConnectionState.DISCONNECTED) + override val connectionState: StateFlow = _connectionState + + private val nsdManager: NsdManager? = + context.getSystemService(Context.NSD_SERVICE) as? NsdManager + + private var serverSocket: ServerSocket? = null + private var socket: Socket? = null + + private val socketLock = Any() + + private fun claimSocket(candidate: Socket): Boolean = synchronized(socketLock) { + val existing = socket + if (existing != null && !existing.isClosed) return false + socket = candidate + true + } + private var output: OutputStream? = null + private val dispatcher = MessageDispatcher() + + @Volatile private var hosting = false + + private var registrationListener: NsdManager.RegistrationListener? = null + + private var registeredServiceName: String? = null + + private val ownServiceName: String by lazy { + val fingerprint = cc.skysparkle.matewave.security.DeviceKeys.publicKeyFingerprint(context) + ?: cc.skysparkle.matewave.data.DeviceIdentity.deviceId(context).take(12) + "$SERVICE_NAME-$fingerprint" + } + + fun fingerprintFromServiceName(serviceName: String): String? = + serviceName.substringAfter("$SERVICE_NAME-", "").ifEmpty { null } + private var discoveryListener: NsdManager.DiscoveryListener? = null + + @Volatile private var discoveryGeneration = 0 + + private val resolveQueue = java.util.ArrayDeque>() + private var resolving = false + + var lastError: String? = null + private set + + private val outbox = Channel(capacity = Channel.UNLIMITED) + private var writerStarted = false + + override fun addMessageListener(listener: (GameMessage) -> Unit): () -> Unit = + dispatcher.add(listener) + + private fun announceAllowed(): Boolean = + hosting || cc.skysparkle.matewave.presence.PresenceSettings(context).announceEnabled + + fun applyAnnounceSetting() { + val port = serverSocket?.localPort + when { + !announceAllowed() -> unregisterService() + port != null -> registerService(port) + else -> startPresence() + } + } + + fun republishProfile() { + val port = serverSocket?.localPort ?: return + unregisterService() + if (!announceAllowed()) return + scope.launch(Dispatchers.IO) { + kotlinx.coroutines.delay(400) + registerService(port) + } + } + + private val presenceLock = Any() + private var presenceStarting = false + + fun startPresence() { + synchronized(presenceLock) { + if (serverSocket != null || presenceStarting) return + presenceStarting = true + } + scope.launch(Dispatchers.IO) { + try { + val server = ServerSocket() + server.reuseAddress = true + + server.bind(InetSocketAddress(0)) + + server.soTimeout = ACCEPT_POLL_MS + synchronized(presenceLock) { serverSocket = server; presenceStarting = false } + if (announceAllowed()) registerService(server.localPort) + acceptLoop(server) + } catch (e: IOException) { + synchronized(presenceLock) { presenceStarting = false } + lastError = "Could not open port: ${e.message}" + NetworkLog.reason("LAN", DisconnectReason.PORT_BUSY, e.message) + } + } + } + + private suspend fun acceptLoop(server: ServerSocket) { + while (!server.isClosed) { + try { + val client = server.accept() + if (!hosting) { + try { client.close() } catch (_: IOException) {} + continue + } + + if (socket != null && socket?.isClosed == false) { + try { client.close() } catch (_: IOException) {} + continue + } + client.tcpNoDelay = true + client.keepAlive = true + if (!claimSocket(client)) { + try { client.close() } catch (_: IOException) {} + continue + } + onConnected(client) + } catch (e: java.net.SocketTimeoutException) { + continue + } catch (e: IOException) { + if (server.isClosed) return + NetworkLog.log("LAN", "Accept failed: ${e.message}") + kotlinx.coroutines.delay(500) + } + } + } + + override fun startHosting() { + hosting = true + _connectionState.value = ConnectionState.CONNECTING + lastError = null + + val port = serverSocket?.localPort + if (port != null) registerService(port) else startPresence() + } + + private fun onHostingEnded() { + if (!announceAllowed()) unregisterService() + } + + private fun registerService(port: Int) { + val nsd = nsdManager ?: return + unregisterService() + val info = NsdServiceInfo().apply { + serviceName = ownServiceName + serviceType = SERVICE_TYPE + setPort(port) + + val profile = cc.skysparkle.matewave.data.ProfileStore.get() + runCatching { + val shownName = profile.name.take(40) + setAttribute("id", profile.userId) + setAttribute("name", shownName) + setAttribute("elo", profile.elo.toString()) + setAttribute("fp", cc.skysparkle.matewave.security.DeviceKeys.publicKeyFingerprint(context) ?: "") + + cc.skysparkle.matewave.security.DeviceKeys.sign( + context, presencePayload(profile.userId, shownName, profile.elo) + )?.let { setAttribute("sig", it) } + } + } + val listener = object : NsdManager.RegistrationListener { + override fun onServiceRegistered(info: NsdServiceInfo?) { + registeredServiceName = info?.serviceName + } + override fun onRegistrationFailed(info: NsdServiceInfo?, errorCode: Int) { + lastError = "Network service registration failed (code $errorCode). Connect by address manually." + } + override fun onServiceUnregistered(info: NsdServiceInfo?) {} + override fun onUnregistrationFailed(info: NsdServiceInfo?, errorCode: Int) {} + } + registrationListener = listener + try { + nsd.registerService(info, NsdManager.PROTOCOL_DNS_SD, listener) + } catch (e: Exception) { + lastError = "Service registration: ${e.message}" + } + } + + private fun unregisterService() { + val nsd = nsdManager ?: return + registrationListener?.let { + try { nsd.unregisterService(it) } catch (_: Exception) {} + } + registrationListener = null + registeredServiceName = null + } + + fun discoverPeers(onFound: (List) -> Unit) { + val nsd = nsdManager ?: return + stopDiscovery() + discoveryGeneration += 1 + val myGeneration = discoveryGeneration + val found = LinkedHashMap() + synchronized(resolveQueue) { resolveQueue.clear(); resolving = false } + + val listener = object : NsdManager.DiscoveryListener { + override fun onDiscoveryStarted(serviceType: String?) {} + + override fun onServiceFound(info: NsdServiceInfo) { + if (myGeneration != discoveryGeneration) return + if (info.serviceType?.contains("chessapp") != true) return + + if (isSelf(info.serviceName)) return + + synchronized(resolveQueue) { resolveQueue.addLast(myGeneration to info) } + drainResolveQueue(nsd, found, onFound) + } + + override fun onServiceLost(info: NsdServiceInfo?) { + if (myGeneration != discoveryGeneration) return + val name = info?.serviceName ?: return + // Match the raw service name: LanPeer.name is a cleaned-up display form and never + // matched, so peers who left stayed "online". + val left = synchronized(found) { found.entries.removeAll { it.value.serviceName == name }; found.values.toList() } + scope.launch(Dispatchers.Main) { onFound(left) } + } + + override fun onDiscoveryStopped(serviceType: String?) {} + override fun onStartDiscoveryFailed(serviceType: String?, errorCode: Int) { + lastError = "Network discovery failed (code $errorCode). Enter the address manually." + NetworkLog.log("LAN", "Network discovery failed to start, code $errorCode") + } + override fun onStopDiscoveryFailed(serviceType: String?, errorCode: Int) {} + } + discoveryListener = listener + try { + nsd.discoverServices(SERVICE_TYPE, NsdManager.PROTOCOL_DNS_SD, listener) + } catch (e: Exception) { + lastError = "Network discovery: ${e.message}" + NetworkLog.log("LAN", "Network discovery: ${e.message}") + } + } + + @androidx.annotation.RequiresApi(34) + private fun resolveModern( + nsd: NsdManager, + info: NsdServiceInfo, + myGeneration: Int, + found: LinkedHashMap, + onFound: (List) -> Unit, + finish: () -> Unit + ) { + val executor = java.util.concurrent.Executors.newSingleThreadExecutor() + var done = false + val callback = object : NsdManager.ServiceInfoCallback { + override fun onServiceInfoCallbackRegistrationFailed(errorCode: Int) { + NetworkLog.log("LAN", "Could not get peer address, code $errorCode") + executor.shutdown(); finish() + } + + override fun onServiceUpdated(updated: NsdServiceInfo) { + if (done) return + done = true + + if (myGeneration == discoveryGeneration) { + val host = hostAddressOf(updated) + if (host != null && !isSelfEndpoint(host, updated.port)) { + val peer = peerFrom(updated, host) + val now = synchronized(found) { found[peer.id] = peer; found.values.toList() } + scope.launch(Dispatchers.Main) { onFound(now) } + } + } + try { nsd.unregisterServiceInfoCallback(this) } catch (_: Exception) {} + } + + override fun onServiceLost() { + if (myGeneration != discoveryGeneration) return + val left = synchronized(found) { found.entries.removeAll { it.value.serviceName == info.serviceName }; found.values.toList() } + scope.launch(Dispatchers.Main) { onFound(left) } + } + + override fun onServiceInfoCallbackUnregistered() { + executor.shutdown(); finish() + } + } + try { + nsd.registerServiceInfoCallback(info, executor, callback) + } catch (e: Exception) { + NetworkLog.log("LAN", "Address resolution: ${e.message}") + executor.shutdown(); finish() + } + } + + private fun peerFrom(info: NsdServiceInfo, host: String): LanPeer { + fun attr(key: String): String = runCatching { + info.attributes[key]?.toString(Charsets.UTF_8) ?: "" + }.getOrDefault("") + return LanPeer( + name = displayNameOf(info.serviceName), + host = host, + port = info.port, + playerId = attr("id"), + displayName = attr("name"), + elo = attr("elo").toIntOrNull() ?: 0, + + fingerprint = attr("fp").ifEmpty { fingerprintFromServiceName(info.serviceName ?: "") ?: "" }, + signature = attr("sig"), + serviceName = info.serviceName ?: "" + ) + } + + private fun displayNameOf(serviceName: String?): String { + val raw = serviceName ?: return SERVICE_NAME + return raw.substringBefore("-").ifBlank { SERVICE_NAME } + } + + private fun isSelf(serviceName: String?): Boolean { + if (serviceName == null) return false + registeredServiceName?.let { if (serviceName == it) return true } + + if (serviceName == ownServiceName) return true + + return Regex("^${Regex.escape(ownServiceName)} \\(\\d+\\)$").matches(serviceName) + } + + private fun isSelfEndpoint(host: String, port: Int): Boolean { + val ourPort = serverSocket?.localPort ?: return false + if (port != ourPort) return false + + val ourAddress = localIpAddress() + return ourAddress == null || ourAddress == host + } + + @Suppress("DEPRECATION") + private fun hostAddressOf(info: NsdServiceInfo): String? { + if (android.os.Build.VERSION.SDK_INT >= 34) { + val ipv4 = info.hostAddresses.firstOrNull { it is java.net.Inet4Address } + if (ipv4 != null) return ipv4.hostAddress + return info.hostAddresses.firstOrNull()?.hostAddress + } + return info.host?.hostAddress + } + + private fun drainResolveQueue( + nsd: NsdManager, + found: LinkedHashMap, + onFound: (List) -> Unit + ) { + val nextGeneration: Int + val next: NsdServiceInfo + synchronized(resolveQueue) { + if (resolving) return + val entry = resolveQueue.pollFirst() ?: return + nextGeneration = entry.first + next = entry.second + resolving = true + } + + val finish = { + synchronized(resolveQueue) { resolving = false } + drainResolveQueue(nsd, found, onFound) + } + + if (nextGeneration != discoveryGeneration) { + finish() + return + } + + if (android.os.Build.VERSION.SDK_INT >= 34) { + resolveModern(nsd, next, nextGeneration, found, onFound, finish) + return + } + + try { + @Suppress("DEPRECATION") + nsd.resolveService(next, object : NsdManager.ResolveListener { + override fun onResolveFailed(info: NsdServiceInfo?, errorCode: Int) { + if (errorCode == NsdManager.FAILURE_ALREADY_ACTIVE) { + synchronized(resolveQueue) { resolveQueue.addLast(nextGeneration to next) } + } else { + NetworkLog.log("LAN", "Could not resolve peer address, code $errorCode") + } + scope.launch { kotlinx.coroutines.delay(RESOLVE_RETRY_MS); finish() } + } + + override fun onServiceResolved(resolved: NsdServiceInfo) { + if (nextGeneration == discoveryGeneration) { + val host = hostAddressOf(resolved) + if (host != null && !isSelfEndpoint(host, resolved.port)) { + val peer = peerFrom(resolved, host) + val now = synchronized(found) { found[peer.id] = peer; found.values.toList() } + scope.launch(Dispatchers.Main) { onFound(now) } + } + } + finish() + } + }) + } catch (e: Exception) { + NetworkLog.log("LAN", "Address resolution: ${e.message}") + finish() + } + } + + fun stopDiscovery() { + discoveryGeneration += 1 + val nsd = nsdManager ?: return + discoveryListener?.let { + try { nsd.stopServiceDiscovery(it) } catch (_: Exception) {} + } + discoveryListener = null + } + + override fun startDiscoveryAndConnect(targetId: String?) { + if (targetId.isNullOrBlank()) { + _connectionState.value = ConnectionState.FAILED + return + } + val host = targetId.substringBeforeLast(':', targetId).trim() + + val port = targetId.substringAfterLast(':', "").toIntOrNull() ?: run { + lastError = "Address must look like 192.168.1.5:port" + NetworkLog.reason("LAN", DisconnectReason.PEER_NOT_FOUND) + _connectionState.value = ConnectionState.FAILED + return + } + + _connectionState.value = ConnectionState.CONNECTING + lastError = null + scope.launch(Dispatchers.IO) { + try { + val s = Socket() + + s.tcpNoDelay = true + + s.keepAlive = true + s.connect(InetSocketAddress(host, port), CONNECT_TIMEOUT_MS) + if (!claimSocket(s)) { + // Another connection won the race; report its state instead of hanging here. + try { s.close() } catch (_: IOException) {} + _connectionState.value = + if (socket?.isClosed == false) ConnectionState.CONNECTED else ConnectionState.FAILED + return@launch + } + onConnected(s) + } catch (e: IOException) { + lastError = "Could not connect to $host:$port: ${e.message}" + NetworkLog.reason("LAN", DisconnectReason.CONNECT_TIMEOUT, "$host:$port") + _connectionState.value = ConnectionState.FAILED + } + } + } + + private fun onConnected(sock: Socket) { + output = sock.getOutputStream() + startWriterIfNeeded() + _connectionState.value = ConnectionState.CONNECTED + + scope.launch(Dispatchers.IO) { + try { + val reader = BufferedReader(InputStreamReader(sock.getInputStream(), Charsets.UTF_8)) + while (true) { + val read = readBoundedLine(reader) + if (read is LineResult.EndOfStream) break + if (sock !== socket) break + if (read is LineResult.TooLong) { + NetworkLog.reason("LAN", DisconnectReason.MESSAGE_TOO_LARGE) + break + } + val line = (read as LineResult.Line).text + try { + dispatcher.dispatch(GameMessage.fromJson(line)) + } catch (e: Exception) { + NetworkLog.log("LAN", "Malformed message skipped") + } + } + } catch (e: IOException) { + } finally { + releaseConnection(sock) + } + } + } + + private fun releaseConnection(sock: Socket) { + try { sock.close() } catch (_: IOException) {} + val wasCurrent = synchronized(socketLock) { + if (sock === socket) { + socket = null + output = null + true + } else { + false + } + } + if (wasCurrent) { + hosting = false + onHostingEnded() + _connectionState.value = ConnectionState.DISCONNECTED + } + } + + private fun startWriterIfNeeded() { + if (writerStarted) return + writerStarted = true + scope.launch(Dispatchers.IO) { + for (message in outbox) { + val currentSocket = socket + val currentOutput = output + if (currentSocket == null || currentOutput == null || currentSocket.isClosed) { + NetworkLog.log("LAN", "Message not sent: no connection") + continue + } + try { + currentOutput.write((message + "\n").toByteArray(Charsets.UTF_8)) + currentOutput.flush() + } catch (e: IOException) { + releaseConnection(currentSocket) + } + } + } + } + + private sealed class LineResult { + data class Line(val text: String) : LineResult() + object TooLong : LineResult() + object EndOfStream : LineResult() + } + + private fun readBoundedLine(reader: BufferedReader): LineResult { + val builder = StringBuilder() + while (true) { + val ch = reader.read() + if (ch == -1) { + return if (builder.isEmpty()) LineResult.EndOfStream + else LineResult.Line(builder.toString()) + } + if (ch == '\n'.code) return LineResult.Line(builder.toString()) + if (ch == '\r'.code) continue + if (builder.length >= MAX_MESSAGE_CHARS) return LineResult.TooLong + builder.append(ch.toChar()) + } + } + + override fun send(message: GameMessage) { + val json = message.toJson() + val size = json.length + if (size > MAX_MESSAGE_CHARS) { + NetworkLog.reason("LAN", DisconnectReason.MESSAGE_TOO_LARGE, "$size chars") + return + } + outbox.trySend(json) + } + + override fun disconnect() { + val wasHosting = hosting + hosting = false + if (wasHosting) onHostingEnded() + + synchronized(socketLock) { + try { socket?.close() } catch (_: IOException) {} + socket = null + output = null + } + + var dropped = 0 + while (outbox.tryReceive().isSuccess) dropped++ + if (dropped > 0) { + repeat(dropped) { NetworkMetrics.messageDropped() } + NetworkLog.log("LAN", "Dropped unsent messages: $dropped") + } + _connectionState.value = ConnectionState.DISCONNECTED + } + + fun shutdown() { + stopDiscovery() + unregisterService() + disconnect() + try { serverSocket?.close() } catch (_: IOException) {} + synchronized(presenceLock) { serverSocket = null; presenceStarting = false } + } + + private fun localIpAddress(): String? { + try { + val wifi = context.applicationContext.getSystemService(Context.WIFI_SERVICE) as? WifiManager + @Suppress("DEPRECATION") + val ip = wifi?.connectionInfo?.ipAddress ?: 0 + if (ip != 0) { + return "${ip and 0xff}.${ip shr 8 and 0xff}.${ip shr 16 and 0xff}.${ip shr 24 and 0xff}" + } + } catch (_: Exception) { } + + try { + for (nif in NetworkInterface.getNetworkInterfaces()) { + if (!nif.isUp || nif.isLoopback) continue + val name = nif.name.lowercase() + if (name.startsWith("tun") || name.startsWith("ppp") || name.startsWith("rmnet")) continue + for (addr in nif.inetAddresses) { + if (!addr.isLoopbackAddress && addr.hostAddress?.contains(':') == false) { + return addr.hostAddress + } + } + } + } catch (_: Exception) { } + return null + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/MessageDispatcher.kt b/app/src/main/java/cc/skysparkle/matewave/network/MessageDispatcher.kt new file mode 100644 index 0000000..5610f34 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/MessageDispatcher.kt @@ -0,0 +1,25 @@ +package cc.skysparkle.matewave.network + +import java.util.concurrent.CopyOnWriteArrayList + +class MessageDispatcher { + private val listeners = CopyOnWriteArrayList<(GameMessage) -> Unit>() + + fun add(listener: (GameMessage) -> Unit): () -> Unit { + listeners.add(listener) + return { listeners.remove(listener) } + } + + fun dispatch(message: GameMessage) { + for (listener in listeners) { + try { + listener(message) + } catch (_: Exception) { + } + } + } + + fun clear() { + listeners.clear() + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/NetworkLog.kt b/app/src/main/java/cc/skysparkle/matewave/network/NetworkLog.kt new file mode 100644 index 0000000..23afa6b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/NetworkLog.kt @@ -0,0 +1,53 @@ +package cc.skysparkle.matewave.network + +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.update + +enum class DisconnectReason(val userText: String, val textRes: Int) { + NONE("—", cc.skysparkle.matewave.R.string.reason_unknown), + PERMISSION_DENIED("No nearby devices permission", cc.skysparkle.matewave.R.string.reason_permission_denied), + BLUETOOTH_OFF("Bluetooth is off", cc.skysparkle.matewave.R.string.reason_bluetooth_off), + WIFI_UNAVAILABLE("Phone is not connected to Wi-Fi", cc.skysparkle.matewave.R.string.reason_wifi_unavailable), + PEER_NOT_FOUND("Opponent not found", cc.skysparkle.matewave.R.string.reason_peer_not_found), + CONNECT_TIMEOUT("Opponent did not respond in time", cc.skysparkle.matewave.R.string.reason_connect_timeout), + SERVICE_NOT_FOUND("The other device does not have this app", cc.skysparkle.matewave.R.string.reason_service_not_found), + SUBSCRIBE_FAILED("Could not enable data reception", cc.skysparkle.matewave.R.string.reason_subscribe_failed), + WRITE_FAILED("Could not send data", cc.skysparkle.matewave.R.string.reason_write_failed), + MESSAGE_TOO_LARGE("Received message is too large", cc.skysparkle.matewave.R.string.reason_message_too_large), + REMOTE_DISCONNECTED("Opponent disconnected", cc.skysparkle.matewave.R.string.reason_remote_disconnected), + PORT_BUSY("Could not open port", cc.skysparkle.matewave.R.string.reason_port_busy), + UNKNOWN("Unknown connection error", cc.skysparkle.matewave.R.string.reason_unknown) +} + +data class NetworkEvent( + val at: Long, + val transport: String, + val text: String +) + +/** In-memory connection log, copied into the diagnostics report from Settings. */ +object NetworkLog { + private const val CAPACITY = 60 + + private val _events = MutableStateFlow>(emptyList()) + + private val _lastReason = MutableStateFlow(DisconnectReason.NONE) + val lastReason: StateFlow = _lastReason + + fun log(transport: String, text: String) { + val event = NetworkEvent(System.currentTimeMillis(), transport, text) + _events.update { (it + event).takeLast(CAPACITY) } + } + + fun reason(transport: String, reason: DisconnectReason, detail: String? = null) { + _lastReason.value = reason + log(transport, reason.userText + (detail?.let { ": $it" } ?: "")) + } + + fun asText(): String = _events.value.joinToString("\n") { e -> + val time = java.text.SimpleDateFormat("HH:mm:ss", java.util.Locale.getDefault()) + .format(java.util.Date(e.at)) + "$time [${e.transport}] ${e.text}" + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/NetworkMetrics.kt b/app/src/main/java/cc/skysparkle/matewave/network/NetworkMetrics.kt new file mode 100644 index 0000000..f4bbf88 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/NetworkMetrics.kt @@ -0,0 +1,58 @@ +package cc.skysparkle.matewave.network + +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.update +import java.util.concurrent.atomic.AtomicInteger +import java.util.concurrent.atomic.AtomicLong + +object NetworkMetrics { + private val connectAttempts = AtomicInteger() + private val connectSuccesses = AtomicInteger() + + private val chunksSent = AtomicLong() + private val chunkRetries = AtomicLong() + private val duplicateChunks = AtomicLong() + private val corruptedMessages = AtomicLong() + private val messagesDropped = AtomicLong() + + private val lastConnectMillis = AtomicLong() + + private val _updated = MutableStateFlow(0) + + val updated: StateFlow = _updated + + private fun touch() { _updated.update { it + 1 } } + + fun connectStarted() { connectAttempts.incrementAndGet(); touch() } + + fun connectSucceeded(millis: Long) { + connectSuccesses.incrementAndGet() + lastConnectMillis.set(millis) + touch() + } + + fun chunkSent() { chunksSent.incrementAndGet() } + fun chunkRetried(count: Int) { chunkRetries.addAndGet(count.toLong()); touch() } + fun duplicateChunk() { duplicateChunks.incrementAndGet() } + fun messageCorrupted() { corruptedMessages.incrementAndGet(); touch() } + fun messageDropped() { messagesDropped.incrementAndGet(); touch() } + + private fun retryPercent(): Int { + val sent = chunksSent.get() + if (sent == 0L) return 0 + return ((chunkRetries.get() * 100) / sent).toInt() + } + + fun asText(res: android.content.res.Resources): String = buildString { + appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_connect_attempts, + connectAttempts.get(), connectSuccesses.get())) + val last = lastConnectMillis.get() + if (last > 0) appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_last_connect, last)) + appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_chunks, + chunksSent.get(), chunkRetries.get(), retryPercent())) + appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_duplicates, duplicateChunks.get())) + appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_corrupted, corruptedMessages.get())) + appendLine(res.getString(cc.skysparkle.matewave.R.string.metrics_dropped, messagesDropped.get())) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/NetworkRequirements.kt b/app/src/main/java/cc/skysparkle/matewave/network/NetworkRequirements.kt new file mode 100644 index 0000000..5bb7d92 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/NetworkRequirements.kt @@ -0,0 +1,60 @@ +package cc.skysparkle.matewave.network + +import android.bluetooth.BluetoothManager +import android.content.Context +import android.content.pm.PackageManager +import android.net.ConnectivityManager +import android.net.NetworkCapabilities +import android.os.Build +import androidx.core.content.ContextCompat + +data class NetworkStatus( + val bluetoothSupported: Boolean, + val bluetoothOn: Boolean, + val wifiConnected: Boolean, + val permissionsGranted: Boolean, + val notificationsGranted: Boolean +) { + val bluetoothReady: Boolean + get() = bluetoothSupported && bluetoothOn && permissionsGranted + + val lanReady: Boolean get() = wifiConnected + + val anyChannelReady: Boolean get() = bluetoothReady || lanReady + + val onlineBlocked: Boolean get() = !anyChannelReady +} + +object NetworkRequirements { + fun check(context: Context): NetworkStatus { + val manager = context.getSystemService(Context.BLUETOOTH_SERVICE) as? BluetoothManager + val adapter = manager?.adapter + val supported = adapter != null && + context.packageManager.hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE) + val on = try { adapter?.isEnabled == true } catch (e: SecurityException) { false } + + return NetworkStatus( + bluetoothSupported = supported, + bluetoothOn = on, + wifiConnected = isWifiConnected(context), + permissionsGranted = AppPermissions.nearby.all { granted(context, it) }, + notificationsGranted = notificationsGranted(context) + ) + } + + private fun isWifiConnected(context: Context): Boolean { + val cm = context.getSystemService(Context.CONNECTIVITY_SERVICE) as? ConnectivityManager + ?: return false + val caps = cm.getNetworkCapabilities(cm.activeNetwork ?: return false) ?: return false + return caps.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) || + caps.hasTransport(NetworkCapabilities.TRANSPORT_ETHERNET) + } + + private fun notificationsGranted(context: Context): Boolean = + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + granted(context, android.Manifest.permission.POST_NOTIFICATIONS) + } else true + + private fun granted(context: Context, permission: String): Boolean = + ContextCompat.checkSelfPermission(context, permission) == PackageManager.PERMISSION_GRANTED +} diff --git a/app/src/main/java/cc/skysparkle/matewave/network/Transports.kt b/app/src/main/java/cc/skysparkle/matewave/network/Transports.kt new file mode 100644 index 0000000..c243a93 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/network/Transports.kt @@ -0,0 +1,33 @@ +package cc.skysparkle.matewave.network + +import android.content.Context +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.SupervisorJob + +/** Process-wide transport instances shared by presence and games. */ +object Transports { + private val scope = CoroutineScope(SupervisorJob()) + + @Volatile private var ble: BleTransport? = null + @Volatile private var lan: LanTransport? = null + + fun ble(context: Context): BleTransport = + ble ?: synchronized(this) { + ble ?: BleTransport(context.applicationContext, scope).also { ble = it } + } + + fun lan(context: Context): LanTransport = + lan ?: synchronized(this) { + lan ?: LanTransport(context.applicationContext, scope).also { lan = it } + } + + fun applyAnnounceSetting() { + lan?.applyAnnounceSetting() + ble?.applyAnnounceSetting() + } + + fun releaseForGame() { + ble?.stopDiscovery() + lan?.stopDiscovery() + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/openings/OpeningBook.kt b/app/src/main/java/cc/skysparkle/matewave/openings/OpeningBook.kt new file mode 100644 index 0000000..e4bbfa5 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/openings/OpeningBook.kt @@ -0,0 +1,96 @@ +package cc.skysparkle.matewave.openings + +import android.content.Context + +data class OpeningName(val eco: String, val name: String) + +/** + * Opening theory from the Lichess game database (May 2013, CC0), used to tell book moves from + * deviations, and opening names from lichess-org/chess-openings (CC0). Both are keyed by SAN move + * sequences from the standard starting position, so no position hashing is needed at runtime. + * + * explorer.txt: header "#games N", then one node per line "parentId san white draws black"; + * node ids are line numbers (the root is 0) and parents always come before children. Only the + * tree shape is used here. + */ +object OpeningBook { + + private class Data( + val san: Array, + val children: Array, + val names: Map, + /** Length in plies of the longest named line; longer prefixes are never looked up. */ + val longestName: Int + ) + + @Volatile private var data: Data? = null + + /** Reads both files; call from a background thread. Safe to call repeatedly. */ + fun load(context: Context) { + if (data != null) return + synchronized(this) { + if (data != null) return + val assets = context.applicationContext.assets + val parents = ArrayList(40_000) + val sans = ArrayList(40_000) + parents.add(-1); sans.add("") + assets.open("openings/explorer.txt").bufferedReader(Charsets.UTF_8).useLines { lines -> + for (line in lines) { + if (line.isBlank() || line.startsWith("#")) continue + val f = line.split(' ') + if (f.size < 2) continue + parents.add(f[0].toInt()); sans.add(f[1]) + } + } + val childLists = Array(parents.size) { ArrayList(0) } + for (i in 1 until parents.size) childLists[parents[i]].add(i) + + val names = HashMap(4_000) + var longest = 0 + assets.open("openings/names.tsv").bufferedReader(Charsets.UTF_8).useLines { lines -> + for (line in lines) { + val f = line.split('\t') + if (f.size < 3) continue + names.putIfAbsent(f[2], OpeningName(f[0], f[1])) + longest = maxOf(longest, f[2].count { it == ' ' } + 1) + } + } + data = Data( + san = sans.toTypedArray(), + children = Array(childLists.size) { childLists[it].toIntArray() }, + names = names, + longestName = longest + ) + } + } + + /** + * Number of leading moves of [path] that are opening theory: played in the game database + * or part of a named opening line. + */ + fun bookDepth(path: List): Int { + val d = data ?: return 0 + var current = 0 + var depth = 0 + for (san in path) { + current = d.children[current].firstOrNull { d.san[it] == san } ?: break + depth++ + } + for (len in minOf(path.size, d.longestName) downTo depth + 1) { + if (d.names.containsKey(path.subList(0, len).joinToString(" "))) return len + } + return depth + } + + /** Deepest ply covered by the game database; beyond it "out of book" cannot be judged. */ + const val MAX_TREE_PLY = 20 + + /** Name of the most specific known opening along [path]. */ + fun openingName(path: List): OpeningName? { + val d = data ?: return null + for (len in minOf(path.size, d.longestName) downTo 1) { + d.names[path.subList(0, len).joinToString(" ")]?.let { return it } + } + return null + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/openings/OpeningCourses.kt b/app/src/main/java/cc/skysparkle/matewave/openings/OpeningCourses.kt new file mode 100644 index 0000000..35b9a5e --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/openings/OpeningCourses.kt @@ -0,0 +1,230 @@ +package cc.skysparkle.matewave.openings + +import android.content.Context +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor + +/** An opening line to learn, played from [side]'s point of view. */ +data class OpeningCourse( + val id: String, + val side: PieceColor, + val eco: String, + val name: String, + val sans: List, + val moves: List +) { + fun isLearnerMove(ply: Int): Boolean = (ply % 2 == 0) == (side == PieceColor.WHITE) +} + +/** Artwork for the course card. */ +fun OpeningCourse.artRes(): Int = when (id) { + "Sicilian Defense: Najdorf Variation" -> R.drawable.art_najdorf + "Sicilian Defense: Dragon Variation" -> R.drawable.art_dragon + "French Defense: Advance Variation" -> R.drawable.art_french_advance + "Caro-Kann Defense: Classical Variation" -> R.drawable.art_caro_kann_classical + "King's Indian Defense: Orthodox Variation" -> R.drawable.art_kings_indian + "Grünfeld Defense: Exchange Variation" -> R.drawable.art_grunfeld + "Italian Game: Giuoco Piano" -> R.drawable.art_italian + "Ruy Lopez: Closed" -> R.drawable.art_ruy_lopez + "King's Gambit Accepted: Kieseritzky Gambit" -> R.drawable.art_kings_gambit + "Queen's Gambit Declined: Orthodox Defense" -> R.drawable.art_qgd_orthodox + "London System" -> R.drawable.art_london + "Catalan Opening: Open Defense" -> R.drawable.art_catalan + "Caro-Kann Defense: Advance Variation" -> R.drawable.art_caro_kann_advance + "Scandinavian Defense: Main Line" -> R.drawable.art_scandinavian + "Pirc Defense: Classical Variation" -> R.drawable.art_pirc + "Petrov's Defense: Classical Attack" -> R.drawable.art_petrov + "Slav Defense: Czech Variation" -> R.drawable.art_slav + "Nimzo-Indian Defense: Classical Variation" -> R.drawable.art_nimzo_indian + "Dutch Defense: Leningrad Variation" -> R.drawable.art_dutch + "Queen's Gambit Declined: Tarrasch Defense" -> R.drawable.art_tarrasch + "Scotch Game" -> R.drawable.art_scotch + "Vienna Game: Vienna Gambit" -> R.drawable.art_vienna + "English Opening: King's English Variation" -> R.drawable.art_english + "Queen's Gambit Accepted: Classical Defense" -> R.drawable.art_qga + else -> R.drawable.ic_book +} + +/** + * Curated main lines (assets/openings/courses.tsv: side, ECO, name, SAN line). Every line + * ends with the learner's move and was checked for legality when the file was built. + */ +object OpeningCourses { + @Volatile private var cached: List? = null + + fun load(context: Context): List { + cached?.let { return it } + synchronized(this) { + cached?.let { return it } + val result = context.applicationContext.assets.open("openings/courses.tsv") + .bufferedReader(Charsets.UTF_8).useLines { lines -> + lines.filter { it.isNotBlank() }.mapNotNull { line -> + val f = line.split('\t') + if (f.size < 4) return@mapNotNull null + val sans = f[3].split(' ') + val moves = toMoves(sans) ?: return@mapNotNull null + OpeningCourse( + id = f[2], + side = if (f[0] == "W") PieceColor.WHITE else PieceColor.BLACK, + eco = f[1], + name = f[2], + sans = sans, + moves = moves + ) + }.toList() + } + cached = result + return result + } + } + + private fun toMoves(sans: List): List? { + var board = Board.startPosition() + val moves = ArrayList(sans.size) + for (san in sans) { + val move = Notation.fromSan(board, san) ?: return null + moves.add(move) + board = ChessEngine.applyMove(board, move) + } + return moves + } +} + +enum class CourseStatus { NEW, LOCKED, LEARNING, DUE, WAITING } + +/** Stars before and after a review, and flawless reviews still needed for the next star. */ +data class StarChange(val before: Int, val after: Int, val reviewsToNext: Int) + +/** A course with its spaced-repetition state at a given moment. */ +data class CourseInfo( + val course: OpeningCourse, + val status: CourseStatus, + /** Learner moves already learned (level 1 or higher). */ + val learned: Int, + val total: Int, + val dueCards: Int, + val nextDueAt: Long?, + /** 0..3: 1 = fully learned, then one star per [OpeningSrs.REVIEWS_PER_STAR] flawless reviews. */ + val stars: Int, + /** Flawless reviews still needed for the next star; 0 at three stars. */ + val reviewsToNext: Int = 0 +) { + val mastered: Boolean get() = stars >= 3 +} + +/** + * Spaced repetition for opening lines. Every learner move of a course is a card with a level + * and a due time. A correct first answer on a due card raises its level; a wrong answer sends + * that card back to level 1. Intervals grow from 4 hours to 90 days. + */ +class OpeningSrs(private val store: CardStore) { + + /** Where cards are kept: SharedPreferences in the app, a map in tests. */ + interface CardStore { + fun get(key: String): String? + fun put(key: String, value: String) + } + + constructor(context: Context) : this(object : CardStore { + private val prefs = context.applicationContext.getSharedPreferences("opening_srs", Context.MODE_PRIVATE) + override fun get(key: String): String? = prefs.getString(key, null) + override fun put(key: String, value: String) { prefs.edit().putString(key, value).apply() } + }) + + private fun key(course: OpeningCourse, ply: Int) = "${course.id}|$ply" + + fun level(course: OpeningCourse, ply: Int): Int = read(course, ply).first + + fun isDue(course: OpeningCourse, ply: Int, now: Long): Boolean { + val (level, due) = read(course, ply) + return level > 0 && due <= now + } + + private fun read(course: OpeningCourse, ply: Int): Pair { + val raw = store.get(key(course, ply)) ?: return 0 to 0L + val parts = raw.split(',') + return (parts.getOrNull(0)?.toIntOrNull() ?: 0) to (parts.getOrNull(1)?.toLongOrNull() ?: 0L) + } + + private fun write(course: OpeningCourse, ply: Int, level: Int, due: Long) { + store.put(key(course, ply), "$level,$due") + } + + /** First correct play of a new move. */ + fun learn(course: OpeningCourse, ply: Int, now: Long) { + if (level(course, ply) == 0) write(course, ply, 1, now + INTERVALS[1]) + } + + /** Correct first answer. Only a due card moves up: practising early does not skip reviews. */ + fun success(course: OpeningCourse, ply: Int, now: Long) { + val (level, due) = read(course, ply) + if (level == 0 || due > now) return + val next = minOf(MAX_LEVEL, level + 1) + write(course, ply, next, now + INTERVALS[next]) + } + + fun fail(course: OpeningCourse, ply: Int, now: Long) { + if (level(course, ply) == 0) return + write(course, ply, 1, now + RELEARN_MS) + } + + private fun reviewsKey(course: OpeningCourse) = "${course.id}|reviews" + + private fun reviewCount(course: OpeningCourse): Int = store.get(reviewsKey(course))?.toIntOrNull() ?: 0 + + private fun starsFor(reviews: Int): Int = 1 + minOf(2, reviews / REVIEWS_PER_STAR) + + private fun reviewsToNext(reviews: Int): Int = + if (reviews >= 2 * REVIEWS_PER_STAR) 0 else REVIEWS_PER_STAR - reviews % REVIEWS_PER_STAR + + /** + * Records a finished review of due moves. A flawless one counts towards the next star; a + * mistake or hint takes one star away (the first star, "learned", is never lost) and the + * lost star has to be earned again from the start. + */ + fun recordReview(course: OpeningCourse, flawless: Boolean): StarChange { + val reviews = reviewCount(course) + val before = starsFor(reviews) + val after = if (flawless) { + minOf(reviews + 1, 2 * REVIEWS_PER_STAR) + } else { + // Back to the start of the previous star. + maxOf(0, (before - 2) * REVIEWS_PER_STAR) + } + store.put(reviewsKey(course), after.toString()) + return StarChange(before, starsFor(after), reviewsToNext(after)) + } + + fun info(course: OpeningCourse, now: Long, anotherInProgress: Boolean): CourseInfo { + val plies = course.moves.indices.filter { course.isLearnerMove(it) } + val cards = plies.map { read(course, it) } + val learned = cards.count { it.first > 0 } + val due = cards.count { it.first > 0 && it.second <= now } + val nextDue = cards.filter { it.first > 0 }.minOfOrNull { it.second } + val reviews = reviewCount(course) + val stars = if (learned < plies.size) 0 else starsFor(reviews) + val status = when { + learned == 0 && anotherInProgress -> CourseStatus.LOCKED + learned == 0 -> CourseStatus.NEW + learned < plies.size -> CourseStatus.LEARNING + due > 0 -> CourseStatus.DUE + else -> CourseStatus.WAITING + } + return CourseInfo(course, status, learned, plies.size, due, nextDue, stars, if (stars == 0) 0 else reviewsToNext(reviews)) + } + + companion object { + const val MAX_LEVEL = 7 + /** Flawless reviews needed for each of the second and third stars. */ + const val REVIEWS_PER_STAR = 3 + private const val HOUR = 3_600_000L + private const val DAY = 24 * HOUR + /** Interval after reaching each level (index = level). */ + val INTERVALS = longArrayOf(0, 4 * HOUR, DAY, 3 * DAY, 7 * DAY, 16 * DAY, 35 * DAY, 90 * DAY) + const val RELEARN_MS = 10 * 60_000L + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/presence/LocalPresence.kt b/app/src/main/java/cc/skysparkle/matewave/presence/LocalPresence.kt new file mode 100644 index 0000000..49e8da4 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/presence/LocalPresence.kt @@ -0,0 +1,178 @@ +package cc.skysparkle.matewave.presence + +import android.content.Context +import cc.skysparkle.matewave.data.FriendsStore +import cc.skysparkle.matewave.network.LanPeer +import cc.skysparkle.matewave.network.NetworkLog +import cc.skysparkle.matewave.network.Transports +import cc.skysparkle.matewave.security.DeviceKeys +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.launch + +data class DiscoveredPeer( + val playerId: String, + val name: String, + val elo: Int, + val fingerprint: String, + + val address: String +) + +/** + * Shows who is nearby on the same network. Announcements carry an ECDSA signature so a + * known friend's name and rating cannot be overwritten by someone copying their ID. + */ +class LocalPresence( + private val context: Context, + private val scope: CoroutineScope +) { + private val _peers = MutableStateFlow>(emptyMap()) + val peers: StateFlow> = _peers + + private var job: Job? = null + private var gameWatchJob: Job? = null + + private val knownPeers by lazy { cc.skysparkle.matewave.security.KnownPeers(context) } + + /** Start of the current discovery session and time of its last result. */ + @Volatile private var sessionStart = 0L + @Volatile private var lastResultAt = 0L + private var pruneJob: Job? = null + + fun start() { + if (job != null) return + val lan = Transports.lan(context) + + if (PresenceSettings(context).announceEnabled) lan.startPresence() + beginSession(lan) + + job = scope.launch { + while (true) { + delay(WATCHDOG_INTERVAL_MS) + + if (lanBusy(lan)) continue + + runCatching { restartDiscovery(lan) } + } + } + + gameWatchJob = scope.launch { + var wasBusy = false + lan.connectionState.collect { state -> + val busy = state == cc.skysparkle.matewave.network.ConnectionState.CONNECTED || + state == cc.skysparkle.matewave.network.ConnectionState.CONNECTING + if (wasBusy && !busy) { + runCatching { restartDiscovery(lan) } + } + wasBusy = busy + } + } + NetworkLog.log("PRESENCE", "LAN presence started") + } + + private fun lanBusy(lan: cc.skysparkle.matewave.network.LanTransport): Boolean { + val state = lan.connectionState.value + return state == cc.skysparkle.matewave.network.ConnectionState.CONNECTED || + state == cc.skysparkle.matewave.network.ConnectionState.CONNECTING + } + + /** Fresh discovery without clearing the list first, so statuses do not blink. */ + fun refresh() { + val lan = Transports.lan(context) + if (lanBusy(lan)) return + scope.launch { runCatching { restartDiscovery(lan) } } + } + + private suspend fun restartDiscovery(lan: cc.skysparkle.matewave.network.LanTransport) { + lan.stopDiscovery() + delay(RESTART_DELAY_MS) + if (PresenceSettings(context).announceEnabled) lan.startPresence() + beginSession(lan) + } + + /** + * Starts a discovery session. A new session reports only what it finds; if it finds nobody + * it reports nothing at all, so without this check players who left stayed in the list. + */ + private fun beginSession(lan: cc.skysparkle.matewave.network.LanTransport) { + sessionStart = System.currentTimeMillis() + lan.discoverPeers { found -> replaceAll(found) } + pruneJob?.cancel() + pruneJob = scope.launch { + delay(PRUNE_AFTER_MS) + if (lastResultAt < sessionStart) _peers.value = emptyMap() + } + } + + fun stop() { + job?.cancel() + job = null + gameWatchJob?.cancel() + gameWatchJob = null + pruneJob?.cancel() + pruneJob = null + + runCatching { + val lan = Transports.lan(context) + val busy = lan.connectionState.value == cc.skysparkle.matewave.network.ConnectionState.CONNECTED || + lan.connectionState.value == cc.skysparkle.matewave.network.ConnectionState.CONNECTING + if (busy) lan.stopDiscovery() else lan.shutdown() + } + _peers.value = emptyMap() + NetworkLog.log("PRESENCE", "LAN presence stopped") + } + + private fun replaceAll(found: List) { + lastResultAt = System.currentTimeMillis() + val mine = DeviceKeys.publicKeyFingerprint(context) + val result = LinkedHashMap() + found.forEach { peer -> + val id = peer.playerId.ifEmpty { peer.fingerprint } + if (id.isEmpty()) return@forEach + + if (peer.fingerprint.isNotEmpty() && peer.fingerprint == mine) return@forEach + + val knownKey = knownPeers.publicKeyOf(id) + if (knownKey != null) { + val authentic = peer.signature.isNotEmpty() && DeviceKeys.verify( + knownKey, + cc.skysparkle.matewave.network.LanTransport.presencePayload(peer.playerId, peer.displayName, peer.elo), + peer.signature + ) + if (!authentic) { + NetworkLog.log("PRESENCE", "Announcement for $id failed signature check, hidden") + return@forEach + } + FriendsStore.updateProfile( + userId = id, + name = peer.displayName.ifEmpty { peer.name }, + elo = peer.elo + ) + FriendsStore.markSeen(id, lastResultAt) + } + result[id] = DiscoveredPeer( + playerId = id, + name = peer.displayName.ifEmpty { peer.name }, + elo = peer.elo, + fingerprint = peer.fingerprint, + address = peer.id + ) + } + _peers.value = result + } + + fun isOnline(playerId: String): Boolean = _peers.value.containsKey(playerId) + + private companion object { + const val WATCHDOG_INTERVAL_MS = 30_000L + + /** A session that found nobody within this time means nobody is around. */ + const val PRUNE_AFTER_MS = 8_000L + + const val RESTART_DELAY_MS = 600L + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/presence/PresenceHub.kt b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceHub.kt new file mode 100644 index 0000000..e1dcb48 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceHub.kt @@ -0,0 +1,37 @@ +package cc.skysparkle.matewave.presence + +import android.content.Context +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.SupervisorJob + +/** + * The one [LocalPresence] of the process. The app's screens and the background service share it, + * so two discovery sessions never compete for the network service, and it runs while at least + * one of them holds it. + */ +object PresenceHub { + private val scope = CoroutineScope(SupervisorJob()) + + @Volatile private var instance: LocalPresence? = null + private var holders = 0 + + fun get(context: Context): LocalPresence = + instance ?: synchronized(this) { + instance ?: LocalPresence(context.applicationContext, scope).also { instance = it } + } + + fun acquire(context: Context) { + val presence = get(context) + val first = synchronized(this) { holders++ == 0 } + if (first) presence.start() + } + + fun release(context: Context) { + val presence = get(context) + val last = synchronized(this) { + if (holders == 0) return + --holders == 0 + } + if (last) presence.stop() + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/presence/PresenceService.kt b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceService.kt new file mode 100644 index 0000000..337dc2a --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceService.kt @@ -0,0 +1,94 @@ +package cc.skysparkle.matewave.presence + +import android.app.Notification +import android.app.NotificationChannel +import android.app.NotificationManager +import android.app.PendingIntent +import android.app.Service +import android.content.Context +import android.content.Intent +import android.content.pm.ServiceInfo +import android.os.Build +import android.os.IBinder +import cc.skysparkle.matewave.MainActivity +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.network.NetworkLog + +/** Optional foreground service that keeps the player visible while the app is in the background. */ +class PresenceService : Service() { + private var holdsPresence = false + + override fun onBind(intent: Intent?): IBinder? = null + + override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { + if (holdsPresence) return START_STICKY + + createChannel() + val started = runCatching { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + startForeground(NOTIFICATION_ID, buildNotification(), ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE) + } else { + startForeground(NOTIFICATION_ID, buildNotification()) + } + }.isSuccess + + if (!started) { + NetworkLog.log("PRESENCE", "Background service not started: rejected by the system") + PresenceSettings(applicationContext).backgroundEnabled = false + stopSelf() + return START_NOT_STICKY + } + + PresenceHub.acquire(applicationContext) + holdsPresence = true + NetworkLog.log("PRESENCE", "Background presence started") + return START_STICKY + } + + override fun onDestroy() { + if (holdsPresence) { + holdsPresence = false + PresenceHub.release(applicationContext) + NetworkLog.log("PRESENCE", "Background presence stopped") + } + super.onDestroy() + } + + private fun createChannel() { + val manager = getSystemService(NotificationManager::class.java) ?: return + val channel = NotificationChannel( + CHANNEL_ID, + getString(R.string.presence_service_channel), + NotificationManager.IMPORTANCE_LOW + ) + manager.createNotificationChannel(channel) + } + + private fun buildNotification(): Notification { + val intent = Intent(this, MainActivity::class.java) + val pending = PendingIntent.getActivity( + this, 0, intent, + PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_UPDATE_CURRENT + ) + return Notification.Builder(this, CHANNEL_ID) + .setContentTitle(getString(R.string.presence_service_title)) + .setContentText(getString(R.string.presence_service_text)) + .setSmallIcon(R.drawable.ic_stat_background) + .setContentIntent(pending) + .setOngoing(true) + .build() + } + + companion object { + private const val CHANNEL_ID = "presence" + private const val NOTIFICATION_ID = 42 + + fun start(context: Context) { + runCatching { context.startForegroundService(Intent(context, PresenceService::class.java)) } + } + + fun stop(context: Context) { + runCatching { context.stopService(Intent(context, PresenceService::class.java)) } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/presence/PresenceSettings.kt b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceSettings.kt new file mode 100644 index 0000000..c4de6dd --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/presence/PresenceSettings.kt @@ -0,0 +1,21 @@ +package cc.skysparkle.matewave.presence + +import android.content.Context + +class PresenceSettings(context: Context) { + private val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + var announceEnabled: Boolean + get() = prefs.getBoolean(KEY_ANNOUNCE, true) + set(value) { prefs.edit().putBoolean(KEY_ANNOUNCE, value).apply() } + + var backgroundEnabled: Boolean + get() = prefs.getBoolean(KEY_BACKGROUND, false) + set(value) { prefs.edit().putBoolean(KEY_BACKGROUND, value).apply() } + + private companion object { + const val PREFS = "presence_settings" + const val KEY_ANNOUNCE = "announce" + const val KEY_BACKGROUND = "background" + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/puzzles/Puzzle.kt b/app/src/main/java/cc/skysparkle/matewave/puzzles/Puzzle.kt new file mode 100644 index 0000000..cff0449 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/puzzles/Puzzle.kt @@ -0,0 +1,96 @@ +package cc.skysparkle.matewave.puzzles + +import android.content.Context +import cc.skysparkle.matewave.R +import org.json.JSONArray + +data class Puzzle( + val id: Int, + val theme: String, + val fen: String, + val solutionUci: List, + val rating: Int, + val themes: List = emptyList() +) + +/** Localized name of the puzzle theme, shown as the screen title. */ +fun Puzzle.themeTitleRes(): Int = when (theme) { + "tactic" -> R.string.puzzle_theme_tactic + "mate_in_1" -> R.string.puzzle_theme_mate_in_1 + "mate_in_2" -> R.string.puzzle_theme_mate_in_2 + "mate_in_3" -> R.string.puzzle_theme_mate_in_3 + "fork" -> R.string.puzzle_theme_fork + "pin" -> R.string.puzzle_theme_pin + "discovered_attack" -> R.string.puzzle_theme_discovered_attack + "rook_endgame" -> R.string.puzzle_theme_rook_endgame + "pawn_endgame" -> R.string.puzzle_theme_pawn_endgame + "sacrifice" -> R.string.puzzle_theme_sacrifice + "deflection" -> R.string.puzzle_theme_deflection + "hanging_piece" -> R.string.puzzle_theme_hanging_piece + "skewer" -> R.string.puzzle_theme_skewer + "bishop_endgame" -> R.string.puzzle_theme_bishop_endgame + "zugzwang" -> R.string.puzzle_theme_zugzwang + "trapped_piece" -> R.string.puzzle_theme_trapped_piece + "knight_endgame" -> R.string.puzzle_theme_knight_endgame + "promotion" -> R.string.puzzle_theme_promotion + "attraction" -> R.string.puzzle_theme_attraction + "double_check" -> R.string.puzzle_theme_double_check + "clearance" -> R.string.puzzle_theme_clearance + "queen_endgame" -> R.string.puzzle_theme_queen_endgame + "en_passant" -> R.string.puzzle_theme_en_passant + "interference" -> R.string.puzzle_theme_interference + "xray" -> R.string.puzzle_theme_xray + else -> R.string.puzzle_title_fallback +} + +/** Loads the bundled Lichess puzzle set (CC0) from assets and caches it in memory. */ +object PuzzleRepository { + @Volatile + private var cached: List? = null + + fun load(context: Context): List { + cached?.let { return it } + synchronized(this) { + cached?.let { return it } + val json = context.assets.open("puzzles.json").bufferedReader(Charsets.UTF_8).use { it.readText() } + val arr = JSONArray(json) + val result = ArrayList(arr.length()) + for (i in 0 until arr.length()) { + val o = arr.getJSONObject(i) + val solutionArr = o.getJSONArray("solution") + val solution = (0 until solutionArr.length()).map { solutionArr.getString(it) } + val themesArr = o.optJSONArray("themes") + val themes = themesArr?.let { t -> (0 until t.length()).map { t.getString(it) } } ?: emptyList() + result.add( + Puzzle( + id = o.getInt("id"), + theme = o.optString("theme", "tactic"), + fen = o.getString("fen"), + solutionUci = solution, + rating = o.getInt("rating"), + themes = themes + ) + ) + } + cached = result + return result + } + } + + /** + * A puzzle close to [rating]: a random unsolved one within ±100, widening the window if + * needed. Once every nearby puzzle is solved, solved ones are offered again. + */ + fun pickForRating(context: Context, rating: Int, solved: Set, exclude: Int? = null): Puzzle? { + val all = load(context).filter { it.id != exclude } + if (all.isEmpty()) return null + val unsolved = all.filter { it.id !in solved } + for (pool in listOf(unsolved, all)) { + for (window in intArrayOf(100, 200, 400)) { + val near = pool.filter { kotlin.math.abs(it.rating - rating) <= window } + if (near.isNotEmpty()) return near.random() + } + } + return (unsolved.ifEmpty { all }).minByOrNull { kotlin.math.abs(it.rating - rating) } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/security/DeviceKeys.kt b/app/src/main/java/cc/skysparkle/matewave/security/DeviceKeys.kt new file mode 100644 index 0000000..8817502 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/security/DeviceKeys.kt @@ -0,0 +1,161 @@ +package cc.skysparkle.matewave.security + +import android.content.Context +import android.util.Base64 +import java.security.KeyFactory +import java.security.KeyPair +import java.security.KeyPairGenerator +import java.security.MessageDigest +import java.security.PrivateKey +import java.security.PublicKey +import java.security.Signature +import java.security.spec.ECGenParameterSpec +import java.security.spec.PKCS8EncodedKeySpec +import java.security.spec.X509EncodedKeySpec + +/** + * Long-term ECDSA identity key (kept in Android Keystore) plus per-game ephemeral ECDH + * keys, so a leaked session secret does not expose other games. + */ +object DeviceKeys { + private const val KEYSTORE = "AndroidKeyStore" + // Kept from before the rename: a new alias would create a new identity and break pinned keys. + private const val KEY_ALIAS = "chessapp_identity" + private const val PREFS = "device_keys" + private const val KEY_PRIVATE = "private" + private const val KEY_PUBLIC = "public" + private const val ALGORITHM = "EC" + private const val CURVE = "secp256r1" + private const val SIGNATURE_ALGORITHM = "SHA256withECDSA" + + @Volatile private var cached: KeyPair? = null + + private fun keystoreKeyPair(): KeyPair? = try { + val store = java.security.KeyStore.getInstance(KEYSTORE).apply { load(null) } + val existing = store.getEntry(KEY_ALIAS, null) as? java.security.KeyStore.PrivateKeyEntry + if (existing != null) { + KeyPair(existing.certificate.publicKey, existing.privateKey) + } else { + val generator = KeyPairGenerator.getInstance(ALGORITHM, KEYSTORE) + generator.initialize( + android.security.keystore.KeyGenParameterSpec.Builder( + KEY_ALIAS, + android.security.keystore.KeyProperties.PURPOSE_SIGN or + android.security.keystore.KeyProperties.PURPOSE_VERIFY + ) + .setAlgorithmParameterSpec(ECGenParameterSpec(CURVE)) + .setDigests(android.security.keystore.KeyProperties.DIGEST_SHA256) + .build() + ) + generator.generateKeyPair() + } + } catch (e: Exception) { + null + } + + private fun keyPair(context: Context): KeyPair? { + cached?.let { return it } + synchronized(this) { + cached?.let { return it } + + keystoreKeyPair()?.let { + cached = it + return it + } + + val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + val storedPrivate = prefs.getString(KEY_PRIVATE, null) + val storedPublic = prefs.getString(KEY_PUBLIC, null) + + if (storedPrivate != null && storedPublic != null) { + val restored = try { + val factory = KeyFactory.getInstance(ALGORITHM) + KeyPair( + factory.generatePublic(X509EncodedKeySpec(decode(storedPublic))), + factory.generatePrivate(PKCS8EncodedKeySpec(decode(storedPrivate))) + ) + } catch (e: Exception) { + null + } + if (restored != null) { + cached = restored + return restored + } + } + + return try { + val generator = KeyPairGenerator.getInstance(ALGORITHM) + generator.initialize(ECGenParameterSpec(CURVE)) + val fresh = generator.generateKeyPair() + prefs.edit() + .putString(KEY_PRIVATE, encode(fresh.private.encoded)) + .putString(KEY_PUBLIC, encode(fresh.public.encoded)) + .apply() + cached = fresh + fresh + } catch (e: Exception) { + null + } + } + } + + fun publicKey(context: Context): String? = + keyPair(context)?.public?.encoded?.let { encode(it) } + + fun publicKeyFingerprint(context: Context): String? = + publicKey(context)?.let { fingerprintOf(it) } + + fun fingerprintOf(publicKey: String): String = + MessageDigest.getInstance("SHA-256") + .digest(publicKey.toByteArray(Charsets.UTF_8)) + .take(16).joinToString("") { "%02x".format(it) } + + fun sign(context: Context, data: String): String? { + val privateKey: PrivateKey = keyPair(context)?.private ?: return null + return try { + val signature = Signature.getInstance(SIGNATURE_ALGORITHM) + signature.initSign(privateKey) + signature.update(data.toByteArray(Charsets.UTF_8)) + encode(signature.sign()) + } catch (e: Exception) { + null + } + } + + fun verify(publicKeyEncoded: String, data: String, signatureEncoded: String): Boolean { + return try { + val key: PublicKey = KeyFactory.getInstance(ALGORITHM) + .generatePublic(X509EncodedKeySpec(decode(publicKeyEncoded))) + val signature = Signature.getInstance(SIGNATURE_ALGORITHM) + signature.initVerify(key) + signature.update(data.toByteArray(Charsets.UTF_8)) + signature.verify(decode(signatureEncoded)) + } catch (e: Exception) { + false + } + } + + fun generateEphemeral(): KeyPair? = try { + val generator = KeyPairGenerator.getInstance(ALGORITHM) + generator.initialize(ECGenParameterSpec(CURVE)) + generator.generateKeyPair() + } catch (e: Exception) { + null + } + + fun encodePublic(keyPair: KeyPair): String = encode(keyPair.public.encoded) + + fun sharedSecretWith(ephemeral: KeyPair, peerEphemeralPublic: String): ByteArray? = try { + val peer = KeyFactory.getInstance(ALGORITHM) + .generatePublic(X509EncodedKeySpec(decode(peerEphemeralPublic))) + val agreement = javax.crypto.KeyAgreement.getInstance("ECDH") + agreement.init(ephemeral.private) + agreement.doPhase(peer, true) + MessageDigest.getInstance("SHA-256").digest(agreement.generateSecret()) + } catch (e: Exception) { + null + } + + private fun encode(bytes: ByteArray): String = Base64.encodeToString(bytes, Base64.NO_WRAP) + private fun decode(value: String): ByteArray = Base64.decode(value, Base64.NO_WRAP) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/security/KnownPeers.kt b/app/src/main/java/cc/skysparkle/matewave/security/KnownPeers.kt new file mode 100644 index 0000000..140bef0 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/security/KnownPeers.kt @@ -0,0 +1,95 @@ +package cc.skysparkle.matewave.security + +import android.content.Context +import cc.skysparkle.matewave.network.NetworkLog +import org.json.JSONObject + +enum class TrustResult { + TRUSTED, + + FIRST_SEEN, + + IMPERSONATION, + + BAD_SIGNATURE, + + UNSIGNED +} + +/** + * Trust-on-first-use key pinning: the first public key seen for a player ID is stored, + * and later profiles for that ID must be signed with the same key. + */ +class KnownPeers(context: Context) { + private val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + fun publicKeyOf(userId: String): String? = prefs.getString(key(userId), null) + + fun verifyAndRemember( + userId: String, + publicKey: String?, + signedData: String, + signature: String? + ): TrustResult { + if (publicKey.isNullOrBlank() || signature.isNullOrBlank()) { + if (publicKeyOf(userId) != null) { + NetworkLog.log("TRUST", "Unsigned profile for known $userId rejected as impersonation") + return TrustResult.IMPERSONATION + } + return TrustResult.UNSIGNED + } + if (!DeviceKeys.verify(publicKey, signedData, signature)) { + NetworkLog.log("TRUST", "Signature mismatch for $userId") + return TrustResult.BAD_SIGNATURE + } + + val known = publicKeyOf(userId) + return when { + known == null -> { + prefs.edit().putString(key(userId), publicKey).apply() + TrustResult.FIRST_SEEN + } + known == publicKey -> TrustResult.TRUSTED + else -> { + NetworkLog.log("TRUST", "Impersonation attempt for $userId rejected") + TrustResult.IMPERSONATION + } + } + } + + fun profilePayload( + userId: String, + name: String, + elo: Int, + avatarBase64: String? = null, + backgroundBase64: String? = null, + + ephemeralKey: String = "" + ): String = + JSONObject().apply { + put("userId", userId) + put("name", name) + put("elo", elo) + put("avatar", digestOf(avatarBase64)) + put("background", digestOf(backgroundBase64)) + put("ephemeral", ephemeralKey) + }.toString() + + private fun digestOf(value: String?): String { + if (value.isNullOrEmpty()) return "" + return java.security.MessageDigest.getInstance("SHA-256") + .digest(value.toByteArray(Charsets.UTF_8)) + .take(8).joinToString("") { "%02x".format(it) } + } + + /** Forgets every pinned key, e.g. after opponents reinstalled the app. */ + fun forgetAll() { + prefs.edit().clear().apply() + } + + private fun key(userId: String) = "pk:$userId" + + private companion object { + const val PREFS = "known_peers" + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/security/SessionAuth.kt b/app/src/main/java/cc/skysparkle/matewave/security/SessionAuth.kt new file mode 100644 index 0000000..8186a2a --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/security/SessionAuth.kt @@ -0,0 +1,108 @@ +package cc.skysparkle.matewave.security + +import android.util.Base64 +import java.security.SecureRandom +import javax.crypto.Cipher +import javax.crypto.Mac +import javax.crypto.spec.GCMParameterSpec +import javax.crypto.spec.SecretKeySpec + +/** + * Per-session message protection: AES-256-GCM for confidentiality and a truncated + * HMAC-SHA256 tag bound to the sender's direction. A sliding window of sequence numbers + * rejects replays while tolerating out-of-order delivery. + */ +class SessionAuth(private val secret: ByteArray) { + private var lastAcceptedSeq = 0 + private var outgoingSeq = 0 + + private val seenInWindow = java.util.TreeSet() + + fun nextSeq(): Int { + outgoingSeq += 1 + return outgoingSeq + } + + fun acceptSeq(seq: Int): Boolean { + if (seq <= 0) return false + if (seq > lastAcceptedSeq) { + lastAcceptedSeq = seq + seenInWindow.add(seq) + + while (seenInWindow.isNotEmpty() && seenInWindow.first() < lastAcceptedSeq - REPLAY_WINDOW) { + seenInWindow.pollFirst() + } + return true + } + + if (seq < lastAcceptedSeq - REPLAY_WINDOW) return false + + return seenInWindow.add(seq) + } + + fun tag(message: String): String? = try { + val mac = Mac.getInstance(MAC_ALGORITHM) + mac.init(SecretKeySpec(secret, MAC_ALGORITHM)) + val full = mac.doFinal(message.toByteArray(Charsets.UTF_8)) + Base64.encodeToString(full.copyOfRange(0, TAG_BYTES), Base64.NO_WRAP) + } catch (e: Exception) { + null + } + + fun verify(message: String, providedTag: String?): Boolean { + if (providedTag == null) return false + val expected = tag(message) ?: return false + if (expected.length != providedTag.length) return false + var diff = 0 + for (i in expected.indices) { + diff = diff or (expected[i].code xor providedTag[i].code) + } + return diff == 0 + } + + private val encryptionKey: ByteArray by lazy { + java.security.MessageDigest.getInstance("SHA-256") + .digest(secret + KDF_LABEL) + } + + fun encrypt(plaintext: String): String? = try { + val nonce = ByteArray(GCM_NONCE_BYTES).also { SecureRandom().nextBytes(it) } + val cipher = Cipher.getInstance(CIPHER_ALGORITHM) + cipher.init( + Cipher.ENCRYPT_MODE, + SecretKeySpec(encryptionKey, "AES"), + GCMParameterSpec(GCM_TAG_BITS, nonce) + ) + val ciphertext = cipher.doFinal(plaintext.toByteArray(Charsets.UTF_8)) + Base64.encodeToString(nonce + ciphertext, Base64.NO_WRAP) + } catch (e: Exception) { + null + } + + fun decrypt(payload: String): String? = try { + val raw = Base64.decode(payload, Base64.NO_WRAP) + if (raw.size <= GCM_NONCE_BYTES) null else { + val nonce = raw.copyOfRange(0, GCM_NONCE_BYTES) + val ciphertext = raw.copyOfRange(GCM_NONCE_BYTES, raw.size) + val cipher = Cipher.getInstance(CIPHER_ALGORITHM) + cipher.init( + Cipher.DECRYPT_MODE, + SecretKeySpec(encryptionKey, "AES"), + GCMParameterSpec(GCM_TAG_BITS, nonce) + ) + String(cipher.doFinal(ciphertext), Charsets.UTF_8) + } + } catch (e: Exception) { + null + } + + private companion object { + const val MAC_ALGORITHM = "HmacSHA256" + const val TAG_BYTES = 12 + const val CIPHER_ALGORITHM = "AES/GCM/NoPadding" + const val GCM_NONCE_BYTES = 12 + const val GCM_TAG_BITS = 128 + const val REPLAY_WINDOW = 256 + val KDF_LABEL = "chessapp-session-aes-gcm-v1".toByteArray(Charsets.UTF_8) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/settings/AppLinks.kt b/app/src/main/java/cc/skysparkle/matewave/settings/AppLinks.kt new file mode 100644 index 0000000..90ccc5d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/settings/AppLinks.kt @@ -0,0 +1,19 @@ +package cc.skysparkle.matewave.settings + +import android.content.Context +import android.content.Intent +import android.net.Uri + +/** External links of the app, kept in one place. */ +object AppLinks { + const val REPOSITORY = "https://git.skysparkle.cc/kalarina/Matewave" + const val REPOSITORY_LABEL = "git.skysparkle.cc/kalarina/Matewave" + const val PRIVACY_POLICY = "https://skysparkle.cc/privacy?lang=en" + + /** Opens a link in the browser; does nothing if no app can open it. */ + fun open(context: Context, url: String) { + runCatching { + context.startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(url)).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/settings/BoardAppearance.kt b/app/src/main/java/cc/skysparkle/matewave/settings/BoardAppearance.kt new file mode 100644 index 0000000..0470541 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/settings/BoardAppearance.kt @@ -0,0 +1,50 @@ +package cc.skysparkle.matewave.settings + +import android.content.Context +import androidx.compose.ui.graphics.Color + +enum class BoardTheme(val titleRes: Int, val light: Color, val dark: Color) { + CLASSIC(cc.skysparkle.matewave.R.string.board_theme_classic, Color(0xFFEDD6B0), Color(0xFFB88762)), + GREEN(cc.skysparkle.matewave.R.string.board_theme_green, Color(0xFFEEEED2), Color(0xFF769656)), + BLUE(cc.skysparkle.matewave.R.string.board_theme_blue, Color(0xFFDEE3E6), Color(0xFF8CA2AD)), + GREY(cc.skysparkle.matewave.R.string.board_theme_grey, Color(0xFFDCDCDC), Color(0xFF8F8F8F)) +} + +class BoardAppearance(context: Context) { + private val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + var theme: BoardTheme + get() = runCatching { BoardTheme.valueOf(prefs.getString(KEY_THEME, null) ?: "") } + .getOrDefault(BoardTheme.CLASSIC) + set(value) { prefs.edit().putString(KEY_THEME, value.name).apply() } + + var showCoordinates: Boolean + get() = prefs.getBoolean(KEY_COORDS, true) + set(value) { prefs.edit().putBoolean(KEY_COORDS, value).apply() } + + var useImagePieces: Boolean + get() = prefs.getBoolean(KEY_IMAGES, true) + set(value) { prefs.edit().putBoolean(KEY_IMAGES, value).apply() } + + var showLastMove: Boolean + get() = prefs.getBoolean(KEY_LAST_MOVE, true) + set(value) { prefs.edit().putBoolean(KEY_LAST_MOVE, value).apply() } + + var showCheckHighlight: Boolean + get() = prefs.getBoolean(KEY_CHECK, true) + set(value) { prefs.edit().putBoolean(KEY_CHECK, value).apply() } + + var showOpening: Boolean + get() = prefs.getBoolean(KEY_OPENING, true) + set(value) { prefs.edit().putBoolean(KEY_OPENING, value).apply() } + + private companion object { + const val KEY_OPENING = "opening_in_game" + const val KEY_LAST_MOVE = "last_move" + const val KEY_CHECK = "check_highlight" + const val PREFS = "board_appearance" + const val KEY_THEME = "theme" + const val KEY_COORDS = "coords" + const val KEY_IMAGES = "images" + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/settings/FeedbackSettings.kt b/app/src/main/java/cc/skysparkle/matewave/settings/FeedbackSettings.kt new file mode 100644 index 0000000..ebbd894 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/settings/FeedbackSettings.kt @@ -0,0 +1,16 @@ +package cc.skysparkle.matewave.settings + +import android.content.Context + +class FeedbackSettings(context: Context) { + private val prefs = context.applicationContext.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + var vibrationEnabled: Boolean + get() = prefs.getBoolean(KEY_VIBRATION, true) + set(value) { prefs.edit().putBoolean(KEY_VIBRATION, value).apply() } + + private companion object { + const val PREFS = "feedback_settings" + const val KEY_VIBRATION = "vibration" + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/settings/Haptics.kt b/app/src/main/java/cc/skysparkle/matewave/settings/Haptics.kt new file mode 100644 index 0000000..5534d4d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/settings/Haptics.kt @@ -0,0 +1,50 @@ +package cc.skysparkle.matewave.settings + +import android.content.Context +import android.os.Build +import android.os.VibrationEffect +import android.os.Vibrator +import android.os.VibratorManager + +/** + * Vibration feedback through the Vibrator service directly, so it works even when + * system touch feedback is disabled. Controlled by the in-app vibration switch. + */ +object Haptics { + @Volatile private var appContext: Context? = null + private var vibrator: Vibrator? = null + + fun init(context: Context) { + val app = context.applicationContext + appContext = app + vibrator = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + (app.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as? VibratorManager)?.defaultVibrator + } else { + @Suppress("DEPRECATION") + app.getSystemService(Context.VIBRATOR_SERVICE) as? Vibrator + } + } + + fun select() = play(Build.VERSION_CODES.Q, predefined = VibrationEffect.EFFECT_TICK, fallbackMs = 8) + + fun move() = play(Build.VERSION_CODES.Q, predefined = VibrationEffect.EFFECT_CLICK, fallbackMs = 15) + + fun capture() = play(Build.VERSION_CODES.Q, predefined = VibrationEffect.EFFECT_HEAVY_CLICK, fallbackMs = 25) + + fun alert() = play(Build.VERSION_CODES.Q, predefined = VibrationEffect.EFFECT_DOUBLE_CLICK, fallbackMs = 40) + + private fun play(minApiForPredefined: Int, predefined: Int, fallbackMs: Long) { + val context = appContext ?: return + val v = vibrator ?: return + if (!v.hasVibrator()) return + if (!FeedbackSettings(context).vibrationEnabled) return + runCatching { + val effect = if (Build.VERSION.SDK_INT >= minApiForPredefined) { + VibrationEffect.createPredefined(predefined) + } else { + VibrationEffect.createOneShot(fallbackMs, VibrationEffect.DEFAULT_AMPLITUDE) + } + v.vibrate(effect) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/settings/LastGameSetup.kt b/app/src/main/java/cc/skysparkle/matewave/settings/LastGameSetup.kt new file mode 100644 index 0000000..eeabe4e --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/settings/LastGameSetup.kt @@ -0,0 +1,31 @@ +package cc.skysparkle.matewave.settings + +import android.content.Context +import cc.skysparkle.matewave.ai.AiDifficulty +import cc.skysparkle.matewave.clock.TimeControl +import cc.skysparkle.matewave.engine.PieceColor + +/** Remembers the last choices on setup screens, so a repeat game is one tap away. */ +class LastGameSetup(context: Context) { + private val prefs = context.applicationContext.getSharedPreferences("last_game_setup", Context.MODE_PRIVATE) + + var aiDifficulty: AiDifficulty + get() = AiDifficulty.entries.firstOrNull { it.name == prefs.getString("ai_difficulty", null) } ?: AiDifficulty.MEDIUM + set(value) { prefs.edit().putString("ai_difficulty", value.name).apply() } + + /** null means a random colour. */ + var aiColor: PieceColor? + get() = when (prefs.getString("ai_color", "W")) { "W" -> PieceColor.WHITE; "B" -> PieceColor.BLACK; else -> null } + set(value) { prefs.edit().putString("ai_color", when (value) { PieceColor.WHITE -> "W"; PieceColor.BLACK -> "B"; null -> "R" }).apply() } + + var aiTime: TimeControl + get() = timeFor("ai_time", TimeControl.RAPID_10_0) + set(value) { prefs.edit().putString("ai_time", value.label).apply() } + + var nearbyTime: TimeControl + get() = timeFor("nearby_time", TimeControl.BLITZ_5_0) + set(value) { prefs.edit().putString("nearby_time", value.label).apply() } + + private fun timeFor(key: String, default: TimeControl): TimeControl = + TimeControl.presets.firstOrNull { it.label == prefs.getString(key, null) } ?: default +} diff --git a/app/src/main/java/cc/skysparkle/matewave/share/ApkShareServer.kt b/app/src/main/java/cc/skysparkle/matewave/share/ApkShareServer.kt new file mode 100644 index 0000000..82021fa --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/share/ApkShareServer.kt @@ -0,0 +1,128 @@ +package cc.skysparkle.matewave.share + +import java.io.BufferedOutputStream +import java.io.File +import java.io.IOException +import java.io.OutputStream +import java.net.Inet4Address +import java.net.NetworkInterface +import java.net.ServerSocket +import java.net.Socket +import java.util.Locale +import kotlin.concurrent.thread + +class ApkShareServer(private val apk: File, private val appName: String) { + private val fileName = "$appName.apk" + + @Volatile + private var server: ServerSocket? = null + + fun start(): Int { + val socket = ServerSocket(0) + server = socket + thread(name = "apk-share-accept", isDaemon = true) { + while (!socket.isClosed) { + val client = try { + socket.accept() + } catch (e: IOException) { + break + } + thread(name = "apk-share-client", isDaemon = true) { serve(client) } + } + } + return socket.localPort + } + + fun stop() { + runCatching { server?.close() } + server = null + } + + private fun serve(client: Socket) { + try { + client.use { s -> + s.soTimeout = 15_000 + val input = s.getInputStream().bufferedReader(Charsets.ISO_8859_1) + val requestLine = input.readLine() ?: return + + while (true) { + val line = input.readLine() ?: break + if (line.isEmpty()) break + } + val parts = requestLine.split(' ') + val method = parts.getOrNull(0).orEmpty() + val path = parts.getOrNull(1).orEmpty().substringBefore('?') + val out = BufferedOutputStream(s.getOutputStream()) + val withBody = method == "GET" + + when { + method != "GET" && method != "HEAD" -> + sendText(out, 405, "Method Not Allowed", "Method Not Allowed", withBody) + path == "/" || path == "/index.html" -> { + val page = landingPage() + writeHeader(out, 200, "OK", "text/html; charset=utf-8", page.size.toLong()) + if (withBody) out.write(page) + } + path == "/$fileName" -> { + writeHeader( + out, 200, "OK", "application/vnd.android.package-archive", apk.length(), + "Content-Disposition: attachment; filename=\"$fileName\"\r\n" + ) + if (withBody) apk.inputStream().use { it.copyTo(out, 64 * 1024) } + } + else -> sendText(out, 404, "Not Found", "Not Found", withBody) + } + out.flush() + } + } catch (e: IOException) { + } + } + + private fun sendText(out: OutputStream, code: Int, reason: String, text: String, withBody: Boolean) { + val body = text.toByteArray(Charsets.UTF_8) + writeHeader(out, code, reason, "text/plain; charset=utf-8", body.size.toLong()) + if (withBody) out.write(body) + } + + private fun writeHeader( + out: OutputStream, code: Int, reason: String, type: String, length: Long, extra: String = "" + ) { + val header = "HTTP/1.1 $code $reason\r\n" + + "Content-Type: $type\r\n" + + "Content-Length: $length\r\n" + + "Cache-Control: no-store\r\n" + + "Connection: close\r\n" + + extra + + "\r\n" + out.write(header.toByteArray(Charsets.ISO_8859_1)) + } + + private fun landingPage(): ByteArray { + val size = String.format(Locale.US, "%.1f MB", apk.length() / 1_048_576.0) + val html = "" + + "" + + "$appName

$appName

" + + "

Android app \u00B7 APK $size

" + + "Download APK" + + "

After downloading, open the file and allow installation from this source if asked.

" + + "" + return html.toByteArray(Charsets.UTF_8) + } +} + +object LocalNetwork { + private val WIFI_PREFIXES = listOf("wlan", "swlan", "ap", "softap", "eth") + + fun wifiIpv4(): String? = runCatching { + NetworkInterface.getNetworkInterfaces()?.toList().orEmpty() + .filter { nif -> nif.isUp && !nif.isLoopback && WIFI_PREFIXES.any { nif.name.startsWith(it) } } + .flatMap { nif -> nif.inetAddresses.toList() } + .filterIsInstance() + .firstOrNull { it.isSiteLocalAddress } + ?.hostAddress + }.getOrNull() +} diff --git a/app/src/main/java/cc/skysparkle/matewave/share/ApkSharing.kt b/app/src/main/java/cc/skysparkle/matewave/share/ApkSharing.kt new file mode 100644 index 0000000..b61a08a --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/share/ApkSharing.kt @@ -0,0 +1,22 @@ +package cc.skysparkle.matewave.share + +import android.content.Context +import android.net.Uri +import androidx.core.content.FileProvider +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import java.io.File + +object ApkSharing { + fun apkFile(context: Context): File = File(context.applicationInfo.sourceDir) + + fun isSplitInstall(context: Context): Boolean = + !context.applicationInfo.splitSourceDirs.isNullOrEmpty() + + suspend fun copyForSharing(context: Context, appName: String): Uri = withContext(Dispatchers.IO) { + val dir = File(context.cacheDir, "share").apply { mkdirs() } + val target = File(dir, "$appName.apk") + apkFile(context).copyTo(target, overwrite = true) + FileProvider.getUriForFile(context, "${context.packageName}.fileprovider", target) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/stats/Stats.kt b/app/src/main/java/cc/skysparkle/matewave/stats/Stats.kt new file mode 100644 index 0000000..30b9a1f --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/stats/Stats.kt @@ -0,0 +1,76 @@ +package cc.skysparkle.matewave.stats + +import android.content.Context + +object Stats { + private const val PREFS = "chess_stats_prefs" + private const val KEY_WINS = "wins_vs_ai" + private const val KEY_GAMES = "games_played_vs_ai" + private const val KEY_STREAK = "current_streak" + private const val KEY_RATINGS = "rating_history" + private const val KEY_SOLVED = "solved_puzzles" + private const val RATING_LIMIT = 40 + + private var appContext: Context? = null + + fun init(context: Context) { + appContext = context.applicationContext + } + + private fun prefs() = appContext?.getSharedPreferences(PREFS, Context.MODE_PRIVATE) + + fun wins(): Int = prefs()?.getInt(KEY_WINS, 0) ?: 0 + + fun gamesPlayed(): Int = prefs()?.getInt(KEY_GAMES, 0) ?: 0 + + fun winPercent(): Int { + val played = gamesPlayed() + return if (played == 0) 0 else ((wins() * 100f) / played).let { Math.round(it) } + } + + fun streak(): Int = prefs()?.getInt(KEY_STREAK, 0) ?: 0 + + /** Result of a rated game against the AI or another player: 1.0 win, 0.5 draw, 0.0 loss. */ + fun recordResult(result: Double) { + val p = prefs() ?: return + val win = result >= 1.0 + p.edit() + .putInt(KEY_WINS, p.getInt(KEY_WINS, 0) + if (win) 1 else 0) + .putInt(KEY_GAMES, p.getInt(KEY_GAMES, 0) + 1) + .putInt(KEY_STREAK, if (win) p.getInt(KEY_STREAK, 0) + 1 else 0) + .apply() + } + + /** Rating change after a rated game; the statistics graph shows this history. */ + fun recordRating(before: Int, after: Int) { + val p = prefs() ?: return + val history = readRatings().ifEmpty { listOf(before) } + val ratings = (history + after).takeLast(RATING_LIMIT) + p.edit().putString(KEY_RATINGS, ratings.joinToString(",")).apply() + } + + private fun readRatings(): List { + val raw = prefs()?.getString(KEY_RATINGS, "") ?: "" + return if (raw.isBlank()) emptyList() else raw.split(",").mapNotNull { it.toIntOrNull() } + } + + fun solvedPuzzles(): Set = + prefs()?.getStringSet(KEY_SOLVED, emptySet())?.mapNotNull { it.toIntOrNull() }?.toSet() ?: emptySet() + + fun markPuzzleSolved(id: Int) { + val p = prefs() ?: return + val set = (p.getStringSet(KEY_SOLVED, emptySet()) ?: emptySet()).toMutableSet() + set.add(id.toString()) + p.edit().putStringSet(KEY_SOLVED, set).apply() + } + + /** Rating history for the graph; with fewer than two games it starts from the current rating. */ + fun ratingCurve(currentRating: Int): List { + val ratings = readRatings() + return when { + ratings.isEmpty() -> listOf(currentRating, currentRating) + ratings.size == 1 -> listOf(ratings.first(), ratings.first()) + else -> ratings + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBackground.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBackground.kt new file mode 100644 index 0000000..56cd8cd --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBackground.kt @@ -0,0 +1,81 @@ +package cc.skysparkle.matewave.ui.components + +import android.content.Context +import android.graphics.BitmapFactory +import android.util.DisplayMetrics +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ImageBitmap +import androidx.compose.ui.graphics.asImageBitmap +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import cc.skysparkle.matewave.R +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext + +private object BackgroundAssetCache { + @Volatile private var bitmap: ImageBitmap? = null + + fun cached(): ImageBitmap? = bitmap + + fun load(context: Context): ImageBitmap? { + bitmap?.let { return it } + synchronized(this) { + bitmap?.let { return it } + val metrics: DisplayMetrics = context.resources.displayMetrics + val target = maxOf(metrics.widthPixels, metrics.heightPixels).coerceAtLeast(1) + + val bounds = BitmapFactory.Options().apply { inJustDecodeBounds = true } + BitmapFactory.decodeResource(context.resources, R.drawable.bg_forest, bounds) + + var sample = 1 + while (maxOf(bounds.outWidth, bounds.outHeight) / sample > target * 2) sample *= 2 + + val options = BitmapFactory.Options().apply { + inSampleSize = sample + inPreferredConfig = android.graphics.Bitmap.Config.RGB_565 + } + val decoded = runCatching { + BitmapFactory.decodeResource(context.resources, R.drawable.bg_forest, options) + ?.asImageBitmap() + }.getOrNull() + bitmap = decoded + return decoded + } + } +} + +@Composable +fun AppBackgroundImage(modifier: Modifier = Modifier.fillMaxSize()) { + val context = LocalContext.current + + var bitmap by remember { mutableStateOf(BackgroundAssetCache.cached()) } + + LaunchedEffect(Unit) { + if (bitmap == null) { + bitmap = withContext(Dispatchers.IO) { BackgroundAssetCache.load(context) } + } + } + + val image = bitmap + if (image != null) { + Image( + bitmap = image, + contentDescription = null, + modifier = modifier, + contentScale = ContentScale.Crop + ) + } else { + Box(modifier = modifier.background(Color(0xFF101413))) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBottomBar.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBottomBar.kt new file mode 100644 index 0000000..756d5a9 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppBottomBar.kt @@ -0,0 +1,153 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.animation.animateColorAsState +import androidx.compose.animation.core.tween +import androidx.compose.foundation.Image +import androidx.compose.runtime.getValue +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.RowScope +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ColorFilter +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.theme.UiCornerRadius + +enum class BottomTab { HOME, FRIENDS, SETTINGS, ACCOUNT } + +@Composable +fun AppBottomBar( + current: BottomTab, + onHomeClick: () -> Unit, + onFriendsClick: () -> Unit, + onSettingsClick: () -> Unit, + onAccountClick: () -> Unit, + + accountAvatarBase64: String? = null +) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 24.dp, vertical = 4.dp) + .background(cc.skysparkle.matewave.ui.theme.FloatingBarFill, RoundedCornerShape(UiCornerRadius)) + .padding(vertical = 6.dp), + horizontalArrangement = Arrangement.SpaceEvenly + ) { + NavItem(iconRes = R.drawable.ic_home, label = stringResource(R.string.nav_home), active = current == BottomTab.HOME, onClick = onHomeClick) + + NavItem(iconRes = R.drawable.ic_friends, label = stringResource(R.string.nav_friends), active = current == BottomTab.FRIENDS, onClick = onFriendsClick) + NavItem(iconRes = R.drawable.ic_settings, label = stringResource(R.string.nav_settings), active = current == BottomTab.SETTINGS, onClick = onSettingsClick) + + AccountNavItem( + avatarBase64 = accountAvatarBase64, + active = current == BottomTab.ACCOUNT, + onClick = onAccountClick + ) + } +} + +@Composable +private fun RowScope.NavItem(iconRes: Int, label: String, active: Boolean, onClick: () -> Unit) { + val shape = RoundedCornerShape(UiCornerRadius) + + val highlight by animateColorAsState( + if (active) ink.copy(alpha = 0.14f) else ink.copy(alpha = 0f), + animationSpec = tween(220), + label = "navHighlight" + ) + val itemColor by animateColorAsState( + if (active) ink else ink.copy(alpha = 0.7f), + animationSpec = tween(220), + label = "navColor" + ) + Column( + modifier = Modifier + .weight(1f) + .clip(shape) + .background(highlight, shape) + .clickable(onClick = onClick) + .padding(vertical = 8.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Image( + painter = painterResource(iconRes), + contentDescription = null, + colorFilter = ColorFilter.tint(itemColor), + modifier = Modifier.size(24.dp) + ) + Spacer(Modifier.height(4.dp)) + Text( + label, + color = if (active) itemColor else Color.Transparent, + style = MaterialTheme.typography.labelMedium + ) + } +} + +@Composable +private fun RowScope.AccountNavItem(avatarBase64: String?, active: Boolean, onClick: () -> Unit) { + val shape = RoundedCornerShape(UiCornerRadius) + val bitmap = rememberChatImage(avatarBase64, AVATAR_MAX_DIMENSION_PX) + val highlight by animateColorAsState( + if (active) ink.copy(alpha = 0.14f) else ink.copy(alpha = 0f), + animationSpec = tween(220), + label = "navHighlight" + ) + val itemColor by animateColorAsState( + if (active) ink else ink.copy(alpha = 0.7f), + animationSpec = tween(220), + label = "navColor" + ) + Column( + modifier = Modifier + .weight(1f) + .clip(shape) + .background(highlight, shape) + .clickable(onClick = onClick) + .padding(vertical = 8.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + if (bitmap != null) { + Image( + bitmap = bitmap, + contentDescription = null, + contentScale = ContentScale.Crop, + modifier = Modifier.size(24.dp).clip(CircleShape) + ) + } else { + Image( + painter = painterResource(R.drawable.ic_default_avatar), + contentDescription = null, + colorFilter = ColorFilter.tint(itemColor), + modifier = Modifier.size(24.dp) + ) + } + Spacer(Modifier.height(4.dp)) + Text( + stringResource(R.string.account_title), + color = if (active) itemColor else Color.Transparent, + style = MaterialTheme.typography.labelMedium + ) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/AppDialog.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppDialog.kt new file mode 100644 index 0000000..44ac68a --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppDialog.kt @@ -0,0 +1,184 @@ +package cc.skysparkle.matewave.ui.components + +import android.os.Build +import android.view.WindowManager +import androidx.compose.animation.core.FastOutSlowInEasing +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.tween +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.SideEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.draw.drawBehind +import androidx.compose.ui.graphics.graphicsLayer +import androidx.compose.ui.platform.LocalView +import androidx.compose.ui.window.DialogProperties +import androidx.compose.ui.window.DialogWindowProvider +import cc.skysparkle.matewave.ui.theme.DialogScrimColor +import cc.skysparkle.matewave.ui.theme.ink +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ColumnScope +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.RowScope +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.layout.WindowInsets +import androidx.compose.foundation.layout.safeDrawing +import androidx.compose.foundation.layout.windowInsetsPadding +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import androidx.compose.ui.window.Dialog + +val DialogSurface = Color(0xFF262B29) +val DialogAccent = Color(0xFF93DBA3) +val DialogShape = RoundedCornerShape(28.dp) + +@Composable +fun AppDialog( + onDismissRequest: () -> Unit, + title: String? = null, + actions: (@Composable RowScope.() -> Unit)? = null, + content: @Composable ColumnScope.() -> Unit = {} +) { + Dialog( + onDismissRequest = onDismissRequest, + + properties = DialogProperties(usePlatformDefaultWidth = false, decorFitsSystemWindows = false) + ) { + val window = (LocalView.current.parent as? DialogWindowProvider)?.window + SideEffect { + window?.let { w -> + w.setDimAmount(0f) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + runCatching { + if (w.windowManager.isCrossWindowBlurEnabled) { + w.addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND) + w.attributes = w.attributes.apply { blurBehindRadius = 24 } + } + } + } + } + } + + var shown by remember { mutableStateOf(false) } + LaunchedEffect(Unit) { shown = true } + val progress by animateFloatAsState( + targetValue = if (shown) 1f else 0f, + animationSpec = tween(durationMillis = 240, easing = FastOutSlowInEasing), + label = "dialogAppear" + ) + val scrim = DialogScrimColor + + Box( + modifier = Modifier + .fillMaxSize() + .drawBehind { drawRect(scrim.copy(alpha = scrim.alpha * progress)) } + .clickable( + interactionSource = remember { MutableInteractionSource() }, + indication = null, + onClick = onDismissRequest + ), + contentAlignment = Alignment.Center + ) { + Column( + modifier = Modifier + .windowInsetsPadding(WindowInsets.safeDrawing) + .padding(horizontal = 24.dp, vertical = 16.dp) + .fillMaxWidth() + .widthIn(max = 560.dp) + .graphicsLayer { + alpha = progress + val s = 0.92f + 0.08f * progress + scaleX = s + scaleY = s + translationY = (1f - progress) * 24.dp.toPx() + } + .clip(DialogShape) + .background(DialogSurface) + + .clickable( + interactionSource = remember { MutableInteractionSource() }, + indication = null + ) { } + .padding(start = 24.dp, end = 16.dp, top = 24.dp, bottom = 16.dp) + ) { + if (title != null) { + Text( + title, + color = ink, + style = MaterialTheme.typography.headlineSmall, + modifier = Modifier.padding(end = 8.dp) + ) + Spacer(Modifier.height(16.dp)) + } + // Long content scrolls between the fixed title and buttons. + Column( + modifier = Modifier + .weight(1f, fill = false) + .fillMaxWidth() + .verticalScroll(rememberScrollState()) + .padding(end = 8.dp), + verticalArrangement = Arrangement.spacedBy(12.dp), + content = content + ) + if (actions != null) { + Spacer(Modifier.height(24.dp)) + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(4.dp, Alignment.End), + verticalAlignment = Alignment.CenterVertically, + content = actions + ) + } + } + } + } +} + +@Composable +fun DialogText(text: String, modifier: Modifier = Modifier) { + Text( + text, + color = ink.copy(alpha = 0.78f), + style = MaterialTheme.typography.bodyLarge, + modifier = modifier + ) +} + +@Composable +fun DialogAction( + text: String, + onClick: () -> Unit, + enabled: Boolean = true, + color: Color = DialogAccent +) { + Text( + text, + color = if (enabled) color else color.copy(alpha = 0.4f), + style = MaterialTheme.typography.titleSmall, + modifier = Modifier + .clip(RoundedCornerShape(50)) + .then(if (enabled) Modifier.clickable(onClick = onClick) else Modifier) + .padding(horizontal = 12.dp, vertical = 10.dp) + ) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/AppIcon.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppIcon.kt new file mode 100644 index 0000000..d7e4e33 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/AppIcon.kt @@ -0,0 +1,35 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ColorFilter +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp + +@Composable +fun AppIcon( + resId: Int, + size: Dp = 20.dp, + tint: Color = ink, + modifier: Modifier = Modifier, + contentDescription: String? = null +) { + Image( + painter = painterResource(resId), + contentDescription = contentDescription, + colorFilter = ColorFilter.tint(tint), + modifier = modifier.size(size) + ) +} + +@Composable +fun ButtonIcon(resId: Int, tint: Color = ink, size: Dp = 18.dp) { + AppIcon(resId, size = size, tint = tint, modifier = Modifier.padding(end = 8.dp)) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/CapturedPiecesRow.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/CapturedPiecesRow.kt new file mode 100644 index 0000000..00aee58 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/CapturedPiecesRow.kt @@ -0,0 +1,57 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.engine.Piece +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.engine.PieceType + +@Composable +fun CapturedPiecesRow( + captured: List, + capturedColor: PieceColor, + advantage: Int, + modifier: Modifier = Modifier +) { + Row( + modifier = modifier.fillMaxWidth().height(22.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Row(horizontalArrangement = Arrangement.spacedBy(3.dp), verticalAlignment = Alignment.CenterVertically) { + captured.groupBy { it }.forEach { (type, group) -> + Row(horizontalArrangement = Arrangement.spacedBy((-10).dp)) { + repeat(group.size) { + Image( + painter = painterResource(Piece(type, capturedColor).drawableRes()), + contentDescription = null, + modifier = Modifier.size(20.dp) + ) + } + } + } + } + if (advantage > 0) { + Spacer(Modifier.width(6.dp)) + Text( + "+$advantage", + color = ink.copy(alpha = 0.85f), + style = MaterialTheme.typography.labelLarge + ) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatDialog.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatDialog.kt new file mode 100644 index 0000000..70b7ee1 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatDialog.kt @@ -0,0 +1,145 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.heightIn +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.whiteOutlinedTextFieldColors +import cc.skysparkle.matewave.viewmodel.ChatEntry +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +@Composable +fun ChatDialog( + messages: List, + onSendText: (String) -> Unit, + onSendImage: (String) -> Unit, + onDismiss: () -> Unit +) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + var text by remember { mutableStateOf("") } + var sendingImage by remember { mutableStateOf(false) } + val scrollState = rememberScrollState() + + val imagePicker = rememberLauncherForActivityResult(ActivityResultContracts.GetContent()) { uri -> + if (uri == null) return@rememberLauncherForActivityResult + sendingImage = true + scope.launch { + val encoded = withContext(Dispatchers.IO) { encodeImageForChat(context, uri) } + sendingImage = false + if (encoded != null) onSendImage(encoded) + } + } + + LaunchedEffect(messages.size) { + if (messages.isNotEmpty()) scrollState.animateScrollTo(scrollState.maxValue) + } + + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.chat_title), + actions = { DialogAction(stringResource(R.string.chat_close), onDismiss) } + ) { + Column( + modifier = Modifier + .fillMaxWidth() + .heightIn(min = 120.dp, max = 320.dp) + .verticalScroll(scrollState), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { + if (messages.isEmpty()) { + DialogText(stringResource(R.string.chat_empty)) + } + messages.forEach { entry -> ChatBubble(entry) } + } + + if (sendingImage) { + GlassProgress(stringResource(R.string.chat_sending_image)) + } + + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(8.dp)) { + GlassOutlinedButton(onClick = { imagePicker.launch("image/*") }) { + AppIcon(R.drawable.ic_add_photo, size = 22.dp) + } + OutlinedTextField( + value = text, + onValueChange = { text = it }, + modifier = Modifier.weight(1f), + placeholder = { Text(stringResource(R.string.chat_input_hint), color = ink.copy(alpha = 0.5f)) }, + colors = whiteOutlinedTextFieldColors() + ) + GlassButton( + onClick = { + if (text.isNotBlank()) { + onSendText(text.trim()) + text = "" + } + }, + enabled = text.isNotBlank() + ) { + AppIcon(R.drawable.ic_arrow_forward, size = 20.dp) + } + } + } +} + +@Composable +private fun ChatBubble(entry: ChatEntry) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = if (entry.fromMe) Arrangement.End else Arrangement.Start + ) { + val shape = RoundedCornerShape(14.dp) + Column( + modifier = Modifier + .widthIn(max = 220.dp) + .background(if (entry.fromMe) ChessGreen.copy(alpha = 0.55f) else ink.copy(alpha = 0.15f), shape) + .padding(10.dp) + ) { + entry.text?.let { Text(it, color = ink) } + entry.imageBase64?.let { b64 -> + val image = rememberChatImage(b64) + if (image != null) { + Image( + bitmap = image, + contentDescription = null, + contentScale = ContentScale.Fit, + modifier = Modifier.size(180.dp) + ) + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatImage.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatImage.kt new file mode 100644 index 0000000..569d88f --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChatImage.kt @@ -0,0 +1,124 @@ +package cc.skysparkle.matewave.ui.components + +import android.content.Context +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.graphics.Matrix +import android.media.ExifInterface +import android.net.Uri +import android.util.Base64 +import androidx.compose.runtime.Composable +import androidx.compose.runtime.produceState +import androidx.compose.runtime.remember +import androidx.compose.ui.graphics.ImageBitmap +import androidx.compose.ui.graphics.asImageBitmap +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import java.io.ByteArrayOutputStream + +private const val MAX_DIMENSION_PX = 640 +private const val JPEG_QUALITY = 60 + +const val AVATAR_MAX_DIMENSION_PX = 320 +const val AVATAR_JPEG_QUALITY = 75 + +fun encodeImageForChat( + context: Context, + uri: Uri, + maxDimension: Int = MAX_DIMENSION_PX, + quality: Int = JPEG_QUALITY +): String? { + return try { + val resolver = context.contentResolver + // Read the size first and decode a reduced copy: a full camera photo would not fit in memory. + val bounds = BitmapFactory.Options().apply { inJustDecodeBounds = true } + val boundsStream = resolver.openInputStream(uri) ?: return null + boundsStream.use { BitmapFactory.decodeStream(it, null, bounds) } + if (bounds.outWidth <= 0 || bounds.outHeight <= 0) return null + var sample = 1 + while (maxOf(bounds.outWidth, bounds.outHeight) / (sample * 2) >= maxDimension) sample *= 2 + val options = BitmapFactory.Options().apply { inSampleSize = sample } + val decoded = resolver.openInputStream(uri)?.use { BitmapFactory.decodeStream(it, null, options) } ?: return null + + val rotation = runCatching { + resolver.openInputStream(uri)?.use { input -> + when (ExifInterface(input).getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL)) { + ExifInterface.ORIENTATION_ROTATE_90 -> 90f + ExifInterface.ORIENTATION_ROTATE_180 -> 180f + ExifInterface.ORIENTATION_ROTATE_270 -> 270f + else -> 0f + } + } + }.getOrNull() ?: 0f + + val scale = minOf(1f, maxDimension.toFloat() / maxOf(decoded.width, decoded.height)) + val matrix = Matrix().apply { + if (scale < 1f) postScale(scale, scale) + if (rotation != 0f) postRotate(rotation) + } + val prepared = if (scale < 1f || rotation != 0f) { + Bitmap.createBitmap(decoded, 0, 0, decoded.width, decoded.height, matrix, true) + } else { + decoded + } + + val output = ByteArrayOutputStream() + prepared.compress(Bitmap.CompressFormat.JPEG, quality, output) + Base64.encodeToString(output.toByteArray(), Base64.NO_WRAP) + } catch (e: Exception) { + null + } catch (e: OutOfMemoryError) { + null + } +} + +private object DecodedImageCache { + private val cache = object : android.util.LruCache(budgetBytes()) { + override fun sizeOf(key: String, value: Bitmap): Int = value.byteCount + } + + private fun budgetBytes(): Int = + (Runtime.getRuntime().maxMemory() / 16).toInt().coerceIn(4 shl 20, 32 shl 20) + + fun key(base64: String, maxDimension: Int) = "$maxDimension:${base64.length}:${base64.hashCode()}" + + fun get(key: String): Bitmap? = cache.get(key) + fun put(key: String, bitmap: Bitmap) { cache.put(key, bitmap) } +} + +fun decodeChatImage(base64: String, maxDimension: Int = 0): Bitmap? { + return try { + val bytes = Base64.decode(base64, Base64.NO_WRAP) + if (maxDimension <= 0) { + BitmapFactory.decodeByteArray(bytes, 0, bytes.size) + } else { + val bounds = BitmapFactory.Options().apply { inJustDecodeBounds = true } + BitmapFactory.decodeByteArray(bytes, 0, bytes.size, bounds) + var sample = 1 + while (maxOf(bounds.outWidth, bounds.outHeight) / (sample * 2) >= maxDimension) sample *= 2 + val options = BitmapFactory.Options().apply { inSampleSize = sample } + BitmapFactory.decodeByteArray(bytes, 0, bytes.size, options) + } + } catch (e: Exception) { + null + } +} + +@Composable +fun rememberChatImage(base64: String?, maxDimension: Int = 0): ImageBitmap? { + if (base64 == null) return null + val key = remember(base64, maxDimension) { DecodedImageCache.key(base64, maxDimension) } + val state = produceState( + initialValue = DecodedImageCache.get(key)?.asImageBitmap(), + key1 = key + ) { + if (value == null) { + value = withContext(Dispatchers.Default) { + val bitmap = decodeChatImage(base64, maxDimension) + if (bitmap != null) DecodedImageCache.put(key, bitmap) + bitmap?.asImageBitmap() + } + } + } + return state.value +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/ChessBoardView.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChessBoardView.kt new file mode 100644 index 0000000..0c53856 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/ChessBoardView.kt @@ -0,0 +1,341 @@ +package cc.skysparkle.matewave.ui.components + +import android.content.Context +import android.graphics.BitmapFactory +import android.graphics.Paint +import android.graphics.Typeface +import androidx.compose.foundation.Canvas +import androidx.compose.foundation.gestures.detectDragGesturesAfterLongPress +import androidx.compose.foundation.gestures.detectTapGestures +import androidx.compose.foundation.layout.aspectRatio +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.setValue +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberUpdatedState +import androidx.compose.ui.Modifier +import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.geometry.Size +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.FilterQuality +import androidx.compose.ui.graphics.ImageBitmap +import androidx.compose.ui.graphics.asImageBitmap +import androidx.compose.ui.graphics.drawscope.DrawScope +import androidx.compose.ui.graphics.drawscope.Stroke +import androidx.compose.ui.graphics.nativeCanvas +import androidx.compose.ui.graphics.toArgb +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.unit.IntOffset +import androidx.compose.ui.unit.IntSize +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Piece +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.engine.PieceType +import cc.skysparkle.matewave.settings.BoardAppearance +import cc.skysparkle.matewave.ui.theme.HighlightCheck +import cc.skysparkle.matewave.ui.theme.HighlightHint +import cc.skysparkle.matewave.ui.theme.HighlightLastMove +import cc.skysparkle.matewave.ui.theme.HighlightMove +import kotlin.math.floor +import kotlin.math.roundToInt + +private object PieceImages { + @Volatile private var cache: Array? = null + + fun get(context: Context): Array { + cache?.let { return it } + synchronized(this) { + cache?.let { return it } + val options = BitmapFactory.Options().apply { inScaled = false } + val types = PieceType.values() + val loaded = Array(PieceColor.values().size * types.size) { i -> + val piece = Piece(types[i % types.size], PieceColor.values()[i / types.size]) + BitmapFactory.decodeResource(context.resources, piece.drawableRes(), options).asImageBitmap() + } + cache = loaded + return loaded + } + } + + fun indexOf(piece: Piece): Int = piece.color.ordinal * PieceType.values().size + piece.type.ordinal +} + +@Composable +fun ChessBoardView( + board: Board, + selectedSquare: Int?, + legalTargets: List, + kingInCheckSquare: Int?, + flipped: Boolean, + onSquareClick: (Int) -> Unit, + modifier: Modifier = Modifier, + lastMove: Move? = null, + hintSquare: Int? = null, + interactionEnabled: Boolean = true, + /** A square briefly tinted to confirm or reject a move (puzzles). */ + flashSquare: Int? = null, + flashColor: Color = Color.Transparent +) { + val context = LocalContext.current + val appearance = remember { BoardAppearance(context) } + val theme = appearance.theme + val showCoords = appearance.showCoordinates + val imagePieces = appearance.useImagePieces + val showLastMove = appearance.showLastMove + val showCheck = appearance.showCheckHighlight + + val pieceImages = if (imagePieces) remember(context) { PieceImages.get(context) } else null + + val targetMask = remember(legalTargets) { + var mask = 0L + for (m in legalTargets) mask = mask or (1L shl m.to) + mask + } + + val coordPaint = remember { + Paint().apply { isAntiAlias = true; typeface = Typeface.DEFAULT_BOLD } + } + val glyphPaint = remember { + Paint().apply { isAntiAlias = true; textAlign = Paint.Align.CENTER } + } + + val currentOnSquareClick by rememberUpdatedState(onSquareClick) + val currentBoard by rememberUpdatedState(board) + val currentSelected by rememberUpdatedState(selectedSquare) + val currentTargetMask by rememberUpdatedState(targetMask) + + var dragSquare by remember { mutableStateOf(null) } + var dragPos by remember { mutableStateOf(null) } + + Canvas( + modifier = modifier + .fillMaxWidth() + .aspectRatio(1f) + .pointerInput(flipped, interactionEnabled) { + if (interactionEnabled) { + detectTapGestures { tap -> + val cellPx = size.width / 8f + val col = floor(tap.x / cellPx).toInt().coerceIn(0, 7) + val row = floor(tap.y / cellPx).toInt().coerceIn(0, 7) + val displayRank = if (flipped) row else 7 - row + val displayFile = if (flipped) 7 - col else col + currentOnSquareClick(displayRank * 8 + displayFile) + } + } + } + .pointerInput(flipped, interactionEnabled) { + if (interactionEnabled) { + detectDragGesturesAfterLongPress( + onDragStart = { start -> + val src = squareAt(start.x, start.y, size.width.toFloat(), flipped) + val piece = if (src >= 0) currentBoard.pieceAt(src) else null + + if (piece != null && piece.color == currentBoard.sideToMove) { + dragSquare = src + dragPos = start + + if (currentSelected == src) cc.skysparkle.matewave.settings.Haptics.select() + + if (currentSelected != src) currentOnSquareClick(src) + } + }, + onDrag = { change, _ -> + if (dragSquare != null) dragPos = change.position + }, + onDragEnd = { + val src = dragSquare + val pos = dragPos + dragSquare = null + dragPos = null + if (src != null && pos != null && currentSelected == src) { + val target = squareAt(pos.x, pos.y, size.width.toFloat(), flipped) + if (target >= 0 && target != src && + ((currentTargetMask shr target) and 1L) != 0L + ) { + currentOnSquareClick(target) + } + } + }, + onDragCancel = { + dragSquare = null + dragPos = null + } + ) + } + } + ) { + val cell = size.width / 8f + val lastFrom = if (showLastMove) (lastMove?.from ?: -1) else -1 + val lastTo = if (showLastMove) (lastMove?.to ?: -1) else -1 + val selected = selectedSquare ?: -1 + val checkSquare = if (showCheck) (kingInCheckSquare ?: -1) else -1 + val hint = hintSquare ?: -1 + val flash = flashSquare ?: -1 + + val dSq = dragSquare + val dPos = dragPos + val liftedSq = if (dSq != null && dPos != null && selected == dSq) dSq else -1 + val liftedAt: Offset? = if (liftedSq >= 0) dPos else null + + for (row in 0 until 8) { + for (col in 0 until 8) { + val displayRank = if (flipped) row else 7 - row + val displayFile = if (flipped) 7 - col else col + val sqIndex = displayRank * 8 + displayFile + val isLight = (displayRank + displayFile) % 2 == 1 + var color = if (isLight) theme.light else theme.dark + if (sqIndex == lastFrom || sqIndex == lastTo) color = HighlightLastMove + if (sqIndex == hint) color = HighlightHint + if (sqIndex == selected) color = HighlightMove + if (sqIndex == checkSquare) color = HighlightCheck + drawRect( + color = color, + topLeft = Offset(col * cell, row * cell), + size = Size(cell, cell) + ) + if (sqIndex == flash) { + drawRect(color = flashColor, topLeft = Offset(col * cell, row * cell), size = Size(cell, cell)) + } + + if (showCoords) { + val labelColor = if (isLight) theme.dark else theme.light + if (row == 7) { + drawCoordinate( + ('a' + displayFile).toString(), + Offset(col * cell + cell * 0.78f, row * cell + cell * 0.80f), + cell, labelColor, coordPaint + ) + } + if (col == 0) { + drawCoordinate( + (displayRank + 1).toString(), + Offset(col * cell + cell * 0.10f, row * cell + cell * 0.22f), + cell, labelColor, coordPaint + ) + } + } + if ((targetMask shr sqIndex) and 1L != 0L) { + drawCircle( + color = HighlightMove, + radius = cell * 0.14f, + center = Offset(col * cell + cell / 2, row * cell + cell / 2) + ) + } + } + } + + val pieceSize = cell * 0.86f + val inset = (cell - pieceSize) / 2f + val pieceDst = IntSize(pieceSize.roundToInt(), pieceSize.roundToInt()) + if (pieceImages == null) { + glyphPaint.textSize = cell * 0.62f + glyphPaint.color = GLYPH_COLOR + } + for (row in 0 until 8) { + for (col in 0 until 8) { + val displayRank = if (flipped) row else 7 - row + val displayFile = if (flipped) 7 - col else col + val pieceSq = displayRank * 8 + displayFile + if (pieceSq == liftedSq) continue + val piece = board.pieceAt(pieceSq) ?: continue + if (pieceImages != null) { + drawImage( + image = pieceImages[PieceImages.indexOf(piece)], + dstOffset = IntOffset( + (col * cell + inset).roundToInt(), + (row * cell + inset).roundToInt() + ), + dstSize = pieceDst, + filterQuality = FilterQuality.Medium + ) + } else { + val metrics = glyphPaint.fontMetrics + drawContext.canvas.nativeCanvas.drawText( + piece.unicode(), + col * cell + cell / 2f, + row * cell + cell / 2f - (metrics.ascent + metrics.descent) / 2f, + glyphPaint + ) + } + } + } + + if (liftedAt != null) { + val liftedPiece = board.pieceAt(liftedSq) + if (liftedPiece != null) { + val hover = squareAt(liftedAt.x, liftedAt.y, size.width, flipped) + if (hover >= 0 && ((targetMask shr hover) and 1L) != 0L) { + val hRank = hover / 8 + val hFile = hover % 8 + val hRow = if (flipped) hRank else 7 - hRank + val hCol = if (flipped) 7 - hFile else hFile + drawRect( + color = Color.White.copy(alpha = 0.75f), + topLeft = Offset(hCol * cell, hRow * cell), + size = Size(cell, cell), + style = Stroke(width = cell * 0.07f) + ) + } + val liftedSize = pieceSize * LIFT_SCALE + val cx = liftedAt.x + val cy = liftedAt.y - cell * 0.55f + drawOval( + color = Color.Black.copy(alpha = 0.30f), + topLeft = Offset(liftedAt.x - liftedSize * 0.36f, liftedAt.y + cell * 0.05f), + size = Size(liftedSize * 0.72f, liftedSize * 0.28f) + ) + if (pieceImages != null) { + val liftedDst = IntSize(liftedSize.roundToInt(), liftedSize.roundToInt()) + drawImage( + image = pieceImages[PieceImages.indexOf(liftedPiece)], + dstOffset = IntOffset( + (cx - liftedSize / 2f).roundToInt(), + (cy - liftedSize / 2f).roundToInt() + ), + dstSize = liftedDst, + filterQuality = FilterQuality.Medium + ) + } else { + glyphPaint.textSize = cell * 0.62f * LIFT_SCALE + val metrics = glyphPaint.fontMetrics + drawContext.canvas.nativeCanvas.drawText( + liftedPiece.unicode(), + cx, + cy - (metrics.ascent + metrics.descent) / 2f, + glyphPaint + ) + } + } + } + } +} + +private const val LIFT_SCALE = 1.6f + +private fun squareAt(x: Float, y: Float, boardPx: Float, flipped: Boolean): Int { + if (x < 0f || y < 0f || x >= boardPx || y >= boardPx) return -1 + val cellPx = boardPx / 8f + val col = floor(x / cellPx).toInt().coerceIn(0, 7) + val row = floor(y / cellPx).toInt().coerceIn(0, 7) + val displayRank = if (flipped) row else 7 - row + val displayFile = if (flipped) 7 - col else col + return displayRank * 8 + displayFile +} + +private val GLYPH_COLOR = Color(0xFF1B1B1B).toArgb() + +private fun DrawScope.drawCoordinate( + text: String, + position: Offset, + cell: Float, + color: Color, + paint: Paint +) { + paint.color = color.toArgb() + paint.textSize = cell * 0.20f + drawContext.canvas.nativeCanvas.drawText(text, position.x, position.y, paint) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/GlassUi.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/GlassUi.kt new file mode 100644 index 0000000..afac190 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/GlassUi.kt @@ -0,0 +1,213 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.spring +import androidx.compose.foundation.LocalIndication +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.interaction.collectIsPressedAsState +import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.runtime.getValue +import androidx.compose.runtime.remember +import androidx.compose.ui.graphics.graphicsLayer +import cc.skysparkle.matewave.ui.theme.LocalInk +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ColumnScope +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.RowScope +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.navigationBarsPadding +import androidx.compose.foundation.layout.statusBarsPadding +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.CircularProgressIndicator +import androidx.compose.material3.IconButton +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.Shape +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.PanelBorder +import cc.skysparkle.matewave.ui.theme.PanelFill +import cc.skysparkle.matewave.ui.theme.TabletMaxContentWidth +import cc.skysparkle.matewave.ui.theme.UiCornerRadius +import cc.skysparkle.matewave.ui.theme.glass + +private val UiShape: Shape = RoundedCornerShape(UiCornerRadius) + +@Composable +fun GlassScaffold( + title: String, + onBack: (() -> Unit)? = null, + actions: @Composable RowScope.() -> Unit = {}, + scrollable: Boolean = true, + + bottomBar: (@Composable () -> Unit)? = null, + /** Replaces the plain title, e.g. with the opening name and its status badge. */ + titleContent: (@Composable RowScope.() -> Unit)? = null, + content: @Composable ColumnScope.() -> Unit +) { + Box(modifier = Modifier.fillMaxSize()) { + Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.TopCenter) { + Column(modifier = Modifier.fillMaxSize().widthIn(max = TabletMaxContentWidth)) { + Row( + modifier = Modifier.fillMaxWidth().statusBarsPadding().padding(horizontal = 4.dp, vertical = 4.dp), + verticalAlignment = Alignment.CenterVertically + ) { + if (onBack != null) { + IconButton(onClick = onBack) { + AppIcon( + R.drawable.ic_arrow_back, + size = 24.dp, + contentDescription = stringResource(R.string.back) + ) + } + } else { + Spacer(Modifier.width(48.dp)) + } + if (titleContent != null) { + Row(modifier = Modifier.weight(1f), verticalAlignment = Alignment.CenterVertically, content = titleContent) + } else { + Text( + title, + color = ink, + style = MaterialTheme.typography.titleLarge, + modifier = Modifier.weight(1f) + ) + } + actions() + } + + val scrollState = rememberScrollState() + + val contentModifier = Modifier + .fillMaxWidth() + .weight(1f) + .padding(horizontal = 16.dp) + .then(if (scrollable) Modifier.verticalScroll(scrollState) else Modifier) + .then(if (bottomBar == null) Modifier.navigationBarsPadding() else Modifier) + .padding(bottom = 16.dp) + + Column( + modifier = contentModifier, + verticalArrangement = Arrangement.spacedBy(14.dp), + content = content + ) + + if (bottomBar != null) { + Box(modifier = Modifier.navigationBarsPadding()) { bottomBar() } + } + } + } + } +} + +@Composable +private fun Modifier.pressScale(interactionSource: MutableInteractionSource): Modifier { + val pressed by interactionSource.collectIsPressedAsState() + val scale by animateFloatAsState( + targetValue = if (pressed) 0.97f else 1f, + animationSpec = spring(dampingRatio = 0.6f, stiffness = 900f), + label = "pressScale" + ) + return this.graphicsLayer { scaleX = scale; scaleY = scale } +} + +@Composable +fun GlassButton( + onClick: () -> Unit, + modifier: Modifier = Modifier, + enabled: Boolean = true, + content: @Composable RowScope.() -> Unit +) { + val interaction = remember { MutableInteractionSource() } + + CompositionLocalProvider(LocalInk provides Color.White) { + Row( + modifier = modifier + .pressScale(interaction) + .alpha(if (enabled) 1f else 0.4f) + .clip(UiShape) + .background(ChessGreen) + .then( + if (enabled) Modifier.clickable( + interactionSource = interaction, + indication = LocalIndication.current, + onClick = onClick + ) else Modifier + ) + .padding(horizontal = 20.dp, vertical = 14.dp), + horizontalArrangement = Arrangement.Center, + verticalAlignment = Alignment.CenterVertically, + content = content + ) + } +} + +@Composable +fun GlassOutlinedButton( + onClick: () -> Unit, + modifier: Modifier = Modifier, + enabled: Boolean = true, + content: @Composable RowScope.() -> Unit +) { + val interaction = remember { MutableInteractionSource() } + Row( + modifier = modifier + .pressScale(interaction) + .alpha(if (enabled) 1f else 0.4f) + .clip(UiShape) + .background(PanelFill) + .border(1.dp, PanelBorder, UiShape) + .then( + if (enabled) Modifier.clickable( + interactionSource = interaction, + indication = LocalIndication.current, + onClick = onClick + ) else Modifier + ) + .padding(horizontal = 20.dp, vertical = 14.dp), + horizontalArrangement = Arrangement.Center, + verticalAlignment = Alignment.CenterVertically, + content = content + ) +} + +@Composable +fun GlassCard(modifier: Modifier = Modifier, shape: Shape = UiShape, content: @Composable ColumnScope.() -> Unit) { + Column( + modifier = modifier + .glass(shape) + .border(1.dp, PanelBorder, shape) + .padding(14.dp), + content = content + ) +} + +@Composable +fun GlassProgress(text: String) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(10.dp)) { + CircularProgressIndicator(color = ink, modifier = Modifier.padding(2.dp)) + Text(text, color = ink, style = MaterialTheme.typography.bodyMedium) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/ListUi.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/ListUi.kt new file mode 100644 index 0000000..98fb7f1 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/ListUi.kt @@ -0,0 +1,113 @@ +package cc.skysparkle.matewave.ui.components + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ColumnScope +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.RowScope +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.theme.UiCornerRadius +import cc.skysparkle.matewave.ui.theme.glass +import cc.skysparkle.matewave.ui.theme.ink + +/** Small uppercase caption above a group. */ +@Composable +fun SectionCaption(text: String, modifier: Modifier = Modifier) { + Text( + text.uppercase(), + color = ink.copy(alpha = 0.5f), + style = MaterialTheme.typography.labelMedium, + modifier = modifier.padding(start = 4.dp, top = 6.dp) + ) +} + +/** Rows of one kind in a single block, instead of a card per row. Separate rows with [ListDivider]. */ +@Composable +fun ListGroup(modifier: Modifier = Modifier, content: @Composable ColumnScope.() -> Unit) { + Column( + modifier = modifier + .fillMaxWidth() + .glass(RoundedCornerShape(UiCornerRadius)) + .padding(vertical = 2.dp), + content = content + ) +} + +@Composable +fun ListDivider(inset: Int = 52) { + Box( + Modifier + .fillMaxWidth() + .padding(start = inset.dp) + .height(1.dp) + .background(ink.copy(alpha = 0.07f)) + ) +} + +/** + * One row: optional icon or custom leading content, title with an optional subtitle, an + * optional grey value on the right, custom trailing content and a chevron when it navigates. + */ +@Composable +fun ListRow( + title: String, + modifier: Modifier = Modifier, + subtitle: String? = null, + icon: Int? = null, + iconTint: Color = ink, + titleColor: Color = ink, + subtitleColor: Color = ink.copy(alpha = 0.6f), + value: String? = null, + valueColor: Color = ink.copy(alpha = 0.55f), + chevron: Boolean = false, + leading: (@Composable () -> Unit)? = null, + trailing: (@Composable RowScope.() -> Unit)? = null, + onClick: (() -> Unit)? = null +) { + Row( + modifier = modifier + .fillMaxWidth() + .then(if (onClick != null) Modifier.clickable(onClick = onClick) else Modifier) + .padding(horizontal = 16.dp, vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + when { + leading != null -> { leading(); Spacer(Modifier.width(12.dp)) } + icon != null -> { AppIcon(icon, size = 22.dp, tint = iconTint); Spacer(Modifier.width(14.dp)) } + } + Column(modifier = Modifier.weight(1f)) { + Text(title, color = titleColor, style = MaterialTheme.typography.bodyLarge, maxLines = 2, overflow = TextOverflow.Ellipsis) + if (subtitle != null) { + Text(subtitle, color = subtitleColor, style = MaterialTheme.typography.bodySmall, maxLines = 2, overflow = TextOverflow.Ellipsis) + } + } + if (value != null) { + Spacer(Modifier.width(8.dp)) + Text(value, color = valueColor, style = MaterialTheme.typography.bodyMedium, maxLines = 1) + } + if (trailing != null) { + Spacer(Modifier.width(8.dp)) + trailing() + } + if (chevron) { + Spacer(Modifier.width(8.dp)) + AppIcon(R.drawable.ic_arrow_forward, size = 16.dp, tint = ink.copy(alpha = 0.5f)) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/MovesBar.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/MovesBar.kt new file mode 100644 index 0000000..d65df13 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/MovesBar.kt @@ -0,0 +1,132 @@ +package cc.skysparkle.matewave.ui.components + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.lazy.LazyRow +import androidx.compose.foundation.lazy.itemsIndexed +import androidx.compose.foundation.lazy.rememberLazyListState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.remember +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.openings.OpeningName +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.ink + +private data class MoveToken(val text: String, val moveIndex: Int?) + +private val BookTint = androidx.compose.ui.graphics.Color(0xFF93DBA3) +private val OutOfBookTint = androidx.compose.ui.graphics.Color(0xFFFFB86B) + +/** + * Compact move list that scrolls to the current move, with the opening name underneath. + * [currentIndex] is the number of moves played to reach the shown position. + */ +@Composable +fun MovesBar( + sans: List, + startBoard: Board, + currentIndex: Int, + opening: OpeningName?, + modifier: Modifier = Modifier, + /** Leading moves that are opening theory; they are tinted in the list. */ + bookPlies: Int = 0, + /** "Theory" or "Out of book from move N"; null hides the status. */ + bookStatus: String? = null, + inBook: Boolean = true, + onMoveClick: ((Int) -> Unit)? = null +) { + if (sans.isEmpty() && opening == null) return + val tokens = remember(sans, startBoard) { + buildList { + sans.forEachIndexed { i, san -> + val whiteMove = (startBoard.sideToMove == PieceColor.WHITE) == (i % 2 == 0) + val number = startBoard.fullmoveNumber + (i + if (startBoard.sideToMove == PieceColor.BLACK) 1 else 0) / 2 + if (whiteMove) add(MoveToken("$number.", null)) + else if (i == 0) add(MoveToken("$number…", null)) + add(MoveToken(san, i)) + } + } + } + val listState = rememberLazyListState() + LaunchedEffect(currentIndex, tokens.size) { + val target = tokens.indexOfFirst { it.moveIndex == currentIndex - 1 } + if (target >= 0) listState.animateScrollToItem(maxOf(0, target - 3)) + } + + Column(modifier = modifier.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(4.dp)) { + if (sans.isNotEmpty()) { + LazyRow(state = listState, horizontalArrangement = Arrangement.spacedBy(2.dp)) { + itemsIndexed(tokens) { _, token -> + val index = token.moveIndex + if (index == null) { + Text( + token.text, + color = ink.copy(alpha = 0.5f), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.padding(start = 6.dp, top = 4.dp, bottom = 4.dp) + ) + } else { + val current = index == currentIndex - 1 + Text( + token.text, + color = if (index < bookPlies) BookTint else ink, + fontWeight = if (current) FontWeight.Bold else FontWeight.Medium, + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier + .clip(RoundedCornerShape(8.dp)) + .then(if (current) Modifier.background(ChessGreen.copy(alpha = 0.45f)) else Modifier) + .then(if (onMoveClick != null) Modifier.clickable { onMoveClick(index + 1) } else Modifier) + .padding(horizontal = 6.dp, vertical = 4.dp) + ) + } + } + } + } + if (opening != null || bookStatus != null) { + Row(verticalAlignment = Alignment.CenterVertically) { + AppIcon(R.drawable.ic_book, size = 14.dp, tint = if (inBook) BookTint else ink.copy(alpha = 0.5f)) + Spacer(Modifier.width(6.dp)) + Text( + opening?.let { "${it.eco} · ${it.name}" } ?: "", + color = ink.copy(alpha = 0.85f), + style = MaterialTheme.typography.bodySmall, + maxLines = 1, + overflow = TextOverflow.Ellipsis, + modifier = Modifier.weight(1f, fill = false) + ) + if (bookStatus != null) { + Spacer(Modifier.width(8.dp)) + Text( + bookStatus, + color = if (inBook) BookTint else OutOfBookTint, + style = MaterialTheme.typography.labelSmall, + maxLines = 1, + modifier = Modifier + .clip(RoundedCornerShape(6.dp)) + .background((if (inBook) BookTint else OutOfBookTint).copy(alpha = 0.15f)) + .padding(horizontal = 6.dp, vertical = 2.dp) + ) + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/PermissionGate.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/PermissionGate.kt new file mode 100644 index 0000000..e36634d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/PermissionGate.kt @@ -0,0 +1,130 @@ +package cc.skysparkle.matewave.ui.components + +import android.app.Activity +import android.content.Context +import android.content.ContextWrapper +import android.content.Intent +import android.content.pm.PackageManager +import android.net.Uri +import android.provider.Settings +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.core.app.ActivityCompat +import androidx.core.content.ContextCompat +import cc.skysparkle.matewave.R + +/** + * Asks for [permissions] after a short explanation. Once Android stops showing its own prompt + * (the user declined twice), the explanation leads to the app's system settings instead, so + * the button never silently does nothing. + */ +@Composable +fun rememberPermissionRequester( + permissions: List, + rationaleTitle: String, + rationaleText: String, + onResult: (granted: Boolean) -> Unit +): () -> Unit { + val context = LocalContext.current + var showRationale by remember { mutableStateOf(false) } + var openSettings by remember { mutableStateOf(false) } + + val launcher = rememberLauncherForActivityResult(ActivityResultContracts.RequestMultiplePermissions()) { results -> + onResult(results.values.all { it }) + } + + if (showRationale) { + PermissionRationaleDialog( + title = rationaleTitle, + text = rationaleText, + confirmText = stringResource(if (openSettings) R.string.permission_open_settings else R.string.permission_allow), + onConfirm = { + showRationale = false + if (openSettings) { + openAppSettings(context) + onResult(false) + } else { + markRequested(context, permissions) + launcher.launch(permissions.toTypedArray()) + } + }, + onDismiss = { + showRationale = false + onResult(false) + } + ) + } + + return { + val allGranted = permissions.all { + ContextCompat.checkSelfPermission(context, it) == PackageManager.PERMISSION_GRANTED + } + if (allGranted) { + onResult(true) + } else { + openSettings = permanentlyDenied(context, permissions) + showRationale = true + } + } +} + +private const val REQUESTS_PREFS = "permission_requests" + +private fun markRequested(context: Context, permissions: List) { + val editor = context.getSharedPreferences(REQUESTS_PREFS, Context.MODE_PRIVATE).edit() + permissions.forEach { editor.putBoolean(it, true) } + editor.apply() +} + +/** Asked before, still denied, and Android would not show its prompt again. */ +private fun permanentlyDenied(context: Context, permissions: List): Boolean { + val activity = context.findActivity() ?: return false + val prefs = context.getSharedPreferences(REQUESTS_PREFS, Context.MODE_PRIVATE) + return permissions.any { permission -> + prefs.getBoolean(permission, false) && + ContextCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED && + !ActivityCompat.shouldShowRequestPermissionRationale(activity, permission) + } +} + +private fun openAppSettings(context: Context) { + runCatching { + context.startActivity( + Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.parse("package:${context.packageName}")) + .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + ) + } +} + +private tailrec fun Context.findActivity(): Activity? = when (this) { + is Activity -> this + is ContextWrapper -> baseContext.findActivity() + else -> null +} + +@Composable +private fun PermissionRationaleDialog( + title: String, + text: String, + confirmText: String, + onConfirm: () -> Unit, + onDismiss: () -> Unit +) { + AppDialog( + onDismissRequest = onDismiss, + title = title, + actions = { + DialogAction(stringResource(R.string.permission_not_now), onDismiss) + DialogAction(confirmText, onConfirm) + } + ) { + DialogText(text) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/PromotionDialog.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/PromotionDialog.kt new file mode 100644 index 0000000..43d453b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/PromotionDialog.kt @@ -0,0 +1,62 @@ +package cc.skysparkle.matewave.ui.components + +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.aspectRatio +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.Piece +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.engine.PieceType +import cc.skysparkle.matewave.ui.theme.PanelBorder +import cc.skysparkle.matewave.ui.theme.UiCornerRadius +import cc.skysparkle.matewave.ui.theme.ink + +/** The four promotion pieces, drawn with the same images as the board. */ +@Composable +fun PromotionDialog(color: PieceColor, onChoose: (PieceType) -> Unit, onDismiss: () -> Unit) { + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.promotion_title), + actions = { + DialogAction(stringResource(R.string.account_cancel), onDismiss, color = ink.copy(alpha = 0.75f)) + } + ) { + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(8.dp)) { + listOf(PieceType.QUEEN, PieceType.ROOK, PieceType.BISHOP, PieceType.KNIGHT).forEach { type -> + val optionShape = RoundedCornerShape(UiCornerRadius) + Box( + modifier = Modifier + .weight(1f) + .aspectRatio(1f) + .clip(optionShape) + .background(ink.copy(alpha = 0.10f)) + .border(1.dp, PanelBorder, optionShape) + .clickable { onChoose(type) } + .padding(8.dp), + contentAlignment = Alignment.Center + ) { + Image( + painter = painterResource(Piece(type, color).drawableRes()), + contentDescription = null, + modifier = Modifier.fillMaxWidth().aspectRatio(1f) + ) + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/SetupStyle.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/SetupStyle.kt new file mode 100644 index 0000000..0747367 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/SetupStyle.kt @@ -0,0 +1,58 @@ +package cc.skysparkle.matewave.ui.components + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.ui.theme.ChessGreen + +@Composable +fun SetupSectionLabel(text: String, modifier: Modifier = Modifier) { + Text( + text.uppercase(), + color = ink.copy(alpha = 0.5f), + style = MaterialTheme.typography.labelMedium, + modifier = modifier + ) +} + +@Composable +fun SetupSegmented(options: List, selectedIndex: Int, onSelect: (Int) -> Unit) { + Row( + modifier = Modifier + .fillMaxWidth() + .clip(RoundedCornerShape(50)) + .background(ink.copy(alpha = 0.08f)) + .padding(4.dp), + horizontalArrangement = Arrangement.spacedBy(4.dp) + ) { + options.forEachIndexed { index, label -> + val selected = index == selectedIndex + Box( + modifier = Modifier + .weight(1f) + .clip(RoundedCornerShape(50)) + .background(if (selected) ChessGreen.copy(alpha = 0.35f) else Color.Transparent) + .clickable { onSelect(index) } + .padding(vertical = 10.dp), + contentAlignment = Alignment.Center + ) { + Text(label, color = ink, style = MaterialTheme.typography.bodyMedium) + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/components/TimeControlGrid.kt b/app/src/main/java/cc/skysparkle/matewave/ui/components/TimeControlGrid.kt new file mode 100644 index 0000000..31430d3 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/components/TimeControlGrid.kt @@ -0,0 +1,71 @@ +package cc.skysparkle.matewave.ui.components + +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.clock.TimeControl +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.ink + +/** "10+0" from "Rapid 10+0"; the infinity sign for no limit. */ +fun TimeControl.shortLabel(): String = if (this == TimeControl.NO_LIMIT) "∞" else label.substringAfterLast(' ') + +@Composable +fun TimeControl.displayName(): String = + if (this == TimeControl.NO_LIMIT) stringResource(R.string.time_no_limit) else shortLabel() + +/** Every time control visible at once, grouped by category, instead of a clipped scrolling row. */ +@Composable +fun TimeControlGrid(selected: TimeControl, onSelect: (TimeControl) -> Unit) { + val groups = listOf( + R.string.time_cat_bullet to listOf(TimeControl.BULLET_1_0, TimeControl.BULLET_2_1), + R.string.time_cat_blitz to listOf(TimeControl.BLITZ_3_0, TimeControl.BLITZ_5_0, TimeControl.BLITZ_5_3), + R.string.time_cat_rapid to listOf(TimeControl.RAPID_10_0, TimeControl.RAPID_15_10), + R.string.time_cat_classical to listOf(TimeControl.CLASSICAL_30_0, TimeControl.CLASSICAL_30_20), + R.string.time_no_limit to listOf(TimeControl.NO_LIMIT) + ) + Column(verticalArrangement = Arrangement.spacedBy(8.dp)) { + groups.forEach { (title, options) -> + Row(verticalAlignment = Alignment.CenterVertically) { + Text( + stringResource(title), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.width(110.dp) + ) + Row(horizontalArrangement = Arrangement.spacedBy(8.dp)) { + options.forEach { tc -> + val active = tc == selected + val shape = RoundedCornerShape(50) + Text( + tc.shortLabel(), + color = ink, + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier + .clip(shape) + .background(if (active) ChessGreen.copy(alpha = 0.35f) else ink.copy(alpha = 0.08f)) + .border(1.dp, if (active) ChessGreen else ink.copy(alpha = 0.12f), shape) + .clickable { onSelect(tc) } + .padding(horizontal = 14.dp, vertical = 7.dp) + ) + } + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/AccountScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/AccountScreen.kt new file mode 100644 index 0000000..d06e2bb --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/AccountScreen.kt @@ -0,0 +1,510 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.components.ListDivider +import cc.skysparkle.matewave.ui.components.ListGroup +import cc.skysparkle.matewave.ui.components.ListRow +import cc.skysparkle.matewave.ui.components.SectionCaption +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.collectAsState + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ColorFilter +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.DialogText +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.ui.components.AppBottomBar +import cc.skysparkle.matewave.ui.components.BottomTab +import cc.skysparkle.matewave.data.ProfileStore +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.rememberChatImage +import cc.skysparkle.matewave.ui.components.encodeImageForChat +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.PanelBorder +import cc.skysparkle.matewave.ui.theme.whiteOutlinedTextFieldColors +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +@Composable +fun AccountScreen( + studyViewModel: cc.skysparkle.matewave.viewmodel.OpeningStudyViewModel, + onHomeClick: () -> Unit, + onFriendsClick: () -> Unit, + onSettingsClick: () -> Unit, + onStudyClick: () -> Unit +) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + var profile by remember { mutableStateOf(ProfileStore.get()) } + var showLevelPicker by remember { mutableStateOf(false) } + var showForgetConfirm by remember { mutableStateOf(false) } + var editingName by remember { mutableStateOf(false) } + var copied by remember { mutableStateOf(false) } + + val backgroundPicker = rememberLauncherForActivityResult(ActivityResultContracts.GetContent()) { uri -> + if (uri == null) return@rememberLauncherForActivityResult + scope.launch { + val encoded = withContext(Dispatchers.IO) { encodeImageForChat(context, uri) } + if (encoded != null) { + ProfileStore.setBackground(encoded) + profile = ProfileStore.get() + } + } + } + val avatarPicker = rememberLauncherForActivityResult(ActivityResultContracts.GetContent()) { uri -> + if (uri == null) return@rememberLauncherForActivityResult + scope.launch { + val encoded = withContext(Dispatchers.IO) { + encodeImageForChat( + context, uri, + cc.skysparkle.matewave.ui.components.AVATAR_MAX_DIMENSION_PX, + cc.skysparkle.matewave.ui.components.AVATAR_JPEG_QUALITY + ) + } + if (encoded != null) { + ProfileStore.setAvatar(encoded) + profile = ProfileStore.get() + } + } + } + + val myFingerprint = remember { + cc.skysparkle.matewave.security.DeviceKeys.publicKeyFingerprint(context) + } + + LaunchedEffect(Unit) { studyViewModel.init(context) } + val study by studyViewModel.overview.collectAsState() + var showStats by remember { mutableStateOf(false) } + var showSecurity by remember { mutableStateOf(false) } + + GlassScaffold( + title = stringResource(R.string.account_title), + onBack = null, + bottomBar = { + AppBottomBar( + current = BottomTab.ACCOUNT, + onHomeClick = onHomeClick, + onFriendsClick = onFriendsClick, + onSettingsClick = onSettingsClick, + onAccountClick = { }, + accountAvatarBase64 = profile.avatarBase64 + ) + } + ) { + androidx.compose.runtime.CompositionLocalProvider(cc.skysparkle.matewave.ui.theme.LocalInk provides Color.White) { + Box( + modifier = Modifier + .fillMaxWidth() + .height(168.dp) + .clip(RoundedCornerShape(20.dp)) + .clickable { backgroundPicker.launch("image/*") } + ) { + val bgBitmap = rememberChatImage(profile.backgroundBase64) + if (bgBitmap != null) { + Image( + bitmap = bgBitmap, + contentDescription = null, + modifier = Modifier.fillMaxWidth().height(168.dp), + contentScale = ContentScale.Crop + ) + } else { + Image( + painter = painterResource(R.drawable.bg_profile_default), + contentDescription = null, + modifier = Modifier.fillMaxWidth().height(168.dp), + contentScale = ContentScale.Crop + ) + } + + Box( + modifier = Modifier.fillMaxWidth().height(168.dp).background( + Brush.verticalGradient( + 0.0f to Color.Black.copy(alpha = 0.30f), + 0.55f to Color.Black.copy(alpha = 0.45f), + 1.0f to Color.Black.copy(alpha = 0.72f) + ) + ) + ) + + Box( + modifier = Modifier + .align(Alignment.TopEnd) + .padding(10.dp) + .size(36.dp) + .clip(CircleShape) + .background(Color.Black.copy(alpha = 0.45f)) + .clickable { backgroundPicker.launch("image/*") }, + contentAlignment = Alignment.Center + ) { + AppIcon(R.drawable.ic_add_photo, size = 20.dp) + } + + Column( + modifier = Modifier + .align(Alignment.BottomStart) + .fillMaxWidth() + .padding(horizontal = 18.dp, vertical = 16.dp) + ) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(16.dp)) { + Box { + AvatarCircle( + base64 = profile.avatarBase64, + size = 76.dp, + modifier = Modifier.clickable { avatarPicker.launch("image/*") } + ) + Box( + modifier = Modifier + .align(Alignment.BottomEnd) + .size(28.dp) + .clip(CircleShape) + .background(ChessGreen) + .clickable { avatarPicker.launch("image/*") }, + contentAlignment = Alignment.Center + ) { + AppIcon(R.drawable.ic_edit, size = 14.dp) + } + } + Column { + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Text( + profile.name, + color = ink, + fontSize = 23.sp, + fontWeight = FontWeight.SemiBold, + maxLines = 1, + overflow = TextOverflow.Ellipsis + ) + + AppIcon( + R.drawable.ic_edit, + size = 18.dp, + tint = ink.copy(alpha = 0.75f), + modifier = Modifier.clickable { editingName = true } + ) + } + Text( + stringResource(R.string.account_header_summary, profile.elo, cc.skysparkle.matewave.stats.Stats.gamesPlayed()), + color = ink.copy(alpha = 0.72f), + style = MaterialTheme.typography.bodyMedium + ) + } + } + } + } + } + + if (profile.avatarBase64 != null || profile.backgroundBase64 != null) { + Text( + stringResource(R.string.account_reset_avatar), + color = ink.copy(alpha = 0.55f), + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.clickable { + ProfileStore.resetAvatarToDefault() + ProfileStore.setBackground(null) + profile = ProfileStore.get() + } + ) + } + + if (!profile.levelChosen) { + GlassOutlinedButton(onClick = { showLevelPicker = true }, modifier = Modifier.fillMaxWidth()) { + Text(stringResource(R.string.account_choose_level), color = ink) + } + } + + // Progress: the reason to open a profile. The rating is shown here once, with its trend. + SectionCaption(stringResource(R.string.account_progress)) + ListGroup { + val curve = remember(profile.elo) { cc.skysparkle.matewave.stats.Stats.ratingCurve(profile.elo) } + ListRow( + title = stringResource(R.string.account_rating_row), + icon = R.drawable.ic_license, + iconTint = ChessGreen, + value = "${profile.elo}", + valueColor = ink, + trailing = { MiniRatingGraph(points = curve, modifier = Modifier.width(64.dp).height(24.dp)) }, + chevron = true, + onClick = { showStats = true } + ) + ListDivider() + ListRow( + title = stringResource(R.string.study_title), + icon = R.drawable.ic_crown, + value = "${study.learnedCount}/${study.courses.size} · ★${study.masteredCount}", + chevron = true, + onClick = onStudyClick + ) + ListDivider() + ListRow( + title = stringResource(R.string.puzzles_title), + icon = R.drawable.ic_puzzle, + value = stringResource(R.string.puzzle_solved_count, cc.skysparkle.matewave.stats.Stats.solvedPuzzles().size) + ) + } + + // Security folded into one row; the details live in a dialog. + if (myFingerprint != null) { + SectionCaption(stringResource(R.string.account_section_security)) + ListGroup { + ListRow( + title = stringResource(R.string.account_device_key), + icon = R.drawable.ic_key, + value = myFingerprint.take(4).uppercase() + "…" + myFingerprint.takeLast(4).uppercase(), + chevron = true, + onClick = { showSecurity = true } + ) + } + } + } + + if (showStats) StatsDialog(onDismiss = { showStats = false }) + + if (showSecurity && myFingerprint != null) { + AppDialog( + onDismissRequest = { showSecurity = false; copied = false }, + title = stringResource(R.string.account_section_security), + actions = { DialogAction(stringResource(R.string.chat_close), { showSecurity = false; copied = false }) } + ) { + Text(stringResource(R.string.account_fingerprint), color = ink.copy(alpha = 0.6f), style = MaterialTheme.typography.labelMedium) + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(10.dp)) { + Text(groupFingerprint(myFingerprint), color = ink, style = MaterialTheme.typography.bodyMedium, modifier = Modifier.weight(1f)) + AppIcon( + R.drawable.ic_copy, + size = 20.dp, + modifier = Modifier.clickable { + val clipboard = context.getSystemService(android.content.Context.CLIPBOARD_SERVICE) as android.content.ClipboardManager + clipboard.setPrimaryClip(android.content.ClipData.newPlainText("fingerprint", myFingerprint)) + copied = true + } + ) + AppIcon( + R.drawable.ic_share, + size = 20.dp, + modifier = Modifier.clickable { + val send = android.content.Intent(android.content.Intent.ACTION_SEND).apply { + type = "text/plain" + putExtra(android.content.Intent.EXTRA_TEXT, groupFingerprint(myFingerprint)) + } + context.startActivity(android.content.Intent.createChooser(send, null)) + } + ) + } + if (copied) { + Text(stringResource(R.string.account_fingerprint_copied), color = ChessGreen, style = MaterialTheme.typography.bodySmall) + } + DialogText(stringResource(R.string.account_fingerprint_explain)) + DialogText(stringResource(R.string.account_trusted_keys_hint)) + Text( + stringResource(R.string.account_forget_keys), + color = Color(0xFFFF9B9B), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier + .clickable { showSecurity = false; showForgetConfirm = true } + .padding(vertical = 6.dp) + ) + } + } + + if (editingName) { + EditNameDialog( + initial = profile.name, + onSave = { newName -> + ProfileStore.setName(newName) + profile = ProfileStore.get() + // Nearby players should see the new name right away. + cc.skysparkle.matewave.network.Transports.lan(context).republishProfile() + cc.skysparkle.matewave.network.Transports.ble(context).republishProfile() + editingName = false + }, + onDismiss = { editingName = false } + ) + } + + if (showForgetConfirm) { + ConfirmDialog( + title = stringResource(R.string.account_forget_keys), + text = stringResource(R.string.account_forget_keys_confirm), + onConfirm = { + cc.skysparkle.matewave.security.KnownPeers(context).forgetAll() + showForgetConfirm = false + }, + onDismiss = { showForgetConfirm = false } + ) + } + + if (showLevelPicker) { + LevelPickerDialog( + onChoose = { elo -> + ProfileStore.setStartingElo(elo) + profile = ProfileStore.get() + cc.skysparkle.matewave.network.Transports.lan(context).republishProfile() + showLevelPicker = false + }, + onDismiss = { showLevelPicker = false } + ) + } +} + +private const val MAX_NAME_LENGTH = 20 + +@Composable +private fun EditNameDialog(initial: String, onSave: (String) -> Unit, onDismiss: () -> Unit) { + var value by remember { mutableStateOf(initial) } + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.account_name), + actions = { + DialogAction(stringResource(R.string.account_cancel), onDismiss, color = ink.copy(alpha = 0.75f)) + DialogAction( + stringResource(R.string.account_save_name), + onClick = { if (value.isNotBlank()) onSave(value.trim()) }, + enabled = value.isNotBlank() + ) + } + ) { + OutlinedTextField( + value = value, + onValueChange = { if (it.length <= MAX_NAME_LENGTH) value = it }, + singleLine = true, + colors = whiteOutlinedTextFieldColors(), + modifier = Modifier.fillMaxWidth() + ) + Text( + "${value.length} / $MAX_NAME_LENGTH", + color = ink.copy(alpha = 0.45f), + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.fillMaxWidth(), + textAlign = TextAlign.End + ) + } +} + +private fun groupFingerprint(fingerprint: String): String = + fingerprint.uppercase().chunked(4).joinToString(" ") + +@Composable +private fun ConfirmDialog(title: String, text: String, onConfirm: () -> Unit, onDismiss: () -> Unit) { + AppDialog( + onDismissRequest = onDismiss, + title = title, + actions = { + DialogAction(stringResource(R.string.account_cancel), onDismiss, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.account_confirm), onConfirm) + } + ) { + DialogText(text) + } +} + +private data class SkillLevel(val labelRes: Int, val elo: Int) + +private val SKILL_LEVELS = listOf( + SkillLevel(R.string.skill_novice, 800), + SkillLevel(R.string.skill_amateur, 1200), + SkillLevel(R.string.skill_pro, 1800), + SkillLevel(R.string.skill_master, 2200) +) + +@Composable +private fun LevelPickerDialog(onChoose: (Int) -> Unit, onDismiss: () -> Unit) { + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.account_level_dialog_title), + actions = { + DialogAction(stringResource(R.string.account_cancel), onDismiss, color = ink.copy(alpha = 0.75f)) + } + ) { + SKILL_LEVELS.forEach { level -> + val rowShape = RoundedCornerShape(12.dp) + Row( + modifier = Modifier + .fillMaxWidth() + .clip(rowShape) + .background(ink.copy(alpha = 0.07f)) + .clickable { onChoose(level.elo) } + .padding(horizontal = 16.dp, vertical = 14.dp), + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text(stringResource(level.labelRes), color = ink, style = MaterialTheme.typography.titleMedium) + Text("~${level.elo}", color = ink.copy(alpha = 0.7f), style = MaterialTheme.typography.titleMedium) + } + } + } +} + +@Composable +fun AvatarCircle(base64: String?, size: Dp, modifier: Modifier = Modifier) { + val bitmap = rememberChatImage(base64, cc.skysparkle.matewave.ui.components.AVATAR_MAX_DIMENSION_PX) + Box( + modifier = modifier + .size(size) + .clip(CircleShape) + .background(ChessGreen.copy(alpha = 0.6f)) + .border(2.dp, PanelBorder, CircleShape), + contentAlignment = Alignment.Center + ) { + if (bitmap != null) { + Image( + bitmap = bitmap, + contentDescription = null, + modifier = Modifier.size(size).clip(CircleShape), + contentScale = ContentScale.Crop + ) + } else { + Image( + painter = painterResource(R.drawable.ic_default_avatar), + contentDescription = null, + colorFilter = ColorFilter.tint(ink), + modifier = Modifier.size(size * 0.8f) + ) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/AppearanceScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/AppearanceScreen.kt new file mode 100644 index 0000000..7f2f8a2 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/AppearanceScreen.kt @@ -0,0 +1,184 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Switch +import androidx.compose.material3.SwitchDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.foundation.Image +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.settings.BoardAppearance +import cc.skysparkle.matewave.settings.BoardTheme +import cc.skysparkle.matewave.ui.components.GlassCard +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.theme.GlassBorder + +@Composable +fun AppearanceScreen(onBack: () -> Unit) { + val context = LocalContext.current + val appearance = remember { BoardAppearance(context) } + + var theme by remember { mutableStateOf(appearance.theme) } + var coords by remember { mutableStateOf(appearance.showCoordinates) } + var images by remember { mutableStateOf(appearance.useImagePieces) } + var lastMove by remember { mutableStateOf(appearance.showLastMove) } + var checkGlow by remember { mutableStateOf(appearance.showCheckHighlight) } + var openingBar by remember { mutableStateOf(appearance.showOpening) } + + GlassScaffold(title = stringResource(R.string.appearance_title), onBack = onBack) { + Text( + stringResource(R.string.appearance_board_theme), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + + BoardTheme.entries.forEach { candidate -> + GlassCard( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 4.dp) + .clickable { + theme = candidate + appearance.theme = candidate + } + ) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(12.dp)) { + ThemePreview(candidate, showPieces = images) + Text( + stringResource(candidate.titleRes), + color = ink, + style = MaterialTheme.typography.bodyLarge, + modifier = Modifier.weight(1f) + ) + if (candidate == theme) { + cc.skysparkle.matewave.ui.components.AppIcon( + R.drawable.ic_check_box, size = 20.dp, tint = Color(0xFF7BE495) + ) + } + } + } + } + + AppearanceToggle( + title = stringResource(R.string.appearance_coordinates), + subtitle = stringResource(R.string.appearance_coordinates_hint), + checked = coords + ) { coords = it; appearance.showCoordinates = it } + + AppearanceToggle( + title = stringResource(R.string.appearance_image_pieces), + subtitle = stringResource(R.string.appearance_image_pieces_hint), + checked = images + ) { images = it; appearance.useImagePieces = it } + + AppearanceToggle( + title = stringResource(R.string.appearance_last_move), + subtitle = stringResource(R.string.appearance_last_move_hint), + checked = lastMove + ) { lastMove = it; appearance.showLastMove = it } + + AppearanceToggle( + title = stringResource(R.string.appearance_check), + subtitle = stringResource(R.string.appearance_check_hint), + checked = checkGlow + ) { checkGlow = it; appearance.showCheckHighlight = it } + + AppearanceToggle( + title = stringResource(R.string.appearance_opening_in_game), + subtitle = stringResource(R.string.appearance_opening_in_game_hint), + checked = openingBar + ) { openingBar = it; appearance.showOpening = it } + + Text( + stringResource(R.string.appearance_restart_hint), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodySmall + ) + } +} + +@Composable +private fun ThemePreview(theme: BoardTheme, showPieces: Boolean) { + val shape = RoundedCornerShape(6.dp) + Column(modifier = Modifier.size(56.dp).clip(shape).border(1.dp, GlassBorder, shape)) { + repeat(2) { row -> + Row(modifier = Modifier.weight(1f)) { + repeat(2) { col -> + val light = (row + col) % 2 == 0 + Box( + modifier = Modifier + .weight(1f) + .fillMaxWidth() + .background(if (light) theme.light else theme.dark), + contentAlignment = Alignment.Center + ) { + if (showPieces && row == 0 && col == 0) { + Image( + painter = painterResource(R.drawable.piece_white_king), + contentDescription = null, + modifier = Modifier.size(22.dp) + ) + } + if (showPieces && row == 1 && col == 1) { + Image( + painter = painterResource(R.drawable.piece_black_knight), + contentDescription = null, + modifier = Modifier.size(22.dp) + ) + } + } + } + } + } + } +} + +@Composable +private fun AppearanceToggle( + title: String, + subtitle: String, + checked: Boolean, + onCheckedChange: (Boolean) -> Unit +) { + GlassCard(modifier = Modifier.fillMaxWidth()) { + Row(verticalAlignment = Alignment.CenterVertically) { + Column(modifier = Modifier.weight(1f)) { + Text(title, color = ink, style = MaterialTheme.typography.titleMedium) + Text(subtitle, color = ink.copy(alpha = 0.7f), style = MaterialTheme.typography.bodySmall) + } + Switch( + checked = checked, + onCheckedChange = onCheckedChange, + colors = SwitchDefaults.colors( + checkedThumbColor = Color.White, + checkedTrackColor = Color(0xFF4F8A5B) + ) + ) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/ConnectionScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/ConnectionScreen.kt new file mode 100644 index 0000000..1db6021 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/ConnectionScreen.kt @@ -0,0 +1,315 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.animation.core.animateFloat + +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.width +import cc.skysparkle.matewave.ui.components.ListDivider +import cc.skysparkle.matewave.ui.components.ListGroup +import cc.skysparkle.matewave.ui.components.ListRow +import cc.skysparkle.matewave.ui.components.SectionCaption +import cc.skysparkle.matewave.ui.components.TimeControlGrid +import cc.skysparkle.matewave.ui.components.shortLabel +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.clock.TimeControl +import cc.skysparkle.matewave.data.FriendsStore +import android.bluetooth.BluetoothAdapter +import android.content.Intent +import androidx.activity.compose.rememberLauncherForActivityResult +import androidx.activity.result.contract.ActivityResultContracts +import androidx.compose.runtime.LaunchedEffect +import cc.skysparkle.matewave.network.AppPermissions +import cc.skysparkle.matewave.network.NetworkRequirements +import kotlinx.coroutines.delay +import cc.skysparkle.matewave.network.NearbyPlayer +import cc.skysparkle.matewave.network.Transports +import cc.skysparkle.matewave.network.TransportType +import cc.skysparkle.matewave.presence.LocalPresence +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.GlassButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.rememberPermissionRequester +import cc.skysparkle.matewave.ui.theme.ChessGreen + +private enum class Hint { BLUETOOTH_PERMISSION, BLUETOOTH_OFF, WIFI_OFF } + +private val WarningAmber = Color(0xFFFFC46B) + +/** A player found over either transport. */ +private data class NearbyEntry( + val name: String, + val elo: Int?, + val type: TransportType, + val address: String, + val avatar: String? +) + +@Composable +fun ConnectionScreen( + presence: LocalPresence, + onStartHost: (TimeControl) -> Unit, + onJoin: (TransportType, TimeControl, targetId: String) -> Unit, + onBack: () -> Unit +) { + val context = LocalContext.current + val last = remember { cc.skysparkle.matewave.settings.LastGameSetup(context) } + var timeControl by remember { mutableStateOf(last.nearbyTime) } + var pickTime by remember { mutableStateOf(false) } + var btPlayers by remember { mutableStateOf>(emptyList()) } + var btAllowed by remember { mutableStateOf(AppPermissions.allGranted(context, AppPermissions.nearby)) } + val profile = remember { cc.skysparkle.matewave.data.ProfileStore.get() } + val visible = remember { cc.skysparkle.matewave.presence.PresenceSettings(context).announceEnabled } + var network by remember { mutableStateOf(NetworkRequirements.check(context)) } + + fun startBluetooth() { + val ble = Transports.ble(context) + runCatching { + ble.startPresence() + ble.discoverNearby { found -> btPlayers = found } + } + } + + // Wi-Fi and Bluetooth can be switched on while the screen is open: notice it and search again. + LaunchedEffect(Unit) { + while (true) { + delay(3_000) + val now = NetworkRequirements.check(context) + if (btAllowed && now.bluetoothOn && !network.bluetoothOn) startBluetooth() + if (!now.bluetoothOn) btPlayers = emptyList() + if (now.wifiConnected && !network.wifiConnected) presence.refresh() + network = now + } + } + val enableBluetooth = rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { } + + val requestNearby = rememberPermissionRequester( + permissions = AppPermissions.nearby, + rationaleTitle = stringResource(R.string.mesh_permission_title), + rationaleText = stringResource(R.string.mesh_permission_text), + onResult = { granted -> btAllowed = granted } + ) + + // One search over both transports: Wi-Fi presence runs app-wide, Bluetooth while this screen is open. + DisposableEffect(btAllowed) { + if (btAllowed) startBluetooth() + onDispose { + if (btAllowed) runCatching { + val ble = Transports.ble(context) + ble.stopDiscovery() + ble.stopPresenceIfIdle() + } + } + } + + val peers by presence.peers.collectAsState() + val friends = remember(peers) { FriendsStore.list() } + val entries = remember(peers, btPlayers, friends) { + val lan = peers.values.map { peer -> + NearbyEntry( + name = peer.name, + elo = peer.elo, + type = TransportType.LAN, + address = peer.address, + avatar = friends.firstOrNull { it.userId == peer.playerId }?.avatarBase64 + ) + } + val lanFingerprints = peers.values.map { it.fingerprint }.filter { it.isNotEmpty() } + // The same phone seen over both channels is listed once, over Wi-Fi. Bluetooth carries + // a shorter fingerprint: the first bytes of the same key hash. + val bt = btPlayers.filter { player -> + val short = player.fingerprint + short.isNullOrEmpty() || lanFingerprints.none { it.startsWith(short) } + }.map { + NearbyEntry(name = it.name, elo = null, type = TransportType.BLUETOOTH, address = it.address, avatar = null) + } + (lan + bt).sortedBy { it.name.lowercase() } + } + + GlassScaffold( + title = stringResource(R.string.vsplayer_nearby_title), + onBack = onBack, + bottomBar = { + Row( + modifier = Modifier.fillMaxWidth().padding(horizontal = 20.dp, vertical = 12.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), + verticalAlignment = Alignment.CenterVertically + ) { + GlassButton( + onClick = { last.nearbyTime = timeControl; onStartHost(timeControl) }, + modifier = Modifier.weight(1f) + ) { + ButtonIcon(R.drawable.ic_add, size = 20.dp) + Text(stringResource(R.string.nearby_create), color = ink, style = MaterialTheme.typography.titleMedium, maxLines = 1) + } + GlassOutlinedButton(onClick = { pickTime = true }) { + Text(timeControl.shortLabel() + " ▾", color = ink, maxLines = 1) + } + } + } + ) { + SearchPulse() + Text( + if (visible) stringResource(R.string.nearby_visible_as, profile.name) else stringResource(R.string.nearby_hidden), + color = ink.copy(alpha = 0.65f), + style = MaterialTheme.typography.bodySmall, + textAlign = androidx.compose.ui.text.style.TextAlign.Center, + modifier = Modifier.fillMaxWidth() + ) + + // What keeps others from being found, each with the fix one tap away. + val hints = listOfNotNull( + Hint.BLUETOOTH_PERMISSION.takeIf { !btAllowed && network.bluetoothSupported }, + Hint.BLUETOOTH_OFF.takeIf { btAllowed && network.bluetoothSupported && !network.bluetoothOn }, + Hint.WIFI_OFF.takeIf { !network.wifiConnected } + ) + if (hints.isNotEmpty()) { + ListGroup { + hints.forEachIndexed { index, hint -> + if (index > 0) ListDivider() + when (hint) { + Hint.BLUETOOTH_PERMISSION -> ListRow( + title = stringResource(R.string.nearby_enable_bt), + icon = R.drawable.ic_bluetooth, + chevron = true, + onClick = { requestNearby() } + ) + Hint.BLUETOOTH_OFF -> ListRow( + title = stringResource(R.string.reason_bluetooth_off), + subtitle = stringResource(R.string.nearby_bt_off_hint), + icon = R.drawable.ic_bluetooth, + iconTint = WarningAmber, + chevron = true, + onClick = { + runCatching { enableBluetooth.launch(Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE)) } + } + ) + Hint.WIFI_OFF -> ListRow( + title = stringResource(R.string.reason_wifi_unavailable), + subtitle = stringResource(R.string.nearby_wifi_hint), + icon = R.drawable.ic_wifi, + iconTint = WarningAmber + ) + } + } + } + } + + if (entries.isEmpty()) { + Text( + stringResource(R.string.nearby_empty), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodyMedium, + textAlign = androidx.compose.ui.text.style.TextAlign.Center, + modifier = Modifier.fillMaxWidth().padding(top = 8.dp) + ) + } else { + SectionCaption(stringResource(R.string.nearby_players)) + ListGroup { + entries.forEachIndexed { index, entry -> + if (index > 0) ListDivider(inset = 68) + val transport = stringResource(if (entry.type == TransportType.LAN) R.string.transport_wifi else R.string.transport_bluetooth) + ListRow( + title = entry.name.ifBlank { stringResource(R.string.players_unknown_name) }, + subtitle = listOfNotNull(entry.elo?.toString(), transport).joinToString(" · "), + leading = { AvatarCircle(base64 = entry.avatar, size = 40.dp) }, + trailing = { + AppIcon( + if (entry.type == TransportType.LAN) R.drawable.ic_wifi_local else R.drawable.ic_bluetooth, + size = 16.dp, + tint = ink.copy(alpha = 0.5f) + ) + Spacer(Modifier.width(8.dp)) + Text( + stringResource(R.string.players_play), + color = Color.White, + style = MaterialTheme.typography.labelLarge, + modifier = Modifier + .clip(RoundedCornerShape(50)) + .background(ChessGreen) + .clickable { onJoin(entry.type, timeControl, entry.address) } + .padding(horizontal = 14.dp, vertical = 6.dp) + ) + } + ) + } + } + } + } + + if (pickTime) { + AppDialog( + onDismissRequest = { pickTime = false }, + title = stringResource(R.string.time_control_label), + actions = { DialogAction(stringResource(R.string.chat_close), { pickTime = false }) } + ) { + TimeControlGrid(selected = timeControl, onSelect = { timeControl = it; last.nearbyTime = it; pickTime = false }) + } + } +} + +/** Concentric rings pulsing around the knight: the search is always running. */ +@Composable +private fun SearchPulse() { + val transition = androidx.compose.animation.core.rememberInfiniteTransition(label = "pulse") + val phase by transition.animateFloat( + initialValue = 0f, + targetValue = 1f, + animationSpec = androidx.compose.animation.core.infiniteRepeatable( + androidx.compose.animation.core.tween(1800, easing = androidx.compose.animation.core.LinearEasing) + ), + label = "phase" + ) + Column(modifier = Modifier.fillMaxWidth().padding(top = 8.dp), horizontalAlignment = Alignment.CenterHorizontally) { + Box(modifier = Modifier.size(120.dp), contentAlignment = Alignment.Center) { + androidx.compose.foundation.Canvas(modifier = Modifier.size(120.dp)) { + for (k in 0 until 3) { + val p = (phase + k / 3f) % 1f + drawCircle( + color = ChessGreen.copy(alpha = (1f - p) * 0.45f), + radius = size.minDimension / 2f * (0.3f + 0.7f * p), + style = androidx.compose.ui.graphics.drawscope.Stroke(width = 2.dp.toPx()) + ) + } + } + androidx.compose.foundation.Image( + painter = androidx.compose.ui.res.painterResource(R.drawable.piece_white_knight), + contentDescription = null, + modifier = Modifier.size(40.dp) + ) + } + Text(stringResource(R.string.nearby_searching), color = ink, style = MaterialTheme.typography.titleMedium) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/FriendsScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/FriendsScreen.kt new file mode 100644 index 0000000..0b5b9d2 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/FriendsScreen.kt @@ -0,0 +1,330 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.components.ListDivider +import cc.skysparkle.matewave.ui.components.ListGroup +import cc.skysparkle.matewave.ui.components.ListRow +import cc.skysparkle.matewave.ui.components.SectionCaption +import cc.skysparkle.matewave.ui.components.SetupSegmented +import cc.skysparkle.matewave.ui.components.GlassButton +import androidx.compose.foundation.layout.Spacer + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.foundation.layout.height +import androidx.compose.ui.window.Dialog +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.data.FriendEntry +import cc.skysparkle.matewave.data.FriendsStore +import cc.skysparkle.matewave.presence.LocalPresence +import cc.skysparkle.matewave.ui.components.AppBottomBar +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.BottomTab +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.theme.ChessGreen + +@Composable +fun FriendsScreen( + presence: LocalPresence, + onHomeClick: () -> Unit, + onSettingsClick: () -> Unit, + onAccountClick: () -> Unit, + onPlay: () -> Unit = {} +) { + var onlineOnly by remember { mutableStateOf(false) } + var version by remember { mutableStateOf(0) } + var opened by remember { mutableStateOf(null) } + + val myProfile = remember { cc.skysparkle.matewave.data.ProfileStore.get() } + + val peers by presence.peers.collectAsState() + val friends = remember(peers, version) { FriendsStore.list() } + + // Fresh search on opening, then refresh "5 min ago" labels while the screen is visible. + androidx.compose.runtime.LaunchedEffect(Unit) { + presence.refresh() + while (true) { + kotlinx.coroutines.delay(30_000) + version++ + } + } + + GlassScaffold( + title = stringResource(R.string.friends_title), + onBack = null, + bottomBar = { + AppBottomBar( + current = BottomTab.FRIENDS, + onHomeClick = onHomeClick, + onFriendsClick = { }, + onSettingsClick = onSettingsClick, + onAccountClick = onAccountClick, + accountAvatarBase64 = myProfile.avatarBase64 + ) + } + ) { + val savedIds = friends.map { it.userId }.toSet() + val strangers = peers.values.filter { it.playerId !in savedIds } + + if (friends.isEmpty() && strangers.isEmpty()) { + // Empty state with the action that fills the list. + Spacer(Modifier.height(24.dp)) + Text(stringResource(R.string.friends_nobody_title), color = ink, style = MaterialTheme.typography.titleMedium) + Text(stringResource(R.string.friends_nobody_hint), color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodyMedium) + GlassButton(onClick = onPlay, modifier = Modifier.fillMaxWidth()) { + Text(stringResource(R.string.friends_play_nearby), color = ink) + } + return@GlassScaffold + } + + SetupSegmented( + options = listOf(stringResource(R.string.friends_filter_all), stringResource(R.string.friends_filter_online)), + selectedIndex = if (onlineOnly) 1 else 0 + ) { onlineOnly = it == 1 } + + val visible = friends + .filter { !onlineOnly || presence.isOnline(it.userId) } + .sortedWith(compareByDescending { presence.isOnline(it.userId) }.thenByDescending { it.lastPlayedMs }) + val favorites = visible.filter { it.favorite } + val others = visible.filter { !it.favorite } + + FriendGroup( + title = stringResource(R.string.friends_group_favorites), + list = favorites, + isOnline = presence::isOnline, + onOpen = { opened = it }, + onToggleFavorite = { FriendsStore.toggleFavorite(it.userId); version++ }, + onPlay = onPlay + ) + FriendGroup( + title = if (favorites.isNotEmpty()) stringResource(R.string.friends_group_others) else null, + list = others, + isOnline = presence::isOnline, + onOpen = { opened = it }, + onToggleFavorite = { FriendsStore.toggleFavorite(it.userId); version++ }, + onPlay = onPlay + ) + + if (strangers.isNotEmpty()) { + SectionCaption(stringResource(R.string.friends_group_nearby)) + ListGroup { + strangers.sortedBy { it.name }.forEachIndexed { index, peer -> + if (index > 0) ListDivider(inset = 68) + ListRow( + title = displayName(peer.name, peer.playerId), + subtitle = stringResource(R.string.friends_rating, peer.elo), + leading = { AvatarCircle(base64 = null, size = 40.dp) }, + trailing = { PlayChip(onPlay) } + ) + } + } + } + + if (visible.isEmpty() && strangers.isEmpty()) { + Text(stringResource(R.string.friends_filter_empty), color = ink.copy(alpha = 0.6f), style = MaterialTheme.typography.bodyMedium) + } + + opened?.let { friend -> + FriendCard(friend = friend, online = presence.isOnline(friend.userId), onDismiss = { opened = null }) + } + } +} + +@Composable +private fun FriendGroup( + title: String?, + list: List, + isOnline: (String) -> Boolean, + onOpen: (FriendEntry) -> Unit, + onToggleFavorite: (FriendEntry) -> Unit, + onPlay: () -> Unit +) { + if (list.isEmpty()) return + if (title != null) SectionCaption(title) + ListGroup { + list.forEachIndexed { index, friend -> + if (index > 0) ListDivider(inset = 68) + FriendRow( + friend = friend, + online = isOnline(friend.userId), + onOpen = { onOpen(friend) }, + onToggleFavorite = { onToggleFavorite(friend) }, + onPlay = onPlay + ) + } + } +} + +/** + * Players who never set a name are all called "Player"; a short piece of their id tells them + * apart in the list. + */ +@Composable +private fun displayName(name: String, id: String): String { + val default = stringResource(R.string.player_default_name) + val generic = name.isBlank() || name == default || name == "Player" + return if (generic) "${name.ifBlank { default }} · ${id.filter { it.isLetterOrDigit() }.take(4).uppercase()}" else name +} + +@Composable +private fun PlayChip(onClick: () -> Unit) { + Text( + stringResource(R.string.friends_play), + color = Color.White, + style = MaterialTheme.typography.labelLarge, + modifier = Modifier + .clip(RoundedCornerShape(50)) + .background(ChessGreen) + .clickable(onClick = onClick) + .padding(horizontal = 14.dp, vertical = 6.dp) + ) +} + +@Composable +private fun FriendCard(friend: FriendEntry, online: Boolean, onDismiss: () -> Unit) { + Dialog(onDismissRequest = onDismiss) { + Column( + modifier = Modifier + .clip(cc.skysparkle.matewave.ui.components.DialogShape) + .background(cc.skysparkle.matewave.ui.components.DialogSurface) + ) { + androidx.compose.runtime.CompositionLocalProvider(cc.skysparkle.matewave.ui.theme.LocalInk provides Color.White) { + Box(modifier = Modifier.fillMaxWidth().height(150.dp)) { + val bg = cc.skysparkle.matewave.ui.components.rememberChatImage(friend.backgroundBase64) + if (bg != null) { + androidx.compose.foundation.Image( + bitmap = bg, + contentDescription = null, + modifier = Modifier.fillMaxWidth().height(150.dp), + contentScale = androidx.compose.ui.layout.ContentScale.Crop + ) + } else { + androidx.compose.foundation.Image( + painter = androidx.compose.ui.res.painterResource(R.drawable.bg_profile_default), + contentDescription = null, + modifier = Modifier.fillMaxWidth().height(150.dp), + contentScale = androidx.compose.ui.layout.ContentScale.Crop + ) + } + Box( + modifier = Modifier.fillMaxWidth().height(150.dp).background( + androidx.compose.ui.graphics.Brush.verticalGradient( + 0f to Color.Black.copy(alpha = 0.15f), + 1f to Color.Black.copy(alpha = 0.75f) + ) + ) + ) + Row( + modifier = Modifier.align(Alignment.BottomStart).padding(16.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(12.dp) + ) { + AvatarCircle(base64 = friend.avatarBase64, size = 64.dp) + Column { + Text(friend.name, color = ink, style = MaterialTheme.typography.titleLarge) + Text( + stringResource(R.string.friends_rating, friend.elo), + color = ink.copy(alpha = 0.75f), + style = MaterialTheme.typography.bodyMedium + ) + } + } + } + } + Column(modifier = Modifier.padding(16.dp), verticalArrangement = Arrangement.spacedBy(10.dp)) { + Text( + if (online) stringResource(R.string.friends_online) + else lastSeenText(maxOf(friend.lastPlayedMs, friend.lastSeenMs)), + color = if (online) Color(0xFF7BE495) else ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodyMedium + ) + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.End) { + cc.skysparkle.matewave.ui.components.DialogAction( + stringResource(R.string.chat_close), + onClick = onDismiss + ) + } + } + } + } +} + +@Composable +private fun FriendRow( + friend: FriendEntry, + online: Boolean, + onOpen: () -> Unit, + onToggleFavorite: () -> Unit, + onPlay: () -> Unit +) { + ListRow( + title = displayName(friend.name, friend.userId), + subtitle = stringResource(R.string.friends_rating, friend.elo) + " · " + + (if (online) stringResource(R.string.friends_online) else lastSeenText(maxOf(friend.lastPlayedMs, friend.lastSeenMs))), + subtitleColor = if (online) ChessGreen else ink.copy(alpha = 0.55f), + leading = { + Box { + AvatarCircle(base64 = friend.avatarBase64, size = 40.dp) + if (online) { + Box( + Modifier + .align(Alignment.BottomEnd) + .size(11.dp) + .clip(CircleShape) + .background(ChessGreen) + ) + } + } + }, + trailing = { + if (online) PlayChip(onPlay) + AppIcon( + R.drawable.ic_star, + size = 20.dp, + tint = if (friend.favorite) StarGold else ink.copy(alpha = 0.25f), + modifier = Modifier + .padding(start = 6.dp) + .clip(CircleShape) + .clickable(onClick = onToggleFavorite) + .padding(6.dp) + ) + }, + onClick = onOpen + ) +} + +@Composable +private fun lastSeenText(lastSeenMs: Long): String { + if (lastSeenMs <= 0) return stringResource(R.string.friends_offline) + val minutes = (System.currentTimeMillis() - lastSeenMs) / 60_000 + return when { + minutes < 60 -> stringResource(R.string.friends_minutes_ago, minutes.coerceAtLeast(1).toInt()) + minutes < 60 * 24 -> stringResource(R.string.friends_hours_ago, (minutes / 60).toInt()) + minutes < 60 * 48 -> stringResource(R.string.friends_yesterday) + else -> stringResource(R.string.friends_days_ago, (minutes / (60 * 24)).toInt()) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/GameScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/GameScreen.kt new file mode 100644 index 0000000..fe520dd --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/GameScreen.kt @@ -0,0 +1,570 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape + +import androidx.compose.foundation.layout.padding + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.material3.CircularProgressIndicator +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.DialogText +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.GameStatus +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.network.ConnectionState +import cc.skysparkle.matewave.ui.components.ChatDialog +import cc.skysparkle.matewave.ui.components.ChessBoardView +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.PromotionDialog +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.viewmodel.GameMode +import cc.skysparkle.matewave.viewmodel.GameUiState +import cc.skysparkle.matewave.viewmodel.GameViewModel + +@Composable +fun GameScreen(viewModel: GameViewModel, onExit: () -> Unit) { + val exitGame = { + viewModel.leaveNetworkGame() + onExit() + } + val state by viewModel.uiState.collectAsState() + var showChat by remember { mutableStateOf(false) } + val context = androidx.compose.ui.platform.LocalContext.current + val showOpeningBar = remember { cc.skysparkle.matewave.settings.BoardAppearance(context).showOpening } + + // Leaving an ongoing network game counts as a loss, so ask first; a game against the AI is saved. + var confirmLeave by remember { mutableStateOf(false) } + var confirmResign by remember { mutableStateOf(false) } + val requestExit: () -> Unit = { + val ongoing = state.status == GameStatus.ONGOING && state.gameStarted + if (ongoing && state.mode == GameMode.VS_PLAYER_NETWORK) { + confirmLeave = true + } else { + exitGame() + } + } + androidx.activity.compose.BackHandler(onBack = requestExit) + + var gameOverHidden by remember(state.status, state.opponentLeft) { mutableStateOf(false) } + + // Opening shown in the top bar: "A40 · Englund Gambit" with a THEORY / out-of-book badge. + val start = state.startBoard + val sans = state.moveSans + val showOpening = showOpeningBar && state.mode != GameMode.PUZZLE + val fromStart = remember(start) { cc.skysparkle.matewave.engine.Notation.isStandardStart(start) } + val opening = remember(sans, fromStart) { + if (fromStart) cc.skysparkle.matewave.openings.OpeningBook.openingName(sans) else null + } + val bookPlies = remember(sans, fromStart) { + if (fromStart) cc.skysparkle.matewave.openings.OpeningBook.bookDepth(sans) else 0 + } + val inBook = sans.isNotEmpty() && bookPlies >= sans.size + val bookStatus = when { + !fromStart || sans.isEmpty() -> null + inBook -> stringResource(R.string.opening_in_theory) + bookPlies < cc.skysparkle.matewave.openings.OpeningBook.MAX_TREE_PLY -> + stringResource(R.string.opening_out_of_book, bookPlies / 2 + 1) + else -> null + } + + GlassScaffold( + title = "", + onBack = requestExit, + titleContent = if (showOpening && opening != null) { + { OpeningTitle("${opening.eco} · ${opening.name}", bookStatus, inBook) } + } else null + ) { + if (state.mode == GameMode.VS_PLAYER_NETWORK) ConnectionBanner(state) + TrustBanners(state) + + val material = remember(state.board) { cc.skysparkle.matewave.engine.Material.balance(state.board) } + val bottomColor = state.myColor + val topColor = if (bottomColor == PieceColor.WHITE) PieceColor.BLACK else PieceColor.WHITE + val kingInCheckSquare = if (ChessEngine.isInCheck(state.board, state.board.sideToMove)) { + state.board.kingSquare(state.board.sideToMove) + } else null + + PlayerRow(state, topColor, isMe = false, material = material) + + ChessBoardView( + board = state.board, + selectedSquare = state.selectedSquare, + legalTargets = state.legalTargetsFromSelected, + kingInCheckSquare = kingInCheckSquare, + flipped = state.myColor == PieceColor.BLACK, + onSquareClick = viewModel::onSquareClicked, + lastMove = state.lastMove, + interactionEnabled = state.status == GameStatus.ONGOING && state.pendingPromotion == null && + (state.mode != GameMode.VS_PLAYER_NETWORK || + (state.connectionState == ConnectionState.CONNECTED && + state.handshake == cc.skysparkle.matewave.viewmodel.HandshakeState.PLAYING)) + ) + + PlayerRow(state, bottomColor, isMe = true, material = material) + + // The move ribbon: only moves here, the opening name lives in the top bar. + if (showOpening) { + cc.skysparkle.matewave.ui.components.MovesBar( + sans = sans, + startBoard = start, + currentIndex = sans.size, + opening = null, + bookPlies = bookPlies + ) + } + + androidx.compose.animation.AnimatedVisibility( + visible = state.opponentNotice == cc.skysparkle.matewave.viewmodel.OpponentNotice.DRAW_DECLINED, + enter = androidx.compose.animation.fadeIn() + androidx.compose.animation.expandVertically(), + exit = androidx.compose.animation.fadeOut() + androidx.compose.animation.shrinkVertically() + ) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(8.dp)) { + AppIcon(R.drawable.ic_draw, size = 18.dp, tint = Color(0xFFFFB86B)) + Text(stringResource(R.string.draw_declined_notice), color = ink, style = MaterialTheme.typography.bodyMedium) + } + } + androidx.compose.runtime.LaunchedEffect(state.opponentNotice) { + if (state.opponentNotice == cc.skysparkle.matewave.viewmodel.OpponentNotice.DRAW_DECLINED) { + kotlinx.coroutines.delay(NOTICE_VISIBLE_MS) + viewModel.dismissOpponentNotice() + } + } + + if (state.mode == GameMode.VS_PLAYER_NETWORK && state.status == GameStatus.ONGOING) { + // Both actions neutral: resigning must not look like the main action. + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(8.dp)) { + GlassOutlinedButton( + onClick = { viewModel.offerDraw() }, + modifier = Modifier.weight(1f), + enabled = !state.drawOfferSentByMe + ) { + Text( + if (state.drawOfferSentByMe) stringResource(R.string.draw_offer_waiting) else stringResource(R.string.offer_draw), + color = ink, + maxLines = 1 + ) + } + GlassOutlinedButton(onClick = { confirmResign = true }, modifier = Modifier.weight(1f)) { + Text(stringResource(R.string.resign), color = ink, maxLines = 1) + } + } + ChatButton( + unreadCount = state.unreadChatCount, + onClick = { viewModel.markChatRead(); showChat = true } + ) + } + + // The result dialog was closed to look at the board: one tap brings it back. + if (state.status != GameStatus.ONGOING && gameOverHidden) { + GlassOutlinedButton(onClick = { gameOverHidden = false }, modifier = Modifier.fillMaxWidth()) { + Text(stringResource(R.string.game_over_title), color = ink, maxLines = 1) + } + } + } + + if (confirmLeave) { + AppDialog( + onDismissRequest = { confirmLeave = false }, + title = stringResource(R.string.game_leave_title), + actions = { + DialogAction(stringResource(R.string.account_cancel), { confirmLeave = false }, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.game_leave_confirm), { confirmLeave = false; exitGame() }) + } + ) { + DialogText(stringResource(R.string.game_leave_network)) + } + } + + if (confirmResign) { + AppDialog( + onDismissRequest = { confirmResign = false }, + title = stringResource(R.string.game_resign_title), + actions = { + DialogAction(stringResource(R.string.account_cancel), { confirmResign = false }, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.resign), { confirmResign = false; viewModel.resign() }) + } + ) { + DialogText(stringResource(R.string.game_resign_text)) + } + } + + state.pendingPromotion?.let { + PromotionDialog( + color = state.board.sideToMove, + onChoose = viewModel::choosePromotion, + onDismiss = viewModel::cancelPromotion + ) + } + + if (state.drawOfferFromOpponent) { + IncomingDrawOfferDialog( + onAccept = { viewModel.respondToDrawOffer(true) }, + onDecline = { viewModel.respondToDrawOffer(false) } + ) + } + + if (showChat) { + ChatDialog( + messages = state.chatMessages, + onSendText = viewModel::sendChatMessage, + onSendImage = viewModel::sendChatImage, + onDismiss = { showChat = false } + ) + } + + if (state.status != GameStatus.ONGOING && !gameOverHidden) { + GameOverDialog( + state.status, state, + onRematch = { + viewModel.rematchVsAi() + }, + onExit = exitGame, + onDismiss = { gameOverHidden = true }, + onOfferRematch = { viewModel.offerRematch() } + ) + } + + if (state.rematchOfferFromOpponent) { + RematchOfferDialog( + onAccept = { viewModel.acceptRematch() }, + onDecline = { viewModel.declineRematch() } + ) + } +} + +@Composable +private fun RematchOfferDialog(onAccept: () -> Unit, onDecline: () -> Unit) { + AppDialog( + onDismissRequest = onDecline, + title = stringResource(R.string.rematch_offer_title), + actions = { + DialogAction(stringResource(R.string.rematch_decline), onDecline, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.rematch_accept), onAccept) + } + ) { + DialogText(stringResource(R.string.rematch_offer_text)) + } +} + +@Composable +private fun ChatButton(unreadCount: Int, onClick: () -> Unit) { + Box { + GlassOutlinedButton(onClick = onClick, modifier = Modifier.fillMaxWidth()) { + ButtonIcon(R.drawable.ic_chat) + Text(stringResource(R.string.chat_button), color = ink) + } + if (unreadCount > 0) { + Box( + modifier = Modifier + .align(Alignment.TopEnd) + .size(20.dp) + .clip(CircleShape) + .background(ChessGreen), + contentAlignment = Alignment.Center + ) { + Text(unreadCount.toString(), color = Color.White, fontSize = 11.sp) + } + } + } +} + +@Composable +private fun IncomingDrawOfferDialog(onAccept: () -> Unit, onDecline: () -> Unit) { + AppDialog( + onDismissRequest = onDecline, + title = stringResource(R.string.draw_offer_received_title), + actions = { + DialogAction(stringResource(R.string.decline), onDecline, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.accept), onAccept) + } + ) { + DialogText(stringResource(R.string.draw_offer_received_text)) + } +} + +@Composable +private fun GameOverDialog( + status: GameStatus, + state: GameUiState, + onRematch: () -> Unit, + onExit: () -> Unit, + onDismiss: () -> Unit, + onOfferRematch: () -> Unit = {} +) { + val colorWhite = stringResource(R.string.color_white) + val colorBlack = stringResource(R.string.color_black) + val message = when (status) { + GameStatus.CHECKMATE -> { + val winner = if (state.board.sideToMove == PieceColor.WHITE) colorBlack else colorWhite + stringResource(R.string.checkmate_winner, winner) + } + GameStatus.STALEMATE -> stringResource(R.string.stalemate) + GameStatus.DRAW_50_MOVES -> stringResource(R.string.draw_50_moves) + GameStatus.DRAW_REPETITION -> stringResource(R.string.draw_repetition) + GameStatus.DRAW_MATERIAL -> stringResource(R.string.draw_material) + GameStatus.TIMEOUT -> { + val winner = if (state.timedOutSide == PieceColor.WHITE) colorBlack else colorWhite + stringResource(R.string.timeout_winner, winner) + } + GameStatus.TIMEOUT_DRAW -> stringResource(R.string.timeout_draw) + GameStatus.RESIGNATION -> { + val winner = if (state.resignedSide == PieceColor.WHITE) colorBlack else colorWhite + stringResource(R.string.resignation_winner, winner) + } + GameStatus.DRAW_AGREEMENT -> stringResource(R.string.draw_agreement) + GameStatus.ONGOING -> return + } + + val waitingForRematch = state.mode == GameMode.VS_PLAYER_NETWORK && !state.opponentLeft && state.rematchOfferedByMe + + val shownMessage = if (state.opponentLeftMidGame) stringResource(R.string.opponent_left_win) else message + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.game_over_title), + actions = { + DialogAction(stringResource(R.string.back_to_menu_short), onExit, color = ink.copy(alpha = 0.75f)) + if (state.mode == GameMode.VS_AI) { + DialogAction(stringResource(R.string.play_again), onRematch) + } else if (state.mode == GameMode.VS_PLAYER_NETWORK && !state.opponentLeft && !waitingForRematch) { + DialogAction(stringResource(R.string.rematch_offer), onOfferRematch) + } + } + ) { + DialogText(shownMessage) + if (waitingForRematch) { + DialogText(stringResource(R.string.rematch_waiting)) + } + + if (state.opponentNotice == cc.skysparkle.matewave.viewmodel.OpponentNotice.REMATCH_DECLINED) { + Text( + stringResource(R.string.rematch_declined_notice), + color = Color(0xFFFFB86B), + style = MaterialTheme.typography.bodyMedium + ) + } + + if (state.opponentLeft && !state.opponentLeftMidGame) { + Text( + stringResource(R.string.opponent_left_after_game), + color = Color(0xFFFFB86B), + style = MaterialTheme.typography.bodyMedium + ) + } + } +} + +private const val NO_LIMIT_THRESHOLD_SECONDS = 365L * 24 * 3600 + +private const val NOTICE_VISIBLE_MS = 4_000L + +@Composable +private fun SideCaptured(material: cc.skysparkle.matewave.engine.MaterialBalance, side: PieceColor) { + cc.skysparkle.matewave.ui.components.CapturedPiecesRow( + captured = if (side == PieceColor.WHITE) material.capturedByWhite else material.capturedByBlack, + capturedColor = if (side == PieceColor.WHITE) PieceColor.BLACK else PieceColor.WHITE, + advantage = if (side == PieceColor.WHITE) material.advantage else -material.advantage + ) +} + +/** Opening name in the top bar with a small status badge underneath. */ +@Composable +private fun OpeningTitle(name: String, status: String?, inBook: Boolean) { + Column(modifier = Modifier.padding(start = 4.dp)) { + Text( + name, + color = ink, + style = MaterialTheme.typography.titleSmall, + maxLines = 1, + overflow = androidx.compose.ui.text.style.TextOverflow.Ellipsis + ) + if (status != null) { + val tint = if (inBook) ChessGreen else Color(0xFFFFB86B) + Text( + status.uppercase(), + color = tint, + style = MaterialTheme.typography.labelSmall, + maxLines = 1, + modifier = Modifier + .padding(top = 2.dp) + .clip(RoundedCornerShape(4.dp)) + .background(tint.copy(alpha = 0.15f)) + .padding(horizontal = 6.dp, vertical = 1.dp) + ) + } + } +} + +/** + * A player strip: activity dot, name and rating, captured pieces, and a large clock. The side to + * move gets a bright clock on a soft plate; the other side is dimmed. No cards around it. + */ +@Composable +private fun PlayerRow( + state: GameUiState, + side: PieceColor, + isMe: Boolean, + material: cc.skysparkle.matewave.engine.MaterialBalance +) { + val active = state.status == GameStatus.ONGOING && state.board.sideToMove == side + // Re-read after the game: the rating changes when it ends. + val profile = remember(state.status) { cc.skysparkle.matewave.data.ProfileStore.get() } + val (name, elo, avatar) = when { + isMe -> Triple(profile.name, profile.elo, profile.avatarBase64) + state.mode == GameMode.VS_AI -> Triple( + stringResource(R.string.game_ai_name, stringResource(difficultyName(state.aiDifficulty))), + cc.skysparkle.matewave.data.ProfileStore.aiNominalElo(state.aiDifficulty), + null + ) + else -> Triple( + state.opponentProfile?.name ?: stringResource(R.string.game_opponent), + state.opponentProfile?.elo, + state.opponentProfile?.avatarBase64 + ) + } + Row(modifier = Modifier.fillMaxWidth(), verticalAlignment = Alignment.CenterVertically) { + Box( + modifier = Modifier + .size(8.dp) + .clip(CircleShape) + .background(if (active) ChessGreen else ink.copy(alpha = 0.15f)) + ) + Spacer(Modifier.width(10.dp)) + AvatarCircle(base64 = avatar, size = 34.dp) + Spacer(Modifier.width(10.dp)) + Column(modifier = Modifier.weight(1f)) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + Text( + name, + color = if (active) ink else ink.copy(alpha = 0.75f), + style = MaterialTheme.typography.titleSmall, + maxLines = 1, + overflow = androidx.compose.ui.text.style.TextOverflow.Ellipsis + ) + if (!isMe && state.mode == GameMode.VS_PLAYER_NETWORK && + state.handshake == cc.skysparkle.matewave.viewmodel.HandshakeState.PLAYING && + !state.opponentUntrusted && !state.opponentUnverified + ) { + AppIcon(R.drawable.ic_encrypted, size = 14.dp, tint = ChessGreen) + } + } + if (elo != null) { + Text(stringResource(R.string.friends_elo_value, elo), color = ink.copy(alpha = 0.55f), style = MaterialTheme.typography.labelSmall) + } + SideCaptured(material, side) + } + state.clockState?.let { cs -> + BigClock(if (side == PieceColor.WHITE) cs.whiteMillis else cs.blackMillis, active) + } + } +} + +@Composable +private fun BigClock(millis: Long, active: Boolean) { + val totalSeconds = millis / 1000 + val low = active && totalSeconds < 20 + val color = when { + low -> Color(0xFFFF6B6B) + active -> ink + else -> ink.copy(alpha = 0.45f) + } + Box( + modifier = Modifier + .clip(RoundedCornerShape(10.dp)) + .background(if (active) ink.copy(alpha = 0.12f) else Color.Transparent) + .padding(horizontal = 12.dp, vertical = 6.dp), + contentAlignment = Alignment.Center + ) { + if (totalSeconds >= NO_LIMIT_THRESHOLD_SECONDS) { + AppIcon(R.drawable.ic_infinity, size = 28.dp, tint = color) + } else { + Text( + "%d:%02d".format(totalSeconds / 60, totalSeconds % 60), + color = color, + style = MaterialTheme.typography.headlineSmall, + fontWeight = androidx.compose.ui.text.font.FontWeight.SemiBold + ) + } + } +} + +@Composable +private fun ConnectionBanner(state: GameUiState) { + when (state.connectionState) { + ConnectionState.CONNECTING -> Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(8.dp)) { + CircularProgressIndicator(color = ink, strokeWidth = 2.dp, modifier = Modifier.size(16.dp)) + Text(stringResource(R.string.connecting_to_opponent), color = ink, style = MaterialTheme.typography.bodyMedium) + } + ConnectionState.FAILED -> Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + AppIcon(R.drawable.ic_error, size = 18.dp, tint = Color(0xFFFF6B6B)) + Text(stringResource(R.string.connection_failed), color = Color(0xFFFF6B6B), style = MaterialTheme.typography.bodyMedium) + } + ConnectionState.DISCONNECTED -> if (state.gameStarted) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + AppIcon(R.drawable.ic_signal_disconnected, size = 18.dp, tint = Color(0xFFFF6B6B)) + Text(stringResource(R.string.connection_lost), color = Color(0xFFFF6B6B), style = MaterialTheme.typography.bodyMedium) + } + } + ConnectionState.CONNECTED -> Unit + } +} + +@Composable +private fun TrustBanners(state: GameUiState) { + val (icon, text, color) = when { + state.opponentUntrusted -> Triple(R.drawable.ic_no_encryption, stringResource(R.string.trust_impersonation), Color(0xFFFF6B6B)) + state.opponentOutdated -> Triple(R.drawable.ic_error, stringResource(R.string.trust_outdated), Color(0xFFFF6B6B)) + state.opponentUnverified -> Triple(R.drawable.ic_no_encryption, stringResource(R.string.trust_unverified), Color(0xFFFFC46B)) + else -> Triple(0, null, Color.Unspecified) + } + if (text != null) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + AppIcon(icon, size = 16.dp, tint = color) + Text(text, color = color, style = MaterialTheme.typography.bodySmall) + } + } + state.newPeerFingerprint?.let { fingerprint -> + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + AppIcon(R.drawable.ic_key, size = 16.dp, tint = Color(0xFFFFC46B)) + Text(stringResource(R.string.trust_first_meeting, fingerprint), color = Color(0xFFFFC46B), style = MaterialTheme.typography.bodySmall) + } + } +} + +/** Name of an AI level, shared by the setup, game and home screens. */ +internal fun difficultyName(d: cc.skysparkle.matewave.ai.AiDifficulty): Int = when (d) { + cc.skysparkle.matewave.ai.AiDifficulty.EASY -> R.string.difficulty_easy + cc.skysparkle.matewave.ai.AiDifficulty.MEDIUM -> R.string.difficulty_medium + cc.skysparkle.matewave.ai.AiDifficulty.HARD -> R.string.difficulty_hard + cc.skysparkle.matewave.ai.AiDifficulty.EXPERT -> R.string.difficulty_expert +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/LicensesScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/LicensesScreen.kt new file mode 100644 index 0000000..c466c32 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/LicensesScreen.kt @@ -0,0 +1,215 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.theme.ink + +import android.content.Context +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.heightIn +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.ui.components.DialogAccent +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.GlassCard +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.SetupSectionLabel + +private data class LicenseEntry( + val name: String, + val author: String, + val version: String?, + val license: String, + val url: String, + val noteRes: Int? = null +) + +private const val APACHE = "Apache License 2.0" +private const val AOSP = "The Android Open Source Project" + +private val LIBRARIES = listOf( + LicenseEntry( + "Jetpack Compose (UI, Foundation, Material 3)", AOSP, "BOM 2026.09.00", APACHE, + "https://developer.android.com/jetpack/androidx/releases/compose" + ), + LicenseEntry( + "AndroidX Activity Compose", AOSP, "1.13.0", APACHE, + "https://developer.android.com/jetpack/androidx/releases/activity" + ), + LicenseEntry( + "AndroidX Core KTX", AOSP, "1.18.0", APACHE, + "https://developer.android.com/jetpack/androidx/releases/core" + ), + LicenseEntry( + "AndroidX Navigation Compose", AOSP, "2.9.7", APACHE, + "https://developer.android.com/jetpack/androidx/releases/navigation" + ), + LicenseEntry( + "AndroidX Lifecycle ViewModel Compose", AOSP, "2.11.0", APACHE, + "https://developer.android.com/jetpack/androidx/releases/lifecycle" + ), + LicenseEntry( + "AndroidX \u2014 other libraries (pulled in by the ones above)", AOSP, null, APACHE, + "https://developer.android.com/jetpack/androidx" + ), + LicenseEntry( + "ZXing Core (QR codes)", "ZXing authors", "3.5.4", APACHE, + "https://github.com/zxing/zxing" + ), + LicenseEntry( + "kotlinx.coroutines", "JetBrains", "1.11.0", APACHE, + "https://github.com/Kotlin/kotlinx.coroutines" + ), + LicenseEntry( + "Kotlin Standard Library", "JetBrains", null, APACHE, + "https://github.com/JetBrains/kotlin" + ) +) + +private val DATA = listOf( + LicenseEntry( + "Lichess Puzzle Database", "Lichess", null, "CC0 1.0", + "https://database.lichess.org/#puzzles", R.string.licenses_note_puzzles + ), + LicenseEntry( + "Lichess Standard Games Database (2013-05)", "Lichess", null, "CC0 1.0", + "https://database.lichess.org/#standard_games", R.string.licenses_note_games + ), + LicenseEntry( + "lichess-org/chess-openings", "Lichess contributors", null, "CC0 1.0", + "https://github.com/lichess-org/chess-openings", R.string.licenses_note_openings + ) +) + +private val ASSETS = listOf( + LicenseEntry( + "Misty forest scene with pine trees in haze", "Jean-Daniel Francoeur", null, "Pexels License", + "https://www.pexels.com/photo/misty-forest-scene-with-pine-trees-in-haze-31737036/", + R.string.licenses_note_photo + ), + LicenseEntry( + "Material Symbols", "Google", null, APACHE, + "https://iconbuddy.com/material-symbols", R.string.licenses_note_icons + ), + LicenseEntry( + "Vector Chess Pieces", "RhosGFX", null, "CC0 1.0", + "https://rhosgfx.itch.io/vector-chess-pieces", R.string.licenses_note_pieces + ) +) + +private val RADIO = listOf( + LicenseEntry( + "Radio Swiss Jazz", "SRG SSR", null, "\u00A9 SRG SSR", + "https://www.radioswissjazz.ch/en/reception/internet", R.string.licenses_note_swissjazz + ) +) + +@Composable +fun LicensesScreen(onBack: () -> Unit) { + val context = LocalContext.current + var showApache by remember { mutableStateOf(false) } + + GlassScaffold(title = stringResource(R.string.licenses_title), onBack = onBack) { + Text( + stringResource(R.string.licenses_intro), + color = ink.copy(alpha = 0.75f), + style = MaterialTheme.typography.bodyMedium + ) + + SetupSectionLabel(stringResource(R.string.licenses_group_libraries)) + LIBRARIES.forEach { entry -> LicenseCard(entry) { openUrl(context, entry.url) } } + GlassOutlinedButton(onClick = { showApache = true }, modifier = Modifier.fillMaxWidth()) { + ButtonIcon(R.drawable.ic_copyright) + Text(stringResource(R.string.licenses_apache_full), color = ink) + } + + SetupSectionLabel(stringResource(R.string.licenses_group_data)) + DATA.forEach { entry -> LicenseCard(entry) { openUrl(context, entry.url) } } + + SetupSectionLabel(stringResource(R.string.licenses_group_assets)) + ASSETS.forEach { entry -> LicenseCard(entry) { openUrl(context, entry.url) } } + + SetupSectionLabel(stringResource(R.string.licenses_group_radio)) + Text( + stringResource(R.string.licenses_radio_hint), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodySmall + ) + RADIO.forEach { entry -> LicenseCard(entry) { openUrl(context, entry.url) } } + } + + if (showApache) { + ApacheLicenseDialog(onDismiss = { showApache = false }) + } +} + +@Composable +private fun LicenseCard(entry: LicenseEntry, onClick: () -> Unit) { + GlassCard(modifier = Modifier.fillMaxWidth().clickable(onClick = onClick)) { + Row(verticalAlignment = Alignment.CenterVertically) { + Column(modifier = Modifier.weight(1f), verticalArrangement = Arrangement.spacedBy(2.dp)) { + Text(entry.name, color = ink, style = MaterialTheme.typography.titleMedium) + Text( + listOfNotNull(entry.author, entry.version).joinToString(" \u00B7 "), + color = ink.copy(alpha = 0.65f), + style = MaterialTheme.typography.bodySmall + ) + Text(entry.license, color = DialogAccent, style = MaterialTheme.typography.bodySmall) + entry.noteRes?.let { note -> + Text( + stringResource(note), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.padding(top = 6.dp) + ) + } + } + AppIcon(R.drawable.ic_arrow_forward, size = 16.dp, tint = ink.copy(alpha = 0.6f)) + } + } +} + +@Composable +private fun ApacheLicenseDialog(onDismiss: () -> Unit) { + val context = LocalContext.current + val text = remember { + runCatching { + context.resources.openRawResource(R.raw.license_apache_2_0) + .bufferedReader().use { it.readText() } + }.getOrDefault("https://www.apache.org/licenses/LICENSE-2.0") + .trim() + .split(Regex("\n\\s*\n")) + .joinToString("\n\n") { paragraph -> paragraph.lines().joinToString(" ") { it.trim() } } + } + AppDialog( + onDismissRequest = onDismiss, + title = APACHE, + actions = { DialogAction(stringResource(R.string.chat_close), onDismiss) } + ) { + Column(modifier = Modifier.fillMaxWidth().heightIn(max = 380.dp).verticalScroll(rememberScrollState())) { + Text(text, color = ink.copy(alpha = 0.78f), style = MaterialTheme.typography.bodySmall) + } + } +} + +private fun openUrl(context: Context, url: String) = cc.skysparkle.matewave.settings.AppLinks.open(context, url) diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/MainMenuScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/MainMenuScreen.kt new file mode 100644 index 0000000..f976204 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/MainMenuScreen.kt @@ -0,0 +1,371 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.foundation.layout.statusBarsPadding +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.ui.draw.clip +import androidx.compose.ui.platform.LocalContext +import cc.skysparkle.matewave.ui.components.ListDivider +import cc.skysparkle.matewave.ui.components.ListGroup +import cc.skysparkle.matewave.ui.components.ListRow +import cc.skysparkle.matewave.ui.components.SectionCaption + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.Canvas +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.navigationBarsPadding +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ColorFilter +import androidx.compose.ui.graphics.Path +import androidx.compose.ui.graphics.StrokeCap +import androidx.compose.ui.graphics.drawscope.Stroke +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.compose.foundation.Image +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.DialogText +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.stats.Stats +import cc.skysparkle.matewave.ui.components.AppBottomBar +import cc.skysparkle.matewave.ui.components.BottomTab +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.TabletMaxContentWidth +import cc.skysparkle.matewave.ui.theme.UiCornerRadius +import cc.skysparkle.matewave.ui.theme.glass +import cc.skysparkle.matewave.viewmodel.GameViewModel +import cc.skysparkle.matewave.viewmodel.ResumeInfo +import cc.skysparkle.matewave.ui.components.displayName + +@Composable +fun MainMenuScreen( + viewModel: GameViewModel, + studyViewModel: cc.skysparkle.matewave.viewmodel.OpeningStudyViewModel, + onContinueGame: () -> Unit, + onQuickGame: () -> Unit, + onVsAiClick: () -> Unit, + onPuzzlesClick: () -> Unit, + onStudyClick: () -> Unit, + onVsPlayerClick: () -> Unit, + onSettingsClick: () -> Unit, + onAccountClick: () -> Unit, + onFriendsClick: () -> Unit +) { + val context = LocalContext.current + val resumable by viewModel.resumable.collectAsState() + val ongoing = resumable + val hasOngoingGame = ongoing != null + val profile = remember { cc.skysparkle.matewave.data.ProfileStore.get() } + val lastSetup = remember { cc.skysparkle.matewave.settings.LastGameSetup(context) } + LaunchedEffect(Unit) { studyViewModel.init(context) } + val study by studyViewModel.overview.collectAsState() + + var showRatingGate by remember { mutableStateOf(false) } + + Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.TopCenter) { + Column(modifier = Modifier.fillMaxSize().widthIn(max = TabletMaxContentWidth)) { + Row( + modifier = Modifier + .fillMaxWidth() + .statusBarsPadding() + .padding(top = 16.dp, start = 20.dp, end = 20.dp, bottom = 10.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Image( + painter = painterResource(R.drawable.logo_knight), + contentDescription = null, + modifier = Modifier.size(width = 30.dp, height = 44.dp) + ) + Spacer(Modifier.width(12.dp)) + Greeting(modifier = Modifier.weight(1f)) + // The rating is always in sight. + Text( + "${profile.elo}", + color = ink, + style = MaterialTheme.typography.titleMedium, + modifier = Modifier + .clip(RoundedCornerShape(50)) + .background(ink.copy(alpha = 0.10f)) + .padding(horizontal = 12.dp, vertical = 6.dp) + ) + } + + Column( + modifier = Modifier + .weight(1f) + .fillMaxWidth() + .padding(horizontal = 20.dp) + .verticalScroll(rememberScrollState()), + verticalArrangement = Arrangement.spacedBy(14.dp) + ) { + // The most urgent thing first: an unfinished game. + if (ongoing != null) ContinueCard(ongoing, onContinueGame) + + Row(horizontalArrangement = Arrangement.spacedBy(12.dp), modifier = Modifier.fillMaxWidth()) { + ModeTile( + iconRes = R.drawable.ic_ai_app, + title = stringResource(R.string.mode_ai_title), + subtitle = stringResource(R.string.mode_ai_subtitle), + modifier = Modifier.weight(1f), + onClick = { if (profile.levelChosen) onVsAiClick() else showRatingGate = true } + ) + ModeTile( + iconRes = R.drawable.ic_profile_photo, + title = stringResource(R.string.mode_online_title), + subtitle = stringResource(R.string.mode_online_subtitle), + modifier = Modifier.weight(1f), + onClick = { if (profile.levelChosen) onVsPlayerClick() else showRatingGate = true } + ) + } + + SectionCaption(stringResource(R.string.home_today)) + ListGroup { + if (!hasOngoingGame) { + ListRow( + title = stringResource(R.string.quick_game_title), + subtitle = stringResource( + R.string.quick_game_subtitle, + stringResource(difficultyName(lastSetup.aiDifficulty)), + lastSetup.aiTime.displayName() + ), + icon = R.drawable.ic_quick_game, + iconTint = ChessGreen, + chevron = true, + onClick = { if (profile.levelChosen) onQuickGame() else showRatingGate = true } + ) + ListDivider() + } + if (study.dueCards > 0) { + ListRow( + title = stringResource(R.string.study_review_title), + subtitle = stringResource(R.string.study_review_summary, study.dueCards, study.dueCourses), + icon = R.drawable.ic_review, + iconTint = cc.skysparkle.matewave.ui.screens.StarGold, + chevron = true, + onClick = onStudyClick + ) + } else { + ListRow( + title = stringResource(R.string.study_title), + subtitle = stringResource(R.string.study_menu_subtitle), + icon = R.drawable.ic_crown, + chevron = true, + onClick = onStudyClick + ) + } + ListDivider() + ListRow( + title = stringResource(R.string.puzzles_title), + subtitle = stringResource(R.string.puzzles_subtitle), + icon = R.drawable.ic_puzzle, + chevron = true, + onClick = onPuzzlesClick + ) + } + } + + Box(modifier = Modifier.navigationBarsPadding()) { + AppBottomBar( + current = BottomTab.HOME, + onHomeClick = { }, + onFriendsClick = onFriendsClick, + onSettingsClick = onSettingsClick, + onAccountClick = onAccountClick, + accountAvatarBase64 = profile.avatarBase64 + ) + } + } + } + + if (showRatingGate) { + RatingGateDialog( + onOpenAccount = { showRatingGate = false; onAccountClick() }, + onDismiss = { showRatingGate = false } + ) + } +} + +@Composable +private fun Greeting(modifier: Modifier = Modifier) { + val hour = remember { java.util.Calendar.getInstance().get(java.util.Calendar.HOUR_OF_DAY) } + val greeting = when (hour) { + in 5..11 -> stringResource(R.string.greeting_morning) + in 12..17 -> stringResource(R.string.greeting_afternoon) + in 18..22 -> stringResource(R.string.greeting_evening) + else -> stringResource(R.string.greeting_night) + } + Column(modifier = modifier) { + Row(verticalAlignment = Alignment.CenterVertically) { + Text(greeting, color = ink, style = MaterialTheme.typography.headlineSmall) + Spacer(Modifier.width(6.dp)) + Text("👋", fontSize = 20.sp) + } + Text(stringResource(R.string.greeting_ready), color = ink.copy(alpha = 0.7f), style = MaterialTheme.typography.bodyMedium) + } +} + +/** An unfinished game against the AI: move number, whose turn and the clock, one tap to resume. */ +@Composable +private fun ContinueCard(info: ResumeInfo, onClick: () -> Unit) { + val turn = stringResource(if (info.myTurn) R.string.home_your_move else R.string.home_ai_move) + val clock = info.myMillis?.let { ms -> + val s = ms.coerceAtLeast(0) / 1000 + "%d:%02d".format(s / 60, s % 60) + } + val details = stringResource(R.string.home_continue_details, info.moveNumber, turn) + (clock?.let { " · $it" } ?: "") + Row( + modifier = Modifier + .fillMaxWidth() + .glass(RoundedCornerShape(UiCornerRadius)) + .border(1.dp, ChessGreen.copy(alpha = 0.6f), RoundedCornerShape(UiCornerRadius)) + .clickable(onClick = onClick) + .padding(16.dp), + verticalAlignment = Alignment.CenterVertically + ) { + Column(modifier = Modifier.weight(1f)) { + Text(stringResource(R.string.continue_game_title), color = ink, style = MaterialTheme.typography.titleMedium) + Text(details, color = ink.copy(alpha = 0.7f), style = MaterialTheme.typography.bodySmall) + } + Box( + modifier = Modifier.size(44.dp).clip(CircleShape).background(ChessGreen), + contentAlignment = Alignment.Center + ) { + cc.skysparkle.matewave.ui.components.AppIcon(R.drawable.ic_arrow_forward, size = 20.dp, tint = Color.White) + } + } +} + +/** One of the two equal ways to start a game. */ +@Composable +private fun ModeTile(iconRes: Int, title: String, subtitle: String, modifier: Modifier = Modifier, onClick: () -> Unit) { + Column( + modifier = modifier + .glass(RoundedCornerShape(UiCornerRadius)) + .clickable(onClick = onClick) + .padding(14.dp), + verticalArrangement = Arrangement.spacedBy(4.dp) + ) { + Image( + painter = painterResource(iconRes), + contentDescription = null, + colorFilter = ColorFilter.tint(ink), + modifier = Modifier.size(24.dp) + ) + Text(title, color = ink, style = MaterialTheme.typography.titleMedium) + Text(subtitle, color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodySmall) + } +} + +@Composable +private fun RatingGateDialog(onOpenAccount: () -> Unit, onDismiss: () -> Unit) { + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.rating_gate_title), + actions = { + DialogAction(stringResource(R.string.account_cancel), onDismiss, color = ink.copy(alpha = 0.75f)) + DialogAction(stringResource(R.string.rating_gate_open), onOpenAccount) + } + ) { + DialogText(stringResource(R.string.rating_gate_text)) + } +} + +@Composable +internal fun StatsDialog(onDismiss: () -> Unit) { + val curve = remember { Stats.ratingCurve(cc.skysparkle.matewave.data.ProfileStore.get().elo) } + AppDialog( + onDismissRequest = onDismiss, + title = stringResource(R.string.stats_dialog_title), + actions = { DialogAction(stringResource(R.string.chat_close), onDismiss) } + ) { + DialogText(stringResource(R.string.stats_dialog_summary, Stats.wins(), Stats.winPercent(), Stats.streak())) + MiniRatingGraph(points = curve, modifier = Modifier.fillMaxWidth().height(140.dp)) + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.SpaceBetween) { + Text(stringResource(R.string.stats_min, curve.min()), color = ink.copy(alpha = 0.6f), style = MaterialTheme.typography.labelMedium) + Text(stringResource(R.string.stats_now, curve.last()), color = ink, style = MaterialTheme.typography.labelMedium) + Text(stringResource(R.string.stats_max, curve.max()), color = ink.copy(alpha = 0.6f), style = MaterialTheme.typography.labelMedium) + } + Text( + stringResource(R.string.stats_graph_caption), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodySmall + ) + } +} + +@Composable +internal fun MiniRatingGraph(points: List, modifier: Modifier = Modifier) { + val lineInk = ink + Canvas(modifier = modifier) { + if (points.size < 2) return@Canvas + val minV = points.min().toFloat() + val maxV = points.max().toFloat() + val range = (maxV - minV).coerceAtLeast(1f) + val stepX = size.width / (points.size - 1) + + fun yOf(v: Int) = size.height - ((v - minV) / range) * size.height + + val gridLines = 4 + for (i in 0..gridLines) { + val y = size.height / gridLines * i + drawLine(lineInk.copy(alpha = 0.08f), Offset(0f, y), Offset(size.width, y), strokeWidth = 1f) + } + // Reference line: the rating at the start of the shown history. + val zeroY = yOf(points.first()) + drawLine(lineInk.copy(alpha = 0.3f), Offset(0f, zeroY), Offset(size.width, zeroY), strokeWidth = 1.5f) + + val line = Path().apply { + moveTo(0f, yOf(points[0])) + points.forEachIndexed { i, v -> if (i > 0) lineTo(i * stepX, yOf(v)) } + } + val fill = Path().apply { + addPath(line) + lineTo(size.width, size.height) + lineTo(0f, size.height) + close() + } + drawPath( + fill, + brush = Brush.verticalGradient(listOf(ChessGreen.copy(alpha = 0.35f), ChessGreen.copy(alpha = 0f))) + ) + drawPath(line, color = ChessGreen, style = Stroke(width = 4f, cap = StrokeCap.Round)) + + points.forEachIndexed { i, v -> + val center = Offset(i * stepX, yOf(v)) + drawCircle(color = lineInk, radius = 5f, center = center) + drawCircle(color = ChessGreen, radius = 3f, center = center) + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningStudyScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningStudyScreen.kt new file mode 100644 index 0000000..585a11f --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningStudyScreen.kt @@ -0,0 +1,301 @@ +package cc.skysparkle.matewave.ui.screens + +import android.widget.Toast +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.BoxWithConstraints +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.aspectRatio +import androidx.compose.foundation.layout.fillMaxHeight +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.openings.CourseInfo +import cc.skysparkle.matewave.openings.CourseStatus +import cc.skysparkle.matewave.openings.artRes +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.GlassButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.SetupSegmented +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.UiCornerRadius +import cc.skysparkle.matewave.ui.theme.glass +import cc.skysparkle.matewave.ui.theme.ink +import cc.skysparkle.matewave.viewmodel.OpeningStudyViewModel +import cc.skysparkle.matewave.viewmodel.StudyOverview + +val StarGold = Color(0xFFFFC857) + +@Composable +fun OpeningStudyScreen(viewModel: OpeningStudyViewModel, onBack: () -> Unit, onOpenTrainer: () -> Unit) { + val context = LocalContext.current + LaunchedEffect(Unit) { viewModel.init(context) } + val overview by viewModel.overview.collectAsState() + var side by rememberSaveable { mutableIntStateOf(0) } + + GlassScaffold( + title = stringResource(R.string.study_title), + onBack = onBack, + actions = { HeaderProgress(overview) } + ) { + val total = overview.courses.size.coerceAtLeast(1) + ProgressBar(overview.courses.sumOf { it.stars }.toFloat() / (total * 3), height = 4) + + NextAction(overview, viewModel, onOpenTrainer) + + SetupSegmented( + options = listOf(stringResource(R.string.study_for_white), stringResource(R.string.study_for_black)), + selectedIndex = side + ) { side = it } + + val lockedMessage = overview.learning?.let { stringResource(R.string.study_locked_toast, it.course.name) } + val sideColor = if (side == 0) PieceColor.WHITE else PieceColor.BLACK + BoxWithConstraints(modifier = Modifier.fillMaxWidth()) { + val columns = when { + maxWidth < 360.dp -> 2 + maxWidth < 600.dp -> 3 + else -> 4 + } + Column(verticalArrangement = Arrangement.spacedBy(14.dp)) { + overview.courses.filter { it.course.side == sideColor }.chunked(columns).forEach { row -> + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(10.dp)) { + row.forEach { info -> + CourseCard(info, Modifier.weight(1f)) { + if (viewModel.open(info.course)) onOpenTrainer() + else if (lockedMessage != null) Toast.makeText(context, lockedMessage, Toast.LENGTH_SHORT).show() + } + } + repeat(columns - row.size) { Spacer(Modifier.weight(1f)) } + } + } + } + } + } +} + +/** "3/24 ★ 1" in the top bar. */ +@Composable +private fun HeaderProgress(overview: StudyOverview) { + Row(verticalAlignment = Alignment.CenterVertically, modifier = Modifier.padding(end = 12.dp)) { + Text("${overview.learnedCount}/${overview.courses.size}", color = ink.copy(alpha = 0.8f), style = MaterialTheme.typography.titleSmall) + Spacer(Modifier.width(10.dp)) + AppIcon(R.drawable.ic_star_badge, size = 16.dp, tint = StarGold) + Spacer(Modifier.width(4.dp)) + Text("${overview.masteredCount}", color = ink.copy(alpha = 0.8f), style = MaterialTheme.typography.titleSmall) + } +} + +/** + * The one thing to do now, shown only when there is something to do: review, continue the + * course in progress, or start the first course. Otherwise just the time of the next review. + */ +@Composable +private fun NextAction(overview: StudyOverview, viewModel: OpeningStudyViewModel, onOpenTrainer: () -> Unit) { + val firstNew = overview.courses.firstOrNull { it.status == CourseStatus.NEW } + val learning = overview.learning + val nextDueAt = overview.nextDueAt + when { + overview.dueCards > 0 -> ActionCard( + icon = R.drawable.ic_review, + title = stringResource(R.string.study_review_title), + subtitle = stringResource(R.string.study_review_summary, overview.dueCards, overview.dueCourses), + button = stringResource(R.string.study_review_button) + ) { if (viewModel.reviewNext()) onOpenTrainer() } + learning != null -> ActionCard( + icon = R.drawable.ic_book, + title = stringResource(R.string.study_continue_title), + subtitle = learning.course.name, + button = stringResource(R.string.study_continue_button), + progress = learning.learned.toFloat() / learning.total.coerceAtLeast(1) + ) { if (viewModel.open(learning.course)) onOpenTrainer() } + overview.learnedCount == 0 && firstNew != null -> ActionCard( + icon = R.drawable.ic_book, + title = stringResource(R.string.study_start_with, firstNew.course.name), + subtitle = null, + button = stringResource(R.string.study_start_button) + ) { if (viewModel.open(firstNew.course)) onOpenTrainer() } + nextDueAt != null -> Row(verticalAlignment = Alignment.CenterVertically) { + AppIcon(R.drawable.ic_review, size = 16.dp, tint = ink.copy(alpha = 0.55f)) + Spacer(Modifier.width(8.dp)) + Text(stringResource(R.string.study_next_review, formatDueIn(nextDueAt)), color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodyMedium) + } + } +} + +@Composable +private fun ActionCard(icon: Int, title: String, subtitle: String?, button: String, progress: Float? = null, onClick: () -> Unit) { + Row( + modifier = Modifier + .fillMaxWidth() + .glass(RoundedCornerShape(UiCornerRadius)) + .padding(horizontal = 14.dp, vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + AppIcon(icon, size = 22.dp, tint = StarGold) + Spacer(Modifier.width(12.dp)) + Column(modifier = Modifier.weight(1f)) { + Text(title, color = ink, style = MaterialTheme.typography.titleSmall, maxLines = 2, overflow = TextOverflow.Ellipsis) + if (subtitle != null) { + Text(subtitle, color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodySmall, maxLines = 2, overflow = TextOverflow.Ellipsis) + } + if (progress != null) { + Spacer(Modifier.height(6.dp)) + ProgressBar(progress, height = 4) + } + } + Spacer(Modifier.width(12.dp)) + GlassButton(onClick = onClick) { Text(button, color = ink, maxLines = 1) } + } +} + +/** A course card without a frame: the knight on a soft glow, name, size and one status line. */ +@Composable +private fun CourseCard(info: CourseInfo, modifier: Modifier, onClick: () -> Unit) { + val locked = info.status == CourseStatus.LOCKED + val glow = when { + info.mastered -> StarGold.copy(alpha = 0.20f) + info.status == CourseStatus.DUE -> ChessGreen.copy(alpha = 0.22f) + else -> ink.copy(alpha = 0.08f) + } + val family = info.course.name.substringBefore(':').trim() + val variation = info.course.name.substringAfter(':', "").trim() + + Column( + modifier = modifier + .alpha(if (locked) 0.4f else 1f) + .clip(RoundedCornerShape(UiCornerRadius)) + .clickable(onClick = onClick) + .padding(4.dp) + ) { + Box( + modifier = Modifier + .fillMaxWidth() + .aspectRatio(0.85f) + .background(Brush.radialGradient(listOf(glow, Color.Transparent))), + contentAlignment = Alignment.BottomCenter + ) { + Image( + painter = painterResource(info.course.artRes()), + contentDescription = null, + contentScale = ContentScale.Fit, + modifier = Modifier.fillMaxSize().padding(6.dp) + ) + when { + info.mastered -> AppIcon(R.drawable.ic_star_badge, size = 22.dp, tint = StarGold, modifier = Modifier.align(Alignment.TopEnd)) + info.status == CourseStatus.DUE -> AppIcon(R.drawable.ic_review, size = 20.dp, tint = ChessGreen, modifier = Modifier.align(Alignment.TopEnd)) + } + } + Spacer(Modifier.height(6.dp)) + Text(family, color = ink, style = MaterialTheme.typography.labelLarge, maxLines = 1, overflow = TextOverflow.Ellipsis) + Text( + variation.ifEmpty { " " }, + color = ink.copy(alpha = 0.65f), + style = MaterialTheme.typography.labelSmall, + minLines = 2, + maxLines = 2, + overflow = TextOverflow.Ellipsis + ) + Spacer(Modifier.height(4.dp)) + Row(verticalAlignment = Alignment.CenterVertically) { + AppIcon(R.drawable.ic_timer, size = 12.dp, tint = ink.copy(alpha = 0.55f)) + Spacer(Modifier.width(4.dp)) + Text( + LocalContext.current.resources.getQuantityString(R.plurals.study_moves_count, info.total, info.total), + color = ink.copy(alpha = 0.55f), + style = MaterialTheme.typography.labelSmall, + maxLines = 1 + ) + } + // One status line of fixed height, so rows stay even; empty for a new course. + Box(modifier = Modifier.fillMaxWidth().height(20.dp), contentAlignment = Alignment.CenterStart) { + when (info.status) { + CourseStatus.NEW -> Unit + CourseStatus.LOCKED -> Text(stringResource(R.string.study_locked_short), color = ink.copy(alpha = 0.7f), style = MaterialTheme.typography.labelSmall) + CourseStatus.LEARNING -> ProgressBar(info.learned.toFloat() / info.total.coerceAtLeast(1), height = 4) + CourseStatus.DUE -> Row(verticalAlignment = Alignment.CenterVertically) { + Box(Modifier.size(7.dp).clip(CircleShape).background(ChessGreen)) + Spacer(Modifier.width(6.dp)) + Text(stringResource(R.string.study_status_due, info.dueCards), color = ChessGreen, style = MaterialTheme.typography.labelSmall, maxLines = 1) + } + CourseStatus.WAITING -> Row(verticalAlignment = Alignment.CenterVertically) { + if (info.stars > 0) Stars(info.stars, size = 12.dp) + Spacer(Modifier.width(6.dp)) + info.nextDueAt?.let { + Text(formatDueIn(it), color = ink.copy(alpha = 0.55f), style = MaterialTheme.typography.labelSmall, maxLines = 1) + } + } + } + } + } +} + +@Composable +fun Stars(count: Int, size: androidx.compose.ui.unit.Dp = 16.dp) { + Row { + repeat(3) { i -> + AppIcon(R.drawable.ic_star, size = size, tint = if (i < count) StarGold else ink.copy(alpha = 0.2f)) + } + } +} + +@Composable +fun ProgressBar(fraction: Float, height: Int = 8) { + val f = fraction.coerceIn(0f, 1f) + Box( + modifier = Modifier + .fillMaxWidth() + .height(height.dp) + .clip(RoundedCornerShape((height / 2).dp)) + .background(ink.copy(alpha = 0.12f)) + ) { + if (f > 0f) Box(Modifier.fillMaxWidth(f).fillMaxHeight().clip(RoundedCornerShape((height / 2).dp)).background(ChessGreen)) + } +} + +/** "5 min", "4 h", "3 d" until [at]; "now" if already due. */ +@Composable +fun formatDueIn(at: Long): String { + val diff = at - System.currentTimeMillis() + val minute = 60_000L + val hour = 60 * minute + val day = 24 * hour + return when { + diff <= 0 -> stringResource(R.string.study_due_now) + diff < hour -> stringResource(R.string.study_minutes, ((diff + minute - 1) / minute).toInt()) + diff < day -> stringResource(R.string.study_hours, ((diff + hour - 1) / hour).toInt()) + else -> stringResource(R.string.study_days, ((diff + day - 1) / day).toInt()) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningTrainerScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningTrainerScreen.kt new file mode 100644 index 0000000..04fc0db --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/OpeningTrainerScreen.kt @@ -0,0 +1,175 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.remember +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.openings.OpeningBook +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.ui.components.ChessBoardView +import cc.skysparkle.matewave.ui.components.GlassButton +import cc.skysparkle.matewave.ui.components.GlassCard +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.MovesBar +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.ink +import cc.skysparkle.matewave.viewmodel.OpeningStudyViewModel +import cc.skysparkle.matewave.viewmodel.SessionMode +import cc.skysparkle.matewave.viewmodel.TrainerPhase + +@Composable +fun OpeningTrainerScreen(viewModel: OpeningStudyViewModel, onBack: () -> Unit) { + val state by viewModel.state.collectAsState() + DisposableEffect(viewModel) { onDispose { viewModel.leave() } } + val course = state.course ?: return + val startBoard = remember { Board.startPosition() } + val sans = state.sans + val opening = remember(sans) { OpeningBook.openingName(sans) } + + GlassScaffold(title = course.name, onBack = onBack) { + Row(verticalAlignment = Alignment.CenterVertically) { + Text( + stringResource( + when (state.mode) { + SessionMode.LEARN -> R.string.study_mode_learn + SessionMode.REVIEW -> R.string.study_mode_review + SessionMode.PRACTICE -> R.string.study_mode_practice + } + ), + color = ChessGreen, + style = MaterialTheme.typography.labelLarge + ) + Spacer(Modifier.weight(1f)) + val asked = state.asked.size + if (asked > 0 && state.phase != TrainerPhase.COMPLETE) { + Text( + stringResource(R.string.study_progress, minOf(state.answered + 1, asked), asked), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall + ) + } + } + ProgressBar(state.answered.toFloat() / state.asked.size.coerceAtLeast(1)) + + MovesBar(sans = sans, startBoard = startBoard, currentIndex = sans.size, opening = opening) + + ChessBoardView( + board = state.board, + selectedSquare = state.selectedSquare, + legalTargets = state.legalTargets, + kingInCheckSquare = null, + flipped = course.side == PieceColor.BLACK, + onSquareClick = { viewModel.onSquareClick(it) }, + lastMove = state.lastMove, + hintSquare = state.hintSquare, + interactionEnabled = state.phase == TrainerPhase.YOUR_MOVE || state.phase == TrainerPhase.WRONG + ) + + when (state.phase) { + TrainerPhase.YOUR_MOVE -> Text( + stringResource(if (state.mode == SessionMode.LEARN) R.string.study_learn_prompt else R.string.study_recall_prompt), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + TrainerPhase.AUTO_MOVE -> Text( + stringResource(R.string.study_opponent), + color = ink.copy(alpha = 0.6f), + style = MaterialTheme.typography.titleMedium + ) + TrainerPhase.WRONG -> Text( + stringResource(R.string.study_wrong), + color = Color(0xFFFF8A80), + style = MaterialTheme.typography.titleMedium + ) + TrainerPhase.COMPLETE -> { + val result = state.result + GlassCard(modifier = Modifier.fillMaxWidth()) { + Text( + stringResource(if (state.mode == SessionMode.LEARN) R.string.study_result_learned else R.string.study_result_review), + color = ink, + style = MaterialTheme.typography.titleLarge + ) + Spacer(Modifier.height(6.dp)) + Stars(result?.stars ?: 0, size = 22.dp) + Spacer(Modifier.height(6.dp)) + val change = state.starChange + val stars = result?.stars ?: 0 + val (starText, starColor) = when { + change != null && change.after > change.before -> + stringResource(R.string.study_star_gained) to StarGold + change != null && change.after < change.before -> + stringResource(R.string.study_star_lost) to Color(0xFFFF8A80) + stars >= 3 -> stringResource(R.string.study_all_stars) to StarGold + state.mode == SessionMode.PRACTICE -> stringResource(R.string.study_practice_no_stars) to ink.copy(alpha = 0.65f) + stars > 0 -> stringResource(R.string.study_reviews_to_next, result?.reviewsToNext ?: 0) to ink.copy(alpha = 0.8f) + else -> "" to ink + } + if (starText.isNotEmpty()) { + Text(starText, color = starColor, style = MaterialTheme.typography.bodyMedium) + Spacer(Modifier.height(4.dp)) + } + if (state.asked.isNotEmpty()) { + Text( + stringResource(R.string.study_result_first_try, state.firstTry, state.asked.size), + color = ink.copy(alpha = 0.8f), + style = MaterialTheme.typography.bodyMedium + ) + } + result?.nextDueAt?.let { + Text( + stringResource(R.string.study_next_review, formatDueIn(it)), + color = ink.copy(alpha = 0.65f), + style = MaterialTheme.typography.bodySmall + ) + } + } + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(8.dp)) { + GlassOutlinedButton(onClick = { viewModel.practiceAgain() }, modifier = Modifier.weight(1f)) { + Text(stringResource(R.string.study_again), color = ink, maxLines = 1) + } + GlassButton(onClick = { if (!viewModel.continueStudy()) onBack() }, modifier = Modifier.weight(1f)) { + Text(stringResource(R.string.study_next), color = ink, maxLines = 1) + } + } + } + } + + if (state.phase != TrainerPhase.COMPLETE) { + Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.spacedBy(8.dp)) { + if (state.mode != SessionMode.LEARN) { + GlassOutlinedButton( + onClick = { viewModel.showHint() }, + enabled = state.phase == TrainerPhase.YOUR_MOVE, + modifier = Modifier.weight(1f) + ) { + ButtonIcon(R.drawable.ic_hint) + Text(stringResource(R.string.puzzle_hint), color = ink, maxLines = 1) + } + } + // A review is not restarted: it would only replay the moves still due. + if (state.mode != SessionMode.REVIEW) { + GlassOutlinedButton(onClick = { viewModel.restart() }, modifier = Modifier.weight(1f)) { + Text(stringResource(R.string.study_restart), color = ink, maxLines = 1) + } + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/PermissionsScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/PermissionsScreen.kt new file mode 100644 index 0000000..a7eb453 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/PermissionsScreen.kt @@ -0,0 +1,294 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Switch +import androidx.compose.material3.SwitchDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.height +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.settings.FeedbackSettings +import cc.skysparkle.matewave.network.AppPermissions +import cc.skysparkle.matewave.network.DisconnectReason +import cc.skysparkle.matewave.network.NetworkLog +import cc.skysparkle.matewave.network.NetworkRequirements +import cc.skysparkle.matewave.ui.components.GlassCard +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.rememberPermissionRequester + +@Composable +fun PermissionsScreen(onBack: () -> Unit) { + val context = LocalContext.current + + var tick by remember { mutableStateOf(0) } + val status = remember(tick) { NetworkRequirements.check(context) } + LaunchedEffect(Unit) { + while (true) { kotlinx.coroutines.delay(2_000); tick++ } + } + + val requestNearby = rememberPermissionRequester( + permissions = AppPermissions.nearby, + rationaleTitle = stringResource(R.string.mesh_permission_title), + rationaleText = stringResource(R.string.mesh_permission_text), + onResult = { tick++ } + ) + + GlassScaffold(title = stringResource(R.string.permissions_card_title), onBack = onBack) { + PermissionItem( + iconRes = R.drawable.ic_communication, + granted = status.permissionsGranted, + title = stringResource(R.string.perm_nearby_title), + subtitle = stringResource(R.string.perm_nearby_text), + onGrant = { requestNearby() } + ) + + val presenceSettings = remember { cc.skysparkle.matewave.presence.PresenceSettings(context) } + var announce by remember { mutableStateOf(presenceSettings.announceEnabled) } + GlassCard(modifier = Modifier.fillMaxWidth()) { + Row(verticalAlignment = Alignment.CenterVertically) { + cc.skysparkle.matewave.ui.components.ButtonIcon(R.drawable.ic_online, size = 24.dp) + Column(modifier = Modifier.weight(1f)) { + Text( + stringResource(R.string.perm_announce_title), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Text( + stringResource(R.string.perm_announce_text), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall + ) + } + Switch( + checked = announce, + onCheckedChange = { + announce = it + presenceSettings.announceEnabled = it + + cc.skysparkle.matewave.network.Transports.applyAnnounceSetting() + }, + colors = SwitchDefaults.colors( + checkedThumbColor = Color.White, + checkedTrackColor = Color(0xFF4F8A5B) + ) + ) + } + } + + val feedbackSettings = remember { FeedbackSettings(context) } + var vibration by remember { mutableStateOf(feedbackSettings.vibrationEnabled) } + GlassCard(modifier = Modifier.fillMaxWidth()) { + Row(verticalAlignment = Alignment.CenterVertically) { + cc.skysparkle.matewave.ui.components.ButtonIcon(R.drawable.ic_vibration, size = 24.dp) + Column(modifier = Modifier.weight(1f)) { + Text( + stringResource(R.string.perm_vibration_title), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Text( + stringResource(R.string.perm_vibration_text), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall + ) + } + Switch( + checked = vibration, + onCheckedChange = { + vibration = it + feedbackSettings.vibrationEnabled = it + }, + colors = SwitchDefaults.colors( + checkedThumbColor = Color.White, + checkedTrackColor = Color(0xFF4F8A5B) + ) + ) + } + } + + var background by remember { mutableStateOf(presenceSettings.backgroundEnabled) } + val requestNotifications = rememberPermissionRequester( + permissions = if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) { + listOf(android.Manifest.permission.POST_NOTIFICATIONS) + } else emptyList(), + rationaleTitle = stringResource(R.string.perm_background_title), + rationaleText = stringResource(R.string.perm_background_notification), + onResult = { granted -> + if (granted) { + cc.skysparkle.matewave.presence.PresenceService.start(context) + } else { + background = false + presenceSettings.backgroundEnabled = false + } + } + ) + GlassCard(modifier = Modifier.fillMaxWidth()) { + Row(verticalAlignment = Alignment.CenterVertically) { + cc.skysparkle.matewave.ui.components.ButtonIcon(R.drawable.ic_background_activity, size = 24.dp) + Column(modifier = Modifier.weight(1f)) { + Text( + stringResource(R.string.perm_background_title), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Text( + stringResource(R.string.perm_background_text), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall + ) + } + Switch( + checked = background, + onCheckedChange = { + background = it + presenceSettings.backgroundEnabled = it + if (it) { + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU && + !cc.skysparkle.matewave.network.AppPermissions.allGranted( + context, listOf(android.Manifest.permission.POST_NOTIFICATIONS) + ) + ) { + requestNotifications() + } else { + cc.skysparkle.matewave.presence.PresenceService.start(context) + } + } else { + cc.skysparkle.matewave.presence.PresenceService.stop(context) + } + }, + colors = SwitchDefaults.colors( + checkedThumbColor = Color.White, + checkedTrackColor = Color(0xFF4F8A5B) + ) + ) + } + + if (background) { + Spacer(Modifier.height(8.dp)) + Row(verticalAlignment = Alignment.CenterVertically) { + cc.skysparkle.matewave.ui.components.ButtonIcon( + R.drawable.ic_notification, tint = Color(0xFFFFC46B), size = 16.dp + ) + Text( + stringResource(R.string.perm_background_notification), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.weight(1f) + ) + } + } + + if (background && !cc.skysparkle.matewave.network.BatteryOptimization.isIgnoring(context)) { + Spacer(Modifier.height(8.dp)) + Text( + stringResource(R.string.perm_battery_needed), + color = Color(0xFFFFC46B), + style = MaterialTheme.typography.bodySmall + ) + GlassOutlinedButton( + onClick = { cc.skysparkle.matewave.network.BatteryOptimization.openSettings(context) }, + modifier = Modifier.fillMaxWidth() + ) { + cc.skysparkle.matewave.ui.components.ButtonIcon(R.drawable.ic_go_settings) + Text(stringResource(R.string.perm_battery_open), color = ink) + } + } + } + + val lastReason by NetworkLog.lastReason.collectAsState() + if (lastReason != DisconnectReason.NONE) { + Row(verticalAlignment = Alignment.CenterVertically) { + cc.skysparkle.matewave.ui.components.ButtonIcon( + R.drawable.ic_error, tint = Color(0xFFFFC46B), size = 16.dp + ) + Text( + stringResource(R.string.diag_last_reason, stringResource(lastReason.textRes)), + color = Color(0xFFFFC46B), + style = MaterialTheme.typography.bodySmall, + modifier = Modifier.weight(1f) + ) + } + } + + val metricsTick by cc.skysparkle.matewave.network.NetworkMetrics.updated.collectAsState() + val metricsText = remember(metricsTick) { + cc.skysparkle.matewave.network.NetworkMetrics.asText(context.resources) + } + Text( + metricsText.trim(), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodySmall + ) + + GlassOutlinedButton( + onClick = { + val clipboard = context.getSystemService(android.content.Context.CLIPBOARD_SERVICE) + as android.content.ClipboardManager + + val report = buildString { + appendLine(context.getString(R.string.diag_report_counters)) + append(cc.skysparkle.matewave.network.NetworkMetrics.asText(context.resources)) + appendLine() + appendLine(context.getString(R.string.diag_report_events)) + append(NetworkLog.asText().ifBlank { context.getString(R.string.diag_log_empty) }) + } + clipboard.setPrimaryClip( + android.content.ClipData.newPlainText("network report", report) + ) + }, + modifier = Modifier.fillMaxWidth() + ) { + cc.skysparkle.matewave.ui.components.ButtonIcon(R.drawable.ic_copy) + Text(stringResource(R.string.diag_copy_log), color = ink) + } + } +} + +@Composable +private fun PermissionItem( + granted: Boolean, + title: String, + subtitle: String, + onGrant: () -> Unit, + iconRes: Int? = null +) { + GlassCard(modifier = Modifier.fillMaxWidth()) { + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(8.dp)) { + cc.skysparkle.matewave.ui.components.AppIcon( + resId = if (granted) R.drawable.ic_approve else R.drawable.ic_cancel, + size = 20.dp, + tint = if (granted) Color(0xFF7BE495) else Color(0xFFFF6B6B) + ) + if (iconRes != null) { + cc.skysparkle.matewave.ui.components.AppIcon(iconRes, size = 22.dp) + } + Text(title, color = ink, style = MaterialTheme.typography.titleMedium) + } + Text(subtitle, color = ink.copy(alpha = 0.75f), style = MaterialTheme.typography.bodySmall) + if (!granted) { + GlassOutlinedButton(onClick = onGrant, modifier = Modifier.fillMaxWidth()) { + Text(stringResource(R.string.perm_grant), color = ink) + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/PuzzleScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/PuzzleScreen.kt new file mode 100644 index 0000000..481108e --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/PuzzleScreen.kt @@ -0,0 +1,218 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.layout.widthIn +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.puzzles.Puzzle +import cc.skysparkle.matewave.puzzles.PuzzleRepository +import cc.skysparkle.matewave.puzzles.themeTitleRes +import cc.skysparkle.matewave.stats.Stats +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.ui.components.ChessBoardView +import cc.skysparkle.matewave.ui.components.GlassButton +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.components.PromotionDialog +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.ink +import cc.skysparkle.matewave.viewmodel.GameViewModel +import kotlinx.coroutines.delay + +private val WrongRed = Color(0xFFFF6B6B) + +@Composable +fun PuzzleSolveScreen(viewModel: GameViewModel, onBack: () -> Unit, onNextPuzzle: (Puzzle) -> Unit) { + val context = LocalContext.current + val state by viewModel.uiState.collectAsState() + val puzzle = state.puzzle + + // Confirmation on the board: the destination of a correct move flashes green; a wrong + // move stays red until it is taken back. + var greenFlash by remember { mutableStateOf(null) } + LaunchedEffect(state.puzzleMoveIndex, state.puzzleSolved) { + if ((state.puzzleMoveIndex > 0 || state.puzzleSolved) && !state.puzzleFailedAttempt) { + greenFlash = state.lastMove?.to + delay(450) + greenFlash = null + } + } + val redSquare = if (state.puzzleFailedAttempt && state.puzzleAutoMoving) state.lastMove?.to else null + + GlassScaffold( + title = puzzle?.let { stringResource(R.string.puzzle_title_rating, it.rating) } ?: stringResource(R.string.puzzle_title_fallback), + onBack = onBack, + actions = { + if (puzzle != null) { + Text( + stringResource(puzzle.themeTitleRes()).uppercase(), + color = ChessGreen, + style = MaterialTheme.typography.labelSmall, + maxLines = 1, + modifier = Modifier + .padding(end = 12.dp) + .clip(RoundedCornerShape(4.dp)) + .background(ChessGreen.copy(alpha = 0.15f)) + .padding(horizontal = 6.dp, vertical = 2.dp) + ) + } + } + ) { + // On tablets the board is capped and centred, so the task and buttons fit without scrolling. + ChessBoardView( + board = state.board, + selectedSquare = state.selectedSquare, + legalTargets = state.legalTargetsFromSelected, + kingInCheckSquare = if (ChessEngine.isInCheck(state.board, state.board.sideToMove)) { + state.board.kingSquare(state.board.sideToMove) + } else null, + flipped = state.myColor == PieceColor.BLACK, + onSquareClick = viewModel::onSquareClicked, + modifier = Modifier.align(Alignment.CenterHorizontally).widthIn(max = 560.dp), + lastMove = state.lastMove, + hintSquare = state.puzzleHintFrom, + interactionEnabled = state.puzzleStarted && !state.puzzleAutoMoving && !state.puzzleSolved && state.pendingPromotion == null, + flashSquare = redSquare ?: greenFlash, + flashColor = if (redSquare != null) WrongRed.copy(alpha = 0.55f) else ChessGreen.copy(alpha = 0.55f) + ) + + // The task, in the same format as the status in a game: a dot in the side's colour. + val (text, color) = when { + state.puzzleSolved -> "✓ " + stringResource(R.string.puzzle_solved) to ChessGreen + state.puzzleFailedAttempt -> "✗ " + stringResource(R.string.puzzle_wrong_move) to WrongRed + state.puzzleAutoMoving -> stringResource(R.string.opponent_turn) to ink.copy(alpha = 0.7f) + state.myColor == PieceColor.WHITE -> stringResource(R.string.puzzle_find_best_white) to ink + else -> stringResource(R.string.puzzle_find_best_black) to ink + } + Row(verticalAlignment = Alignment.CenterVertically) { + Box( + Modifier + .size(10.dp) + .clip(CircleShape) + .background(if (state.myColor == PieceColor.WHITE) Color(0xFFF0F0F0) else Color(0xFF222222)) + .border(1.dp, ink.copy(alpha = 0.5f), CircleShape) + ) + Spacer(Modifier.width(10.dp)) + Text(text, color = color, style = MaterialTheme.typography.titleMedium) + } + + // Progress through multi-move puzzles: one dot per move of the solver. + if (puzzle != null) { + val total = (puzzle.solutionUci.size + 1) / 2 + if (total > 1) { + val done = if (state.puzzleSolved) total else state.puzzleMoveIndex / 2 + Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(6.dp)) { + repeat(total) { i -> + Box( + Modifier + .size(8.dp) + .clip(CircleShape) + .background(if (i < done) ChessGreen else ink.copy(alpha = 0.2f)) + ) + } + Spacer(Modifier.width(4.dp)) + Text( + stringResource(R.string.puzzle_move_of, minOf(done + 1, total), total), + color = ink.copy(alpha = 0.55f), + style = MaterialTheme.typography.labelSmall + ) + } + } + } + + if (state.puzzleSolutionRevealed && !state.puzzleSolved) { + val expectedUci = puzzle?.solutionUci?.getOrNull(state.puzzleMoveIndex) + val san = expectedUci?.let { uci -> + ChessEngine.legalMoves(state.board).firstOrNull { it.toUci() == uci }?.let { Notation.toSan(state.board, it, withCheck = true) } + } + Text( + text = if (san != null) stringResource(R.string.puzzle_solution_prefix, san) else stringResource(R.string.puzzle_solution_unavailable), + color = ink.copy(alpha = 0.85f), + style = MaterialTheme.typography.bodyMedium + ) + } + + if (state.puzzleSolved) { + val next = remember(puzzle?.id) { + PuzzleRepository.pickForRating( + context, + cc.skysparkle.matewave.data.ProfileStore.get().elo, + Stats.solvedPuzzles(), + exclude = puzzle?.id + ) + } + if (next != null) { + GlassButton(onClick = { onNextPuzzle(next) }, modifier = Modifier.fillMaxWidth()) { + Text(stringResource(R.string.puzzle_next), color = ink, style = MaterialTheme.typography.titleMedium) + } + } + Text( + stringResource(R.string.puzzle_solved_count, Stats.solvedPuzzles().size), + color = ink.copy(alpha = 0.55f), + style = MaterialTheme.typography.bodySmall, + textAlign = TextAlign.Center, + modifier = Modifier.fillMaxWidth() + ) + } else if (state.puzzleStarted) { + // The hint is the action; showing the solution is giving up, so it is a quiet link. + GlassOutlinedButton( + onClick = { viewModel.showPuzzleHint() }, + modifier = Modifier.fillMaxWidth(), + enabled = !state.puzzleAutoMoving + ) { + ButtonIcon(R.drawable.ic_hint) + Text(stringResource(R.string.puzzle_hint), color = ink) + } + Text( + stringResource(R.string.puzzle_show_solution), + color = ink.copy(alpha = if (state.puzzleAutoMoving) 0.3f else 0.6f), + style = MaterialTheme.typography.bodyMedium, + textAlign = TextAlign.Center, + modifier = Modifier + .fillMaxWidth() + .clip(RoundedCornerShape(8.dp)) + .clickable(enabled = !state.puzzleAutoMoving) { viewModel.revealPuzzleSolution() } + .padding(vertical = 8.dp) + ) + } + } + + state.pendingPromotion?.let { + PromotionDialog( + color = state.board.sideToMove, + onChoose = viewModel::choosePromotion, + onDismiss = viewModel::cancelPromotion + ) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/SettingsScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/SettingsScreen.kt new file mode 100644 index 0000000..9c4002f --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/SettingsScreen.kt @@ -0,0 +1,289 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.components.ListDivider +import cc.skysparkle.matewave.ui.components.ListGroup +import cc.skysparkle.matewave.ui.components.ListRow +import cc.skysparkle.matewave.ui.components.SectionCaption + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.Image +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Switch +import androidx.compose.material3.SwitchDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.foundation.background +import androidx.compose.ui.draw.clip +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ui.components.DialogAccent +import cc.skysparkle.matewave.ui.components.DialogAction +import cc.skysparkle.matewave.ui.components.AppDialog +import cc.skysparkle.matewave.audio.RadioState +import cc.skysparkle.matewave.audio.SoundManager +import cc.skysparkle.matewave.ui.components.AppBottomBar +import cc.skysparkle.matewave.ui.components.BottomTab +import cc.skysparkle.matewave.ui.components.GlassScaffold +import cc.skysparkle.matewave.ui.theme.ChessGreen + +@Composable +fun SettingsScreen( + onHomeClick: () -> Unit, + onFriendsClick: () -> Unit, + onAccountClick: () -> Unit, + onOpenPermissions: () -> Unit, + onOpenAppearance: () -> Unit, + onOpenLicenses: () -> Unit, + onOpenShare: () -> Unit +) { + var musicOn by remember { mutableStateOf(SoundManager.musicEnabled) } + var sfxOn by remember { mutableStateOf(SoundManager.sfxEnabled) } + val context = LocalContext.current + + val myProfile = remember { cc.skysparkle.matewave.data.ProfileStore.get() } + val versionName = remember { + runCatching { + val pm = context.packageManager + val info = if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) { + pm.getPackageInfo(context.packageName, android.content.pm.PackageManager.PackageInfoFlags.of(0)) + } else { + @Suppress("DEPRECATION") + pm.getPackageInfo(context.packageName, 0) + } + info.versionName + }.getOrNull() ?: "—" + } + + var showAbout by remember { mutableStateOf(false) } + var statusTick by remember { mutableStateOf(0) } + val status = remember(statusTick) { + cc.skysparkle.matewave.network.NetworkRequirements.check(context) + } + LaunchedEffect(Unit) { + while (true) { kotlinx.coroutines.delay(3_000); statusTick++ } + } + + val feedback = remember { cc.skysparkle.matewave.settings.FeedbackSettings(context) } + val appearance = remember { cc.skysparkle.matewave.settings.BoardAppearance(context) } + var vibrationOn by remember { mutableStateOf(feedback.vibrationEnabled) } + var openingBarOn by remember { mutableStateOf(appearance.showOpening) } + val radioState by SoundManager.radioState.collectAsState() + + GlassScaffold( + title = stringResource(R.string.nav_settings), + onBack = null, + bottomBar = { + AppBottomBar( + current = BottomTab.SETTINGS, + onHomeClick = onHomeClick, + onFriendsClick = onFriendsClick, + onSettingsClick = { }, + onAccountClick = onAccountClick, + accountAvatarBase64 = myProfile.avatarBase64 + ) + } + ) { + SectionCaption(stringResource(R.string.settings_section_sound)) + ListGroup { + ListRow( + title = stringResource(R.string.settings_radio), + subtitle = stringResource(R.string.settings_radio_subtitle), + icon = R.drawable.ic_music, + // Radio status sits in the row instead of a stray line under it. + value = if (!musicOn) null else when (radioState) { + RadioState.CONNECTING -> stringResource(R.string.settings_radio_connecting) + RadioState.ERROR -> stringResource(R.string.settings_radio_error) + else -> null + }, + valueColor = if (radioState == RadioState.ERROR) Color(0xFFFF6B6B) else ink.copy(alpha = 0.55f), + trailing = { SettingSwitch(musicOn) { musicOn = it; SoundManager.setMusicEnabled(it) } } + ) + ListDivider() + ListRow( + title = stringResource(R.string.settings_sfx), + subtitle = stringResource(R.string.settings_sfx_subtitle), + icon = R.drawable.ic_sound_effect, + trailing = { SettingSwitch(sfxOn) { sfxOn = it; SoundManager.setSfxEnabled(it) } } + ) + ListDivider() + ListRow( + title = stringResource(R.string.perm_vibration_title), + icon = R.drawable.ic_vibration, + trailing = { SettingSwitch(vibrationOn) { vibrationOn = it; feedback.vibrationEnabled = it } } + ) + } + + SectionCaption(stringResource(R.string.settings_section_game)) + ListGroup { + ListRow( + title = stringResource(R.string.appearance_title), + subtitle = stringResource(R.string.appearance_subtitle), + icon = R.drawable.ic_board_view, + chevron = true, + onClick = onOpenAppearance + ) + ListDivider() + ListRow( + title = stringResource(R.string.appearance_opening_in_game), + icon = R.drawable.ic_book, + trailing = { SettingSwitch(openingBarOn) { openingBarOn = it; appearance.showOpening = it } } + ) + } + + SectionCaption(stringResource(R.string.settings_section_system)) + ListGroup { + ListRow( + title = stringResource(R.string.permissions_card_title), + icon = if (status.onlineBlocked) R.drawable.ic_permissions else R.drawable.ic_check_permission, + iconTint = if (status.onlineBlocked) Color(0xFFFF6B6B) else ChessGreen, + value = stringResource(if (status.onlineBlocked) R.string.permissions_card_blocked_short else R.string.permissions_card_ok_short), + valueColor = if (status.onlineBlocked) Color(0xFFFF6B6B) else ink.copy(alpha = 0.55f), + chevron = true, + onClick = onOpenPermissions + ) + ListDivider() + ListRow( + title = stringResource(R.string.privacy_policy), + icon = R.drawable.ic_policy, + chevron = true, + onClick = { cc.skysparkle.matewave.settings.AppLinks.open(context, cc.skysparkle.matewave.settings.AppLinks.PRIVACY_POLICY) } + ) + ListDivider() + ListRow( + title = stringResource(R.string.about_section), + icon = R.drawable.ic_info, + value = versionName, + chevron = true, + onClick = { showAbout = true } + ) + } + } + + if (showAbout) { + AppDialog( + onDismissRequest = { showAbout = false }, + title = stringResource(R.string.about_section), + actions = { DialogAction(stringResource(R.string.chat_close), onClick = { showAbout = false }) } + ) { + Column( + modifier = Modifier.fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(6.dp) + ) { + Image( + painter = painterResource(R.drawable.ic_launcher_card), + contentDescription = null, + modifier = Modifier.size(72.dp).clip(RoundedCornerShape(16.dp)) + ) + Text( + stringResource(R.string.app_title), + color = ink, + style = MaterialTheme.typography.headlineSmall + ) + Text( + stringResource(R.string.settings_version, versionName), + color = DialogAccent, + style = MaterialTheme.typography.bodySmall + ) + Text( + stringResource(R.string.settings_description), + color = ink.copy(alpha = 0.78f), + style = MaterialTheme.typography.bodyMedium, + textAlign = androidx.compose.ui.text.style.TextAlign.Center + ) + } + + AboutRow( + iconRes = R.drawable.ic_share, + title = stringResource(R.string.share_row_title), + subtitle = stringResource(R.string.share_row_subtitle), + onClick = { + showAbout = false + onOpenShare() + } + ) + AboutRow( + iconRes = R.drawable.ic_copyright, + title = stringResource(R.string.licenses_title), + subtitle = stringResource(R.string.licenses_subtitle), + onClick = { + showAbout = false + onOpenLicenses() + } + ) + AboutRow( + iconRes = R.drawable.ic_repo, + title = stringResource(R.string.settings_repo_title), + subtitle = cc.skysparkle.matewave.settings.AppLinks.REPOSITORY_LABEL, + onClick = { cc.skysparkle.matewave.settings.AppLinks.open(context, cc.skysparkle.matewave.settings.AppLinks.REPOSITORY) } + ) + AboutRow( + iconRes = R.drawable.ic_policy, + title = stringResource(R.string.privacy_policy), + subtitle = "skysparkle.cc/privacy", + onClick = { cc.skysparkle.matewave.settings.AppLinks.open(context, cc.skysparkle.matewave.settings.AppLinks.PRIVACY_POLICY) } + ) + } + } +} + +@Composable +private fun AboutRow(iconRes: Int, title: String, subtitle: String, onClick: () -> Unit) { + val rowShape = RoundedCornerShape(12.dp) + Row( + modifier = Modifier + .fillMaxWidth() + .clip(rowShape) + .background(ink.copy(alpha = 0.07f)) + .clickable(onClick = onClick) + .padding(horizontal = 14.dp, vertical = 12.dp), + verticalAlignment = Alignment.CenterVertically + ) { + cc.skysparkle.matewave.ui.components.AppIcon(iconRes, size = 28.dp) + Spacer(Modifier.width(14.dp)) + Column(modifier = Modifier.weight(1f)) { + Text(title, color = ink, style = MaterialTheme.typography.titleMedium) + Text(subtitle, color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodySmall) + } + cc.skysparkle.matewave.ui.components.AppIcon( + R.drawable.ic_arrow_forward, size = 16.dp, tint = ink.copy(alpha = 0.6f) + ) + } +} + +@Composable +private fun SettingSwitch(checked: Boolean, onCheckedChange: (Boolean) -> Unit) { + Switch( + checked = checked, + onCheckedChange = onCheckedChange, + colors = SwitchDefaults.colors( + checkedTrackColor = ChessGreen, + checkedThumbColor = Color.White, + uncheckedTrackColor = ink.copy(alpha = 0.15f), + uncheckedThumbColor = Color.White.copy(alpha = 0.7f) + ) + ) +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/ShareApkScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/ShareApkScreen.kt new file mode 100644 index 0000000..8863735 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/ShareApkScreen.kt @@ -0,0 +1,238 @@ +package cc.skysparkle.matewave.ui.screens + +import cc.skysparkle.matewave.ui.theme.ink + +import android.content.Intent +import android.text.format.Formatter +import androidx.compose.foundation.Canvas +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.HorizontalDivider +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.geometry.Size +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalView +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.share.ApkShareServer +import cc.skysparkle.matewave.share.ApkSharing +import cc.skysparkle.matewave.share.LocalNetwork +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.ButtonIcon +import cc.skysparkle.matewave.ui.components.DialogAccent +import cc.skysparkle.matewave.ui.components.GlassCard +import cc.skysparkle.matewave.ui.components.GlassOutlinedButton +import cc.skysparkle.matewave.ui.components.GlassScaffold +import com.google.zxing.BarcodeFormat +import com.google.zxing.EncodeHintType +import com.google.zxing.qrcode.QRCodeWriter +import kotlinx.coroutines.launch + +@Composable +fun ShareApkScreen(onBack: () -> Unit) { + val context = LocalContext.current + val scope = rememberCoroutineScope() + val view = LocalView.current + val appName = stringResource(R.string.app_title) + val apk = remember { ApkSharing.apkFile(context) } + var url by remember { mutableStateOf(null) } + var preparing by remember { mutableStateOf(false) } + var failed by remember { mutableStateOf(false) } + + DisposableEffect(Unit) { + val server = ApkShareServer(apk, appName) + val ip = LocalNetwork.wifiIpv4() + if (ip != null && apk.exists()) { + val port = runCatching { server.start() }.getOrNull() + if (port != null) url = "http://$ip:$port/" + } + view.keepScreenOn = true + onDispose { + server.stop() + view.keepScreenOn = false + } + } + + GlassScaffold(title = stringResource(R.string.share_row_title), onBack = onBack) { + Column( + modifier = Modifier.fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(14.dp) + ) { + AppIcon(R.drawable.ic_wifi, size = 44.dp, tint = DialogAccent) + Text( + stringResource(R.string.share_wifi_title), + color = ink, + style = MaterialTheme.typography.headlineSmall + ) + Text( + stringResource(R.string.share_wifi_subtitle), + color = ink.copy(alpha = 0.75f), + style = MaterialTheme.typography.bodyLarge, + textAlign = TextAlign.Center + ) + + val address = url + if (address != null) { + Box( + modifier = Modifier + .size(240.dp) + .clip(RoundedCornerShape(20.dp)) + + .background(Color.White) + .padding(18.dp) + ) { + QrCode(address, Modifier.size(204.dp)) + } + Box( + modifier = Modifier + .fillMaxWidth() + .clip(RoundedCornerShape(12.dp)) + .background(ink.copy(alpha = 0.10f)) + .padding(vertical = 14.dp, horizontal = 12.dp), + contentAlignment = Alignment.Center + ) { + Text(address, color = ink.copy(alpha = 0.85f), style = MaterialTheme.typography.bodyMedium) + } + } else { + Text( + stringResource(R.string.share_no_wifi), + color = Color(0xFFFFC46B), + style = MaterialTheme.typography.bodyMedium, + textAlign = TextAlign.Center + ) + } + + Text( + stringResource(R.string.share_apk_size, Formatter.formatShortFileSize(context, apk.length())), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodyMedium + ) + if (ApkSharing.isSplitInstall(context)) { + Text( + stringResource(R.string.share_split_warning), + color = Color(0xFFFFC46B), + style = MaterialTheme.typography.bodySmall, + textAlign = TextAlign.Center + ) + } + } + + GlassCard(modifier = Modifier.fillMaxWidth()) { + Text( + stringResource(R.string.share_instructions_title), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Column(modifier = Modifier.padding(top = 8.dp), verticalArrangement = Arrangement.spacedBy(6.dp)) { + listOf( + R.string.share_step_1, R.string.share_step_2, R.string.share_step_3, R.string.share_step_4 + ).forEachIndexed { index, step -> + Text( + "${index + 1}. ${stringResource(step)}", + color = ink.copy(alpha = 0.85f), + style = MaterialTheme.typography.bodyMedium + ) + } + } + } + + HorizontalDivider(color = ink.copy(alpha = 0.15f)) + + Column( + modifier = Modifier.fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(10.dp) + ) { + Text( + stringResource(R.string.share_other_title), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Text( + stringResource(R.string.share_other_hint), + color = ink.copy(alpha = 0.7f), + style = MaterialTheme.typography.bodyMedium, + textAlign = TextAlign.Center + ) + } + + GlassOutlinedButton( + onClick = { + if (!preparing) { + preparing = true + failed = false + scope.launch { + val uri = runCatching { ApkSharing.copyForSharing(context, appName) }.getOrNull() + preparing = false + if (uri == null) { + failed = true + } else { + val send = Intent(Intent.ACTION_SEND).apply { + type = "application/vnd.android.package-archive" + putExtra(Intent.EXTRA_STREAM, uri) + addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION) + } + context.startActivity(Intent.createChooser(send, null)) + } + } + } + }, + modifier = Modifier.fillMaxWidth() + ) { + ButtonIcon(R.drawable.ic_share) + Text( + stringResource(if (preparing) R.string.share_preparing else R.string.share_button), + color = ink + ) + } + if (failed) { + Text( + stringResource(R.string.share_failed), + color = Color(0xFFFF6B6B), + style = MaterialTheme.typography.bodySmall, + textAlign = TextAlign.Center, + modifier = Modifier.fillMaxWidth() + ) + } + } +} + +@Composable +private fun QrCode(text: String, modifier: Modifier = Modifier) { + val matrix = remember(text) { + QRCodeWriter().encode(text, BarcodeFormat.QR_CODE, 0, 0, mapOf(EncodeHintType.MARGIN to 0)) + } + Canvas(modifier = modifier) { + val modules = matrix.width + val cell = size.width / modules + for (y in 0 until modules) { + for (x in 0 until modules) { + if (matrix.get(x, y)) { + drawRect(Color.Black, Offset(x * cell, y * cell), Size(cell + 0.6f, cell + 0.6f)) + } + } + } + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/screens/VsAiSetupScreen.kt b/app/src/main/java/cc/skysparkle/matewave/ui/screens/VsAiSetupScreen.kt new file mode 100644 index 0000000..3235712 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/screens/VsAiSetupScreen.kt @@ -0,0 +1,164 @@ +package cc.skysparkle.matewave.ui.screens + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.CircleShape +import cc.skysparkle.matewave.ui.components.AppIcon +import cc.skysparkle.matewave.ui.components.SectionCaption +import cc.skysparkle.matewave.ui.components.TimeControlGrid +import cc.skysparkle.matewave.ui.components.displayName + +import cc.skysparkle.matewave.ui.theme.ink + +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.size +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.ui.Alignment +import androidx.compose.ui.draw.clip +import cc.skysparkle.matewave.ui.components.SetupSegmented +import cc.skysparkle.matewave.ui.theme.ChessGreen +import cc.skysparkle.matewave.ui.theme.PanelBorder +import cc.skysparkle.matewave.R +import cc.skysparkle.matewave.ai.AiDifficulty +import cc.skysparkle.matewave.clock.TimeControl +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.ui.components.GlassButton +import cc.skysparkle.matewave.ui.components.GlassScaffold + +@Composable +private fun difficultyLabel(difficulty: AiDifficulty): String = stringResource(difficultyName(difficulty)) + +@Composable +fun VsAiSetupScreen( + onBack: () -> Unit, + onStart: (AiDifficulty, PieceColor?, TimeControl) -> Unit +) { + val context = androidx.compose.ui.platform.LocalContext.current + val last = remember { cc.skysparkle.matewave.settings.LastGameSetup(context) } + var difficulty by remember { mutableStateOf(last.aiDifficulty) } + var color by remember { mutableStateOf(last.aiColor) } + var timeControl by remember { mutableStateOf(last.aiTime) } + val levels = AiDifficulty.entries + + GlassScaffold( + title = stringResource(R.string.vsai_title), + onBack = onBack, + // The start button stays at the bottom, in reach of the thumb, with a summary of the choice. + bottomBar = { + Box(modifier = Modifier.padding(horizontal = 20.dp, vertical = 12.dp)) { + GlassButton( + onClick = { + last.aiDifficulty = difficulty + last.aiColor = color + last.aiTime = timeControl + onStart(difficulty, color, timeControl) + }, + modifier = Modifier.fillMaxWidth() + ) { + Text( + stringResource(R.string.vsai_play_summary, difficultyLabel(difficulty), timeControl.displayName()), + color = ink, + style = MaterialTheme.typography.titleMedium, + maxLines = 1 + ) + } + } + } + ) { + // Who you are playing: changes with the level. + Row(verticalAlignment = Alignment.CenterVertically) { + Box( + modifier = Modifier.size(52.dp).clip(CircleShape).background(ink.copy(alpha = 0.10f)), + contentAlignment = Alignment.Center + ) { + AppIcon(R.drawable.ic_ai_app, size = 28.dp) + } + Spacer(Modifier.width(14.dp)) + Column(modifier = Modifier.weight(1f)) { + Text( + stringResource(R.string.game_ai_name, difficultyLabel(difficulty)) + " ≈" + + cc.skysparkle.matewave.data.ProfileStore.aiNominalElo(difficulty), + color = ink, + style = MaterialTheme.typography.titleMedium + ) + Text(stringResource(aiDescription(difficulty)), color = ink.copy(alpha = 0.65f), style = MaterialTheme.typography.bodySmall) + } + } + + SectionCaption(stringResource(R.string.difficulty_label)) + SetupSegmented( + options = levels.map { difficultyLabel(it) }, + selectedIndex = levels.indexOf(difficulty) + ) { difficulty = levels[it] } + Row(modifier = Modifier.fillMaxWidth()) { + levels.forEach { + Text( + "≈" + cc.skysparkle.matewave.data.ProfileStore.aiNominalElo(it), + color = ink.copy(alpha = if (it == difficulty) 0.8f else 0.45f), + style = MaterialTheme.typography.labelSmall, + textAlign = androidx.compose.ui.text.style.TextAlign.Center, + modifier = Modifier.weight(1f) + ) + } + } + + SectionCaption(stringResource(R.string.your_color)) + Row(horizontalArrangement = Arrangement.spacedBy(8.dp)) { + ColorChip(R.drawable.ic_white_colour, stringResource(R.string.color_white), color == PieceColor.WHITE) { color = PieceColor.WHITE } + ColorChip(R.drawable.ic_black_colour, stringResource(R.string.color_black), color == PieceColor.BLACK) { color = PieceColor.BLACK } + ColorChip(R.drawable.ic_random_colour, stringResource(R.string.color_random), color == null) { color = null } + } + + SectionCaption(stringResource(R.string.time_control_label)) + TimeControlGrid(selected = timeControl, onSelect = { timeControl = it }) + } +} + +private fun aiDescription(d: AiDifficulty): Int = when (d) { + AiDifficulty.EASY -> R.string.ai_desc_easy + AiDifficulty.MEDIUM -> R.string.ai_desc_medium + AiDifficulty.HARD -> R.string.ai_desc_hard + AiDifficulty.EXPERT -> R.string.ai_desc_expert +} + +@Composable +private fun ColorChip(iconRes: Int, text: String, selected: Boolean, onClick: () -> Unit) { + val shape = RoundedCornerShape(50) + Row( + modifier = Modifier + .clip(shape) + .background(if (selected) ChessGreen.copy(alpha = 0.35f) else ink.copy(alpha = 0.10f)) + .border(1.dp, if (selected) ChessGreen else PanelBorder, shape) + .clickable(onClick = onClick) + .padding(horizontal = 14.dp, vertical = 8.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + Image( + painter = painterResource(iconRes), + contentDescription = null, + modifier = Modifier.size(16.dp) + ) + Text(text, color = ink, style = MaterialTheme.typography.bodySmall) + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/theme/Glass.kt b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Glass.kt new file mode 100644 index 0000000..0eed65b --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Glass.kt @@ -0,0 +1,39 @@ +package cc.skysparkle.matewave.ui.theme + +import androidx.compose.foundation.background +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.Shape +import androidx.compose.ui.unit.dp + +val PanelFill = Color(0xFF14171C).copy(alpha = 0.86f) +val PanelBorder = Color.White.copy(alpha = 0.10f) + +val UiCornerRadius = 8.dp +val GlassShape: Shape = RoundedCornerShape(UiCornerRadius) + +val TabletMaxContentWidth = 600.dp + +fun Modifier.glass(shape: Shape = GlassShape): Modifier = this + .clip(shape) + .background(PanelFill) + +val GlassBorder = PanelBorder + +val PhotoScrim = Brush.verticalGradient( + 0.00f to Color.Black.copy(alpha = 0.84f), + 0.10f to Color.Black.copy(alpha = 0.72f), + 0.22f to Color.Black.copy(alpha = 0.58f), + 0.38f to Color.Black.copy(alpha = 0.48f), + 0.55f to Color.Black.copy(alpha = 0.47f), + 0.72f to Color.Black.copy(alpha = 0.55f), + 0.88f to Color.Black.copy(alpha = 0.68f), + 1.00f to Color.Black.copy(alpha = 0.80f) +) + +val DialogScrimColor = Color.Black.copy(alpha = 0.62f) + +val FloatingBarFill = Color.Black.copy(alpha = 0.25f) diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/theme/Palette.kt b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Palette.kt new file mode 100644 index 0000000..e41f22d --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Palette.kt @@ -0,0 +1,13 @@ +package cc.skysparkle.matewave.ui.theme + +import androidx.compose.runtime.Composable +import androidx.compose.runtime.ReadOnlyComposable +import androidx.compose.runtime.compositionLocalOf +import androidx.compose.ui.graphics.Color + +val LocalInk = compositionLocalOf { Color.White } + +val ink: Color + @Composable + @ReadOnlyComposable + get() = LocalInk.current diff --git a/app/src/main/java/cc/skysparkle/matewave/ui/theme/Theme.kt b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Theme.kt new file mode 100644 index 0000000..bead060 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/ui/theme/Theme.kt @@ -0,0 +1,41 @@ +package cc.skysparkle.matewave.ui.theme + +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.OutlinedTextFieldDefaults +import androidx.compose.material3.darkColorScheme +import androidx.compose.runtime.Composable +import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.ui.graphics.Color + +val ChessGreen = Color(0xFF3E7C4A) +val ChessGreenDark = Color(0xFF1B4D2E) +val HighlightMove = Color(0x8858A6FF) +val HighlightCheck = Color(0x88E53935) +val HighlightLastMove = Color(0x664FC3F7) +val HighlightHint = Color(0x88FFC107) + +private val DarkScheme = darkColorScheme( + primary = ChessGreen, + secondary = ChessGreenDark, + background = Color(0xFF121212), + surface = Color(0xFF1E1E1E) +) + +/** The app has a single dark theme; system bars are set up in MainActivity. */ +@Composable +fun MatewaveTheme(content: @Composable () -> Unit) { + MaterialTheme(colorScheme = DarkScheme) { + CompositionLocalProvider(LocalInk provides Color.White, content = content) + } +} + +@Composable +fun whiteOutlinedTextFieldColors() = OutlinedTextFieldDefaults.colors( + focusedTextColor = ink, + unfocusedTextColor = ink, + focusedBorderColor = ink.copy(alpha = 0.6f), + unfocusedBorderColor = ink.copy(alpha = 0.3f), + focusedLabelColor = ink.copy(alpha = 0.8f), + unfocusedLabelColor = ink.copy(alpha = 0.6f), + cursorColor = ink +) diff --git a/app/src/main/java/cc/skysparkle/matewave/viewmodel/GameViewModel.kt b/app/src/main/java/cc/skysparkle/matewave/viewmodel/GameViewModel.kt new file mode 100644 index 0000000..3992280 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/viewmodel/GameViewModel.kt @@ -0,0 +1,1445 @@ +package cc.skysparkle.matewave.viewmodel + +import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import cc.skysparkle.matewave.ai.AiDifficulty +import cc.skysparkle.matewave.ai.ChessAI +import cc.skysparkle.matewave.audio.SoundManager +import cc.skysparkle.matewave.clock.ClockState +import cc.skysparkle.matewave.clock.GameClock +import cc.skysparkle.matewave.clock.TimeControl +import cc.skysparkle.matewave.data.FriendsStore +import cc.skysparkle.matewave.data.GameSaveStore +import cc.skysparkle.matewave.data.Profile +import cc.skysparkle.matewave.data.ProfileStore +import cc.skysparkle.matewave.data.SavedGame +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.GameStatus +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.engine.PieceType +import cc.skysparkle.matewave.engine.opposite +import cc.skysparkle.matewave.network.ConnectionState +import cc.skysparkle.matewave.network.ConnectionTransport +import cc.skysparkle.matewave.network.GameMessage +import cc.skysparkle.matewave.network.NetworkLog +import cc.skysparkle.matewave.network.NetworkMetrics +import cc.skysparkle.matewave.network.TransportType +import cc.skysparkle.matewave.puzzles.Puzzle +import cc.skysparkle.matewave.security.DeviceKeys +import cc.skysparkle.matewave.security.KnownPeers +import cc.skysparkle.matewave.security.SessionAuth +import cc.skysparkle.matewave.security.TrustResult +import cc.skysparkle.matewave.settings.Haptics +import cc.skysparkle.matewave.stats.Stats +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +enum class HandshakeState { DISCONNECTED, TRANSPORT_CONNECTED, AUTHENTICATING, PLAYING } + +enum class GameMode { VS_AI, PUZZLE, VS_PLAYER_NETWORK } + +data class GameUiState( + val board: Board = Board.startPosition(), + val selectedSquare: Int? = null, + val legalTargetsFromSelected: List = emptyList(), + /** Position the game started from; [moveSans] are the moves played since. */ + val startBoard: Board = Board.startPosition(), + /** SAN of every move played since [startBoard], for the move list and opening name. */ + val moveSans: List = emptyList(), + val status: GameStatus = GameStatus.ONGOING, + val myColor: PieceColor = PieceColor.WHITE, + val mode: GameMode = GameMode.VS_AI, + + val gameStarted: Boolean = false, + val aiDifficulty: AiDifficulty = AiDifficulty.MEDIUM, + val aiThinking: Boolean = false, + val puzzle: Puzzle? = null, + val puzzleMoveIndex: Int = 0, + val puzzleSolved: Boolean = false, + val puzzleFailedAttempt: Boolean = false, + val puzzleStarted: Boolean = false, + val puzzleAutoMoving: Boolean = false, + val puzzleHintFrom: Int? = null, + val puzzleSolutionRevealed: Boolean = false, + val clockState: ClockState? = null, + val timedOutSide: PieceColor? = null, + val resignedSide: PieceColor? = null, + val connectionState: ConnectionState = ConnectionState.DISCONNECTED, + + val opponentUntrusted: Boolean = false, + val opponentUnverified: Boolean = false, + val opponentOutdated: Boolean = false, + val handshake: HandshakeState = HandshakeState.DISCONNECTED, + val newPeerFingerprint: String? = null, + + val lastMove: Move? = null, + val pendingPromotion: PendingPromotion? = null, + + val chatMessages: List = emptyList(), + val unreadChatCount: Int = 0, + val drawOfferSentByMe: Boolean = false, + val drawOfferFromOpponent: Boolean = false, + + val opponentProfile: Profile? = null, + val opponentLeft: Boolean = false, + val rematchOfferedByMe: Boolean = false, + val opponentNotice: OpponentNotice? = null, + val opponentLeftMidGame: Boolean = false, + val rematchOfferFromOpponent: Boolean = false, + + val activeTransport: TransportType? = null +) + +data class PendingPromotion(val from: Int, val to: Int) + +data class ChatEntry( + val text: String?, + val imageBase64: String?, + val fromMe: Boolean, + val timestampMs: Long +) + +enum class OpponentNotice { DRAW_DECLINED, REMATCH_DECLINED } + +/** An unfinished game against the AI that can be continued from the home screen. */ +data class ResumeInfo(val moveNumber: Int, val myTurn: Boolean, val myMillis: Long?) + +/** + * Game state for every mode: vs AI, puzzles and network play. + * + * Network flow: connect, exchange signed profiles with ephemeral ECDH keys, derive a + * session secret, then send every game message encrypted and authenticated through + * [SessionAuth]. Incoming messages are handled on the main thread in arrival order. + */ +class GameViewModel : ViewModel() { + private var appContext: android.content.Context? = null + private var knownPeers: KnownPeers? = null + + fun init(context: android.content.Context) { + if (appContext != null) return + val app = context.applicationContext + appContext = app + knownPeers = KnownPeers(app) + viewModelScope.launch(Dispatchers.IO) { + runCatching { cc.skysparkle.matewave.openings.OpeningBook.load(app) } + } + } + + private val _uiState = MutableStateFlow(GameUiState()) + val uiState: StateFlow = _uiState + + private val _resumable = MutableStateFlow(null) + + /** The game against the AI that is saved and can be continued, or null. */ + val resumable: StateFlow = _resumable + + private var clock: GameClock? = null + private var clockCollectorJob: Job? = null + private var transport: ConnectionTransport? = null + + /** Position keys after every move, the start included, for threefold repetition. */ + private val fenHistory = mutableListOf() + + /** UCI of every move since the start, saved so a resumed game keeps its move list. */ + private val moveLog = mutableListOf() + + private var lastVsAiSettings: Triple? = null + private var lastVsAiRandomColor = false + private var aiJob: Job? = null + + private var lastNetworkTimeControl: TimeControl? = null + private var isNetworkHost: Boolean = false + private var unsubscribeMessages: (() -> Unit)? = null + private var heartbeat: cc.skysparkle.matewave.network.Heartbeat? = null + private var connectionWatcher: Job? = null + private var networkResultRecorded = false + private var opponentFlagJob: Job? = null + private var handshakeTimeoutJob: Job? = null + private var pendingLeave: Pair? = null + private var sessionAuth: SessionAuth? = null + private var ephemeralKeys: java.security.KeyPair? = null + private var sessionGeneration = 0 + private var networkGameId: String = "" + private var pendingOpponentImages: Pair? = null + private var currentPly: Int = 0 + private var lastOpponentRemaining: Long = Long.MAX_VALUE + + init { + GameSaveStore.load()?.let { saved -> restoreSaved(saved) } + } + + // region History + + private fun resetHistory(start: Board) { + fenHistory.clear() + moveLog.clear() + fenHistory.add(Notation.positionKey(start)) + } + + /** + * Rebuilds a saved game. The move list is replayed from the start when it was saved; + * otherwise, or if it does not lead to the saved position, the bare position is used. + */ + private fun restoreSaved(saved: SavedGame): Boolean { + val savedBoard = runCatching { Board.fromFen(saved.fen) }.getOrNull() ?: return false + val difficulty = AiDifficulty.entries.find { it.name == saved.difficultyName } ?: AiDifficulty.MEDIUM + val myColor = if (saved.myColorWhite) PieceColor.WHITE else PieceColor.BLACK + val timeControl = TimeControl("", saved.initialSeconds, saved.incrementSeconds) + + var start = Board.startPosition() + var board = start + val sans = ArrayList() + val ucis = ArrayList() + val keys = arrayListOf(Notation.positionKey(board)) + var lastMove: Move? = null + var replayed = saved.movesUci.isNotBlank() + if (replayed) { + for (uci in saved.movesUci.trim().split(' ')) { + val move = resolveUciAgainstLegalMoves(board, uci) + if (move == null) { replayed = false; break } + sans.add(Notation.toSan(board, move)) + board = ChessEngine.applyMove(board, move) + ucis.add(move.toUci()) + keys.add(Notation.positionKey(board)) + lastMove = move + } + if (replayed && Notation.positionKey(board) != Notation.positionKey(savedBoard)) replayed = false + } + if (!replayed) { + start = savedBoard + board = savedBoard + sans.clear(); ucis.clear(); keys.clear() + keys.add(Notation.positionKey(board)) + lastMove = null + } + + cancelAi() + disposeClock() + fenHistory.clear(); fenHistory.addAll(keys) + moveLog.clear(); moveLog.addAll(ucis) + lastVsAiSettings = Triple(difficulty, myColor, timeControl) + _uiState.value = GameUiState( + board = board, + startBoard = start, + moveSans = sans, + mode = GameMode.VS_AI, + myColor = myColor, + aiDifficulty = difficulty, + gameStarted = true, + lastMove = lastMove + ) + setupClock( + timeControl, + startSide = board.sideToMove, + restoreWhiteMillis = saved.whiteMillis, + restoreBlackMillis = saved.blackMillis + ) + clock?.pause() + _resumable.value = resumeInfoOf(_uiState.value) + return true + } + + private fun resumeInfoOf(state: GameUiState): ResumeInfo { + val unlimited = lastVsAiSettings?.third?.initialSeconds == Int.MAX_VALUE + val millis = if (unlimited) null else (clock?.state?.value ?: state.clockState)?.let { + if (state.myColor == PieceColor.WHITE) it.whiteMillis else it.blackMillis + } + return ResumeInfo(state.board.fullmoveNumber, state.board.sideToMove == state.myColor, millis) + } + + private fun persistIfResumable() { + val state = _uiState.value + if (state.mode != GameMode.VS_AI || state.status != GameStatus.ONGOING) return + val clockState = clock?.state?.value + GameSaveStore.save( + SavedGame( + fen = state.board.toFen(), + myColorWhite = state.myColor == PieceColor.WHITE, + difficultyName = state.aiDifficulty.name, + initialSeconds = lastVsAiSettings?.third?.initialSeconds ?: TimeControl.RAPID_10_0.initialSeconds, + incrementSeconds = lastVsAiSettings?.third?.incrementSeconds ?: 0, + whiteMillis = clockState?.whiteMillis ?: -1, + blackMillis = clockState?.blackMillis ?: -1, + movesUci = if (Notation.isStandardStart(state.startBoard)) moveLog.joinToString(" ") else "" + ) + ) + _resumable.value = resumeInfoOf(state) + } + + private fun clearSavedGame() { + GameSaveStore.clear() + _resumable.value = null + } + + // endregion + + // region Moves + + fun onSquareClicked(square: Int) { + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + if (state.pendingPromotion != null) return + if (state.mode == GameMode.PUZZLE && (!state.puzzleStarted || state.puzzleAutoMoving)) return + if (state.board.sideToMove != state.myColor) return + if (state.mode == GameMode.VS_PLAYER_NETWORK && !canSendGameMessages()) return + + val selected = state.selectedSquare + if (selected == null) { + val legal = ChessEngine.legalMovesFrom(state.board, square) + if (legal.isNotEmpty()) { + SoundManager.playSelect() + Haptics.select() + _uiState.value = state.copy(selectedSquare = square, legalTargetsFromSelected = legal) + } + return + } + + if (selected == square) { + _uiState.value = state.copy(selectedSquare = null, legalTargetsFromSelected = emptyList()) + return + } + + val chosen = state.legalTargetsFromSelected.filter { it.to == square } + if (chosen.isEmpty()) { + val legal = ChessEngine.legalMovesFrom(state.board, square) + if (legal.isNotEmpty()) { + SoundManager.playSelect() + Haptics.select() + } + _uiState.value = state.copy( + selectedSquare = if (legal.isNotEmpty()) square else null, + legalTargetsFromSelected = legal + ) + return + } + + if (chosen.size > 1) { + _uiState.value = state.copy( + pendingPromotion = PendingPromotion(from = selected, to = square), + selectedSquare = null, + legalTargetsFromSelected = emptyList() + ) + return + } + + makeMove(chosen.first()) + } + + fun choosePromotion(pieceType: PieceType) { + val state = _uiState.value + val pending = state.pendingPromotion ?: return + val move = ChessEngine.legalMovesFrom(state.board, pending.from) + .find { it.to == pending.to && it.promotion == pieceType } + _uiState.value = state.copy(pendingPromotion = null) + if (move != null) makeMove(move) + } + + fun cancelPromotion() { + _uiState.value = _uiState.value.copy(pendingPromotion = null) + } + + private fun makeMove(move: Move, sendToNetwork: Boolean = true) { + val state = _uiState.value + val movedSide = state.board.sideToMove + val isCapture = state.board.squares[move.to] != null || move.isEnPassant + val san = Notation.toSan(state.board, move) + val newBoard = ChessEngine.applyMove(state.board, move) + fenHistory.add(Notation.positionKey(newBoard)) + moveLog.add(move.toUci()) + val status = ChessEngine.gameStatus(newBoard, fenHistory) + if (isCapture) SoundManager.playCapture() else SoundManager.playMove() + + when { + status != GameStatus.ONGOING || ChessEngine.isInCheck(newBoard, newBoard.sideToMove) -> Haptics.alert() + isCapture -> Haptics.capture() + else -> Haptics.move() + } + + _uiState.value = state.copy( + board = newBoard, + selectedSquare = null, + legalTargetsFromSelected = emptyList(), + moveSans = state.moveSans + san, + status = status, + lastMove = move + ) + + if (status == GameStatus.ONGOING) clock?.onMoveMade(movedSide) else clock?.stop() + + val result = resultFor(status, newBoard, state.myColor) + when (state.mode) { + GameMode.VS_AI -> { + if (result != null) recordAiResult(state.aiDifficulty, result) + if (status == GameStatus.ONGOING) { + persistIfResumable() + triggerAiMoveIfNeeded() + } else { + clearSavedGame() + } + } + GameMode.PUZZLE -> handlePuzzleMove(move, state, status) + GameMode.VS_PLAYER_NETWORK -> { + if (sendToNetwork) { + val remaining = clock?.state?.value?.let { + if (movedSide == PieceColor.WHITE) it.whiteMillis else it.blackMillis + } ?: 0L + currentPly += 1 + sendGameMessage(GameMessage.MoveMsg(move.toUci(), remaining, networkGameId, currentPly)) + } + if (result != null) applyNetworkResultElo(result) + } + } + } + + /** My score for a finished game (1 win, 0.5 draw, 0 loss), or null while it goes on. */ + private fun resultFor(status: GameStatus, board: Board, myColor: PieceColor): Double? = when (status) { + GameStatus.CHECKMATE -> if (board.sideToMove != myColor) 1.0 else 0.0 + GameStatus.STALEMATE, GameStatus.DRAW_50_MOVES, GameStatus.DRAW_REPETITION, + GameStatus.DRAW_MATERIAL -> 0.5 + else -> null + } + + private fun recordAiResult(difficulty: AiDifficulty, result: Double) { + Stats.recordResult(result) + ProfileStore.applyEloDelta(ProfileStore.aiNominalElo(difficulty), result) + } + + private fun resolveUciAgainstLegalMoves(board: Board, uci: String): Move? { + val candidate = runCatching { Move.fromUci(uci) }.getOrNull() ?: return null + val matches = ChessEngine.legalMoves(board).filter { it.from == candidate.from && it.to == candidate.to } + return matches.firstOrNull { it.promotion == candidate.promotion } ?: matches.firstOrNull() + } + + // endregion + + // region Against the AI + + fun startVsAi( + difficulty: AiDifficulty, + myColor: PieceColor, + timeControl: TimeControl, + randomColor: Boolean = false + ) { + lastVsAiRandomColor = randomColor + cancelAi() + clearSavedGame() + val start = Board.startPosition() + resetHistory(start) + lastVsAiSettings = Triple(difficulty, myColor, timeControl) + _uiState.value = GameUiState( + board = start, + startBoard = start, + mode = GameMode.VS_AI, + aiDifficulty = difficulty, + myColor = myColor, + gameStarted = true + ) + setupClock(timeControl) + persistIfResumable() + if (myColor == PieceColor.BLACK) triggerAiMoveIfNeeded() + } + + fun rematchVsAi() { + val settings = lastVsAiSettings ?: return + val color = if (lastVsAiRandomColor) { + listOf(PieceColor.WHITE, PieceColor.BLACK).random() + } else settings.second + startVsAi(settings.first, color, settings.third, randomColor = lastVsAiRandomColor) + } + + /** Continues the saved game against the AI, reloading it if another mode was played meanwhile. */ + fun resumeVsAi(): Boolean { + val current = _uiState.value + if (current.mode != GameMode.VS_AI || current.status != GameStatus.ONGOING) { + val saved = GameSaveStore.load() ?: return false + if (!restoreSaved(saved)) return false + } + val state = _uiState.value + clock?.start(state.board.sideToMove) + triggerAiMoveIfNeeded() + return true + } + + private fun cancelAi() { + aiJob?.cancel() + aiJob = null + if (_uiState.value.aiThinking) _uiState.value = _uiState.value.copy(aiThinking = false) + } + + private fun triggerAiMoveIfNeeded() { + val state = _uiState.value + if (state.mode != GameMode.VS_AI || state.status != GameStatus.ONGOING) return + if (state.board.sideToMove == state.myColor) return + if (aiJob?.isActive == true) return + _uiState.value = state.copy(aiThinking = true) + val boardAtStart = state.board + val history = fenHistory.toSet() + val aiColor = boardAtStart.sideToMove + val clockMillis = clock?.state?.value?.let { + if (aiColor == PieceColor.WHITE) it.whiteMillis else it.blackMillis + } + val incrementMillis = (lastVsAiSettings?.third?.incrementSeconds ?: 0) * 1000L + aiJob = viewModelScope.launch { + val move = withContext(Dispatchers.Default) { + ChessAI.bestMove(boardAtStart, state.aiDifficulty, history, clockMillis, incrementMillis) + } + val now = _uiState.value + if (now.board !== boardAtStart || now.mode != GameMode.VS_AI || now.status != GameStatus.ONGOING) { + if (now.aiThinking) _uiState.value = now.copy(aiThinking = false) + return@launch + } + _uiState.value = now.copy(aiThinking = false) + if (move != null) makeMove(move) + } + } + + // endregion + + // region Puzzles + + fun startPuzzle(puzzle: Puzzle) { + cancelAi() + disposeClock() + val board = runCatching { Board.fromFen(puzzle.fen) }.getOrNull() ?: return + resetHistory(board) + _uiState.value = GameUiState( + board = board, + startBoard = board, + mode = GameMode.PUZZLE, + myColor = board.sideToMove, + puzzle = puzzle, + puzzleMoveIndex = 0, + puzzleStarted = true, + gameStarted = true + ) + } + + private fun handlePuzzleMove(move: Move, before: GameUiState, statusAfter: GameStatus) { + val state = _uiState.value + val puzzle = state.puzzle ?: return + val expected = puzzle.solutionUci.getOrNull(state.puzzleMoveIndex) + val playedUci = move.toUci() + val isLastMove = state.puzzleMoveIndex == puzzle.solutionUci.size - 1 + + val matches = (expected != null && (playedUci == expected || playedUci.dropLast(1) == expected)) || + (isLastMove && statusAfter == GameStatus.CHECKMATE) + if (!matches) { + _uiState.value = state.copy(puzzleFailedAttempt = true, puzzleAutoMoving = true) + val puzzleId = puzzle.id + val index = state.puzzleMoveIndex + val boardAfterWrong = state.board + viewModelScope.launch { + delay(600) + val now = _uiState.value + if (now.mode != GameMode.PUZZLE || now.puzzle?.id != puzzleId || + now.puzzleMoveIndex != index || now.board !== boardAfterWrong + ) return@launch + fenHistory.removeLastOrNull() + moveLog.removeLastOrNull() + _uiState.value = now.copy( + board = before.board, + moveSans = before.moveSans, + lastMove = before.lastMove, + status = GameStatus.ONGOING, + puzzleAutoMoving = false + ) + } + return + } + val nextIndex = state.puzzleMoveIndex + 1 + if (nextIndex >= puzzle.solutionUci.size) { + Stats.markPuzzleSolved(puzzle.id) + _uiState.value = _uiState.value.copy( + puzzleSolved = true, + puzzleFailedAttempt = false, + puzzleHintFrom = null + ) + return + } + + val replyMove = resolveUciAgainstLegalMoves(_uiState.value.board, puzzle.solutionUci[nextIndex]) + _uiState.value = _uiState.value.copy( + puzzleMoveIndex = nextIndex + 1, + puzzleFailedAttempt = false, + puzzleAutoMoving = replyMove != null, + puzzleHintFrom = null + ) + if (replyMove != null) { + val puzzleId = puzzle.id + val expectedIndex = nextIndex + 1 + val boardBeforeReply = _uiState.value.board + viewModelScope.launch { + delay(500) + val now = _uiState.value + if (now.mode != GameMode.PUZZLE || now.puzzle?.id != puzzleId || + now.puzzleMoveIndex != expectedIndex || now.board !== boardBeforeReply + ) return@launch + val wasCapture = now.board.squares[replyMove.to] != null || replyMove.isEnPassant + val san = Notation.toSan(now.board, replyMove) + val newBoard = ChessEngine.applyMove(now.board, replyMove) + fenHistory.add(Notation.positionKey(newBoard)) + moveLog.add(replyMove.toUci()) + if (wasCapture) SoundManager.playCapture() else SoundManager.playMove() + if (wasCapture) Haptics.capture() else Haptics.move() + _uiState.value = now.copy( + board = newBoard, + moveSans = now.moveSans + san, + lastMove = replyMove, + puzzleAutoMoving = false + ) + } + } + } + + fun showPuzzleHint() { + val state = _uiState.value + if (state.mode != GameMode.PUZZLE || !state.puzzleStarted || state.puzzleAutoMoving) return + if (state.puzzleSolved) return + val puzzle = state.puzzle ?: return + val expected = puzzle.solutionUci.getOrNull(state.puzzleMoveIndex) ?: return + val from = runCatching { Move.fromUci(expected).from }.getOrNull() ?: return + _uiState.value = state.copy(puzzleHintFrom = from) + } + + fun revealPuzzleSolution() { + val state = _uiState.value + if (state.mode != GameMode.PUZZLE) return + _uiState.value = state.copy(puzzleSolutionRevealed = true) + } + + // endregion + + // region Network + + private fun outgoingDirection() = if (isNetworkHost) "H" else "G" + private fun incomingDirection() = if (isNetworkHost) "G" else "H" + + private fun canSendGameMessages(): Boolean { + val state = _uiState.value + return sessionAuth != null && + transport != null && + state.connectionState == ConnectionState.CONNECTED && + state.handshake == HandshakeState.PLAYING + } + + private fun sendGameMessage(message: GameMessage): Boolean { + val auth = sessionAuth + val transport = this.transport ?: return false + if (auth == null) { + NetworkLog.log("GAME", "Send cancelled: session not established") + return false + } + val encrypted = auth.encrypt(message.toJson()) + if (encrypted == null) { + NetworkLog.log("GAME", "Send cancelled: encryption failed") + return false + } + val seq = auth.nextSeq() + val tag = auth.tag("${outgoingDirection()}|$seq|$encrypted") + if (tag == null) { + NetworkLog.log("GAME", "Send cancelled: could not sign message") + return false + } + transport.send(GameMessage.SignedMsg(encrypted, tag, seq)) + return true + } + + private fun markReadyIfPossible() { + if (sessionAuth == null) return + if (_uiState.value.handshake == HandshakeState.PLAYING) return + _uiState.value = _uiState.value.copy( + handshake = HandshakeState.PLAYING, + gameStarted = true + ) + handshakeTimeoutJob?.cancel() + handshakeTimeoutJob = null + lastNetworkTimeControl?.let { setupClock(it) } + + val myProfile = ProfileStore.get() + myProfile.avatarBase64?.let { + sendGameMessage(GameMessage.ProfileImagesMsg(avatarBase64 = it, gameId = networkGameId)) + } + // Backgrounds are large; over Bluetooth they would hold up the game for seconds. + if (transport?.type != TransportType.BLUETOOTH) { + myProfile.backgroundBase64?.let { + sendGameMessage(GameMessage.ProfileImagesMsg(backgroundBase64 = it, gameId = networkGameId)) + } + } + } + + fun startVsPlayerNetwork( + transport: ConnectionTransport, + myColor: PieceColor, + timeControl: TimeControl, + isHost: Boolean, + targetId: String? = null + ) { + pendingLeave?.let { (job, oldTransport) -> + job.cancel() + oldTransport.disconnect() + } + pendingLeave = null + handshakeTimeoutJob?.cancel() + handshakeTimeoutJob = null + cancelAi() + // A paused game against the AI stays saved and can be continued later. + persistIfResumable() + disposeClock() + val start = Board.startPosition() + resetHistory(start) + this.transport = transport + lastNetworkTimeControl = timeControl + isNetworkHost = isHost + + ephemeralKeys = DeviceKeys.generateEphemeral() + + sessionGeneration += 1 + networkResultRecorded = false + opponentFlagJob?.cancel() + opponentFlagJob = null + networkGameId = if (isHost) java.util.UUID.randomUUID().toString() else "" + currentPly = 0 + lastOpponentRemaining = Long.MAX_VALUE + + _uiState.value = GameUiState( + board = start, + startBoard = start, + mode = GameMode.VS_PLAYER_NETWORK, + myColor = myColor, + gameStarted = false, + connectionState = ConnectionState.CONNECTING, + activeTransport = transport.type + ) + + cc.skysparkle.matewave.network.Transports.releaseForGame() + + unsubscribeMessages?.invoke() + unsubscribeMessages = transport.addMessageListener { msg -> + viewModelScope.launch(Dispatchers.Main) { handleNetworkMessage(msg) } + } + + heartbeat?.stop() + heartbeat = cc.skysparkle.matewave.network.Heartbeat(viewModelScope, transport).also { it.start() } + + var profileSent = false + var connectedOnce = false + val connectStartedAt = System.currentTimeMillis() + pendingOpponentImages = null + NetworkMetrics.connectStarted() + + if (isHost) { + transport.startHosting() + } else { + transport.startDiscoveryAndConnect(targetId) + } + + connectionWatcher?.cancel() + connectionWatcher = viewModelScope.launch { + transport.connectionState.collect { connState -> + _uiState.value = _uiState.value.copy( + connectionState = connState, + activeTransport = transport.type + ) + + if (connState == ConnectionState.CONNECTED && !connectedOnce) { + connectedOnce = true + NetworkMetrics.connectSucceeded(System.currentTimeMillis() - connectStartedAt) + } + + if (connState == ConnectionState.CONNECTED && !profileSent) { + handshakeTimeoutJob?.cancel() + handshakeTimeoutJob = viewModelScope.launch { + delay(HANDSHAKE_TIMEOUT_MS) + if (_uiState.value.handshake != HandshakeState.PLAYING) { + NetworkLog.log("GAME", "Handshake not completed in ${HANDSHAKE_TIMEOUT_MS / 1000} s, disconnected") + transport.disconnect() + } + } + profileSent = true + sendProfile(transport) + _uiState.value = _uiState.value.copy(handshake = HandshakeState.AUTHENTICATING) + } + + _uiState.value = _uiState.value.copy( + handshake = when (connState) { + ConnectionState.CONNECTED -> + if (sessionAuth != null) HandshakeState.PLAYING + else HandshakeState.TRANSPORT_CONNECTED + else -> HandshakeState.DISCONNECTED + } + ) + if (connState != ConnectionState.CONNECTED) { + handshakeTimeoutJob?.cancel() + handshakeTimeoutJob = null + profileSent = false + sessionAuth = null + sessionGeneration += 1 + ephemeralKeys = DeviceKeys.generateEphemeral() + } + + if (connState == ConnectionState.DISCONNECTED || connState == ConnectionState.FAILED) { + clock?.stop() + endNetworkSession() + } + } + } + } + + private fun sendProfile(transport: ConnectionTransport) { + val profile = ProfileStore.get() + val ctx = appContext + val myEphemeral = ephemeralKeys?.let { DeviceKeys.encodePublic(it) } ?: "" + val signedPayload = knownPeers?.profilePayload( + profile.userId, profile.name, profile.elo, null, null, myEphemeral + ) + transport.send( + GameMessage.ProfileMsg( + profile.userId, profile.name, null, null, profile.elo, + publicKey = if (ctx != null) DeviceKeys.publicKey(ctx) ?: "" else "", + initialSeconds = if (isNetworkHost) lastNetworkTimeControl?.initialSeconds ?: 0 else 0, + incrementSeconds = if (isNetworkHost) lastNetworkTimeControl?.incrementSeconds ?: 0 else 0, + ephemeralKey = myEphemeral, + gameId = if (isNetworkHost) networkGameId else "", + signature = if (ctx != null && signedPayload != null) DeviceKeys.sign(ctx, signedPayload) ?: "" else "" + ) + ) + } + + private fun belongsToCurrentGame(gameId: String): Boolean = + gameId.isEmpty() || networkGameId.isEmpty() || gameId == networkGameId + + private fun requiresSignature(msg: GameMessage): Boolean = when (msg) { + is GameMessage.ProfileMsg, is GameMessage.PingMsg, is GameMessage.SignedMsg -> false + else -> true + } + + private fun handleNetworkMessage(msg: GameMessage, verified: Boolean = false) { + if (!verified && requiresSignature(msg)) { + NetworkLog.log("GAME", "Unauthenticated message rejected: ${msg::class.simpleName}") + return + } + when (msg) { + is GameMessage.MoveMsg -> onOpponentMove(msg) + is GameMessage.ResignMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + val state = _uiState.value + if (state.status == GameStatus.ONGOING) { + clock?.stop() + _uiState.value = state.copy(status = GameStatus.RESIGNATION, resignedSide = state.myColor.opposite()) + applyNetworkResultElo(1.0) + } + } + is GameMessage.DrawOfferMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + when (msg.accept) { + null -> _uiState.value = state.copy(drawOfferFromOpponent = true) + true -> { + if (!state.drawOfferSentByMe) return + clock?.stop() + _uiState.value = state.copy(status = GameStatus.DRAW_AGREEMENT, drawOfferSentByMe = false) + applyNetworkResultElo(0.5) + } + false -> { + if (!state.drawOfferSentByMe) return + _uiState.value = state.copy( + drawOfferSentByMe = false, + opponentNotice = OpponentNotice.DRAW_DECLINED + ) + } + } + } + is GameMessage.ChatMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + if ((msg.text?.length ?: 0) > MAX_CHAT_TEXT_CHARS || + (msg.imageBase64?.length ?: 0) > MAX_CHAT_IMAGE_CHARS + ) { + NetworkLog.log("GAME", "Oversized chat message rejected") + return + } + val state = _uiState.value + _uiState.value = state.copy( + chatMessages = state.chatMessages + ChatEntry(msg.text, msg.imageBase64, fromMe = false, System.currentTimeMillis()), + unreadChatCount = state.unreadChatCount + 1 + ) + } + is GameMessage.ProfileMsg -> onOpponentProfile(msg) + is GameMessage.LeaveMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + val before = _uiState.value + if (before.status == GameStatus.ONGOING && before.handshake == HandshakeState.PLAYING) { + applyNetworkResultElo(1.0) + } + opponentFlagJob?.cancel() + val midGame = before.status == GameStatus.ONGOING + _uiState.value = _uiState.value.copy( + opponentLeft = true, + opponentLeftMidGame = midGame, + status = if (midGame) GameStatus.RESIGNATION else before.status, + resignedSide = if (midGame) before.myColor.opposite() else before.resignedSide, + rematchOfferedByMe = false, + rematchOfferFromOpponent = false, + drawOfferSentByMe = false, + drawOfferFromOpponent = false + ) + clock?.stop() + } + is GameMessage.RematchMsg -> { + if (msg.gameId.isNotEmpty() && networkGameId.isNotEmpty() && msg.gameId != networkGameId) return + val state = _uiState.value + if (state.status == GameStatus.ONGOING && !state.opponentLeft) return + when (msg.action) { + "offer" -> { + if (state.rematchOfferedByMe) { + // Both offered at once: the host starts the new game. + if (isNetworkHost) acceptRematchInternal() + } else { + _uiState.value = state.copy(rematchOfferFromOpponent = true) + } + } + "decline" -> _uiState.value = state.copy( + rematchOfferedByMe = false, + rematchOfferFromOpponent = false, + opponentNotice = if (state.rematchOfferedByMe) OpponentNotice.REMATCH_DECLINED else state.opponentNotice + ) + "accept" -> { + if (!state.rematchOfferedByMe || msg.newGameId.isEmpty()) return + startRematch(newGameId = msg.newGameId, iAmWhiteNow = state.myColor == PieceColor.BLACK) + } + } + } + is GameMessage.SignedMsg -> { + val auth = sessionAuth + if (auth == null) { + NetworkLog.log("GAME", "Signed envelope before session setup rejected") + return + } + if (!auth.verify("${incomingDirection()}|${msg.seq}|${msg.inner}", msg.tag)) { + NetworkLog.log("GAME", "Message with invalid authentication tag rejected") + _uiState.value = _uiState.value.copy(opponentUntrusted = true) + return + } + if (!auth.acceptSeq(msg.seq)) { + NetworkLog.log("GAME", "Replay of message #${msg.seq} rejected") + return + } + val decrypted = auth.decrypt(msg.inner) + if (decrypted == null) { + NetworkLog.log("GAME", "Could not decrypt message, discarded") + return + } + runCatching { handleNetworkMessage(GameMessage.fromJson(decrypted), verified = true) } + } + is GameMessage.ProfileImagesMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + val avatar = msg.avatarBase64?.takeIf { it.length <= MAX_CHAT_IMAGE_CHARS } + val background = msg.backgroundBase64?.takeIf { it.length <= MAX_CHAT_IMAGE_CHARS } + if (avatar == null && background == null) return + val current = _uiState.value.opponentProfile + if (current == null) { + val prev = pendingOpponentImages + pendingOpponentImages = Pair(avatar ?: prev?.first, background ?: prev?.second) + return + } + val saved = FriendsStore.mergeOpponent( + userId = current.userId, + name = current.name, + elo = current.elo, + avatarBase64 = avatar, + backgroundBase64 = background + ) + _uiState.value = _uiState.value.copy( + opponentProfile = current.copy( + avatarBase64 = saved.avatarBase64, + backgroundBase64 = saved.backgroundBase64 + ) + ) + } + is GameMessage.PingMsg -> Unit + is GameMessage.TimeoutMsg -> { + if (!belongsToCurrentGame(msg.gameId)) return + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + val flagged = if (msg.flaggedWhite) PieceColor.WHITE else PieceColor.BLACK + if (flagged != state.myColor) { + declareNetworkTimeout(flagged, sendClaim = false) + } else { + val mine = clock?.state?.value?.let { + if (state.myColor == PieceColor.WHITE) it.whiteMillis else it.blackMillis + } ?: 0L + if (mine <= CLOCK_TOLERANCE_MS) { + declareNetworkTimeout(flagged, sendClaim = false) + } else { + NetworkLog.log("GAME", "Rejected flag claim: our clock shows $mine ms left") + } + } + } + } + } + + private fun onOpponentMove(msg: GameMessage.MoveMsg) { + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + + if (msg.gameId.isNotEmpty()) { + if (networkGameId.isEmpty()) { + networkGameId = msg.gameId + } else if (msg.gameId != networkGameId) { + return + } + } + + if (msg.ply > 0 && msg.ply != currentPly + 1) { + if (msg.ply <= currentPly) return + NetworkLog.log("GAME", "Move gap: expected #${currentPly + 1}, got #${msg.ply}") + return + } + + val opponentColor = state.myColor.opposite() + if (state.board.sideToMove != opponentColor) return + + val move = resolveUciAgainstLegalMoves(state.board, msg.uci) ?: return + currentPly = if (msg.ply > 0) msg.ply else currentPly + 1 + + val limit = lastNetworkTimeControl?.let { it.initialSeconds * 1000L + 60_000L } + val increment = lastNetworkTimeControl?.let { it.incrementSeconds * 1000L } ?: 0L + val allowedMax = if (lastOpponentRemaining == Long.MAX_VALUE) { + limit ?: Long.MAX_VALUE + } else { + lastOpponentRemaining + increment + CLOCK_TOLERANCE_MS + } + if (msg.remainingMillisSelf >= 0 && + (limit == null || msg.remainingMillisSelf <= limit) && + msg.remainingMillisSelf <= allowedMax + ) { + lastOpponentRemaining = msg.remainingMillisSelf + clock?.applyRemoteTime(opponentColor, msg.remainingMillisSelf) + } else if (msg.remainingMillisSelf > 0) { + NetworkLog.log("GAME", "Invalid clock value from opponent rejected: ${msg.remainingMillisSelf}") + } + + opponentFlagJob?.cancel() + opponentFlagJob = null + makeMove(move, sendToNetwork = false) + } + + private fun onOpponentProfile(msg: GameMessage.ProfileMsg) { + val myGeneration = sessionGeneration + if (sessionAuth != null) { + NetworkLog.log("GAME", "Repeated profile in current session ignored") + return + } + if (msg.protocolVersion < GameMessage.PROTOCOL_VERSION) { + NetworkLog.log( + "GAME", "Opponent protocol version ${msg.protocolVersion} < ${GameMessage.PROTOCOL_VERSION}, incompatible" + ) + _uiState.value = _uiState.value.copy(opponentOutdated = true) + return + } + val peers = knownPeers + if (peers == null) { + NetworkLog.log("GAME", "Key store not ready, profile rejected") + return + } + val trust = peers.verifyAndRemember( + userId = msg.userId, + publicKey = msg.publicKey.ifBlank { null }, + signedData = peers.profilePayload( + msg.userId, msg.name, msg.elo, + msg.avatarBase64, msg.backgroundBase64, msg.ephemeralKey + ), + signature = msg.signature.ifBlank { null } + ) + if (trust == TrustResult.FIRST_SEEN && msg.publicKey.isNotBlank()) { + _uiState.value = _uiState.value.copy(newPeerFingerprint = DeviceKeys.fingerprintOf(msg.publicKey)) + } + if (trust == TrustResult.IMPERSONATION || trust == TrustResult.BAD_SIGNATURE) { + _uiState.value = _uiState.value.copy(opponentUntrusted = true) + return + } + + val mine = ephemeralKeys + val secret = if (mine != null && msg.ephemeralKey.isNotBlank()) { + DeviceKeys.sharedSecretWith(mine, msg.ephemeralKey) + } else { + NetworkLog.log("GAME", "Opponent sent no session key (version ${msg.protocolVersion})") + null + } + sessionAuth = secret?.let { SessionAuth(it) } + + if (myGeneration != sessionGeneration) { + sessionAuth = null + NetworkLog.log("GAME", "Profile processed after disconnect, discarded") + return + } + if (!isNetworkHost && networkGameId.isEmpty() && msg.gameId.isNotEmpty()) { + networkGameId = msg.gameId + } + if (!isNetworkHost && msg.initialSeconds > 0) { + lastNetworkTimeControl = TimeControl( + label = "", + initialSeconds = msg.initialSeconds, + incrementSeconds = msg.incrementSeconds + ) + } + markReadyIfPossible() + + _uiState.value = _uiState.value.copy(opponentUnverified = trust == TrustResult.UNSIGNED) + + val pending = pendingOpponentImages + pendingOpponentImages = null + val saved = FriendsStore.mergeOpponent( + userId = msg.userId, + name = msg.name, + elo = msg.elo, + avatarBase64 = msg.avatarBase64 ?: pending?.first, + backgroundBase64 = msg.backgroundBase64 ?: pending?.second + ) + _uiState.value = _uiState.value.copy( + opponentProfile = Profile( + msg.userId, msg.name, saved.avatarBase64, saved.backgroundBase64, + msg.elo, levelChosen = true + ) + ) + } + + private fun endNetworkSession() { + opponentFlagJob?.cancel() + opponentFlagJob = null + clock?.stop() + heartbeat?.stop() + sessionAuth = null + ephemeralKeys = null + unsubscribeMessages?.invoke() + unsubscribeMessages = null + } + + /** + * Leaves the game screen. A network game is left for good (a loss if it was still going); + * a game against the AI is only paused and saved. + */ + fun leaveNetworkGame() { + val state = _uiState.value + + if (state.mode != GameMode.VS_PLAYER_NETWORK) { + cancelAi() + clock?.pause() + persistIfResumable() + return + } + + if (state.status == GameStatus.ONGOING && state.handshake == HandshakeState.PLAYING) { + applyNetworkResultElo(0.0) + } + opponentFlagJob?.cancel() + opponentFlagJob = null + val leaveQueued = sendGameMessage(GameMessage.LeaveMsg(state.myColor == PieceColor.WHITE, networkGameId)) + handshakeTimeoutJob?.cancel() + handshakeTimeoutJob = null + clock?.stop() + + ephemeralKeys = null + sessionAuth = null + heartbeat?.stop() + heartbeat = null + unsubscribeMessages?.invoke() + unsubscribeMessages = null + connectionWatcher?.cancel() + connectionWatcher = null + + val t = transport ?: return + transport = null + if (!leaveQueued) { + t.disconnect() + return + } + // Give the leave message a moment to go out before the connection is closed. + val job = viewModelScope.launch { + delay(LEAVE_FLUSH_MS) + t.disconnect() + pendingLeave = null + } + pendingLeave = job to t + } + + fun offerRematch() { + val state = _uiState.value + if (state.status == GameStatus.ONGOING || state.rematchOfferedByMe) return + if (!sendGameMessage(GameMessage.RematchMsg("offer", networkGameId))) return + _uiState.value = _uiState.value.copy(rematchOfferedByMe = true) + } + + fun declineRematch() { + sendGameMessage(GameMessage.RematchMsg("decline", networkGameId)) + _uiState.value = _uiState.value.copy(rematchOfferFromOpponent = false) + } + + fun acceptRematch() { + if (!_uiState.value.rematchOfferFromOpponent) return + acceptRematchInternal() + } + + private fun acceptRematchInternal() { + val newId = java.util.UUID.randomUUID().toString() + if (!sendGameMessage(GameMessage.RematchMsg("accept", networkGameId, newId))) return + startRematch(newGameId = newId, iAmWhiteNow = _uiState.value.myColor == PieceColor.BLACK) + } + + private fun startRematch(newGameId: String, iAmWhiteNow: Boolean) { + val state = _uiState.value + val timeControl = lastNetworkTimeControl ?: TimeControl.BLITZ_5_0 + + networkGameId = newGameId + networkResultRecorded = false + opponentFlagJob?.cancel() + opponentFlagJob = null + currentPly = 0 + lastOpponentRemaining = Long.MAX_VALUE + val start = Board.startPosition() + resetHistory(start) + + _uiState.value = GameUiState( + board = start, + startBoard = start, + mode = GameMode.VS_PLAYER_NETWORK, + myColor = if (iAmWhiteNow) PieceColor.WHITE else PieceColor.BLACK, + gameStarted = true, + connectionState = state.connectionState, + opponentProfile = state.opponentProfile, + handshake = state.handshake, + activeTransport = state.activeTransport, + opponentUnverified = state.opponentUnverified, + chatMessages = state.chatMessages + ) + setupClock(timeControl) + } + + private fun declareNetworkTimeout(flagged: PieceColor, sendClaim: Boolean) { + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + opponentFlagJob?.cancel() + opponentFlagJob = null + clock?.stop() + // The flag loses only if the other side could still mate. + val draw = !ChessEngine.canMate(state.board, flagged.opposite()) + _uiState.value = state.copy( + status = if (draw) GameStatus.TIMEOUT_DRAW else GameStatus.TIMEOUT, + timedOutSide = flagged + ) + if (sendClaim) { + sendGameMessage(GameMessage.TimeoutMsg(flagged == PieceColor.WHITE, networkGameId)) + } + applyNetworkResultElo( + when { + draw -> 0.5 + flagged == state.myColor -> 0.0 + else -> 1.0 + } + ) + } + + private fun applyNetworkResultElo(result: Double) { + if (networkResultRecorded) return + networkResultRecorded = true + val opponentElo = _uiState.value.opponentProfile?.elo ?: 1200 + ProfileStore.applyEloDelta(opponentElo, result) + // Network games count in the statistics and the rating graph, like games against the AI. + Stats.recordResult(result) + } + + fun resign() { + val state = _uiState.value + if (state.status != GameStatus.ONGOING) return + clock?.stop() + _uiState.value = state.copy(status = GameStatus.RESIGNATION, resignedSide = state.myColor) + when (state.mode) { + GameMode.VS_PLAYER_NETWORK -> { + sendGameMessage(GameMessage.ResignMsg(state.myColor == PieceColor.WHITE, networkGameId)) + applyNetworkResultElo(0.0) + } + GameMode.VS_AI -> { + cancelAi() + recordAiResult(state.aiDifficulty, 0.0) + clearSavedGame() + } + GameMode.PUZZLE -> Unit + } + } + + fun offerDraw() { + val state = _uiState.value + if (state.mode != GameMode.VS_PLAYER_NETWORK || state.status != GameStatus.ONGOING || state.drawOfferSentByMe) return + if (!sendGameMessage(GameMessage.DrawOfferMsg(null, networkGameId))) return + _uiState.value = state.copy(drawOfferSentByMe = true) + } + + fun respondToDrawOffer(accept: Boolean) { + val state = _uiState.value + if (!state.drawOfferFromOpponent || state.status != GameStatus.ONGOING) return + if (!sendGameMessage(GameMessage.DrawOfferMsg(accept, networkGameId))) { + _uiState.value = state.copy(drawOfferFromOpponent = false) + return + } + if (accept) { + clock?.stop() + _uiState.value = state.copy(status = GameStatus.DRAW_AGREEMENT, drawOfferFromOpponent = false) + applyNetworkResultElo(0.5) + } else { + _uiState.value = state.copy(drawOfferFromOpponent = false) + } + } + + fun dismissOpponentNotice() { + if (_uiState.value.opponentNotice != null) { + _uiState.value = _uiState.value.copy(opponentNotice = null) + } + } + + fun sendChatMessage(text: String) { + val state = _uiState.value + if (state.mode != GameMode.VS_PLAYER_NETWORK || text.isBlank()) return + val trimmed = text.trim().take(MAX_CHAT_TEXT_CHARS) + if (!sendGameMessage(GameMessage.ChatMsg(text = trimmed, gameId = networkGameId))) return + _uiState.value = _uiState.value.copy( + chatMessages = _uiState.value.chatMessages + ChatEntry(trimmed, null, fromMe = true, System.currentTimeMillis()) + ) + } + + fun sendChatImage(base64: String) { + val state = _uiState.value + if (state.mode != GameMode.VS_PLAYER_NETWORK) return + if (base64.length > MAX_CHAT_IMAGE_CHARS) { + NetworkLog.log("GAME", "Image too large to send") + return + } + if (!sendGameMessage(GameMessage.ChatMsg(imageBase64 = base64, gameId = networkGameId))) return + _uiState.value = _uiState.value.copy( + chatMessages = _uiState.value.chatMessages + ChatEntry(null, base64, fromMe = true, System.currentTimeMillis()) + ) + } + + fun markChatRead() { + _uiState.value = _uiState.value.copy(unreadChatCount = 0) + } + + // endregion + + // region Clock + + private fun disposeClock() { + clockCollectorJob?.cancel() + clockCollectorJob = null + clock?.stop() + clock = null + } + + private fun setupClock( + timeControl: TimeControl, + startSide: PieceColor = PieceColor.WHITE, + restoreWhiteMillis: Long = -1, + restoreBlackMillis: Long = -1 + ) { + disposeClock() + opponentFlagJob?.cancel() + opponentFlagJob = null + val newClock = GameClock(timeControl, viewModelScope) + clock = newClock + clockCollectorJob = viewModelScope.launch { + newClock.state.collect { cs -> onClockTick(cs) } + } + if (restoreWhiteMillis >= 0 || restoreBlackMillis >= 0) { + newClock.restore(restoreWhiteMillis, restoreBlackMillis) + } + newClock.start(startSide) + } + + private fun onClockTick(cs: ClockState) { + val current = _uiState.value + val flag = cs.flagged + if (flag == null || current.status != GameStatus.ONGOING) { + _uiState.value = current.copy(clockState = cs) + return + } + when (current.mode) { + GameMode.VS_PLAYER_NETWORK -> { + _uiState.value = current.copy(clockState = cs) + if (flag == current.myColor) { + declareNetworkTimeout(flag, sendClaim = true) + } else if (opponentFlagJob?.isActive != true) { + // The opponent's move may still be on its way: wait a moment before claiming. + val plyAtFlag = currentPly + opponentFlagJob = viewModelScope.launch { + delay(OPPONENT_FLAG_GRACE_MS) + val st = _uiState.value + if (st.status == GameStatus.ONGOING && + currentPly == plyAtFlag && + clock?.state?.value?.flagged == flag + ) { + declareNetworkTimeout(flag, sendClaim = true) + } + } + } + } + GameMode.VS_AI -> { + cancelAi() + val draw = !ChessEngine.canMate(current.board, flag.opposite()) + val result = when { + draw -> 0.5 + flag == current.myColor -> 0.0 + else -> 1.0 + } + recordAiResult(current.aiDifficulty, result) + clearSavedGame() + _uiState.value = current.copy( + clockState = cs, + status = if (draw) GameStatus.TIMEOUT_DRAW else GameStatus.TIMEOUT, + timedOutSide = flag + ) + } + GameMode.PUZZLE -> _uiState.value = current.copy(clockState = cs) + } + } + + // endregion + + override fun onCleared() { + aiJob?.cancel() + handshakeTimeoutJob?.cancel() + opponentFlagJob?.cancel() + pendingLeave?.first?.cancel() + pendingLeave?.second?.disconnect() + pendingLeave = null + persistIfResumable() + clock?.stop() + + ephemeralKeys = null + sessionAuth = null + heartbeat?.stop() + heartbeat = null + unsubscribeMessages?.invoke() + unsubscribeMessages = null + connectionWatcher?.cancel() + connectionWatcher = null + transport?.disconnect() + + super.onCleared() + } + + private companion object { + const val MAX_CHAT_TEXT_CHARS = 8_000 + const val MAX_CHAT_IMAGE_CHARS = 400_000 + const val CLOCK_TOLERANCE_MS = 2_000L + const val HANDSHAKE_TIMEOUT_MS = 20_000L + const val OPPONENT_FLAG_GRACE_MS = 4_000L + const val LEAVE_FLUSH_MS = 700L + } +} diff --git a/app/src/main/java/cc/skysparkle/matewave/viewmodel/OpeningStudyViewModel.kt b/app/src/main/java/cc/skysparkle/matewave/viewmodel/OpeningStudyViewModel.kt new file mode 100644 index 0000000..88bfc04 --- /dev/null +++ b/app/src/main/java/cc/skysparkle/matewave/viewmodel/OpeningStudyViewModel.kt @@ -0,0 +1,305 @@ +package cc.skysparkle.matewave.viewmodel + +import android.content.Context +import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import cc.skysparkle.matewave.audio.SoundManager +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.PieceType +import cc.skysparkle.matewave.openings.CourseInfo +import cc.skysparkle.matewave.openings.CourseStatus +import cc.skysparkle.matewave.openings.OpeningBook +import cc.skysparkle.matewave.openings.OpeningCourse +import cc.skysparkle.matewave.openings.OpeningCourses +import cc.skysparkle.matewave.openings.OpeningSrs +import cc.skysparkle.matewave.settings.Haptics +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext + +/** LEARN: new moves with the piece highlighted. REVIEW: only due moves. PRACTICE: every move. */ +enum class SessionMode { LEARN, REVIEW, PRACTICE } + +enum class TrainerPhase { YOUR_MOVE, AUTO_MOVE, WRONG, COMPLETE } + +data class TrainerState( + val course: OpeningCourse? = null, + val mode: SessionMode = SessionMode.LEARN, + val board: Board = Board.startPosition(), + val ply: Int = 0, + val phase: TrainerPhase = TrainerPhase.AUTO_MOVE, + val selectedSquare: Int? = null, + val legalTargets: List = emptyList(), + val lastMove: Move? = null, + val hintSquare: Int? = null, + /** Plies the learner has to answer in this session. */ + val asked: List = emptyList(), + val answered: Int = 0, + val firstTry: Int = 0, + val wrongOnThisMove: Boolean = false, + val result: CourseInfo? = null, + /** Set after a review of due moves: stars gained, kept or lost. */ + val starChange: cc.skysparkle.matewave.openings.StarChange? = null +) { + val sans: List get() = course?.sans?.take(ply) ?: emptyList() +} + +data class StudyOverview( + val courses: List = emptyList(), + val dueCards: Int = 0, + val dueCourses: Int = 0, + val nextDueAt: Long? = null, + val learning: CourseInfo? = null +) { + val learnedCount: Int get() = courses.count { it.total > 0 && it.learned == it.total } + val masteredCount: Int get() = courses.count { it.mastered } +} + +class OpeningStudyViewModel : ViewModel() { + + private val _overview = MutableStateFlow(StudyOverview()) + val overview: StateFlow = _overview + + private val _state = MutableStateFlow(TrainerState()) + val state: StateFlow = _state + + private var srs: OpeningSrs? = null + private var courses: List = emptyList() + private var autoJob: Job? = null + + fun init(context: Context) { + if (srs != null) { refresh(); return } + srs = OpeningSrs(context) + viewModelScope.launch { + courses = withContext(Dispatchers.IO) { + runCatching { OpeningBook.load(context) } + runCatching { OpeningCourses.load(context) }.getOrDefault(emptyList()) + } + refresh() + } + } + + /** Recomputes statuses; due times change with the clock, so call it whenever the list is shown. */ + fun refresh() { + val s = srs ?: return + val now = System.currentTimeMillis() + val inProgress = courses.firstOrNull { s.info(it, now, false).status == CourseStatus.LEARNING } + val infos = courses.map { s.info(it, now, anotherInProgress = inProgress != null && inProgress != it) } + _overview.value = StudyOverview( + courses = infos, + dueCards = infos.sumOf { it.dueCards }, + dueCourses = infos.count { it.status == CourseStatus.DUE }, + nextDueAt = infos.filter { it.status == CourseStatus.WAITING }.mapNotNull { it.nextDueAt }.minOrNull(), + learning = infos.firstOrNull { it.status == CourseStatus.LEARNING } + ) + } + + fun infoOf(course: OpeningCourse): CourseInfo? = _overview.value.courses.firstOrNull { it.course == course } + + /** Opens a course in the mode its state calls for. Returns false for a locked course. */ + fun open(course: OpeningCourse): Boolean { + val info = infoOf(course) ?: return false + val mode = when (info.status) { + CourseStatus.LOCKED -> return false + CourseStatus.NEW, CourseStatus.LEARNING -> SessionMode.LEARN + CourseStatus.DUE -> SessionMode.REVIEW + CourseStatus.WAITING -> SessionMode.PRACTICE + } + start(course, mode) + return true + } + + fun reviewNext(): Boolean { + val next = _overview.value.courses.firstOrNull { it.status == CourseStatus.DUE } ?: return false + start(next.course, SessionMode.REVIEW) + return true + } + + fun practiceAgain() { + _state.value.course?.let { start(it, SessionMode.PRACTICE) } + } + + /** Next thing to do after a session: a due review, then continuing or starting a course. */ + fun continueStudy(): Boolean { + refresh() + val o = _overview.value + val current = _state.value.course + val target = o.courses.firstOrNull { it.status == CourseStatus.DUE } + ?: o.learning + ?: o.courses.firstOrNull { it.status == CourseStatus.NEW && it.course != current } + ?: return false + return open(target.course) + } + + private fun start(course: OpeningCourse, mode: SessionMode) { + autoJob?.cancel() + val s = srs ?: return + val now = System.currentTimeMillis() + val learnerPlies = course.moves.indices.filter { course.isLearnerMove(it) } + val asked = when (mode) { + SessionMode.LEARN -> learnerPlies.filter { s.level(course, it) == 0 } + SessionMode.REVIEW -> learnerPlies.filter { s.isDue(course, it, now) } + SessionMode.PRACTICE -> learnerPlies + } + // Learning resumes where it stopped: everything before the first new move is set up instantly. + val resumePly = if (mode == SessionMode.LEARN) (asked.firstOrNull() ?: 0) else 0 + var board = Board.startPosition() + for (i in 0 until resumePly) board = ChessEngine.applyMove(board, course.moves[i]) + _state.value = TrainerState( + course = course, + mode = mode, + board = board, + ply = resumePly, + lastMove = course.moves.getOrNull(resumePly - 1), + asked = asked + ) + continueLine() + } + + fun restart() { + val s = _state.value + val course = s.course ?: return + start(course, s.mode) + } + + fun showHint() { + val s = _state.value + val course = s.course ?: return + if (s.phase != TrainerPhase.YOUR_MOVE && s.phase != TrainerPhase.WRONG) return + // A hint counts like a mistake for scheduling: the move was not recalled. + if (!s.wrongOnThisMove && s.mode != SessionMode.LEARN) { + srs?.fail(course, s.ply, System.currentTimeMillis()) + } + _state.value = s.copy(hintSquare = course.moves[s.ply].from, wrongOnThisMove = true) + } + + fun onSquareClick(square: Int) { + val s = _state.value + val course = s.course ?: return + if (s.phase != TrainerPhase.YOUR_MOVE && s.phase != TrainerPhase.WRONG) return + if (s.selectedSquare != null) { + val candidates = s.legalTargets.filter { it.to == square } + if (candidates.isNotEmpty()) { + val move = candidates.firstOrNull { it.promotion == null || it.promotion == PieceType.QUEEN } ?: candidates.first() + answer(course, move) + return + } + } + val piece = s.board.squares[square] + if (piece != null && piece.color == s.board.sideToMove) { + SoundManager.playSelect() + Haptics.select() + _state.value = s.copy(selectedSquare = square, legalTargets = ChessEngine.legalMovesFrom(s.board, square)) + } else { + _state.value = s.copy(selectedSquare = null, legalTargets = emptyList()) + } + } + + private fun answer(course: OpeningCourse, move: Move) { + val s = _state.value + val expected = course.moves[s.ply] + val now = System.currentTimeMillis() + if (move.from != expected.from || move.to != expected.to || move.promotion != expected.promotion) { + Haptics.alert() + if (!s.wrongOnThisMove && s.mode != SessionMode.LEARN) srs?.fail(course, s.ply, now) + _state.value = s.copy( + phase = TrainerPhase.WRONG, + wrongOnThisMove = true, + // After a mistake the right piece is shown, so the line can be finished. + hintSquare = expected.from, + selectedSquare = null, + legalTargets = emptyList() + ) + return + } + when (s.mode) { + SessionMode.LEARN -> srs?.learn(course, s.ply, now) + else -> if (!s.wrongOnThisMove) srs?.success(course, s.ply, now) + } + _state.value = s.copy(answered = s.answered + 1, firstTry = s.firstTry + if (s.wrongOnThisMove) 0 else 1) + play(expected) + continueLine() + } + + private fun play(move: Move) { + val s = _state.value + val capture = s.board.squares[move.to] != null || move.isEnPassant + if (capture) SoundManager.playCapture() else SoundManager.playMove() + if (capture) Haptics.capture() else Haptics.move() + _state.value = s.copy( + board = ChessEngine.applyMove(s.board, move), + ply = s.ply + 1, + lastMove = move, + selectedSquare = null, + legalTargets = emptyList(), + hintSquare = null, + wrongOnThisMove = false + ) + } + + /** Auto-plays the opponent's moves and the learner's moves that are not asked this session. */ + private fun continueLine() { + val s = _state.value + val course = s.course ?: return + when { + s.ply >= course.moves.size -> finish() + course.isLearnerMove(s.ply) && s.ply in s.asked -> { + val hint = if (s.mode == SessionMode.LEARN) course.moves[s.ply].from else null + _state.value = s.copy(phase = TrainerPhase.YOUR_MOVE, hintSquare = hint) + } + else -> { + _state.value = s.copy(phase = TrainerPhase.AUTO_MOVE) + val ply = s.ply + autoJob = viewModelScope.launch { + delay(if (course.isLearnerMove(ply)) KNOWN_MOVE_DELAY_MS else REPLY_DELAY_MS) + val now = _state.value + if (now.course != course || now.ply != ply) return@launch + play(course.moves[ply]) + continueLine() + } + } + } + } + + /** + * The trainer screen was closed. A review left after a mistake counts as failed, so quitting + * cannot save a star that a finished review would have cost. + */ + fun leave() { + autoJob?.cancel() + val s = _state.value + val course = s.course ?: return + if (s.phase == TrainerPhase.COMPLETE) return + val mistake = s.firstTry < s.answered || s.wrongOnThisMove + if (s.mode == SessionMode.REVIEW && s.asked.isNotEmpty() && mistake) { + val change = srs?.recordReview(course, flawless = false) + refresh() + _state.value = s.copy(phase = TrainerPhase.COMPLETE, hintSquare = null, result = infoOf(course), starChange = change) + } else { + refresh() + } + } + + private fun finish() { + val s = _state.value + val course = s.course ?: return + // Only reviews of due moves change stars: they are spaced by the schedule, so stars + // cannot be farmed by repeating a line. Practice sessions leave stars alone. + val change = if (s.mode == SessionMode.REVIEW && s.asked.isNotEmpty()) { + srs?.recordReview(course, flawless = s.firstTry == s.asked.size) + } else null + refresh() + _state.value = s.copy(phase = TrainerPhase.COMPLETE, hintSquare = null, result = infoOf(course), starChange = change) + } + + private companion object { + const val REPLY_DELAY_MS = 500L + const val KNOWN_MOVE_DELAY_MS = 300L + } +} diff --git a/app/src/main/res/drawable-nodpi/art_caro_kann_advance.webp b/app/src/main/res/drawable-nodpi/art_caro_kann_advance.webp new file mode 100644 index 0000000000000000000000000000000000000000..cd91ad3ae03b04f555ffbae069355f01e24a7e0e GIT binary patch literal 17462 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 z

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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_dragon.webp b/app/src/main/res/drawable-nodpi/art_dragon.webp new file mode 100644 index 0000000000000000000000000000000000000000..5157057a5a4224e462ce3a120dbd4c02041a87f5 GIT binary patch literal 21770 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_english.webp b/app/src/main/res/drawable-nodpi/art_english.webp new file mode 100644 index 0000000000000000000000000000000000000000..689dbb2aa28ebc29b7b52dbf0fce6dab7bf93b06 GIT binary patch literal 19056 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 D`0#-+ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_grunfeld.webp b/app/src/main/res/drawable-nodpi/art_grunfeld.webp new file mode 100644 index 0000000000000000000000000000000000000000..5b056991cac4466c43cfed596b7ada14e0912334 GIT binary patch literal 24556 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_kings_indian.webp b/app/src/main/res/drawable-nodpi/art_kings_indian.webp new file mode 100644 index 0000000000000000000000000000000000000000..0671e406a07b924b00884baae9981f9f307aaa36 GIT binary patch literal 20066 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 JCIA2c005G%0Nnrp literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_london.webp b/app/src/main/res/drawable-nodpi/art_london.webp new file mode 100644 index 0000000000000000000000000000000000000000..8f7ca67bbefafa2a7c7de9174167ce39cd7202c7 GIT binary patch literal 24158 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_najdorf.webp b/app/src/main/res/drawable-nodpi/art_najdorf.webp new file mode 100644 index 0000000000000000000000000000000000000000..d345a142e6b8e98506b9805cf23822e2307b1786 GIT binary patch literal 16778 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_nimzo_indian.webp b/app/src/main/res/drawable-nodpi/art_nimzo_indian.webp new file mode 100644 index 0000000000000000000000000000000000000000..f48521c2006b81a4a6a68daf4537256389d23d08 GIT binary patch literal 26382 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%0D(Wd4qDYLU@(n@ZWlxcd+<-K2+zQ(KN7bNg& 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_pirc.webp b/app/src/main/res/drawable-nodpi/art_pirc.webp new file mode 100644 index 0000000000000000000000000000000000000000..786d5cbd832ce89beb56735b09d6493b0b7b0841 GIT binary patch literal 22306 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 N4WJ$gY9h1%007l_YHI)h literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_qga.webp b/app/src/main/res/drawable-nodpi/art_qga.webp new file mode 100644 index 0000000000000000000000000000000000000000..5bff24295ee240512a975d6957ca29575d8debc9 GIT binary patch literal 13538 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_qgd_orthodox.webp b/app/src/main/res/drawable-nodpi/art_qgd_orthodox.webp new file mode 100644 index 0000000000000000000000000000000000000000..be4fbc383f59d5feb7a7380ce195e04b5968bedc GIT binary patch literal 21358 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 Bs5<}v literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_ruy_lopez.webp b/app/src/main/res/drawable-nodpi/art_ruy_lopez.webp new file mode 100644 index 0000000000000000000000000000000000000000..00a4e6d3762c92c97ffd5ba5b5c456b28decb290 GIT binary patch literal 21722 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 H7ytkOcSVB? literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_scotch.webp b/app/src/main/res/drawable-nodpi/art_scotch.webp new file mode 100644 index 0000000000000000000000000000000000000000..58d4bcc28aa2cd1731278cacd1d652e9b2a25747 GIT binary patch literal 23472 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/art_slav.webp b/app/src/main/res/drawable-nodpi/art_slav.webp new file mode 100644 index 0000000000000000000000000000000000000000..dcc4de672c2d3d8287b104dab3db983487271941 GIT binary patch literal 27464 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

$F9}Oo6}0; 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%0Auy0Oq_89JQTiM3EE*#$0s90s2=TU&Y_) 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:TBCrfW`*c9x2;$!JX73V@}yS=h~3hD3O_l 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 $E&c{-#W@s5I< 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 z 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/bg_profile_default.jpg b/app/src/main/res/drawable-nodpi/bg_profile_default.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5d2e8ecbfe165232fbb7d58745b12da2170090ae GIT binary patch literal 29783 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_add.png b/app/src/main/res/drawable-nodpi/ic_add.png new file mode 100644 index 0000000000000000000000000000000000000000..b3d35852934095f61c5ce5fdb897d60dc53d732b GIT binary patch literal 3117 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 Qw{U{I`2ijm-6AFb1%e&e`Tzg` literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_add_photo.png b/app/src/main/res/drawable-nodpi/ic_add_photo.png new file mode 100755 index 0000000000000000000000000000000000000000..a6ad7226aa7fb9485c7c4890253407008c102b73 GIT binary patch literal 5304 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 Rrv{GzLw!@d+KbNj{tvQjh++T$ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_ai_app.png b/app/src/main/res/drawable-nodpi/ic_ai_app.png new file mode 100755 index 0000000000000000000000000000000000000000..2af4ba8b5277d4e43ee4eb7f640fcf7cf135a8a6 GIT binary patch literal 4226 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_approve.png b/app/src/main/res/drawable-nodpi/ic_approve.png new file mode 100644 index 0000000000000000000000000000000000000000..e38d2e44d0ff3ac9347635d059ee6c793a634e17 GIT binary patch literal 5080 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%0A>z#tZeHr?QHagg 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_bluetooth.png b/app/src/main/res/drawable-nodpi/ic_bluetooth.png new file mode 100755 index 0000000000000000000000000000000000000000..6330e13169ac2913c6e0eaf62e67712c70893441 GIT binary patch literal 5521 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 I7QBT20FBK1Bme*a literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_book.png b/app/src/main/res/drawable-nodpi/ic_book.png new file mode 100644 index 0000000000000000000000000000000000000000..7d584b86ef5de07c7f1025aee77bde90bbe140f8 GIT binary patch literal 1736 zcma)5i#ycm7eC)=W(-P0Xvr`Nxvbx?2H7R!79*Ezil3Mv(b#53c4eqEa;a6hJd&jg zQZ^f_+1Oks_sd4VCHWxx5Cge$Q*&)Uf^V`I|1(w$Ov z2!^O+!xjDJI+J1#N8Qeeefh2yvr)EkO_?V=GE&>K4Gi2)e!z*^Ix1=jr~G>LBI1uV zh?gE0|5hwoAF5mW>!I+Sxvy=0ySPTArOLb4pBn0sa*>+F^uu#(>pUNAPpQVfETB98 zUolSE5ARSuX+c%NUNrC5&efCm!-vjF6Y1Nq`hj@E^Yb#+>0J>X)^@ewG3cY8{7qa1 zDWe*Fdn2o7Y5uDbqvwA8NXWLG@{SX-dQYOp7|rO)*;`Zoov}(6>*n(ZB_`76#?cOk z8wawzHyH5?w=0es#I;Ti<%A-a^-n%fb|R@T`iE>x2Gx?8n1#o5KGoCos2OejQ?x*I zEMt+~{a&?!Fm%h+sw7QyZKf!*L!;&1YtilaRY^oE54a9$rd?&TKdP?<+7GbpJ9;E6 z-B>tp`tWQQ^I4$yeerYe7leTA$zzC_k%bH0iKw-^zWQnP=qu5yVgI$(yVlu@Zz6jY z;d0RIgo;?FIOE{$7J8(E}T3{Mr^=x&gb0hIB>eG5Jy z?7ZJMDmQFbi|gcFXZfy+aDWGj;`e#bY30Zr`vZ_etGGW^E8!~)ADeJQNkxv5e#EO= z7npAyVB&?PbR7rAw6%FtJR|@tp@>R^{TUK(XuaFwsuEiX01(H${DHz>@___( znX1~N0Y!j}8QU?Cn;{*E;1<|@ok4+Cvm@)wCuAJ(4xBRj2`C}EWm{L6hCza>wr&oa z0Kp+6pXhJDR;YS+C-H!1#RZKR*&}6b6GU?~sQRg(fe2ia15omEKBg^E4#}+M^r!Fn zyuAs=GyTetx_QVPLc@*I@hBuScWws`#!`XHNp3}i-BKS0g|ANOlP^cOTX%hlrX08O z$H75TnGXDVD)Q{(H@65$rn zF`!YMT}a?IC^TFr^6mq--u}3uj`iDrZewqX%SmDGfh&)`TnsWA@vWVi)i55ki?t@& zl&*r^HG&mX!bH5MsEpP%f1;e(cd0&ZY7p~0w z-bL+GyfoAye%v{w)i;`7N}}6ukgmD@XKt}LJ9N^d(SO`V$?l@MR^M{o6+1z$^uPT2 z#i_RVIYI3H09w%HkLEVgw1_Ujke^llRUdIPrFTFFd)3DHY)IjBsZvtN%+3>8WjnD7 z^e=4Bif?##v#w8kXNya}LaUDCNl3j4T51=nmnh?rJJ6*YmlhaVjP2JV)C4s{H98(y zVuxUls_&OCXQrjnWCY9-cOw(eWYb=lrN3SB~W`g8l+- zz%jFZyi5{~xvU$4Gd%C6iGH${Nk*4RGR<(zRow{O;0LE>Ja={r{Ojml$K-Wb(pp9a QS2sCS7cb{>$Kb@j0noeVasU7T literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_cancel.png b/app/src/main/res/drawable-nodpi/ic_cancel.png new file mode 100644 index 0000000000000000000000000000000000000000..844312836345adeb27fa87e780b7998f612192ee GIT binary patch literal 7625 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_chat.png b/app/src/main/res/drawable-nodpi/ic_chat.png new file mode 100644 index 0000000000000000000000000000000000000000..dd2f6e2cf9f0bcf6a8eee606f5be74258199ce89 GIT binary patch literal 5246 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%0A$3o_9dM{q`Ek?W(p7ABQ(BaPd^t+k}r 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_check_permission.png b/app/src/main/res/drawable-nodpi/ic_check_permission.png new file mode 100644 index 0000000000000000000000000000000000000000..e506804c8bce99765db0ba4022ad82e263e02733 GIT binary patch literal 6149 zcmY*dcRbbK|9{`>jeD(JuD!3D9WpY@#l0dUsbs}X6p@ugq%3m)JYy{_&a<-!vH$?UZeonJ0ssgdLI4;O z{o~+QdJ6zJ0TZnLl|aZ!E^Bs?W=-Vc_|SGm#art$56%qU+m|;luKu)ukYMcJynRyq zd0=jgCYOu#-^K+=FoH^f#Q-JjAB6d!9Vn}x(hy_v^9oATgx9Os;u1k05WhiV!c{WZWt=`-L4Z56wpP^H&#KtXTcSqWuL zy74Clg}n%>G`;zMxjCcBZ*+$|25*%>CL{WSeSCgrb2b=YK%dB@HC7^#zIklI4vl9t zpt9p}fR$xGzl5?3-Jw2%e0>Clg^rMEYDO@&e;e3K{Z`qCFs83KiImm~Cqn)i^IvI1 zgI0(J2FTGH?V>sbd=>pSDIj8u0rbIRYw6=Xx7_kmto%nGoS(hsq{U#myJWx(hi$a> zPp!~SmEE?bQe!-$zLOC6kQ<1!_%xtdzgcGUO{_&#$N~vh1B3mqo`nW;6A9 z?5!YYpFE6YkkA)khwQq>}`s_vEg-g(!5AZ9J$}?V%lL$4PA}!PO_u zpor%hCalUeAXS2lfon~!o_FGT;or#`eGcAGam36g+bz*57YnDJPomH@k4TD!KKV+l zG~|o<$CN$7$$J-yoHZ_@@zKANQgq>XW2)Cen(<_mzK3g#G$bjo@+c|42gVuKpi|RR zxBN;H>Ijng9w+F_BTsS3fQknc!9y&dzQEJHN;`K6ZOLDI=|vENS{iuvs7!vUdz~8x zO_W)xQa}-&DJ(cNezX?ojCyqx2Y#CFyf&E0QX#nXWNT~1LMC2GbY)&?#Czm z>q>rEpby8`hn3j&nhvi9jsGIfp*holhpx}J&)_C^bszu6AoS76gsZt&z}omi_crW( z<{^)Mt^pHVE$FliRPzbZ3r5rhNgaP}*p-;ZOz4r$7HYMwGb3$YF8bZn`^^+rQXHT| z{H0|(^O>9AUX#OOANqIIjd#Q-{K+*z$#Qfn1QGyH^4vP&Hb8v#N=dWaXS|tF`k>oG z2QV}+n>QaA&l7v@hf40#X-h%(G&yG<7JY}RGWf9% z1{#98SoL9uus~>AT1Z_Z1({f7ydGR9{wTwUgGlIzqk4fpdr76pCdr{_wx*rs3Spuq z$SE6#8nzN0y`_qa>LQ=HhKvSKu9wjEora3U2Uu#yoF+K=yKpvJoNS&9kDrQ&0h%Mx zCHf;s+qRQT#U!9&MlQ%e98TmdOky8l%Fko)DYD}fg#UBqwi4&-_I(2jV!n(j0Zsjp1B-+Sn z6u}OZ?9v-!VeDx(=C>R56Xf>5xo(Yc5w@xnF8rtsyM5!$V=hY)#vW=Zn$c?VCxXBV zy$h$dL?%ZtO`sSxyq}x7{f>i?dHPKrhIuE4``v(It=}5gY!dON@H{xVxV)bSLYzyRaJT`c4cz5~JimGW zU9#Pg7hlaBQyh?OIBqeO$ETNkEk_ptp?tEnQ$aMS2D!d{D>Qy!0B%5hD-Fb`eU%db zibdq+rTx#91}B;l9IPjD>18Hi`kcdWy zPiQV`uYWd^d+r`C3tA0PA>R;US0THSmQ;^KL7?K%2K@PbZB7|Q7LhhBKM@(x7bO@b zwUsEC+l%nvi3Vnfn^M!<*AMz+L2Kz(ACX!u-98BpPF=AfVkq)dPd;n`j&EdzfSZ-V z<7nm-ru0!uRaLS(-!`uB@`hTs$NNO>y)0O$;zh!?+E64AMzc=vNMSGu|8}=DOJIn? zS1%Jl%5UB8Sd~zcfC{R8nBejE`56gl)22#OG_^*)WKbx2?>n8ED|EXjM%X0Ws^iuO+kP61OQ&y zd@-7b3sCYgEx4*_1zN&#ORl4+az?1s-pp|INp^_O3}c!+!psy9KV)juuHY1Rmkl+h zUYM)!6Nhdby=DdmxCoA`LC*)2vXJLY4wnt|x)JRS4EdCJS$D%1CkbkSYH|z^>tIsB z%~mz`)mQ?IEPXJua4W8Cy6Fb}5WXWXc2PMJD6FIj*Wm0D$D%v`;=FethbSWalds}H z?mv&*aU<*^Cj=XdO%W*!kU=)(@1;)jK1hOzdwFswu+|!0+7!diCtODna!Vua2=~}D zggQtkScJPG&LFpcmdO`aex9R|0KaMBTafP42SEyN4ny+pTlCd#-8NrR4wUy9H$S@l zxlWpG-SFU_15{A2YdN z4EKy+`&Q7-r`bS^1A+g0&SZxRQg8J5q0aJ2%Sq(eV8g3SJ0*yUcwSXpp8kg~MqDLQ z1S9^#a*3S~%8^5hkxVFwMM<_w2G?ZpXSb#930u|vT?~Z-fuY2Fsg9mr&-=3QVnen} zv;DbkSl3X(33pZPcrJ)PFlJUfG1&BAvo^&_7nv;JkOxjNe2hRt5ttVh%9l*-vS1_d z8yyq!wz460`;@#(Q;J((`B1>M5Vn~Fn7EltGk>#blW41@Ffz0hs>Lv!2;I8wst={b zyk2%aehni(W~)(XcM7ceQoGZWjaPme_CiL6gTePMcJ}A7q92Xab2t7k8As15xiR%y z+)Bf&q^6y36dt`c7sGX}jZ=O!v)dk>4>n?f03W2|O8W=PsLvF(+K0M(sWb^|eddLG z*cu@qE?4W;%@@*yc$5~ih^SuE=&D7OZDqlsNg!8~(3wgerv(O96MTUd!V_YjZO$h#GPK>Q}z8rrk3iOKA3$|Dn}l z$A((?mslzQd1d*h*%~-7DLS)n!TYTSmkr9O#VO40otC*V2JBTNC#zK-)K@X5NF>`Y z2wq|yA{OR&qW}#zL)HNEvgrAR$*$cQt7rp|%BjHm;&HwdlosC;^T591KeR%u4k|SE z+@lZkCc+`=Yzo8d4o^BhDnZ+$R`R*?`;(`)1HvM91`!S)_k%?pS+Y|JF!4Y^+pIm~ zHr{f**gLLuvnvQ?X=?;k6o37P1a+-BB)v@4y>uAQ+Iq_(7U(3iDaHJlPz!R@mD1|E zR>~(*|JGlHH~!NI_6P%RY^QlZpG3Hz@EK`Y4-29$rZOZ^Qzw4EU_el3WcP?IYA-i7 zG^QpS4{bn42_=6`> zqqFbnXw*r9p}510Z>euo_vduC0O)@#?{!$BhaN9l9BT1F8rme;w>gT+xPOOtNy+yy z?>}g0;fNa?8N9PHiXd1|41TR%{9|Tz(Rp|!F%)$2A^VPxIBxSUd!7dv%U^32X}+qI zvVM)JWV_#Q_(_jXe12Q&r4G`bCp-Z3aXXyvhIZ2we7fJEi=*cq{my#sB$*V7-PqVG ziw|Bd9L}6zLCUh412|FlepTp^cT>;LjQQglWPqwIl6Gm++sh~M^yr(t>OekvM&vMe z+CRR3#p(T$=E!#gwMcWK)1oum&DX8AzodC7p0+50XS=ic!ghYdYyu-z$U|m9ctW5f zmv^uW3*_~G#PO@%cX%%?0Z~0E#jZ5&CuNeT6=U%6%O9%$obujehWoWX$zk&c0H3=z zsXXF?xFx0keS5>`Nk%h?%#kh!m$dGSS?3+xWN$uB^pyZAdpfp+!Y8CnmlLlwyGq-7 zv`y?>WrPUJPClp(I@^x19#@#}Qv@fQ&Rt{tF3_*E*>sxrXzPbwYY&aK?yJZFWi*{y zYe{#KV9olKMzj$66DaRP>zh0$O zt!g@_(QjgLYrWg+0uXDdA(DY4XYd9cv10UcL z9hd0buK$_r{0ab=U;Wbp#^WlMOi3SIH*X6m{5wr}gG=2a?bXX$2O0pHl9#@p;>eo* ztXRpZe~)cWa{gW099xAkpP%82nW&XZ zN5d8|K#fFB0MulxBZ%eba-m=1X|3H$M^ft-9Mi%suTQr{@zo|M;efV=(t2(v^Xtnp zo-9Y-P_4>mey@iZDgGy)8?c81bTs|@gotCyX?lDt+07Q}an*VcRK{@|l_RCn2yp^yYv^g)OgJo1cT}oWUC01(xxE;g6&F9h zuh`NgHyQM9PxbhY(Xa*xNy~a=8;-(ESyA7tNif*9U)l_B*8hVdJfAT1Sbofj$WgRD zDP(fD*s==wD&5-UB~6dKhy%o~giiDi9t*{d<_*_sB%VT6s3Y6oWWYa-2aF!GMe#ub z3IBQ4cLz)2d&VEgmQ4igau6d!m7rBsl@3vVm(p&VdjIX z4O)rn2ofM3%U9sL*WM_yyjyudK?!fLyqr8QHnUnhT4{vsU#fO8`x?-d3IrDA+)a{-Fe3j@1UN%T9AAT0dlPgKu0^bI zXXTCZL4pKDWnI0T36fHGD>SW<*7xUbu=n4uzJVjB(0^G%xmQepgp);w(vtN?B}i#G+^Uy4@KC-iT=wy9HW9Xxp3GM)qYtQfr`gov`637}8Y zqP+xYQy1gfh^A)?A=fi1^h)mN0~Lb9=%i$R)1HgxT-9oKm6*-H^k4Cm3Z>1OK*zVt zt7|z2!+u(qGJHKF}M?@j7^_aeqX2#K}@~=@lDIU}Q&yrRm>v$me$HRKxN{3m# zceYFiYjBNx4qrjvQ-)3`Jb6i6KCdKR3GK$?ai(* zFyVLZti`jI4^gh`-FDmn6$8z?mOK;R-0+T)uy2ymH==)kZN+!9#NJv*@A~DOtPJ{VET!a634n$v@mpRgLb)BiD; zt2;LcsdsrC{yZUgbK!A^>G|g!D>k03=fwd}BIwqufW;I!ol=A%Zu(#Sb!~6YE%nJ^ z{y=$r;R_WxFXVA-01_IwD}o{u7Y74C1H>^aJnVvieOU_p7HHSRwIT6@5oC zjzNMzHP7FG3M+v?zpHFmfG8QvJy2#%78VNr2PKnLCnD8~xs&AS9J%v7PJg-w8{i&xE$AHWoNp>fVijqKk##!m_!P6ZD$> zMK1X%8zLQEEC7*C4$Dig&g)-`uy0O3#R z3ztDGG}uihRC##sOauM$2H47RAjGFkjy~sb->+E;$MI$2fb00oer728oYFzi?j!#l zyyxT2J*V%Ljrkx5A{i-H5`ajb@G-*hI(mbr;2p2t6c>aLW(R^p?3PI6 zc`#VllRUYJa5_7Cy8{VvF)V>6z%0d)Z82!VMWo(2ZG)%M^m-AUX;iNda7_|(p1Buo z7Pd?gPSC9W zFjY{HB8126E_t|O>?Z~OP*HeFUIxd?$M ztJ1~atRkg}7w74^@gtT_cIwLbu^wH+KRy20l1z`R3!GC+@dpp3C;rh I$^aksf2MfmZU6uP literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_communication.png b/app/src/main/res/drawable-nodpi/ic_communication.png new file mode 100644 index 0000000000000000000000000000000000000000..b76bfb92f281e62bea2623ffbd62d4b949a74ea0 GIT binary patch literal 5239 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_copy.png b/app/src/main/res/drawable-nodpi/ic_copy.png new file mode 100644 index 0000000000000000000000000000000000000000..42316bebbb15e73c45ec1f2e5686a64f7ae64d1f GIT binary patch literal 3990 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_edit.png b/app/src/main/res/drawable-nodpi/ic_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..8fdaa5f0e82f128059ac306800027561a6e29a3f GIT binary patch literal 4482 zcmYLNdpMKt|9_rs#x$ByEvGg_LWZ1AGv{(l&c(8*4_b=igKU#(PAMrlBpr#Q$RT8_ z=1>wPlyX{*5f-vC_I>(Zzw7t?>$%^r`*pwW_x--_>$$GiJJrL@QA$!?5&!@xXD7RT z002Tm5RgDZp93dL!vFvSINRCmj{|3KNacSqk+!?>{8N})ZKFoP>}&lp?p%FuwoW!) z0(-pKCvvYEXz{qLckbrz{!9@bU_M0<8BZ%pq9nf3a6lsfOGQzD)B^YEXQw-u}X_`zMVuNl=r*#C}kK*f&!rOT~eQ+n#z>narPG?Fn)yq@^Rc* z&H1yOl^=N*MYJrl^=9ku&!i82aU1``0ZuNPd(~i{N~6{$ed?7@36CT^vh80In8f_h z+m%V60AFY$R81JRmMb(_YPd_v%+);FoI!GYE%cxcZ$Aq*sdAV7C7kN971EY2$ZA;XStAqm9>u`aGd7erlL%SohCnFOh?tjBFk@=9ue5`7BOu{ z3dz}Fu0yYX$kUt~ZE@1597_fd+~QtmA=JpJC+uixtiza-!(Y*W1z3tNMjMJ%e<` z{|#=E-w3bYlXl_`%IPrn%ap}Mo|f)-Y>dv5DH

;56q(;$^qb>DpTDupZy4|E&5h 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 RH5kAiKucYpP^L-@{U2Sz25bNT literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_error.png b/app/src/main/res/drawable-nodpi/ic_error.png new file mode 100755 index 0000000000000000000000000000000000000000..d09abfe6e707fd27aa872db78d9828b4dc5d36d7 GIT binary patch literal 6178 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%0Av4OE`Xu9jUJ>4jkBaV6LyB~_5WxS z<55)5pt>mp?F3SvcD0}=ETTrvzn4{vraag5LZcSq04tfI&k{as+4Z_%y^Q9%^b=V z&~8z5x-MLDm5k80wex{^`yp*3sCqeneO!we84{3S_j*>-tkWM0)IYy6=;n!l27fPB z)G$xhn*?x0q$jEE_+v?KI`_^{R&{>!ZRs&d>*nTkR!V`$I^J>Hr`at~EQiU+j`R=< zqQOps?cc^9?brLir@pxg1-4?TkC$4Il=$vnpP#*bl@}m?d|RQ=F(+MFdE04P%e!LW z3?e9F&krq2Mq1QQ4Ry$R)Vm8$d~8ON621@1S*^yl!XbX<`Dw7j%Kzp!ny$Og^Z>ip zNA0olfE%#DxyqJw^5FoU(rMcoh#`4Mzi4oJaKDr}41$`Gl*ZMMJh`8X$_$YIv_Ihn zW(OR39-3_Iega{%3e$;$O)sv0iDm;iadZyE8 z;muV2znVUEw=6YLPhg_Yd*G-Q zdxly869vtfp+fUt+B<;{xmLz^ac#Yrf#hP>fBZ9Gs$wI@@XseUTK@zeuSaT6c4j#_ z;T*A~)x=tF^n_3hkJsFSma@qyne2RPtABZCSGf?8B`NmIyr-4FHMfV4bMQ{8CFFNk zE?w?kJ}8H&ywUx(Yd}hW*gV~9kLpe1Rk9?0@@K>oyDJbf`G@%i_~!GvmqY4!n>M!KG=Z(& zvYrL!;6d>ZWmnCYWO<|}zJ6H~3GWM`@d1dko|L_;>C>jWU%B8qpIC*nDjMU%J0KV?kEx7atMB36P zH|CV?_jVqc#QZ~}I%Hgq`1H1pnx84jp~MZ}$VHU9>p>|o@|`hXT)kwP*7Ih?9bkXt zVG=UVObCpHXl+ij!Kdk!<eAkPn9ebO4n5Ro{&FmyyysTtWp985roWix*7LZ(7+Jw78yIeTwv=T#Ct{L|WbSR> zn(OG!{uNy>0#+MH8K`eh-U_}|bSa-3BetjhStvK=o!tq8EUa5X&&jWDf^ zAu={i#TQfgX(W}BK*n{Bijr0jYsvOcV*P}=u~>LnZ&8rvRC@`w=D&sZ!KK>6uaaCE zz~Ti1Q;SPopH?jap1jh}u}R*jNVih8tvLURV1jdl7|-b_8n?z=xzdh{)>JQuh}M=T z-zgr27CN=FxoV^n3|Ul0Ya(d$EhEQgONAtS-Iy`F+*QeGsy&7!TdO@S!`ainf@=|3*FV08~B6d+-E7^Ot7Wao@#%y z^|ScL)a@k=z)yBiBIfFxPzD`vVl>eTPLxBuR;u!|Nv4m`J<|ZS=D`Lu46# zw?eCJUC+-tVLWM6v?n8h5hE=`v-5OaWo8uRZyfkx{v|Eq2O4Ky=Var>62?iJV-BZP z>uWS6|8L4iNZN-+b7$36O_tG=Ne45*q%4}X?{b4XRaIz8zv>bH1Dwczj%ft{@$p%t gxh!qK@VBkg0l_SNg889?f0uxNH4QZ?3B>UK0sn9GZ~y=R literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_friends.png b/app/src/main/res/drawable-nodpi/ic_friends.png new file mode 100755 index 0000000000000000000000000000000000000000..e0be5f5b5b589661dce318f7b12a81f7c7fa9fa7 GIT binary patch literal 7890 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_go_settings.png b/app/src/main/res/drawable-nodpi/ic_go_settings.png new file mode 100755 index 0000000000000000000000000000000000000000..49f75bb671e7404134958ea1959962d49ba1615e GIT binary patch literal 7046 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 n;Ie@n{YcK3h8 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 Z1F-8HFJEz!)B_&@jL%!>m+QLR|35~r!&m?S literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_info.png b/app/src/main/res/drawable-nodpi/ic_info.png new file mode 100755 index 0000000000000000000000000000000000000000..05a92fca5428267621cbb6f9ca9232eff8ba5dee GIT binary patch literal 4116 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_launcher_card.jpg b/app/src/main/res/drawable-nodpi/ic_launcher_card.jpg new file mode 100644 index 0000000000000000000000000000000000000000..be45b3d1bd59ab8ce4b595f620404a5c9710be10 GIT binary patch literal 15283 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 TyON_00zP;3jCE^oImG=RB2yzh literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_license.png b/app/src/main/res/drawable-nodpi/ic_license.png new file mode 100644 index 0000000000000000000000000000000000000000..ef215529e0e3579475dfdc2bdfc4a27704f87871 GIT binary patch literal 6228 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_music.png b/app/src/main/res/drawable-nodpi/ic_music.png new file mode 100755 index 0000000000000000000000000000000000000000..6cf2e08861dfd54a4765a4714e969cd19a2af0dc GIT binary patch literal 3577 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 qH|M7OO|BGP`2!Z5KSUW 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_permissions.png b/app/src/main/res/drawable-nodpi/ic_permissions.png new file mode 100644 index 0000000000000000000000000000000000000000..5edb692ada46da2706b2877e70e3d6a470283fc3 GIT binary patch literal 6401 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 Nb46dPKoj@${{U30XLA4m literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_quick_game.png b/app/src/main/res/drawable-nodpi/ic_quick_game.png new file mode 100644 index 0000000000000000000000000000000000000000..48d20a3c26d70986620abab317e745dfbe1ea6c2 GIT binary patch literal 5107 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_random_colour.png b/app/src/main/res/drawable-nodpi/ic_random_colour.png new file mode 100644 index 0000000000000000000000000000000000000000..35a6fb857a9d8215236a9524fc6a9509d262ec8c GIT binary patch literal 13469 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 c?=`g#H0@~ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_review.png b/app/src/main/res/drawable-nodpi/ic_review.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7e382051be3090061bd0775d9e3e7297c18e6c GIT binary patch literal 2167 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_share.png b/app/src/main/res/drawable-nodpi/ic_share.png new file mode 100644 index 0000000000000000000000000000000000000000..16985844e2de46993885da8cccdb0cbbcc0a96a9 GIT binary patch literal 5758 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 mggoBe61sw_-gOaK6|5Y?3Q0RTpSg#qwm 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_sound_effect.png b/app/src/main/res/drawable-nodpi/ic_sound_effect.png new file mode 100755 index 0000000000000000000000000000000000000000..697892b768af148e20f4394d4704416bf3524c36 GIT binary patch literal 5043 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 YAU+^o*!B6Hbc6y7bxn0Dv>d|!2km9qqW}N^ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_star.png b/app/src/main/res/drawable-nodpi/ic_star.png new file mode 100644 index 0000000000000000000000000000000000000000..eb6e85d8cc1d02fb8271e96059340b6d847a7b92 GIT binary patch literal 1830 zcmb7F{Xf%tAO3u|S?0{t*wDj_IOlX~Nv8)7%Z8LOS_&01R4gTF(F69Ch@9?usGO+N zR401yP$Zodqk~G6Rx@j5HyN+WbTdY?eQ)P4xL^16%k{pl*Y&zyulG+^9w%tCx!FQ9 z0Dw8mZ(}e3(A)_DQ|uf?BvBTa?1p<0c(M4| zBbIC46uOR6=IYw8A~3Z%>`z6c8F`IVD&26OoiNw(f8pM5Ibc6+dWKI!#A=yhPcF6M zA=&UKzyaPPHYT_I=?hD4F1K!S1Z^*jM|uy~l&dvkZ0e(y`8OWql8owNdq1(hrfVm_ zC=9(#mra=WKK5HeG%!0{W)GhjYW{_3!aO}L$hv+4M_nLH86PzcU`foj4}z!t0VHr` z=U{9z1?SBi%*pSM7Lj3sr9?(2vL(?$g#2kQ6OMGdR)C)So?Y2c_E z{`9H2YH+p$=|-KJu=#09BY0Zx9D|DknW;#6a>sE6kk{$#>LHQt5CPqTsznPi(Zca4 z5^N^gG}G^aqs|v54vZQX<+M9gZwGIchC?sb-Ud7RE=J7^6;k=KFz1$)Aut&xSu)p9 za9CCCk2$_+<)}*Dc-$F+5vt~b3Ij5{vAR!Rv@oXyjwVROl{iC66 zVK+FdG4{oyMLWi7%;DB2%}<#$u*^Knutta}=g!oaaiFB=8M|~TvIs}*zkGi{KT5Cj5aq`;mPvX*B*T0R>CRhJ#m3Xr^SShv=r!S9`vtsXLtTIBu_RdSXXIr7pnc zRa{2I{Q~gyO=|w-9h)x}`Ho|_C7YH9Q=#8Rb@oLjfzG(Wuxr2LJJQ)Sq~cSG7#mxw zcEa6#JlM=oWwj;rOeUKXGb5uMcJZL&y7F(f68U4FAcDmc%EFA#bjVfbh_3NkZn)6V zHhjG^RMN>TUy(!Ar15u};2oBHu3k?9p{*&Ka8wobUTWU3D%1q#mwOh1*Thc&uI*1W zc+?tvZxI%DW9rdUd-ft{37ObQ{jwCt%+)-H8x=A| z?0Lpld%23@1i1%!Y@x|@fP(7oImeRBGi!X`&G6Ox*qtIY_``qD>t#k4{QE^^7MB{Q z#I1JhxLap7*mH%yXzjlTE-qrXdu%b)&MNOa5qQ>un;2CDTy^@y%dlmTAL_up=?eCG zzMm_r2#}EnOSU+~PB`>@>6?lS==IZk`m4tbv%K~qe=<(g6e)`d$ z-TR!Y9t_JAB~mAW>?nOwzu9N2v@43?$^YJeIq zaYefnw}VS&WS^`0+L3m~b1W|D&8sQ3x^BjpLvhShZxwZ)g{rcr&Ue-- zdrNa;NfNcY#;t^&kd*6bO@uL=7-_h-;ZPyq+a2GpJ2c>hl9!5#+a1A(=%noxv>ymB z#b+LjLIK((4Ci&251hzekbf)`vifx)>c~>aboI+~7!lH;9J!=La(N_}XnDjDGF@2! zMs7T-3bE2N3or%r#)}?Enj|`034{_Ph@&|?(uf_TyxlMGp}URTZe`a z@Lj-5j=KK508|E`3V`N4a>r$`%QoiNyVeF}f6LOQ5a9ou627}0BEr;GB@3t)Gll$N zqn%4NisKzaZ~`r8BG9(ydyTo;oJ#G=8yl7HI(eYV;A+s7+|bRu*`;53{!x38w)A6T z@3Q|GTF>l_n17^7PsuQd>lXX}1kYsUbKMQ4{&^O=Cy||ieds>QIj#nZMdvIA=n+>T^yb4VgE|1t`M*>-L?W~s5cqG+A}Ki)L=4-dkp>h{C} z;CCLVsSthbFc?8PuX1%4OtCmPkSO6C?iFrd5RV=)f}|jFWibY3PG(+Up_s5tK6!G< zFza_@s&D>R&Dc8k*EQqVhuvfF26?8nAQCEaB=MD)rX8@_eZ?QJmOj66w1QtEZ; fm*k-TwMC&i=PbOL0_H7Z{}W~T25qeN=AQa5uz@(l literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_star_badge.png b/app/src/main/res/drawable-nodpi/ic_star_badge.png new file mode 100644 index 0000000000000000000000000000000000000000..f0a11087d6b191a285d234c961a200c39f3e8665 GIT binary patch literal 2367 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 SH3KgF8eR8#I^EvG%=j;Pnk9q) literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_stat_background.png b/app/src/main/res/drawable-nodpi/ic_stat_background.png new file mode 100755 index 0000000000000000000000000000000000000000..e8f3b90cef046238a3f1c3d425f55da0dc4ec436 GIT binary patch literal 5659 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_white_colour.png b/app/src/main/res/drawable-nodpi/ic_white_colour.png new file mode 100644 index 0000000000000000000000000000000000000000..40671ed488cde12c294d376732a1d76e4bacbb87 GIT binary patch literal 5199 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/ic_wifi.png b/app/src/main/res/drawable-nodpi/ic_wifi.png new file mode 100644 index 0000000000000000000000000000000000000000..71dedd9c01afd43b17daf4ee59b5e65fc128c312 GIT binary patch literal 6654 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_black_king.png b/app/src/main/res/drawable-nodpi/piece_black_king.png new file mode 100644 index 0000000000000000000000000000000000000000..7e99582cd09c244b346a7a1c8eb346dd4ed30a7d GIT binary patch literal 3153 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_black_knight.png b/app/src/main/res/drawable-nodpi/piece_black_knight.png new file mode 100644 index 0000000000000000000000000000000000000000..b4b28b2a61b5265330abf1ca8e4c0b9996db2255 GIT binary patch literal 3686 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 HJd^$l7R)P! literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_black_queen.png b/app/src/main/res/drawable-nodpi/piece_black_queen.png new file mode 100644 index 0000000000000000000000000000000000000000..36b5d93ea301f978ef069163873c8dc7f3e90321 GIT binary patch literal 3700 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 O5Wv(3ZTJk~p7MVrtBwx< literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_black_rook.png b/app/src/main/res/drawable-nodpi/piece_black_rook.png new file mode 100644 index 0000000000000000000000000000000000000000..cfba213fa3b4c3580a53de06930ab0188897dfc6 GIT binary patch literal 1978 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 nU);#HG5i03L~%hN$0~4+n_cV+V4!A@z`AWJ-x* z7IG?)b3^HIh&hDtdwKqO-ap=d-ut?~*Y|th_w~K+&vjp)`}%z1DP*%9;tJv*5NL;m zInf3L5<+hWR2T#T9dLGGZzX_YX-Bg32~hZd1^@tUv%pq|nYFFpH!vYsVZP*EV+fv%x1CbFUZaoE@W<$0Gjk~xCR2Lo!Snepir6>2qez2AR5~R=gj1W*z-@pn@&qN9q)RCMq|~jWfiX@azonr z)4!MN0I!fkdMCVu%w~rq;WU_e=@_$_((4!dY569?f}4?{#`Tvy9tI-wWa;6Nq3)qwPK}Zj zaePDovDo!pt@SB<-N_@P%iS$(NczrBs9O4$bf_&jFfa8w?AQ@>FO0NijiC=Nvn&RN zJV3l4y$jD>FMNFuqI3<}n@)jRA*r>|lIWRda8L|ckvZsko1lJ5_x;%X6w#Q-IW1#?%dqw)z;b86~b@r zp~1)Ts!;c;8&LZl&Sko;(2SX!Vx5A|D*ezI-$peuQKOKNS-7uB?~H+_(6}#2DlF0H z0KVPyy&H|C26}OR7sj-Ltp?J6^{m}-N>>7}9^nab%*ZKLpnkmfRODf6#i+Z;q?EGP z-KPl;Au&3YU|H{y@p}2@K^l91kONq}+SDrH#&i*lEvB5=MGZ7~0s32Gm+t45R+F

dZ%WVEh_c33t&1&6^aF+*WSE#9$}x> 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 Q+i3vc0RpL6t!^9fe?kf_x&QzG literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_white_pawn.png b/app/src/main/res/drawable-nodpi/piece_white_pawn.png new file mode 100644 index 0000000000000000000000000000000000000000..c9a9e37c85b3e21a87a7d455017fdbbf849f0e2a GIT binary patch literal 2372 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_white_queen.png b/app/src/main/res/drawable-nodpi/piece_white_queen.png new file mode 100644 index 0000000000000000000000000000000000000000..d24676de3d6b55a27b310dd86d158622ad42f089 GIT binary patch literal 3641 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-nodpi/piece_white_rook.png b/app/src/main/res/drawable-nodpi/piece_white_rook.png new file mode 100644 index 0000000000000000000000000000000000000000..029408191ac1d48fabb270b1254923d99f41180f GIT binary patch literal 1969 zcmbtVX)qg#7LJSFgy!AgBGRg*Xk2SswcJN5Avd825p8Lyr3hU@sgU-eLHc3|p0+3| z;Ud~R2ql;%Ex(f|P9sJBo3o~d(n!lRr*!eRd<`qy{&;O_1|FWeRE>_#M}?E#H- zN1;#xfgmg_jLl}l;qVh?rv}%*jgF4`1QMz{*%cKPv$L}a^eo+D@WJIj*dLdhMrM6{ zd@L+1;^N}GL&ILp2yov1)<_hGFV4%$YkteiDlF}v7Z4+(!pX7zK_SfA=DxWv^e_HW zd&5H_aW3uvQ-<%*i{EVHA)hr}Git+LXaL}QIZznJGXelGblj&Di5%$+031kmut(sd z^Z5l=&%+!bwhGWA6w{d+8ql$bYhN7mT)4YiYf}W}*D&L!cplf*CD#heJ9*wGEkBN) z+H3je*ec{+Cmlf5U1Xc36!DfkgiY@@enfEXat+8oL&=rPxdtmas}pXEZ%$Iv!8?_=J61z>>!!o1<;_cS3o_YW+=qcy(NOu@ ztLBq!#CPgdA8P%U%bwn72%N}2u|sb7HTzxG3RQ_&mVOv?PBq`T_{_$Wq3T`wQu6{HYK>(bu}8mx zZVj|}@xKhq4{F=p_LN0&YIVDO8>)(Vx?P{?o6+zp?I^QHiD1F$p0Tz9T>B60L$FR3 zfi-5WY78Lo`5}L+Vmd12^?#H=q!E8Lb)H_snVi*?pH3Bz&r%uoHi%zJ^ zc`*wGcu!_wz2~h^c2F~JNKP`@qD6ruYRYH<5kMs5U+xk|C9>pRUSTC4h7e8E>r*vJ zniwer&`}y82SmEUfH+$SW!N_3I|}6f0m_e%M1~pU*LY2tlDnF+GFou3jJ_ri5fZKV zb<^aYI8tY+r_(OhQZaJIZHUHX5dJz+BCREr?U!mLv8Tj7yLoakyPOercA>XiT9;!9 z4!$sDl*=uhvY=1)$0+@hLvkm!8;KjG^|8_FvN@!S(H5<-qOr7miA2&Ieka#p?sems z%VC>d<1QKe!-V$OM5}Y1H?vsS%iY}h0>4HtXSni;o*Np}YDkLMQ7~w?au^Axn3r$r zd0dLfWF^UXn{VzYoHdNWj36n4mwiI$cq;F-+gZ^23TT;GZ@*Gw2E$qJLUqMIio%N? zDmFMMcU$?FG{+fAFrfE(QXh}ntYS}3h(tQN1Rl8;cig(o-bjz|)a%6`7}|E_1I81i z={XSjZVv1D_?AdJ(LbA^`ghuPUQ!_ur^D9eUsa~PpR+5%_w|_}OdyJlst7iSjL2sd z0P9_b%!^PGOFx=Xuo_9|Xlt;-!VY7{P4W8kiI}M*0 z%6QY54NhQ>t=vIFnSs*vgC1K}u!~!2X>9c1K^pp(aZ$PXl?UbB;%iG~!x?VZca}`O zBF;RZ3XULmY`3IG6AB&eRL)#V3OK=+;MLy7VM?Pl&&FJFAxZQO8FF~4;E hyMI3qvDQdvW1N&nW?R#uLf41=xC6??z6R+_`6mKxfbIYQ literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..e52fbf5 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..e52fbf5 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..34f6afb60ab927cfa68b948ec41a3143c39a52df GIT binary patch literal 3832 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 P00000NkvXXu0mjf3qk?_ literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f22c584e5e6a5d74c380129076f5167b2cbc80e7 GIT binary patch literal 2156 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..ea313ea767c58def3b0034a7d2fb3e26e8c165f5 GIT binary patch literal 11580 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/raw/sfx_select.ogg b/app/src/main/res/raw/sfx_select.ogg new file mode 100644 index 0000000000000000000000000000000000000000..756b970067aa17ff1c766a9f2b88ec2c17a96df4 GIT binary patch literal 4614 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 + + Matewave + Guten Morgen + Guten Tag + Guten Abend + Gute Nacht + Partie fortsetzen + Schnelles Spiel + Wie beim letzten Mal: %1$s · %2$s + Gegen die KI + Schwierigkeit wählen + Mit einem Freund + Per Bluetooth oder WLAN in der Nähe + Schachaufgaben + Aufgaben passend zu deiner Wertung + Statistik + %1$d Siege · %2$d%% · Serie: %3$d + Min.: %1$d + Aktuell: %1$d + Max.: %1$d + Deine Wertung nach jeder Partie gegen die KI und andere Spieler + Start + Spiele gegen die KI, löse taktische Aufgaben oder spiele gegen einen Gegner in der Nähe – per Bluetooth oder im selben WLAN. + Version %1$s + Quellcode + Jazzradio + Internetradio im Hintergrund statt Stille + Verbinde... + Verbindung fehlgeschlagen + Soundeffekte + Figur wählen, ziehen, schlagen + Zurück + Verbinde mit dem Gegner... + Verbindung zum Gegner fehlgeschlagen + Verbindung verloren + Weiß + Schwarz + Zufällig + Gegner ist am Zug... + Aufgeben + Spiel beendet + Schachmatt! %1$s gewinnt + Patt – Remis + Remis nach der 50-Züge-Regel + Remis durch Stellungswiederholung + Remis – zu wenig Material für ein Matt + Zeit abgelaufen! %1$s gewinnt + Nochmal spielen + Menü + Aufgabe + Finde den besten Zug für Weiß + Finde den besten Zug für Schwarz + Falscher Zug, versuche es noch einmal + Lösung: %1$s + Lösung nicht verfügbar + Gelöst! 🎉 + Nächste Aufgabe + Hinweis + Lösung anzeigen + Gegen die KI spielen + Schwierigkeit + Leicht + Mittel + Schwer + Experte + Deine Farbe + Bedenkzeit + Figur wählen + Aufgegeben! %1$s gewinnt + Remis anbieten + Warte auf Antwort zum Remisangebot... + Remisangebot + Dein Gegner bietet Remis an. Annehmen? + Remis durch Einigung + Annehmen + Ablehnen + Chat + Chat mit dem Gegner + Noch keine Nachrichten – schreib als Erste/r! + Nachricht... + Bild wird gesendet... + Schließen + Erlauben + Jetzt nicht + Freunde + Konto + Name + Freunde + ELO %1$d + Avatar und Hintergrund auf Standard zurücksetzen + Startniveau wählen + Dein Spielniveau + Anfänger + Amateur + Profi + Meister + Revanche anbieten + Revanche angeboten – warte auf die Antwort des Gegners… + Revanche + Dein Gegner möchte noch einmal spielen. Die Farben werden getauscht. + Spielen + Ablehnen + Berechtigungen für Spiele in der Nähe + Um Spieler in der Nähe zu finden und ohne Internet mit ihnen zu spielen, braucht die App Zugriff auf Bluetooth. Die Suche läuft nur, solange der Bildschirm „Spiel in der Nähe“ geöffnet ist. + Berechtigungen + Letzter Verbindungsfehler: %1$s + Verbindungsprotokoll kopieren + ⚠ Dieser Spieler gibt sich als jemand anderes aus – Daten abgelehnt + Die Identität des Gegners ist nicht bestätigt (er hat eine alte App-Version) + Die App des Gegners ist veraltet – sicheres Spielen ist nicht möglich. Beide sollten die App aktualisieren. + Erlauben + Verbindung zu Geräten in der Nähe + Nötig, um Spieler in der Nähe zu finden und ohne Internet zu spielen. + Gib zuerst dein Niveau an + Die Wertung wird gebraucht, um einen passenden Gegner zu wählen und dich anderen Spielern zu zeigen. Es dauert nur ein paar Sekunden. + Niveau angeben + Über die App + Aussehen des Bretts + Brettfarben, Koordinaten, Figurenstil + Brettfarben + Buchstaben und Zahlen auf dem Brett + Feldbeschriftung an den Rändern: a–h und 1–8 + Figuren als Bilder + Überall dasselbe Aussehen. Ohne das werden Figuren mit Schriftsymbolen gezeichnet und sehen auf manchen Geräten anders aus. + Änderungen gelten beim nächsten Öffnen des Bretts. + Neuer Gegner. Fingerabdruck: %1$s – vergleiche ihn mit dem Gegner, wenn du sichergehen willst, dass er es ist + Fingerabdruck deines Schlüssels + Schlüssel der Gegner vergessen + Sicherheit + Du kannst einen bekannten Gegner dann nicht mehr von jemandem unterscheiden, der seinen Namen benutzt, bis ihr euch erneut trefft. Nötig, wenn der Gegner die App neu installiert hat. + Vergessen + Abbrechen + Bereit für eine neue Partie? + Werden beim ersten Treffen mit einem neuen Spieler automatisch gespeichert + Eindeutiger Fingerabdruck des Schlüssels dieses Geräts. Dein Gegner kann ihn beim ersten Treffen mit deinem vergleichen. + Online + Wertung %1$d + Noch niemand in der Nähe + Hier erscheinen Spieler, die die App im selben WLAN geöffnet haben. Du musst dich von hier aus nicht mit ihnen verbinden – dieser Bereich zeigt nur, wer in der Nähe ist. + Fingerabdruck kopiert + Speichern + Anderen anzeigen + Spieler im selben WLAN sehen deinen Namen und deine Wertung, solange die App geöffnet ist, per Bluetooth, solange der Bildschirm „Spiel in der Nähe“ geöffnet ist. Schalte es aus, wenn du das nicht möchtest: Du siehst weiterhin die anderen und bist nur sichtbar, während du in einer erstellten Partie auf einen Gegner wartest. + Alle + Online + In dieser Auswahl ist niemand. + Favoriten + Andere + Offline + vor %1$d Min. + vor %1$d Std. + Gestern + vor %1$d T. + Spiel in der Nähe + WLAN + Bluetooth + Spielen + Im Hintergrund online bleiben + Andere sehen dich auch, wenn die App minimiert ist. Es erscheint eine dauerhafte Benachrichtigung und der Akkuverbrauch steigt. Ohne das bist du nur sichtbar, solange die App geöffnet ist. + Android schickt Hintergrundarbeit schlafen. Damit das nicht passiert, hebe die Akkubeschränkung für die App auf. + Akkueinstellungen öffnen + Online-Status + Du bist online + Spieler in der Nähe sehen dich und können eine Partie vorschlagen + Spieler in der Nähe + Gerade in der Nähe + Für den Hintergrundbetrieb verlangt Android eine dauerhafte Benachrichtigung. Ohne sie lässt das System die App nicht online bleiben. + Einstellungen + Lizenzen + Bibliotheken, Daten und Radio + Diese App nutzt die unten aufgeführten offenen Komponenten samt ihrer Lizenzen. Tippe auf einen Eintrag, um die Seite zu öffnen. + Bibliotheken + Daten + Radio + Vollständiger Text der Apache License 2.0 + Die Aufgaben stammen aus der offenen Lichess-Puzzle-Datenbank. Die CC0-Lizenz verlangt keine Namensnennung – wir danken dem Lichess-Team. + Öffentlich zugänglicher Internet-Stream der SRG SSR: ohne Werbung und ohne Moderation, durch Gebühren finanziert. Die Musik gehört dem Sender und den Rechteinhabern; die App spielt den Stream nur ab und speichert nichts. + Das Jazzradio in den Einstellungen spielt nur Radio Swiss Jazz; ist einer der offiziellen Stream-Links nicht erreichbar, nutzt die App einen anderen. + Materialien + Hintergrundfoto eines Waldes. Die Pexels-Lizenz erlaubt die freie Nutzung ohne Namensnennung – wir danken dem Fotografen trotzdem. + Oberflächen-Symbole aus dem Set Material Symbols, bezogen über IconBuddy. Der Text der Apache-2.0-Lizenz steht unter „Bibliotheken“. + Bilder der Schachfiguren. Die CC0-Lizenz verlangt keine Namensnennung, der Autor bittet aber um einen Link zu seiner Seite. + App teilen + APK an einen Freund senden + Per WLAN teilen + Die andere Person scannt diesen QR-Code + APK-Größe: %1$s + Anleitung + Beide Handys müssen im selben WLAN sein + Öffne auf dem anderen Handy die Kamera-App und scanne den QR-Code oben + Tippe auf den Link, um ihn im Browser zu öffnen + Lade die APK herunter und installiere sie + Oder auf anderem Weg teilen + Nutze Bluetooth, Quick Share oder eine andere installierte Teilen-App. + APK teilen über… + Datei wird vorbereitet… + Kein WLAN gefunden. Verbinde dich mit einem WLAN oder schalte einen Hotspot ein und öffne diese Seite erneut. + Diese App wurde als Paket aus mehreren Teilen installiert (z. B. über Google Play). Die geteilte Datei lässt sich deshalb eventuell auf einem anderen Handy nicht installieren. + Die Datei konnte nicht zum Teilen vorbereitet werden. + Vibration + Ein kurzes Vibrieren beim Wählen einer Figur, beim Ziehen und Schlagen, ein doppeltes bei Schach und am Ende der Partie. Schalte es aus, wenn du es nicht möchtest. + Letzten Zug hervorheben + Färbt die Felder, von und auf die der letzte Zug ging + Schach hervorheben + Färbt das Königsfeld rot, solange der König im Schach steht + Keine Berechtigung für Verbindungen in der Nähe + Bluetooth ist aus + Das Handy ist nicht mit WLAN verbunden + Gegner nicht gefunden + Der Gegner hat nicht rechtzeitig geantwortet + Auf dem Gerät ist diese App nicht installiert + Datenempfang konnte nicht aktiviert werden + Daten konnten nicht gesendet werden + Eine zu große Nachricht wurde empfangen + Der Gegner hat die Verbindung getrennt + Port konnte nicht geöffnet werden + Unbekannter Verbindungsfehler + Verbindungsversuche: %1$d, erfolgreich: %2$d + Letzte Verbindung dauerte: %1$d ms + Teile gesendet: %1$d, erneut: %2$d (%3$d%%) + Doppelte Teile empfangen: %1$d + Beschädigte Nachrichten: %1$d + Verlorene Nachrichten: %1$d + === Netzwerkzähler === + === Ereignisse === + Protokoll ist leer + Spieler in der Nähe + Spieler + Ohne Zeitkontrolle + Klassisch + Grün + Blau + Grau + Der Gegner hat das Remis abgelehnt + Der Gegner hat die Revanche abgelehnt + Dein Gegner hat die Partie verlassen – du gewinnst. + Dein Gegner ist gegangen – eine Revanche ist nicht möglich. + Taktik + Matt in 1 + Matt in 2 + Matt in 3 + Gabel + Fesselung + Abzugsangriff + Turmendspiel + Bauernendspiel + Opfer + Ablenkung + Hängende Figur + Spieß + Läuferendspiel + Zugzwang + Gefangene Figur + Springerendspiel + Umwandlung + Hinlenkung + Doppelschach + Linienräumung + Damenendspiel + En passant + Verstellung + Röntgenangriff + Die Eröffnungsnamen stammen aus dem Projekt lichess-org/chess-openings. CC0 verlangt keine Namensnennung – wir danken den Mitwirkenden. + Damit wird erkannt, ob eine Partie noch der Eröffnungstheorie folgt: gewertete Lichess-Partien vom Mai 2013 (179.550 Partien). CC0. + Eröffnungen lernen + Mit Weiß + Mit Schwarz + Zug %1$d von %2$d + Der Gegner antwortet… + Nicht dieser Zug. Die richtige Figur ist markiert. + Neu beginnen + Weiter + Züge und Eröffnung in der Partie + Zeigt über dem Brett die Zugliste und den Namen der gespielten Eröffnung + Varianten lernen und in Abständen wiederholen + Zeit zum Wiederholen + Zu wiederholende Züge: %1$d · Eröffnungen: %2$d + Wiederholen + Weiterlernen + Weiter + Nächste Wiederholung in %1$s + Jetzt wiederholen: %1$d + Beende zuerst „%1$s“ + Lernen + Wiederholung + Training + Merke dir den Zug: spiele ihn mit der markierten Figur + Du bist am Zug – erinnere dich an den Theoriezug + Eröffnung gelernt! + Wiederholung abgeschlossen + Beim ersten Versuch richtig: %1$d von %2$d + Nochmal üben + jetzt + %1$d Min. + %1$d Std. + %1$d T. + Theorie + Theorie verlassen ab Zug %1$d + +1 Stern! + Ein Fehler in der Wiederholung hat einen Stern gekostet. Hol ihn dir mit fehlerfreien Wiederholungen zurück. + Alle drei Sterne – Eröffnung gemeistert! + Training ändert keine Sterne – nur geplante Wiederholungen. + Fehlerfreie Wiederholungen bis zum nächsten Stern: %1$d + + %d Zug + %d Züge + + Gegner + KI · %1$s + Partie verlassen? + Die Partie wird als Niederlage gewertet. + Verlassen + Aufgeben? + Dein Gegner gewinnt diese Partie. + Aufgabe · %1$d + Zug %1$d von %2$d + Gelöst: %1$d + Beginne mit „%1$s“ + Start + Gesperrt + Heute + Zug %1$d · %2$s + du bist am Zug + KI am Zug + Mit einem Freund spielen + Spielen + Ton + Spiel + System + Alles bereit + Aktion nötig + Wertung %1$d · Partien: %2$d + Fortschritt + Wertung + Geräteschlüssel + Spielen · %1$s · %2$s + Macht oft Fehler – gut für Einsteiger + Spielt solide, patzt manchmal + Stark und taktisch + Rechnet tief und irrt selten + Bullet + Blitz + Schnellschach + Klassisch + Partie erstellen + Andere sehen dich als „%1$s“ + Du bist unsichtbar – Sichtbarkeit ist in den Berechtigungen aus + Bluetooth-Suche einschalten + Bitte deinen Freund, Matewave im selben WLAN oder mit Bluetooth zu öffnen + Spieler in der Nähe + Suche Spieler in der Nähe… + Datenschutzerklärung + Zeit abgelaufen, aber mit dem verbliebenen Material ist kein Matt möglich – Remis + Schalte es ein, um Spieler per Bluetooth zu finden + Spieler im selben WLAN werden erst gefunden, wenn du verbunden bist + Einstellungen öffnen + diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml new file mode 100644 index 0000000..b8e5e40 --- /dev/null +++ b/app/src/main/res/values-ja/strings.xml @@ -0,0 +1,357 @@ + + + Matewave + おはようございます + こんにちは + こんばんは + おやすみなさい + 対局を続ける + クイックゲーム + 前回と同じ:%1$s・%2$s + AIと対戦 + 難易度を選択 + 友達と対戦 + 近くでBluetoothまたはWi-Fiで + チェスパズル + あなたのレーティングに合った問題 + 成績 + %1$d勝 · %2$d%% · 連勝: %3$d + 最小: %1$d + 現在: %1$d + 最大: %1$d + AIや他のプレイヤーとの各対局後のレーティング + ホーム + AIとの対戦、戦術パズル、近くの相手との対戦(Bluetoothまたは同じWi-Fi)が楽しめます。 + バージョン %1$s + ソースコード + ジャズラジオ + 無音のかわりにインターネットラジオをバックグラウンドで再生 + 接続中... + 接続できませんでした + 効果音 + 駒の選択、移動、取る音 + 戻る + 相手に接続中... + 相手に接続できませんでした + 接続が切れました + 白 + 黒 + ランダム + 相手の番... + 投了 + 対局終了 + チェックメイト!%1$sの勝ち + ステイルメイト — 引き分け + 50手ルールによる引き分け + 同一局面の繰り返しによる引き分け + 引き分け — チェックメイトに必要な駒が足りません + 時間切れ!%1$sの勝ち + もう一度プレイ + メニュー + パズル + 白の最善手を見つけてください + 黒の最善手を見つけてください + 違う手です。もう一度どうぞ + 解答: %1$s + 解答はありません + 正解!🎉 + 次のパズル + ヒント + 解答を表示 + AIと対戦 + 難易度 + やさしい + ふつう + むずかしい + エキスパート + あなたの色 + 持ち時間 + 駒を選択 + 投了!%1$sの勝ち + 引き分けを提案 + 引き分けの返事を待っています... + 引き分けの提案 + 相手が引き分けを提案しています。受け入れますか? + 合意による引き分け + 受け入れる + 断る + チャット + 相手とチャット + まだメッセージがありません。最初に書き込みましょう! + メッセージ... + 画像を送信中... + 閉じる + 許可 + 今はしない + フレンド + アカウント + 名前 + フレンド + ELO %1$d + アバターと背景を初期設定に戻す + 開始レベルを選択 + あなたの棋力 + 初心者 + アマチュア + プロ + マスター + 再戦を提案 + 再戦を提案しました — 相手の返事を待っています… + 再戦 + 相手がもう一度対戦したいそうです。色は入れ替わります。 + プレイ + 断る + 近くで対戦するための権限 + 近くのプレイヤーを見つけてインターネットなしで対戦するには、Bluetoothへのアクセスが必要です。検索は「近くで対戦」画面を開いている間だけ行われます。 + 権限 + 直近の通信エラー: %1$s + 通信ログをコピー + ⚠ このプレイヤーは他人になりすましています — データを拒否しました + 相手の本人確認ができていません(古いバージョンのアプリです) + 相手のアプリが古いため、安全に対局できません。両方のアプリを更新してください。 + 許可 + 近くのデバイスとの通信 + 近くのプレイヤーを見つけ、インターネットなしで対戦するために必要です。 + まずレベルを指定してください + レーティングは、適切な相手の選択と他のプレイヤーへの表示に必要です。数秒で完了します。 + レベルを指定 + このアプリについて + 盤の見た目 + 盤の色、座標、駒のスタイル + 盤の色 + 盤上の文字と数字 + 盤の端のマス目ラベル: a〜h と 1〜8 + 駒を画像で表示 + どのスマホでも同じ見た目になります。オフの場合、駒はフォントの記号で描かれ、端末によって見た目が異なります。 + 変更は次に盤を開いたときに反映されます。 + 新しい相手です。フィンガープリント: %1$s — 本人か確かめたい場合は、相手と照合してください + あなたの鍵のフィンガープリント + 相手の鍵を忘れる + セキュリティ + 再び会うまで、知っている相手とその名前を名乗る人を区別できなくなります。相手がアプリを再インストールした場合に必要です。 + 忘れる + キャンセル + 新しい対局の準備はできましたか? + 新しいプレイヤーと初めて会ったときに自動で保存されます + この端末の鍵の固有のフィンガープリントです。初めて会ったとき、相手があなたのものと照合できます。 + オンライン + レーティング %1$d + 近くにはまだ誰もいません + 同じWi-Fiネットワークでアプリを開いているプレイヤーがここに表示されます。ここから接続する必要はありません。この画面は近くにいる人を表示するだけです。 + フィンガープリントをコピーしました + 保存 + 他の人に自分を表示 + 同じWi-Fiネットワークのプレイヤーには、アプリを開いている間、あなたの名前とレーティングが表示されます。Bluetoothでは「近くで対戦」画面を開いている間だけ表示されます。望まない場合はオフにしてください。他の人は引き続き見え、あなたが表示されるのは作成した対局で相手を待っている間だけになります。 + すべて + オンライン + この条件に該当する人はいません。 + お気に入り + その他 + オフライン + %1$d分前 + %1$d時間前 + 昨日 + %1$d日前 + 近くで対戦 + Wi-Fi + Bluetooth + プレイ + バックグラウンドでもオンラインのままにする + アプリを最小化していても他の人からあなたが見えます。常時通知が表示され、バッテリーの消費が増えます。オフの場合、アプリを開いている間だけ表示されます。 + Androidはバックグラウンド動作を停止します。これを防ぐには、アプリのバッテリー制限を解除してください。 + バッテリー設定を開く + オンライン状態 + オンラインです + 近くのプレイヤーにあなたが表示され、対局を申し込めます + 近くのプレイヤー + 今近くにいる人 + バックグラウンドで動作するには、Androidが常時通知を要求します。通知がないと、システムはアプリをオンラインのままにしません。 + 設定 + ライセンス + ライブラリ、データ、ラジオ + このアプリは、以下のオープンなコンポーネントを、それぞれのライセンスとともに使用しています。項目をタップするとページが開きます。 + ライブラリ + データ + ラジオ + Apache License 2.0 の全文 + パズルは Lichess のオープンなパズルデータベースから選んでいます。CC0 ライセンスでは表示義務はありませんが、Lichess チームに感謝します。 + SRG SSR が公開しているインターネットストリームです。広告もナビゲーターもなく、受信料で運営されています。音楽の権利は放送局と権利者に帰属し、アプリは再生するだけで何も保存しません。 + 設定のジャズラジオは Radio Swiss Jazz だけを再生します。公式リンクのひとつがつながらないときは、別のリンクに切り替わります。 + 素材 + 背景の森の写真です。Pexels ライセンスでは表示なしで自由に使えますが、撮影者に感謝します。 + インターフェースのアイコンは Material Symbols のもので、IconBuddy から入手しました。Apache 2.0 の全文は「ライブラリ」にあります。 + チェスの駒の画像です。CC0 ライセンスでは表示義務はありませんが、作者は自身のページへのリンクを希望しています。 + アプリを共有 + APKを友達に送る + Wi-Fiで共有 + 相手にこのQRコードを読み取ってもらいます + APKサイズ: %1$s + 手順 + 2台とも同じWi-Fiネットワークに接続してください + 相手のスマホでカメラアプリを開き、上のQRコードを読み取ります + リンクをタップしてブラウザで開きます + APKをダウンロードしてインストールします + ほかの方法で共有 + Bluetooth、クイック共有、またはインストール済みのほかの共有アプリを使えます。 + APKを共有… + ファイルを準備中… + Wi-Fiネットワークが見つかりません。Wi-Fiに接続するかテザリングをオンにして、この画面を開き直してください。 + このアプリは分割パッケージ(例: Google Play)としてインストールされているため、共有したファイルは別のスマホにインストールできない場合があります。 + 共有用のファイルを準備できませんでした。 + バイブレーション + 駒の選択、移動、駒を取ったときに短く振動し、チェックや対局終了時には2回振動します。不要ならオフにしてください。 + 直前の手をハイライト + 直前の手の移動元と移動先のマスに色を付けます + チェックをハイライト + チェックされている間、キングのマスを赤く表示します + 近くのデバイスとの接続が許可されていません + Bluetoothがオフです + スマートフォンがWi-Fiに接続されていません + 相手が見つかりません + 相手が時間内に応答しませんでした + 相手の端末にこのアプリがありません + データ受信を有効にできませんでした + データを送信できませんでした + 大きすぎるメッセージを受信しました + 相手が切断しました + ポートを開けませんでした + 不明な通信エラー + 接続試行: %1$d 回、成功: %2$d 回 + 直近の接続時間: %1$d ms + 送信パート: %1$d、再送: %2$d (%3$d%%) + 重複受信パート: %1$d + 破損したメッセージ: %1$d + 失われたメッセージ: %1$d + === ネットワークカウンター === + === イベント === + ログは空です + 近くのプレイヤー + プレイヤー + 時間制限なし + クラシック + グリーン + ブルー + グレー + 相手が引き分けを断りました + 相手が再戦を断りました + 相手が対局から退出しました。あなたの勝ちです。 + 相手が退出したため、再戦はできません。 + タクティクス + 1手でメイト + 2手でメイト + 3手でメイト + フォーク + ピン + ディスカバードアタック + ルークエンドゲーム + ポーンエンドゲーム + サクリファイス + ディフレクション + 浮き駒 + スキュア + ビショップエンドゲーム + ツークツワンク + 閉じ込められた駒 + ナイトエンドゲーム + プロモーション + アトラクション + ダブルチェック + クリアランス + クイーンエンドゲーム + アンパッサン + インターフェアレンス + エックスレイ + オープニング名は lichess-org/chess-openings プロジェクトのものです。CC0 では表示義務はありませんが、貢献者に感謝します。 + 対局中の手が定跡どおりかを判定するために使用:Lichessの2013年5月のレーティング対局(179,550局)。CC0。 + オープニングを学ぶ + 白番で + 黒番で + %2$d手中%1$d手目 + 相手が応手中… + その手ではありません。正しい駒がハイライトされています。 + 最初から + 次へ + 対局中の棋譜とオープニング + 盤の上に棋譜と、指されているオープニング名を表示します + 間隔反復で定跡を覚えて復習 + 復習の時間です + 復習する手: %1$d · オープニング: %2$d + 復習する + 学習を続ける + 続ける + 次の復習まで %1$s + 今すぐ復習: %1$d + 先に「%1$s」を終えてください + 学習 + 復習 + 練習 + この手を覚えましょう。ハイライトされた駒で指してください + あなたの番です。定跡の手を思い出してください + オープニングを習得しました! + 復習完了 + 一発正解: %2$d手中%1$d手 + もう一度練習 + 今 + %1$d分 + %1$d時間 + %1$d日 + 定跡 + %1$d手目から定跡外 + 星+1! + 復習でミスしたため星をひとつ失いました。ノーミスの復習で取り戻しましょう。 + 星3つ — オープニングをマスターしました! + 練習では星は変わりません。変わるのは予定された復習だけです。 + 次の星まで、ノーミスの復習あと %1$d 回 + + %d手 + + 相手 + AI · %1$s + 対局を終了しますか? + 対局は負けとして記録されます。 + 終了 + 投了しますか? + この対局は相手の勝ちになります。 + 問題 · %1$d + %2$d手中%1$d手目 + 解いた数: %1$d + 「%1$s」から始めましょう + 始める + ロック中 + 今日 + %1$d手目 · %2$s + あなたの番 + AIの番 + 友達と対戦 + 対戦 + サウンド + ゲーム + システム + 準備完了 + 要対応 + レーティング %1$d · 対局: %2$d + 進捗 + レーティング + 端末の鍵 + 対局 · %1$s · %2$s + よくミスをします。初心者向け + 堅実ですが、時々ミスをします + 強く、戦術に長けています + 深く読み、めったにミスをしません + ブレット + ブリッツ + ラピッド + クラシカル + 対局を作成 + 「%1$s」として表示されています + 非表示です。権限で表示がオフになっています + Bluetooth検索をオンにする + 同じWi-Fi、またはBluetoothをオンにしてMatewaveを開くよう友達に頼んでください + 近くのプレイヤー + 近くのプレイヤーを探しています… + プライバシーポリシー + 時間切れですが、残りの駒ではチェックメイトできないため引き分けです + オンにすると、Bluetoothでプレイヤーを探せます + 接続するまで、同じWi-Fiのプレイヤーは見つかりません + 設定を開く + diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml new file mode 100644 index 0000000..c6bde9d --- /dev/null +++ b/app/src/main/res/values-lt/strings.xml @@ -0,0 +1,360 @@ + + + Matewave + Labas rytas + Laba diena + Labas vakaras + Labos nakties + Tęsti partiją + Greitas žaidimas + Kaip praėjusį kartą: %1$s · %2$s + Prieš DI + Pasirinkite sudėtingumą + Su draugu + Per „Bluetooth“ arba „Wi-Fi“ netoliese + Šachmatų galvosūkiai + Užduotys pagal jūsų reitingą + Statistika + %1$d pergalių · %2$d%% · serija: %3$d + Min.: %1$d + Dabar: %1$d + Maks.: %1$d + Jūsų reitingas po kiekvienos partijos su DI ir kitais žaidėjais + Pradžia + Žaiskite prieš DI, spręskite taktikos galvosūkius arba žaiskite su netoliese esančiu varžovu per „Bluetooth“ ar tame pačiame „Wi-Fi“ tinkle. + Versija %1$s + Šaltinio kodas + Džiazo radijas + Interneto radijas fone vietoj tylos + Jungiamasi... + Nepavyko prisijungti + Garso efektai + Figūros pasirinkimas, ėjimas, paėmimas + Atgal + Jungiamasi prie varžovo... + Nepavyko prisijungti prie varžovo + Ryšys nutrūko + Baltieji + Juodieji + Atsitiktinai + Varžovo ėjimas... + Pasiduoti + Žaidimas baigtas + Matas! Laimėjo %1$s + Patas — lygiosios + Lygiosios pagal 50 ėjimų taisyklę + Lygiosios dėl pozicijos pasikartojimo + Lygiosios — nepakanka medžiagos matui + Laikas baigėsi! Laimėjo %1$s + Žaisti dar kartą + Meniu + Galvosūkis + Raskite geriausią ėjimą baltiesiems + Raskite geriausią ėjimą juodiesiems + Ne tas ėjimas, bandykite dar kartą + Sprendimas: %1$s + Sprendimo nėra + Išspręsta! 🎉 + Kitas galvosūkis + Užuomina + Rodyti sprendimą + Žaidimas prieš DI + Sudėtingumas + Lengvas + Vidutinis + Sunkus + Ekspertas + Jūsų spalva + Laiko kontrolė + Pasirinkite figūrą + Pasidavimas! Laimėjo %1$s + Pasiūlyti lygiąsias + Laukiama atsakymo dėl lygiųjų... + Lygiųjų pasiūlymas + Varžovas siūlo lygiąsias. Sutikti? + Lygiosios susitarus + Sutikti + Atmesti + Pokalbis + Pokalbis su varžovu + Žinučių dar nėra — parašykite pirmi! + Žinutė... + Siunčiamas paveikslėlis... + Uždaryti + Leisti + Ne dabar + Draugai + Paskyra + Vardas + Draugai + ELO %1$d + Grąžinti numatytąjį avatarą ir foną + Pasirinkti pradinį lygį + Jūsų žaidimo lygis + Pradedantysis + Mėgėjas + Profesionalas + Meistras + Pasiūlyti revanšą + Revanšas pasiūlytas — laukiama varžovo atsakymo… + Revanšas + Varžovas siūlo sužaisti dar kartą. Spalvos bus sukeistos. + Žaisti + Atsisakyti + Leidimai žaidimui netoliese + Kad rastų netoliese esančius žaidėjus ir galėtų su jais žaisti be interneto, programai reikia prieigos prie „Bluetooth“. Paieška vyksta tik kol atidarytas ekranas „Žaidimas netoliese“. + Leidimai + Paskutinė ryšio klaida: %1$s + Kopijuoti ryšio žurnalą + ⚠ Šis žaidėjas apsimeta kitu — duomenys atmesti + Varžovo tapatybė nepatvirtinta (jis turi seną programos versiją) + Varžovo programa pasenusi – saugus žaidimas neįmanomas. Atnaujinkite programą abiem. + Leisti + Ryšys su netoliese esančiais įrenginiais + Reikalinga, kad rastumėte žaidėjų netoliese ir žaistumėte be interneto. + Pirmiausia nurodykite savo lygį + Reitingas reikalingas tinkamam varžovui parinkti ir kitiems žaidėjams jus parodyti. Tai užtrunka porą sekundžių. + Nurodyti lygį + Apie programą + Lentos išvaizda + Lentos spalvos, koordinatės, figūrų stilius + Lentos spalvos + Raidės ir skaičiai ant lentos + Langelių žymos pakraščiuose: a–h ir 1–8 + Figūros paveikslėliais + Vienoda išvaizda visuose telefonuose. Be šito figūros piešiamos šrifto simboliais ir kai kuriuose įrenginiuose atrodo kitaip. + Pakeitimai pritaikomi kitą kartą atidarius lentą. + Naujas varžovas. Kontrolinis kodas: %1$s — palyginkite su juo, jei norite įsitikinti, kad tai jis + Jūsų rakto kontrolinis kodas + Pamiršti varžovų raktus + Sauga + Nebegalėsite atskirti pažįstamo varžovo nuo to, kas naudoja jo vardą, kol vėl nesusitiksite. Reikia, jei varžovas iš naujo įdiegė programą. + Pamiršti + Atšaukti + Pasiruošę naujai partijai? + Išsaugomi automatiškai pirmą kartą sutikus naują žaidėją + Unikalus šio įrenginio rakto kontrolinis kodas. Pirmą kartą susitikęs varžovas gali jį palyginti su jūsų. + Prisijungęs + Reitingas %1$d + Netoliese kol kas nieko nėra + Čia rodomi žaidėjai, atidarę programą tame pačiame „Wi-Fi“ tinkle. Jungtis prie jų iš čia nereikia — šis skyrius tik parodo, kas yra netoliese. + Kontrolinis kodas nukopijuotas + Išsaugoti + Rodyti mane kitiems + Žaidėjai tame pačiame „Wi-Fi“ tinkle mato jūsų vardą ir reitingą, kol programa atidaryta, o per „Bluetooth“ – kol atidarytas ekranas „Žaidimas netoliese“. Išjunkite, jei to nenorite: kitus vis tiek matysite, o jus matys tik tada, kai lauksite varžovo savo sukurtoje partijoje. + Visi + Prisijungę + Šioje atrankoje nieko nėra. + Mėgstami + Kiti + Neprisijungęs + prieš %1$d min. + prieš %1$d val. + Vakar + prieš %1$d d. + Žaidimas netoliese + Wi-Fi + Bluetooth + Žaisti + Likti prisijungus fone + Kiti jus matys net ir suskleidus programą. Atsiras nuolatinis pranešimas, o baterija išsikraus greičiau. Be šito jus matys tik kol programa atidaryta. + „Android“ užmigdys darbą fone. Kad taip neatsitiktų, panaikinkite programos baterijos apribojimą. + Atidaryti baterijos nustatymus + Matomumas tinkle + Esate prisijungę + Netoliese esantys žaidėjai mato jus ir gali pasiūlyti partiją + Žaidėjas netoliese + Dabar netoliese + Kad veiktų fone, „Android“ reikalauja nuolatinio pranešimo. Be jo sistema neleis programai likti prisijungusiai. + Nustatymai + Licencijos + Bibliotekos, duomenys ir radijas + Programa naudoja žemiau išvardytus atvirus komponentus kartu su jų licencijomis. Palieskite elementą, kad atidarytumėte jo puslapį. + Bibliotekos + Duomenys + Radijas + Pilnas Apache License 2.0 tekstas + Užduotys atrinktos iš atviros „Lichess“ galvosūkių duomenų bazės. CC0 licencija nereikalauja nurodyti autorystės – dėkojame „Lichess“ komandai. + Viešai prieinama SRG SSR interneto transliacija: be reklamos ir be vedėjų, finansuojama iš licencijos mokesčių. Muzikos teisės priklauso transliuotojui ir teisių turėtojams; programa srautą tik groja ir nieko neišsaugo. + Nustatymuose esantis džiazo radijas groja tik „Radio Swiss Jazz“; jei viena oficiali nuoroda nepasiekiama, programa naudoja kitą. + Medžiaga + Miško nuotrauka fonui. „Pexels“ licencija leidžia laisvai naudoti be autoriaus nurodymo — fotografui vis tiek dėkojame. + Sąsajos piktogramos iš rinkinio „Material Symbols“, gautos per „IconBuddy“. Apache 2.0 tekstas — skyriuje „Bibliotekos“. + Šachmatų figūrų paveikslėliai. CC0 licencija nereikalauja nurodyti autorystės, tačiau autorius prašo nuorodos į jo puslapį. + Dalytis programa + Nusiųsti APK draugui + Dalytis per Wi-Fi + Tegul kitas žmogus nuskaito šį QR kodą + APK dydis: %1$s + Instrukcija + Abu telefonai turi būti tame pačiame Wi-Fi tinkle + Kitame telefone atidarykite fotoaparato programą ir nuskaitykite aukščiau esantį QR kodą + Palieskite nuorodą, kad atidarytumėte ją naršyklėje + Atsisiųskite ir įdiekite APK + Arba kitu būdu + Naudokite „Bluetooth“, „Quick Share“ ar bet kurią kitą įdiegtą dalijimosi programą. + Dalytis APK per… + Ruošiamas failas… + Wi-Fi tinklo nerasta. Prisijunkite prie Wi-Fi arba įjunkite viešosios prieigos tašką ir vėl atidarykite šį ekraną. + Ši programa įdiegta kaip dalių rinkinys (pavyzdžiui, iš „Google Play“), todėl bendrinamas failas gali neįsidiegti kitame telefone. + Nepavyko paruošti failo dalijimuisi. + Vibracija + Trumpas virptelėjimas pasirinkus figūrą, einant ir kertant, dvigubas – esant šachui ir pasibaigus partijai. Išjunkite, jei jo nenorite. + Paryškinti paskutinį ėjimą + Nuspalvina langelius, iš kurio ir į kurį padarytas paskutinis ėjimas + Paryškinti šachą + Nuspalvina karaliaus langelį raudonai, kol jam šachas + Nėra leidimo ryšiui su netoliese esančiais įrenginiais + „Bluetooth“ išjungtas + Telefonas neprisijungęs prie „Wi-Fi“ + Varžovas nerastas + Varžovas laiku neatsakė + Tame įrenginyje nėra šios programos + Nepavyko įjungti duomenų gavimo + Nepavyko išsiųsti duomenų + Gautas per didelis pranešimas + Varžovas atsijungė + Nepavyko atidaryti prievado + Nežinoma ryšio klaida + Bandymų prisijungti: %1$d, sėkmingų: %2$d + Paskutinis prisijungimas užtruko: %1$d ms + Išsiųsta dalių: %1$d, pakartotinai: %2$d (%3$d%%) + Gauta pasikartojančių dalių: %1$d + Sugadintų pranešimų: %1$d + Prarastų pranešimų: %1$d + === Tinklo skaitikliai === + === Įvykiai === + žurnalas tuščias + Netoliese esantis žaidėjas + Žaidėjas + Be laiko kontrolės + Klasikinė + Žalia + Mėlyna + Pilka + Varžovas atsisakė lygiųjų + Varžovas atsisakė revanšo + Varžovas paliko partiją – jūs laimėjote. + Varžovas išėjo – revanšas negalimas. + Taktika + Matas per 1 ėjimą + Matas per 2 ėjimus + Matas per 3 ėjimus + Šakutė + Surišimas + Atidengtas puolimas + Bokštų endšpilis + Pėstininkų endšpilis + Auka + Nukreipimas + Neapginta figūra + Iešmas + Rikių endšpilis + Cugcvangas + Įkalinta figūra + Žirgų endšpilis + Pėstininko virsmas + Priviliojimas + Dvigubas šachas + Linijos atlaisvinimas + Valdovių endšpilis + Kirtimas praeinant + Užtvėrimas + Rentgeno ataka + Debiutų pavadinimai paimti iš projekto „lichess-org/chess-openings“. CC0 licencija nereikalauja nurodyti autorystės – dėkojame jo dalyviams. + Pagal šias partijas nustatoma, ar partija dar eina pagal debiutų teoriją: 2013 m. gegužės „Lichess“ reitinginės partijos (179 550 partijų). CC0. + Debiutų mokymasis + Baltaisiais + Juodaisiais + Ėjimas %1$d iš %2$d + Varžovas atsako… + Ne tas ėjimas. Reikiama figūra paryškinta. + Pradėti iš naujo + Toliau + Ėjimai ir debiutas partijoje + Virš lentos rodo ėjimų sąrašą ir žaidžiamo debiuto pavadinimą + Mokykitės ir kartokite debiutus intervalais + Laikas pakartoti + Kartotinų ėjimų: %1$d · debiutų: %2$d + Kartoti + Tęskite mokymąsi + Tęsti + Kitas kartojimas po %1$s + Kartoti dabar: %1$d + Pirma baikite „%1$s“ + Mokymasis + Kartojimas + Treniruotė + Įsiminkite ėjimą: eikite paryškinta figūra + Jūsų ėjimas – prisiminkite teorinį ėjimą + Debiutas išmoktas! + Kartojimas baigtas + Iš pirmo karto: %1$d iš %2$d + Dar kartą + dabar + %1$d min. + %1$d val. + %1$d d. + Teorija + Nuo %1$d ėjimo – ne teorija + +1 žvaigždutė! + Klaida kartojant kainavo žvaigždutę. Susigrąžinkite ją kartodami be klaidų. + Visos trys žvaigždutės – debiutas įvaldytas! + Treniruotė žvaigždučių nekeičia – tik suplanuoti kartojimai. + Iki kitos žvaigždutės liko kartojimų be klaidų: %1$d + + %d ėjimas + %d ėjimai + %d ėjimo + %d ėjimų + + Varžovas + DI · %1$s + Išeiti iš partijos? + Partija bus įskaityta kaip pralaimėjimas. + Išeiti + Pasiduoti? + Šią partiją laimės varžovas. + Užduotis · %1$d + ėjimas %1$d iš %2$d + Išspręsta: %1$d + Pradėkite nuo „%1$s“ + Pradėti + Užrakinta + Šiandien + Ėjimas %1$d · %2$s + jūsų ėjimas + DI ėjimas + Žaisti su draugu + Žaisti + Garsas + Žaidimas + Sistema + Viskas paruošta + Reikia veiksmo + Reitingas %1$d · Partijų: %2$d + Pažanga + Reitingas + Įrenginio raktas + Žaisti · %1$s · %2$s + Dažnai klysta – tinka pradedantiesiems + Žaidžia patikimai, kartais suklysta + Stiprus ir taktiškas + Skaičiuoja giliai ir retai klysta + Kulka + Žaibo + Greitieji + Klasikiniai + Sukurti partiją + Kiti jus mato kaip „%1$s“ + Jūsų nematyti – matomumas išjungtas leidimuose + Įjungti „Bluetooth“ paiešką + Paprašykite draugo atidaryti Matewave tame pačiame „Wi-Fi“ tinkle arba su įjungtu „Bluetooth“ + Žaidėjai netoliese + Ieškoma žaidėjų netoliese… + Privatumo politika + Laikas baigėsi, bet likusiomis figūromis mato padaryti neįmanoma – lygiosios + Įjunkite, kad rastumėte žaidėjus per „Bluetooth“ + Žaidėjų tame pačiame „Wi-Fi“ tinkle nerasite, kol neprisijungsite + Atidaryti nustatymus + diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml new file mode 100644 index 0000000..e71e321 --- /dev/null +++ b/app/src/main/res/values-ru/strings.xml @@ -0,0 +1,366 @@ + + + Matewave + + Доброе утро + Добрый день + Добрый вечер + Доброй ночи + + Продолжить партию + Быстрая игра + Как в прошлый раз: %1$s · %2$s + Против ИИ + Выберите сложность + С другом + По Bluetooth или Wi-Fi рядом + + Шахматные задачи + Задачи под ваш рейтинг + Статистика + %1$d побед · %2$d%% · серия: %3$d + Мин: %1$d + Сейчас: %1$d + Макс: %1$d + Ваш рейтинг после каждой партии против ИИ и других игроков + + Главная + + Игра против ИИ, тактические задачи и игра с соперником рядом — по Bluetooth или в общей сети Wi-Fi. + Версия %1$s + Исходный код + Джаз-радио + Фоновый интернет-эфир вместо тишины + Подключение... + Не удалось подключиться + Звуковые эффекты + Выбор фигуры, ход, взятие + Назад + Подключение к сопернику... + Не удалось подключиться к сопернику + Соединение потеряно + Белые + Чёрные + Случайно + Ход соперника... + Сдаться + Игра окончена + Мат! Победили %1$s + Пат — ничья + Ничья по правилу 50 ходов + Ничья повторением позиции + Ничья — недостаточно материала для мата + Время вышло! Победили %1$s + Играть ещё раз + В меню + Задача + Найдите лучший ход за белых + Найдите лучший ход за чёрных + Не тот ход, попробуйте ещё раз + Решение: %1$s + Решение недоступно + Решено! 🎉 + Следующая задача + Подсказка + Показать решение + Игра против ИИ + Сложность + Лёгкий + Средний + Сложный + Эксперт + Ваш цвет + Контроль времени + Выберите фигуру + Сдача! Победили %1$s + Предложить ничью + Ожидание ответа на ничью... + Предложение ничьи + Соперник предлагает ничью. Принять? + Ничья по соглашению сторон + Принять + Отклонить + Чат + Чат с соперником + Сообщений пока нет — напишите первым! + Сообщение... + Отправка картинки... + Закрыть + Разрешить + Не сейчас + Друзья + Аккаунт + Имя + Друзья + ELO %1$d + Сбросить аватар и фон на стандартные + Выбрать стартовый уровень + Ваш уровень игры + Новичок + Любитель + Профи + Мастер + Предложить реванш + Реванш предложен — ждём ответа соперника… + Реванш + Соперник предлагает сыграть ещё раз. Цвета поменяются местами. + Играть + Отказаться + Разрешения для связи поблизости + Чтобы находить игроков рядом и играть с ними без интернета, приложению нужен доступ к Bluetooth. Поиск идёт, только пока открыт экран «Игра рядом». + Разрешения + Последняя ошибка связи: %1$s + Скопировать журнал связи + ⚠ Этот игрок выдаёт себя за другого — данные не приняты + Личность соперника не подтверждена (у него старая версия приложения) + У соперника устаревшая версия приложения — безопасная игра невозможна. Обновите приложение у обоих. + Разрешить + Связь с устройствами рядом + Нужна, чтобы находить игроков поблизости и играть без интернета. + Сначала укажите свой уровень + Рейтинг нужен, чтобы подобрать сложность соперника и показать вас другим игрокам. Это займёт пару секунд. + Указать уровень + О программе + Внешний вид доски + Цвета доски, координаты, вид фигур + Цвета доски + Буквы и цифры на доске + Подписи полей по краям: a–h и 1–8 + Фигуры картинками + Единый вид на всех телефонах. Без этого фигуры рисуются символами шрифта и на части устройств выглядят иначе. + Изменения применяются при следующем открытии доски. + Новый соперник. Отпечаток: %1$s — сверьте с ним, если хотите убедиться, что это он + Отпечаток вашего ключа + Забыть ключи соперников + Безопасность + Вы перестанете отличать знакомого соперника от того, кто назвался его именем, пока не встретитесь с ним заново. Нужно, если соперник переустановил приложение. + Забыть + Отмена + Готовы к новой партии? + Запоминаются автоматически при первой встрече с новым игроком + Уникальный отпечаток ключа этого устройства. Соперник может сверить его с вашим при первой встрече. + В сети + Рейтинг %1$d + Рядом пока никого + Здесь появляются игроки, которые запустили приложение в этой же сети Wi-Fi. Подключаться к ним отсюда не нужно — раздел просто показывает, кто рядом. + Отпечаток скопирован + Сохранить + Показывать меня другим + Игроки в той же сети Wi-Fi видят ваше имя и рейтинг, пока приложение открыто, а по Bluetooth — пока открыт экран «Игра рядом». Выключите, если не хотите этого: чужих вы по-прежнему будете видеть, а вас будет видно, только пока вы ждёте соперника в созданной партии. + Все + В сети + В этом отборе никого нет. + Избранные + Остальные + Не в сети + %1$d мин назад + %1$d ч назад + Вчера + %1$d дн назад + Игра рядом + Wi-Fi + Bluetooth + Играть + Оставаться в сети в фоне + Другие увидят вас, даже когда приложение свёрнуто. Появится постоянное уведомление, расход батареи вырастет. Без этого вы видны, только пока приложение открыто. + Android усыпит фоновую работу. Чтобы этого не произошло, снимите ограничение батареи для приложения. + Открыть настройки батареи + Присутствие в сети + Вы в сети + Игроки рядом видят вас и могут предложить партию + Игрок рядом + Рядом сейчас + Для работы в фоне Android требует постоянное уведомление. Без него система не разрешит приложению оставаться в сети. + + Настройки + Лицензии + Библиотеки, данные и радио + Приложение использует перечисленные ниже открытые компоненты вместе с их лицензиями. Нажмите на пункт, чтобы открыть его страницу. + Библиотеки + Данные + Радио + Полный текст Apache License 2.0 + Тактические задачи отобраны из открытой базы Lichess. Лицензия CC0 не требует указания авторства — мы благодарим команду Lichess. + Общедоступный интернет-поток SRG SSR: без рекламы и без ведущих, финансируется лицензионными сборами. Права на музыку принадлежат вещателю и правообладателям; приложение только воспроизводит поток и ничего не сохраняет. + Джаз-радио в настройках играет только Radio Swiss Jazz; если одна из его официальных ссылок недоступна, приложение берёт другую. + Материалы + Фоновая фотография леса. Лицензия Pexels разрешает свободное использование без указания автора — мы всё равно благодарим фотографа. + Значки интерфейса из набора Material Symbols, полученные через IconBuddy. Текст лицензии Apache 2.0 — в разделе «Библиотеки». + Изображения шахматных фигур. Лицензия CC0 не требует указания авторства, но автор просит ссылку на его страницу. + Поделиться приложением + Передать APK другу + Передача по Wi-Fi + Пусть второй человек отсканирует этот QR-код + Размер APK: %1$s + Инструкция + Оба телефона должны быть в одной сети Wi-Fi + Откройте камеру на втором телефоне и отсканируйте QR-код выше + Нажмите на ссылку, чтобы открыть её в браузере + Скачайте и установите APK + Или другим способом + Используйте Bluetooth, Quick Share или любое другое приложение для передачи файлов. + Поделиться APK через… + Готовим файл… + Сеть Wi-Fi не найдена. Подключитесь к Wi-Fi или включите точку доступа и откройте экран заново. + Это приложение установлено как набор частей (например, из Google Play), поэтому переданный файл может не установиться на другой телефон. + Не удалось подготовить файл для передачи. + Вибрация + Короткая вибрация при выборе фигуры, ходе и взятии, двойная — при шахе и в конце партии. Выключите, если она не нужна. + Подсвечивать последний ход + Закрашивает клетки, с которой и на которую сделан последний ход + Подсвечивать шах + Закрашивает клетку короля красным, пока ему шах + Нет разрешения на связь поблизости + Bluetooth выключен + Телефон не подключён к Wi-Fi + Соперник не найден + Соперник не ответил вовремя + На том устройстве нет этого приложения + Не удалось включить приём данных + Не удалось отправить данные + Пришло слишком большое сообщение + Соперник отключился + Не удалось открыть порт + Неизвестная ошибка связи + Попыток подключения: %1$d, успешных: %2$d + Последнее подключение заняло: %1$d мс + Частей отправлено: %1$d, повторно: %2$d (%3$d%%) + Повторных частей принято: %1$d + Повреждённых сообщений: %1$d + Сообщений потеряно: %1$d + === Счётчики сети === + === События === + журнал пуст + Игрок поблизости + Игрок + Без контроля времени + Классическая + Зелёная + Синяя + Серая + Соперник отказался от ничьей + Соперник отказался от реванша + Соперник покинул партию — победа за вами. + Соперник вышел — реванш недоступен. + Тактика + Мат в 1 ход + Мат в 2 хода + Мат в 3 хода + Вилка + Связка + Вскрытое нападение + Ладейный эндшпиль + Пешечный эндшпиль + Жертва + Отвлечение + Незащищённая фигура + Сквозной удар + Слоновый эндшпиль + Цугцванг + Ловля фигуры + Коневой эндшпиль + Превращение пешки + Завлечение + Двойной шах + Освобождение линии + Ферзевый эндшпиль + Взятие на проходе + Перекрытие + Рентген + Названия дебютов взяты из проекта lichess-org/chess-openings. Лицензия CC0 не требует указания авторства — благодарим его участников. + По этим партиям определяется, идёт ли игра по теории дебюта: рейтинговые партии Lichess за май 2013 года (179 550 партий). CC0. + Изучение дебютов + За белых + За чёрных + Ход %1$d из %2$d + Соперник отвечает… + Не тот ход. Нужная фигура подсвечена. + Начать заново + Дальше + Ходы и дебют в партии + Показывает над доской список ходов и название разыгрываемого дебюта + Изучение и повторение дебютов по интервалам + Пора повторить + Ходов к повторению: %1$d · дебютов: %2$d + Повторить + Продолжите изучение + Продолжить + Следующее повторение через %1$s + Повторить сейчас: %1$d + Сначала завершите «%1$s» + Изучение + Повторение + Тренировка + Запомните ход: сыграйте подсвеченной фигурой + Ваш ход — вспомните ход по теории + Дебют изучен! + Повторение завершено + С первой попытки: %1$d из %2$d + Ещё раз + сейчас + %1$d мин + %1$d ч + %1$d дн. + Теория + Вне теории с %1$d-го хода + +1 звезда! + Ошибка в повторении — звезда потеряна. Верните её повторениями без ошибок. + Все три звезды — дебют освоен! + Тренировка не влияет на звёзды — только повторения по расписанию. + До следующей звезды: повторений без ошибок — %1$d + + %d ход + %d хода + %d ходов + %d хода + + Соперник + ИИ · %1$s + Выйти из партии? + Партия будет засчитана как поражение. + Выйти + Сдаться? + Победа в этой партии достанется сопернику. + Задача · %1$d + ход %1$d из %2$d + Решено: %1$d + Начните с «%1$s» + Начать + Закрыт + Сегодня + Ход %1$d · %2$s + ваш ход + ход ИИ + Сыграть с другом + Играть + Звук + Игра + Система + Всё готово + Нужно действие + Рейтинг %1$d · Партий: %2$d + Прогресс + Рейтинг + Ключ устройства + Играть · %1$s · %2$s + Часто ошибается — для начинающих + Играет надёжно, иногда ошибается + Сильный, хорошо считает тактику + Считает глубоко и редко ошибается + Пуля + Блиц + Рапид + Классика + Создать партию + Вас видят как «%1$s» + Вас не видно — видимость выключена в разрешениях + Включить поиск по Bluetooth + Попросите друга открыть Matewave в той же сети Wi-Fi или с включённым Bluetooth + Игроки рядом + Ищем игроков рядом… + Политика конфиденциальности + Время вышло, но оставшимися фигурами мат поставить нельзя — ничья + Включите, чтобы находить игроков по Bluetooth + Игроков в той же сети Wi-Fi не найти, пока вы не подключитесь + Открыть настройки + diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml new file mode 100644 index 0000000..c342523 --- /dev/null +++ b/app/src/main/res/values-zh/strings.xml @@ -0,0 +1,357 @@ + + + Matewave + 早上好 + 下午好 + 晚上好 + 晚安 + 继续对局 + 快速对局 + 与上次相同:%1$s · %2$s + 对战 AI + 选择难度 + 好友对战 + 通过蓝牙或附近的 Wi-Fi + 国际象棋谜题 + 按你的等级分挑选的谜题 + 统计 + %1$d 胜 · %2$d%% · 连胜:%3$d + 最低:%1$d + 当前:%1$d + 最高:%1$d + 与 AI 和其他玩家每局对弈后的等级分 + 首页 + 可与 AI 对战、解战术谜题,也可通过蓝牙或同一 Wi-Fi 与附近的对手对弈。 + 版本 %1$s + 源代码 + 爵士电台 + 在后台播放网络电台,告别寂静 + 正在连接... + 无法连接 + 音效 + 选子、走子、吃子 + 返回 + 正在连接对手... + 无法连接到对手 + 连接已断开 + 白方 + 黑方 + 随机 + 对手走棋中... + 认输 + 对局结束 + 将杀!%1$s获胜 + 逼和 — 和棋 + 按 50 步规则和棋 + 因局面重复和棋 + 和棋 — 子力不足,无法将杀 + 超时!%1$s获胜 + 再来一局 + 菜单 + 谜题 + 为白方找出最佳一步 + 为黑方找出最佳一步 + 走法不对,再试一次 + 解法:%1$s + 暂无解法 + 解出来了!🎉 + 下一道谜题 + 提示 + 显示解法 + 对战 AI + 难度 + 简单 + 中等 + 困难 + 专家 + 你的颜色 + 时间控制 + 选择棋子 + 认输!%1$s获胜 + 提议和棋 + 正在等待对方回复和棋提议... + 和棋提议 + 对手提议和棋。是否接受? + 协议和棋 + 接受 + 拒绝 + 聊天 + 与对手聊天 + 还没有消息 — 来发第一条吧! + 消息... + 正在发送图片... + 关闭 + 允许 + 以后再说 + 好友 + 账号 + 昵称 + 好友 + ELO %1$d + 将头像和背景恢复为默认 + 选择初始水平 + 你的棋力水平 + 新手 + 业余 + 职业 + 大师 + 提议再战 + 已提议再战 — 等待对手回复… + 再战 + 对手想再下一局,双方颜色将互换。 + 开始 + 拒绝 + 附近对战所需的权限 + 要查找附近的玩家并在无网络时与他们对战,应用需要蓝牙权限。仅在“附近对战”页面打开时进行搜索。 + 权限 + 最近一次连接错误:%1$s + 复制连接日志 + ⚠ 该玩家冒充他人 — 数据已拒绝 + 对手身份未验证(对方使用的是旧版应用) + 对手的应用版本过旧,无法安全对局。请双方都更新应用。 + 允许 + 与附近设备通信 + 用于发现附近的玩家并在无网络时对战。 + 请先设置你的水平 + 需要等级分来匹配合适的对手,并向其他玩家展示你。只需几秒钟。 + 设置水平 + 关于 + 棋盘外观 + 棋盘颜色、坐标、棋子样式 + 棋盘颜色 + 棋盘上的字母和数字 + 边缘的格子标注:a–h 和 1–8 + 用图片显示棋子 + 所有手机外观一致。关闭后棋子将用字体符号绘制,在部分设备上会显示不同。 + 更改将在下次打开棋盘时生效。 + 新对手。指纹:%1$s — 如需确认是对方本人,请与其核对 + 你的密钥指纹 + 忘记对手的密钥 + 安全 + 在再次见面之前,你将无法区分熟悉的对手和冒用其名字的人。如果对手重装了应用,则需要这样做。 + 忘记 + 取消 + 准备好开始新对局了吗? + 首次遇到新玩家时自动保存 + 此设备密钥的唯一指纹。首次见面时,对手可以将其与你的核对。 + 在线 + 等级分 %1$d + 附近暂时没有人 + 在同一 Wi-Fi 网络中打开应用的玩家会显示在这里。无需从这里连接他们 — 此页面只显示谁在附近。 + 指纹已复制 + 保存 + 向他人显示我 + 应用打开时,同一 Wi-Fi 网络中的玩家能看到你的昵称和等级分;通过蓝牙则仅在“附近对战”页面打开时可见。如不想这样,请关闭:你仍能看到别人,而只有在你创建对局并等待对手时,别人才能看到你。 + 全部 + 在线 + 此筛选中没有人。 + 收藏 + 其他 + 离线 + %1$d 分钟前 + %1$d 小时前 + 昨天 + %1$d 天前 + 附近对战 + Wi-Fi + 蓝牙 + 开始 + 在后台保持在线 + 即使应用最小化,其他人也能看到你。会出现常驻通知,电量消耗会增加。关闭后,仅在应用打开时可见。 + Android 会让后台运行进入休眠。为避免这种情况,请取消该应用的电池限制。 + 打开电池设置 + 在线状态 + 你在线 + 附近的玩家能看到你,并可向你发起对局 + 附近的玩家 + 当前在附近 + 要在后台运行,Android 要求显示常驻通知。没有通知,系统不会让应用保持在线。 + 设置 + 许可证 + 库、数据和电台 + 本应用使用了下列开放组件及其许可证。点按条目即可打开对应页面。 + 库 + 数据 + 电台 + Apache License 2.0 全文 + 题目选自 Lichess 开放的谜题数据库。CC0 许可证无需署名,在此感谢 Lichess 团队。 + SRG SSR 公开提供的网络电台流:无广告、无主持人,由收视费资助。音乐版权归电台和权利人所有,应用只播放,不保存任何内容。 + 设置中的爵士电台只播放 Radio Swiss Jazz;其中一个官方地址不可用时,应用会改用另一个。 + 素材 + 背景森林照片。Pexels 许可证允许免费使用且无需署名,我们仍感谢摄影师。 + 界面图标来自 Material Symbols 图标集,通过 IconBuddy 获取。Apache 2.0 全文见“库”部分。 + 国际象棋棋子图片。CC0 许可证无需署名,但作者希望附上其主页链接。 + 分享应用 + 把 APK 发给朋友 + 通过 Wi-Fi 分享 + 请对方扫描此二维码 + APK 大小:%1$s + 说明 + 两部手机必须连接同一个 Wi-Fi 网络 + 在对方手机上打开相机应用,扫描上方的二维码 + 点按链接,在浏览器中打开 + 下载并安装 APK + 或使用其他方式分享 + 可使用蓝牙、快速分享或任何其他已安装的分享应用。 + 通过…分享 APK + 正在准备文件… + 未找到 Wi-Fi 网络。请连接 Wi-Fi 或开启热点,然后重新打开此页面。 + 此应用是以拆分包形式安装的(例如来自 Google Play),因此分享的文件可能无法在另一部手机上安装。 + 无法准备要分享的文件。 + 振动 + 选子、走子和吃子时短振一下,将军或对局结束时振动两下。如不需要,可以关闭。 + 高亮上一步 + 为上一步走出和落下的格子上色 + 高亮将军 + 将军时,把国王所在的格子涂成红色 + 没有附近设备连接权限 + 蓝牙已关闭 + 手机未连接 Wi-Fi + 未找到对手 + 对手未及时响应 + 该设备上没有安装此应用 + 无法开启数据接收 + 无法发送数据 + 收到的消息过大 + 对手已断开连接 + 无法打开端口 + 未知连接错误 + 连接尝试:%1$d 次,成功:%2$d 次 + 上次连接用时:%1$d 毫秒 + 已发送分片:%1$d,重发:%2$d(%3$d%%) + 收到重复分片:%1$d + 损坏的消息:%1$d + 丢失的消息:%1$d + === 网络计数 === + === 事件 === + 日志为空 + 附近的玩家 + 玩家 + 无时间限制 + 经典 + 绿色 + 蓝色 + 灰色 + 对手拒绝了和棋 + 对手拒绝了再战 + 对手离开了对局——你获胜。 + 对手已离开——无法再战。 + 战术 + 一步杀 + 两步杀 + 三步杀 + 捉双 + 牵制 + 闪击 + 车残局 + 兵残局 + 弃子 + 引离 + 无保护的棋子 + 串击 + 象残局 + 楚茨文格 + 困子 + 马残局 + 升变 + 引入 + 双将 + 腾挪 + 后残局 + 吃过路兵 + 拦截 + X光攻击 + 开局名称来自 lichess-org/chess-openings 项目。CC0 许可证无需署名,在此感谢贡献者。 + 用于判断对局是否仍在开局理论之内:Lichess 2013 年 5 月的等级分对局(179,550 局)。CC0。 + 学习开局 + 执白 + 执黑 + 第 %1$d / %2$d 步 + 对手正在应着… + 不是这步。正确的棋子已高亮。 + 重新开始 + 下一步 + 对局中的着法和开局 + 在棋盘上方显示着法列表和正在下的开局名称 + 用间隔重复学习和复习开局 + 该复习了 + 待复习着法:%1$d · 开局:%2$d + 复习 + 继续学习 + 继续 + 下次复习:%1$s后 + 立即复习:%1$d + 请先完成“%1$s” + 学习 + 复习 + 练习 + 记住这步棋:用高亮的棋子走出它 + 轮到你了——回忆定式着法 + 开局已学会! + 复习完成 + 一次答对:%1$d / %2$d + 再练一次 + 现在 + %1$d 分钟 + %1$d 小时 + %1$d 天 + 定式 + 第 %1$d 步起脱离定式 + 星级 +1! + 复习出错,失去一颗星。零失误复习即可赢回。 + 三颗星——开局已精通! + 练习不影响星级,只有按计划的复习才会。 + 距下一颗星还需零失误复习 %1$d 次 + + %d 步 + + 对手 + AI · %1$s + 退出对局? + 本局将记为失败。 + 退出 + 认输? + 本局将判对手获胜。 + 谜题 · %1$d + 第 %1$d / %2$d 步 + 已解:%1$d + 从“%1$s”开始 + 开始 + 已锁定 + 今日 + 第 %1$d 步 · %2$s + 轮到你 + AI 走棋 + 和好友下棋 + 对战 + 声音 + 游戏 + 系统 + 已就绪 + 需要处理 + 等级分 %1$d · 对局:%2$d + 进度 + 等级分 + 设备密钥 + 开始 · %1$s · %2$s + 经常失误,适合新手 + 下得稳健,偶尔失误 + 实力强,擅长战术 + 计算深远,很少出错 + 超快棋 + 快棋 + 快速棋 + 慢棋 + 创建对局 + 别人看到的你是“%1$s” + 你已隐身——可见性已在权限中关闭 + 开启蓝牙搜索 + 请好友在同一 Wi-Fi 下或开启蓝牙后打开 Matewave + 附近的玩家 + 正在搜索附近的玩家… + 隐私政策 + 超时,但剩余子力无法将杀——和棋 + 开启后即可通过蓝牙查找玩家 + 连接 Wi-Fi 后才能找到同一网络中的玩家 + 打开设置 + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..cb6b2b2 --- /dev/null +++ b/app/src/main/res/values/strings.xml @@ -0,0 +1,358 @@ + + + Matewave + Good morning + Good afternoon + Good evening + Good night + Continue game + Quick game + Same as last time: %1$s · %2$s + Vs AI + Choose difficulty + Vs a friend + Over Bluetooth or Wi-Fi nearby + Chess puzzles + Puzzles picked for your rating + Statistics + %1$d wins · %2$d%% · streak: %3$d + Min: %1$d + Now: %1$d + Max: %1$d + Your rating after each game against the AI and other players + Home + Play against the AI, solve tactical puzzles, or play an opponent nearby — over Bluetooth or on the same Wi-Fi network. + Version %1$s + Source code + Jazz radio + Background internet radio instead of silence + Connecting... + Couldn\'t connect + Sound effects + Selecting a piece, moving, capturing + Back + Connecting to opponent... + Couldn\'t connect to the opponent + Connection lost + White + Black + Random + Opponent\'s move... + Resign + Game over + Checkmate! %1$s wins + Stalemate — draw + Draw by the 50-move rule + Draw by repetition + Draw — insufficient material to checkmate + Time\'s up! %1$s wins + Play again + Menu + Puzzle + Find the best move for White + Find the best move for Black + Wrong move, try again + Solution: %1$s + Solution unavailable + Solved! 🎉 + Next puzzle + Hint + Show solution + Play against the AI + Difficulty + Easy + Medium + Hard + Expert + Your color + Time control + Choose a piece + Resignation! %1$s wins + Offer a draw + Waiting for a reply to the draw offer... + Draw offer + Your opponent offers a draw. Accept? + Draw by agreement + Accept + Decline + Chat + Chat with opponent + No messages yet — write first! + Message... + Sending image... + Close + Allow + Not now + Friends + Account + Name + Friends + ELO %1$d + Reset avatar and background to default + Choose a starting level + Your skill level + Beginner + Amateur + Pro + Master + Offer a rematch + Rematch offered — waiting for your opponent\'s reply… + Rematch + Your opponent wants to play again. Colors will be swapped. + Play + Decline + Permissions for nearby play + To find players nearby and play with them without the internet, the app needs Bluetooth access. Searching runs only while the nearby play screen is open. + Permissions + Last connection error: %1$s + Copy connection log + ⚠ This player is impersonating someone else — data rejected + The opponent\'s identity isn\'t verified (they have an old version of the app) + The opponent\'s app is outdated and can\'t play securely with yours. Both players need to update. + Allow + Nearby device connection + Needed to find players nearby and play without the internet. + First, set your level + Your rating is needed to pick a suitable opponent and to show you to other players. It takes a couple of seconds. + Set level + About + Board appearance + Board colors, coordinates, piece style + Board colors + Letters and numbers on the board + Square labels along the edges: a–h and 1–8 + Pieces as images + The same look on every phone. Without this, pieces are drawn with font symbols and look different on some devices. + Changes apply the next time the board is opened. + New opponent. Fingerprint: %1$s — check it with them if you want to be sure it\'s really them + Your key fingerprint + Forget opponents\' keys + Security + You will no longer be able to tell a familiar opponent from someone using their name until you meet again. Needed if the opponent reinstalled the app. + Forget + Cancel + Ready for a new game? + Saved automatically the first time you meet a new player + The unique fingerprint of this device\'s key. Your opponent can compare it with yours when you first meet. + Online + Rating %1$d + Nobody nearby yet + Players who opened the app on this same Wi-Fi network appear here. You don\'t need to connect to them from here — this section just shows who is nearby. + Fingerprint copied + Save + Show me to others + Players on the same Wi-Fi network see your name and rating while the app is open, and over Bluetooth while the “Play nearby” screen is open. Turn it off if you don\'t want that: you\'ll still see others, and you stay visible only while waiting for an opponent in a game you created. + All + Online + Nobody in this selection. + Favorites + Others + Offline + %1$d min ago + %1$d h ago + Yesterday + %1$d d ago + Play nearby + Wi-Fi + Bluetooth + Play + Stay online in the background + Others will see you even when the app is minimized. A persistent notification will appear and battery use will rise. Without this you\'re visible only while the app is open. + Android will put background work to sleep. To prevent this, remove the battery restriction for the app. + Open battery settings + Online presence + You\'re online + Players nearby can see you and offer a game + Player nearby + Nearby now + To work in the background, Android requires a persistent notification. Without it, the system won\'t let the app stay online. + Settings + Licenses + Libraries, data and radio + This app uses the open components listed below, with their licenses. Tap an item to open its page. + Libraries + Data + Radio + Full text of the Apache License 2.0 + Puzzles are selected from the open Lichess puzzle database. The CC0 license does not require attribution — we thank the Lichess team. + Publicly available internet stream from SRG SSR: no advertising and no presenters, funded by license fees. The music belongs to the broadcaster and rights holders; the app only plays the stream and stores nothing. + The jazz radio in Settings plays only Radio Swiss Jazz; if one of its official stream links is unavailable, the app uses another. + Assets + Background forest photo. The Pexels License allows free use without attribution — we thank the photographer anyway. + Interface icons from the Material Symbols set, obtained via IconBuddy. The Apache 2.0 text is under Libraries. + Chess piece images. The CC0 license does not require attribution, but the author asks for a link to their page. + Share the app + Send the APK to a friend + Share via Wi-Fi + Have the other person scan this QR code + APK size: %1$s + Instructions + Both phones must be on the same Wi-Fi network + Open the camera app on the other phone and scan the QR code above + Tap the link to open it in a browser + Download and install the APK + Or share another way + Use Bluetooth, Quick Share, or any other installed sharing app. + Share APK via… + Preparing the file… + No Wi-Fi network found. Connect to Wi-Fi or turn on a hotspot, then reopen this screen. + This copy was installed as a split bundle (for example, from Google Play), so the shared file may not install on another phone. + Couldn\'t prepare the file for sharing. + Vibration + A short vibration when you select a piece, move or capture, and a double one on check or when the game ends. Turn it off if you don\'t want it. + Highlight the last move + Colors the squares the last move was played from and to + Highlight check + Colors the king\'s square red while it is in check + No permission for nearby connections + Bluetooth is off + The phone isn\'t connected to Wi-Fi + Opponent not found + The opponent didn\'t respond in time + That device doesn\'t have this app + Couldn\'t turn on data reception + Couldn\'t send data + Received a message that is too large + The opponent disconnected + Couldn\'t open a port + Unknown connection error + Connection attempts: %1$d, successful: %2$d + Last connection took: %1$d ms + Parts sent: %1$d, resent: %2$d (%3$d%%) + Duplicate parts received: %1$d + Corrupted messages: %1$d + Messages lost: %1$d + === Network counters === + === Events === + log is empty + Nearby player + Player + No time limit + Classic + Green + Blue + Grey + The opponent declined the draw + The opponent declined the rematch + Your opponent left the game — you win. + Your opponent has left — a rematch isn\'t available. + Tactic + Mate in 1 + Mate in 2 + Mate in 3 + Fork + Pin + Discovered attack + Rook endgame + Pawn endgame + Sacrifice + Deflection + Hanging piece + Skewer + Bishop endgame + Zugzwang + Trapped piece + Knight endgame + Promotion + Attraction + Double check + Clearance + Queen endgame + En passant + Interference + X-ray attack + Opening names come from the lichess-org/chess-openings project. CC0 does not require attribution — we thank its contributors. + Used to tell opening theory from deviations during games: Lichess rated games of May 2013 (179,550 games). CC0. + Learn openings + As White + As Black + Move %1$d of %2$d + Opponent is replying… + Not this move. The right piece is highlighted. + Start over + Next + Moves and opening during games + Shows the move list and the name of the opening above the board + Learn and review lines with spaced repetition + Time to review + Moves to review: %1$d · openings: %2$d + Review + Continue learning + Continue + Next review in %1$s + Review now: %1$d + Finish “%1$s” first + Learning + Review + Practice + Remember this move: play it with the highlighted piece + Your move — recall the book move + Opening learned! + Review complete + Right on the first try: %1$d of %2$d + Practice again + now + %1$d min + %1$d h + %1$d d + Theory + Out of book from move %1$d + +1 star! + A mistake in the review cost you a star. Earn it back with flawless reviews. + All three stars — opening mastered! + Practice doesn\'t change stars: only scheduled reviews do. + Flawless reviews to the next star: %1$d + + %d move + %d moves + + Opponent + AI · %1$s + Leave the game? + The game will count as a loss. + Leave + Resign the game? + Your opponent will win this game. + Puzzle · %1$d + move %1$d of %2$d + Solved: %1$d + Start with “%1$s” + Start + Locked + Today + Move %1$d · %2$s + your move + AI to move + Play with a friend + Play + Sound + Game + System + All set + Action needed + Rating %1$d · Games: %2$d + Progress + Rating + Device key + Play · %1$s · %2$s + Makes frequent mistakes — good for beginners + Plays solidly, sometimes slips + Strong and tactical + Calculates deep and rarely errs + Bullet + Blitz + Rapid + Classical + Create game + Others see you as “%1$s” + You\'re hidden from others — visibility is off in Permissions + Turn on Bluetooth search + Ask your friend to open Matewave on the same Wi-Fi or with Bluetooth on + Players nearby + Looking for players nearby… + Privacy policy + Time\'s up, but the remaining pieces can\'t deliver mate — draw + Turn it on to find players over Bluetooth + Players on the same Wi-Fi network can\'t be found until you connect + Open settings + diff --git a/app/src/main/res/xml/data_extraction_rules.xml b/app/src/main/res/xml/data_extraction_rules.xml new file mode 100644 index 0000000..94d8af8 --- /dev/null +++ b/app/src/main/res/xml/data_extraction_rules.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/app/src/main/res/xml/file_paths.xml b/app/src/main/res/xml/file_paths.xml new file mode 100644 index 0000000..83ed5cc --- /dev/null +++ b/app/src/main/res/xml/file_paths.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/xml/network_security_config.xml b/app/src/main/res/xml/network_security_config.xml new file mode 100644 index 0000000..1f88d19 --- /dev/null +++ b/app/src/main/res/xml/network_security_config.xml @@ -0,0 +1,6 @@ + + + + stream.srg-ssr.ch + + diff --git a/app/src/test/java/cc/skysparkle/matewave/ChessAITest.kt b/app/src/test/java/cc/skysparkle/matewave/ChessAITest.kt new file mode 100644 index 0000000..566f181 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/ChessAITest.kt @@ -0,0 +1,75 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.ai.AiDifficulty +import cc.skysparkle.matewave.ai.ChessAI +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.Move +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNotEquals +import org.junit.Assert.assertNotNull +import org.junit.Assert.assertTrue +import org.junit.Test +import java.util.Random + +class ChessAITest { + private fun sq(name: String) = Move.squareFromName(name) + + @Test + fun findsBackRankMateInOne() { + val board = Board.fromFen("6k1/5ppp/8/8/8/8/5PPP/3R2K1 w - - 0 1") + val move = ChessAI.bestMove(board, AiDifficulty.HARD) + assertNotNull(move) + assertEquals(sq("d1"), move!!.from) + assertEquals(sq("d8"), move.to) + } + + @Test + fun easyNeverMissesMateInOne() { + val board = Board.fromFen("6k1/5ppp/8/8/8/8/5PPP/3R2K1 w - - 0 1") + repeat(10) { seed -> + val move = ChessAI.bestMove(board, AiDifficulty.EASY, random = Random(seed.toLong())) + assertEquals("seed $seed", sq("d8"), move!!.to) + } + } + + @Test + fun capturesUndefendedQueen() { + val board = Board.fromFen("4k3/8/8/3q4/8/8/8/3QK3 w - - 0 1") + val move = ChessAI.bestMove(board, AiDifficulty.MEDIUM, random = Random(1)) + assertEquals(sq("d1"), move!!.from) + assertEquals(sq("d5"), move.to) + } + + @Test + fun doesNotTakeDefendedPawnWithQueen() { + val board = Board.fromFen("4k3/8/2p5/3p4/8/8/8/3QK3 w - - 0 1") + for (level in AiDifficulty.entries) { + val move = ChessAI.bestMove(board, level, random = Random(7)) + assertNotNull(move) + val grabsPawn = move!!.from == sq("d1") && move.to == sq("d5") + assertTrue("level $level grabbed a defended pawn with the queen", !grabsPawn) + } + } + + @Test + fun respectsClockBudget() { + val started = System.currentTimeMillis() + ChessAI.bestMove(Board.startPosition(), AiDifficulty.EXPERT, clockMillis = 3_000L) + val elapsed = System.currentTimeMillis() - started + assertTrue("AI thought for $elapsed ms with 3 s on the clock", elapsed < 1_500) + } + + @Test + fun returnsNullWithoutLegalMoves() { + val board = Board.fromFen("3R2k1/5ppp/8/8/8/8/5PPP/6K1 b - - 0 1") + assertEquals(null, ChessAI.bestMove(board, AiDifficulty.MEDIUM)) + } + + @Test + fun differentSeedsCanVaryOpening() { + val first = (0 until 15).map { + ChessAI.bestMove(Board.startPosition(), AiDifficulty.EASY, random = Random(it.toLong()))!!.toUci() + }.toSet() + assertNotEquals(1, first.size) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/ChessEngineTest.kt b/app/src/test/java/cc/skysparkle/matewave/ChessEngineTest.kt new file mode 100644 index 0000000..13ad084 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/ChessEngineTest.kt @@ -0,0 +1,78 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.GameStatus +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor +import org.junit.Assert.assertEquals +import org.junit.Assert.assertFalse +import org.junit.Assert.assertTrue +import org.junit.Test + +class ChessEngineTest { + + private fun perft(board: Board, depth: Int): Long { + val moves = ChessEngine.legalMoves(board) + if (depth == 1) return moves.size.toLong() + return moves.sumOf { perft(ChessEngine.applyMove(board, it), depth - 1) } + } + + /** Node counts from the standard perft suite: castling, en passant and promotions included. */ + @Test + fun perftMatchesReferenceCounts() { + assertEquals(8_902L, perft(Board.startPosition(), 3)) + assertEquals(97_862L, perft(Board.fromFen("r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 1"), 3)) + assertEquals(43_238L, perft(Board.fromFen("8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 w - - 0 1"), 4)) + assertEquals(9_467L, perft(Board.fromFen("r3k2r/Pppp1ppp/1b3nbN/nP6/BBP1P3/q4N2/Pp1P2PP/R2Q1RK1 w kq - 0 1"), 3)) + assertEquals(62_379L, perft(Board.fromFen("rnbq1k1r/pp1Pbppp/2p5/8/2B5/8/PPP1NnPP/RNBQK2R w KQ - 1 8"), 3)) + } + + @Test + fun noCastlingWithoutTheRook() { + // The castling flag is still set, but the h1 rook is gone. + val board = Board.fromFen("4k3/8/8/8/8/8/8/4K3 w K - 0 1") + assertTrue(ChessEngine.legalMoves(board).none { it.isCastleKingSide }) + } + + @Test + fun deadPositionsAreDrawn() { + assertTrue(ChessEngine.isDeadPosition(Board.fromFen("4k3/8/8/8/8/8/8/4K3 w - - 0 1"))) + assertTrue(ChessEngine.isDeadPosition(Board.fromFen("4k3/8/8/8/8/8/8/3NK3 w - - 0 1"))) + // Bishops on squares of one colour only: c1 and f4 are both dark. + assertTrue(ChessEngine.isDeadPosition(Board.fromFen("4k3/8/8/8/5b2/8/8/2B1K3 w - - 0 1"))) + assertFalse(ChessEngine.isDeadPosition(Board.fromFen("4k3/8/8/8/4b3/8/8/2B1K3 w - - 0 1"))) + assertFalse(ChessEngine.isDeadPosition(Board.fromFen("4k3/8/8/8/8/8/8/2NNK3 w - - 0 1"))) + assertFalse(ChessEngine.isDeadPosition(Board.fromFen("4k3/7p/8/8/8/8/8/4K3 w - - 0 1"))) + assertEquals(GameStatus.DRAW_MATERIAL, ChessEngine.gameStatus(Board.fromFen("4k3/8/8/8/8/8/8/3BK3 b - - 0 1"))) + } + + @Test + fun mateNeedsMoreThanOneMinorPiece() { + val board = Board.fromFen("4k3/8/8/8/8/8/p7/3NK3 w - - 0 1") + assertFalse(ChessEngine.canMate(board, PieceColor.WHITE)) + assertTrue(ChessEngine.canMate(board, PieceColor.BLACK)) + assertTrue(ChessEngine.canMate(Board.fromFen("4k3/8/8/8/8/8/8/2BNK3 w - - 0 1"), PieceColor.WHITE)) + } + + @Test + fun threefoldRepetitionCountsTheStartingPosition() { + var board = Board.startPosition() + val history = mutableListOf(Notation.positionKey(board)) + var status = GameStatus.ONGOING + // Knights out and back twice: the start position appears for the third time. + for (san in listOf("Nf3", "Nf6", "Ng1", "Ng8", "Nf3", "Nf6", "Ng1", "Ng8")) { + board = ChessEngine.applyMove(board, Notation.fromSan(board, san)!!) + history.add(Notation.positionKey(board)) + status = ChessEngine.gameStatus(board, history) + } + assertEquals(GameStatus.DRAW_REPETITION, status) + } + + @Test + fun uciRoundTripKeepsPromotion() { + val move = Move.fromUci("e7e8n") + assertEquals("e7e8n", move.toUci()) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/GameMessageTest.kt b/app/src/test/java/cc/skysparkle/matewave/GameMessageTest.kt new file mode 100644 index 0000000..42865b4 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/GameMessageTest.kt @@ -0,0 +1,32 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.network.GameMessage +import org.junit.Assert.assertEquals +import org.junit.Test + +class GameMessageTest { + private fun roundTrip(msg: GameMessage) = assertEquals(msg, GameMessage.fromJson(msg.toJson())) + + @Test fun move() = roundTrip(GameMessage.MoveMsg("e2e4", 295_000, "g1", 1)) + @Test fun resign() = roundTrip(GameMessage.ResignMsg(true, "g1")) + @Test fun drawOffer() = roundTrip(GameMessage.DrawOfferMsg(null, "g1")) + @Test fun drawAccept() = roundTrip(GameMessage.DrawOfferMsg(true, "g1")) + @Test fun chatText() = roundTrip(GameMessage.ChatMsg(text = "Привет", gameId = "g1")) + @Test fun leave() = roundTrip(GameMessage.LeaveMsg(false, "g1")) + @Test fun timeout() = roundTrip(GameMessage.TimeoutMsg(true, "g1")) + @Test fun ping() = roundTrip(GameMessage.PingMsg(true, 42)) + @Test fun signed() = roundTrip(GameMessage.SignedMsg("abc", "tag", 7)) + @Test fun rematch() = roundTrip(GameMessage.RematchMsg("accept", "g1", "g2")) + @Test fun images() = roundTrip(GameMessage.ProfileImagesMsg("a", null, "g1")) + + @Test + fun profileCarriesGameIdAndVersion() { + val msg = GameMessage.ProfileMsg( + userId = "u1", name = "Vladimir", avatarBase64 = null, backgroundBase64 = null, elo = 1350, + publicKey = "pk", signature = "sig", ephemeralKey = "ek", + initialSeconds = 300, incrementSeconds = 2, gameId = "g1" + ) + roundTrip(msg) + assertEquals(GameMessage.PROTOCOL_VERSION, (GameMessage.fromJson(msg.toJson()) as GameMessage.ProfileMsg).protocolVersion) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/MaterialTest.kt b/app/src/test/java/cc/skysparkle/matewave/MaterialTest.kt new file mode 100644 index 0000000..417a697 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/MaterialTest.kt @@ -0,0 +1,52 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.Material +import cc.skysparkle.matewave.engine.PieceType +import org.junit.Assert.assertEquals +import org.junit.Assert.assertTrue +import org.junit.Test + +class MaterialTest { + @Test + fun startPositionIsEven() { + val b = Material.balance(Board.startPosition()) + assertTrue(b.capturedByWhite.isEmpty()) + assertTrue(b.capturedByBlack.isEmpty()) + assertEquals(0, b.advantage) + } + + @Test + fun whiteUpAKnight() { + val b = Material.balance(Board.fromFen("r1bqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1")) + assertEquals(listOf(PieceType.KNIGHT), b.capturedByWhite) + assertEquals(3, b.advantage) + } + + @Test + fun blackAheadIsNegative() { + val b = Material.balance(Board.fromFen("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNB1KBNR w KQkq - 0 1")) + assertEquals(listOf(PieceType.QUEEN), b.capturedByBlack) + assertEquals(-9, b.advantage) + } + + @Test + fun promotionDoesNotCountAsCapturedPawn() { + // The a-pawn became a second queen and the g1 knight is gone. + val b = Material.balance(Board.fromFen("rnbqkbnr/pppppppp/8/8/8/8/1PPPPPPP/RNBQKBQR w Qkq - 0 1")) + assertTrue(b.capturedByBlack.none { it == PieceType.PAWN }) + assertEquals(listOf(PieceType.KNIGHT), b.capturedByBlack) + // A queen for a pawn (+8) minus the knight (-3). + assertEquals(5, b.advantage) + } + + @Test + fun displayOrderIsLightToHeavy() { + val b = Material.balance(Board.fromFen("4k3/8/8/8/8/8/8/4K3 w - - 0 1")) + assertEquals( + listOf(PieceType.PAWN, PieceType.KNIGHT, PieceType.BISHOP, PieceType.ROOK, PieceType.QUEEN), + b.capturedByWhite.distinct() + ) + assertEquals(15, b.capturedByWhite.size) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/NotationTest.kt b/app/src/test/java/cc/skysparkle/matewave/NotationTest.kt new file mode 100644 index 0000000..9580ed3 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/NotationTest.kt @@ -0,0 +1,60 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceType +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNotNull +import org.junit.Assert.assertTrue +import org.junit.Test + +class NotationTest { + + private val lichessGames = listOf( + "1. b3 e6 2. Bb2 Qe7 3. g4 g6 4. Bxh8 f6 5. g5 b6 6. gxf6 Nxf6 7. Bxf6 Qxf6 8. Nc3 Bb7 9. f3 c6 10. Bg2 Na6 11. e4 Nc7 12. Qe2 O-O-O 13. O-O-O Ba6 14. d3 Qxc3 15. Rd2 Qa1# 0-1", + "1. d4 d5 2. e3 Nc6 3. Bb5 Nf6 4. Bxc6+ bxc6 5. f3 Bf5 6. e4 dxe4 7. fxe4 Bxe4 8. Ne2 Bxg2 9. Rg1 Bf3 10. Rg3 Qd5 11. Nec3 Qe5+ 12. Kf1 Bxd1 13. Nxd1 Qf5+ 14. Ke1 Qxc2 15. Ndc3 Qxc1+ 16. Ke2 Qxb2+ 17. Ke3 Qxa1 0-1", + "1. e4 c6 2. Nf3 d5 3. exd5 cxd5 4. d4 a6 5. Nc3 Bg4 6. h3 Bh5 7. Bd3 f6 8. Be3 e5 9. dxe5 fxe5 10. Qd2 e4 11. g4 Bg6 12. Bg5 Be7 13. Bxe7 Nxe7 14. Bxe4 dxe4 15. Qxd8+ Kxd8 16. O-O-O+ Nd7 17. Ne5 Be8 18. Nxe4 Kc7 19. Nxd7 Bxd7 20. Nc5 Bc6 21. Ne6+ Kb6 22. Rd6 Ka7 23. Rhd1 Nc8 24. Rd8 Rxd8 25. Rxd8 Nb6 26. Rxa8+ Kxa8 27. Nxg7 Bg2 28. h4 Nd7 29. f4 Nf6 30. g5 Ne4 31. h5 Kb8 32. h6 Kc7 33. g6 hxg6 34. h7 g5 35. fxg5 Nxg5 36. h8=Q Nf7 37. Qh7 Kd6 38. Nf5+ Ke6 39. Qg6+ 1-0", + "1. e4 e5 2. Nf3 f6 3. Nc3 Nc6 4. Bc4 b5 5. Bd5 b4 6. Na4 Rb8 7. Bxg8 Rxg8 8. b3 Ba6 9. d3 d6 10. O-O g5 11. Ne1 h6 12. Qg4 Bc8 13. Qh5+ Kd7 14. Be3 Nd4 15. Bxd4 exd4 16. Nf3 c5 17. Qg4+ Ke7 18. Qh5 Bd7 19. Nd2 Be8 20. Qg4 Bd7 21. Qh5 Be8 22. Qf3 h5 23. Nc4 g4 24. Qf4 Kf7 25. Nab2 Bd7 26. g3 Bc8 27. Nd2 d5 28. Qxb8 Bd6 29. Qxa7+ Qd7 30. Qxd7+ Bxd7 31. exd5 Re8 32. Nbc4 Bc7 33. d6 Bd8 34. Rfe1 Re6 35. Rxe6 Bxe6 36. Re1 Bd7 37. Ne4 Kg6 38. Nxc5 Bf5 39. d7 h4 40. Re8 Bc7 41. d8=N Be5 42. a4 Kg7 43. a5 Bc7 44. a6 Bb8 45. Nc6 Kf7 46. Rxb8 Kg6 47. a7 Kf7 48. a8=N Bd7 49. Nd8+ Ke8 50. Ne4 Ke7 51. Nc7 Bf5 52. Nc5 h3 53. Nc6+ Kf7 54. Nd6+ Kg6 55. Ne7+ Kg5 56. Nexf5 Kg6 57. Ne7+ Kg5 58. N7e6+ Kh5 59. Ne8 f5 60. Nf6+ Kh6 61. Nfd5 f4 62. Ndxf4 Kh7 63. Nfg6 Kh6 64. Ne4 Kh5 65. Nf6+ Kh6 66. Nfg8+ Kh5 67. Ng7+ Kg5 68. Ne6+ Kh5 69. Nf6+ Kh6 70. Rh8# 1-0" + ) + + private fun sanTokens(movetext: String) = movetext.split(" ") + .filter { !it.endsWith(".") && it !in setOf("1-0", "0-1", "1/2-1/2", "*") } + + /** Our SAN must be identical to Lichess SAN: the opening data is keyed by it. */ + @Test + fun sanMatchesLichessNotation() { + for (movetext in lichessGames) { + var board = Board.startPosition() + sanTokens(movetext).forEachIndexed { i, token -> + val move = Notation.fromSan(board, token) + assertNotNull("move ${i + 1} $token", move) + assertEquals("move ${i + 1}", token, Notation.toSan(board, move!!, withCheck = true)) + board = ChessEngine.applyMove(board, move) + } + } + } + + @Test + fun looseSanIsAccepted() { + val board = Board.startPosition() + assertNotNull(Notation.fromSan(board, "Ngf3")) + assertNotNull(Notation.fromSan(board, "e4!?")) + val castle = Board.fromFen("r3k2r/8/8/8/8/8/8/R3K2R w KQkq - 0 1") + assertNotNull(Notation.fromSan(castle, "0-0-0")) + val promo = Board.fromFen("8/4P3/8/8/8/8/k7/4K3 w - - 0 1") + assertEquals(PieceType.QUEEN, Notation.fromSan(promo, "e8Q")?.promotion) + } + + @Test + fun illegalSanIsRejected() { + assertEquals(null, Notation.fromSan(Board.startPosition(), "Ke3")) + } + + @Test + fun standardStartIsDetected() { + assertTrue(Notation.isStandardStart(Board.startPosition())) + val after = ChessEngine.applyMove(Board.startPosition(), Notation.fromSan(Board.startPosition(), "e4")!!) + assertTrue(!Notation.isStandardStart(after)) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/OpeningCoursesTest.kt b/app/src/test/java/cc/skysparkle/matewave/OpeningCoursesTest.kt new file mode 100644 index 0000000..35b5fd3 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/OpeningCoursesTest.kt @@ -0,0 +1,40 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Notation +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNotNull +import org.junit.Assert.assertTrue +import org.junit.Test +import java.io.File + +/** Checks the bundled opening courses; unit tests run with the module directory as working dir. */ +class OpeningCoursesTest { + + private val lines: List> = + File("src/main/assets/openings/courses.tsv").readLines().filter { it.isNotBlank() }.map { it.split('\t') } + + @Test + fun everyLineIsLegalAndEndsWithTheLearnersMove() { + assertEquals(24, lines.size) + for (f in lines) { + val side = f[0] + val sans = f[3].split(' ') + var board = Board.startPosition() + sans.forEachIndexed { i, san -> + val move = Notation.fromSan(board, san) + assertNotNull("${f[2]}: move ${i + 1} $san", move) + board = ChessEngine.applyMove(board, move!!) + } + val learnerLast = (sans.size % 2 == 1) == (side == "W") + assertTrue("${f[2]} must end with the learner's move", learnerLast) + } + } + + @Test + fun bothSidesAreCovered() { + assertTrue(lines.count { it[0] == "W" } >= 8) + assertTrue(lines.count { it[0] == "B" } >= 8) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/OpeningSrsTest.kt b/app/src/test/java/cc/skysparkle/matewave/OpeningSrsTest.kt new file mode 100644 index 0000000..dc13579 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/OpeningSrsTest.kt @@ -0,0 +1,148 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.Move +import cc.skysparkle.matewave.engine.Notation +import cc.skysparkle.matewave.engine.PieceColor +import cc.skysparkle.matewave.openings.CourseStatus +import cc.skysparkle.matewave.openings.OpeningCourse +import cc.skysparkle.matewave.openings.OpeningSrs +import org.junit.Assert.assertEquals +import org.junit.Assert.assertFalse +import org.junit.Assert.assertTrue +import org.junit.Test + +class OpeningSrsTest { + + private class MemoryStore : OpeningSrs.CardStore { + val map = HashMap() + override fun get(key: String) = map[key] + override fun put(key: String, value: String) { map[key] = value } + } + + private fun course(name: String, line: String, side: PieceColor = PieceColor.WHITE): OpeningCourse { + val sans = line.split(' ') + var board = Board.startPosition() + val moves = ArrayList() + for (san in sans) { + val m = Notation.fromSan(board, san)!! + moves.add(m) + board = ChessEngine.applyMove(board, m) + } + return OpeningCourse(name, side, "C00", name, sans, moves) + } + + private val hour = 3_600_000L + private val day = 24 * hour + private val italian = course("Italian", "e4 e5 Nf3 Nc6 Bc4") // White plies: 0, 2, 4 + private val french = course("French", "e4 e6 d4 d5", PieceColor.BLACK) // Black plies: 1, 3 + + @Test + fun newCourseIsNewAndLearningProgressIsTracked() { + val srs = OpeningSrs(MemoryStore()) + assertEquals(CourseStatus.NEW, srs.info(italian, 0, false).status) + srs.learn(italian, 0, 0) + val info = srs.info(italian, 0, false) + assertEquals(CourseStatus.LEARNING, info.status) + assertEquals(1, info.learned) + assertEquals(3, info.total) + } + + @Test + fun otherNewCoursesAreLockedWhileOneIsInProgress() { + val srs = OpeningSrs(MemoryStore()) + assertEquals(CourseStatus.LOCKED, srs.info(french, 0, anotherInProgress = true).status) + // A course already learned is never locked: its reviews stay available. + srs.learn(french, 1, 0); srs.learn(french, 3, 0) + assertEquals(CourseStatus.WAITING, srs.info(french, 0, anotherInProgress = true).status) + } + + @Test + fun learnedCourseBecomesDueAfterTheFirstInterval() { + val srs = OpeningSrs(MemoryStore()) + listOf(0, 2, 4).forEach { srs.learn(italian, it, 0) } + assertEquals(CourseStatus.WAITING, srs.info(italian, 3 * hour, false).status) + val later = srs.info(italian, 5 * hour, false) + assertEquals(CourseStatus.DUE, later.status) + assertEquals(3, later.dueCards) + assertEquals(1, later.stars) + } + + @Test + fun successOnlyCountsWhenDue() { + val srs = OpeningSrs(MemoryStore()) + srs.learn(italian, 0, 0) + srs.success(italian, 0, hour) // too early: practice does not skip reviews + assertEquals(1, srs.level(italian, 0)) + srs.success(italian, 0, 5 * hour) // due: level up, next interval one day + assertEquals(2, srs.level(italian, 0)) + assertFalse(srs.isDue(italian, 0, 5 * hour + day - 1)) + assertTrue(srs.isDue(italian, 0, 5 * hour + day)) + } + + @Test + fun failureSendsOnlyThatMoveBack() { + val srs = OpeningSrs(MemoryStore()) + listOf(0, 2, 4).forEach { srs.learn(italian, it, 0) } + var t = 5 * hour + repeat(3) { listOf(0, 2, 4).forEach { p -> srs.success(italian, p, t) }; t += 10 * day } + assertEquals(4, srs.level(italian, 2)) + srs.fail(italian, 2, t) + assertEquals(1, srs.level(italian, 2)) + assertEquals(4, srs.level(italian, 0)) + assertTrue(srs.isDue(italian, 2, t + OpeningSrs.RELEARN_MS)) + } + + private fun learned(): OpeningSrs { + val srs = OpeningSrs(MemoryStore()) + listOf(1, 3).forEach { srs.learn(french, it, 0) } + return srs + } + + @Test + fun secondAndThirdStarsNeedThreeFlawlessReviewsEach() { + val srs = learned() + assertEquals(1, srs.info(french, 0, false).stars) + repeat(2) { srs.recordReview(french, flawless = true) } + assertEquals(1, srs.info(french, 0, false).stars) + assertEquals(1, srs.info(french, 0, false).reviewsToNext) + val second = srs.recordReview(french, flawless = true) + assertEquals(1, second.before) + assertEquals(2, second.after) + repeat(3) { srs.recordReview(french, flawless = true) } + val info = srs.info(french, 0, false) + assertEquals(3, info.stars) + assertTrue(info.mastered) + assertEquals(0, info.reviewsToNext) + } + + @Test + fun mistakeCostsAStarThatMustBeEarnedAgain() { + val srs = learned() + repeat(6) { srs.recordReview(french, flawless = true) } + val lost = srs.recordReview(french, flawless = false) + assertEquals(3, lost.before) + assertEquals(2, lost.after) + assertEquals(3, lost.reviewsToNext) + srs.recordReview(french, flawless = false) + assertEquals(1, srs.info(french, 0, false).stars) + } + + @Test + fun firstStarIsNeverLost() { + val srs = learned() + srs.recordReview(french, flawless = true) + val change = srs.recordReview(french, flawless = false) + assertEquals(1, change.after) + assertEquals(3, change.reviewsToNext) // progress towards the second star starts over + } + + @Test + fun unfinishedCourseHasNoStars() { + val srs = OpeningSrs(MemoryStore()) + srs.learn(italian, 0, 0) + srs.recordReview(italian, flawless = true) + assertEquals(0, srs.info(italian, 0, false).stars) + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/PuzzleDataTest.kt b/app/src/test/java/cc/skysparkle/matewave/PuzzleDataTest.kt new file mode 100644 index 0000000..9c54f4b --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/PuzzleDataTest.kt @@ -0,0 +1,42 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.engine.Board +import cc.skysparkle.matewave.engine.ChessEngine +import cc.skysparkle.matewave.engine.GameStatus +import cc.skysparkle.matewave.engine.Move +import org.json.JSONArray +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNotNull +import org.junit.Assert.assertTrue +import org.junit.Test +import java.io.File + +/** Every bundled puzzle must be playable with the app's own rules engine. */ +class PuzzleDataTest { + private val puzzles = JSONArray(File("src/main/assets/puzzles.json").readText()) + + @Test + fun solutionsAreLegalAndMatesEndInMate() { + assertTrue(puzzles.length() > 1000) + val ids = HashSet() + for (i in 0 until puzzles.length()) { + val p = puzzles.getJSONObject(i) + val id = p.getInt("id") + assertTrue("duplicate id $id", ids.add(id)) + var board = Board.fromFen(p.getString("fen")) + val solution = p.getJSONArray("solution") + assertEquals("puzzle $id must end with the solver's move", 1, solution.length() % 2) + for (j in 0 until solution.length()) { + val wanted = Move.fromUci(solution.getString(j)) + val move = ChessEngine.legalMoves(board).firstOrNull { + it.from == wanted.from && it.to == wanted.to && it.promotion == wanted.promotion + } + assertNotNull("puzzle $id, move ${j + 1} ${solution.getString(j)} is illegal", move) + board = ChessEngine.applyMove(board, move!!) + } + if (p.optString("theme").startsWith("mate_in_")) { + assertEquals("puzzle $id", GameStatus.CHECKMATE, ChessEngine.gameStatus(board)) + } + } + } +} diff --git a/app/src/test/java/cc/skysparkle/matewave/SessionAuthTest.kt b/app/src/test/java/cc/skysparkle/matewave/SessionAuthTest.kt new file mode 100644 index 0000000..4bfe0e0 --- /dev/null +++ b/app/src/test/java/cc/skysparkle/matewave/SessionAuthTest.kt @@ -0,0 +1,49 @@ +package cc.skysparkle.matewave + +import cc.skysparkle.matewave.security.SessionAuth +import org.junit.Assert.assertFalse +import org.junit.Assert.assertTrue +import org.junit.Test + +class SessionAuthTest { + private fun auth() = SessionAuth(ByteArray(32) { it.toByte() }) + + @Test + fun acceptsInOrder() { + val a = auth() + assertTrue(a.acceptSeq(1)) + assertTrue(a.acceptSeq(2)) + assertTrue(a.acceptSeq(3)) + } + + @Test + fun rejectsReplay() { + val a = auth() + assertTrue(a.acceptSeq(5)) + assertFalse(a.acceptSeq(5)) + } + + @Test + fun acceptsLateButUnseen() { + val a = auth() + assertTrue(a.acceptSeq(1)) + assertTrue(a.acceptSeq(3)) + assertTrue(a.acceptSeq(2)) + assertFalse(a.acceptSeq(2)) + } + + @Test + fun rejectsOlderThanWindow() { + val a = auth() + assertTrue(a.acceptSeq(1)) + assertTrue(a.acceptSeq(1_000)) + assertFalse(a.acceptSeq(2)) + } + + @Test + fun rejectsNonPositive() { + val a = auth() + assertFalse(a.acceptSeq(0)) + assertFalse(a.acceptSeq(-1)) + } +} diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..19bda35 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,4 @@ +plugins { + id("com.android.application") version "9.2.0" apply false + id("org.jetbrains.kotlin.plugin.compose") version "2.4.20" apply false +} diff --git a/fastlane/metadata/android/en-US/changelogs/1.txt b/fastlane/metadata/android/en-US/changelogs/1.txt new file mode 100644 index 0000000..aa035e8 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/1.txt @@ -0,0 +1 @@ +First release: play against the AI, puzzles, opening training with spaced repetition and nearby play over Bluetooth or Wi-Fi. diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt new file mode 100644 index 0000000..cb29bf1 --- /dev/null +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -0,0 +1,38 @@ +

Matewave is an offline-first chess app. Play against the AI, solve puzzles, learn openings, or play a friend nearby over Bluetooth or Wi-Fi. No accounts, no servers, no ads and no tracking.

+ +

Play against the AI

+
    +
  • Four difficulty levels, from beginner to strong club player.
  • +
  • Time controls from bullet 1+0 to classical 30+20, or no time limit.
  • +
  • An unfinished game is saved with its whole move list and clock and can be continued later.
  • +
+ +

Puzzles

+
    +
  • 1,207 puzzles from the Lichess puzzle database, picked to match your rating.
  • +
  • Hints, the solution on request, and progress through multi-move puzzles.
  • +
+ +

Learn openings with spaced repetition

+
    +
  • 24 main lines for White and Black.
  • +
  • New moves are learned with the piece highlighted; reviews ask only the moves that are due.
  • +
  • Earn up to three stars per opening with flawless scheduled reviews.
  • +
+ +

Play with friends nearby

+
    +
  • Over Bluetooth LE (no pairing) or the same Wi-Fi network, without internet.
  • +
  • Chat with images, draw offers, resignation and rematch.
  • +
  • Games are encrypted end to end, and each device has its own key, so a friend cannot be impersonated.
  • +
+ +

Also

+
    +
  • The opening name and whether the game is still in theory, shown during games.
  • +
  • Rating with a history graph, captured pieces and material balance.
  • +
  • Four board color themes.
  • +
  • Optional Radio Swiss Jazz background stream (the only feature that uses the internet).
  • +
  • Share the app to another phone with a QR code over Wi-Fi.
  • +
  • Available in English, Russian, German, Lithuanian, Japanese and Chinese.
  • +
diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..5138bb57d2bc142545aa671a372e4facb6a78ddb GIT binary patch literal 39942 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 OQI zx6gODyC5^mP0W5B;sa-#pNE}V(B^_lEeJ%#fK<_I#&kWsz1tmNV9aSX;QOtg5nArS z`D+6G*rWDK&-0X0{l{g9@=|27aOdwddB<7Kl*jLF@v1qS%OJ?5{XOn;_e1Su($r4o z+rJ5}l`AmNn~Rf3XN?|-!rRs9@RiUpy7ElddeM4u4dNr)Q;zr^5AwSS-;Rf?h1@W$ z^dv%2$ahwGuQ&Nv&+VGPtcuwr#8h6Rm@u7jh?>Vw0g^n@OFF6 zCEdUq8ltlT<{LHb(}0Q-ozH|}OEZg23mWbov8v(q1}a;w-6NLW;xSaerJ`{OCo$jN zZMEFIn?{{Dm?kdEm!J1zl-YfeNb9YdI~dkrVp&K}{0#Ob zL#V#qEsuS1M#(l5g08IT(P0^eL=XYPVEDLJ!JjP%T;@z*f0|O25;eoie{~mk6;|dn zV?oTb-1v@)$EunlP*)Oy?=Y0^Y+Lv(#T8vg zqffGkOYDYI9$X$Lgnakv+f2jMf4d$eT&GXi55M+;mmaC%=w6DGtSZBRt=PSKBTP_YA#N1@qa_ zcaUV68(Krs928nog}Bdx>e?3h4(N3aUgf=9&%Wc@<n`lFB_i*kd$)x*l{{)!o5P|#X%HKuyDBgAEKgGHV61fzVbPGpP3MspD zCztPFVw8SmFjzJb3W+^0-*oh9UVdR;nJ;d2V7=>;phOxLHRRyjcOu-$5_20| zlRZ)Vh{(sACZ}(`XcgO`*uP?0UEum5n);j59An7c)Pd|V|K)WkIY00=gFYL1Y4AXu zR2K|3vE2ce|~6e34oUh#KlE#9XbWwnZ5`%V;&e%=xuyzYl{R z?7MfpOiMgS(+bUH#G4rvJ3V;!aK81CFnU<^PSpvvOl3F=nMpi`|Ah3?ST$r~wHz&S zG9qufWEliqsPu@XVmo!mul-jUkMX@^dTZLx$xc^?Hg#%+N7kH-yMCJw4i4_#4UT~( zspFToJ+wKO;qr9i&<%M@EL3uWga;k0TwR~6FeGY2!D2YueR(yoshH!nMY}~W_?55V;Nu55``dt#~G(L!Dp?`0A)`JQ4J+2^z&zMhKjL%M`!u@RuyOT zVL{B*$*QhO7_JGF0@~>BUTKDhhdMiyW_xZ(U`F4TX;nwc5-xwwJ(qEePlShFoUssz zg%_-i7iwncuunQR!EGNCO$U_KK9wAwsfemLltZ&Wmx&ub3GVO9G?w=y;<0d@$kwJE zNfAEfFGu?5c`@?<=8IjYkwxoyNQFRFFG!a1@v zrGSkJU9aur5+d&NdmPvOxI**$6)YQY!`&Yr#+Bn-y3##A5=$rV6$YRQk<4O@JPkY@ zq9Wf^V}zU$bhuTyMhL>%K1 zf4Hq#0Qa$l?!qB=HoouhQVmtUJE^B_xPq58tUCKe#EZ7+Z)wb!aDVhm+w3b6X+OAM z`?_#=WU>4D@JhpnkD3=JbVnC>f?hLhZd40Jz4AUUqnS3)K?^{;Ia??7Gir-C}fA=`UNuKFD|d_W=R24OI1)+9^;1J-<0HjO%| zr>e>t4`WI|a%JV{&Ak#+>p9lul>GTTw3(=Pwn=E*19C6cOz5W*pbjDs1lOPvfG7B( z%%hRy4&dXyO8K@%@VxGOzYkx-$62#1y;rJgXwvpn!X?c1cY^*yc0uX5w(7Bj|MtBF z;QHE!t+|hGL+8Hv6Y=4T+xbII>T{W41MFoPa*DvnI;v@k?is1PzS8TO*qq6_)b!KU zpJ(g^HQ&*-M_)e7*=I%Us2Dm8+h0i^eUvLk)S(Y={D9Tu@t?FVZ90})qMXwxOT$v;B)8p=l#J*ig~c=CQCs!SMqkk#jFB!Yime=IIUzC;jUVm`{V692rQM z|NMLBtgH5^TzR8)xmWDbk|x0E76c!RBSu z>b*>;%b8`BKD4DlDt|}0a4S?=;uCORni92!mQ8u+cHwsm*gmtd{k))UDtjkfGBkI& z7_#(4qkGvq`t%UlSR=X0``ljnO;r=7HiId!jgyULS)hMkUA2w0PD*T%Jj_&01Crw& zCK%vSD4U+Z10w+QSJI>gFL$j?8rDmzjk=E=W==S4&NpR$fczi+4R{phB8eP$Oq|FyNY zZp_L8;FTH&)84@cImfKpwY8)?{T4lC<#XIQQU_hUV2ET*mVZ}TQf!|yg?{h)YW{?m z3c?CC>|fiEMj-}ig2Tf42th z@77M}DZtr%<3Cqr)Kcj>q~X9DBKl2WjIyFkD$9$yee1;ZEDtw2^3}#iM>AD!=j?ZU zXnH~U8}?_H9lnG7;fZNtE7`xI*iMgr7i>(`>U9pOc5e<0sU z+1@M8;karMT_pNQt@F?JQg}$U&;zoy_G(TnI@;hw-Ju88U{o>O8)agr!!zkVIln25jWj;p;jLE?JwJz0HmrwF&z}7 zmY+iTW&?Rtnye_3RCyib{|B0mZ$)F??N$a_`mR3y%&931;OUHjo#sJYnm;9EJLfIJ zzo@_>`D)wBlbc%tRVc^@J2N)txQ@(hQs%0p5}63bB?j|Lf9&EmyK=nrs8+0fAm7Dl z3OX7jkWGaHo`;Jq_7HBtGprz6deVRKFbEBM+~)adMFGicTCZ!XX8)yt%qV0)vuH&Af(-{v}zD?vH*F=Os-ZG zaai&0&4>hdr_qf&*ErE+Q{h5YopJrc}7-^`+cg)>xSUHPB$- z5`IqAFN6o6GfbpE%4Ek%ddH2}AkfdLqMm+{wuDv%m9lA;46CQ23G19*5WIX3`Rkj3 zwD;m(6Wi5aj@l51B8I-g&QrAN8sznyv}Q$5Us-89rZ=Pbx=horMr@2X;Vpt9;UTPy z=cL{vbfQfWUOb<9VX{5*DbP$X!Sa ziFa9CIpu*)fQBFa2z}GY!_&!=C1D@LHr`@7VHlwO5_>twn7Odtvf}iP8u{G-&@>-k zUy};|_3J8pdY{BF*S-O#_x3Epjmk3HiO5L&2=U$Q1CG{_3#_gu1O`nos++yzPB&AY zs}sj}wy5~o`v`x=g<;x9v;bFSt1-Y`c^6Kg^~Rngyh>>8N6Ku^S-v;UHDRA4m-$CE z2}DW}QsuA4K?LC6{@0B`x*;nai(%~(^Xi&Yv$MR6YQ8Jv%?n=NSMFJuty;)Q5lTDz zkB;956$dcfFyp&jf0Jx%s5IqHF}#3MpK{aP2!e^+OH9c^g;zTp-dS(Fbl8(jqTF#g z?4s}fuHtxhK3}w=dwO-jy~O9;(4HDkI7zZ}FX`le+!2dwl19axcZQvE&M4ixKs=T* zkjYok$anWe_>R2&hgbOHXrtoE|JY1kh8$;z)#QS0g-!u5$${kH3N4@+5#gVv;Cge5 zV6ni*eoZ3oA1-@AlTLK~WJL9&CT+zIsMq zaSND7x?%=CKBAK$a-WSH%Ocgfr#|RBiP!suI+#gdE)(fiwHG@M5VCunR)hra(p5pE zV8>FNXBUI#W3v;_g3e|ziS3%1->U~&?_g5R8iWoPcW4SYMx$Mp`mPGv$>+!WPUOcC3Tx=E0&ys++C|zS zcEPXGDRIM3%`t8F@bEEqorXJ%Wah=*tJ%t{6i4RTIzw%#WY*?`PM0~4Y7O-d0uAZ1 zy$DTCWA8xt^HXH@Fl#?%|9gAz%k(eme(l4#ei)Kinl-*-!*jFey`R)G->FQmZgW78 zT$#bt0+Z%9c#;f4nRJoZ~-)yo9(x zJZAnv=lD~4g?^F^T-dlEHT z?;YtW^;kxo`Xz{?nel(ecGo|AYQcm4$*uq)?l>5#kv>I6dv3-7!4`b^q~fi$%0tFIph+!ZoxZXYSL>OR@z{P#zvi|zphiX>3$ z&sRMx!=eC1+g1D$GZ`kehZey)4EP3Z^4op>8C%1?Lr-Jq=_%8m)Yc1Z`ayN6Dbla{`}KnQ>HLts zm!IeQU*w4!uefqF{|fZ(>?|r8G*A8fYV`y2m%H+s-1e}Qz!F9yJ+&e7Hl&6V%hw_h zsG;IJ31G0BS`M*x5Ieo9yA3|gdm!7vtG^6O$p5;0W}@aq90(ia)s!d&yvXX3IaX3} z)DPZH9ugN?GSH0!c>UxyX_S7P3z#Q}TWhJ&$`f0XNNoE<1~xs}7nr>o!ZS%@!R{Vf zs9@1^(G>rsen5?I^~{}|8%QE zr96W^LQ#zrY7{3$-Oakq#OtE+4Wt~qF;C5X>dMG>ei)A|4g&<7pOt4 z+1}%@U;d6hFA)4^N{iYSx?$%C(N$~5HVzNLcDjpxx&LEu`Y)w!A$@Dx=+Ps0Mgt3} zR&;`3n0|<%5+vd96^W8-c3sVEPkf%6m(K!oP3p;_M!pM^iB^I)chLvhe;h;-zGYgi zr$`xkhvCU*PW21wFO!|1o(WyaAYD+|6|d0@7n~+lWn?I|L+JhOTbJmg~& z!%HJ>0o)4!rlTr2ayc~{?rxJ9HdI`z@SX(G7Unc9x1ZS&7RQtxwV*XVVgti8@-_Sp zzf1UiG_#5$(c1AQ&mXHh+4X2zKyvZK_OI2&H{R&u0cNp{QuUwkRx{uW6ZmmpU7K^c ztlPn-6l$FRu9Dmotat3CPMGm)@S1tu&dPFBDbd+AkwF^LVkuQmf6sVw%ULZiZ@(|c zl(x{?94*Ry9RI{gV86Ul*3^a|(X-RBN8D#SKR;jdRFd7z9N5auhS3=|4V(e?Mbv*AgF@xGUS}YK`mN-HkFyfBjmjUsfaT-!p+w<e=YUGu%e2jLqG7+ ztj#4GHJ5X#GyF>VC3nl>46cSF$env;C7JMiiSRO%JXhyDARa#-b>vMX=xFmyLz8ejyxs1O{!iWl`sU38yYl@vD^tRXI zKKoqhlyAnn?X^9f7zcQO*?>%udG8>TRw$xoQeL@B@d8vpP$p-`jzCPcHU-=0zOp5e`jZnwFL$9+4Ai3g`UJ zUg}36WJ|n*6$*|-mu@a#panPM^U#;?RGv;}{4zmCcOV3<-0F=W^@cAU+7RlbtG@EN zWiPnwuI8cPlU^n9@zTZ4F%Oy!>n zQ0So6a3MJ*k}=*^w>+T!ab#pSHaIde&IGWpb>D#a(_qFsFgBDRHHHR^bBs>RRNZq*M77MyoVNta|TCUURRzNWRM7DERj zMdKeZhW~ok`Rq;F*ZG9#i7Bfrw@Fc8O_Ym}6-WbO)Uv(__t!J;mJbj+J(Em0Oz+^I zaRNR;LD;j*Cp(8Y?bj}UiHz`;cn4H>=~I*qhc5dFR4|)@N;piA#g8|%Y-Z9Pc!xA$ z94R^$AN#$p#?wB0Tg}dX$?(8(XZ!J4{OOJ>)z8jnE3k4oqYj0$x?C2_`8<&d z@k%T&+aLOn^OZb@X%{EYJu=~YR$ne)epVcMJUB2Pv*)Kbx4e=M$R%x*q)==?28wmu z{)~OdmH&Rap2^wRVIPAE7NsL31R)hFDfk%)A;NomQ+#rB8s`HG?>jrAppM_NY-C(( z%cELSY8_)JRdQeX9o5;ZymAmVABtBwK7rY<3fjqj?zXCJq}e6_*gb)ZD5H1x0x@BV zh7kwpV_(D9n)C*A5#yyCH}+JrN;*}Hq50_a{30u_M`=Xo0TR60+>I26(7#Rs}=^I_(wsG39?)p$2|i`IUC^BY)W>H zXTwQ^Ua#?5*sdQVnSNA)s>ur77Z0z(faWeR87-)!qy#!<=t$*JtPCMlC?)Q`Xhk9~ zuffWm?;8UO$eC@Q)9mUo5w?alV;H{(nOj<>(I(T?trR`DM`WaCy1_m1QnR^(<&+!5 zc|9P+4j@jYyqQg^kjp7!AUS{>5KZY`&vnYh1j=*NtsI>kA4dXJpR}Wg&8-EvW)3eu z@#^LjWg)iwk?PuBhQnGMGF;Gp2_}jZTN`B2rpHgF8fU{Z`{(;m-BNIf>ZF--`ie`^JW$Cx>$4 zKQI!L!Dtmy@bL-Y$b+v$M5+9Ayd*_6f_>#V78AM&D&40RV2>46AH};+og0dtvr-o< z;5Bl%e=||FZhXW&pH9OqlvA^z4taMe|Fc))XAgWWp)&c$`TCvVE|23oT3C&lEb>b% zGl>p}p10zIl3>GGrlI_Ig%gP%mB%P?*qb}}Y=v_o^;V-&vHpYWbYo-U^G8?CYMe64 z<5=eA6!Lla(pUl1=`Jn!dXZ)FY6fglPkIn&Wll=8$Sn6+ySr#f)`$8)wGb|Vi*nC+ zf7RvQTY$3!qJ|8F7HNHlRo)dU7w1J?dkrD(XE?C9N}#OzN(8*E$($1qIXtDSX*YRRpXQ|2Y4r>=jgWI+#j?+sF0@>Jbbj^1E_r|+h8VvZ9AxmDFPG;~8s@6LgI z{o#7T(*aO{AAM`%Vgl!!l{Kc8h#6%09>#8lASBGH$%LFo)@;>dj`^1_6`nmJYQZ?i zx~(D&|6eiKeeqZ*_165>O)w1x8NGIiFqzIwI(d zQ~vf5-+F_(r)cs_xQ)u~X=u$rd+K(VW*sU%vjPoGO+g1&B;mK$bjHTUR?a(@Kbr!i zc}u5IB1i;z7}{RX#VxVW+GjOo?RSwn4(x`2zMRymX@1_JM=?Ff7V64Qd5<6GQ2%x# z&mt4g@8(%*N7DxiX9FNO-Y@F39j@wyiCxsfj3g%X`0u%l<^_>HPo=%SE)$2$cz!g? z#WjFDx-=*Fpr+5OD*{?mtCucxY-%*nLO8*%TV{SJ~_F@OT0`M8JwEG?zRsDLq! z3T^XxU_5dbA*9Yv*jR|4Qp&}{iL%GYYGdx0)78v0Xr9uXllfmHeE7}rUuOFgmUpj0 z81GgmFOfJ>3LMd{^~7deUvKBJ`Pk|0w^Y^^N-{3A_^(%0_C|CK&ehtV+}wn2wzMsW zm;YW_uFcqE{AW5r)Wq$p>?JWPu|u(o-e?(oG(#~TM=TRJ%Vy%G+I}y(w){wqhnOX8 z^*N;2F9p9Ks+P&k%lmH?3e8Lt&lelSZdNE@EdrqSGF{eEt85%#1X877hrklHTB>F9 z=4#iF4P*wnmt0+AqBBC-Epf`7_;o{dvHMX#^zP~$2k!vci&J|5YG6zZzty9|M8?}0 zO%BGMuQRgF9;{6^g< zpnX$Q3@YK*<4-LF1ze4p2wFGvMmQw=43qJ-4iC|I>Vs;@YFbR?M5#9^BTd!2_joL* zL~F|2WJxwYL^y5K0wYVNT+RM$Y>Wxv0c;6zUYRl`^+x=yhss?c3GD;RnEI<>DG5Eg z$ZsM_*j*AKH#acIP3UeJQe!AO)9fD-Nd^1{MP^d!k->O(q9tUF>(SXc65II-Av?P=34SGYAFSQnp^;`osz&p{--m})JB{z0au<<0JwE;u=}lMwe_LGN zf3?E%O1J|5=QODR9D@zwe@sNT!$B zRG@1PTt`1J1N5?rkc~5WalbUc$Ok$;-;}bW5u6@u%_)r#9U8G_&)SVtnUtPd16G>p zoQz7uEoq6EDP>b6&5gRNB;irY?w$eDCW?|g&mbt=|L^pxfgOVq`OzP2;E_(YdEKZF zW@)|5`373pUAQqXE<+cBC9pO`_GWRn)0$B8+3pJB^V|3JCagd#=;34BzPCtghMF4j z4Q;wEaSk6!yg5>d2S7CoyxuC%8$vK4z;zfZT6b?8$Sg8%2fN^3`&}_En6=z=svJt* z3=|YHsb~zj2EQJ4aza7onax3F6bVjLo<&<*&@Hm|Jw{A_+B2eH(K*?v5ejr0b8je085ylcJo`r+E< zX31v}p3$+_+H{FAl3>+GKi%-sMyrNK};=;1%43+nRR^MCiNyL_EJbp(}hp(knfBuE0Hk zszg?(cf^_CmAJRJcdQ~YOwX!hEsMc?qXpi-|H%G0I0;9ExwjeKUgB#(2VcNwVo#y# zan9z#AFCFLO28k98}u}=8tsdg?^Sy)HMEjEl^ZFXo&x_eLFe_JW8ohaf)jY~?HaEp zKM&+XRa6Iph2-#$PdHa&9DdAzi#c#lS2r(MBZ2hJg4e-H?&Mr0MTX}!M$8C~t5BWZ(?egkX?PM>0d5qOSY~Ze>X35Ofh{E%Qz3k zjxW*0b-_3Hz)62=%8nk7=e?j?7Uy|38AP!j>9f+ghD0KN`{vsTIsc)FntXe6(0Ibc zu=pU}fWP?s_U8M-w2a%g0!11);b9=Qi`vY`b0=>YC(x~rSEik=dO(!%TLB2zY5EQg z?Z%>r%KP-U&H7o^bJ{-M9R7WSiJ+$+2}4JWqRhFP*`alVXW$L!V44d5AC9(NeO4xm;vN~UB_|IZGS!O1 zkGB^I*1mccKo=$V->Zhn65UA~hc{_nB47)Q%)O}#X_U_lvvf1jvL+2$a}Ts7z`U>5 zd`2G`G!c9WZ%R!VaSg&m$k}rxl7F3<7>MYuC5bRG}wa1oppLYm*V9nJRTxIUNpvNF~e(p=;qHM0DhXSFH3< zZSsI`Vio4wqs%h9EINTy10C;S?XQi?rk7#M?5*WG^HkAR_+QC5H5|%i>RLTAKA#i( z=+hXW>r(q!vB*q_ddtyFo0;*WUXS}HHALvZ#~D>frtJcx0$*a-J8zF;Gd4pvfQSs{ zBQ6F@^Kq+sNb)wCYwEEF6*!qGE&X=TfxPFEqQmoZp9EPIZJYmj+S?jZCy+dmgp~BR z?I#EJCv_PzYnZRp_-hTZ@szL0A-ZHO2#~t8!t-AJ%h*XIW*aO@GcWkZR%j?wrQ8^J z32@6V=j1SBvr&^{GwEL%w-sf{GrrSVJL@L9F8`vPYw@{~aFS5ceppl-emXXjHw+{5 zC3gVNt6pA=aOl#?=DZj(b$mlzX&5_&-QW+&oG(9?)w-URRs|@S;LFD7@i(;GFLG42GCnQ5k)bK2qLT%hPtjcN?G4mM?D2FDtwd9 zdgBCvyuuMJg|HcY)6V4sX9qn$*jt_7s#k|R24d4w8~(@ky8r*jBnr=#lcIj#b@Kgi}t zjUEv2jsNPxogG@|zUsv~Y7jp&9=Cl=&zNWW%k#1eA_w#Cj8}?4*IP?(^Ex^a{s$_o z>(tuhl_B3fyrv}3dn|OJ#+mJNUqr<3(EgqQe?A(FQW$2 zN8xohg!!OHy*XY%XrJ4ewYYT0vGe+rlH=Ex8};vvl3lM%0Ta( zhH8V8zSB1574eB_T|Ro96@NWOi*F_^em#*WAe&ehN&!!pj;y^|792E?Qc5j(RYL+O zmYl!b&9Eb7x*uqiIyJ{R=t^k1Zp*4VzJ0dzk^=9jR`L3St|3;KYEQG%SN7C+YK1{i zuZqNpQJ$zysGK%@Wd-!M6`d*dmAmA^jWhIN=|izpj*CwyXjjm8Y(A<(<|K4Zyr}cr^_VK0QaPr5Q$pps8J=wzc zC-!zr%v3w?Xy>6nXRUULn>t<={T%r7he8F0H3(e>5UnJFZq@qkAj%9Sk>8M6{(P8d z^t~XBrkvAW#BrOo6;Db3?(5#OGbsgP%X1Q&S{pZKvY3G6bfgUF>R)17TcAFT zjBI$3p^NQ{F=DRO33NGiZ2%6*bZUi1+^-CYX%^}=2xt%e|7Zjk6v}ereZgGHW}ZW1 zgH-@9$4+SH;^Lz;mkq|o>7S=FM1$hXw8r2;w6#?Jc#hVDr0gQjxs5nl7OlsR(|wM- z?G;Fer9`X)lr(a9!ycGt=3vlQoS^AENR-e;L6j{8&Gn&Vy^L*w3KP1Qc0X105GfSx z0<7S`YR6!5z7dcb5-6osOXrKnMT_szJruLme+ zICZto7Xo^c<^gB%6{ZLIA$kTpSbvWa>wm=>XT)GX8PeD>s5zNaLSChKd1a;kM&)PL zRrWu*dOIIHe1gpJJ24segSKKOii$G*JB9lahhc6j=~UWz&joOk0CC#U$B*WVQ9TAf z<2lI|Ykh3!_^gd34Na22F4|VS(|9s69MrcTsMqt+%ct!0dO8Cbt+R?mUR0*~Xh%`a zot53igAPP1h`B$Ge#Gilt>}ZRe}``>}*WNz97R- zPv5m$xOej-8T5j79(@2q9AAaVzoE6IZ?eMpzgR?uOHdFXuSfvpM~b(1YrapYz5Pb? zm$g-{{Ta#L2kPS%*t}$XX?RK93#tEo1rJla6p9(({Jp6dhXuiK!d^hMX>~Z%^Hr=; zwsr?e?^8x$T4Kz!)RLzW3*CO{hun{;5DB**UBVh9qfRGl80WWkZ70jlAI_=EJHgXI zbMgg+#D}hPLJtNa;hmBc{U|t-o&aw62|LQ;l($F;7($`nx7{EbVM{NZb|$a8z>vg1 z{_~BJJ+E3#qE2idx_75wED&Ztk>hj!cUajecKaj#Sgzcc*uX`XK+8@ruJfM`^Cg_z ztFXzH*@QST(rwr7YlQ^_bo!%1G5Gj=JnO@)UCUU`rF$8ztgc;`85M<6Aj=5CtmO)nEU7NDDY2J z&XjHMb?d1-l&i&yFh=P(jk3}x637EnPsGBs*zXZ;z)^u{v92c%7%8Fn0!Fya*#M;Rx3XBwLg+w;|=T?71?DN|vJ8Yve zo)4Pbp9CSqDkz{We%`;ja&VU+zrC%yxhrWlS8YRF@@#!pM_KYI>ClEzK=*WgeX?$u zo2RD_V)jufjp*sNV~BisC;6}ypx(P(QsVk1ugg-3}Nt z7dxHjp@fTjd)jNbKZ|Zc{k{@NjpEU-h_^*kS#nSlD>!E7%G8EWszb=(ac1f(gPdX_4k+@wG=t=lkC#U z$I08q=Tw{XP_LVWDLJiiu_1q|INGP?^|a-?u|F$MI$=I3Ejh0su~-CBG7ggT>bVY4 zhU~uBs#(6<{M+HKvZEp54?}qxIFA9BmqaW?j>GKo0a>to(x!^X^0}heyhU$ZpPqUr*za#Wxk3k7SjHOuJQ+m>nbSbyBCD#5%Ti2Ni-(i0 z#5EN)9Cyav46C*WO?nM%bOm}|x0Yzt+=tz{4?P(^$>fh9s0XEG;Fs5KqX;q+1DmK< z?_1knQLqy6fgi@~&r)BT;dS2a-w!23uqfgKGVh*vn!GPf$3MLcIv@tleXe}Xp@E~O z`w@0CmTvo5F)!I&K~H-TG>_`IPLFo&9-zcAo~;bPI3UTtM~y-n`3>2^@c`>(kZMc_ zGAU~X^N~WNBPtB*3U)ocvpQ-Mmyxg%Q%%SGdwo{&ZXbfKWIFIK9s#fcRcdPLHuLfP zJKVgVa9`i@k<{x^_^%fedCz9jc2fKWp5l?}x(N|(5!g80|9+|ShvaIP`O~{wO!99* z+$7htCNe+(&+r;u{N)$zlRlZhS~mom7jpGVV;|mp;Ohf)F{MJO+F>bv!J2 zaJEtfV7asC?$o;(w|KZBZ*iD=Q}03G`9n3w2w=W|bBh-)tGjek@eE|O;&7)6!5`~M zPUi*8gb1m-bDH-LGe|KevB9wc`(Qj!2#ivRb-+zqedYpa+RuZD%bPx&@5>g$>%sK` zgyUJi_a4wxi}(99z4E_hTr&sz>v35|$`fWpsaqcE3x9{LtUI>#xwI+!P|T<{i|?_% zr~Z!qJO?5ea2VfSjl^I3xkP{(j91+eHNaBh1Ed1zY)X8YHtWMVfd(bF0v7Kv_sAZM zzV1%pOZVwkaG<^J(((#3n;cr*AB(uXp*_8t5ivnmc!}56Uf-h5P+@MwpmDRGKOgDB z)QZDyWlz}4Wes>2>tO*K23Y6ljg3441MItKb6}{6`D(b5XKcg3eYVgz7P%iYyg!_v zN@`VsQ5<)T4|yH3Ic$BFFTQAKg?iT@Y>CFbjtE`^&$qVxSYif!_6o3d>RPd%!8h6N z`-WPPl%2lFx;)nii_>DbEW68{nE|=tsa5HBq(m93JqF&x_ldXWE2jonEg)YZ_IWyE z&wIHS>aHFK(fap@3R+`fdKK@iJebN&a|3ifeFzI`%7z}wu1xosgm&xfZJp6Z_smp% zW;%{TcvA@9n?~Y4+9uTr^B%1rv{}Zw>d1O>dYuLZ`08Uc(LpL>rAJEuQ$q4N=N3Ww zcN|OS_xaZ64hP;7ydT%gjjpiK5OG?VTfBjPQp%vJi3wB*zjav3qohVT=$d(@fOJvk zR&1$PDXguwIc+lP^jH{CE)-k6{Syzby}f-B1%ti}TF@MOoL@*V&^07wl*+8DlWxTT zv$EAxSVk%748K*PCz3Q8qnu@*+MZG~=k@0(TCu9f0+VN?^IzYpq;!4UBemED5op$chv)H!i+2knZ#W@sxOv4>x>3-C!$dZQ%AcTYYyNm0LT#iGsf160q z+=TNQXx*uep_esnd^j^6P%qXQ6M1L$v@2@Yt8))pnbWb7S#*UAq9QnGbTUswfTRLP!0UTye)EMWmaVhP;+le#bm7~<94lOpHLJ0d$AmmY00!3du#rH8 zWoH^-Ic~(M0j_|eXC)ZRp6?UWATX3c%%Eey*F}b7_iLy99L1L~deI=PPCbI}yV_y!4Db358%{9M1}H+$B~(tNN7x_@V`3 zA{}fgAp%WcS{WQ{iB`Gq+#13>;lrP~A%E!FnofY9K(LI7w z$?BA!g=yVg|5R7*aRkV7iC2K~dYpQ1255a#f8~gdKf-Is1JXdB#cg47%zB)@VS-KDg3Dz*selXzT~8TWMMVy@$;VTZI&z&j3CN z2!zV*g2lgHW`ZQo+`>nx-I_jM5H39%CR+EnjnWr-McUN^FO+3$Hg<&g9hv2pBn=U?1r+NF4zbZ+5D7p zBBzG$O@)oJg{@8!llMCFRtvw0)c%=HTh2xRf>blfvX434OPuphgV_bgKU%}M3c?x* z_5Rc5i@CJeX9`9T1W@Db$w!yeA13yz58!Vq$o=3P`;^AXZd(UDs5d<hz$j9X4Y#-CM*?ah%HJ)$T6KHr^q~{vu2XZGI_NrQd zb5RFXQgy=_JX0EB!Zy z&mhvvIL+*#CVr_l{dlBpW@VU~4e!81Im?J|) z2hX!5PS@7>bJAVf1hT8_Knw0lT1h@Q)~JJL2y-Z9^2MpdT=<_7RsBLuhB`w&UGu}~ zmSI?Bn(nDF0O;e&0v9*Vq0U)nE&KquiPd9mDE3Iz1Oz z*>U-F@a@+YZ6QKMaT%Kt%KdNxh8ri7Y0sJ!V?yc zi;2_rA`#8xfk7`EHCIeNunwtSC=YFPJp<}8nZv`YE{R>5_pp~w@{Gm>0)XSJHI{LjC{$Gb3bgWv|G(qJ%TDBcs7b*`df5QqIh}?7c2BA{i}Y9A%x<85Nc7 ztTN9y$NTPnFW=w&dH258`!(M0=YBpObU7)y`I0I6Gkb0&1?;ozsIs;p~dBc$8K^FK#Ie!q~1#)i#qms5UUbG=I8Jn1ft?E4MM z5Z%NiHV-bHVU|UE!CHBo-8S42*SF`%@7$e}EH>NMsysz#z%(E$asAyP|xNZ zX3m{h{_oP$^qtzd3t5;A?`-_^C@?*g0Y;X?)s}n9oip5=h~f7AagL^UCdS@{x<|?L zlOLKGqtlq40JvM)r_d8pDF1c6GZ&1UGRhocXCpThtb+GW8QT}{&>%--vJm3#ukkqb zUd4&6f^YHC)pP<Pq+F|MY`30dRaz4e-9wdVojv; zAwlg~CS7$Dnb%lnGSCfMq(Zk%7gc)$F6vYiLQ=;2Mf6=?eDYFvqmIo*>VQK6!x2s7 zo!aBYlLoXaG%k2Q-xP@Yva4$*IumfPORL{XxR8md76*bE?6Z{!-$%OK&TX}f&Z$Zr z5t?@_U*DBtl4vKkc)$MYi%x^4a7uFXEEyP_H}S@@?a>hmX4c8xS#J3D?DL3?H3{AO ziZjdqOriw8yry+0V7M|%Ah;gxvPf(mZRa(wdB1yiMlVQ#;}z$DO|`q7fn|?+64JJf z9?UntVA$wXxbRMgTgtFg>5>g&V%m!Qe6`7sl3EkPi*gNrJi{jbtQU8l!|5nRn7R)p z`ln&F84o9?IY_eIxAEvXfn7pcc?7*N%vVr)#sVG&ssCM|u>xo}9Q&iujS1_Ze$D^l z^w;>K_Mktn_HRtKxmkZ~;iRvPEK}C!(Dc>doqe?KYZ2EF`AOY!vg!TLlDt#)#>omi zCKS!Ba}RI5<5G}9mN-he!PGe~n4@S~2)2PgY3tX2vyEy@#oBp4JA5hj?_Ul@&Oj`C z{8W6+ow(Ws`FT*|?nX-Hs?louqvL+%;P>Gyycoq=$x{ou^A5GbogUEDG-o>#a8ho4 zdR4`NMwQ&WKqu3;Jel0|JwG?;WM@tr8fW-QXr;}AfaA{G{H1b75h2VE zaGVPK?=npa2SyxaOue(Q>bG6i+>QVG74zh249@NS(VyvahVyxoVLJq27{_Q_kVTn< zW_+^FJZty}0H1iT8!c3wHgHG#B~vnvqdc|uR*JuM*Q-c`Z!`p7T(C`3y)ET%A}A^a z24AR;?E8Ia{wIG!2;dzvm5o5*CUGY%jtH|G>a}R)P0PhW+?y*A&Ri;RUY}RJsT>n- zdxolVCF?O-w{V^1y0fmj6Hnu&`trt_iLELbtZi1KE6yk7yqh;|@S>6*u01?Uz?Blw z>ag%vY9xL-0K61cl*%|Xx0<#F1U|6rz1Yea&O;23V5c)TBMh7Yq_>7q^|Op1N|W6m ziQT>TNzn}x>4g1tlPGT!D<`J zA*`&oYge-D-7yO{gra8NRu9aeOn(Ri9N38a;;@yPo__o$uV8D_t)cS-Op+}AKFEhK zI8%FWaqSMPB17Pmd_X-~4gw-wBB-fWbm!K^hXBu;(<9LAfSE&-cN^#7{5Kc%E zP)x-l0ntgLO0osJBJj`+NrgZC68ao?XsswejwZF#{ag92AN&^cNbU5w_4=(XyG!B* z=jz4>tDbK1)m6zWJACv(QNFe1+~QtB2d_5S*xxHTdHO`}T%;Xe9!RByMfoZwD!iy! z4gC-+_B^`DsOvl0lZWIfGQ;FT@RXt#hQ&Jv7&w0?=N(i%J4DUy&HQxV%K&Ef-XY|uPy&;OoSsozAoX4} zBgXX?@&D8HO5DGYc=Avy*XHm2+wxa}?94(@jBGUWLJx8n#b_#vh=6jYh+om3PhVKY zYfz|XQLEUv?d(&Z#iS3u2CE(v3`bbl1nJZ;`#M>z9BDFmUBRX0%<5tyv$Kh8nHgqdvk@ z+=_q)hGuI`RO=f?42s!G>lgo74^J?37A8#u+_Inq3H%9gt9S;2U&^3~ z;$)w@n=_#!XL||7q5UA3M*bDnrb^yG;52uLihcCI8G|M6`&rbNol_0Fn*|dKep>#w zWvD6bE6*ey*zOJ3aS3-?6=V!NlYJIlG45L>s_&dHCA9L2Jqd5ImY)o{^$Gownhez> zB}iX+yFMFG06hqY2fHb_TmTBj*FCi`?X9v0PzDIewokb-k<~#bL-HZxv^FME^(P-Z z;^428*AU)`R{gPfpajxXG-NL>6gOlt6g#KNm1>ndo~CoknZQoGlL%!AJo%DEb!N+l zZh^KG_g*zbFveQt^F+|;K+1knqcS=9T-*1gD5XI^z!MMofa$nA&$j8pVVQvqb`ntODg znc$ht1acJHcJm&}sRv2llD<1U=$u&{1O*E$H=ycw(QwqKf#WM86~l2$5)@Ncmc7I3 zzukC*4;Xe_D z4)$9r)=AGikp1$uM};ISP=v)OG$4)t{t>r!>!SsWakTo|ksmSb9F50>f#o8PcO7UK z@qng?e8^VALy_L`X%P*A^hp^qKkVc_LVFsBLyNd)Qcq41whp(uZouu zbXA-j{0h+g^e&YK%C}P-F9l^FH`0;L%2~+&E@cp8*fs3BUTZb_iu%A5<;b$ECDt5S2ubGS1XI)o1Sd9P8M5(v>^^@tarhZ!7e)dad(l#t zJhT{koFAfV;#idx43c)Fc2!X*S1DQ7pqBe4|IsbWcHy1pMbmiPgADM9kE&V74a=0I zy9Xejyk<9ht0PzV-h-YQg)A&`?chZ`+o1Cl7il>IT{GtDD(C|0Hkb4Vb-M~1?A4|s z=)eBmV;4!sqE|41glp&O@}RLF5$+r3+f0nKK;)c%gPhQL6HNS)e-{^l+;xaWNcqlA zOAToC5b$W4%9VirC?B*}Vs%TOhb z+m5s|XC~p?$c9OV_Q)u3(+?8?!Fa%odG9W6IDjwUn9v-gAcGKq9Q`O_QHhgqP3$H8 zs5>DoeVJVNu+B?`G^3{eSbNlU!xWj~X6c96&i|ZaysLv1dLkCLYjG>B`qwSQpA~MKk2SGfVqc;=zO*qw>7NDQeKNE)2zM1Nh z=B6fgn`4P|chi@?W+F>fc!1?;38=O>U!^g+cLeauP#j5;jGmzI8bd?C$*QDXmq8i< z-uZl*S4oURfp2pyfx}@EKAjI?eGRuv`q~laLO$6^7dLVRJJW-F+f_MrA*++CX5-uYZf)j0K1hnKXk{ypeVsy_2Po_s-`AF0+zrpt$R1*d>N&YEPHD<2s&gX9Y zW?txChOdf3KC}rO8pSC4a+;K>xSg!XhL<)Skzy7DqJWpn^O`8`#%`XYW3EH+YC9r} zTHB>eH~0+pe*i`hu-#i zpv#l1kXux8ARGMRt}5xsokx#yiGKgg%-{|M_2anTwegIBvwcIjX0!6z9*ALP?d2bv zSY*Fk=+}{x^aMo8F zDHc93Lz#A4%sAx&41?!$tghr~K$HzTNK&tJz2PBOws~aL-?*85(5`GJ*+ zJZP-DghduY@eC@yJdk?Vcf0#+GZ!5D0RpjJC}v1l1_?|IGo$vn9A2`a`TQ`_qYT9f zwD0{M=tF`KbMr$?UBLkk#B&$!y05=`dC;DE)bK0q$|!y0n{Lbikclwy0!E*?u#MZS5_` z#7U&cnw%oT=Z_`MY2Ty++?zZZ>d@RaD<0iCW->&MaHt{TS`@(T^PhIJ*FBCaJPkP`uETbZH^Aq#Ju#DrmWuBqMTup3?YLe^?M0sNts#B8Jc_M|H^e2x+z zs{B7F3Omj3ZB^+A@p=J*Q{DW`nA)EvX*Hj~1d1QuW1at95{c?exTOzyl89y$mSr+a z+Wn!OKMqz*LAz5iK#e?eb!}bk9U&Az)dSc!2ya&X@%#Kqs)ZGCu z6O>Nh_k<_SWk{L-`oh5f*i8;mcB2Ow{ z377_a8H*H$OW?Y*(sxzqNYy;0fifmPzxPe58Ox<#^#r4x_c_qW=9G8~t&J<~z}`M0 z7ch$S`oS}hRppp4)1W2t7_*b{3X=9_t-7Q(C@AE9)jo1FH!Jl_3KmhcQt3ZlMwRwF zt*8l;6bG97U5n~GB2B~TZ~1M4lm5?>2GoBxQQi5hKt&3{b$T{Rp#-eCLW%*^+GgSi z&7_|Elkr%4vP?ct;XqbJYfH%9fM!HU)wbf6juLaNEK~s$EqIr{x|JpT;QBlbUPHL9 zxSM7FBc)zVobrpSJ_jdq=vu!}pUBPrr&Rf=BMZ4?qOV#;?Pa0n7Vm4&{A=}T5qZ3Gz^rhUw7d+=!A^dE7QP0mmxtw0hOzOJQP_~2#|^3B8_F=~OPvig|_Dk|dm z(Fm|REPEqHx>mT6$JIMDS$uidsd30h&i+?sh+Euo3{1eRWjqBGYz2;$MajGV!Xh$= z=%&31CDy)TaPXW7HfKC~v#9HF6xq{$t9CWNV*`}?u>uUhfN{wtz_6;s%NLDy>nS&- zvyk^2iD(-0G*Nx*N7X|xcC3*paqklzVXC{@x|KbRG{qEfEDZ;pTaF1B2V)25C9%Jr z6sIzcyhx#VTt;jBw}+dip0BeD>C*x~TQ9}Bo@zko2V3J2wkyc&9xkK-&&_3W!(xxx zPhgsE@Jb_Y-87)U%kjg=Q#^BIxIi=L3EN=y4m*6E4CQ@0;#XPpVf!OMx?a0k5WN6byXipTH=>-P^+D*4>;>(EY*k<)biHA}ZR;UOhn92mc zCbb}Akr-9FlLI8CbFxM;LwQ-<89#M))lvN8hiREtTQsZZcU z^P#gm3NmIX%z<{EC!+0Cr;*Hd=swgQ&|R(F#66#}Ur&?IoIXVJu90UpT3Gwq!HQLt zmv#?NBsv*SBhuO>R_d9gWt`U!;Tv3mAP*lJr;o+Rk@O1U!+N|WE}x=$ei90H-vzk5 zC@B9j9$^K^Z6f!Vol1w1oN3$Ak)n<~0Y(BSP_qa#a^%_b#~4}Toxa^`YV_TtR`t24 za2nIvhydR4#Gm#s%wP1El^Q?WfUGgxaM-`=*Quj4g3v(v&^5@wFCxh+!thbMVit6QaJp16jt3C`XsWwSE1%k2ZTVr>U%V zS@mxv$FMG?9${T?VFKdNtRjF6%pcXBuf7^g4p@`3FdF-&5o)M@5~b)l?h z%~y@p^(_?bD)_Nm$Mo`ym3-Hv1Mj5^VS=7P&c2oAF+ znXEJk?WT4277hAT1j^4X{-?67d=j*6!_8!=HfL;Xn@;L?-LRTQ^^WnX&5lpf>l6R_K%NnZ?|%bLSJwVo|85$3aqXV* zlvu`1bCKKF8+$b>i4&W1ag%&4Oj|cOJL3H68U_8mr>XZ#<3H}O$EuzYIcdjzk=Ebb zZinvi*N-?hom;Gok~H8O7L&j0wx9f%;o)t~4}S}wy!?5b&rNK_o~2tlB+m@KZ_8P5 zR*_k_NmywP6lrF&q`^m#+pgVX9g0LuIsc&AxII#}Dku+5>k$e`W!Sk5dmLy6POWv0 uLP-#yf4o`8?cMI{{k@=xwvp3Hje<FTQ9Yxk08J#JBIDspJZ#K<5J2u=RAv<3(SH4Xy793jF3Z$#-t^*|te ze=`$FotIx5cY9OdH97EWZpP(g0>T1e27*B4Ac0J0n7>{CvvmHRCHJpc_WymByNiR+ z%S<6tZa!`<6LSt$K^}8KRvtl49#%n42rnx)H-`m;i<8g93}OMC1@r0e?HK>Hor&xJ zaVVRKt1HCC&Dzny6<7dj{(FJ+UkgkfUH+Xo3*vQi6w;H$-&ab+QHS$#K8
jhM2ROb8~U>@bj6O@bPllxj^iI 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%0D9K?^b2ygU| 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

LTr#M?I;A5{jC%Owcfs5@F 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

SKh8nT3(gUYEvYUSx-tD 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

@+uV0(8k!8?x?Rq}%-u4$zk!4*?2%L_F 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%0AD*mleHtJ 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 literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png new file mode 100644 index 0000000000000000000000000000000000000000..aa2085e4eebb183ec7efc195da20b92adc54f745 GIT binary patch literal 323814 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⁡Of zp{;zid3=lO`U(bhvZk!@Ff;N3FVLgm&e+;d44VEzVQgA*PgGGtdj#~Q8p~Skc2(Uh zo_HS5H+%-I8uFeqC1fa}SUQ6RN1P0*zYP?zIE5y=dlVyCQoP=OMOv;lLn`3in;s@m zpyhVnI7>W78Rr(OVp16idxK3`s~6FKpRp!^U%{gJFt!T_g~6%exK;_dCVwV~MToWC zprHW_2pgn7D@~+C=wk8yx)DM-4S$w2%HWhk6>MO$v_-HN7M$T6=&QcnBPt?q$tzlB zHiU8D@qU6}_fTy0Y#E!orX$l-hnRt! zI|v{(sq^6P-`m4=L{r=zXwsWO>9XRcBE#erX1&t}S^NFm0t3yLZu*_hi7zWW3?<=_ zCWVGpb^*|9%-;uv1+CE|$O|D+v4fWoR~>C=D%?nN4k*m8(Ks&rC5!fre$$R=EG(E% z`+9&XTb+@W{2%5KP%;A;ko-ov~&H2tqJ)m5S zoWNb2Rg{>-CO&xNeB-%KFvs@+R!$2y`K7`pCCs(9z8+MZ!t|Tii%-AZJM&-Jmg6h& z1#0h-Z<;H?SU@lhADXH;s+gyxTnZ#w|AjL9C{&@{t{%E}2=?Mb8vjbJ zJ8S5OQSA;nGI1YURb~0Qj#E`1a=FlWj{tgU?XGYL@fr@`C=R(>mGQ~jh*9IvrNJy zYhvh};@!>MvB{W???Avw%2`8Vx6if}POev1oeDXQe4*)`^~Ke)oq>Vi@IzR`wug2^ zVB|3QJ{=bl6gRo?$_&&dP`{H$sdM!xUJQPv!GU4@jQlcRf!%R7T35WoY#$m*g+5tz zs=`;GR~OALHZBe$f>RwkBzn^ytQmJWp&LRmgEYUyXqZd602oc%%Z2N%X1z06CZL7| zP{oF4AiAE=BnR^5c!uP@Xn?BIhsJ zCk#3xtm_Sn0L8cr&?HnbCf2rLYizLTEc!=ZrLGPOq)1Ch>UBuyMcfrif_5$Wi34n#Bj6f4B@0i`_W*6py z0;&#Gqcx2xQCVn07Z+vH3|mv4=M*)NvO$1$SPWgWR8n1mB^6;jNsW}FnRZ$3eyV%_ zintdqxd^RDA~@{YWol;!P+h2QHK(c2Hp~1}R-nb$w&L=4_DG5x?-i?`lRP310+=bRv&90~mpwBU%$QTvWc_yTsHZ=A)N$%!7SJxa=~ z-YR-DETR0Yy4TDNjc=cdOt~aCUA~-lq{-9an$r#M)o8Yi3I^LP5JJWI#>HQuOOUWe zl#vvK5K4X$G0ru%6^WDV7Ado*PHU^qH0qM%!C`B0*obIr3q;9>uqk!hTZWp)8)4TD zO{hHx=nQMkuinGm@DQQ%KYC!zo%WsXmlCYA#d8gS#@U8#)H5_S zdf5aK#zZT4>mTmke^co#UoN zhakR!b(Bt4u7!mS0nY04QX)#$@?=JGEh)9GBbG0VVGjMGTkoH6prVhxJcUS}kY@;! zo8F3UHo(>^!=OXf3M4ieTQ9JDa9~$jhEZsG!og1*bcsLiCKsm56L3$JJIrMQ5lPFj z*j-~2vG221?C}f%4FfQ3C^%>ma*Lare=-_1cmI5*3Z_1O5DlWCFe)IkDI3SnJtJi+yCRuyJ=Zw>SdUX=T&dG{3Tfc zoR>jv)G5egv8&qwcnOB$+^L7bH_W(>B6OKzy$%+RqX1{&UG_Q2aVFesCcT7|?;r-b zsxlnAN{JaTpc0po123y7J$)9qPz;_+wSb0^{iMQvv<7-k33VE5zH|F{Fh=qCQJnU%i3hB<`?r{x*riL}J)9z~e+2E)fpNTJ# z;XJ*{tITKoXReURLCU(@vYFbK;giC|01^}wUQ&#Jq=UN$m$4l=Sb+HsmuMad5ntj!KI`-9-L0eL)6C_=yCBEyy;hDfszCk-#HUAgloB>#AotvR)R6lfdA zXJUX6!4>7V5EZFQ0!e8}!%fS`?v^ZF72(Sg4jXP<=Bb}E**17x=?EZdmdy2RoPSH}QE0jwWB6PaBVJOdHi5r3fLfjA( zXS%ddtV2eWQZk$-JvTlPKOSNs2R-KFwNM`kJR0T__Fd!MMBWb(n@Yo{!_K)0CFPjL z1Zyt2l3-lXWR(v7iV!}KFmH_ie`3@`Js+(!sm+tPYI-UsXNe5hPTQwGL zsi8&PtCENNj_&JHogy1k)k7AF7AC)?x1*p(8y9kXQb;PrJBJF88%PQCxYjP|_-^KI z?^37U!A0b}X+pw)0;Jl z+OA(nW>_A|S*gQ-Sy_2nPA!|^ct_TUA{p<9Im*WABDybNDi_e>Gs)wrbOz$JN>whQ z5{U9HL2}MF=}*R6go~axSOoi&W zKo^q8e=1A%C{d^N^FcCGhK-^}L$v?8{S&=;UtKWKN7cU>??(xv`&pN=tu*$ETQ+cO zL^Z0hJEO0h>T)2_;zDClspkHcL_!Xxqr?VuKY?r}1>9z6GB(%Un@*>l?{mU8=pET4;@LMU z>cf=UE9l$knRu9@RE5IDWzqdWHsfrzqb;1VubNVh@$yfEthayO(kI92u)qHZ?cWnt zJJ^;~duu?NUvC`MH!JEhp0nnLnlv=Z#Ji+dK&9|WCs`PNc(5n$Ep0_wcKe$a!jeu|807(&Uo@|Wo6S=V+>-xvFWj1wKP2cV>{n^`7mCMdQ&y;;B4zCR44xM50TdP| z9y!}JzD*kD#1W|wIa9yXrqpC<5*4n96z?^dn^DZ4_ouB76gh|{T;P^gIvFb@qg#d8 zSnpj%DV0eh6Tx4VK!c|#cc+dT+qI_7e!fdUzD}a|hx(Sz{Y4YF!@V)sQmU;nlDXy` z^Tk%WnzEJc3qpJC2O+kc+}*2o=;@IAN8HnN`Ob_EqrAvxZM5hi zpNE*6v-<*peD=XhDR)fKq{P^$-1nK(>f2=%`>qUmKfx1DFog*rZg&^Pomr`0;)$E0 zQ$(HLL^kQN3t**tLiEEtC|JP^F_8RJcdsCiW;(}*iA*`Plg*QE zcvBZH%~!#nj8#vh0K=rw2x1V`BFypc8I#}55LIb?nggG=+3s8)yRuRC#l5A(f{ycm zU#wv+i_Du)F#H%OC4z?VUGS41e#$0U(CgEw)g&NkCSR*|=#au7m!Z}5SZ`$^#BFNBevrPBw@hDs7WtMMA` zrpXp%xwIy!RK9QqB%?~9re z*O4ZJxiRG5D7_7^c4cmVyeC|F4e`NohIMcf-~K)i=}D#;^s(@*mB0|8zA-!h3?WEC zej0dE!0C2gqdIm(PJ#(jyP|Wa$1LPmCnVLX+V1RG<3b)s0I zQu&{HcljEZo%HxM5fPCaLEQ%e1?hZ=eyZbKw9cl)q-TaN+?^H%MGWT^@UrJ$4Yi;g z)NR*=esTM`x+bwANAauRENlF01hHdT?6WUTUyT7jV#o)Tkodg0NIC6? z4UK91;eH=`d(JdQxCVx!_5|0exK|7eNH~s-msiHklle2U{=ar`Fe8hn-c72(kdozO z;)!AHH%>~LU$~7;ho9`8Zg)R-^kR&RqNKDtQ2mVflNvd~MLBh*#d#4hj`>rvyML?O zPi1WJg}q)ufgbSw-|J0=)s$f;53Ms`v^Z@~LC~RW9_UNL0^?Jo5gplYtPQSlrGDp{ z(`hzA%cJo2j8K!V_%*(;#*NUaq#H$X9u()&O+kMHAyvIjZi^L37d)xr|CIhG!!D9& z0A~9fu}ZNnCo{R40omR^9mV-%=%iaVT@bsgngSA0*y!xc4fd*5Kj1j(5SzQ`>GUWW zQ*NX;h^x{`RBIl4pnZu|jfMnu=4@N-r!#E<+;RM_|3*?DzHF!%1O%g(1(!RldqZ%p zEA;_>C79pwLL_@N6T)bn%G8v&RgBC;F8jG2krQ;5C2BU|&c>Y$gmVUXGjTgagcgmxZwDGRkda5j?1x;ormwLq7q0eGYj5H&uM3p;~fM!!H@UG zy4ei%bp9-)+0GP{0Q0TK@@6#+SSSdqcQOt{pY@M)FbM-A>9vgF8HL5w5@xt1O*dxy zK}#XO&Lk=0RN+i^rZd0g^d-^Gp&Qd3FN)2A=+)kco$AnC_Dp2W!EP++UlT~J#IT)L zHd?>82HmaLwb{GAFWAv>??g{CZ2NRr6?08ERy32wm_i5{&^86!qx#=TgjGUFGcvN8 zBHdi1fYIhf8KgxX0P=E@ zJxP)3cBdu!;d%?Tk1MNBbshy?cIRk&516G>JTRrQ2eJYGy;y7^HeWPneI?51HGAeY zMaXPmu4O2R)ttX15aq(so^GUTZt&9B6so7cF%BqaxB z3Dw`(j^k-{#I%a&5t44OSs1Sa7XL;<4Cp`Rg>3%0E%~!txvm%DFAq+Ims1GnWU{je zpd}kdcC!2C$8N1etw!DbpJBKmn7$i0s$WBI>CjeA8SqEn+rwzOFB`WBq5R5vz1(s{ z!poFFN>MW58B^u6z{hA+{jYD498U_&=!nSHs2%9mL({l8>1pLG0( zUKps3rHW;31>SKB!~IU2|3gkFk8t8)B`gag!p_g&`)@KKWh2?}-HIRtr)xI$N`7ED zL7g!+jqR$ruaFvmz3%wmy5MLeonBt`-E27#+UYZixI!oW13qAQCb;;dqtf}K?6@PL z@cD0Fw9dsMiFLi5MI?Sk_n`=k|Zy2Nf;Xj)X1L-#Pq!U~XnnA;LzNO(8)Qnp1l^pL9y(*`WKqT$b%1 z-rW1Yf7pc^VEJVsJ3Qf)DxH_Yhwahao)%D_PSBya@i`*^2&1d^SH>J4AOghL4;SZ zZG+1}gPoiWcPf_3fB&0yf|&+eZ6@`p>-f|ebMdTW7Goww9*Z6)b-ZBdS>`p7jZ9mPM)=GI(>Uycin)5ED${ zi+ESKakw(vz)?KJ5Jv`y~vU6U*8%1s(z*&YC6^Tqan z&aDE#d5PKkTht3jpd0o=$xop4HESAVF~w3JY80TWqNgO2HBj*IsAz&g7df5#BpuAnHNJN=r!&KRdTGvQGZ;T z7fpb0>+Q;aK#}5~`1qh~XWeh}iNp1=jEJF5doP$XU!$aY87^up4F63T97j{+Bx7mV zOH8`owv4ALl=;3zvdQT-XK-u6a+L!Xf!Pg%|ID&rpgOwnJKbunD7F;789IpVRjRCt z#6^urOPPPv99FaS(!VsiLN`eFkVE~ysfb&MtwPiArR$Bu{^uTEJt zIx@xoY`}Sa5J@R7BrAl^H4cIik`Jm(Ebv%>nfyZ>vG&k50F_-PU-;kmI{TMDDh#rS z!{#o^qwY)a=V!He)lC?aplD6m!<1`rV_Xp^=z(tk+uhfZL*mRwJEk)V-6lNlXb7u{ z`Zd}tqIboWa{rtQwV7L&2q?D{#{AdrYk|KFOFb*SMe>;0sW>|9^Pp6Uf7urhz2`#b z;1;I!035c&`5sVE>1wkH0>(}m_0wMc#}888eH2fE=T^!|QT5bo`8mpGBhs5A8Opi& zTIPtz!M<}l@kj)dSdroR&x9d_9pRMxI0z4$oPr>lUEp#QP*3DC_FNO+K|Nz{N&Pv* zw1ME4R0>YviUT6IsxNUWO4EPC>7gx`H|kKfc!rR_zv4g~Sj_?;mZj62MQvB~1)y6_ zKZvs}n`^BTQN?A6lvYsW{r5_8Lh)Wzu2sw z`v<)Jk`0Np-<%~D`QI)F3G!Cv2wDx772#KsSQ#_ciN6!DenfFtDb?uxv7Gvb%<@5AT%xE%O`!6CK^0AfE7V+ zaJnYdoqSy5Uk~=4BT_}z_;Vbu}_@~ty>Zf=j0P) zUwP=~6BE>O86Xja;w)L&Mb}c6Wn#emZ@c5htmJj{qz?GpwmYE(vTk0tPJXiXzR0~c zG4&5AFCQh%o&Pa}Y(0IkD1JRZd4gzt7I={?kDO+_6<7MJ`+~T<%lSXE1PuJLbFCkX z7Kwt?YlkiINpWrc0&_$BX^{o}t685Tx46WN?nbhf^%X4WBCL48k2?5I^ah4t%L&PA9>x%0u~H$x6(INq}V z?I(pl=ORPWW1v8cyG`}^5yBsb_#}yPEn$d7rYk@5;tLYx1mkW%Y~+UpqHoOhay)$x z1gQgAuNb+&aJmaTma5M_CMaUW5Fx~J4JVSLrGDxC9lqV>a%Y9z#%mF={1Ju!d6e`U zJXNbQ)|}?nslW(brlw;0eV58+Njn9|EIqRg&{7Wc)D|e=4&T}-zJp7l%(py<)B3mG zO~w&@|LRYR9aZ+1gti&%f;WvRoKx(@!p znu?`z8dZSWUv>tTe}trsytYiO778eZC6h#r5fbVLK?6O5xOFtpt*43;+VH*N!`gV{ z%4f=aE7g(#kAp6K(`_D$iZc3HhyQl5s-H+aEv92TpC0#Q8;^yOE#qmBnPg<8T_ey@ z3MEM6v1@+hg@aQN`ifc{P*>t()yE(VKS&=DeKlzgu3S?d1~{XH_Q~Wf!DW470uGjV zljs+$dwG4X=bHHJldH`2B*qGpiq!gFuX39&v=X>-5Wb#$FGZytFYg+^Le~l9`tZEB zb^7-?^#1`(twOiz^yOevWZF(8wmG9}!_O37UieOQX3N$}=bg=Mh?lJF4XK|1+Ui(WJln_uuM$ocpO$ zXlVG$nJ@Pd<}gua#kr!vLA^c*)`wyLdEwbedCp0r;dx#-XX(E^oWmV`Mvy_LO#Js9 z5DNo{pJh@DjhLh~!igS=|F;XZ;^cftjc97STxCtmL2iSq^0ZB$LV2$%fL$;zKl*^d zc4%Htk@nv+@E6!=OwWBIb>xL9#Ucg^=nBPttuLV0cVTmqT-^Ldnl>Ds=2ZJ%|F$wG zX$VT875{bpLQ6-hHjV0X##$Py4n66D)?GYxo9UMMDA)4OSNMm33h$Eu;^To;ElbX` zC3pE`b9JgRgO9-c&Q$V*Nex*9jmr`mNShG5HuUDyJ1kW;@hGl*D^I3@B41j=921XD zS-{TF*iFNjfJ#O}aX$G_y@Crzk$;G3UMo_?C9fv?5meWHd`_dm_KegDr`fo=aW#E& z85q#Y##JS-`kghCMV1k&nTi5yYY+7Vb7={Ei+4o>O?Z$P(n#Kxub$=Kc9!wDFZuQc z-Of0Ul=hO)4Ft8%n&P#u?wgzlAHT|vs5lbqNbgnfYtQp`aQ?PI78`{45T<$0yJb)4 zRRh7*n*Wx7HiS(^{l5>Qs?imYiBt0iI|y+2Jd6)3(($q=xvv$JsF4$kkMls#mFgVO zGGQoIX_y5$>+#>LTr3C4iLmi{!ZyXfk_z2kz2m7lhEDoBW)g zV?*K~mJ}WwDtE?GaEL%8Af?RsB|^$qj{5`BRnalZiQclz!W{#X!K&+emfb)wb_ffc z-qTC9&Z-bRc~9jk-8b@`7N+Ii4R4mS32Rp~bm0+~<@%!QfHtu~)1zV)-q)Isl{63s zVs}Xd9X6Hl4tLPjQx8K1GtVkfuvFSVg3_{5E|_;I$rf$5ZSDI0;)8GgP*j-~>nNBRmLe%x*r_60r(l3k8Dn~O$Cuv>hgy;H zV@NqNpXa(PTNQzDlxWm#+>F-z_wuovg~5x~xAqn3)XC3Ri19%DA}tMj?;m(#YeR9q zhFEdPryW0V%@Vi%@OJAl`lGJ)p?{^S468>jZYM?5^cjMz;dL@Dl(>%?)GCWi&mNz} zBk&)4;aE&iLc~=kInGD;t%)c!p}TFC^!wuh`w9ogQ%*=B#waMY$qiM^Us2h1i#~}F zT&Xrd`;TVgEdIlYMyjZTvb2w>1QJ9XQZ4AW14qz&tAKDI^(jYQMvR_BS|Smhs!}Kh zz;THmKBvPd5XLZY=}Xx~N-S(gAj?|dccET3&HV?C|8}|ah&FpG9~q}#&Gj4!=aGn- z<(F=80ULGRo5YDte^X>r+NeYP9!L1zo#7$nVkMK4kmQ}|L}ci{&X8r?#I0bWbKyvV zWOprA@rud!B#+ut89c8M0J?MD061-iE~ z$xo+zujZr?PAb+;G^Dhh;UVtj08>=pkQ-CQ02|td|4;B4X(=}}w|-$~>h}&PELw|9 zkmzA*f#n^aq)B{nzUQnBj|t;gSCn7j-Vy{Vs^d~bRiW|Pg@~vjApkG+ctvQYtZ1>0 zGt!YpcS#{#`I(CmE=^b~H9E#nEnw#Sd9B^-_=9F z%Yrm0B_N%W(nxo@NO!|7-OG}@z!ERt&-?rTdFIT_nR8~YIoI6xALDk48)lbI!PkiH zh9x8V3H*7>8(p|_#kMnHWv{>@myBe`-KGj;0CFaud8~Om?8nzr()Xs5>t~;4_~oz9 zR{M@IgB}fR177GZC(Zh!iQwB`-+zAS#&`d8~BSY&IFy-u< z{h`WGrl%*h6&rn8iCg69p*JTEeHTEQt&fAj__nFju5Nu&{hk!*Hl_Nw3{# zK@z{TuKL8;=!=s27X!D&OmfYK zYojkaqTUQ-9b#H#J>suyu_=mz$@6tOREcAabxb?++^gesiYPTlzdXkIFNZH~Enw0_ z?i4y^MBhhHV^ink?#bh?!uaT;3ZBh8`KsrPdO+2=sj61d(+;byo6N%cy(@E zZuO}PS3aov@-dgOQxPaSGCeIXdJ8o7>>zZqf4eCD_2u!U0Y{%)LA?)$W2rDA_G6-8 zWod|#bN{8uLfsgb1G8L#{G^I*{p8g(?a%tOO9;hF7r#xL$1FD^!>8y@)cY$IBP6xFE{pUThiB&0hzgK?%1 zhgD!r2!mOc>O>};+bn^AikmZkFl^*);aP_d^Vn&}sMgES**y(`hE-n=rVZoy1oGp~ zrgUU$hKsONngB|AcE?qCJH768CGl-yK9>pwfvda;>{Iji^S~Y&AqtpMXGnI6HW%|Eg>3DWCAP{ zIbJuI=NO(zb1ebsT@d1nJvcX1Jk8H@z<7OkEONDm(~k%M$l7xXtTc4k&QkSB5MrL# z@^$XWVco6zFwE0+>UaTXK$gjHPQV(0#b>cB=(vpYi?`g=c$E~^f>jJIY`^&c?>qW9 z&*1;@E-2QD(hx9>X{=g6>GJoA2YhR({XeZtt{sY<;*)bKY?T^}{a%81-=|U>Hkyf0 z*Z7aVvbehYD$=2Y{H4RE#wkSGrMc3YDwkOXgQ7P{QK#R^d_zBv2r{GCRo?R!585CM z&9DCMHaI?t4M_2MM+2vf%^HcB-p7~SGcSGUdjwctXncN;`_R!fAaiv5P4nPO&@ArI z7aaeeGQ=j(Fn7Rf9RL9D8W3CqQ@j>TIYk>Ky5I0<90AOnC5LUU-v%9->+H_zpI#2X z+)C~)`pP)C{lN9G`#_$PlY82AYjXDzUPRkC9IwjD)L>$jr$f3R)LqxK)Q9!uUP3@E z=a#Z7dkx<*!_MhXv~+{c5zc>lj-SnIq_8?DHN0Tz4MGDRLLsT-_m9Ad(p}xj1f8#H zwtJY~bx`-h4?qLPfPIOSgF(gY9i>~R=LLvql~B4~w~;;pnlbbbLead)4mNJ^fQY&v z?^Pr>GOfn=@1xqc)N!sJncx0%vcbn+M4bWGPloUtv`M~Z@wtzgs{G?POhS-{xL0zW z!%&s)h=2D-a>L7w0|s{g`{z;VTlFDdY5-Qk^9GO9vZolGfp^qDsnh+(P67=#F3p&# zJ(+H#367KE1OLB%CeqQEY-zXeRkKvSL-LlH!yYCd*&lqbx48flxwu}s(1(_G6#&C4 zNE7D_!7b0};(t~>#(>Kkxf{(Xkkl+X1)~Di^{RwF==Aa(ktAZx3@hU^9?3D7BOH2m zSIO>|7`LbS^zMJ>Hz1|!ruWI=-1-MNY8!+2q=qw^hAA^!s(BJ?AHJGtXvjAOc51i`H*Ea|G;&qgo+d{B#DBfk&{i4}Ji#|0ehxDQtWC8F8h)GDDE4%}gviHC$mt3{Lh1H~FS&SNv=;9iGl-RLYc~CN4?WuPqgOms ziNmZs)1;Kp&?3*rBRjLY{i78~IA(jv^)}UkZKe+j9hZuD`jopJkkJV|Dyyfn`VS`E;iJ zZ&xAPO>DlWD!OR26UCGMj^*$b^i`8pqaVWSt`ara_EYw?fGF{0RS9uVy^ux?EO-t2 z<=8sUN9gR?=*@qA1ir`o;-9P=WSo3rp=g*YIg*v+#MvkroSqg^`gW-v;@xca@9o{j!Xx)h0Ixw>Y zeqUdm-Zk*L4NN=u!5rf|G8Jd0V%!nDaxbi-1?8J)W0EQuMgaGFo6IHui_?WiwsSxV=)socCLRM(;UuErEtG=YU4bu;+3QdiUC&RXwW|x+P0xdnI{C+m6h; z`*(ahnyni{9eC94(1*)D2Pmz;0)cxel@ochoHk=#=8{5C4O3Z(y!JEzbNbl8q00o- z+cAB*U)x)j{{SVPv$-~S)Abplk<^Mc9TUfn-3tGDj-xNSL~P@AXB&GaKGflGhj(`J zFE9!opZ_7q<8S@vIq~eo9vqBb_}hgxz@2y9oW8L!?E8Fqahnj{o6`uFhZLb%n``

elS47O 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.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%0D&+zogBfNM~jzVTS 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�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⪼?4n~KEF*Y)S;lZK&NT$3j-~B!O-~aAwICb(QrlzK(gxlC;NbgPojZJMxB+@v2@}SHg3P5&P*yF{*%jfbe zz&nDPAs`m6CS7WM3DxxU-*xi}N5C@KrTd~?Iruj)`s#16z5IM z!NAoBn$i}P>4x>61kz{$ittEpVy*$n6E3l-1KzFxrD|nSJ_eriH!%kWAcBI6-~o=S zh&Q|cMnN5hCm}*RbmazTX~F<14}ic4CqE13+N_=d1w@#>9e@b0N|y1ZP%KIhZ7QdQ zdV+on%~@(ezPWK77mfj#rp`e0dC=Ae0Sp@S@$*;_sP3uBpMfZcBI-&_Q=NtDS_(T8 z7Qrv%cI5JjXv;3Dh*+{7!kmf-cLsBK4peFCbal;^O0%t(d9q2jEK9!Yze=ViPh_J3 zTZWS{H)xQEt*Cn#L*jzP5&?(yB32ML9XMbzK>NfSqNFt4o4G za_1*adsG6i>YwW8CA`v5TMpmMmM2@v%{yICcbud=7?TV#TV<(HIEXS3j=f zpNVoW(;Ax%Fi>4%olz#L+w;T$kpzLkACFdU^^l*urdRY=o6ac!+c|okst{6*ztT5T+)_Iq?wYM#2}n|30YWAwWX< z6Y*1ZvtiKtRX4L}?){!K93Gv>v|({`we1M)61+VXKF$>xCFF+lno9{oRJ(LfxF*HI zviZXm>e`Sp3A4?`5@4%-NXHqiJy#qGP{EAgah_mh4R{=vD3w_>^s!b<-#3mg>re1Ury^D{nPk!dpLH8F0M z1({0Tg;XBzN+6k0EBEIT}IKEg6Iq7&Sqjv0H#^$ zjKcs4glZGlb9BK@2tl4~F0*v4hDVyj_f)`-SMGk@* z2{Fd{r$Go{u*g7uYl{o9-!-9wQs_=s%Ji$z2Fjxn5zTX7qYZ*!=yN2rQtE(FbV5L6 zwj3`}3Zn=;qd7&tP34svIk_)Aj3&&#pr_yOGSh5l=ZCxRC6IiB+R4NJA zaWFnUhQYJvFg!Gfd_IqbOO_&+&Emw7!^log0mQ(Zx%1H4*ce1Kl~jQOAcdPqF#6YX$J)Y#K_t_M4-b)}Y441DdqU%0jEd zFHy4sf#0YiI{Xa}fpZ)Ow&T0PB7_j_97co%^lNk;bg6KJF*HF(*Q}ZLYFQQ%i3BXm zf=ek6Yo?;ThyVhDSv#5uR%ja(%4tLoOs}8YiMa+;FbF;2xG+CK<8MSs~zr@)$lw}2k1mfI^x()6@t>Y@s4mEFLp-GG9YN;`XDZEt; z1JWB?Bze~@ITXJ8oFa;qEj-Fqgd)Lj)p`*96mz4+!Y1DRC=>#*<~+iPpa)_-QUcfU zYPxNmy;!{b%24KM@O_X>rQlM^?|PoW)WjHyg*@i=FMw&9IC|&+rY0u<3beMhp?_Y# zCxcdLsGl|(tEMWO^JHVu|5XnTLY1jo8WMN`_3{#Vnfta}fV44=X`{rT(;$=u@8njKT&Zp!?BjOB8X`u3~ zDP%qPnT@_F!|s3S=RY3LM$NNV5fRabUM^||#HR5wL0wyRT!+W`)p9Y4&JtCRD(};- zH3U3byRZLZllw8${}Rky!~>OCCwP61OWFN4z~dF^@0S?Az|?T`U6(m}h-(GXJZ_mt zrBeKwj5;qSrq|1qnRNlju~Fm!|2bs5qHAT)(~5>>XN^oF*=+n>HD4X#Nr+r;1SxyPri+$F(F|&656M3PUV+( z0eBtd!ony@K}aw@sm&_dA|e6>L9BDH;OyQKh=*ct67XnOd>sjo<76t0flF3m z$@0t5&=^cF#zF%!ry+6XdG5>^KLbd7I31^Pd@JTuI^{fXa zu=%e;sii5HuZm@?tOu_2I29q@gn3?E%hHbt1QGWOjtoPh;p1{`ki}UghUf#;KIKZ& z>W62)=wm{q#;P+JFXPogx4^Jz@(OCg0ZW%uCgE)WgEV5IR7(Rav?Ok0+r_(rf;uxkTCIAqm(-|yUv;>)y$P*e@11$}) zYazbRy0ogTiTm&WNbQ`i6bLoVFWpsIjrM(FdK%ldZ^zWcINJ<7YDr5=D?aqVN3dYQ z0{q*zzm5I-_rkIgXlQIiQ&TfC4Gl=9QZTJB=VKOCX7v17OpFhy%qvt78qLd)M<}Ay zl~-a|o<8x8Sz3OO1d9=Rbsoy3O4G7fmUt=>v& zZHT|U&S`>S2u)PXIWsR(%Fg4(US#bnzXc)0u(F()$(bXnUdhy0TO!jAGwt(;Nsi0g z_uiXkeWOxP(C7XXGW+AAn`$xKO0~b7r?+Ov$ zw_be2SPILTZ_ES@;e*lE)`_|Em!PSo%@Z<`HzfNj{uK%Zj1CWBbYvLCViCFNNwjrz zqoJ`0=gyqM^wcB(X4P1@XbE~cyL>dDc9x^|Wd*g>rFm~9RWeWw{TdmgsI5{MotVJh zy?Ze+J_grim;C`|YrpR!4`J?{Ie7Rx{~P=E?uBJqNH=8A*wlwg+2S?zc?o11gV*^4fl3JPY zwxu$xo7}WwOtno2Xh9M*0e0RE=4YzMX^|fWtvO_bX^&&0hA(@PQfq?z7IkReRAV(qXo1vTY(P=Li#_6TX}E~q%;*3bXFOi1(tP{OB9hSk0m z=eXj!k`z!~2Lxw(x%I-W9uC4m<=Hnui zSVIpCBfpm@QSCiYD(zEM6&EFI z5e8bDnsCXICD^-fKeE{=5Msb_Y>bbM;s+1^8*aVr{kZRekKmOTU&I@4Y{K-^6w~Hx z8?M9dBQb_zz`w&%sSJAOEP!1sVsd;G6B8qto|<6NFux2YOsNJDX|_bDJRTm6FK`Os zc?aoO0au-q`OU2^rEqN_n0QW zF_F$lj>GOY3kD4Bo;SZ<1*)5a9Z5ID#a#*(q@EB90P`w$d8QvB+$u9QMW&$%9bLU> zY-&SOOPkE3qBAZrI709vgrHa`U}Ah6V`HN*2v}%T0(ABC!F6n$J#`X=LY}Q*D}gz4 z=b@*ovm)lHLs`BMK)6<@jvH0SK=sutZeR8e%Ovu`i5QBn`~tb`G#s00R*g+fa5KuJ8#Fr_NF-Be@9IT+ zS08fODU6K{VRZPs)JVa#O|R32=KMeyGu6HR*mEki8dq+9&D2F*dFRkDOs);MpwwpP z7-ENW^Px*ABkt6J<1h);6o(;vtQ@Xss#vW>iIc7&=mbwUvlR*j>6pWqp3BdD#Qioe z5mDNwS{8agMd~gBZmOh|-zg-4MIo6G|0gsEb$x6D83&T`i>msm*>vF9gtj@;fR&@2uMR)JKXl+vt58rQm9ZpS6Vr*;-(~}cO zr85{E8iZ+C=$S!=Bd#V=E)L&c%^v^)XA6`c_x;d0I#e@r=7Dr^~Vmv36vbznO#5{3!WOu%uNIhAOhoG!nC31YyZ zV3`#tMbUBL5O$A{Z5Bpwi?+?3iP+hyVX|QAi9`~VvXo?i%QHDJA}5%yAnc}TvEL0- zY7XEIJ&+DgUV=r47!U0%h6@w6<8X5*4~Q)YHH1tqDiF+>J+nFSq6ADUAp}KE^c=3O zig{4=5sou~%e4=7&PRDVEd#`M;8L4e5h#UWT1X_5im_^5!AxG_CPagR3ayG#xKKn> zYSCO%aU3p4a1$?MqO6}{%~)0f1{K#qz)gAvgjv`yEKp(q)CMTw=ek5Ha1cTav*pp9_>vMq86bomh!BuO8vUi&Sz~_UXaSrNb1^~g2azcVRGj5f9vfL` zwIYCtcWpBhY65@(5hy_jrR?6T!SAJO79m3jf_$L3&@Ifu0O7)y7&{>di}7OkyHsSX z;cE&kqEIT8L1S|(Ow&R`V>8;jdXTUZFv>Abxz`x3x$HE*5;%cEK96)dh0&pN$TT(~ zoo>L`=m@4JCO|=vOr?-arqI*VgWjHAP{%IYR7HFt77wati&Xx<6blSF1J#Pu$oc9b z6vSzV0#n%>4jev&$?-A9K#K)9T#M`Jn}b_#dmjb{7U8Ame~Fi0dVy(}2@A4I0LBajp@(t^ae0VCgGZDS z)(!oVdGDbrsX}0 zQ)k3NsDaGLqM!9k%^7lOgpL;*ALjhl(AWroptY?X%`L64tOPO*jj*_BR)%fV#?TLv zMpNZKFg-nmsfh_>b2(V1f$7N!ScwFhTUz0|F2+VjP{`*&__@7hB`|m1JhU}8m%Zy5 zn;+DLfp|6cYD$-a_)bI>m}jd&q#jTx7IEbGaSRU)p-{-9SS-LU76D3;NTzVbRo7ts zO*iA@iR0Mv&f7SA@BnPbft5%gl}aO>&LEY^NGBC(UIP%i_)4r3*KxQ;$6j+B8{?y+ zfha)!Izs3^lca?_L!_?idC8Ro6CT+ofTB3FWJohs%1fEAvU-X%3 z6nKRTCFFUY>+>sx4tVwk@o%m``}#tnC8r=B=0WJ{ox@^$^S@2YLMok>y^DlW43u(< zitEC$i^%2jn3|eEHk$<~gXkAt z#oKw|uf;4I`AaNH5-Glvs3W@K_^-#TqqBX*jkG%QTQqXHYB_kxZrGxDKW!#*xqE zm?a~TKq8SqOG_Jix;l|cBtnIniupoa7)kZ2YpD`pHIn=9`*2k#UnuizXrn+`WRu(A(=`c zolY}GYMShRCeI)0IoAn+|HD9IFwnAf1Yd~9uYPqHXmpAH!$AKJ1C3WlociQZ3%{@K zI5rCT0`mDBrl*)sN3l>qI+cR$6k%Exnp@gI2rxN5j>*XhP|D8clgR|EL=v6dJ?Ly{ zW{K%VJBY~_>dHW>(<)I73cjYu{r7*EN|QvD8t6sQK1IVG4b=N+d~yndLqixF8$&*q zl_p(>A8=gSyc7?e7{|^JLs-B2RuDqU@ zYpI4hB&QBEe2NT$%x*ocny4m4%bCC@u6W=wT~>R4m7{5-Y>S~nAPrBH%NmM_9Wrwxye z;q;la$mOPC7mM7iTja^IflNaqdi&;J`N~Vt(cTWY4qkrwCFHVMoH=tEB5=0F%@*wP zJ^K_UUQ>8+YN6%4_rFwT3!;6IU7K-6DqfAzj>I|Gh59g%>X~HarBD*@k_`0Xm}x8TX1TXq*G0Zq#F=x0 z7#|;Jkz$H@&P-Wg1qzB(DviE*{aCzYDcalHK|ry4*G?32c^p4+4EcPXUm@U^-g$O= z7JAQ=A?Ao_$>iR`vsQe10w?I6zQX0+hkGdTBGK?3S zu-B@pH#UU}A&OP+axWE7*CSREljaiD?*O1&PcCVQbo)0H${ULY#*f`+E< zb0szfsRX}}jTD#y3Kf^e$C;__4G1c?tMZK2vbs3TEbG`d93Gj?wu>m*Hp|cHvOC1d zR0`B}v2^KDoH%|QFbpJ9DHMxEOixZ?dYWah65h4R6bm?$&NQI2qZ3W(RNyL4B-EXO z)b~uYWTBXNO9pzu&9Joc(XDkp9LK@L)HH@hM=>$Za*GOW)OLzI93Vx)N}#2!4ZVHy z(AC|I=9Xq;r?VIzAI0F=v&f_~IClIPCMPFA0DhgpfCxmd$BiWVcjApc#F(bgL^bb2 z5+W5-f4{xdCa86I836T^Q8k2-;2@pVH+F=8!ykL4V;@G6`b1MokGEq;UsTmf947!g zkK9x&{{BP=0@S-ERp&GueBZqc5^~+@ zfk^acRP&f+v8-9BMau7K>se_irD$wyL_VKGcXv0k*&JG0T0x15m+jaNa=B^bvRM@J z1s3L#XIe=llSm{|$TT#dwYeFM4Gl0uvde@HTuo3NldPIA)QGo71HIr(R5l#GjY}4( zsX2>`ua93I3QV0R)jjZNt6>O$|FxoBx^Ln@g70dV@{3AhwE zb@Bv?MH{*7G{z^!K|Gs|Z8(ER$QF0F2;fP{<=>V1=JIa5u=h3gD5X>=shOxEA$pa6 zbizJD4VY2HN`FCTAMvg5K>`v&9)oy9s|TLCbt)caDhumtD8r*PwBMyRbLj7(SA@!) zU58y}^3@fINZ5~I^GD>w$JPJBg*G&8r9@n^j#a(}{tX z5b&~|aSd+r%J0wl>+(Y2YL8zrmHh}QrxEB71WM>0{-1^R?qhO9do6$y01~yLL=4uT zwx%=<%Bvtecc!ddU zsA*t*ira8v&{ZvZ7(P(F?|#On`~>tmT+jP_JUqggtU>FSw(bHQ@C&5zC}%*<_wz~N zh^bX4a2Me#1#WV5w0?+vFSSY@Us=@cx(*r|*quukz{v0rIyyR$N~e*{PNT7*5xIPh z$4F+3F`v&Pm(3!d%SumMhiA+&4HIU|m@q7h2VO`b z-H<_oAGRlwNmwR}r<+V9k;`Z0rEMxQOF#vQ4}eFLP((?-EeWC`lk6S#KQ;1-xa!0w zz-$mc_97Av(cdCr^$_TN0Fhe| zgvcCyE_I>DhZDi+`JeD+USNN#uy6`5x!E<)WOBB7^?LaK1>w+{pC{I7NQJKBdKiUx zR|L%tEkq%uZ=LQ?9#>eUp;Kg?7%aXnVI7YktUS_^%_&fM9! z+j7h4N#ZHTf$%?sC%SS_5dr_%iz1w%TG^0SBP3p&VNjmohXS6ocBX0aHd)UcTSem% z;S@nxm_maXa=nQ$6J|y#@^^v-_b1wV@y@r(-z$IN%t-V_$`eE+HBf8GKV>qoyWD$h z4D_f;gbV|bMEj&6 z-^-V-iZA%_u8FY(`%r%ds)LZKDnOX}J})#_risp$X0$aop-?PfI+sU||H~J0l7Tv| z1J}0UQdcIX78xx>rVp3r`9sm0(nnWB7*Os1P=o>A=ON;7L@%PG@@hu49(8GqiHa>= zNok`0;n@g&4X!L6{$I)|Wu7{fu%bWq5M=E)Zynw~gfYZmd*0H18Pu<3i*xfRrA$+D zbbcO!Ll6%?$s_)W@I3X`Nj-0RSd}cIvrQgn*7v?w4p(gk6-Doy5#Qvf=7Mvp%7^W> z@GyhQ`rsc6O?lM*ryqNG&Dr`I(Yyz=iTBJgw|nR~ddjk*rkEF6ysM!1>_30P!ji3+x@kkFp%yEfwLiMLx3b%&M- zBNk=qDOsnlzQ}rXE)pUj#BJYSE>NfMK}GdKr@Iv`UXN0w4+-^;P6dtPfAbSb2#By(X-w4i6n3zZdPf9UPKZK1z#JY$Dr6xa$0sDIug|!+_ z%HQ`WfGq1cPXJ)@1O&RLKapClX76Bg1*Zn7otT8t`O*WplGB~_KK3*MDg zsINTny~=!``ULPs%b02X)_{w`M2YVY&zRBB*O>6ik{_j$38a$=v^O`ia9AMh%)xO{ zC>BsG+A>$A<2o`^hCI)JkS3`nwQ3(8EzOIA+;+Zwsh5HGk^g8VC{z3Pd@21l;2RQF zpZ0)wyXGk$s^^Gh6a$BHcvM?&K*RIDrUSjM{irz$!-fB#<3oKN z21@s1SNUZ`Ze;&**>5Z*3JY|Oev;a6P<(aw${q;ZyDIH(WE%q*U= zL`%aIWEU=VR2`B!sC<}8;`X-2&i1rlIi;mkKLgd;^msWU06LTOr^o`p5_B7SKX|Gy zf43;Zjc9o3skhXSlhCmee~B|@-3wGXGf@vS4DB!HbTSJM=j!4-(S_?-8^LpG-j0?# zll4KHW8N8mS-G}&Il{{chaw87d|V>2wCX-P|MRsW+cF6J%aZLCAqnw!BhH0IVbw41 zSjqE7ZIS3_%ux)~UmvBeHt)QvhSzOX7nXI$Ihhw!I^z*-ZvaZzX6N*#X@SB8p%fMm z;6lODt+AZ7+!RYyS~k&_ig-#Gv8x!gj#N>yrh;{4ETu$sYHeHNsO_d6~c!fB8FRd{#APBdBMO#w4zq}?803v?+X0#p!!gg zh+Z)SmPO54!pz|w3$>c?E=`ZBsVzVm1cUayTc2U8oEMb-rK)Obgm`_Zgp&nt`grC! zOf@gp@I?X=_Q&iZer3U9BM2XJf@)zp9T01DYQj70dv#FpOx9)CYFj_EW4goo5N^ka3(;3)^|oTxSVfWg zg9nLd!g1lrNrfPUB@&$M>Ww5903_Z3AlyG@Ew&0gcc{26 zm~zWPi9UpyyaI*&-!2eD40ot`HqJX23N*aKjp16SX2yP36;yG067%J1-Ys2=2hFPS zuEuIqSszNG=6hKAQmDsH8^v#&3evxSQb^}}H1`*QI|D?Y@+weCuIbt6=9sk-8Q z@pg<6*F-fd3|Sr|qV3uKC$q}<7U+XA7W}Hms^r~9KVTJ17hmxaH^X9AXuB~_`>(YGXmDJp9UGXkmVO?j4S7L?9=(9pf zqmh5eUxNC>EHTr18m=Cvi;K7T63>fvR%oRGGcEtI>@Ve?)C)q*NDuhRvLJ8R_;_VB+LnB+Q3XPeYlZtAtX$Wf{|Eg!Q zE_hcq{&iV(bz8FWD!RbUu`|$FWjfUDS0xM?vjW#B5Z=E5Q!|<6czZvI{BL%Hhym}9 z4eR|rJ9<&}6ry~oxP@wlNV-tfkj`8mV$b$0us2pU3U$G|aw=c5VZE*=3SpJa5MQVO zZ!3(^UNAW~V58FHojB&9GS4muNVIh+PxT?nFg`2r*1j^VgJVD2Alhl1qO?2WMK*m_ zyok%;TmSx)GsDK$MC0N%L#A5syr!j4KdMtslZ!pBRhc=XT8=i;R#u{t7ve%(3uK)R zV`{*AX0x&A;F-^;$yG+fSz}VxA%J#}QO?S^J3hQcgdp~478`2$xQ0jF30ozzqZgIs zTDZ8YJs`sZRiHETeJELT)p*yfg3#K^{pPVf*JbD`XM0ucq8Y*4UtzeyQPT|79q$UR zvD6G6D?*q_!TW0XlZy-iw3V)3osr}Mfe*P~882FbP%m2f(DUj4e(@mGf*<|1_E|T3 zS8NDf&VdIN)iNVca%5`We5L78r4V~2W80o9X}P)*RaxV!uAuS?>oP-i$NPfh14S9F zv)=MwoguUj-bdw%UKEJXI-~UCS)(^stabXIUmS?A;77fUi?!OL%!QHG?~-QPndw8U znya%=R!~7@5W9wQT2O5Ba&>suY-G?Y39Go`3ZwUOU6tFqlMGg{{tPtCCKU2pUFKk> zfQGD=vP5wf0M)>6RKALPGTmM?nt1~cyXZceL7aB!ZO{p8DVbFCjUnv1jJ;Zj+2I`^ZpDTw~DgSRx!tmVMYcg zcfKt^D>wZ09(2hznWu1#-Ye^kU2)*gaLi7f=O*?7&N-NPUMYs2Qv!Am952N-bUJ41 z^-X2%oo(!DIz}NnIvHsV|AsvW7gj!9_%CJrs4iFF>=6>n6(+o0D|VjAuv1~s8LcXA zGs21E)eK=!Y(YnN= z*}ClL=`~q3f0tdK=FmHV7xWh2wotptDAr#hrFo%xY1(xvpz< z6W8nXrROn@%pILpLZ&B&x`h#XroD0YA1BG7&JdoVnV&*xPQSwEYZp{GtMK%H+3_x4 zLk*)X*fA>8N0zk`EV_C1cSB{ZOLYZOW9l!ut)L|O8Ab2o|CUbUNR)7sdH=S0 zgR{X|n(?OjgHL3qiGx6O=?sUUavGU!_M{rR1slQas;&6)E@Q}n><#C;f-{4jXyJJQ zE21(AG}iGP%udzfSnI55<1$ABC*gD5rI;-Xwc*_JGaWYs+;X~NbjJA11L|2kU@R>p zLJjdY9j)5~gEt&;mTw8_>L|o+JP3$vNN%QkG8CoLpRJ1Mh0~tc5pO3vNw)A=yCH3U z>L@%u)5%+{YF69l93yn5t$8$ck+=8O3<3n z2-vNc;Us>a;hz$88>B}lX=r$_ra4m{#hOb*f+6myPSwop4iS}eJ*K#3p8QjKj%Epc zt$wtgy0-Jm>2VR-5?r&!N9@|8^14TwB~ss93gpcA(0$CC!snA#`|Apo@*b>1iQ&ybS2mz0lXAvPmpn6iSED8UbiiuP$vzSRGfR z!4>6???yfkvYt5R)~2q?4tuO3#8B1?Wa9>s@t7rsUQkLM!x%Kba-dEeUvbN>n zS_ldC8>Ly0YUw)N>pg1iDe*IJm^7`n#fs}v zuGb8csH+{P(l5;zi+os}99uZ#o$k^rIKPQZ>8%tALj~k0cu>yLWIq-p?vFU+FqCWG z3F1e5=yshIs!@daVM|d~Sm%`;|xfEw~pwCQvp9x*G z98A%hTHM(dSqlj14Ru5wg|-L_pg(1fqx`Fco{xePFX-UQ7!k;+g-{J;#fnImu-}Hp z67fgLgsZs;zr^=_I{MMlj*fPRK<<}CY)@;6+%xCO*5)|z z@QJ{qCvi;LFR^R!d#G5sTd5=lmeOAF)=g`6m>w}#-26^_Z?macguhYQW^D?o@XLFr z*4O&sErYJbrSV2kX>}SNQ@|d)g~b-brQOl(nU+hL1o#-wg$!PmiV9iiyapakaZD>u ze=o6gT=v~wT1`F9`xpgd!{p+UrhlemhA4h?xZQCEi98Zh&#|+vpj?;vnR)~m-a{jd z0SXnIkmf=qx>ObzRDe+2LQ8zjf94zH~53$Wjr(fTk zo}VLWz!V!WBG57*fG#X-3p64APSMEM-bQ3c0_|#ac*J|*NH9hBhg2XWzSeHBR|YE9 zJ5Y}He4^%m0+3~fy88Ou++5TOxTT{XO&&|0Xz;xR@Qc7+Xy|?8G-6|6$lB7?(CD+xZs=pKVAmf+k=rXVt_#C8ydn076d4va@C)b*0cbriPhkI z!%_Z&^66vTkxX&Qc1cNK-lf2r32_z&RDa*$5DwOO=HRNY6eFb!ysZBC2|8hI_tm#U z{CtF_&P07wHO`>kogz+m`^9qDMcWp|IPJ{^W0y$h)%ef`RqhJ{^pmX%SOUl_X+JbE zl$V!-ap7RDu#ix+M$qxpvq`JIM%q&Sl~46f`d0V1SD?LvPYoX;EAu>A_4IJ9*XL?O zzuNc2HZCr%+tcd(2Nds>_D78?_h#cR5ps`$fsFzf3i+0gAQTLbT>Lo9JzHf#-_qKe zq{=Fb1Kt7HR$vC^z~-p&;k;9&#lt;1_#Y!iuG6zKi=`IYYKvY!@J}#lQsZiE?NQtP zHT<%lH>2Ku(RyI?(zd`MlmrdxnNLz5c%zOS!aG~* zO;zK*?{T#smS=*2P#JWJl*-u?`;r@}IU+Q6kV`Y&gF=7c((7l;C2 zw84z_FOy#9G&fV9Y@WfcX)F4{Y>SjGm(S$J29@gD`;Ad~ehG=hG`=g@o`+K1wzPQ+dPRs*GL*j_6 z0Wlj=TwGk^bJJbJg$xC7=t`6){KG337v4e@R+NTdya+T!C8cWT8zPB^TYTh@*@D8F zsA2p+JAzmgTwUCai{U~}dhV!#8)^8TMwNI{2Y03lj|OO6EQeFLMg2}i0T;XW$LIH( z=Q)pV%P6XJu3VEXgfoPnZ&f`WQTKPV&6@WMpiN%s2)|MOMOJx?iKcVt5xP0bVR18$)mwfY;r`iZrpvQXML9 z+aWW9?>}r12*Vv{nzpjyo8T3#AWG321}(P{NS)>qTkg*b`J7G;{x99JtZq{@#s%SP zJ&f@d*!P-8W@Tle@Q8sSs;aDE_xC}k7Z<>yaV64fFaef2E*WVTbdS$l{Y^$TDkK6Q z+jU%$)@{iX`ZF(&rRH9TBLaLGe`v;af>sQi(~BSe{i*@m_ZAMjE_-~>P3QD0#W$KH z^y=iM+6@NA4B85biHpk*0=5U7Bjm5KL@WpTT<>JBpMfQ$isg94xX;9dfseHb>m`=> zK1A70;uh*o|l5-wL}dO8`e^)28*9;TLveKQx)k!yM8< zgzM_+LgO+x)LIO>*}vT2&F&=*KD7b^2NY7!!{61TjE*k1ZXmaeT85dDzBi@R^+Xtm z0Fvn$84?H*xqlKS-b?jONG~66gjB$mI58}9G(#4r``Bjqa6+E3J6Ychyed+5-ho{Z z9=h{WD|!mlDq#x`*Dj*&*Q(9Auw)dl2b%oBU)=bC-p}7(Zs&_b`j9n0_}YfUd#^o3 z)|bi`4lk`V-rbzjyMmz+C!1sacNZ&>XK^-SAak7dX~!7{pDHgQ8)2&EIKyP z`lJ%$pi`xD%yjwjwJZH)nqEYH0)dBr?)-W!;+tBCXpBvQ3>y6U-Tcf91ibPWFJDIA z9Nau%2smWP#V3$?Bk&Qp;N6-(K%snmRZnUHsJ<6OtMC|xD#TK(r#n>)m_MAYd=t@+ zL}9`x)hiFTpt=l`zU26`<5Bj}*}43(3;RIU-JRwB0CE3_IN(xB!u27rs_a-VxR;O5 z`@jTPkz_0Kr1s+Twi!?Yb5F4I5BquVh4m^sa{t-Jg@Wnvz?KBeg>Jl7)fOW`#-GbS zsU1-j6%{e_Z}PR94(6SZ`t8fL#Gp9F`&A`|lXs@$5u#kp*0@0rrJb?hPvRUni{a!M ztg%r!`kE~PK?H1BOpv_kTz{(&Z$FZ~k{En(CJk0!M)yP)7X+$Bx51m{t7`ry;W@3X z_>5OW=%9HW{m14yr3SY;n-f$kGpc{wdEsw9@NkEC zpaQ7?aAvu9;eD`Z;9M}}0IrMC?fw1!;7j6%M{nQW=Y>BR$q=VBf4F9RH&>Hiy%j+c z3QS$fTHSzYnL)zCk@P(t7(wav??z2c?Q$L(#0ZXcY1H|Sb2<2&m4|!c_0%wfQXp$q zFCEi#G?`E>eaMJ^QZ|CN;O978;IIy2Yu6dn97L97gO8|j@$nJ&%OI^-xh@}nx7HI9 zL-{#j&=YDJ3ob@d)Hi}WW#*j>=C|vVmI4~6;Us0ItrX^WyZVPo#L^_OzPq25^AEd; zgHW8EH-uuEs)FwPOx#DOg&x5`cx^lVGb~jwhN*~V^6{7D?WRi**3y!!nm97#OI#)q z!?OGj&f|;KrL^l zPM3YzH|Pegz8Nmx*iSGP7M9BcZ$_RYTOXy((O9-$5LsXeHdA5x))T4sU5(+a=!)g- z(9!h`qy`xiau0zym}>~_n74)MR@Tzw^D9w}^*37txRZ*pIIykarW<^={*m-jNmczz!3( zk!s#Omf7mMxo7x8T!bpeIRUoXyk*vfe0{UEAP1+C2xgeu;R4-G*Vle57eY)Jh~_iB zw(H+cqCvN>6wocwSu0wOe{ah^M^{PVs%YV2!Vp<>mCW+pq!jh$v0umfRIte!uvyy~ zGR)ITre*Bs;X!~+%n<5K2@JC0eNQ$c4w{i`cKo#y0{#Zr-dydTl9a^B=4da35YFN@ zx`i+5xl0CE&d>jp^g-g9)$X_;Z07I$wT`TKPyZ(qrjUDx_LR}jW5dt!{n!=^laxho zq(R0Hx#yu{Fo8xmq*F049QO^dp@6uA3Tkter?9lFF-vHLDR5Sz1k;-*mzN=>l^uBC z`H6&NpM8A;MxF=G*4W^CA(r1-Xpn(6FgghzoP`GG!P!|V@EWRZM`=#a6|=b4Gsf45Ol_! z2-IV=w6waOsEJsB>l*1M1{d?WJz`sHkv&PUF`R8W;^8tN8T-thPeo1Ljm!&xeHn0Z zX>XToI%t7|bbwdq*u}+V(B*cZu-a~13MhQ0_e*e@ux4BgDAW5DR)M}H27H*sO2-{= zsmsiyZ`w?EsUi_M>kOkSd#-ZS(-+;J^%ja>ujp-@o^XbR1py zz~URNG1)Y-`tI+rL6=|n!m_(l4j6zv2uqZHj_XO*zEJNkf;?0zyrvP8lUjSr?bwwa z=QLjX^YOo;-^@0kPYF(d*^TgtL=Wk7>q1aEXYL_F$tCgpbF#_^CP2z#zso86Osr{ z=fNdb4>cieffg1P9`%uGtg%V^5?EPT<$xAGWsClpjmz6D>BtEDFx$)gRFlwY5tGEh zY@aW8U5va&q9hK=(!R%J_ty_Mw8%&InzZ#7O780kK}8-|@RFS-=jK9=j@;hQ)#w_L z>D)5A>cwc<8j*)Dg~n)|?OEl>aP5C32_5F`Bq*RBmvBAbYaR;QZt9ih=MT*k_g8T(P#JS#Hx)CoE5)%46+^kUk`mCNM5$zIu6Kn1n*Z_E`A!l$X48|DD z{*B2nCE}v_VtoCJ6WJ?ST$a`76v*~@_#Qwo`(PLoazTZcvri=%dx%!+1nc9 z!%=pX`__k9uSX~$4m3VT{i#REmAC5u(nfzL4})sQ$~5sgCU8tmn&0XUi#)uB$2`Gj z0<+U$mt)=?v4f1kkHKXnuc6VXaie23v#<~b5;E4BJLiQ4nECz2f~d!Kl>`)gbTnI5 z-$1*g?nJRu-cv_r_tHo3`LS=0Bawm5&7JSceQ|za?s- z^!?MBvW{-p5+2`x>(xf;THJ&Ob9y#7dKU~=Qhxq^)qyu&KNx93O;58t#S_B1yJc?| zIs>smF4?r-aDlP==ILXD>VTI)M|=de|}rvZ(Qk?zU>up+x`1obW!4N7N+qI zHXwckcr;NOnxBc*CeZ#V={xF43BISf`AP|D$F{2gfSohdUc zr(&ndbNcWh;lE&PBD$^vQ-5pmp0Hr>yJp+{iN#vQkckl};n)0iLk^zmc*7mY^;YnQ zWmx(KCUSGw9fZLmT*E7SK_Wm~y2EYUFmV14FU+*n3&wcAmLcl4{@+{JIEp}2Ep3BL{{JM-p`n0|hKuIu6E{5-@N!tDuL z*}>iJfnnM)y^)El*&SEom%I-f(h3R9aBYdJe^av!&aGYpuhv9~z-f|GUIY54R0Ja2Hz0wEj5mZaiS0q62p>|f<7U=_71}?uzmv*2I7EKGl`Qu-rs&d z6=5n9b92!^f<7Sv0#Gb?M04Exy%B0qsAEzU*%%_@(9s@m5cTqZm&(r@Toyw1XSL3` z1T#k0Kt|rHCgO}Uz5N}N!=59~N`i`xuFw3o-`w)=79()~JQ_BaN)#&9hk>*;kt_Ic zRrYqc^Omz9kVqB=gZb=LvmJF@v{RNdE&ncX__$_lCqw`$B$fpU*HsdRz`Y|)rc^Yr zd{2X}r?O!u*$*b4+;~m>aQ#|Z-3}I?1ZSs^rC?)W0j(%-g$orNaia&t1T34KyYG9xX}@1?qYgf1dmtualp3kD*6etR z%T8`rRN{VjcW3W_>kVaOVCXJT%Rn1>`w1rMvlcZKs|mKsZzmDIT=MlfavjuCh1bI{^20fyND zi^99g%WWmbo-ZmXPm=Lmc>Uxbo4ECpC($f{AGcz(du`EV>;4iLsyZ?3m_`B!<@EIQ zRh=nbC_IHEl#q5tK`a*FF0@~KcZH%f7OIbqhk32+?M3SXl$4YVonE~R$m7C9$r$7t zxBgTfyu^_w{~vFtOQxo>mH6ZML=Ah{XKmmDqq^iyKuy(-5m^Zk?~=d-A@v=!Vkv3E zd11gRQIh&y78)cnl9}EKhY57ZF{t)Wn0U>VXtwkn2IiGTY_E39Q!x@RV}OFQuS*W$ z_lR|skBZ9Rll1jPa1_{I3|v$Ot8?yOur&iKXLcki69&U9Re7^;MV=7$ozk>)0SB#6 za8B61XW51ui{WF+aHpWI{G0&Sb08Hx;feto@WrVDwtXhl>v5l7Kdtil#oT7v6DUCd zOw1!#loDP^H9BJ#YGfyjv~!H9<^h*lOKa<=IviLi!+6rQk4RqL%!h&DcOZij`Lhe& zIwX?e8V8uzE`Te6=k_>t+zJ@LRYy56TPQesfIP3C(){=@sUEBw9s7l3CZP~aSVSbR zv=kr2Y>rr!m&gnG_SjXer@x~7&&`}voc?n)ji==4 z3QhfH`MCnVe!4T2G(I>mP-Um_EgOARlm~QchGvj>{9y`r?f%^v&^rYX_yY0z7B}Y1_4pA!`bkSzP0?j^GZ+B0%awaMr~Z4l1RH%f&6J*eScQRZxMh z&)EfqfReh)%`sM4k79Somfe;=SC~8)Mdnr6oM^#fEJ2}qW)HY@+WKmrrjr2>Hc7*K zZ`QCu4eD8KGd!b-rHmt6S@5fGwA6RCOI8g|*rEEo|MJqu-VlTc=LNl*pjLY&4*dOZ~}%QiMvR@Z~YmmVH<*jdjW;{ru^q>ko?QS9v4iHNl(3b)hQBUksPnZ18~ zPscK8<2>XZcT@F5Bp%;*So>hWV5GTk_F4hB31+nuPx^?>FR+x0fFzD*NpOR8WQ@qf zdtaz&BP9blrkA?I2}G4si%YYa9L=s8aYP zX;3-EX3dH*5Qi~vyL(6s^&4I1xfdc`+WP~EhV-2vgCF=`{uCRFpkV1u04TLLEl|VN|c&@3y>?SrTP1*Tw>~s2@F1gfwX-n7k${yn7DpEJ;%-yw7Nl zqa>I=X~%STcN^4$x=~STin`8P_1S+MAYc6Pvh?op80sF$j`p`i{)?*>PRuL?!(~Ww}68pnf1r>t&cA^hqSO< zpq?yYrXWyQ8(*pKgDw7uj1#(_}RGl z(S3Dpy+77%E-1DERhvm*mAFfXUi1C6|_jmZZxt zkFP@iq_7mc6pO+JZZT$|AtYuU{8&~;B#~O0A9$0|I|s|*EtmHf!2mSeeAf%Hw-Z4H zhLVl#TY6<3YkqCVze_K#1ja$xBAFW^sVql7CK`ee&=1HOw`r*+}}WCKdVQQiYPxnzVgW`${*3aA3ktX6!a;e`BtrLC|onA z93JJ$?jRZ6%mpsRqfCTE93WASsuLy2l;7V?OiX-2!rGjbZD<;jXMzktmp7pH@)iC-j+M0xU81~c5RUIbIBr1F%f zQUAqja4vO{*?6OfavUKSm}!Ud9Rj$PYm*i|9QVCp+uF+kk^4uWVx4Vrvnrz{1?WrD z-TB2DWLji32@%MsA$8_qGjC50qc3b>FJfXWy0?4wUGMNiw0?wMy}O<7*CGydbI8|Y zEH~Se3zo<6R90Ws!lNJU_{f{Z;DE-UMCzAgQT*klry2QVL)x@r=W%}?Bd|7~w&;18 z@4wkw>0~69aFqrnirF7$hIdxu2QQbghm}{wR|01RGrN{%a4W>9Qtk0?Y2tVdH#aSyhGw6Vb!N?tD%jL>}2>= z&6?l9b>g}v(*)7!fak7?3h!A?-l&J)k{i`?4lIdxgs^W6b{dJ!v`L8^!xjle+#8>m7g>C-{P`%4NOyL-e>;N?RP1v@vxJLltHiOU_u0?;u62L2Pvi$Ecb+cjMnp4E8uHyQ-@s&HI)`BXDi0|7U zyhOBD<+4Mz?n7Jnxfi0ODdZ~XEa6Y+*NO@FzB)V?$SbVCF`JlqPt zUxCwns9`YX?igYqex;YpH?(!)vmRaO3P`Au-2#*Z21%N$MQ}r&oiEIGKA-@mgZx8# zGNuYUWxC+kU#lV52ZIZU_j=It-PiWNi%6??kwhm!@9o>ppvPJK1!6@idk*D9xq%$q z9=1JWIx0*6P^|U z_eeOjvbO-bBEyq`iRr`9%mvbKGz8mMuE;e&l%kD$w5d(KGB%zFiOMxHs*0)54UCy| zrKbdqkhuhc$;!!O9T?vW438z>)(+Rt8MM4g}S1z&lmRcDB4eavD*6Jt>CW>4W zBoxdb?ycxwht`!o4OJ3jP}9(W@je_^HtCl&GLo&^v-}Lsr#K_vB<(v1jxev+ndYH* zAuP;5V>;^jeA(AdKseU*s}RbhUfCEv64;>c=B(_9ftm-StE8HSCI;{2H68!vRK|Kh z?CcCI(IR?8?(Z4b>Du)_**)igxv={YzY@?ap-kYLN@*ON#?W<8`+E{nh5Frr`xH!| zO=4{T1uKp8^<<(XtJcfEbdPa4k4qr%7E#~hr@KM}M zf=@((W093><4O?iOyvs6n<{X5PA>k9@3!thR63`{@d}0+!T2P+0|e zj2j356R|xxRy)V_ej#OR3`}PNwungj@d(Ctc+iTlgwHrr(c)haP?iIVCSN60@f-w# zV60YeM1q8^^3%sjb}LD?{=saVp*{r?GaiKgi~548c22f)HLC{CzT$G3wXqAMm#e

8b3;pS#h$W3@F)X{BO<&9BN;_cPkTtYuPH)rw`xyR%3 z=Jijn4n33b%*x6tAeF@!j|#*z=D|fpP0i}@%5#6=57A<{76g#Fj4iyH4=q_7)&=yO z`pk<;%VwH|5{5QIaJX_h{6X&x!yRU^;Igz#9jB_J*}{fV*p>vk_4a+bFvy`<+zJ>6 zc8dWB;~S_^^zky=X{8n2#f6!8ExNpdfL=)wb>BQ8Y!l3|2=&hT_hO(NZp+9g^TCq8emVlaKgF zlkDyka!8sSbtb&8<0gsh#RQH=EKvVhWkIOoI`^-&ne_kXNcjiTC?f#%zabgxI>Z1l z@a@p1@LjlS`LutUHjV+x@xQummA1Vg1SPyFAT&$mqoet;ACTpD9)h`W%+%WwaVV(#@`ccE6)Zz(7uNPt(& z!0i!75&r3Y(MJ6C_Lc)KkVKyS=ewPCSD4TvzgF{)uMB6tF9!5F0VP5PH5QzH4{F)4 z(S{>USuU%-4-Y+1R^gsyWo<~=@1uor@)TlM3W|!`S|1<-udDo4mta*rpDn4^^9w)p zkt9aO!3FVH0iE_sM9Dbs%YtLe!)JEzhT3>L7hG)f=KfbHX+^Pd<W(%s5p>)nX@6+D*x{ZKj6F(CeSD#?O)}rQZqSd6#%G=+8^9Hx`1$nM&)oqP zMjM~=aJx{h9VGmgPyuKvL{FaI-@yc)ZrO8uxVgD^%3Fkj-PhmUD9HL7h*gUz0M8*e z#^#=$p2fH0QXTNx`g-Kh9U~iORRnI5A3QcG_PiYbDF?Fej|<22u<-H*n)>=49v@3d zTT)ji?aA`E<0kdjv(ZeS{|>X*Ulzow<39|iPunHD#9d?EUyR+4QJnb$*2%y_`^IJ_s4kV&{t(xWB5J4+j+n(ND3fN$%tt4Ih{+9DbLP0@< zNQ)s31wF@iPoA4mcAz@PZe?A3fZE!8n|v^L`5*r|KRJB2>I_9X*al$NpEcur2*v8v zRzzSqOJ#aZ;D&F~rSERaro4jjb`gCmL%O4rfFlui2Il);5CROvR{IwlRJA#a?e0ZBO+0*yJZC#;Id#g+~i2$d=m1rvnqAO zP_aa$lXL6&MQp51-KNFH5R2|MWP0!@79Ayar&152{5>PJrVARhSmi<;Lv+@6y>}%x z2ArGwTAjysL}BE*Fa!woCvf>i#Kl{Oa6zA+S@)F{-yV$axls~;jKX2;r53(&`o8Fh zd<>`;Pee2=sR2hZ{l>>_1g8i0i!KZ$Axc#-EQoJ)(q0si3pJc^`|sh9JuHmgR0-YgA^r^4rl-nr0~^Gr@=DA2SzpifPpb+X289SX2n?ZzrisnS z5oT%q%&hq@P@Kh>_RUvbzy}EY?-u-{8rHq&LoYUmUJF;3mLh;|X4-gamz3}f#QZLFe6pj^L`Zn{xO(9W zZTJ`@JYD^r5*=>UYh+BT?HO~ez-T0?%!BWbFF^DFclX`xS@h`g#L8qI4wUE9uLVH` zhYWChZcBzj(CM!TW-gF;VQhkf%nuUD z7oy=*9B(}pk*DAw=}koReEBO|1&X5TMePueN=!z1kgz*^`dq-H`$PR;{7zo0G2gnZYmf#dc;zG-Q3d1AhVF8TZ?A?xFX&TJ*g;7xx5t@7l*KKdZK!r`*_0JpU7q&vmrelYTwKFzsUo@4zIJ$ z@O$Q4{V{V_^>PoYwAq7S_2{`|?qXqwhV^AMs`f@#Af|nChYTkSnS5=_yWv$XgV)UzPt6OyN zZr^-(2V1OR8!=<)yuGwE-g(a_?>Q7!&B013=?|8U2KL0;zUSGTqP`s?)2fH)IA}i8 z;1F5-ewQ`HV=XJ+@YhKrW zzV$B;&(5zqkB^u2o&JVCQAb7nN+Y56>jD381m;!T6J8x;R58acsDquF>?h3Sl@%Y$ zpT10xFOR(x=j{hDxOjNe1x_~#-2FOTzlSK+T@G5Ri~_TECU0*!+Mg;mx^*3(YkhuB zPv3q+@QH1&ssf8J%cbc+l8tbrV0*<&DV&R#M8l_+QZh0z0jE!5mbSH}hb1j1k3Yao z6Gqn6;a4^kMhQSoLxxSkl!!BED!HdlFzE0*;HTo02pExo6Win+jsH0x^^q4kDPN2k zkV`mf9_50@Tq0ERX7BG*7e-gZF;qz+R^%9vr@lFEowIC6Pb!Xj&^fN(0w6FdWhZc? ziw&#+|oJ z!+(T?gpD_A?tk+0C2wN3JAo1ld{nF2gZ0OA_Di`e75ZZ)N-N4iW`pr~|NCCDeyID# z6O%jo=$XsLJO069i#u`qd$hkeSNdFc+xH{Y)vNIpavbnrR6W-{tj6OK`dVy+3>Sf$ zQHRfYJTz=yom8mR>{773$Ds|%(P2XIzyKUvRw1XUq^B1FX5dnz`WmroHg z>$G4rSj1D%6TSbe(8)^b!{a2jx<<|F$;+SrD>?y7z+-_0od@ivTD(y)2q)vQq>pdH z2tPU%jrid*=r=>&;EXPC|8|O*Pty1&?3;=0*N;o&vuP}kH8>nELvb0?uo0=Iq^~Pa zqa|qsn7lTgkQ0mP+S0Gi-z*x?zz=ha9ix||u;Lb2Z?k8=W3Iof^Vf|!iKe8cItgBP zE7Y`ONTylK*_qdcr~!Qg@F?InPNCb=u0_K+PDj=A1kUU}&9-)Ir{2!=^3myZxehR z=t#@7ioSDVj{|Pg9bMiVH}+*LQTO+5|Ah81TfcBbLpnZFu2h@LvHJTpVDr-j=ba3bF7g0jF5z48#%9xBa0>z{qi}$UTP@hL z1Gdp|N2<22&e-v?asF;3iK*|x?-)Zzkq^Ye#ujO~?oFKKd(Zpp*Dn%Vb1_ zo|k{@SLN<&F@Td@|F(@)(EyC!LEGZPvMnw#G4o=_(GNVpPTR|eG8L289RH)4aSZv%c;T2 zk?yTKTnu_e$<9$OF%c1P0*{kDfYgn8YGozN`U{OBtf-s|`+S8k;f2RbnO4I&N7Jg(!B9GhSvh zDcwQB-8~umJTOr7bq~;;v_4Lc12Ct8W!hM#)Z!J0+5y0Kp>_4gKaX)|0YGH18PW;w*1uaNT4%8Rl zQ#gUk%^smBJf{!M9Kw$~;f;`N7g^f(yY!D-N)gK$YhZGJ#i_rbY3)md5H01N5YB(J zva#yzeUw1UVTj9WghQ1z>xRgVjl?8b`aZ9p$EeeYI;0N2Brjz)UM+F|PaQJ4W`dVk zI+m#a^t2XH&bXXBRyKctR}X2i-j2mO61qs~GV-Lj1V$E#Wmtq@N#k7ZXAxvky6E7o z=PVxpyjw`BrqwjWZ@#&Z5ERck{z=p*Bs#3OtJnl?u7t}?>!K}S>LFiSTWd6X;g!X1 z>WQ*0pTcA4QbCoeXgX6c234WGSOe13_w;07f~o*OkB#^Fj-5Tt`h(PB-UD1h!9dHb zC#3qeSNQU_a~q%IgzU-dMtKVK#@FfwV}KSbQ%H~6p~V2X&Zt;IUNpje9(mxk*(v&c zqY6VhhCtH6f!M;r!f1sHc+jS$rLk~v?X#0&DY2f$$lecRwRvCNIlSV#T`UteS0sJ4 ztUL-C1uG2~41fAO*g-G@z-HkS80d#rmZhC9<3}1YQ>EwJx&_|N z2mBj-w1xks*?R7889E1q@6lc>KHfN2-A=}Mq}kQ*4hV!l`r3Fr4&&zUD8+Nm8Qw8} zvRBd2FuH8pJm;f=YwM*)I_C;Bp#MTwB>(%Dhm|iDS(cVnWpobpaQA` ziaMNH5IP0A$wd+`GA_AM461Vsqbc89R^hB(7f8&ryaxkvqx`bROc;;tq7w1;Dl%@~Xh*_;W@PyBEb4Qumfe@2Bp7`a;j}30(d>Ki@yHvo z&pvpfr&W>d{qFgF={eVdAjF9@1npq4-52KmY-WTV5%#8HynW&Mu5h5h8Zw~x$hx)F zE}c3~oIhgs)#R5c@Lo;H%8Kdh@VGKzm>d;H0Kp&=b+-|#le^zUJ zD!{MfVC}~Re7k4`UI+i$dx(D{Jr!hNAwh^eU;PWz@gcL}?Q2_h}Ee&d%(_&a2= zBA%2K+yS7yP699PxzdH)_M9oKKe^@95MK(%d#B-#7}$+GJJ&g2a3 z3_UFA1(kqKfe24Gk<2LKxd{=Da|l=|&be7=HJR`xG3p-+{b8}PvFV-DG|Uf~sAl-= zT%L-&enKtHd{awPIU&pmL)+dDKEyRO*0F-g-vCb3j{grcOlF6b^12VBG%BtPZ^iK} zhdA}2G}SmkBDZQE2wPOOe2y0CEFbud_lJ+(!9gn~QuiH(UpB8gZ91<~U8AE6ez!Z> zWa&fC;aK}-Zf@Aj&(nDQqI9XhurQ0w&@HoF3z9^>@Uw>YgvAE`uw6X76|j1VxikHE zf9x|=QzQ4nJ}%^_wZrf5yCiMBogUFy06@N#4X1QB>#BxzzJLn<9mD*~Z1EL|MgHL% zrGwb>%L5Q-NnR&~6lqKu8$?2PKJ`Pz^EriWC$egFWhE*!)XUL=JTvP~OxsKKg)cB>lRF9=4^R4gq)XlUqXB9HY}d1-0S zmy-o7pFse#n!X=ObI zoW<&BCL$28;8d!MiAsNU)D#RiSYK~Cd>{ave9!>`Rr<*cc9`by;v$(Sb1OsQs@ZnI z{)|V4-MC*d2>^)a#(TWCdm{o^t{(5j6t8vJ`T2DhTMWSSG3AmO=C&of09zfvS>Xd4 zK&o{XypN9HdqzhQ{caPob2pMt+!O;2D&YPOl)js&sCRF%SXFXa8G9p;LRxg+GVVjf zNc z0qeoEFqpwCe#A9p5`@mei5c9aG`@`d;X=xRM5p%Tl+27q4{+s*-<^d`@Z&HwQD#2~ zx#66~f!nII6N+Ch4lHT9Y>|38n`aib-VFs&n{iBVq5qHE&m`{fG=97rk|zvd?$(vn zeOn=Db>9#&tHHk2y#V4G$b=NBDRPR7(EtbLl(Jm}dC&yLomoW8bZ0fg>#e2mz~dso zMD-?dPvcoC+W_8_Y)~1!xgLZ>L{e1gb9fad8--xp2Zze?+KOL(Kel7#dck5-{7!O(-tY&Q5tXVcT@naTx?B&9H266S)X);u5 z%0FRM<$~c=jOA18{|jTtVIxY6^pKY|QijNYNb2iifEkV7*9Yl&-8{d@@QOrK4R_k% zhtmG$Kqc!Z${`39m9*v@00Z0=z&ES&@Dg1TCyk=YVRR60?;|PBacmMPby_Sqb#!$n z7m}GpPVn&@my2!dpt~j~S-2e5@kU&vz0=)HuF0j<-SW4+O^l3C6B5*{0K?)ou2gvw zApPS%eXth1m5$NhZa~SI_3gWK9c;tduQT5WlWZYcv$+fk7 z!JKmKHax?p1YxFPas@T^SE=@>DsYZVBVx~8R=`;Nsd4l5Cd!ftDEIN$K`*Rd{z zPQ+=a_A%@eAw69ciphm!4%9tZguXdX6qCWMcViI{_;q!~$^gJUH)#jPR#vbvXJSCCaLN1H#gcr(-w`H)ORpE{ z9CX09)BL`;blSnND5Owcd0v+dX#f8>-)6<%M)g3Vues1H<;-klDU8a6!)dEQDZh~=Emq05iq`3Gi z=xX0`h66zMO$1^UD5v1VwjcLFgANg`g3BvWJL2M#tTV?1rLc+Ni^CRE8^Wk`EIVbq z`BS5kWbLq|ho`gnF9DVBv)Bn^1&~D!Rfw;v(t+ds++SnwVeEV`i2Rz7BRMadiJmCPw zJUTu;nCMr35-~ymBPCNTUN?}YXxaG%qQ(xDu1BiVI1L)T0L~tlO{J~q@@vs#3>>wp zE#`8GougJg!~j}>9&|i(mkU8|H|D97l4Ae{_Y(xkzJYiF635z0UPHxBfa(-;h6_vg z>gd;|IjtWg1DK<}4(>wO{kWfx8!8U?mb8Kh+wyk0S$XgMR7PR30~K;HV$XQ1f&PAH`DgRonJ^kL z&*fGj*OBTqt%H&ZC9x-LBP#hHwGEo-LAjksw&9+Y0+zv%{@(YeeQWL;YR~+`yjfn) z+5nRdfpYcqg~?Oo*`ee$JS#2jr!`*IejZ$+tTfq^mIQ&hz1`%|ku?Fo8zKNS7L^u* zxdfxum{Vd+9EHO;swwvbn=e&saXF=zsov9qA%ZN#QW6;H5$MzZGiI}iRjrLekC*&< zmfc)n)W6BYMX(R+7i@`IWZlhz!7@f6-xK^5X-m{z7i7t@31#tRR)UOFAWeZiP=YK_ zosIUeSjzgLtmR`g=SJfB`T25mrejL1&F{^N0WJ?DPnFPk9XV2WFDxysWb{JM-~GS> z?u5|%LX~l|n9@A?g2|hzAdaIt)G4HCUa2{Od**=_wfdn?p`}evtw$PO zZevUh1(zr_*Rd>^YNQ-FKmXWwm?6GSG8(oD3FRziNq{1FO=GZD(?C%T0633BN`4wF zhHhY?try*XysR?aZX)y$8SE73Lvb06AxA|7wdhfe;!Mtoj!1 z8KFkz8F%KfVddnYvpQ<$OZpI;2L!>{EwC8jMi9Wz2Pva9lVyf?HdXdJF+tWElf<*c z$)s$XreuMl^&fVNIs_iHz>IzYS)1oGk#MDDWnGdu_M>Q{fW&wJ7|bKva6t9;zGx6# zixaJVnXr{}Wq8?zKYI0a&%LJgX@W^r);r9ZRK-{>AVEF*92gs-8FIe_+)2FFd`s<#ev4F7Rt=E99~=( zKD}_s%1UB~v{Q_P1sQ2I3P&^x-f29_ z*t37$qY6P#l9$#R1{X$Uu~IJLN|1xO7nAnK@z#H~3LVhXiUTk7mif9*D8<#))kG9v z0JPnjFrv)=;ER5__`pgbhwy0HPWIk#reGP5pPPlIK|_%e6+JP4MHP#aKca?mC!qd$ zF>UzIBm{*N()G@@Pl2u-Dzf3YXb@4YiI$Q_NwONp*SJ`Xa3>dBl2$pdX#C|~lh-%{ zXBJVBE7<7_Crz}dxVTGN_}Q3Ydeo9I7`XTRzzU=JRR}F@Cok8wPgVqS14t@H$I^)O z$d;59R_oXAruN>OiA$>6+A z3?vV$%Cw7MiCAw3)#`X-60)nAYJdnlYXF<=0nYX5nt zWr!Bps!|!7UD07MraA2hIl9f_cuN^g%1!E=ZIG;^6v?_Inp!E$-@nu>?0-AL4B-iQ zoqIXw4xEuN@q__%uO3LS%TLzR(;&U9v(?z~y=cNP{Mhe^bgXN1B3mMD^3U=K-(0D( zONlV+wL(77)1s3{?TK6Rh)YN`NR?IsXbr%y2;9)XGLI8myUBvZPKNEZ8XvKbr2VBY`P<-yHG;@2)_-=x+R~2aE`I1kDC)~1B7976 zD5Q%eiFiBqLIxr{XuOy*xZS;SX7P3dPT=6P!XiIM{;?S!l&>8UAL4uogBNkR5%{N5 zhwlAw)&rojQ*&Po8M~_)&^oZ{1rWjdabs*PzLEv+@)BUpP$sI*&L3Vh#KdI5D$~4y z6@e);K#Rd1pPcwW#qN;Eke**`fDe8-al(1)fc4WK=Qmm5ia|lLHGS#>*4Z$ovfwr~ z7*)p^Sy}Ol)a!i$md+^t$UrP|SLTJErpg{fPbUlFs@KWbVvPea5QA~G>X=sP)crw> z`$ec7!vegxnNME+*T}HsRRabHn$rju`uoUrBF#qIFW!{2wBF54l5v0#IBLj3jFFIV zE>vW$ZIsa^@_v((Xfj7@TV=Om@dcYK1fQmpH-#LX2sae0F2+5Ngd0)Cx6dhWGBNV^ zBV+Zl^Z42wSh6)JB;z(o5SkOzgz88@*&+$SD1F+7E~cksBwJL3Q*x;W&R)w+&%yU< zTH$X5YH`1a!1@y*0baV7bwFFHVGU)9f`VfDa-S(_J=~L4>Im$ezaRbHZjn&LJv%!~ z;bv}s#UsH62fUnVl2j@3RKF_AMsX2Rp~EqxRAd_<1!!zcEahQ*rTHU<*{YGSA~I{RGG1!8HI@itc0$nAyxNOKL^I3h!+n%2F=c9ViOwl zK+N4vBz?JvoJ$Qpxy@42s_u_C7K|L|%=vmQ$8%WHzE-aALpdshg2CYP;2;qSRYwA3 z+0^u`SXydgy5USTs*`B8a|G##%j@lT3IwqhNFGe_;^52Xy^_s_Riat~{EUO$?y^>; zzuD$1^;e6gu|vOvpw3AlPv$eBWob1kcqL1nUu`Se$}{KXx&|+0JR0R-h3PfRC*An2 z?J*63NF=~O4Cm($DsodrdI$iXx3ZcXf!+yAOT%MeAQLVQc)U{MtXN_Z%ej!7%x|hZ z$xAXdr^Nr3#9b&vAn2t||Aim)Pp3-24?!&GVl_+iLl&Zk#c_m@8*rm)sr6BEBK}-Q zxVOJ#%1{XO=xr5bQUG2vw7Kt0ATf{%Ex~P|s(2C?Id3gbuU9I2j679PyQ!}X1^VIn zIW(zBdS|^IPd$y`ek}1_5PmzP2d@KIxKAq;4Hj?<4EA~JCw2$ZohA5E>HToN zc*57hH#I#?P+A6_%g$}Lu6iq^uu)wUdS^+nuTMWMu8(D&xVJ3gti3eG_g)qQ%(BOyKa9s+!p48I-J(X^vEiS8LW zUh*Kf9MK|(dwcT(_)bhAvy>~greRk*(oKQnxq>9{=Renj4^{)!$jC$knja4fmDV@d zWhVex|4Q2bQIf%+RmQoHzs0jN<*&Jg=qI86U7=RY>m z-iFK1+ou7yww#4hJ%3TH>aW31Ad4+{o?g%ji%4{uKB(X9F>;5e+*5Oo603v@ix`zh zJ~gh-cj-I!lDx(=QfL(>Tz>0vi(5xz!#Z8-M6wJ;rPB_Sl@*OZgvMB zueW0CwNa&Ab$oNRva@9z{Kbufn#jf83jx*zkoN+kaSr#|GgDLh8rt887wcTO{T_R= zjlO@^J86eP*x!L5_Aoqs#emLmF=KnaIB2aD!*35WTt}CUp&Vy*er=RF(oBRt&R-$gUYZam=jTXRM`aF1@KX~go|EDzwze+%nVFB1FdG-v78I9P zjW8tl3LTd(+2U;lRPKk9#(=#K4@}gDZrAQEW@zYL8_mK$?dT}xW|{{h$m^teY@cfk zV)~&|U69=#>F>CWOfd)ctGw{#pAvhKTJKE0g_SJdH`)nz@Ob}%srbA^89wTXCRi^L zSz-bV*sWU zc>tmBig3yw*%&Lon*_i%?n=H*VbiG^rA36SwlL72SRB$)6%up)0*~MhCdmYvdY5?E zuvM+qVQIzxIBIYt(Xky~F`U5?eaugA;_ z`vunt#>~!lq`Ne(H?L_HVpc`=-5%1IL;HxE*o`{@A}M#p#^9>rSl%^c?Xx86N&&~X zEGC*V*Cqo_m3Mu~CJzj*_XO@2>x4SBfC1d-!`pnIxX1ICHjbcR)Ydb*vxmnu^)Q~X_!S*HfENxdbSJM!8CwG;v-}U- z*TZfmRsxpO@ElOYmjhwJY;06{%62a%;d!&aRXd~D z_p6sEP{3}A1(m{L-`5E6s#2vkTbIsOYK%K_OrRv2h`quFGcR!Z?IN5vv zd5dPB;DfNtXh#M(F6K~qn#8jKk^aLjWVlgOzxi{Zbk*SabdsG_0(Sw3H6V(q8Ft95 zwUD0_azW1p>vM7Se-<==(E-lYB4)R$-D3YmlVKtu-KA`-MVFs5Ww`c#(Q32c#AZAd z1u9Re(~(yQx|rkGoTfGPx2=qwKp5iTktjh{-VnprYoUMoH98~wZ;5IeTNuP2H1E$2 z?~43a@E`)gW%{3|oEb1U3@Nb{??c3&qv~ReC<@Q# zFo0U#a4!=6^X+A$b7n#ys$s*e6q`9w73iR_z_i%S*s!WjFhd$QrqlT1y)iJgZcui@ zd$3sLOI=U^=!UESpbuDA&S~mLlvXrX6Syg{9mdLhw5YkdMK%XMzHfVp)xrYb+3=9r zO;Xw8UfaV~jC;HI$kZ4MB7;sX>V@w_%hmmgeHXyg-+sK>Ny*571e=^(3~z4co1LHi z)7D0~wx(}R%?k>S^PI@Mm}UZ9J)gW>WnQcY{kp|+bT{W605+ir4{XL_rBD@ zo7W>7p@0edCXin;ckf3`AP}>(qFjO)#}26Mzs zglk|g1)OMk+;=gVq{~lHR_a+ z@7qLjr|7p}QW8%HeO@?L7G-$a@Q4*?e`v~hfvy#C^Nc{pth$dPL^jc}?ECUa7DJiK+V1=0yI(be&^&o18#+N(#*Nf^@5*jJvqygt~(h2rD;eHXLz=Q@lVEnkmeBO6Ob}tqM1$^JRU-thZQ6kl@uDn_8 zOUOXOjq_fyk%nFXpkJ_M1r_c zpA7S)%{YLCw8__mTYzG)Se^g4s04b#MztRIx*2P@WH$Ven)(tg3m_Mt26`3#Z-!2f zm+{+ZsGC{6m@X;JOwR1b;r^^Q*CDj0s-Alk=tB>y zhdXew|FPra;iA%g!*k;UxGVu^5?l>V z)>u(8i>*IZ`P&>8CIM!*_dE$ERSpYm;MZc*TqgbfZ{Az&)fTHA)bgFY^tnV<$d-Yz zmW{}I>bS_ne7_bRE@IopQGT%s+|AB(x0Gwa?&yKi6P{lBF z{i;v!PwH6Rv-(6l+|o8yU)ABS&pPCJR9jz%-9CREl;6$j%{Tm)9D!&57a?HDPwesG zU8m3hye|M3^bLUQUqR|0yxU;;|8u@ls;g6;;kaslSdTCtN!o27z1$)I2zY)zJLwyA z!%s!aEbQ#jS63M2ys9`7uV$(Ry*s>7Y-k9>@nbr;hr|KaxLVa_tRQCUa<(lga}_xX zbT$bn77RGRiCTE)YM_UgS+hMO8`5bfdhxtLdRp#ekq& z|Gf{Vn>Te|>Ogfhxt-Tl$Mv8!k2=QD7teoVi(yTv&iO5)d3N1cn zgTR6NxgWy;qC=Z2$nYhqqx<3f2~07A2dzy>gNmh}m7hPVya`Y$iBvW!7exY0mT|-Tk_4I=KbeV$@edm0iwPZMm=)#{rWK7-QCjNARU5qcbBB3O6SrDA|c(2G{TqeknTo6Iuz+{-kab1hch~ZJIwC0 z&vWi`KG$^u)OK@3^k3OBJ13xII5a<7+|D5HQE;{WK<%Zcw|8}#Y1zA6Sd(%!j~j4I zE6nf(D{NaL2J1g~MIs}KRNVGn(RL_{RD4?mOoJ~)I% zpPst&|BKj>`^XV}V+wOaVWfXHpqz>f&9>MZutvb%r{~1}bXMNp$<@V_H z563yB%E?q3?tU<>)w;XFI}HSte2BD;J&Tvf#BF9&(OGho>KmU#-c}FJ2i}N?NFH$Q zhNJsUf(V%PK>V#^m{B77sn1v?h)R;K`ksHV;Ug8!3K3y7Y;#>1F3m*Hv0w}@AK}RF z5Y}wUsAyW5p%Onf;o=bw=hoC_vDa;i!zqc#91L;)#g*8ewlKe6(Wn5j_A}_2^|CTA z_YxHql{e-%!*(YY{>GsGdWnr&fdHXFn>P>WlL&GKEJMNHaX~vD4NV(7(F6rwHg<1< zIe*{Ca)af`4GwR*N}b@I_;bO1pra#MXUp?~_fs>m+t4fGt$yhC|(J5lhvKN)6w{loW?CEuIG+Ke}Lu;ZF6rM^~}v0MnDdQiGM z#QO13{+rcIMCc>s2luBlCvR_r_5hxp4jKw&uUKLPOYr@TOrRL*l!P27Zs68j!{
;Qfmy5M+P{k_ts~j(}&_Quo(*= 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 UNun816yT4doT_ZKw0X$?02kT5!~g&Q literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png new file mode 100644 index 0000000000000000000000000000000000000000..95c93f12d3c718d4d6c1f9d4bab78eeac5cfc6a9 GIT binary patch literal 392125 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