diff --git a/_assets/vendor/pgn4web/CarlsenSvidler2010.pgn b/_assets/vendor/pgn4web/CarlsenSvidler2010.pgn
new file mode 100644
index 0000000..204812c
--- /dev/null
+++ b/_assets/vendor/pgn4web/CarlsenSvidler2010.pgn
@@ -0,0 +1,88 @@
+[Event "Wch Blitz"]
+[Site "Moscow RUS"]
+[Date "2010.11.18"]
+[Round "30"]
+[White "Carlsen, Magnus"]
+[Black "Svidler, Peter"]
+[Result "1-0"]
+[SetUp "1"]
+[FEN "8/6k1/1R6/p2pBnP1/8/8/r7/6K1 b - - 6 62"]
+[VideoTime "0.6"]
+
+{ associated video originally from http://www.youtube.com/watch?v=HY3SM3GKjd8 }
+
+62... Kh7 {[%vt 3.5]}
+63. g6 {[%vt 4.3]}
+63... Kh6 {[%vt 5.7]}
+64. g7 {[%vt 6.4]}
+64... Kh7 {[%vt 7.2]}
+65. Rb8 {[%vt 7.8]}
+65... Nxg7 {[%vt 10.1]}
+66. Rb7 {[%vt 10.9]}
+66... Kg6 {[%vt 11.9]}
+67. Rxg7 {[%vt 12.5]}
+67... Kf5 {[%vt 14.1]}
+68. Bd6 {[%vt 16.2]}
+68... d4 {[%vt 17.1]}
+69. Kf1 {[%vt 18.1]}
+69... Ke4 {[%vt 18.8]}
+70. Ke1 {[%vt 20.1]}
+70... a4 {[%vt 21.3]}
+71. Rg3 {[%vt 22.6]}
+71... d3 {[%vt 23.3]}
+72. Kd1 {[%vt 25.6]}
+72... a3 {[%vt 27.6]}
+73. Rg4 {[%vt 28.4]}
+73... Kf3 {[%vt 30.3]}
+74. Ra4 {[%vt 31.2]}
+74... Ra1 {[%vt 34.6]}
+75. Kd2 {[%vt 35.6]}
+75... a2 {[%vt 36.7]}
+76. Be5 {[%vt 37.5]}
+76... Rh1 {[%vt 41.8]}
+77. Kxd3 {[%vt 46.7]}
+77... Rd1 {[%vt 47.7]}
+78. Kc2 {[%vt 49.4]}
+78... Rd5 {[%vt 50.6]}
+79. Bc3 {[%vt 51.9]}
+79... Rd8 {[%vt 54.9]}
+80. Rxa2 {[%vt 55.7]}
+80... Ke4 {[%vt 56.6]}
+81. Ra4 {[%vt 57.4]}
+81... Kf5 {[%vt 58.3]}
+82. Bd4 {[%vt 59.2]}
+82... Rd7 {[%vt 60.6]}
+83. Kd3 {[%vt 61.4]}
+83... Rd8 {[%vt 62.2]}
+84. Ra5 {[%vt 63.2]}
+84... Kf4 {[%vt 65]}
+85. Ra6 {[%vt 66.4]}
+85... Kg5 {[%vt 74.9]}
+86. Ke4 {[%vt 75.7]}
+86... Rb8 {[%vt 79.4]}
+87. Ra7 {[%vt 83.5]}
+87... Rb4 {[%vt 84.8]}
+88. Rg7 {[%vt 85.8]}
+88... Kh4 {[%vt 87.5]}
+89. Rg8 {[%vt 89.3]}
+89... Ra4 {[%vt 90.2]}
+90. Ke5 {[%vt 93]}
+90... Kh3 {[%vt 94.4]}
+91. Be3 {[%vt 95.8]}
+91... Rb4 {[%vt 98.4]}
+92. Kf5 {[%vt 99.7]}
+92... Ra4 {[%vt 110]}
+93. Bf4 {[%vt 110.8]}
+93... Ra3 {[%vt 113.7]}
+94. Bd6 {[%vt 120.8]}
+94... Ra4 {[%vt 121.9]}
+95. Rg3 {[%vt 123.9]}
+95... Kh4 {[%vt 124.7]}
+96. Rg2 {[%vt 127]}
+96... Kh5 {[%vt 131.7]}
+97. Rg8 {[%vt 137.4]}
+97... Kh6 {[%vt 142.3]}
+98. Be5 {[%vt 144.1]}
+98... Ra7 {[%vt 145.7]}
+99. Rg1 {[%vt 149.4]}
+1-0
diff --git a/_assets/vendor/pgn4web/KrushKosteniuk2010.pgn b/_assets/vendor/pgn4web/KrushKosteniuk2010.pgn
new file mode 100644
index 0000000..563a1ca
--- /dev/null
+++ b/_assets/vendor/pgn4web/KrushKosteniuk2010.pgn
@@ -0,0 +1,95 @@
+[Event "WCh Women Blitz"]
+[Site "Moscow RUS"]
+[Date "2010.09.18"]
+[Round "30"]
+[White "Krush, Irina"]
+[Black "Kosteniuk, Alexandra"]
+[Result "0-1"]
+[TimeControl "180+2"]
+[WhiteClock "3.02"]
+[BlackClock "3.02"]
+[VideoTime "2"]
+
+{ associated video originally from http://www.youtube.com/watch?v=EUEypIgynsk }
+
+1. d4 {[%vt 18.6] [%clk 3.03]}
+1... Nf6 {[%vt 19.4] [%clk 3.03]}
+2. c4 {[%vt 20.1] [%clk 3.04]}
+2... e6 {[%vt 20.7] [%clk 3.05]}
+3. Nc3 {[%vt 21.3] [%clk 3.03]}
+3... Bb4 {[%vt 22.6] [%clk 3.06]}
+4. Qc2 {[%vt 23.3] [%clk 3.05]}
+4... d5 {[%vt 24.2] [%clk 3.08]}
+5. cxd5 {[%vt 25.2] [%clk 3.07]}
+5... exd5 {[%vt 25.9] [%clk 3.09]}
+6. Bg5 {[%vt 27.4] [%clk 3.08]}
+6... h6 {[%vt 28.5] [%clk 3.10]}
+7. Bh4 {[%vt 29.1] [%clk 3.08]}
+7... g5 {[%vt 29.6] [%clk 3.12]}
+8. Bg3 {[%vt 30.5] [%clk 3.10]}
+8... Ne4 {[%vt 31.6] [%clk 3.13]}
+9. e3 {[%vt 32.4] [%clk 3.11]}
+9... h5 {[%vt 34.3] [%clk 3.13]}
+10. a3 {[%vt 36.8] [%clk 3.10]}
+10... Bxc3 {[%vt 51.8] [%clk 3.00]}
+11. bxc3 {[%vt 53.3] [%clk 3.11]}
+11... Bf5 {[%vt 92.1] [%clk 2.23]}
+12. Bd3 {[%vt 96.3] [%clk 3.08]}
+12... Nd7 {[%vt 108.5] [%clk 2.13]}
+13. f3 {[%vt 119.5] [%clk 2.59]}
+13... Nxg3 {[%vt 121.5] [%clk 2.13]}
+14. hxg3 {[%vt 122.6] [%clk 3.00]}
+14... Bxd3 {[%vt 124.5] [%clk 2.13]}
+15. Qxd3 {[%vt 125.9] [%clk 3.00]}
+15... Qf6 {[%vt 127.9] [%clk 2.14]}
+16. Ne2 {[%vt 137] [%clk 2.52]}
+16... O-O-O {[%vt 138.9] [%clk 2.14]}
+17. c4 {[%vt 147.6] [%clk 2.47]}
+17... dxc4 {[%vt 166.3] [%clk 1.57]}
+18. Qxc4 {[%vt 169.6] [%clk 2.45]}
+18... Nb6 {[%vt 170.4] [%clk 1.58]}
+19. Qb3 {[%vt 180] [%clk 2.38]}
+19... h4 {[%vt 191.9] [%clk 1.48]}
+20. Kf2 {[%vt 204.4] [%clk 2.27]}
+20... hxg3 {[%vt 215.1] [%clk 1.40]}
+21. Nxg3 {[%vt 219.5] [%clk 2.24]}
+21... Qg6 {[%vt 224.2] [%clk 1.38]}
+22. a4 {[%vt 271.8] [%clk 1.39]}
+22... f5 {[%vt 276.4] [%clk 1.35]}
+23. Qc2 {[%vt 287.7] [%clk 1.29]}
+23... Rhf8 {[%vt 296.7] [%clk 1.28]}
+24. a5 {[%vt 308.5] [%clk 1.19]}
+24... Nd5 {[%vt 309.1] [%clk 1.30]}
+25. a6 {[%vt 320.8] [%clk 1.10]}
+25... b6 {[%vt 321.6] [%clk 1.31]}
+26. Rac1 {[%vt 327.8] [%clk 1.06]}
+26... Qe6 {[%vt 338.2] [%clk 1.22]}
+27. Rhe1 {[%vt 363.2] [%clk 0.43]}
+27... Rd7 {[%vt 365] [%clk 1.22]}
+28. e4 {[%vt 376] [%clk 0.34]}
+28... fxe4 {[%vt 392.1] [%clk 1.08]}
+29. Nxe4 {[%vt 393] [%clk 0.34]}
+29... Nb4 {[%vt 400.2] [%clk 1.04]}
+30. Qc3 {[%vt 407.9] [%clk 0.29]}
+30... Nxa6 {[%vt 416.1] [%clk 0.57]}
+31. Nc5 {[%vt 420.8] [%clk 0.26]}
+31... Qd5 {[%vt 432] [%clk 0.48]}
+32. Nxd7 {[%vt 446.5] [%clk 0.13]}
+32... Qxd7 {[%vt 448] [%clk 0.49]}
+33. Qa3 {[%vt 451.4] [%clk 0.12]}
+33... Qxd4 {[%vt 452.3] [%clk 0.49]}
+34. Kf1 {[%vt 456.6] [%clk 0.10]}
+34... Nc5 {[%vt 464.2] [%clk 0.44]}
+35. Qxa7 {[%vt 465.8] [%clk 0.10]}
+35... Qd3 {[%vt 471.3] [%clk 0.40]}
+36. Re2 {[%vt 473.9] [%clk 0.10]}
+36... Kd7 {[%vt 492.1] [%clk 0.25]}
+37. Qa2 {[%vt 496.7] [%clk 0.07]}
+37... g4 {[%vt 499] [%clk 0.24]}
+38. Kg1 {[%vt 503.9] [%clk 0.04]}
+38... Qd4 {[%vt 505.8] [%clk 0.24]}
+39. Kh2 {[%vt 509] [%clk 0.03]}
+39... Qf4 {[%vt 510.3] [%clk 0.25]}
+40. Kg1 {[%vt 510.9] [%clk 0.02]}
+40... Qxc1 {[%vt 511.5] [%clk 0.26]}
+0-1
diff --git a/_assets/vendor/pgn4web/README.txt b/_assets/vendor/pgn4web/README.txt
new file mode 100644
index 0000000..1dfba3a
--- /dev/null
+++ b/_assets/vendor/pgn4web/README.txt
@@ -0,0 +1,532 @@
+#
+# pgn4web javascript chessboard
+# copyright (C) 2009-2013 Paolo Casaschi
+# see README file and http://pgn4web.casaschi.net
+# for credits, license and more details
+#
+
+
+PGN4WEB: javascript chess games viewer for websites, blogs and live broadcasts.
+
+
+ABOUT
+
+pgn4web comes as software package you can add to your website or blogsite, but
+also provides a very simple board generator web tool helping you adding chess
+games to your website or blog without any html/javascript coding.
+pgn4web integrates with several popular web platforms and services.
+
+***
+*** THIS README FILE IS A SUMMARY OF THE PGN4WEB DOCUMENTATION
+*** MORE EXTENSIVE AND UPDATED DOCUMENTATION IS AVAILABLE
+*** FROM THE PGN4WEB SUPPORT WIKI REACHABLE FROM http://pgn4web.casaschi.net
+*** PLEASE RELY ON THE SUPPORT WIKI RATHER THAN THIS README ONLY
+***
+
+Project homepage: http://pgn4web.casaschi.net (including downloads and wiki)
+Contact email: pgn4web@casaschi.net
+
+Features:
+- display chess games form PGN files on websites and blogs
+- supports live broadcasts of chess games
+- interactive browsing of game variations and comments
+- shortcut keys for navigating through the game, for selecting games and much
+ more; uses chessboard squares as input buttons; on supported touchscreen
+ devices uses touch gestures across the chessboard
+- fully customizable display: each item (board, button bar, game selection
+ menu, PGN header info, game text, game comment and more) can be displayed
+ (or hidden) at pleasure in your html file
+- support different bitmaps for chess pieces (even custom bitmaps) and
+ different chessboard sizes
+- uses figurine fonts for chess moves and chess informant style symbols for
+ comments and annotations
+- provides a very simple board generator web tool helping you adding chess
+ games to your website or blog without any html/javascript coding (see
+ http://pgn4web-board-generator.casaschi.net
+- integrated with popular blog platforms (such as blogger and wordpress),
+ portal platforms (such as joomla, drupal and wikimedia), forum platforms
+ (such as phpBB, simplemachines and vbulletin) and hosting services (such
+ as google sites)
+- integrated with HTML5 video and YouTube video
+- supports Chess960 (a.k.a. Fischer random chess) games
+
+Limitations:
+- only one chessboard for html file (use frames if you need to display
+ more in the same view)
+
+Bugs:
+- no major issue at the moment of writing, please check the project
+ issues tracker at http://code.google.com/p/pgn4web/issues/list
+
+User feedback:
+Please email the pgn4web project (pgn4web@casaschi.net) your feedback,
+suggestions and bug reports. Please send for review any PGN file that
+pgn4web fails parsing correctly.
+
+Enjoy!
+
+
+DEBUGGING
+
+Errors alert messages are logged by pgn4web, such as failure to load PGN
+data, incorrect PGN games or incorrect FEN strings.
+When an error is encountered, the top left chessboard square will flash
+to signal the exception.
+The error alert log can be reviewed clicking on the same top left
+chessboard square.
+
+
+HOW TO USE pgn4we.js
+
+To enable pgn4web, add a SCRIPT instance at the top of your HTML file:
+
+
+
+The PGN input can be specified either as URL within another SCRIPT instance
+with at least the call to
+
+ SetPgnUrl("http://yoursite/yourpath/yourfile.pgn")
+
+and optionally any of the other calls listed below.
+
+Or the PGN file can be pasted in the body of the HTML file
+within a hidden FORM/TEXTAREA statement with the ID pgnText:
+
+
+
+
+
+Example:
+
+
+
+
+Please note, differently than when using the figurine fonts, if the user's web
+browser does not support web fonts, there's not elegant textual fallback.
+
+See the chess-informant-template.html and the collection-example.thml (chess
+informant sample) files for an example.
+
+
+THE BOARD GENERATOR WEB TOOL
+
+The board widget allows showing games and positions in web pages and blogs,
+without any html coding for each game, where the chessboard widget is created
+using a given HTML code within the web page or blog.
+
+Just go to the board widget generator site on
+ http://pgn4web-board-generator.casaschi.net
+the enter your PGN games and configure the options. The tool will
+automatically generate some HTML code that you can cut and paste in your web
+page or your blog.
+
+
+THE LIVE BROADCAST OF GAMES
+
+By setting the SetLiveBroadcast(delay, alertFlag, demoFlag, stepFlag) option
+in the HTML file, pgn4web will periodically refresh the PGN file, showing the
+live progress of the games. PGN files produced by the DGT chessboards are
+supported.
+
+SetLiveBroadcast(delay, alertFlag, demoFlag, stepFlag) parameters:
+ - delay = refresh interval in minutes, decimals allowed (default 1)
+ - alertFlag = if set true, shows alert debug messages (default false)
+ - demoFlag = if set true, sets live demo mode (default false)
+ - stepFlag = if set true, autoplays updates in steps (default false)
+
+If you set stepFlag, please note that the autoplay delay is set by
+SetAutoplayDelay(delay), where no more than 2000ms should be used for live
+broadcasts.
+
+The bash shell script live-grab.sh, executed on your server allows for grabbing
+the updated game source from anywhere on the Internet to your server.
+The live broadcast stops refreshing once all games are ended.
+
+Clock information as provided by the DGT chessboards in PGN move comments, such
+as {[%clk 1:59:59]}, and in the PGN header, such as [WhiteClock "2:00:00"],
+[BlackClock "2:00:00"] and [Clock "W/1:59:59"] is displayed in the following
+sections:
+
+
+
+
+The status of the live broadcast is displayed in the following sections:
+
+
+
+
+
+
+Clicking on the H6 square will force a games refresh.
+Clicking on the A6/B6 squares will pause/restart the automatic games refresh.
+
+The file live-template.html shows a very basic example.
+
+A demo facility is available to test the live broadcast functionality.
+If the demo flag is set in SetLiveBroadcast() and a set of full games is
+provided, the tool will simulate a slow progress of the game. Set the
+proper flag in live-template.html for an example. Please note, even during
+a demo, the PGN file is actually refreshed from the server for a more
+accurate testing.
+Alternatively, for a more realistic simulation, the bash shell script
+live-simulation.sh slowly updates the live.pgn file, simulating a real event.
+
+The easiest way to setup a live broadcast is to use the live-compact.html file.
+The HTML file accepts these parameters:
+ - pgnFile = PGN file to load (default live.pgn)
+ - initialGame = initial game, a number or first, last, random (default 1)
+ - refreshMinutes = refresh interval in minutes, decimals allowed (default 1)
+ - demo = if set true, sets live demo mode (default false)
+For instance, make sure that the file myGames.pgn on your server is periodically
+refreshed with the live games, then add the following iframe to your page:
+
+Of course live-compact.html can be edited to customize colors, layout and every
+detail.
+
+The live-mosaic.html file has been designed in a similar way, while offering
+a layout with multiple live boards on the same page.
+
+http://pgn4web.casaschi.net/live/live.html and
+http://pgn4web.casaschi.net/live/live-mosaic.html will occasionally broadcast
+live major chess events.
+
+
+CUSTOMIZATION FUNCTIONS
+
+The following functions, if defined in the HTML file after loading pgn4web.js,
+allow for execution of custom commands at given points:
+- customFunctionOnPgnTextLoad(): when loading a new PGN file
+- customFunctionOnPgnGameLoad(): when loading a new game
+- customFunctionOnMove(): when a move is made
+- customFunctionOnAlert(message_string): when an error alert is raised
+- customFunctionOnCheckLiveBroadcastStatus(): when a live broadcast is checked
+Please note the order these functions are executed; for example, when loading
+a new PGN file at the end of the first game, first customFunctionOnMove() is
+executed, then (when the game has been loaded and the move positioning
+completed) customFunctionOnPgnGameLoad() is executed and finally (when the
+selected game is fully loaded) customFunctionOnPgnTextLoad() is executed.
+
+The function customPgnHeaderTag(customTagString, htmlElementIdString, gameNumber)
+is available for use in customFunctionOnPgnGameLoad() to parse custom PGN header
+tags and automatically assign their value to the given HTML elements. The function
+returns the custom tag value and the `gameNumber` parameter, if unassigned,
+defaults to the current game.
+The function customPgnCommentTag(customTagString, htmlElementIdString, plyNumber)
+is available for use in customFunctionOnMove() to parse custom PGN comment tags
+like { [%pgn4web info] } and automatically assign their value to the given HTML
+elements. The function returns the custom tag value and the `plyNumber` parameter,
+if unassigned, defaults to the current ply.
+
+See twic944.html or live.html for examples.
+
+The following functions, if defined in the HTML file after loading pgn4web.js,
+allow for execution of custom commands when shift + a number key is pressed:
+- customShortcutKey_Shift_0()
+- customShortcutKey_Shift_1()
+...
+- customShortcutKey_Shift_9()
+
+
+SHORTCUT KEYS AND TEXT FORMS
+
+When the HTML page contains the following script command
+
+ SetShortcutKeysEnabled(true);
+
+then all keystrokes for that active page are captured and processed by pgn4web;
+this allows for instance to browse the game using the arrow keys. If no other
+precautions are taken, this has also the undesirable side effect of capturing
+keystrokes intended by the user for typing in text forms when present in the
+same page: this makes the text forms unusable.
+
+In order to have fully functional text forms in pgn4web pages, the following
+"onFocus" and "onBlur" actions should be added to the textarea forms:
+
+
+
+See the inputform.html HTML file for an example.
+
+
+TECHNICAL NOTES ABOUT WEB BROWSERS
+
+pgn4web is developed and tested with recent versions of a variety of
+browsers (Arora, Blackberry browser, Chrome, Epiphany, Firefox, Internet
+Explorer, Opera, Safari) on a variety of personal computer platforms
+(Linux/Debian, MacOS, Windows) and some smartphone/pda platform (Android,
+Blackberry, Apple iOS for iPhone/iPad/iPod).
+Not every browser version (please upgrade to a recent release) has been
+tested and not every combination of browser/platform has been validated.
+If you have any issue with using pgn4web on your platform, please email
+pgn4web@casaschi.net
+
+Note about Google Chrome: you might experience problems when testing HTML
+pages from your local computer while developing your site. This is a
+security limitation of the browser with respect to loading local files.
+The limitation can be bypassed by starting Google Chrome with the command
+line switch '--allow-file-access-from-files'. Browsing pgn4web websites
+with Google Chrome should work properly.
+
+Note about Internet Explorer v7 and above: under some circumstances you might
+experience problems when testing HTML pages from your local computer while
+developing your site. If this happens to you, read notes at
+http://code.google.com/p/pgn4web/issues/detail?id=23
+
+
+PGN STANDARD SUPPORT
+
+pgn4web mostly supports the PGN standard for chess games notation (see
+http://www.tim-mann.org/Standard). Notable exceptions and limitations:
+
+- variations are not parsed as such, but stored as comments; support for
+browsing variations is planned for a future release
+- if square brackets are present in the comments (or the game text) in a
+pattern similar to the PGN header pattern '[tag "value"]' then the game
+parsing might break. If your PGN file is not displayed properly, please
+check for characters "[" and "]" in the comments and try removing them.
+- only pieces initials in the English language are supported, the use of
+alternative languages as specified by the PGN standard is not supported
+(pgn4web can however display chess moves text using figurine notation, so
+the language issue should not be much of a problem, just make sure your
+chess software produces PGN data with English pieces initials).
+
+pgn4web also follows a set of proposed extensions to the PGN standard
+(see http://www.enpassant.dk/chess/palview/enhancedpgn.htm), more
+specifically:
+
+- understands the [%clk 1:59:58] tag in the PGN comment section as the
+ clock time after each move
+- understands the PGN tags [WhiteClock "2:00:00"] and
+ [BlackClock "2:00:00"] as the clock times at the beginning of the game
+- understands the PGN tag [Clock "W/1:59:59"] as the clock time of the
+ running clock
+- allows parsing of generic comment tags using the function
+ customPgnCommentTag()
+
+pgn4web also supports null moves in the "--" notation (used by a number of
+chess softwares like scid and chessbase), such as in 1. e4 -- 2. d4, and
+supports continuations (defined as variations where the last move played
+before the variation is not taken back prior to the start of the variation
+moves) in the "(*" notation, such as in 1. e4 (* 1... d5 2. exd5) e5
+
+Please email me for review any PGN file that pgn4web fails parsing correctly.
+
+
+CHESS960 SUPPORT
+
+pgn4web supports Chess960 (a.k.a. Fischer random chess) and understands both
+the X-FEN and the Shredder-FEN extensions to the FEN notation.
+
+
+JAVASCRIPT CODING
+
+As of pgn4web version 1.72, the pgn4web.js code is checked with the lint
+tool (see online version at http://www.javascriptlint.com/online_lint.php).
+Plase note that warnings "lint warning: increment (++) and decrement (--)
+operators used as part of greater statement" are ignored.
+Lint validation should allow for easy compression of the javascript code,
+for instance using http://javascriptcompressor.com/
+Although a compression beyond 50% can be achieved, only the uncompressed
+version is distributed, but if you want to use a compressed version on your
+site, the pgn4web.js code should support it.
+
+As of pgn4web version 2.71 strict mode is used, see statement: "use strict";
+
+
+CREDITS AND LICENSE
+
+javascript modifications of Paolo Casaschi (pgn4web@casaschi.net) on code
+from the http://ficsgames.org database, in turn likely based on code from the
+LT PGN viewer at http://www.lutanho.net/pgn/pgnviewer.html
+
+PNG images from http://ixian.com/chess/jin-piece-sets (creative commons
+attribution-share alike 3.0 unported license) by Eric De Mund.
+SVG images from http://commons.wikimedia.org/wiki/Category:SVG_chess_pieces
+by Colin M.L. Burnett; licensed under GFDL (www.gnu.org/copyleft/fdl.html),
+CC-BY-SA-3.0 (www.creativecommons.org/licenses/by-sa/3.0/) or
+GPL (www.gnu.org/licenses/gpl.html), via Wikimedia Commons. SVG images from
+http://openclipart.org/search/?query=chess+symbols+set by Igor Krizanovskij
+and from http://openclipart.org/search/?query=Chess+tile both dedicated to
+the Public Domain (http://creativecommons.org/publicdomain/zero/1.0/) as any
+openclipart.org content.
+
+The figurine fonts are derived from the Liberation Sans font (released under
+GNU General Public License, see https://fedorahosted.org/liberation-fonts/)
+with the addition of chess pieces from freeware fonts: the alpha2 font (Peter
+Strickland), the good companion font (David L. Brown), the merida font (Armando
+H. Marroquin), the pirate font (Klaus Wolf) and the chess usual font (Armando
+H. Marroquin). The original chess fonts and more details are available at
+http://www.enpassant.dk/chess/fonteng.htm
+The chess informant symbols font is used with permission from the Chess
+Informant publishing company (http://www.chessinformant.rs). The chess ole
+figurin font is from the ChessOLE project (http://www.chessole.de, David Frank).
+
+Some of the PGN files for the examples are coming from "The Week in Chess" at
+http://www.theweekinchess.com (file twic944.pgn), from the scid project at
+http://scid.sourceforge.net (file tactics.pgn, with minor modifications), and
+from the Chess Informant publishing company at http://www.chessinformant.rs
+(file chess-informant-sample.pgn).
+
+The jscolor javascript code is maintained by Honza Odvarko
+(http://odvarko.cz/) and released under the GNU Lesser General Public License
+(http://www.gnu.org/copyleft/lesser.html)
+See http://jscolor.com/
+
+The SWFObject javascript library (http://code.google.com/p/swfobject/) is
+released under the MIT License
+(http://www.opensource.org/licenses/mit-license.php).
+
+The ECO code (http://en.wikipedia.org/wiki/Encyclopaedia_of_Chess_Openings) for
+game opening classification is a trademark of the Chess Informant publishing
+company (http://www.chessinformant.rs).
+
+
+The above items remains subject to their original licenses (if any).
+
+
+Remaining pgn4web code is copyright (C) 2009-2013 Paolo Casaschi
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+See license-gpl-2.0.txt license file.
+
+You are free to use pgn4web in your website or blog; you are not required to
+acknowledge the pgn4web project, but if you want to do so the following line
+might be used:
+javascript chess viewer courtesy of pgn4web
+
+You are also encouraged to notify pgn4web@casaschi.net that you are using
+pgn4web.
+
+END
+
diff --git a/_assets/vendor/pgn4web/_index.html b/_assets/vendor/pgn4web/_index.html
new file mode 100644
index 0000000..484e22b
--- /dev/null
+++ b/_assets/vendor/pgn4web/_index.html
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+your web browser and/or your host do not support javascript as required by the pgn4web site
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/analysis.css b/_assets/vendor/pgn4web/analysis.css
new file mode 100644
index 0000000..bf990ba
--- /dev/null
+++ b/_assets/vendor/pgn4web/analysis.css
@@ -0,0 +1,182 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+/*
+ * display optimized for a 664px high frame
+ */
+
+@import url("fonts/pgn4web-font-LiberationSans.css");
+@import url("fonts/pgn4web-font-ChessSansUsual.css");
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+ overflow: hidden;
+}
+
+body {
+ font-family: 'pgn4web Liberation Sans', sans-serif;
+ font-size: 19px;
+ color: black;
+ background: white;
+}
+
+a {
+ color: black;
+ text-decoration: none;
+}
+
+div, span {
+ font-family: 'pgn4web Liberation Sans', sans-serif; /* fixes IE9 body css issue */
+}
+
+.boardheaderDiv {
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ padding: 30px;
+ overflow: hidden;
+}
+
+.topSpacer {
+ height: 30px;
+}
+
+.gametextresultDiv {
+ padding-left: 30px;
+ padding-right: 30px;
+ margin-left: 421px;
+ margin-bottom: 30px;
+ overflow-y: scroll;
+ overflow-x: hidden;
+ text-align: justify;
+ scrollbar-base-color: #FFFFFF;
+}
+
+.shortRowSpace {
+ height: 15px;
+ line-height: 15px;
+}
+
+.gameLastMove {
+ font-size: 14px;
+ line-height: 20px;
+ white-space: nowrap;
+ overflow: hidden;
+}
+
+.gameAnnotator {
+ float: right;
+ font-style: italic;
+}
+
+.headerLine {
+ overflow: hidden;
+ white-space: nowrap;
+ width: 376px;
+ font-weight: bold;
+ font-size: 22px;
+ line-height: 30px;
+ text-align: center;
+}
+
+.gameNum {
+ width:188px;
+ text-align: left;
+}
+
+.gameECO {
+ width:188px;
+ text-align: right;
+}
+
+.gameSiteEventDate {
+ font-style: italic;
+ font-weight: normal;
+}
+
+.boardTable {
+ width: 376px;
+ height: 376px;
+ border-style: solid;
+ border-color: #808080;
+ border-width: 3px;
+ box-shadow: 0px 0px 20px #DDDDDD;
+}
+
+.pieceImage {
+ width: 39px;
+ height: 39px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 45px;
+ height: 45px;
+ border-style: solid;
+ border-width: 1px;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ border-color: #FFFFFF;
+ background: #FFFFFF;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ border-color: #DDDDDD;
+ background: #DDDDDD;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ border-color: #AAAAAA;
+ border-style: solid;
+}
+
+.move,
+.variation,
+.comment {
+ color: black;
+ line-height: 1.4em;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.move,
+.variation,
+.commentMove {
+ font-family: 'pgn4web ChessSansUsual', 'pgn4web Liberation Sans', sans-serif;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.comment,
+.variation {
+ color: gray !important;
+}
+
+a.variation {
+ color: gray !important;
+}
+
+.moveOn,
+.variationOn,
+a.move:hover,
+a.variation:hover {
+ background: #DDDDDD;
+ border-radius: 2px;
+}
+
diff --git a/_assets/vendor/pgn4web/analysis.html b/_assets/vendor/pgn4web/analysis.html
new file mode 100644
index 0000000..3201546
--- /dev/null
+++ b/_assets/vendor/pgn4web/analysis.html
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+
+0.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/bare.html b/_assets/vendor/pgn4web/bare.html
new file mode 100644
index 0000000..5796162
--- /dev/null
+++ b/_assets/vendor/pgn4web/bare.html
@@ -0,0 +1,88 @@
+
+
+
+
+
+
+
+pgn4web bare template
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Personal account on Kramnik and the Petrov
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Event:
+
+Site:
+
+Round:
+
+Date:
+
+White:
+
+Black:
+
+Result:
+
+Side to move:
+
+Last move: variations:
+
+Next move: variations:
+
+Move comment:
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/blank.html b/_assets/vendor/pgn4web/blank.html
new file mode 100644
index 0000000..6ccd82a
--- /dev/null
+++ b/_assets/vendor/pgn4web/blank.html
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/board-generator-test.html b/_assets/vendor/pgn4web/board-generator-test.html
new file mode 100644
index 0000000..519dac8
--- /dev/null
+++ b/_assets/vendor/pgn4web/board-generator-test.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+pgn4web board generator test set
+
+
+
+
+
+
+
+
+
+
+
+pgn4web board generator test
+
+
+
+
+
+
+
+
+
+
+
+plain
+
+
+plain and bare
+
+
+
+
+plain game with hex colors
+
+
+game with comments of same size as moves
+
+
+two games with default control buttons and sex colors
+
+
+game with comments, smaller board, comments on separate lines, text overflow and text margin
+
+
+two games, smaller board, comments on separate lines, text overflow, text margin and standard controls
+
+
+same as above, without comments, with horizontal display, frame height as board and wider frame width
+
+
+same as above, with one game only and with empty header
+
+
+same as above, again with two games, with header but without displaying it, with narrower frame width and overflow
+
+
+similar to the above, with encoded PGN, with nicer colors and displaying header
+
+
+same as above, with highlight move color as background
+
+
+same as above, with background color as transparent
+
+
+
+
+large board with colors, no buttons, font customizations with size in percentage, centered header and border highlight
+
+
+same as above, with two games, no moves shown and loop trhough games
+
+
+same as above but with moves shown, no comments, no header and no autoplay
+
+
+same as above but with custom buttons
+
+
+same as above, with horizontal layout, with header, frame width as page and frame height as board
+
+
+same as above, with one game only and with comments
+
+
+same as above, without figurine fonts
+
+
+
+
+tiny board, tiny fonts and centered header
+
+
+same as above, with frame padding
+
+
+same as above, with justified header, with frame padding and comments
+
+
+same as above, with two games, frame padding, no comments and custom buttons
+
+
+same as above, without PGN encoding
+
+
+same as above, supplying an encoded PGN
+
+
+same as above, with horizontal layout, larger move fonts, taller frame height and no highlight
+
+
+same games, with horizontal layout, board height and page width, centered header, autoplay none, initial game last and initial halfmove number
+
+
+
+
+same as above, enabling useTextarea (and setting baseUrl and disabling encodePgn as required by useTextarea) and adding non ascii characters as comments
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/board-generator.html b/_assets/vendor/pgn4web/board-generator.html
new file mode 100644
index 0000000..3414aaf
--- /dev/null
+++ b/_assets/vendor/pgn4web/board-generator.html
@@ -0,0 +1,2232 @@
+
+
+
+
+
+
+
+pgn4web board generator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+pgn4web board generator
+
+
+
+
+
+
+
+
+
+
+enter your PGN text in the green textbox below
+
+ keep PGN data short: due to a limitation of web browsers and web servers with the URL length, only short PGN texts are allowed, usually up to four games without comments; an error message shows when the max URL length limit is exceeded, in case try removing unnecessary header tags and comments/variations or try reducing the number of games per chessboard
+ by default the PGN data is compressed and encoded, with characters outside the 255 characters ascii set rejected and replaced with stars "*"; this might affect some non English text and names
+ in case of errors in the supplied PGN data, the chessboard squares starts flashing at regular intervals to signal the exception; detailed debug information is available clicking the top left chessboard square (A8 assuming White on bottom, H1 otherwise)
+
+
+
+
+
+select a predefined settings template and/or modify any of the configuration options , layout, colors and fonts
+
+
+
+
+generate the HTML code and preview your chessboard
+
+
+
+
+fine tune configuration options to your liking
+
+
+
+
+
+once happy with the preview chessboard , just cut and paste the HTML code from the yellow box into your web page or your blog; when entering the code in your website or blog, please make sure you are using the HTML editing option, otherwise an enhanced editor might alter the code you enter; you can also generate a short url for sharing the board via email, instant messaging or social networking sites
+
+
+
+
+if you plan to reuse similar settings for other chessboards, you can bookmark a custom template into your web browser bookmarks
+
+
+
+
+email to the address of your website or your blog
+
+
+
+
+if something goes wrong, you might want to click here and file a bug report
+
+
+
+
+service availability disclaimer : the pgn4web board generator on this site is intended for chess enthusiasts to easily add chess games with a dynamic chessboard to their personal blogs and websites; this online service is provided on a best effort basis with no guarantee of future availability; if you publish chess games as part of a professional site and need continued server availability and high network performance, you are strongly recommended to evaluate the code from and install the tool on your own servers; for more details see the board widget generator pages of the pgn4web wiki at
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+automatically generated HTML code for your web page or blog
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+configuration options
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+apply a built-in template...
+- reapply last loaded template
+- apply random template
+
+select from preset board generator settings templates
+
+
+pgn4web board generator custom template link
+add link into the browser bookmarks, saving current board settings
+
+
+
+
+
+
+
+game
+loop
+none
+
+autoplay games
+autoplay first
+game
+once, or
+loop
+continiously, or autoplay
+none
+
+
+
+
+ 1 second
+ 2 seconds
+ 3 seconds
+ 5 seconds
+10 seconds
+30 seconds
+
+autoplay delay
+
+
+
+
+first
+last
+random
+
+initial game
+
+
+
+initial variation
+a number; applies only at the first game load; when
+blank ,
+defaults to the main variation
+
+
+
+
+
+ start
+ end
+ random
+ comment
+ variation
+ custom number
+
+initial halfmove
+start, end, random and comment settings apply at every game load, custom number only at the first load
+
+
+
+initial halfmove number
+actual halfmove number when the setting above is
+custom number
+
+
+
+
+
+
+
+square size
+a number; must be larger than the piece size plus the highlight border if any
+
+
+
+default
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+52
+56
+60
+64
+72
+80
+88
+96
+112
+128
+144
+300
+
+piece size
+
+default
+selects piece size based on square size
+
+
+
+default
+alpha
+merida
+uscf
+random
+
+piece font
+
+default
+selects piece font based on piece size
+
+
+
+
+light squares color
+
+
+
+dark squares color
+
+
+
+board border color
+
+
+
+board shadow color
+a color;
+transparent
+disables the shadow,
+border
+copies the board border color
+
+
+
+
+border
+square
+none
+
+square highlight mode
+
+
+
+highlight squares color
+
+
+
+
+hidden
+standard
+custom
+
+how to show control buttons
+browser's
+standard
+buttons, or
+custom
+colors below, or
+hidden
+buttons
+
+
+
+custom control buttons background color
+
+
+
+custom control buttons text color
+
+
+
+
+
+
+text margin
+a number; header/moves margin, nice to have when text overflows with scrollbars
+
+
+
+
+how to show game header
+
+
+
+header font size
+a number
+
+
+
+header font color
+
+
+
+
+figurine
+text
+puzzle
+hidden
+
+how to show game moves
+select a game moves display option or use the one click optimized puzzle setup
+
+
+
+moves font size
+a number
+
+
+
+moves font color
+
+
+
+highlight move color
+a color;
+background
+copies the background color
+
+
+
+
+how to show move comments and variations
+
+
+inbetween game moves, or on a
+
+, or
+
+
+
+
+
+comments and variations font size
+a number;
+
+copies the moves font size
+
+
+
+comments and variations font color
+
+
+
+
+
+
+variations font size
+a number;
+
+copies the comments font size
+
+
+
+variations font color
+a number;
+
+copies the comments font color
+
+
+
+
+
+
+
+
+horizontal
+vertical
+
+chessboard and header/moves layout
+
+
+
+
+iFrame height
+
+
+
+
+iFrame width
+
+
+
+
+iFrame padding
+a number; border padding around the iframe, included within the iFrame width value
+
+
+
+
+background color
+a color;
+transparent
+uses the parent's background color
+
+
+
+
+
+
+preview background color
+not actually used in the HTML code, just for the preview
+
+
+
+
+
+
+
+
+
+
+
+
+
+use HTML textarea
+normally
+disabled ;
+use only for deployment on a page from the same domain as the board URL
+
+
+
+encode PGN text
+normally
+enabled
+
+
+
+
+board URL
+normally as
+default
+unless use HTML textarea is enabled or for deployment on a page from a different domain
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/board.html b/_assets/vendor/pgn4web/board.html
new file mode 100644
index 0000000..d9eb074
--- /dev/null
+++ b/_assets/vendor/pgn4web/board.html
@@ -0,0 +1,1390 @@
+
+
+
+
+
+
+
+pgn4web chessboard
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/chess-informant-sample.pgn b/_assets/vendor/pgn4web/chess-informant-sample.pgn
new file mode 100644
index 0000000..89186b4
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess-informant-sample.pgn
@@ -0,0 +1,475 @@
+[Event ""]
+[Site "Chicago"]
+[Date "1982"]
+[Round ""]
+[White "Martz, W."]
+[Black "Huebner, R."]
+[Result "1/2-1/2"]
+[WhiteElo "2405"]
+[BlackElo "2620"]
+[ECO "A16"]
+[Opening "English opening"]
+[Annotator "Huebner, R."]
+
+1. c4 Nf6 2. Nc3 c5 3. Nf3 e6 4. e3 Be7 5. d4 O-O 6. d5 $6 (6. Bd3 cxd4 7.
+exd4 d5 { - B14 }) 6... exd5 7. cxd5 d6 8. Bd3 $6 (8. Be2 $5) (8. Nd2 $5)
+8... Bg4 9. h3 Bh5 $2 (9... Bxf3 $2 10. Qxf3 Na6 11. O-O (11. Qe2 Nc7 12.
+e4 Nd7 13. O-O Bf6) 11... Nc7 12. b3 Rb8 13. a4 Na6) 10. e4 (10. g4 Bg6 11.
+e4 c4 12. Bb1 b5 13. a3 Nfd7 $13) 10... Nfd7 $6 (10... Na6 $6 11. g4 Bg6
+12. Nd2 { $140 f4 $16 }) (10... Bxf3 $5) 11. Bf4 $2 (11. g4 Bg6 12. h4 h5 (
+12... h6 13. h5 Bh7 14. Rg1 { $140 g5 $16 }) 13. g5 { $140 Nd2, f4 $16 })
+11... Na6 $5 (11... Bxf3 12. Qxf3 a6 13. a4 Qc7 14. Qe2 Bf6 15. Rc1 $14)
+12. g4 Bg6 13. h4 $6 (13. Nd2 Nb6 $11) 13... c4 14. Bb1 (14. Bxc4 $2 Ndc5
+15. Qe2 (15. Nd2 Bxh4 $17) (15. Bd3 Nxd3+ 16. Qxd3 Nc5 17. Qe2 Bf6) (15. e5
+Nb4) 15... Bf6 16. e5 dxe5 17. Nxe5 Nb4 18. Rd1 (18. h5 Bxe5 19. Bxe5 Bd3
+$19) (18. Kf1 Re8 $19) 18... Re8 19. O-O Nbd3 $19) (14. Bc2 $2 h5 15. Nd2
+Nb4 16. gxh5 Bxh5) 14... h5 $2 (14... h6 15. h5 (15. g5 Bh5 16. gxh6 g6 $17
+) 15... Bh7 16. Rg1 Ndc5 17. g5 (17. a3 Bg5 $17) 17... Nb4 18. Kf1 Nbd3 $17
+) 15. Nd2 (15. g5 $2 Ndc5 16. Nd2 f6 17. Rg1 (17. Nxc4 fxg5 18. Bxg5 Bxg5
+19. hxg5 Qxg5 $17 20. Nxd6 Qg2 21. Rf1 Rf3 { $140 22... Raf8, 22... Nb4 })
+17... fxg5 18. Bxg5 Bxg5 19. Rxg5 Qf6 { $140 b5 }) (15. Nd4 $2 Ndc5 16.
+gxh5 Bh7 { $140 17... Nb4, 17... Bf6 $17 }) 15... Rc8 (15... hxg4 $2 16. h5
+Bh7 17. Nxc4 Ndc5 18. Qxg4 { $140 Rg1 $16 }) 16. gxh5 Bh7 17. Rg1 (17. Qe2
+$2 Qb6 18. Na4 (18. Nxc4 Rxc4 19. Qxc4 Qxb2 20. O-O Qxa1) 18... Qb4 19. Bc2
+b5 20. a3 Qa5 21. Nc3 b4) (17. h6 $6 g6 (17... Re8 18. hxg7 { $140 19. e5
+Bb1 20. Rb1 de5 21. Qh5 }) 18. Rg1 (18. h5 g5) 18... Bxh4 { $140 Qb6 $17 })
+17... Bf6 $5 (17... Qb6 $2 18. Na4 (18. Qg4 Bf6 19. Bh6 Ne5 20. Qg3 g6 $13)
+18... Qa5 (18... Qd4 19. Qg4 { $140 e5 }) (18... Qb4 19. a3) 19. Qg4 Bf6
+20. Qxd7 b5 21. Qxd6 { $140 22. Qf6, 22. e5 $18 }) (17... Kh8 18. h6 (18.
+Qg4 Rg8 19. e5 Bxb1 20. exd6 Bd3 21. dxe7 Qxe7+ { $140 Nf6 }) 18... g6 19.
+Bg5 (19. Qe2 Qb6 20. Nf3 Nac5) 19... Ne5 20. Nf3 Nxf3+ 21. Qxf3 Nc5 22. Qe3
+Bf6 $14) 18. Bxd6 (18. h6 $2 Ne5 19. hxg7 Re8 $15) 18... Re8 19. Kf1 $1 {
+$140 e5 } 19... Qb6 (19... Ne5 20. Bxe5 (20. Ba3 Bxh4 21. f4 Qf6) 20...
+Bxe5 21. Nf3 Qf6 22. Nxe5 $1 (22. Ng5 $2 Bxc3 23. bxc3 (23. Nxh7 Qd4 $17) (
+23. e5 Bxe5 24. Nxh7 Qxh4 $17) 23... Qxc3 24. e5 Bd3+ 25. Bxd3 cxd3 26. e6
+fxe6 27. Nxe6 d2 28. Rxg7+ Kh8 (28... Qxg7 29. Nxg7 Re1+ 30. Qxe1 dxe1=Q+
+31. Rxe1 Kxg7 32. Re7+ { $140 Rb7 $11 }) 29. Rg5 (29. Rg3 Qc4+ { $140 Qd5 })
+29... Nc5 $19) 22... Rxe5 (22... Qxe5 23. Qg4 { $140 f4 $16 }) 23. Qg4 Rd8
+(23... Rce8 24. d6 { $140 25. d7, 25. Nd5 }) 24. f4 Nc5 25. h6 $16) 20. Ba3
+(20. e5 $2 Bxb1 21. Rxb1 Bxe5 22. Bxe5 Nxe5 23. Nde4 Nc5 $17) 20... Qa5 $2
+(20... Ne5 $6 21. Nf3 { $140 Ng5 $16 }) (20... Bxh4 $6 21. Rg2 Ne5 22. Nf3
+Nxf3 (22... Bf6 23. d6 { $140 Nd5 }) 23. Qxf3 Qh6 24. Bc2 $16) (20... Nac5
+21. Qg4 (21. f4 $2 Bxc3 22. bxc3 Nxe4 23. Nxe4 Bxe4 24. Qg4 Qf6 $17) (21.
+Nxc4 Qa6 22. Qe2 Bxc3 23. bxc3 Nxe4) (21. Qe2 Qa6) (21. Qf3 Bd4 22. Qg3 Qf6
+$13) 21... Ne5 22. Qg3 Qa5 (22... Ncd3 23. d6 $18 (23. Bxd3 $2 Nxd3 24. f4
+(24. Nxc4 Rxc4 25. Qxd3 Rd4 { $140 Be4 }) 24... Bd4 25. Rg2 Qh6 26. d6 (26.
+Ne2 Bxb2) (26. Nxc4 Rxc4 27. Qxd3 Qxf4+ $19) 26... Bxc3 27. bxc3 (27. d7
+Bxd2 28. Rxd2 Bxe4) 27... Bxe4 28. d7 Bxg2+ 29. Qxg2 Qxf4+ 30. Kg1 (30. Nf3
+Ne5 31. dxc8=Q (31. dxe8=Q+ Rxe8 32. Re1 Re6 33. Rxe5 Rxe5 34. Bd6 Qc1+)
+31... Rxc8 32. Kf2 Rd8) 30... Qe3+ 31. Kh2 (31. Kf1 $2 Qe1+) (31. Kh1 $2
+Nf2+) 31... Qf4+ 32. Kg1 (32. Kh1 $2 Qxh4+ { $140 Re1 }) 32... Qe3+ $11) (
+23. Nxc4 Nxc4 { $140 Na3 }) (23. f4 Nxb2 24. fxe5 Bxe5 25. Qf3 Nd3)) 23. f4
+b5 24. Bxc5 (24. fxe5 Bxe5 25. Qf3 b4 26. Nxc4 Qa6) 24... Rxc5 25. fxe5
+Bxe5 26. Qe3 (26. Qg2 Bxc3 27. bxc3 Qxc3 28. e5 Bd3+) 26... b4 $13) 21. e5
+$18 (21. Qg4 $2 Ne5 22. Qg3 b5 23. f4 b4 $17) (21. Qf3 Be5 { $140 b5 })
+21... Bxb1 (21... Nxe5 $2 22. Bxh7+ Kxh7 23. Nde4 Bxh4 (23... Qb6 24. d6)
+24. f4 $18) (21... Bxe5 22. Bxh7+ Kxh7 23. Nf3 $1 (23. Nde4 Nf6 (23... Bxc3
+24. Ng5+ Kg8 25. Qc2) 24. Qf3 $1 $16 (24. Nd6 Bxd6 (24... Bxc3 25. Qc2+ Kg8
+26. Qxc3 $16) 25. Bxd6 Qb6 26. Bf4 Nc5 $13 (26... Qxb2 $2 27. Rc1 $16))) (
+23. Qg4 $2 Bxc3 24. Ne4 (24. bxc3 Qxc3 25. Rc1 Qd3+ $19) (24. Qxd7 Bxd2 25.
+Qxf7 Bh6 $19) 24... Qxd5 25. Nxc3 Qd3+ 26. Kg2 Ne5 $17) 23... Nf6 (23...
+Nac5 24. Ng5+ Kg8 25. h6 $18 { $40 $242 }) (23... Bxc3 24. Qc2+ Kg8 25. Ng5
+(25. Qxc3 $2 Qxc3 26. bxc3 Nc7 $11) 25... Nf6 (25... Bb4 26. Qh7+ Kf8 27.
+d6 $18) (25... Nf8 26. Bxf8 Kxf8 27. bxc3 Qxd5 28. Nh7+ Ke7 29. Rd1 Qf3 30.
+Rg3 Qh1+ 31. Ke2 $18) 26. h6 (26. Nxf7 $2 Ne4) (26. Qxc3 $2 Qxc3 27. bxc3
+Nxd5 $17) 26... g6 27. h5 (27. Nxf7 Ne4 28. Nd6 Nd2+ $19) 27... Nxh5 28.
+Nxf7 Nf4 29. Nd6 { $140 Rg6 $18 }) 24. Qc2+ Kh8 (24... Kg8 25. Nxe5 Rxe5
+26. h6 g6 27. Rxg6+ $18) 25. Ng5 Qc7 (25... Bxc3 26. Nxf7+ Kg8 27. Rxg7+
+Kxg7 28. Qg6#) 26. Nce4 $18) 22. Rxb1 (22. exf6 $2 Bd3+ 23. Kg2 Nxf6
+24. Qf3 Re5 $13) 22... Bxe5 (22... Nxe5 $2 23. Nde4 $18) 23. Qg4 Nb6 (23...
+Bxc3 $2 24. bxc3 Qxc3 25. Rg3 Qe5 26. Nf3 Qf6 27. Qxd7 $18) 24. Nde4 (24.
+Nf3 $2 Bxc3 (24... Bf6 25. Ne4 Rxe4 26. Qxe4 Qxd5 27. Qxd5 Nxd5 28. Bd6 $18
+) 25. bxc3 Qxc3 26. Bb2 Qd3+ 27. Kg2 c3 28. Kh2 Qh7) (24. h6 Bxc3 (24... g6
+25. h5 $18 Bxc3 26. hxg6) (24... Nxd5 25. Nxc4 Rxc4 26. Qxc4 Nxc3 27. Re1
+Qb5 28. Qxb5 Nxb5 29. f4 $18) 25. bxc3 Qxc3 26. Qxg7+ Qxg7 27. Rxg7+ Kh8
+28. d6 $1 $16 (28. Nf3 f6 29. h5 Rc7 $13) (28. Rxf7 Rc7 29. Rxc7 Nxc7 30.
+d6 Ncd5 $13)) 24... Nxd5 (24... Rcd8 25. Nd6 Bxc3 26. bxc3 Qxc3 27. Rg3 Qf6
+28. Nxe8 Rxe8 29. Bb2 $18) 25. Nd6 Nxc3 26. bxc3 (26. Re1 $5 Nxa2 (26...
+Rcd8 27. Nxe8 Rxe8 28. bxc3 Qxa3 29. Rxe5 Qc1+ 30. Kg2 Qxg1+ 31. Kxg1 Rxe5
+32. Qc8+ Kh7 33. Qxb7 $18) (26... Nb1 27. Rxb1 Rcd8 28. Nxe8 Rxe8 29. Re1
+c3 30. f4 Qb5+ 31. Qe2 $18) 27. Nxc8 (27. Nxe8 Rxe8 28. f4 (28. Bd6 Qxe1+
+$13) 28... Qxe1+ 29. Kxe1 Bd4+ $13 (29... Bxb2+ 30. Kf1 Bd4 $13)) 27... c3
+{ ($140 Qb5) } 28. Ne7+ (28. bxc3 Qxc3 $13) (28. f4 Qb5+ $13) (28. Qd7 Rd8
+29. Rxe5 Rxd7 30. Rxa5 c2) 28... Kh8 29. Qf5 cxb2 30. Rxe5 (30. Qxf7 $2
+Qxe1+ $19) (30. Bxb2 Qb5+ 31. Re2 Rxe7 32. Bxe5 f6 33. h6 $18) 30... b1=Q+
+(30... Qxe5 31. Qxe5 b1=Q+ 32. Kg2 $18) 31. Qxb1 Qxe5 32. Qxa2 Rxe7 33.
+Bxe7 Qxe7 34. h6 gxh6 35. Qb2+ f6 36. Rg6 $18) 26... Qxa3 27. Nxc8 Qxc3 (
+27... Qc5 $2 28. Re1 $18 { ($140 f4) } 28... Nc7 29. Qd7 Re6 30. h6 Bxc3
+31. Ne7+ Kh7 32. Rxe6 Nxe6 33. Qe8) 28. Rd1 $6 (28. Rxb7 $2 Qd3+ 29. Kg2
+Qd5+ 30. Qf3 Qxf3+ 31. Kxf3 Rxc8) (28. Ne7+ $2 Rxe7 29. Qc8+ Kh7 30. Qf5+
+$11) (28. Qd7 $6 Qd3+ 29. Qxd3 cxd3 30. Nxa7 Nc5 $13) (28. Nxa7 $6 Nc5 29.
+Nb5 Qd3+ 30. Kg2 c3 $13 31. Rgd1 $2 c2) (28. h6 $6 Nc5 29. hxg7 Ne6 $13) (
+28. Kg2 $5 Nc5 29. Rbc1 (29. Ne7+ Rxe7 (29... Kh8 30. Nd5 Qd3 31. Rgd1) 30.
+Qc8+ Kh7 31. Qxc5 Re6 32. Rbc1 { $140 Qc4 }) 29... Qd3 30. Rgd1 $18) 28...
+Qc2 (28... Nc5 29. Ne7+ Kh8 (29... Rxe7 30. Rd8+ Kh7 31. Qf5+ $18) 30. h6
+g6 (30... gxh6 31. Nf5 { $140 Nh6 }) 31. h5 { $40 }) 29. Qd7 $2 (29. Re1 $2
+Nc5 30. Rxe5 $2 Qd3+ 31. Kg2 $8 Rxe5 32. Kh2 Ne6 $19) (29. Ne7+ $2 Rxe7 30.
+Rd8+ Kh7 31. Qc8 g6 $19) (29. Kg2 Nc5 (29... f5 $2 30. Ne7+ Rxe7 31. Rd8+
+$18) 30. Rc1 Qxa2 31. Ne7+ Rxe7 32. Qc8+ Kh7 33. Qxc5 Re6 34. Qxc4 $11) (
+29. h6 $1 Nc5 (29... g6 30. h5 $1 (30. Qd7 Kf8 $1 (30... Rf8 31. Ne7+ Kh8 (
+31... Kh7 32. Nxg6) 32. Qd5 (32. Rg4 Nc5 { $140 Nd3 }) (32. Re1 Nc5) 32...
+Bf6 33. Rd2 $13) (30... Re6 31. h7+ Kh8 32. h5 Nc5 33. Qd8+ Kxh7 34. Ne7
+Rxe7 (34... Nd3 35. Qg8+ Kh6 36. Nf5+ gxf5 37. Qf8+ $18) 35. hxg6+ Kh6 36.
+gxf7 Rxf7 37. Qh4#) (30... Nc7 31. h5 $16) 31. Nxa7 (31. Rd2 Qb1+ 32.
+Kg2 Qe4+ 33. f3 Qf4 $17) (31. h7 Nc5 32. Qd6+ Kg7 $17) 31... c3 32. Nb5 Nc5
+33. Qd5 Ne4 $19) 30... Nc5 31. hxg6 fxg6 32. Nd6 (32. Qxg6+ $2 Qxg6 33.
+Rxg6+ Kh7 34. Rg5 Kxh6 35. f4 Nd3) 32... Bxd6 (32... Rd8 33. h7+ $18 Kxh7
+34. Qh4+ Kg7 35. Nf5+ Qxf5 36. Rxd8) (32... Re6 33. Nxc4 $18) 33. Rxd6 Qb1+
+(33... Kh7 34. Rd7+ $18) 34. Kg2 Qe4+ 35. Qxe4 Rxe4 36. Kf3 $18) 30. hxg7 {
+$140 Ne7 } 30... Ne6 31. Nd6 (31. Qh5 Nxg7 (31... Bxg7 $2 32. Nd6 { $140
+Nf5 $18 }) 32. Nd6 Bxd6 33. Rxd6 c3 $13) 31... Bxd6 (31... Rd8 32. Qh5 $18)
+32. Rxd6 $16) 29... Re6 $5 (29... Kf8 $5 { ($140 Nc5) } 30. h6 g6 { - 29.
+h6 } (30... Nc5 $2 31. hxg7+ Bxg7 32. Qg4 Ne6 33. Nd6 Rd8 34. Kg2 $16) (
+30... gxh6 $2 31. Rg8+ Kxg8 32. Qxe8+ Kh7 33. Qxf7+ Bg7 34. Rd7 Qb1+ 35.
+Kg2 Qe4+ 36. Kh2 Qe5+ 37. Kh3 $18)) 30. h6 (30. Qd8+ Kh7 31. Ne7 $2 Rxe7) (
+30. Rd5 Qb1+ 31. Kg2 Qe4+ $17) 30... Nc5 (30... Rxh6 $2 31. Ne7+ Kh7 32.
+Qd8 $18) (30... g6 $2 31. h7+ { - 29. h6 }) 31. Qd8+ Kh7 32. hxg7 Bxg7 33.
+Qd2 $8 Qxd2 (33... Qf5 34. Qg5 (34. Rg3 $2 Ne4 $19) (34. Rg5 $2 Qh3+ 35.
+Kg1 Nd3 $19) (34. Nd6 Qh3+ 35. Rg2 Rg6 $19) 34... Qh3+ 35. Qg2 (35. Rg2 $2
+Rg6 36. Qh5+ Bh6 $19) 35... Qxg2+ 36. Kxg2 $16) 34. Rxd2 c3 $2 (34... a6
+35. Rd6 (35. Rd5 Nd3 36. Nd6 Re1+ 37. Kg2 Rxg1+ 38. Kxg1 c3 $19) 35... Re4
+36. Rg5 Ne6 $17) 35. Rc2 a6 36. Rxg7+ $8 Kxg7 37. Rxc3 Ne4 38. Rd3 $2 (38.
+Rc7 $6 Rf6 39. Rc2 Rf4 40. Ne7 Kf8 $17) (38. Re3 b5 (38... Kf6 39. a4) 39.
+Nb6 Nf6 40. Rxe6 fxe6 41. a4 Kf7 (41... b4 42. Ke2) 42. axb5 axb5 43. Nc8
+$11) 38... Rc6 $2 (38... Rf6 39. f3 Ng3+ { $140 Nf5 $17 }) ($142 38... b5
+39. Kg2 (39. Re3 b4 { $140 Nc3 }) 39... b4 (39... Rc6 40. Ne7 Rc2 41. Nf5+
+Kg6 42. Ng3 $11) 40. a3 Rg6+ 41. Kf3 Nc5 42. Rd5 b3) 39. Ne7 Rc2 40. Nf5+
+Kg6 41. Nd6 $11 (41. Ng3 $6 Nxf2 (41... Rxf2+ 42. Ke1 Rf4 43. Rd4 f5 44.
+h5+ Kg5 45. Nxe4+ Rxe4+ 46. Rxe4 fxe4 47. Ke2 Kxh5 48. Ke3 Kg5 49. Kxe4 Kf6
+50. Kd5 Ke7 51. Kc5 Kd7 52. Kb6 Kc8 53. a4 Kb8 54. a5 Kc8 55. Kc5 Kc7 56.
+Kd5 $11) 42. Rd6+ f6 43. Rb6 (43. h5+ Kg5 44. h6 Ng4 45. h7 Rh2) 43... Rxa2
+44. Rxb7 Ng4 $17) 41... Rxf2+ (41... Nxf2 42. Rg3+ Kh5 (42... Kf6 43. Rg2
+Nd1 44. Rxc2 Ne3+ 45. Ke2 Nxc2 46. Nxb7 $11) 43. Rg2 Rc6 (43... Ng4 44.
+Rxc2 Ne3+ 45. Kf2 Nxc2 46. Nxb7 Kxh4 47. Nc5 a5 48. Nb7 a4 49. a3 $11) 44.
+Rxf2 (44. Nxb7 $2 Ng4 $17) (44. Nxf7 $2 Ng4 $17) 44... Rxd6 45. Rxf7 b5 46.
+Rf4 Rd1+ 47. Ke2 { $140 a4 $11 }) 42. Ke1 Rf4 43. Nxb7 (43. Rd4 f5 44. Nxe4
+fxe4 45. Rd6+ Kh5 46. Rb6 Rf7 47. Re6 $11) 43... Rxh4 44. Ra3 Kg5 45. Nd8
+$6 (45. Rxa6 Kf4 (45... f5 46. Nd6) 46. Ra4 { $140 47.Nd6, 47.Nc5 } (46.
+Nd6 $2 Rh6) 46... Kf3 47. Ra3+ $11) 45... Rh1+ 46. Ke2 Rh2+ 47. Ke1 f5 48.
+Rxa6 Kg4 49. Ra4 (49. Ne6 $2 Rh6 50. Ke2 f4) (49. Nf7 f4 50. Ne5+ $11) (49.
+Nc6 $11) 49... Rh6 50. Nf7 (50. Nb7 $2 Kf3 51. Ra3+ Kg2 { $140 f4 }) 50...
+Re6 51. Nd8 Re8 52. Nc6 f4 53. Ra7 $8 f3 54. Re7 Rxe7 55. Nxe7 f2+ 56. Ke2
+Kg3 57. Nf5+ (57. Nd5 $2 Nc3+ 58. Nxc3 Kg2 $19) 57... Kg2 58. Nh4+ (58.
+Ne3+ $2 Kg1 59. a4 Ng3+ { $140 Nf5 $19 }) 58... Kh3 59. Nf5 Kg2 1/2-1/2
+
+[Event ""]
+[Site "Tilburg"]
+[Date "1982"]
+[Round ""]
+[White "Huebner, R."]
+[Black "Browne, W."]
+[Result "1-0"]
+[WhiteElo "2630"]
+[BlackElo "2590"]
+[ECO "A30"]
+[Opening "English"]
+[Variation "symmetrical, hedgehog system"]
+[Annotator "Huebner, R."]
+
+1. Nf3 c5 2. c4 Nf6 3. Nc3 e6 4. g3 b6 5. Bg2 Bb7 6. O-O Be7 7. d4 cxd4 8.
+Qxd4 d6 9. b3 Nbd7 10. Bb2 (10. e4 Nc5 $5) 10... a6 11. Rfd1 O-O 12. h3 Qc7
+13. Qe3 Rfc8 (13... Rfe8 $5) 14. Nd4 Bxg2 15. Kxg2 Ne5 $11 16. Kg1 (16. f3
+Qb7 17. a4 Ng6 18. Rac1 h5 { ($140 h4) } 19. h4 Ne5 $36) 16... Nc6 $6 (
+16... h5 $6 17. f4 Nc6 (17... Ng6 18. f5 $16) 18. Nf3 $14) (16... Ng6 $6
+17. f4 { $140 18.f5, 18.Qf3 }) (16... Qb7 $5 17. f4 $140 Nc6 18. Nf3 $6 b5)
+17. Rac1 (17. Qf3 Nd7) 17... Qb7 (17... Nd7 $2 18. Nd5) 18. Nxc6 Rxc6 (
+18... Qxc6 $2 19. Nd5 exd5 20. Qxe7 Re8 21. cxd5 Qxc1 22. Qxe8+ Rxe8 23.
+Rxc1 Rxe2 (23... Nxd5 24. Rc6 $16) 24. Kf1 Re8 25. Bxf6 gxf6 26. Rc6 $16)
+19. a4 Ne8 $6 (19... Rac8 $5 20. Ba3 Bf8 21. Qf3 $140 d5 22. Bxf8 Kxf8 23.
+cxd5 Nxd5) 20. Ba3 (20. Ne4 $6 b5 $15) (20. Rd3 Bf6 { ($140 b5) } 21. Ba3
+Bxc3 22. Rdxc3 Rac8 $11 (22... b5 23. cxb5 Rxc3 24. Qxc3 axb5 25. a5 $14))
+20... Rac8 21. Rd3 R6c7 (21... d5 $6 22. cxd5 (22. Bxe7 $2 dxc4) 22... Rxc3
+23. Rdxc3 Rxc3 24. Rxc3 Bxa3 25. dxe6 Bc5 (25... f6 26. Qd3 { $140 27. Qd7,
+27.Qc4 }) 26. exf7+ Qxf7 27. Qf3 $16) 22. Rcd1 Qb8 $6 (22... d5 23. Bxe7
+dxc4 24. Rd6 (24. bxc4 Rxe7 25. Rb1 Rxc4 26. Qxb6 Qc6 (26... Qc8 $2 27. Rd8
+Qc6 28. Qxc6 Rxc6 29. Rbb8 f5 30. Rxe8+ Rxe8 31. Rxe8+ Kf7 32. Ra8 Rxc3 33.
+Rxa6 $16) (26... Qxb6 27. Rxb6 Rec7 28. Rd8 Rc8 29. Rxc8 Rxc8 30. Ne4 $14)
+27. Qxc6 Rxc6 28. Rb8 f5 29. Ra8 $14) 24... Nxd6 (24... cxb3 25. Rxb6 Qa8
+26. Bb4 a5 27. Nb5 $18) (24... Rxe7 25. Rxb6 Qa8 26. b4 $14) 25. Bxd6 Rd7
+$44) (22... h6 $5 { $140 d5 }) 23. Qd2 { $140 Ne4 } (23. h4 $5) 23... Bf8 (
+23... d5 $2 24. Bxe7 dxc4 25. Rd7 $18) 24. Bb2 $6 (24. Ne4 $2 d5 25. Bxf8
+dxe4 $19) (24. h4 $5 d5 $6 (24... h5 $5 25. Qg5 g6 26. Ne4 d5 (26... Rc6
+27. Bb2 { $140 Nf6 }) (26... Be7 27. Qf4 Rd7 28. Rf3 $36) 27. Bxf8 dxe4 28.
+Rd7 { $140 Qe7 }) (24... h6 25. h5 { $140 g4 }) 25. Bxf8 dxc4 26. Bxg7 $1 {
+(Browne, W) } 26... cxd3 (26... Nxg7 27. bxc4 $16) 27. Be5 dxe2 28. Qxe2
+$16) 24... h6 25. h4 Nf6 (25... h5 26. Ba3 { $140 27.Qg5 g6 28.Ne4 }) 26.
+Qf4 $5 (26. Ba3 Ne8 27. h5 $14) 26... Qb7 27. Rf3 { $140 g4 } (27. g4 $6 h5
+28. g5 Nd7 29. Ne4 Nc5 30. Nxc5 (30. Nf6+ $2 gxf6 31. Qxf6 e5 $19) 30...
+bxc5 $15) 27... h5 28. Rfd3 Rc5 29. f3 (29. Ba3 Rf5 30. Qd2 Ng4 31. f3 Ne5
+32. Re3 Rd8 { $140 g6 $17 }) 29... R5c7 (29... Rf5 30. Qd2 Nd7 $2 31. Ne4
+Nc5 32. Nxd6 Bxd6 33. Rxd6 Nxb3 34. Qc3 $18) 30. Kg2 Qa8 31. Qg5 (31. e4 $6
+Nd7) (31. Ba3 d5 32. Bxf8 Kxf8 33. Qd6+ Kg8 34. Qxb6 dxc4 35. bxc4 (35.
+Qxc7 cxd3 36. Qe5 dxe2 37. Nxe2 Nd5 $15) 35... Rxc4 36. Rd8+ Kh7 $15) (31.
+Qd2 d5 32. cxd5 Nxd5 (32... exd5 33. Qf4 $14) 33. Nxd5 Rc2 34. Qg5 exd5 $8
+35. R1d2 $16) 31... Rc5 32. Qd2 R5c6 33. Ba3 Ne8 (33... d5 34. Bxf8 Kxf8
+35. cxd5 exd5 36. Nxd5 Rc2 37. Qb4+) 34. Qe3 $6 (34. Qg5 d5 (34... g6 35.
+Ne4 Qb8 (35... d5 36. Bxf8 dxe4 37. Rd7 exf3+ 38. exf3 Ng7 39. Qe7 Rxf8 40.
+Rd8 $18) 36. Bb2 Bg7 37. Bxg7 Kxg7 38. Nxd6 Nxd6 39. Rxd6 Rxd6 40. Qe5+ $18
+) 35. Bxf8 Kxf8 36. Qxh5 Kg8 37. Rd4 Nf6 38. Qg5 dxc4 39. b4 { $140 h5 $16
+}) 34... g6 (34... Be7 $5) 35. Qd2 (35. Ne4 d5 36. Bxf8 dxe4 37. Rd7 Nf6
+$17) (35. Qf4 d5 36. Bxf8 Kxf8 $11) 35... Qb8 $6 (35... Bg7 $2 36. Ne4 $18)
+(35... R8c7 36. Ne4 d5 37. Bxf8 dxe4 38. Rd8 exf3+ 39. exf3 Rc8 40. Ba3 $16
+) (35... R6c7 $5) 36. Qf4 Qa8 $2 (36... d5 37. Qxb8 Rxb8 38. cxd5 Rxc3 39.
+Rxc3 Bxa3 40. dxe6 fxe6 41. Rc6 { $140 Rd7 $14 }) 37. Ne4 $16 e5 (37... d5
+38. Bxf8 dxe4 39. Rd7 exf3+ 40. exf3 Nf6 41. Rxf7 e5 (41... Kxf7 42. Rd7+
+Ke8 43. Re7+ Kd8 44. Qxf6 $18) 42. Rg7+ Kxf8 43. Qh6 $18) 38. Qe3 (38. Qd2
+$2 d5 39. cxd5 Rc2 $19) 38... Qb8 39. Nc3 Nf6 40. Nd5 Nxd5 41. Rxd5 Re8 (
+41... Rd8 42. R1d3 Re8 (42... Be7 $2 43. Qd2 Qc7 44. Qd1 Qb8 45. a5 bxa5
+46. c5 $16)) 42. Qd3 Re6 43. e4 (43. a5 bxa5 44. Rxa5 Rb6 45. b4 (45. Rb1
+Qb7 46. Qd5 Re7 $13) 45... Re7 46. c5 e4 47. fxe4 dxc5 $13) 43... Be7 44.
+Kf2 (44. a5 $6 bxa5 45. Rxa5 Bd8) 44... Qf8 45. Ke2 f5 $6 (45... Qb8 $5 46.
+Rg1 (46. Kd2 Bf8 47. Kc2 $2 b5) 46... Qf8 47. Bc1 Qg7 { $140 Rc8 }) 46. Bc1
+fxe4 $6 (46... f4 47. gxf4 exf4 (47... Bxh4 48. f5 $16) 48. Rg1 Kh7 49. Qd2
+(49. Rxh5+ $2 gxh5 50. Qd5 Rg6 51. Rxg6 Rc5 52. Qe6 Re5 $19) 49... Bxh4 50.
+Qxf4 Qxf4 51. Bxf4 $16) (46... Rc8 $5 47. Be3 Rb8) 47. Qxe4 (47. fxe4 Rf6
+48. Qe3 (48. Be3 Rf3) 48... Qf7 $13) 47... Qf5 (47... Rc8 48. Be3 Rb8 49.
+g4 hxg4 50. fxg4 $16 Bxh4 51. g5 Bg3 52. Qg4 $18) 48. Be3 Kf7 (48... Qh3
+49. Bf2 Rc8 (49... Qh2 50. Rg1 Rc8 51. Rdd1 Qh3 52. Bxb6) 50. Rg1 Rb8 51.
+g4 Bxh4 (51... hxg4 52. Rxg4 Kf7 53. Rd1 $16) 52. gxh5 Bxf2 53. Rxg6+ Kf7
+54. Rxe6 $16) 49. R5d3 Qxe4 50. fxe4 g5 $6 (50... Bd8 51. Bg5 Ke8 (51...
+Bxg5 52. hxg5 Kg7 (52... Ke7 53. Rf1 Rc8 54. Rdf3 Kd7 55. Rf7+ Re7 56. R7f6
+Rg8 (56... Rg7 57. Rf7+) 57. b4 { $140 58.Rd1 Re6 59.c5 }) 53. Rf1 a5 (
+53... Re7 54. Rf6 Rd7 55. Re6 { $140 Re5 }) (53... Rc7 54. Rf6) (53... b5
+54. axb5 axb5 55. cxb5 Rc5 56. Rd5 Rxd5 57. exd5 Re7 58. Kd3 Rc7 59. Rf6)
+54. Rdf3 Rc7 (54... Re7 55. Rf6) 55. Rf8 Rb7 56. Rd8) (51... Be7 52. Rf1+
+Ke8 53. Rdf3 { ($140 Rf7) } 53... b5 54. cxb5 axb5 55. Bxe7 Rxe7 56. Rf8+
+Kd7 57. a5 $16) 52. Rf1) (50... Ke8 $5 51. Bg5 Rc7 52. Rf1 Bxg5 53. hxg5
+Rf7 54. Rxf7 Kxf7 55. a5 (55. Rd5 Ke7 56. a5 Kd7) 55... bxa5 56. Rd5 Re7)
+51. hxg5 Kg6 52. Rf1 Bxg5 53. Rf8 Bxe3 54. Rxe3 $6 { $140 Ref3 } ($142 54.
+Kxe3 b5 (54... Rf6 55. Ra8 $1 (55. Rxf6+ Kxf6 56. Kf3 Kg5 57. Rd5 (57. Kg2
+h4) (57. Rd2 b5) 57... h4 58. g4 h3 59. Kg3 h2 60. Rd1 b5 $13) (55. Rb8 Kg5
+$13) 55... Rc7 (55... b5 56. cxb5 axb5 57. a5) (55... a5 56. Rb8 Kg5 (56...
+Rf1 57. Rd8 Rf6 58. Rd1) 57. Rd1 Rg6 58. Kf3) 56. Rxa6 Rcf7 57. Kd2 (57.
+Rxb6 Rf2 58. Rdxd6+ (58. Rbxd6+ $2 Kg5 $19) 58... Kg7 59. Rd7 Rf3+ $11)
+57... Rf2+ 58. Kc3 R2f3 59. Rxb6 $18) 55. cxb5 axb5 56. a5 (56. axb5 Rc5
+$13 57. Rd8 (57. Rd5 Rc3+) (57. b6 Rb5 58. Rb8 Kg7) 57... Rxb5 58. R8xd6
+Rxd6 59. Rxd6+ Kg5 60. Rd3 Rb4) 56... b4 57. Rb8 Rc5 58. a6 Ra5 59. Ra8 (
+59. Rb6 Kg5 60. Rdxd6 Rxd6 61. Rxd6 Ra3 62. Kd3 Rxb3+ 63. Kc4 Rxg3 64. Kxb4
+Rg1 $13) 59... Kg7 60. Rd5 Ra3 61. Kd3 Rxb3+ 62. Kc4 Ra3 63. Rb5 $18) 54...
+b5 $8 (54... Rf6 55. Rb8 Kg5 56. Rd3 { ($140 Ra8) } 56... Kg4 57. Rg8+ Kh3
+58. g4+ Kh4 59. gxh5 Rf4 60. h6) 55. cxb5 axb5 56. a5 (56. axb5 $2 Rb6 $11
+57. Ref3 Rxb5 58. Rg8+ Kh7 59. Rg5 Kh6 60. Rff5 Rxb3 61. Rxh5+ Kg7) 56...
+b4 (56... Ra6 57. b4 $18) (56... Rc2+ 57. Kd3 Ra2 58. Ra8 { $140 Kc3-b4 })
+57. Rd3 (57. Rb8 Ra6 58. Rb5 Re8 { $140 59... Rea8, 59...Rc8 }) 57... Rc5
+$6 (57... Kg7 58. Rb8 Rc5 59. Rd5 Rc2+ 60. Rd2 Rc5 61. Ra2 Rc3 62. a6 Rxg3
+63. Ra1 { $140 a7 }) (57... Ra6 58. Rd5 { $140 59.Rb8, 59. Kd3 $18 }) (
+57... Rc2+ 58. Rd2 Rc3 (58... Rxd2+ 59. Kxd2 d5 60. Rb8 { $140 Rb6 $18 })
+59. a6 Rc7 60. Ra2 $18) (57... Rf6 $5 58. Rxf6+ Kxf6 59. Rd1 Rc2+ (59...
+Ke6 60. Ra1 Ra6 61. Kd3 d5 62. exd5+ Kxd5 63. Ke3 e4 64. Rh1 $18) 60. Rd2
+Rc6 (60... Rc3 61. Rxd6+ Kg5 62. Rd3 Rc2+ 63. Kf3 Ra2 64. Rd5 Kf6 (64...
+Ra3 65. Rxe5+ Kg6 66. Kf4 Rxb3 67. Rg5+ Kh6 68. Rb5 Ra3 69. e5 Kg6 70. Rb6+
+Kf7 71. a6) 65. Rb5 Ra3 66. Rxb4 Rxa5 67. Kg2) 61. Ra2 Rc3 62. a6 Rxg3 63.
+Ra4 Rg8 64. Rxb4 h4 65. a7 Ra8 66. Rb7 $18) 58. Ra8 (58. Rd5 $2 Rxd5 59.
+exd5 Re7 60. Ra8 (60. Rb8 Ra7 61. Rb5 Kf5 62. Kd3 Kg4 63. Kc4 Kxg3 64. Kxb4
+h4 65. Rb8 h3 66. Rg8+ Kf2 67. Rh8 Kg2 68. Ka4 h2 69. b4 h1=Q 70. Rxh1 Kxh1
+71. b5 e4 72. b6 Re7 73. a6 e3 74. b7 e2 $19) (60. Rd8 Ra7 61. Rxd6+ Kf5
+62. a6 Ke4 $11) 60... Kf5 61. Kd3 Rc7 62. a6 Rc3+ 63. Kd2 Ke4 64. Rd8 (64.
+a7 Rc7 { $140 Kd5 }) 64... Rc7 65. Rxd6 Ra7 $11) (58. a6 $5 Ra5 59. Ra8 d5
+$5 (59... Kg7 60. Rd5 Ra3 61. Rb5 Re7 62. Rb7 Kf6 { ($140 Ra6) } 63. Rxe7
+Kxe7 64. a7 $18) (59... Kg5 60. Rd5 Ra3 61. Kd3 Rxb3+ 62. Kc4 Ra3 63. Kxb4
+Ra1 64. Ra5 $18) 60. a7 Rea6 61. Rxd5 Ra2+ 62. Rd2 R2a3 63. Rd7 Kf6 64. Rb7
+$16) 58... Rf6 (58... Rc2+ 59. Rd2 Rc3 60. a6 $18) (58... Kg7 59. Ra7+ (59.
+a6 Rf6 60. a7 Ra5 61. Rf3 Re6 $13 62. Rff8 $2 Rxa7) 59... Kg6 (59... Kg8
+60. a6 Ra5 61. Ra8+ Kg7 62. Rd5) 60. a6 Rf6 61. Rd7 Ra5 62. a7 Kg5 63. Rd5
+Ra3 64. Rb5 (64. Kd3 Rf3+ $13) 64... Rf8 65. Rxb4 $18) 59. a6 Ra5 (59...
+Kg7 60. Ra7+) (59... Kg5 60. Rg8+ Rg6 61. Rxg6+ Kxg6 62. Rxd6+) 60. Rf3
+Ra2+ (60... Re6 61. Rff8 d5 62. a7 Rea6 63. Rg8+ Kh7 64. Rh8+ Kg7 65. Rag8+
+$18) (60... Rxf3 61. Kxf3 Kg7 62. Kg2 Ra2+ 63. Kh3 Kh7 64. a7 Kg7 65. Kh4
+Kg6 66. g4 $18) 61. Ke3 Rxf3+ 62. Kxf3 Kg7 63. a7 Kh7 64. Ke3 Ra3 65. Kd3
+Rxb3+ 66. Kc4 Ra3 (66... Rxg3 67. Rb8 Ra3 68. a8=Q Rxa8 69. Rxa8 h4 70. Kd3
+Kg6 71. Ke3 $18) 67. Kxb4 Ra1 68. Kb5 Kg7 69. Kc6 Ra2 (69... Ra6+ 70. Kb7
+$18) (69... Kh7 70. Kxd6 Ra5 71. Ke6 Kg7 72. Kf5 $18) 70. Kxd6 Ra5 71. Ke6
+Kh7 72. Kf6 Ra3 73. Kxe5 1-0
+
+[Event ""]
+[Site "Belfort"]
+[Date "1988"]
+[Round ""]
+[White "Huebner, R."]
+[Black "Timman, J."]
+[Result "1-0"]
+[WhiteElo "2595"]
+[BlackElo "2675"]
+[ECO "B63"]
+[Opening "Sicilian"]
+[Variation "Richter-Rauzer, Rauzer attack, 7...Be7"]
+[Annotator "Huebner, R."]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 Nc6 6. Bg5 e6 7. Qd2 Be7
+8. O-O-O Nxd4 9. Qxd4 O-O 10. e5 dxe5 11. Qxe5 Qe8 12. h4 a6 $2 $146 13.
+Ne4 (13. Bd3 Bd7 (13... b5 $2 14. Bxf6 Bxf6 15. Qe4 $18) 14. Ne4 (14. Rh3
+Bc6 15. Rg3 Kh8 16. Ne4 Qb8 $13) 14... Nd5 15. Bxe7 Qxe7 16. Ng5 Nf6 $14)
+13... Nd5 (13... Nxe4 14. Qxe4 f6 (14... Bd7 15. Qxb7 $16) (14... f5 15.
+Qe5 { $140 Bc4 $16 }) 15. Bd3 Qg6 16. Qxg6 hxg6 17. Be3 Kf7 18. Be4) 14.
+Bxe7 Nxe7 (14... Qxe7 $2 15. Rxd5 f6 16. Qd6 $18) 15. h5 (15. Nd6 Qa4 16.
+Rh3 Nc6 { $140 e5 }) 15... Nc6 (15... f6 16. Qc5 Nc6 17. h6 g6 18. Bc4 $16)
+(15... h6 $5 16. Rh3 (16. g4 Qa4 $13 (16... f6 17. Qc5 Qc6 18. Qxe7 Qxe4
+19. Bd3 Qf4+ (19... Qxg4 20. Bh7+ $18) 20. Kb1 { $140 Bh7 $18 }) (16... Nc6
+17. Qc5 (17. Qg3 f6 18. f4 e5 $13) 17... f6 18. f4 e5 (18... Qe7 19. Bc4)
+19. Bc4+ Kh8 (19... Be6 20. Nd6 Qe7 21. Nxb7) 20. g5 $40)) 16... Nc6 (16...
+f6 17. Qc5 e5 18. Bc4+ Kh8 19. Rhh1 $16) 17. Qc5 (17. Nf6+ Kh8 18. Qc3 Qe7)
+17... e5 $13) 16. Qg3 Qe7 17. h6 g6 18. f4 $2 ($142 18. Bc4 b5 (18... e5
+19. Bd5 $16) 19. Qc3 f5 (19... f6 20. Bb3 $18) 20. Bb3 fxe4 21. Qxc6 $16)
+18... e5 19. fxe5 (19. Bc4 Be6 20. Bxe6 Qxe6 $13) 19... Qxe5 $6 (19... Nxe5
+$5 20. Be2 f6 (20... Bf5 21. Nd6) 21. Rhe1 Bf5 22. Nxf6+ Qxf6 (22... Rxf6
+23. Bc4+ $18) 23. Qxe5 Rac8 24. Bd3 Qxe5 (24... Qg5+ 25. Kb1 Qxh6 26. Bc4+
+Rxc4 27. Qd5+ $18) 25. Rxe5 Bxd3 26. Rxd3 Rf2 27. c3 Rxg2 28. Re7 Rh2 (
+28... Rf8 29. Rg7+ Kh8 30. Rf7) 29. Rg7+ Kh8 30. Rxb7 Rxh6 31. Rd6 $16) 20.
+Qxe5 Nxe5 21. Nf6+ Kh8 22. Rh4 Bf5 23. Rd5 $2 ($142 23. Rhd4 Rac8 24. c3
+Nc6 25. Rd6 Ne7 26. g4 Be6 27. a3 g5 (27... Ng8 28. g5) 28. Bd3 $16) 23...
+Nc6 24. g4 Bxc2 $1 (24... Be6 25. Rd2 { $140 g5 $18 }) 25. Kxc2 Nb4+ 26.
+Kb3 (26. Kc3 Nxd5+ 27. Nxd5 Rac8+ 28. Kb3 (28. Kd4 Rc2 29. Bc4 Rxb2 $13))
+26... Nxd5 27. Nxd5 Rfe8 $6 ($142 27... Rad8 28. Nf6 (28. Bg2 Rfe8 29. Rh3
+(29. Nf6 Re3+ { $140 Re2 }) (29. Nc3 Rd4) (29. g5 Re5) 29... Re2 30. Bf3 (
+30. Bh1 Re1) 30... Rf2) 28... Rd4 29. Rh1 g5 30. Be2 Rf4 31. Nd5 (31. Rf1
+Rd8 32. Nh5 Rxf1 33. Bxf1 Rd6) 31... Rd4 $13 32. Nf6 Rf4 $11) 28. Rh3 Rad8
+$2 ($142 28... Re4 29. Rf3 (29. Rg3 g5) 29... Rxg4 30. Rxf7 Rh4 $13) 29.
+Nf6 $18 Re6 30. Rf3 (30. g5 Re5 31. Rg3 b5) 30... Rdd6 (30... g5 31. Bc4
+Rb6+ 32. Ka3 Rdd6 33. Nh5) 31. g5 Rb6+ ($142 31... Re5 32. Rc3 Rd8 33. Rc7
+Rf8 34. Nd7 (34. Rxb7 Rxg5 35. Bxa6 Rg3+ 36. Ka4 Rh3 37. b4 Rxh6 { $140 g5
+$13 }) (34. Bc4 Rxg5 35. Bxf7 Rg3+ 36. Ka4 Rh3 $13) 34... Re7 35. Rxb7 Rd8
+36. Nc5 (36. Bh3 $2 Re3+) 36... Rxb7+ (36... Re5 37. Nxa6) 37. Nxb7 Rd5 38.
+Bxa6 Rxg5 39. a4) 32. Ka4 (32. Ka3 $2 Re5) 32... Rbd6 33. Bh3 Rd4+ (33...
+Re5 34. Rc3 Rd8 35. Rc7 Rf8 36. Nd7 Re7 37. Rxb7 $18) 34. b4 Rb6 35. a3 Rb5
+36. Re3 Rd8 37. Re7 Rf8 38. Nd7 1-0
+
+[Event ""]
+[Site "Wijk aan Zee"]
+[Date "1988"]
+[Round ""]
+[White "Huebner, R."]
+[Black "Piket, Je"]
+[Result "1-0"]
+[WhiteElo "2595"]
+[BlackElo "2470"]
+[ECO "B63"]
+[Opening "Sicilian"]
+[Variation "Richter-Rauzer, Rauzer attack, 7...Be7"]
+[Annotator "Huebner, R."]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 Nc6 6. Bg5 e6 7. Qd2 Be7
+8. O-O-O O-O 9. Nb3 Qb6 10. f3 Rd8 11. Be3 Qc7 12. Qf2 d5 13. exd5 Nxd5 14.
+Nxd5 Rxd5 15. Rxd5 exd5 16. Bb5 $146 (16. g4 Ne5 17. Kb1 Nc4 { $140 a5
+$147f4 }) 16... Bf5 (16... Ne5 17. Rd1) (16... Na5 17. Bd3 Nxb3+ (17... Nc4
+18. Bd4 { $140 Qg3 $16 }) 18. axb3 a5 19. Qg3 Bd6 20. Qh4 $14) 17. Bxc6 bxc6
+18. Bc5 $1 (18. g3 a5 (18... c5 { (Piket, J) } 19. Bxc5 (19. Nxc5 Rc8 20.
+b4 a5 $36) 19... Rc8 20. Bxe7 Bxc2 21. Nc5 Qxe7 22. Kxc2 Rxc5+ 23. Kb1 $14)
+19. Nc5 (19. Bb6 Qb7 20. Bxa5 (20. Nxa5 Qa6 { ($140 c5) }) 20... c5) 19... a4
+20. a3 Qa5 { $140 Rb8, Qb5 $15 }) (18. g4 Bg6 19. h4 h6 (19... h5 20. Rg1
+hxg4 21. Rxg4 $36) 20. h5 Bh7 21. Re1 Bd6 { $147f4 } 22. f4 Be4) 18...
+Bxc5 19. Qxc5 Re8 (19... Qf4+ 20. Kb1 Re8 21. Qd4 (21. Qxa7 Qc4 22. Rc1 (
+22. Nd4 Bg6 23. Rc1 (23. Qd7 Ra8) 23... h5 { $140 c5, Re2 $17 }) 22... h5
+23. g3 (23. Qd4 Bxc2+) 23... Bg6 { $140 Re2 $17 }) (21. Qxc6 Rc8 22. Re1
+Qb8 23. Qxd5 Bxc2+ 24. Ka1 Qxh2 $15) 21... Qxd4 (21... Qg5 22. g4 Bc8 23.
+Qc3 $16) (21... Qd6 22. Qxa7 $16) (21... Qc7 22. Qc3 { $140 g3 $14 }) 22.
+Nxd4 Bd7 23. Rd1 $14) 20. g3 Qb6 (20... Qe5 21. a4 (21. Qxa7 Qe2 22. Qc5
+Qxf3 23. Rd1 Re2 $19) (21. Rd1 Qe2 22. Qc3 (22. Nd4 Qe3+ 23. Kb1 Qd2 24.
+Rc1 Re1 25. Nb3 Rxc1+ 26. Nxc1 Qxh2 27. Qxc6 h5 $17) 22... Qxh2 23. Nd4 Bd7
+24. f4 Qh6 $17) (21. Qc3 Qxc3 22. bxc3 Kf8 $11) 21... g6 (21... Qe2 22. Nd4
+Qf2 (22... Qe3+ 23. Kb1 { $140 Qa7 $16 }) (22... Qg2 23. Rd1 { $140 Nf5 })
+23. b4 (23. Kb1 Bxc2+ 24. Qxc2 Qxd4 25. Qxc6 Rb8 $17) (23. Rd1 Re1 24. Qc3
+Rxd1+ 25. Kxd1 Qg1+ 26. Ke2 Qxh2+ 27. Ke3 Qxg3 28. Nxf5 Qg5+ $17) 23...
+Qe3+ 24. Kb2 Rb8 25. Rd1 $16) (21... Qe3+ 22. Qxe3 Rxe3 23. Nd4 Bd7 24. Kd2
+Re8 25. b4 $16) 22. Nd4 Qe3+ 23. Kb1 Qf2 24. Rc1 Re1 25. Rxe1 Qxe1+ 26. Ka2
+$16) 21. Kd2 h5 $6 (21... Qa6 22. Nd4 Bd7 23. a3 Qb6 24. b4 Qxc5 25. bxc5
+Rb8 26. Re1 Kf8 27. Re3 { $140 28.Rb3 Rb3 29.cb3 $16 }) ($142 21... Bg6 22.
+a4 (22. a3 h5 23. Qxb6 axb6 24. Nd4 c5 25. Nb5 d4 26. c3 Re3 $17) 22... Qa6
+23. Nd4 Qxa4 24. b3 Qa6 25. Re1 Rxe1 26. Kxe1 h5 27. Nxc6 Qa1+ 28. Kd2 Qf1
+$13) 22. a4 g6 (22... Qb8 23. Nd4 (23. Re1 Rxe1 24. Kxe1 Qe5+ 25. Kd2 Qxb2
+26. Nd4 Bd7 27. Qxa7 Qb4+ $11) 23... Bd7 (23... Qe5 24. Kc1 $16) 24. b4 (
+24. Kc1 Qb6) 24... h4 25. f4 hxg3 26. hxg3 Re4 (26... g5 27. Qc3) 27. Re1
+$16) 23. Qxb6 (23. a5 Qb8 24. Nd4 (24. f4 Re4 { $140 Rc4 }) (24. Re1 Rxe1
+25. Kxe1 Qe5+ 26. Kd2 Qxb2 $11) 24... Qxb2 25. Nxf5 gxf5 $11) 23... axb6
+24. a5 bxa5 25. Ra1 Rb8 { $147b2 } (25... Bxc2 26. Kxc2 Re2+ 27. Kc3 Rxh2
+28. Rxa5 Rg2 29. Nd4 Rxg3 30. b4 h4 31. Nxc6 h3 32. Ra1 Rxf3+ 33. Kd4 Rb3
+34. Kc5 g5 35. b5 g4 36. b6 g3 37. Nb4 Rc3+ 38. Kb5 Rc8 39. b7 { $140 Ra8
+$18 }) (25... h4 26. Rxa5 (26. Nxa5 c5 27. Nb3 hxg3 28. hxg3 Rb8 29. g4 Be6
+30. Nxc5 Rxb2 31. Nxe6 fxe6 32. Ra7 Kf8 $11) 26... Bxc2 27. Kxc2 Re2+ 28.
+Nd2 h3 29. b4 Rxh2 30. Ra1 Rg2 31. g4 Kf8 32. Rh1 h2 33. Kc3 Ke7 34. Nb3
+Kd6 35. Nc5 { $140 Nd3 $16 }) (25... Kf8 $5 26. Rxa5 Ke7 27. Ra7+ Kd6 28.
+Rxf7 c5 { $140 d4 $13 }) 26. Rxa5 Rb4 $2 (26... h4 27. Kc3 Kg7 (27... Kf8
+28. Nd4 Bd7 29. Ra7 c5 30. Rxd7 cxd4+ 31. Kxd4 Rxb2 32. Rc7 $16) 28. Nd4
+hxg3 29. hxg3 Bd7 30. Ra7 $16) ($142 26... Kf8 27. Kc3 (27. Ra7 Ke8 (27...
+c5 28. Ra5 c4 (28... d4 29. Rxc5 d3 30. Nd4 $18) 29. Nd4 Rxb2 30. Rxd5 $16)
+28. Rc7 Rb6 29. Kc3 Bh3 30. Nc5 (30. Nd4 Bd7 { $140 Ke7-d6 }) 30... Bg2 31.
+f4 d4+ $11) (27. Ra6 Bd7 28. Nc5 Be8 29. Kc3 Ke7 { $140 Kd6 $14 }) 27...
+Ke8 (27... Ke7 28. Ra7+ Kd6 29. Rxf7 c5 30. Rf6+ Ke5 31. Rc6 $18) 28. Nd4 (
+28. Nc5 d4+ $11) (28. Ra7 c5 29. Nxc5 (29. Rc7 d4+ 30. Kd2 d3) 29... d4+
+30. Kxd4 Rxb2 $11) 28... Bd7 29. h4 Ke7 { $140 Kd6 $14 }) 27. Rc5 Bd7 28.
+Kc3 Ra4 $6 (28... Rb8 29. Ra5 Kf8 30. Ra7 Be8 (30... Ke8 31. Nc5 Bf5 32. b4
+d4+ 33. Kb3 $16) 31. h4 $16) 29. Na5 $18 d4+ (29... Ra1 30. Nxc6 Rh1 31. b4
+Rxh2 32. b5 Rh1 33. Rxd5) 30. Kd3 (30. Kb3 $2 Ra1 31. Nxc6 d3 32. cxd3 Rh1
+$11) (30. Kd2 Ra1 31. Nxc6 Bxc6 32. Rxc6 Rh1 33. h4 $18) 30... Ra1 (30...
+Bf5+ 31. Kd2 Ra2 32. Nxc6 Rxb2 33. Ne7+ $18) 31. Nxc6 Rd1+ 32. Ke2 Rh1 33.
+Nxd4 Rxh2+ 34. Ke3 Rh3 35. Ne2 h4 36. gxh4 Rxh4 37. c4 f5 38. Nd4 Kf7 39.
+Rc7 Ke8 40. c5 Rh2 (40... Kd8 41. Ra7 Rh2 42. b4 Rb2 43. c6 Bc8 44. b5 {
+$140 45.Rg7, 45.Kd3 }) 41. c6 1-0
+
+[Event ""]
+[Site "Wijk aan Zee"]
+[Date "1988"]
+[Round ""]
+[White "Ljubojevic, Lj"]
+[Black "Huebner, R."]
+[Result "1/2-1/2"]
+[WhiteElo "2610"]
+[BlackElo "2595"]
+[ECO "C07"]
+[Opening "French"]
+[Variation "Tarrasch, open variation"]
+[Annotator "Huebner, R."]
+
+1. e4 e6 2. d4 d5 3. Nd2 c5 4. Ngf3 cxd4 5. exd5 Qxd5 6. Bc4 Qd6 7. O-O Nf6
+8. Nb3 Nc6 9. Nbxd4 Nxd4 10. Nxd4 a6 11. a4 { $140 Ra3 } 11... Qc7 12. Qe2
+Bd6 13. h3 O-O 14. Rd1 $146 (14. Bg5 b6 (14... Bh2+ 15. Kh1 Bf4 16. Bxf4 (
+16. Bxf6 gxf6 $15) 16... Qxf4 17. Rfd1 $14 b6 $6 18. Qf3 Qxf3 19. Nxf3 {
+$140 Rd6 }) 15. Rad1 (15. Rfd1 { - 14.Rd1 }) 15... Bh2+ 16. Kh1 Bf4 17.
+Bxf4 (17. Qf3 $2 Bxg5 18. Qxa8 Qxc4 (18... Bb7 $2 19. Nxe6 $18)) 17... Qxf4
+18. Qf3 Qxf3 19. Nxf3 Bd7 20. b3 b5 $11) 14... b6 15. Bg5 Bh2+ (15... Bb7
+16. Bxf6 gxf6 17. Nxe6 Bh2+ 18. Kh1 fxe6 19. Qxe6+ Kh8 20. Rd7 Qc6 (20...
+Bc8 21. Rxc7 Bxe6 22. Kxh2 $18) 21. Rxb7 Qxb7 22. Kxh2 (22. Bd5 Qc8) 22...
+Rae8 (22... Qc7+ 23. Kg1 Rae8 24. Qg4 $16) 23. Qd6 $16) 16. Kh1 (16. Kf1
+Bf4 (16... Be5 17. Ra3 Bb7 18. Re3 Bf4 19. Bxf4 Qxf4 20. Kg1 Rfd8 21. c3
+$11 { - 16.Kh1 }) 17. Bxf4 Qxf4 18. Qf3 Qc7 19. Qxa8 Bb7 20. Qxf8+ (20.
+Nxe6 Qxc4+ $19) 20... Kxf8 21. b3 Qh2 22. f3 Nh5 23. Ne2 Ke7 $13) 16... Be5
+(16... Bb7 17. Bxf6 gxf6 18. Nxe6) (16... Bf4 17. Bxf4 Qxf4 18. Qf3) 17.
+Ra3 Bb7 18. Re3 (18. Rc3 $2 Ne4) (18. Bxe6 $2 Bxd4) 18... Bf4 19. Bxf4 (19.
+Nxe6 fxe6 20. Rxe6 Kh8 21. Bxf6 (21. Re7 Qc6 $19) 21... Rxf6 (21... gxf6
+22. Re7 Qc6 23. Bd5 $13) 22. Re7 Qc6 23. Bd5 Qxd5 24. Rxd5 Bxd5 $17) 19...
+Qxf4 20. c3 (20. Bxe6 Rad8 (20... fxe6 21. Nxe6 Qxa4 22. Nxf8 Rxf8 23. Re7
+Qc6 24. Qe6+ $13) 21. Red3 (21. c3 fxe6 22. Nxe6 Rxd1+ 23. Qxd1 Qxf2 $19)
+21... Rde8 (21... Qe4 22. Qxe4 Nxe4 23. Kg1 fxe6 24. Nxe6 Rxd3 25. cxd3 Rf6
+$17) 22. Re3 fxe6 23. Nxe6 Rxe6 24. Rxe6 Ne4 $19) (20. Rxe6 Ne4 $1 21. Rf1
+(21. Kg1 Nxf2 22. Rd2 Nxh3+ 23. gxh3 Qg3+ $19) 21... fxe6 22. Nxe6 Ng3+ (
+22... Qh6 23. Nxf8+ Kxf8 $17) 23. fxg3 Qxf1+ 24. Qxf1 Rxf1+ 25. Bxf1 Rc8
+$17) 20... Rfd8 21. Kg1 a5 { $140 Bd5 $147e6 } 22. Re1 (22. Red3 $5 Qe4
+23. Qxe4 (23. Qf1 Nd5 { $140 Nf4 }) 23... Bxe4 24. R3d2 g5 $13) 22... Bd5 (
+22... g6 $2 23. Rxe6 fxe6 24. Nxe6 $18) 23. Re5 Rac8 (23... g6 $6 24. g3
+Qh6 25. Bxd5 Nxd5 (25... Rxd5 26. Rxe6 $18) 26. h4 $16) 24. Ba6 (24. Bxd5
+Nxd5 $11) (24. Bb5 g6 25. g3 Qh6 26. h4 Qf8 $13 { $150 a8-h1 }) 24... Rc5
+25. Bb5 (25. Qd3 $2 Bc4 26. Nxe6 Bxd3 27. Nxf4 Bxa6 $19) (25. g3 Qh6 26. h4
+Nd7 { $140 Qf6 $13 }) 25... g6 26. Qd3 $6 (26. g3 Qh6 27. h4 Qf8 $13) 26...
+Rdc8 (26... Bxg2 $2 27. Nxe6 $18) (26... Bc4 $2 27. Nxe6 $18) (26... Rcc8
+27. R1e3 $16) 27. R1e3 Bb7 (27... Bc4 $2 28. Rxc5 $18) (27... Bxg2 $2 28.
+Rxc5 bxc5 29. Ne2 Qg5 30. Rg3 $18) 28. Ne2 Qh4 (28... Qxe5 $2 29. Rxe5 Rxe5
+30. Qd4 Rcc5 31. Qd8+ Kg7 32. Qxb6 $18) 29. Rxc5 (29. Qd6 $2 Nd5 30. Rd3
+Rd8 $19) 29... bxc5 30. Re5 (30. Ba6 $2 c4 31. Qd6 Ne4 $19) (30. Qd6 Ne4
+31. Qf4 Qxf4 32. Nxf4 c4 { $140 33...Nd6, 33...Rc5 $17 }) (30. Ng3 Qf4)
+30... Nd5 (30... Ne4 $2 31. g3 $16) 31. Qd2 (31. c4 Qf6 32. Qg3 Nb4 $17)
+31... Rd8 32. Qg5 (32. Rg5 { ($140 c4 Ljubojevic, Lj) } 32... Kg7 (32... h6
+$2 33. Rg4 $16) 33. Ng3 (33. c4 Nf6 34. Qxd8 (34. Rxg6+ hxg6 35. Qxd8 Qe4
+$19) 34... Qxg5 35. Ng3 h5 36. Qc7 (36. Qxa5 $2 h4 37. Qc7 hxg3 38. Qxb7
+Qc1#) 36... h4 37. Qxb7 hxg3 38. fxg3 Qxg3 39. Bc6 Nh5 { $140 Nf4 $17
+}) 33... f5 { ($140 Kf6 Karpov, An) } 34. c4 Kf6 (34... h6 $5) 35. Rh5 (35.
+Qxa5 Ra8 $19) (35. cxd5 Qxg5 (35... Rxd5 36. Rh5 $13) 36. Qc3+ e5 37. Qxa5
+Kf7 $17) 35... gxh5 36. Qh6+ Ke5 37. Qg7+ Qf6 38. Qxb7 Qe7 { $140 39...Nb4,
+39...Nf4 $17 }) 32... Qxg5 33. Rxg5 f5 $2 $138 (33... f6 34. Rg3 Nb6 35.
+Nf4 Rd1+ 36. Kh2 e5 37. Rd3 Rxd3 38. Nxd3 c4 39. Nc5 Bd5 40. f3 f5 41. Kg3
+Kf7 42. Nd7 (42. Kf2 Ke7 $19) 42... Nxd7 43. Bxd7 Ke7 44. Bb5 Kd6 { $140
+Kc5, Bc6 $17 }) 34. Rg3 Nb6 35. Re3 $2 $138 (35. Nf4 Rd1+ 36. Kh2 Bd5 (
+36... e5 37. Rd3 $16) 37. Rd3 Rb1 38. Rd2 $14) 35... Kf7 (35... Kf7 36. Nf4
+Rd1+ 37. Kh2 Nd5 38. Nxd5 (38. Rd3 Rb1 39. Nxd5 exd5 40. Rd2 f4 41. Be2 Ke6
+42. Bf3 c4 43. g3 fxg3+ 44. Kxg3 Ra1 45. Bd1 Bc6 46. Kf4 h6 $17) 38... Bxd5
+(38... exd5 39. Re8 d4 40. Rh8 Ke6 41. Rxh7 Bd5 42. Rc7 $13) 39. Rd3 Rxd3 (
+39... Rb1 40. c4 Be4 41. Rd7+ { $140 f3 }) 40. Bxd3 $11) 1/2-1/2
+
diff --git a/_assets/vendor/pgn4web/chess-informant-symbols.html b/_assets/vendor/pgn4web/chess-informant-symbols.html
new file mode 100644
index 0000000..43f0ae0
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess-informant-symbols.html
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+Chess Informant symbols
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/chess-informant-template.html b/_assets/vendor/pgn4web/chess-informant-template.html
new file mode 100644
index 0000000..93e09a1
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess-informant-template.html
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+pgn4web template
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Chess Informant symbols example
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Event:
+
+Site:
+
+Round:
+
+Date:
+
+White:
+
+Black:
+
+Result:
+
+Side to move:
+
+Last move: variations:
+
+Next move: variations:
+
+Move comment:
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/chess960wch06.css b/_assets/vendor/pgn4web/chess960wch06.css
new file mode 100644
index 0000000..650d2bd
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess960wch06.css
@@ -0,0 +1,139 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ padding: 10px;
+ font-family: sans-serif;
+ font-size: 16px;
+ color: black;
+ background: white;
+}
+
+a {
+ text-decoration: none;
+ color: black;
+}
+
+ul {
+ margin-bottom: 0px;
+}
+
+.boardTable {
+ border-color: #C4B9A0;
+ border-width: 2px;
+ border-style: outset;
+}
+
+.pieceImage {
+ width: 32px;
+ height: 32px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 42px;
+ height: 42px;
+ border-style: solid;
+ border-width: 1px;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ border-color: #EFE6D0;
+ background: #EFE6D0;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ border-color: #C4B9A0;
+ background: #C4B9A0;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ border-style: inset;
+}
+
+.selectControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.optionSelectControl {
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnButton {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.move,
+.variation,
+.comment {
+ color: black;
+ font-family: sans-serif;
+ line-height: 1.3em;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.comment,
+.variation {
+ color: gray;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+a.variation {
+ color: gray;
+}
+
+.moveOn,
+.variationOn {
+ background: #EFE6D0;
+}
+
+.label {
+ color: black;
+ font-weight: bold;
+ font-size: 16px;
+}
+
+.gameFEN {
+ font-size: 13px;
+ text-align: left;
+}
+
+.gameText {
+ font-size: 13px;
+ text-align: justify;
+}
+
diff --git a/_assets/vendor/pgn4web/chess960wch06.html b/_assets/vendor/pgn4web/chess960wch06.html
new file mode 100644
index 0000000..98a5d93
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess960wch06.html
@@ -0,0 +1,161 @@
+
+
+
+
+
+
+
+Chess960 World Championship 2006
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+This chess variant uses the same board and pieces as standard chess, with extended options for the starting position and castling rules adapted accordingly.
+
+Starting position:
+
+ pawns start in the same position as in standard chess
+ White pieces are placed randomly on the first rank
+
+ the King must be placed somewhere between the Rooks
+ the Bishops must be on opposite color squares
+
+ Black pieces are placed equal and opposite to the White pieces
+
+
+Castling rules:
+
+ castling is allowed under the following conditions
+
+ the King and the castling Rook must not have moved before
+ no square between the King's initial and final squares may be under attack by any opposing piece
+ all the squares between the King's initial and final squares and all the squares between the Rook's initial and final squares must be vacant except for the King and the castling Rook
+
+ after castling, the Rook and King's final positions are exactly the same as they would be in standard chess
+
+
+Games notation:
+
+ games are recorded using the PGN notation , with an extension to the FEN notation in order to support castling information
+ two very similar FEN extensions have been proposed: X-FEN and Shredder-FEN
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/chess960wch06.pgn b/_assets/vendor/pgn4web/chess960wch06.pgn
new file mode 100644
index 0000000..868dbfa
--- /dev/null
+++ b/_assets/vendor/pgn4web/chess960wch06.pgn
@@ -0,0 +1,144 @@
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "1"]
+[White "Aronian, Levon"]
+[Black "Svidler, Peter"]
+[Result "1-0"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "nbbrnkrq/pppppppp/8/8/8/8/PPPPPPPP/NBBRNKRQ w KQkq - 0 1"]
+
+1. c4 c5 2. d4 cxd4 3. Rxd4 Be5 4. Rd1 O-O 5. Nf3 Bf6 6. Nc2 g6 7. b3
+Nac7 8. Ne3 Bb2 9. O-O Bxc1 10. Rxc1 Nf6 11. h3 b6 12. Qh2 d6 13. Qg3 Qg7 14.
+Qh4 Bb7 15. Rfd1 Rc8 16. Nd4 Rfd8 17. Rc3 e6 18. Nef5 exf5 19. Nxf5 g5 20. Qg3
+Nh5 21. Qe3 Qf6 22. Ne7+ Kf8 23. Nxc8 Rxc8 24. Qd2 Nf4 25. Rg3 Rd8 26. Bxh7
+Nce6 27. e3 Nh5 28. Rg4 Qh6 29. Bf5 Neg7 30. Qc2 Qf6 31. Be4 Bc8 32. Bf3 Qe5
+33. Re4 Bf5 34. Rxe5 Bxc2 35. Rd2 Bg6 36. Bxh5 Nxh5 37. Rxg5 Nf6 38. f3 Ke7 39.
+e4 Nh7 40. Rgd5 f6 41. f4 1-0
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "2"]
+[White "Svidler, Peter"]
+[Black "Aronian, Levon"]
+[Result "0-1"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "bqnrkbrn/pppppppp/8/8/8/8/PPPPPPPP/BQNRKBRN w KQkq - 0 1"]
+
+1. c4 Ng6 2. e3 e6 3. f4 b6 4. b3 d5 5. cxd5 Bxd5 6. Ng3 Nd6 7. Bd3
+Qa8 8. e4 Bc6 9. Nce2 Nb5 10. Qc2 Bc5 11. Bxb5 Bxb5 12. d4 Bb4+ 13. Kf2 O-O 14.
+f5 exf5 15. Nxf5 Ne7 16. Neg3 Nxf5 17. Nxf5 Bd7 18. g4 Rde8 19. Kf3 f6 20. d5
+Rf7 21. h4 Bf8 22. h5 c6 23. d6 c5 24. Rge1 g6 25. hxg6 hxg6 26. Nh4 f5 27.
+gxf5 gxf5 28. Rg1+ Kh7 29. Ng6 Bh6 30. Ne5 Rxe5 31. Bxe5 fxe4+ 32. Ke2 Rf5 33.
+Qc4 Qe8 34. Bg3 Bb5 35. d7 Bxc4+ 36. bxc4 Qh5+ 37. Ke1 Qf3 0-1
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "3"]
+[White "Svidler, Peter"]
+[Black "Aronian, Levon"]
+[Result "1-0"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "bnrkrbnq/pppppppp/8/8/8/8/PPPPPPPP/BNRKRBNQ w KQkq - 0 1"]
+
+1. b3 b6 2. e4 e5 3. Nf3 f6 4. Bc4 Bc5 5. Qf1 Ne7 6. O-O-O Nbc6 7. Ba6
+Rb8 8. Bc4 Qf8 9. Nc3 Nd4 10. Nxd4 Bxd4 11. Kb1 Nc8 12. f4 Nd6 13. Bd3 b5 14.
+Nxb5 Nxb5 15. Bxb5 Bxa1 16. Kxa1 exf4 17. Qd3 Qd6 18. Qxd6 cxd6 19. Bd3 f5 20.
+exf5 Bxg2 21. Rg1 f3 22. Bf1 O-O 23. Bxg2 fxg2 24. Rxg2 Rxf5 25. Rg4 Kf7 26.
+Kb2 g5 27. Rd4 Rb6 28. h4 h6 29. hxg5 hxg5 30. Rh1 Kg7 31. c4 d5 32. c5 Rc6 33.
+b4 d6 34. cxd6 Rxd6 35. a4 a6 36. Kc3 Rb6 37. b5 axb5 38. a5 Rc6+ 39. Kb4 Rc4+
+40. Rxc4 bxc4 41. a6 Rf8 42. Kc5 Kg6 43. a7 g4 44. Kxd5 Ra8 45. Ra1 g3 46. Kc6
+Kf5 47. Kb7 Rxa7+ 48. Rxa7 Ke4 49. Ra3 Kf4 50. Rc3 1-0
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "4"]
+[White "Aronian, Levon"]
+[Black "Svidler, Peter"]
+[Result "0-1"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "bbqrknrn/pppppppp/8/8/8/8/PPPPPPPP/BBQRKNRN w KQkq - 0 1"]
+
+1. c4 c5 2. b3 b6 3. Nhg3 Nhg6 4. Ne3 Ne6 5. Nd5 Nef4 6. Nxf4 Bxf4 7.
+e3 Bb8 8. d4 cxd4 9. Bxd4 O-O 10. e4 d5 11. exd5 e6 12. O-O exd5 13. c5 bxc5
+14. Qxc5 Nf4 15. Nf5 Qxc5 16. Bxc5 Rfe8 17. Nd4 Ne6 18. Ba3 Nxd4 19. Rxd4 Bc6
+20. Bd3 Be5 21. Rh4 g6 22. Bc1 Rc8 23. Ba6 Rcd8 24. Rh3 d4 25. f4 Bc7 26. Bd3
+Re3 27. Rg3 Bb6 28. Bd2 f5 29. Kf2 Be4 30. Bc4+ Kg7 31. Rd1 Rc3 32. Rc1 Rc2 33.
+Ke2 Rxa2 34. Kd1 d3 35. b4 Rc2 36. Rxc2 dxc2+ 37. Kc1 Bc7 0-1
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "5"]
+[White "Aronian, Levon"]
+[Black "Svidler, Peter"]
+[Result "1-0"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "bnqrnbkr/pppppppp/8/8/8/8/PPPPPPPP/BNQRNBKR w KQkq - 0 1"]
+
+1. c4 c5 2. b3 b6 3. Nf3 e6 4. d4 cxd4 5. Nxd4 Nc6 6. Nf3 Be7 7. Nc3
+O-O 8. g3 Nf6 9. Bg2 Nb4 10. O-O d5 11. a3 Na6 12. cxd5 Nxd5 13. b4 Nxc3 14.
+Bxc3 Rxd1 15. Rxd1 Rd8 16. Rxd8+ Bxd8 17. Qb2 f6 18. Bh3 Nc7 19. Nd4 Qd7 20.
+Bg4 f5 21. Bf3 Nd5 22. Qb3 Nxc3 23. Qxc3 Bf6 24. Bxa8 Bxd4 25. Qd3 Qd8 26. Bb7
+Kf7 27. Ba6 Bf6 28. Qb3 Ke7 29. Bc4 Qd6 30. Qf3 Be5 31. Bb3 Kf6 32. h4 Bb2 33.
+g4 Bxa3 34. Qc3+ Kg6 35. h5+ Kh6 36. g5+ Kxh5 37. Qxg7 Kg4 38. g6 h5 39. Qc3
+1-0
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "6"]
+[White "Svidler, Peter"]
+[Black "Aronian, Levon"]
+[Result "1-0"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "qnrkbrnb/pppppppp/8/8/8/8/PPPPPPPP/QNRKBRNB w KQkq - 0 1"]
+
+1. d4 g6 2. Nf3 c5 3. d5 d6 4. a4 Na6 5. c4 Bd7 6. Bc3 Nf6 7. b3 O-O-O
+8. O-O Ne4 9. Bxh8 Rxh8 10. g3 Qb8 11. Ne1 Nf6 12. Nd3 h5 13. b4 h4 14. b5 Nc7
+15. Nd2 Rh6 16. Nf3 hxg3 17. fxg3 Rdh8 18. Ng5 Rxh2 19. Bg2 R8h5 20. Nxf7 Ng4
+21. Nf4 Ne3 22. Rf3 Nxg2 23. Nxh5 Rxh5 24. Kxg2 Bh3+ 25. Kg1 Ne8 26. a5 Bf5 27.
+Re3 e5 28. dxe6 Qc7 29. e7 Rh7 30. Ng5 Rxe7 31. b6 1-0
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "7"]
+[White "Svidler, Peter"]
+[Black "Aronian, Levon"]
+[Result "0-1"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "rbbqnknr/pppppppp/8/8/8/8/PPPPPPPP/RBBQNKNR w HAha - 0 1"]
+
+1. c4 c6 2. Ngf3 d5 3. cxd5 cxd5 4. d4 Ngf6 5. O-O O-O 6. Nd3 Bf5 7.
+Nh4 Be4 8. f3 Bxd3 9. Qxd3 Qb6 10. b3 Nd6 11. Kh1 Rc8 12. g3 a6 13. Bd2 Qd8 14.
+Bc2 Bc7 15. Rac1 Ba5 16. b4 Bb6 17. Bg5 g6 18. Bb3 Rxc1 19. Rxc1 Rc8 20. g4 Nb5
+21. Rxc8 Qxc8 22. Be3 Qc3 23. g5 Qe1+ 24. Kg2 Nh5 25. Kh3 e6 26. a4 Nc3 27. Ng2
+Qxe2 28. Qxe2 Nxe2 29. Bd1 Nc3 30. Bc2 Na2 31. b5 axb5 32. axb5 Nc3 33. Bd3 Nd1
+34. Bg1 Kf8 35. Kg4 Ke7 36. f4 Ng7 37. Ne1 Nf5 38. Nc2 Nc3 39. h4 Bc7 40. Bf2
+h5+ 41. gxh6 Nxh6+ 42. Kg5 Nf5 43. h5 gxh5 44. Kxh5 Ne4 0-1
+
+[Event "Chess960 rapid WCh"]
+[Site "Mainz GER"]
+[Date "2006"]
+[Round "8"]
+[White "Aronian, Levon"]
+[Black "Svidler, Peter"]
+[Result "1-0"]
+[Variant "Chess960"]
+[SetUp "1"]
+[FEN "bqrknbrn/pppppppp/8/8/8/8/PPPPPPPP/BQRKNBRN w GCgc - 0 1"]
+
+1. c4 Ng6 2. Nf3 Nf6 3. Ng5 Ke8 4. e3 c5 5. f4 b6 6. b3 e6 7. Bd3 Nxf4
+8. exf4 Qxf4 9. Nf3 Bd6 10. O-O-O Bxf3 11. gxf3 g6 12. Ng3 Be5 13. Ne2 1-0
+
diff --git a/_assets/vendor/pgn4web/collection-example.html b/_assets/vendor/pgn4web/collection-example.html
new file mode 100644
index 0000000..1fd3d9a
--- /dev/null
+++ b/_assets/vendor/pgn4web/collection-example.html
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+pgn4web games collection example
+
+
+
+
+
+
+
+
+This is an application example showing how to use the pgn4web file collection.html to manage a collection of PGN files.
+
+Two alternative options are shown.
+
+
+
+links to the viewer
+
+A link can be listed for viewing each PGN file in a new browser window:
+
+
+
+
+
+dropdown menu selection
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/collection.css b/_assets/vendor/pgn4web/collection.css
new file mode 100644
index 0000000..2434de2
--- /dev/null
+++ b/_assets/vendor/pgn4web/collection.css
@@ -0,0 +1,178 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+@import url("fonts/pgn4web-font-LiberationSans.css");
+@import url("fonts/pgn4web-font-ChessSansUsual.css");
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ padding: 10px;
+ font-family: 'pgn4web Liberation Sans', sans-serif;
+ color: black;
+ background: white;
+}
+
+div, span, table, tr, td {
+ font-family: 'pgn4web Liberation Sans', sans-serif; /* fixes IE9 body css issue */
+}
+
+.containerTable {
+ width: 100%;
+}
+
+.containerCell {
+ padding: 20px;
+}
+
+.gametextContainerCell {
+ padding-left: 20px;
+}
+
+.gametextDiv {
+ padding-right: 20px;
+ height: 470px;
+ overflow: auto;
+ scrollbar-base-color: white;
+}
+
+.boardTable {
+ width: 376px;
+ height: 376px;
+ border-style: solid;
+ border-color: #663300;
+ border-width: 3px;
+ box-shadow: 0px 0px 20px #663300;
+}
+
+.pieceImage {
+ width: 36px;
+ height: 36px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 43px;
+ height: 43px;
+ border-style: solid;
+ border-width: 2px;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ border-color: #FFCC99;
+ background: #FFCC99;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ border-color: #CC9966;
+ background: #CC9966;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ border-color: #663300;
+ border-style: solid;
+}
+
+.selectControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 100% !important;
+}
+
+.optionSelectControl {
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnButton {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 10% !important;
+}
+
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 90% !important;
+}
+
+.move,
+.variation,
+.comment {
+ color: black;
+ line-height: 1.4em;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+a.move:hover, a.variation:hover {
+ text-decoration: underline;
+}
+
+.move,
+.variation,
+.commentMove {
+ font-family: 'pgn4web ChessSansUsual', 'pgn4web Liberation Sans', sans-serif;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.comment,
+.variation {
+ color: gray;
+}
+
+a.variation {
+ color: gray;
+}
+
+.moveOn,
+.variationOn {
+ background: #FFCC99;
+}
+
+.label {
+ color: gray;
+ padding-right: 10px;
+ text-align: right;
+}
+
+.boldItem {
+ font-weight: bold;
+}
+
+.linkItem {
+ text-decoration: none;
+ color: black;
+}
+
+.linkItem:hover {
+ text-decoration: underline;
+}
+
+.rowSpace {
+ height: 8px;
+}
+
diff --git a/_assets/vendor/pgn4web/collection.html b/_assets/vendor/pgn4web/collection.html
new file mode 100644
index 0000000..c3e2f27
--- /dev/null
+++ b/_assets/vendor/pgn4web/collection.html
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+
+chess games
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+date
+site
+
+event
+round
+
+white
+black
+
+result
+
+last
+next
+
+
+game 0 (0 )
+archive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/crc32.js b/_assets/vendor/pgn4web/crc32.js
new file mode 100644
index 0000000..2c5804f
--- /dev/null
+++ b/_assets/vendor/pgn4web/crc32.js
@@ -0,0 +1,38 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+"use strict";
+
+function crc32(str) {
+
+ var table = "00000000 77073096 EE0E612C 990951BA 076DC419 706AF48F E963A535 9E6495A3 0EDB8832 79DCB8A4 E0D5E91E 97D2D988 09B64C2B 7EB17CBD E7B82D07 90BF1D91 1DB71064 6AB020F2 F3B97148 84BE41DE 1ADAD47D 6DDDE4EB F4D4B551 83D385C7 136C9856 646BA8C0 FD62F97A 8A65C9EC 14015C4F 63066CD9 FA0F3D63 8D080DF5 3B6E20C8 4C69105E D56041E4 A2677172 3C03E4D1 4B04D447 D20D85FD A50AB56B 35B5A8FA 42B2986C DBBBC9D6 ACBCF940 32D86CE3 45DF5C75 DCD60DCF ABD13D59 26D930AC 51DE003A C8D75180 BFD06116 21B4F4B5 56B3C423 CFBA9599 B8BDA50F 2802B89E 5F058808 C60CD9B2 B10BE924 2F6F7C87 58684C11 C1611DAB B6662D3D 76DC4190 01DB7106 98D220BC EFD5102A 71B18589 06B6B51F 9FBFE4A5 E8B8D433 7807C9A2 0F00F934 9609A88E E10E9818 7F6A0DBB 086D3D2D 91646C97 E6635C01 6B6B51F4 1C6C6162 856530D8 F262004E 6C0695ED 1B01A57B 8208F4C1 F50FC457 65B0D9C6 12B7E950 8BBEB8EA FCB9887C 62DD1DDF 15DA2D49 8CD37CF3 FBD44C65 4DB26158 3AB551CE A3BC0074 D4BB30E2 4ADFA541 3DD895D7 A4D1C46D D3D6F4FB 4369E96A 346ED9FC AD678846 DA60B8D0 44042D73 33031DE5 AA0A4C5F DD0D7CC9 5005713C 270241AA BE0B1010 C90C2086 5768B525 206F85B3 B966D409 CE61E49F 5EDEF90E 29D9C998 B0D09822 C7D7A8B4 59B33D17 2EB40D81 B7BD5C3B C0BA6CAD EDB88320 9ABFB3B6 03B6E20C 74B1D29A EAD54739 9DD277AF 04DB2615 73DC1683 E3630B12 94643B84 0D6D6A3E 7A6A5AA8 E40ECF0B 9309FF9D 0A00AE27 7D079EB1 F00F9344 8708A3D2 1E01F268 6906C2FE F762575D 806567CB 196C3671 6E6B06E7 FED41B76 89D32BE0 10DA7A5A 67DD4ACC F9B9DF6F 8EBEEFF9 17B7BE43 60B08ED5 D6D6A3E8 A1D1937E 38D8C2C4 4FDFF252 D1BB67F1 A6BC5767 3FB506DD 48B2364B D80D2BDA AF0A1B4C 36034AF6 41047A60 DF60EFC3 A867DF55 316E8EEF 4669BE79 CB61B38C BC66831A 256FD2A0 5268E236 CC0C7795 BB0B4703 220216B9 5505262F C5BA3BBE B2BD0B28 2BB45A92 5CB36A04 C2D7FFA7 B5D0CF31 2CD99E8B 5BDEAE1D 9B64C2B0 EC63F226 756AA39C 026D930A 9C0906A9 EB0E363F 72076785 05005713 95BF4A82 E2B87A14 7BB12BAE 0CB61B38 92D28E9B E5D5BE0D 7CDCEFB7 0BDBDF21 86D3D2D4 F1D4E242 68DDB3F8 1FDA836E 81BE16CD F6B9265B 6FB077E1 18B74777 88085AE6 FF0F6A70 66063BCA 11010B5C 8F659EFF F862AE69 616BFFD3 166CCF45 A00AE278 D70DD2EE 4E048354 3903B3C2 A7672661 D06016F7 4969474D 3E6E77DB AED16A4A D9D65ADC 40DF0B66 37D83BF0 A9BCAE53 DEBB9EC5 47B2CF7F 30B5FFE9 BDBDF21C CABAC28A 53B39330 24B4A3A6 BAD03605 CDD70693 54DE5729 23D967BF B3667A2E C4614AB8 5D681B02 2A6F2B94 B40BBE37 C30C8EA1 5A05DF1B 2D02EF8D";
+
+ var crc = 0;
+ var x = 0;
+ var y = 0;
+ crc = crc ^ (-1);
+ for (var i = 0, iTop = str.length; i < iTop; i++) {
+ y = ( crc ^ (str.charCodeAt( i ) % 0x100) ) & 0xFF;
+ x = "0x" + table.substr( y * 9, 8 );
+ crc = ( crc >>> 8 ) ^ x;
+ }
+ return crc ^ (-1);
+}
+
+function printHex(n) {
+ var hex = "0123456789ABCDEF";
+ var s = "";
+ var r = 0;
+ for (var i = 0; i < 8; i++) {
+ r = n % 16;
+ if (r < 0) { r += 16; }
+ s = hex.charAt(r) + s;
+ n >>= 4;
+ }
+ return s;
+}
+
diff --git a/_assets/vendor/pgn4web/demo.html b/_assets/vendor/pgn4web/demo.html
new file mode 100644
index 0000000..c52f529
--- /dev/null
+++ b/_assets/vendor/pgn4web/demo.html
@@ -0,0 +1,259 @@
+
+
+
+
+
+
+
+
+
+pgn4web demo site
+
+
+
+
+
+
+
+
+
+
+
+pgn4web demo site
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/demoGames.pgn b/_assets/vendor/pgn4web/demoGames.pgn
new file mode 100644
index 0000000..c7fb8e5
--- /dev/null
+++ b/_assets/vendor/pgn4web/demoGames.pgn
@@ -0,0 +1,86 @@
+[Event "Tilburg Fontys"]
+[Site "Tilburg"]
+[Date "1998.10.24"]
+[Round "2"]
+[White "Anand, Viswanathan"]
+[Black "Kramnik, Vladimir"]
+[Result "1-0"]
+[ECO "C42"]
+[Opening "Petrov"]
+[Variation "classical attack, Chigorin variation"]
+[Annotator "pgn4web with notes from http://www.chessgames.com"]
+[WhiteElo "2825"]
+[BlackElo "2810"]
+[WhiteFideId "5000017"]
+[BlackFideId "4101588"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+
+{ pgn4web personal account on Kramnik and the Petrov, part 1: in October
+1998, I watched this game live from the tournament hall in Tilburg. At some
+point I was hoping to witness a masterpiece sacrifice win from Kramnik, but
+apparently Anand was well prepared. }
+
+1. e4 e5 2. Nf3 Nf6 3. Nxe5 d6 4. Nf3 Nxe4 5. d4 d5 6. Bd3 Nc6 7. O-O Be7
+8. Re1 Bg4 9. c3 f5 { This is a very old line, with games from Lasker and
+Capablanca's times. } 10. Qb3 O-O 11. Nbd2 Na5 12. Qa4 { Later White tried
+an alternative plan with Qc2 followed by b4 and rapid expansion on the
+queenside, often preceeded by a repetition, as in } (12. Qa4 Nc6 13. Qb3
+Na5 14. Qc2 Nc6 15. b4 { see Anand-Leko, Leon 2001 and the next game of
+this PGN file }) 12... Nc6 13. Bb5 Nxd2 { After this game Black tried to
+improve with } (13... Bh4 14. g3 Bf6 15. Bxc6 bxc6 16. Qxc6 Re8 { as in
+Anand-Kamnik at Wijk An Zee 1999 and in Shirov-Kramnik, Belgrade 1999 })
+14. Nxd2 Qd6 { So far following Anand-Yusupov, Linares 1993, where 15. Nb3
+ensued, eventually a draw. } 15. h3 { $1 This novelty was suggested by
+Anand's second Ubilava after the game in Linares. 15. h3 diverts Black's
+Bishop control of the e6 square and makes sure the h Pawn will not be
+captured when the Black's Queen arrives on h2. This move was voted the 4th
+most important novelty in Informant 74. } 15... Bh5 16. Nb3 Bh4 17. Nc5
+Bxf2+ { A thematic sacrifice for the variation, but Anand was well
+prepared. } 18. Kxf2 Qh2 19. Bxc6 bxc6 20. Qxc6 f4 21. Qxd5+ Kh8 22. Qxh5
+f3 23. Qxf3 { Apparently Anand's home analysis already assessed this
+position as won for White. } 23... Rxf3+ 24. Kxf3 Rf8+ 25. Ke2 Qxg2+ 26.
+Kd3 Qxh3+ 27. Kc2 Qg2+ 28. Bd2 Qg6+ 29. Re4 h5 30. Re1 Re8 31. Kc1 Rxe4 32.
+Nxe4 h4 33. Ng5 Qh5 34. Re3 Kg8 35. c4 { Sadly, it was not the day for a
+masterpiece sacrifice win from Kramnik, but look at the next game to see
+what happened more than 10 years later. } 1-0
+
+[Event "London Chess Classic"]
+[Site "London"]
+[Date "2009.12.13"]
+[Round "5"]
+[White "Howell, David"]
+[Black "Kramnik, Vladimir"]
+[Result "1/2-1/2"]
+[ECO "C42"]
+[Opening "Petrov"]
+[Variation "classical attack, Chigorin variation"]
+[Annotator "pgn4web"]
+[WhiteElo "2597"]
+[BlackElo "2772"]
+[WhiteFideId "410608"]
+[BlackFideId "4101588"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+
+{ pgn4web personal account on Kramnik and the Petrov, part 2: since the
+previous game at Tilburg 1998 I did not attend in person any other top
+event until December 2009. More than 10 years had passed when I was in the
+tournament hall in London, watching Kramnik sacrificing a piece in the same
+variation of the Petrov. Again, I did not witness a masterpiece sacrifice
+win from Kramnik, but the similarity between the two games amazed me. }
+
+1. e4 e5 2. Nf3 Nf6 3. Nxe5 d6 4. Nf3 Nxe4 5. d4 d5 6. Bd3 Nc6 7. O-O Be7
+8. Re1 Bg4 9. c3 f5 10. Qb3 O-O 11. Nbd2 Na5 12. Qa4 Nc6 13. Qb3 Na5 14.
+Qc2 Nc6 15. b4 a6 16. Rb1 b5 17. a4 Rb8 18. axb5 axb5 19. Ne5 Nxe5 20. dxe5
+Nxf2 { Again a piece sacrifice on f2 for attacking chances, however Howell
+defends well. } 21. Kxf2 Bh4+ 22. Kf1 Bxe1 23. Kxe1 Qh4+ 24. g3 Qxh2 25.
+Nf1 Qxc2 26. Bxc2 Rbe8 27. Bd3 Rxe5+ 28. Kf2 f4 29. gxf4 Bf5 30. Bxf5 Rexf5
+31. Ng3 R5f6 32. Kf3 Rc6 33. Bd2 g5 34. Ne2 gxf4 35. Nd4 Rg6 36. Nxb5 Rg3+
+37. Kf2 Rd3 38. Rg1+ Kh8 39. Ke2 Rg3 40. Kf2 Rxg1 41. Kxg1 c5 42. Nd6 cxb4
+43. cxb4 Kg7 44. Bc3+ Kg6 45. b5 Rd8 46. Be5 Rb8 47. Bd4 Rd8 48. Be5 Rb8
+49. Kf2 Rb6 50. Kf3 Kg5 51. Nf7+ Kg6 52. Nd6 Kg5 53. Nf7+ Kg6 { Once again,
+not the day for a masterpiece sacrifice win from Kramnik. Maybe Kramnik and
+I will be more lucky next time, I'll tell you about part 3 of this personal
+account in another 10 years. pgn4web, London 2011. } 1/2-1/2
+
diff --git a/_assets/vendor/pgn4web/demoLiveGames.pgn b/_assets/vendor/pgn4web/demoLiveGames.pgn
new file mode 100644
index 0000000..e4a7e8b
--- /dev/null
+++ b/_assets/vendor/pgn4web/demoLiveGames.pgn
@@ -0,0 +1,180 @@
+[Event "Paul Keres Memorial"]
+[Site "Tallinn EST"]
+[Date "2011.01.09"]
+[Round "7"]
+[White "Ehlvest, Jaan"]
+[Black "Shirov, Alexei"]
+[Result "1/2-1/2"]
+[TimeControl "900+10"]
+[Board "1"]
+[Input "DGT1234"]
+[WhiteClock "0:15.10"]
+[BlackClock "0:15.10"]
+[Clock "B/0:15.29"]
+[WhiteElo "2586"]
+[BlackElo "2722"]
+[WhiteFideId "4500016"]
+[BlackFideId "2209390"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+
+1. c4 { [%clk 0:15.16] } 1... e5 { [%clk 0:15.18] } 2. g3 { [%clk 0:15.11]
+} 2... Nf6 { [%clk 0:15.24] } 3. Bg2 { [%clk 0:15.19] } 3... d5 { [%clk
+0:15.29] } 4. cxd5 { [%clk 0:15.25] } 4... Nxd5 { [%clk 0:15.40] } 5. Nc3 {
+[%clk 0:15.26] } 5... Nb6 { [%clk 0:15.47] } 6. Nf3 { [%clk 0:14.51] } 6...
+Nc6 { [%clk 0:15.54] } 7. d3 { [%clk 0:14.19] } 7... Be7 { [%clk 0:15.59] }
+8. O-O { [%clk 0:14.14] } 8... O-O { [%clk 0:15.50] } 9. Be3 { [%clk
+0:12.41] } 1/2-1/2
+
+[Event "Paul Keres Memorial"]
+[Site "Tallinn EST"]
+[Date "2011.01.09"]
+[Round "7"]
+[White "Vovk, Ilja"]
+[Black "Smirnov, Artem"]
+[Result "1-0"]
+[TimeControl "900+10"]
+[Board "2"]
+[Input "DGT2345"]
+[WhiteClock "0:15.10"]
+[BlackClock "0:15.10"]
+[Clock "B/0:00.04"]
+[WhiteElo "2267"]
+[BlackElo "2428"]
+[WhiteFideId "4501764"]
+[BlackFideId "4143256"]
+[WhiteTitle "FM"]
+[BlackTitle "IM"]
+
+1. d4 { [%clk 0:15.17] } 1... Nf6 { [%clk 0:15.19] } 2. c4 { [%clk 0:15.26]
+} 2... c5 { [%clk 0:15.27] } 3. d5 { [%clk 0:15.33] } 3... e5 { [%clk
+0:15.35] } 4. Nc3 { [%clk 0:15.25] } 4... d6 { [%clk 0:15.43] } 5. e4 {
+[%clk 0:15.31] } 5... Be7 { [%clk 0:15.51] } 6. g3 { [%clk 0:15.20] } 6...
+a6 { [%clk 0:15.52] } 7. Bg2 { [%clk 0:15.16] } 7... O-O { [%clk 0:15.57] }
+8. Nf3 { [%clk 0:15.13] } 8... b5 { [%clk 0:15.47] } 9. Nd2 { [%clk
+0:14.54] } 9... Nbd7 { [%clk 0:15.32] } 10. O-O { [%clk 0:14.50] } 10...
+Nb6 { [%clk 0:15.23] } 11. Qe2 { [%clk 0:13.26] } 11... bxc4 { [%clk
+0:14.50] } 12. a4 { [%clk 0:12.28] } 12... a5 { [%clk 0:13.59] } 13. Nb5 {
+[%clk 0:12.12] } 13... Ba6 { [%clk 0:13.49] } 14. Nxc4 { [%clk 0:10.26] }
+14... Nxa4 { [%clk 0:13.12] } 15. Nbxd6 { [%clk 0:09.54] } 15... Nb6 {
+[%clk 0:11.18] } 16. Rxa5 { [%clk 0:05.47] } 16... Nxc4 { [%clk 0:05.31] }
+17. Rxa6 { [%clk 0:05.49] } 17... Nxd6 { [%clk 0:05.35] } 18. Rxa8 { [%clk
+0:05.58] } 18... Qxa8 { [%clk 0:05.46] } 19. f4 { [%clk 0:06.07] } 19...
+Nd7 { [%clk 0:05.17] } 20. Bh3 { [%clk 0:06.16] } 20... Qd8 { [%clk
+0:04.48] } 21. Bxd7 { [%clk 0:06.23] } 21... Qxd7 { [%clk 0:04.59] } 22.
+fxe5 { [%clk 0:06.32] } 22... Nb5 { [%clk 0:04.21] } 23. Be3 { [%clk
+0:05.58] } 23... Nd4 { [%clk 0:04.30] } 24. Qc4 { [%clk 0:05.33] } 24...
+Qb5 { [%clk 0:00.21] } 25. Qxb5 { [%clk 0:05.19] } 25... Nxb5 { [%clk
+0:00.30] } 26. d6 { [%clk 0:05.25] } 26... Bd8 { [%clk 0:00.39] } 27. Bxc5
+{ [%clk 0:04.11] } 27... Re8 { [%clk 0:00.05] } 28. Ra1 { [%clk 0:04.20] }
+28... Bg5 { [%clk 0:00.13] } 29. h4 { [%clk 0:03.16] } 29... Bh6 { [%clk
+0:00.22] } 30. d7 { [%clk 0:03.11] } 1-0
+
+[Event "Paul Keres Memorial"]
+[Site "Tallinn EST"]
+[Date "2011.01.09"]
+[Round "7"]
+[White "Kovaljov, Denis"]
+[Black "Volodin, Aleksandr"]
+[Result "0-1"]
+[TimeControl "900+10"]
+[Board "3"]
+[Input "DGT4567"]
+[WhiteClock "0:15.10"]
+[BlackClock "0:15.10"]
+[Clock "W/0:00.18"]
+[WhiteElo "2274"]
+[BlackElo "2487"]
+[WhiteFideId "4500814"]
+[BlackFideId "4501950"]
+[BlackTitle "IM"]
+
+1. d4 { [%clk 0:15.19] } 1... Nf6 { [%clk 0:15.09] } 2. Nf3 { [%clk
+0:15.28] } 2... c5 { [%clk 0:15.26] } 3. e3 { [%clk 0:15.18] } 3... e6 {
+[%clk 0:15.29] } 4. Be2 { [%clk 0:15.06] } 4... Be7 { [%clk 0:15.36] } 5.
+O-O { [%clk 0:15.14] } 5... O-O { [%clk 0:15.42] } 6. b3 { [%clk 0:15.03] }
+6... b6 { [%clk 0:15.46] } 7. c4 { [%clk 0:15.06] } 7... Bb7 { [%clk
+0:15.54] } 8. Bb2 { [%clk 0:15.13] } 8... d6 { [%clk 0:16.03] } 9. Nc3 {
+[%clk 0:15.14] } 9... Nbd7 { [%clk 0:16.11] } 10. d5 { [%clk 0:14.40] }
+10... e5 { [%clk 0:16.16] } 11. Qc2 { [%clk 0:14.42] } 11... Re8 { [%clk
+0:16.07] } 12. Nd2 { [%clk 0:14.38] } 12... Bf8 { [%clk 0:16.08] } 13. Rae1
+{ [%clk 0:14.41] } 13... a6 { [%clk 0:15.45] } 14. a4 { [%clk 0:14.24] }
+14... Bc8 { [%clk 0:15.17] } 15. f4 { [%clk 0:13.33] } 15... Qc7 { [%clk
+0:12.48] } 16. f5 { [%clk 0:12.59] } 16... h6 { [%clk 0:10.21] } 17. g4 {
+[%clk 0:13.01] } 17... Be7 { [%clk 0:10.21] } 18. Bc1 { [%clk 0:11.27] }
+18... Nh7 { [%clk 0:09.32] } 19. e4 { [%clk 0:08.02] } 19... g5 { [%clk
+0:08.57] } 20. Nf3 { [%clk 0:06.23] } 20... Ndf6 { [%clk 0:07.46] } 21. h4
+{ [%clk 0:06.05] } 21... Nxg4 { [%clk 0:06.50] } 22. hxg5 { [%clk 0:05.58]
+} 22... hxg5 { [%clk 0:06.54] } 23. Nxg5 { [%clk 0:05.45] } 23... Bxg5 {
+[%clk 0:07.02] } 24. Bxg4 { [%clk 0:05.45] } 24... f6 { [%clk 0:06.37] }
+25. Re2 { [%clk 0:05.03] } 25... Re7 { [%clk 0:04.32] } 26. Rg2 { [%clk
+0:04.30] } 26... Rg7 { [%clk 0:04.41] } 27. Kf2 { [%clk 0:02.56] } 27...
+Bd7 { [%clk 0:04.42] } 28. Rh1 { [%clk 0:02.09] } 28... Be8 { [%clk
+0:04.33] } 29. Bf3 { [%clk 0:02.03] } 29... Bxc1 { [%clk 0:03.45] } 30.
+Rxg7+ { [%clk 0:01.12] } 30... Qxg7 { [%clk 0:03.54] } 31. Qxc1 { [%clk
+0:01.21] } 31... Ng5 { [%clk 0:03.58] } 32. Qg1 { [%clk 0:01.07] } 32... b5
+{ [%clk 0:03.49] } 33. cxb5 { [%clk 0:00.37] } 33... axb5 { [%clk 0:03.57]
+} 34. axb5 { [%clk 0:00.46] } 34... Ra3 { [%clk 0:03.55] } 35. Qb1 { [%clk
+0:00.43] } 35... Qa7 { [%clk 0:03.57] } 36. Be2 { [%clk 0:00.43] } 36...
+c4+ { [%clk 0:04.03] } 37. Kg2 { [%clk 0:00.25] } 37... Rxb3 { [%clk
+0:04.07] } 38. Qe1 { [%clk 0:00.30] } 38... Qe3 { [%clk 0:03.11] } 39. Qh4
+{ [%clk 0:00.14] } 39... Kf8 { [%clk 0:02.58] } 40. Qh8+ { [%clk 0:00.14] }
+40... Ke7 { [%clk 0:03.08] } 41. Qg7+ { [%clk 0:00.27] } 41... Nf7 { [%clk
+0:02.30] } 42. Rh8 { [%clk 0:00.27] } 42... Qg5+ { [%clk 0:02.15] } 43.
+Qxg5 { [%clk 0:00.31] } 43... Nxg5 { [%clk 0:02.23] } 44. Nd1 { [%clk
+0:00.18] } 44... c3 { [%clk 0:02.25] } 45. Ne3 { [%clk 0:00.20] } 45... Rb2
+{ [%clk 0:02.19] } 46. Kf2 { [%clk 0:00.24] } 46... Bxb5 { [%clk 0:02.17] }
+0-1
+
+[Event "Paul Keres Memorial"]
+[Site "Tallinn EST"]
+[Date "2011.01.09"]
+[Round "7"]
+[White "Miezis, Normunds"]
+[Black "Lugovoi, Aleksei"]
+[Result "1/2-1/2"]
+[TimeControl "900+10"]
+[Board "4"]
+[Input "DGT3456"]
+[WhiteClock "0:15.08"]
+[BlackClock "0:15.10"]
+[Clock "W/0:00.55"]
+[WhiteElo "2546"]
+[BlackElo "2531"]
+[WhiteFideId "11600136"]
+[BlackFideId "4116194"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+
+1. c4 { [%clk 0:15.15] } 1... Nf6 { [%clk 0:15.17] } 2. Nc3 { [%clk
+0:15.22] } 2... d5 { [%clk 0:15.26] } 3. cxd5 { [%clk 0:15.29] } 3... Nxd5
+{ [%clk 0:15.35] } 4. g3 { [%clk 0:15.34] } 4... e6 { [%clk 0:15.42] } 5.
+Bg2 { [%clk 0:15.35] } 5... Be7 { [%clk 0:15.47] } 6. Nf3 { [%clk 0:15.25]
+} 6... O-O { [%clk 0:15.52] } 7. d4 { [%clk 0:14.59] } 7... b6 { [%clk
+0:15.21] } 8. e4 { [%clk 0:14.09] } 8... Nxc3 { [%clk 0:15.25] } 9. bxc3 {
+[%clk 0:14.14] } 9... Ba6 { [%clk 0:14.47] } 10. Be3 { [%clk 0:13.19] }
+10... Nd7 { [%clk 0:14.20] } 11. Nd2 { [%clk 0:12.04] } 11... c5 { [%clk
+0:13.21] } 12. e5 { [%clk 0:09.18] } 12... Rc8 { [%clk 0:12.47] } 13. Qa4 {
+[%clk 0:08.12] } 13... Nb8 { [%clk 0:12.54] } 14. Be4 { [%clk 0:07.07] }
+14... Qc7 { [%clk 0:11.34] } 15. f4 { [%clk 0:06.28] } 15... h6 { [%clk
+0:09.12] } 16. Kf2 { [%clk 0:04.47] } 16... b5 { [%clk 0:08.50] } 17. Qb3 {
+[%clk 0:04.42] } 17... Rcd8 { [%clk 0:07.09] } 18. Nf3 { [%clk 0:03.58] }
+18... Nc6 { [%clk 0:06.01] } 19. f5 { [%clk 0:03.07] } 19... exf5 { [%clk
+0:05.55] } 20. Bxf5 { [%clk 0:03.14] } 20... b4 { [%clk 0:05.44] } 21. Rhe1
+{ [%clk 0:02.52] } 21... Na5 { [%clk 0:04.16] } 22. Qc2 { [%clk 0:02.49] }
+22... Qb6 { [%clk 0:04.07] } 23. Qe4 { [%clk 0:02.48] } 23... Bb7 { [%clk
+0:03.39] } 24. Qg4 { [%clk 0:02.56] } 24... bxc3 { [%clk 0:02.51] } 25.
+Rab1 { [%clk 0:03.00] } 25... Qc6 { [%clk 0:03.03] } 26. Rxb7 { [%clk
+0:03.08] } 26... Nxb7 { [%clk 0:03.01] } 27. Be4 { [%clk 0:03.13] } 27...
+Qe6 { [%clk 0:02.54] } 28. Bf5 { [%clk 0:02.15] } 28... Qa6 { [%clk
+0:02.48] } 29. e6 { [%clk 0:02.21] } 29... h5 { [%clk 0:02.39] } 30. Qxh5 {
+[%clk 0:02.24] } 30... g6 { [%clk 0:02.27] } 31. Bxg6 { [%clk 0:02.32] }
+31... fxg6 { [%clk 0:02.37] } 32. Qxg6+ { [%clk 0:02.28] } 32... Kh8 {
+[%clk 0:02.46] } 33. Qh6+ { [%clk 0:02.33] } 33... Kg8 { [%clk 0:02.56] }
+34. Qg6+ { [%clk 0:02.17] } 34... Kh8 { [%clk 0:03.06] } 35. Qh6+ { [%clk
+0:02.00] } 35... Kg8 { [%clk 0:03.15] } 36. Bg5 { [%clk 0:02.07] } 36...
+Qxa2+ { [%clk 0:02.00] } 37. Re2 { [%clk 0:02.06] } 37... Qd5 { [%clk
+0:02.10] } 38. Qg6+ { [%clk 0:01.55] } 38... Kh8 { [%clk 0:02.19] } 39.
+Qh5+ { [%clk 0:01.31] } 39... Kg8 { [%clk 0:02.28] } 40. Qg6+ { [%clk
+0:01.23] } 40... Kh8 { [%clk 0:02.38] } 1/2-1/2
+
diff --git a/_assets/vendor/pgn4web/dynamic-frame-test.html b/_assets/vendor/pgn4web/dynamic-frame-test.html
new file mode 100644
index 0000000..7e359cd
--- /dev/null
+++ b/_assets/vendor/pgn4web/dynamic-frame-test.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+dynamic frame test
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/dynamic-frame.html b/_assets/vendor/pgn4web/dynamic-frame.html
new file mode 100644
index 0000000..6071056
--- /dev/null
+++ b/_assets/vendor/pgn4web/dynamic-frame.html
@@ -0,0 +1,881 @@
+
+
+
+
+
+
+
+chess games
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/encoder-decoder-test.html b/_assets/vendor/pgn4web/encoder-decoder-test.html
new file mode 100644
index 0000000..7b49a7d
--- /dev/null
+++ b/_assets/vendor/pgn4web/encoder-decoder-test.html
@@ -0,0 +1,1478 @@
+
+
+
+
+
+
+
+pgn4web PGN encoder/decoder test
+
+
+
+
+
+
+
+
+
+pgn4web PGN encoder/decoder test
+
+
+
+
+
+
+
+
+status: enter PGN data and press the test button
+
+
+
+original
+decoded
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+encoded
+
+
+
+
+
+
+
+
+decoding key
+
+
+
+
+
+
+
+
+
+
+
+original letters
+letter codes
+decoding values
+encoded letters
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[White "Spassky, Boris"]
+[Black "Fischer, Robert"]
+[Result "0-1"]
+[Date "1972"]
+[Event "World Championship"]
+[Site "Reykjavik"]
+[Round "13"]
+
+1. e4 Nf6 2. e5 Nd5 3. d4 d6 4. Nf3 g6
+5. Bc4 Nb6 6. Bb3 Bg7 7. Nbd2 O-O 8. h3 a5
+9. a4 dxe5 10. dxe5 Na6 11. O-O Nc5 12. Qe2 Qe8
+13. Ne4 Nbxa4 14. Bxa4 Nxa4 15. Re1 Nb6 16. Bd2 a4
+17. Bg5 h6 18. Bh4 Bf5 19. g4 Be6 20. Nd4 Bc4
+21. Qd2 Qd7 22. Rad1 Rfe8 23. f4 Bd5 24. Nc5 Qc8
+25. Qc3 e6 26. Kh2 Nd7 27. Nd3 c5 28. Nb5 Qc6
+29. Nd6 Qxd6 30. exd6 Bxc3 31. bxc3 f6 32. g5 hxg5
+33. fxg5 f5 34. Bg3 Kf7 35. Ne5 Nxe5 36. Bxe5 b5
+37. Rf1 Rh8 38. Bf6 a3 39. Rf4 a2 40. c4 Bxc4
+41. d7 Bd5 42. Kg3 Ra3 43. c3 Rha8 44. Rh4 e5
+45. Rh7 Ke6 46. Re7 Kd6 47. Rxe5 Rxc3 48. Kf2 Rc2
+49. Ke1 Kxd7 50. Rexd5 Kc6 51. Rd6 Kb7 52. Rd7 Ka6
+53. R7d2 Rxd2 54. Kxd2 b4 55. h4 Kb5 56. h5 c4
+57. Ra1 gxh5 58. g6 h4 59. g7 h3 60. Be7 Rg8
+61. Bf8 h2 62. Kc2 Kc6 63. Rd1 b3 64. Kc3 h1Q
+65. Rxh1 Kd5 66. Kb2 f4 67. Rd1 Ke4 68. Rc1 Kd3
+69. Rd1 Ke2 70. Rc1 f3 71. Bc5 Rxg7 72. Rxc4 Rd7
+73. Re4 Kf1 74. Bd4 f2 0-1
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/encoder-example.php b/_assets/vendor/pgn4web/encoder-example.php
new file mode 100644
index 0000000..f351adc
--- /dev/null
+++ b/_assets/vendor/pgn4web/encoder-example.php
@@ -0,0 +1,107 @@
+"), array("&", "<", ">"), $pgnText);
+ $pgnTextBox = $pgnText;
+
+ $pgnText = str_replace("\\\"", "\"", $pgnText);
+
+ $pgnText = preg_replace("/\[/", "\n\n[", $pgnText);
+ $pgnText = preg_replace("/\]/", "]\n\n", $pgnText);
+ $pgnText = preg_replace("/([012\*])(\s*)(\[)/", "$1\n\n$3", $pgnText);
+ $pgnText = preg_replace("/\]\s*\[/", "]\n[", $pgnText);
+ $pgnText = preg_replace("/^\s*\[/", "[", $pgnText);
+ $pgnText = preg_replace("/\n[\s*\n]+/", "\n\n", $pgnText);
+} else {
+ $pgnText = <<
+
+
+
+
+
+
+pgn4web PGN encoder/decoder php example
+
+
+
+
+
+
+
+pgn4web PGN encoder/decoder php example
+
+
+
+
+
+
+
+$pgnTextBox
+
+
+PGN:$pgnLength encoded:$pgnEncodedLength ratio:$compressionRatio url:$frameUrlLength
+
+
+
+
+
+
+
+END;
+
+?>
diff --git a/_assets/vendor/pgn4web/engine.html b/_assets/vendor/pgn4web/engine.html
new file mode 100644
index 0000000..6d5321c
--- /dev/null
+++ b/_assets/vendor/pgn4web/engine.html
@@ -0,0 +1,1211 @@
+
+
+
+
+
+
+
+pgn4web analysis board
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
⊥
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/engine.js b/_assets/vendor/pgn4web/engine.js
new file mode 100644
index 0000000..7a5dc8e
--- /dev/null
+++ b/_assets/vendor/pgn4web/engine.js
@@ -0,0 +1,114 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+if (typeof(pgn4web_engineWindowDisableAnalysisBoard) == "undefined") { var pgn4web_engineWindowDisableAnalysisBoard = false; }
+
+if (!pgn4web_engineWindowDisableAnalysisBoard) {
+ boardShortcut("A8", "pgn4web v" + pgn4web_version + " debug info", function(t,e){ if (e.shiftKey) { if (engineWinCheck()) { engineWin.displayDebugInfo(); } } else { displayDebugInfo(); } }, true);
+ boardShortcut("E8", "open/update analysis board", function(t,e){ showEngineAnalysisBoard(e.shiftKey); });
+ boardShortcut("F8", "close/pause analysis board", function(t,e){ if (engineWinCheck()) { if (e.shiftKey) { if ((engineWin.top === engineWin.self) && (engineWin.focus)) { engineWin.focus(); } } else { engineWin.StopBackgroundEngine(); if ((engineWin.top === engineWin.self) && (engineWin.close)) { engineWin.close(); } } } });
+
+ function customShortcutKey_Shift_8() { showEngineAnalysisBoard(true); }
+ function customShortcutKey_Shift_9() { showEngineAnalysisBoard(false); }
+ function customShortcutKey_Shift_0() { showEngineAnalysisBoard(); }
+}
+
+"use strict";
+
+var pgn4web_engineWindowTarget = "pgn4webEngineAnalysisBoard";
+var pgn4web_engineWindowUrlParameters = "";
+var pgn4web_engineWindowHeight = 30 * 12; // window height/width corresponding to default squareSize = 30
+var pgn4web_engineWindowWidth = 30 * 10;
+
+// notes:
+// - all pages on the same site will use the same analysis board popup; if the analysis board is embedded as iframe within a page (see the live-results-viewer.html example) the pgn4web_engineWindowTarget variable should be customized in order to prevent conflicts
+// - if pgn4web_engineWindowUrlParameters is customized using the corresponding URL parameter of the main page, the value must be encoded with encodeURIComponent()
+
+thisRegExp = /(&|\?)(engineWindowDisableAnalysisBoard|ewdab)=(true|t)(&|$)/i;
+if (window.location.search.match(thisRegExp) !== null) {
+ pgn4web_engineWindowDisableAnalysisBoard = true;
+}
+thisRegExp = /(&|\?)(engineWindowTarget|ewt)=([^&]+)(&|$)/i;
+if (window.location.search.match(thisRegExp) !== null) {
+ pgn4web_engineWindowTarget = unescape(window.location.search.match(thisRegExp)[3]);
+}
+thisRegExp = /(&|\?)(engineWindowUrlParameters|ewup)=([^&]+)(&|$)/i;
+if (window.location.search.match(thisRegExp) !== null) {
+ pgn4web_engineWindowUrlParameters = unescape(window.location.search.match(thisRegExp)[3]);
+}
+thisRegExp = /(&|\?)(engineWindowHeight|ewh)=([1-9][0-9]*)(&|$)/i;
+if (window.location.search.match(thisRegExp) !== null) {
+ pgn4web_engineWindowHeight = parseInt(unescape(window.location.search.match(thisRegExp)[3]), 10);
+}
+thisRegExp = /(&|\?)(engineWindowWidth|eww)=([1-9][0-9]*)(&|$)/i;
+if (window.location.search.match(thisRegExp) !== null) {
+ pgn4web_engineWindowWidth = parseInt(unescape(window.location.search.match(thisRegExp)[3]), 10);
+}
+
+var pgn4web_engineWinSignature = Math.ceil(1073741822 * Math.random()); // from 1 to (2^30 -1) = 1073741823
+
+var engineWinParametersSeparator = "?";
+function detectEngineLocation() {
+ return detectJavascriptLocation().replace(/(pgn4web|pgn4web-compacted)\.js/, "engine.html");
+}
+
+var engineWin;
+
+var engineWinLastFen = "";
+
+var warnedAboutUnsupportedVariation = "";
+
+function showEngineAnalysisBoard(engineDisabled, startFen) {
+ if (pgn4web_engineWindowDisableAnalysisBoard) { return null; }
+ if ((typeof(gameVariant[currentGame]) == "undefined") || (gameVariant[currentGame].match(/^\s*(|chess|normal|standard)\s*$/i) !== null)) {
+ warnedAboutUnsupportedVariation = "";
+ engineWinLastFen = startFen ? FenStringStart : CurrentFEN();
+ var doneAccessingDOM = false;
+ try {
+ if (engineWinCheck()) {
+ if (typeof(engineDisabled) != "undefined") {
+ engineWin.setDisableEngine(engineDisabled);
+ }
+ engineWin.updateFEN(engineWinLastFen);
+ doneAccessingDOM = true;
+ }
+ } catch(e) {}
+ if (!doneAccessingDOM) {
+ var parameters = "fs=" + encodeURIComponent(engineWinLastFen) + "&es=" + pgn4web_engineWinSignature;
+ if (engineDisabled) { parameters += "&de=t"; }
+ if (pgn4web_engineWindowUrlParameters) { parameters += "&" + pgn4web_engineWindowUrlParameters; }
+ var options = "resizable=no,scrollbars=no,toolbar=no,location=no,menubar=no,status=no";
+ if (pgn4web_engineWindowHeight) { options = "height=" + pgn4web_engineWindowHeight + "," + options; }
+ if (pgn4web_engineWindowWidth) { options = "width=" + pgn4web_engineWindowWidth + "," + options; }
+ engineWin = window.open(detectEngineLocation() + engineWinParametersSeparator + parameters, pgn4web_engineWindowTarget, options);
+
+ // note bug with IE and Opera failing to set window.opener at this point, resulting in no autoUpdate possible and no update from the engine window possible
+ }
+ if ((engineWinCheck(true)) && (engineWin.top === engineWin.self) && (window.focus)) { engineWin.focus(); }
+ return engineWin;
+ } else if (warnedAboutUnsupportedVariation != gameVariant[currentGame]) {
+ warnedAboutUnsupportedVariation = gameVariant[currentGame];
+ myAlert("warning: analysis board unavailable for the " + gameVariant[currentGame] + " variant", true);
+ }
+ return null;
+}
+
+function engineWinCheck(skipSignature) {
+ return ((!pgn4web_engineWindowDisableAnalysisBoard) && (typeof(engineWin) == "object") && (engineWin !== null) && (!engineWin.closed) && (typeof(engineWin.engineSignature) != "undefined") && ((pgn4web_engineWinSignature === engineWin.engineSignature) || (skipSignature)));
+}
+
+function engineWinOnMove() {
+ if (engineWinCheck()) {
+ if ((engineWin.autoUpdate === true) && (CurrentFEN() != engineWinLastFen) && (engineWin.CurrentFEN() == engineWinLastFen)) {
+ showEngineAnalysisBoard();
+ }
+ engineWin.updateGameAnalysisFlag();
+ } else {
+ engineWinLastFen = "";
+ }
+}
+
diff --git a/_assets/vendor/pgn4web/euroteams2011.pgn b/_assets/vendor/pgn4web/euroteams2011.pgn
new file mode 100644
index 0000000..ae1972d
--- /dev/null
+++ b/_assets/vendor/pgn4web/euroteams2011.pgn
@@ -0,0 +1,2026 @@
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.1.1"]
+[White "Naiditsch,A"]
+[Black "Aronian,L"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2712"]
+[BlackElo "2802"]
+[ECO "C67"]
+[Opening "Ruy Lopez"]
+[Variation "Berlin defence, open variation"]
+[WhiteTeam "Germany"]
+[BlackTeam "Armenia"]
+[WhiteFideId "4650891"]
+[BlackFideId "13300474"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. O-O Nxe4 5. Re1 Nd6 6. Nxe5 Be7 7. Bf1 Nxe5 8.
+Rxe5 O-O 9. d4 Bf6 10. Re1 Re8 11. Rxe8+ 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.1.2"]
+[White "Movsesian,S"]
+[Black "Meier,Geo"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2710"]
+[BlackElo "2659"]
+[ECO "C11"]
+[Opening "French"]
+[Variation "Steinitz variation"]
+[WhiteTeam "Armenia"]
+[BlackTeam "Germany"]
+[WhiteFideId "310204"]
+[BlackFideId "4675789"]
+[EventDate "2011.11.03"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Nf6 4. e5 Nfd7 5. f4 c5 6. Nf3 Nc6 7. Ne2 Be7 8. g3 O-O
+9. Bg2 b5 10. Be3 Qa5+ 11. Kf2 f6 12. c3 b4 13. Re1 bxc3 14. bxc3 Ba6 15. Bh3 f5
+16. Bd2 Nb6 17. g4 Nc4 18. gxf5 exf5 19. Rg1 Rab8 20. Rg3 Nd8 21. Rb1 Nb2 22.
+Qg1 Ne6 23. Ra1 Bxe2 24. Kxe2 Qa6+ 25. Kf2 Nd3+ 26. Kg2 Ndxf4+ 27. Bxf4 Nxf4+
+28. Kh1 Qh6 29. Bf1 c4 30. Qf2 Rb6 31. Qc2 g5 32. Qa4 g4 33. Qxa7 Qe6 34. Rg1
+Kh8 35. Nd2 Rb2 36. Rd1 Rg8 37. Bg2 Bh4 38. Qa5 Bf2 39. Rgf1 Be3 40. Rxf4 Bxf4
+41. Nf1 Qh6 42. Qxd5 Bxh2 43. Qc6 Qxc6 44. Bxc6 Bf4 45. Re1 g3 46. Bg2 Rgb8 47.
+a4 Rb1 48. Re2 R8b2 49. Rxb2 Rxb2 50. a5 Ra2 51. Bc6 Kg7 52. e6 Kf6 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.1.3"]
+[White "Fridman,D"]
+[Black "Akopian,Vl"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2661"]
+[BlackElo "2681"]
+[ECO "D11"]
+[Opening "QGD Slav"]
+[Variation "3.Nf3"]
+[WhiteTeam "Germany"]
+[BlackTeam "Armenia"]
+[WhiteFideId "11600454"]
+[BlackFideId "13300032"]
+[EventDate "2011.11.03"]
+
+1. Nf3 d5 2. c4 c6 3. d4 Nf6 4. Qb3 dxc4 5. Qxc4 Bf5 6. g3 e6 7. Bg2 Nbd7 8. O-O
+Nb6 9. Qb3 Qd5 10. Nbd2 Be7 11. a4 Qxb3 12. Nxb3 a5 13. Ne5 Bc2 14. Nc5 Bxc5 15.
+dxc5 Nbd7 16. Nxd7 Nxd7 17. Bd2 Ke7 18. Rfc1 Bg6 19. b4 axb4 20. Bxb4 f6 21. Ra2
+Rhd8 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.1.4"]
+[White "Sargissian,G"]
+[Black "Gustafsson,J"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2671"]
+[BlackElo "2633"]
+[ECO "D41"]
+[Opening "QGD"]
+[Variation "Semi-Tarrasch with e3"]
+[WhiteTeam "Armenia"]
+[BlackTeam "Germany"]
+[WhiteFideId "13300881"]
+[BlackFideId "4625498"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 d5 4. Nc3 c5 5. cxd5 Nxd5 6. e3 Be7 7. Bd3 Nc6 8. O-O
+O-O 9. Be4 cxd4 10. exd4 Nf6 11. Bxc6 bxc6 12. Na4 Ba6 13. Re1 Bc4 14. Ne5 Bd5
+15. Bg5 h6 16. Bh4 Nd7 17. Bxe7 Qxe7 18. Nxd7 Qxd7 19. Nc5 Qe7 20. Qh5 Rab8 21.
+b3 Rfd8 22. Rad1 Qg5 23. Qxg5 hxg5 24. f3 Rd6 25. Kf2 f6 26. Rh1 Kf7 27. h4 gxh4
+28. Rxh4 Rdd8 29. Rc1 Rb5 30. Ke3 Re8 31. Rh5 Rd8 32. g4 Rbb8 33. Rch1 Rb5 34.
+Rc1 Rbb8 35. Rc2 Rb5 36. f4 Rb4 37. Rch2 Rb5 38. Nd3 Rg8 39. g5 a5 40. Rh7 a4
+41. bxa4 Rb1 42. gxf6 Kxf6 43. a5 Ra8 44. Nc5 Rxa5 45. a4 Ra7 46. Rh8 Re1+ 47.
+Kd2 Rf1 48. Rf8+ Ke7 49. Rhh8 Rf3 50. Re8+ Kf6 51. Rhf8+ Kg6 52. Nd3 Rxd3+ 53.
+Kxd3 Rxa4 54. Ra8 Rb4 55. Rfb8 Rc4 56. Rb1 c5 57. dxc5 Rxc5 58. Rg1+ Kf6 59.
+Rf8+ Ke7 60. Rg8 e5 61. R8xg7+ Kf6 62. fxe5+ Kxe5 63. R1g5+ Kf6 64. Kd4 Rb5 65.
+R5g6+ Kf5 66. Rg1 Ke6 67. R1g6+ Kf5 68. Rg1 Ke6 69. R7g6+ Ke7 70. R1g5 Bf7 71.
+Rxb5 Bxg6 72. Ke5 Kf7 73. Rb7+ Kg8 74. Kf6 Be4 75. Rg7+ Kh8 76. Rg4 Bc2 77. Rg3
+Be4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.2.1"]
+[White "Radjabov,T"]
+[Black "Lupulescu,C"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2781"]
+[BlackElo "2657"]
+[ECO "E19"]
+[Opening "Queen's Indian"]
+[Variation "old main line, 9.Qxc3"]
+[WhiteTeam "Azerbaidjan"]
+[BlackTeam "Romania"]
+[WhiteFideId "13400924"]
+[BlackFideId "1207822"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. Nf3 e6 3. c4 b6 4. g3 Bb7 5. Bg2 Be7 6. O-O O-O 7. Nc3 Ne4 8. Qc2
+Nxc3 9. Qxc3 d6 10. b3 c5 11. Bb2 Bf6 12. Rad1 Qe7 13. Qd2 Nd7 14. Rfe1 d5 15.
+cxd5 exd5 16. h4 Rfe8 17. Ng5 Rad8 18. Nh3 Nf8 19. Nf4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.2.2"]
+[White "Parligras,M"]
+[Black "Gashimov,V"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2650"]
+[BlackElo "2757"]
+[ECO "A60"]
+[Opening "Benoni defence"]
+[WhiteTeam "Romania"]
+[BlackTeam "Azerbaidjan"]
+[WhiteFideId "1204297"]
+[BlackFideId "13400630"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 c5 3. d5 e6 4. Nc3 exd5 5. cxd5 d6 6. Nf3 a6 7. a4 g6 8. Bf4 Bg7
+9. h3 O-O 10. e3 Ne8 11. Be2 Nd7 12. O-O Qe7 13. a5 Rb8 14. Nd2 Ne5 15. Na4 Bd7
+16. Nb6 Bb5 17. Re1 f5 18. Qb3 Nc7 19. Ndc4 Nf7 20. Rad1 Qf6 21. Bg3 Rbd8 22.
+Na4 Na8 23. Nc3 Bxc4 24. Bxc4 Rb8 25. Na4 Ne5 26. Bf1 Qd8 27. Nb6 Nxb6 28. axb6
+Qe7 29. Bxe5 Qxe5 30. Rb1 f4 31. Qc4 Qg5 32. exf4 Rxf4 33. Re4 Bd4 34. Rxf4 Qxf4
+35. Qe2 Rf8 36. Kh1 Bxf2 37. Qe6+ Kg7 38. Be2 Rf6 39. Qg4 Qe5 40. Bf3 h5 41. Qc8
+Rf7 42. Qe6 Qg3 43. Rf1 Bd4 44. Qe1 Qxe1 45. Rxe1 Bxb2 46. Re8 a5 47. Be2 a4 48.
+Ra8 a3 49. g4 hxg4 50. hxg4 Kh6 51. Bb5 Rf4 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.2.3"]
+[White "Mamedyarov,S"]
+[Black "Vajda,Le"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2733"]
+[BlackElo "2584"]
+[ECO "A56"]
+[Opening "Czech Benoni defence"]
+[WhiteTeam "Azerbaidjan"]
+[BlackTeam "Romania"]
+[WhiteFideId "13401319"]
+[BlackFideId "1203975"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 c5 3. d5 e5 4. Nc3 d6 5. e4 Nbd7 6. Bd3 Be7 7. Nge2 a6 8. a3 O-O
+9. O-O h5 10. f3 Nh7 11. g3 h4 12. Be3 Bg5 13. Qd2 Bxe3+ 14. Qxe3 g6 15. Qh6
+hxg3 16. hxg3 Qg5 17. Qxg5 Nxg5 18. Kf2 Kg7 19. Rh1 Nb6 20. Rh4 f5 21. Rah1 Bd7
+22. f4 Nf7 23. Rh7+ Kf6 24. exf5 gxf5 25. fxe5+ Nxe5 26. R1h6+ Kg5 27. Nf4 Nxd3+
+28. Nxd3 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.2.4"]
+[White "Marin,Mi"]
+[Black "Guseinov,G"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2534"]
+[BlackElo "2636"]
+[ECO "A40"]
+[Opening "Modern defence"]
+[WhiteTeam "Romania"]
+[BlackTeam "Azerbaidjan"]
+[WhiteFideId "1200020"]
+[BlackFideId "13401378"]
+[EventDate "2011.11.03"]
+
+1. d4 g6 2. g3 Bg7 3. Bg2 Nf6 4. Nf3 O-O 5. O-O c5 6. c4 cxd4 7. Nxd4 d5 8. cxd5
+Nxd5 9. Nb5 Be6 10. Nd4 Bc8 11. Nb5 Be6 12. Nd4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.3.1"]
+[White "Leko,P"]
+[Black "Topalov,V"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2720"]
+[BlackElo "2768"]
+[ECO "D85"]
+[Opening "Gruenfeld"]
+[Variation "exchange variation"]
+[WhiteTeam "Hungary"]
+[BlackTeam "Bulgaria"]
+[WhiteFideId "703303"]
+[BlackFideId "2900084"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. cxd5 Nxd5 5. e4 Nxc3 6. bxc3 Bg7 7. Be3 c5 8.
+Rc1 Qa5 9. Qd2 O-O 10. Nf3 Rd8 11. d5 e6 12. Bg5 f6 13. Be3 Nc6 14. Bd3 exd5 15.
+exd5 c4 16. Bxc4 Be6 17. Rd1 Ne7 18. dxe6 Rxd2 19. Rxd2 Qxc3 20. Bb3 Qc1+ 21.
+Rd1 Qc3+ 22. Rd2 Qc1+ 23. Rd1 Qc3+ 24. Ke2 a5 25. Rd7 a4 26. Rc1 Qb2+ 27. Rc2
+Qb1 28. Nd2 axb3 29. Nxb1 bxc2 30. Nc3 Nf5 31. Bd2 h5 32. Kd3 b5 33. e7 Re8 34.
+Nd5 Kf7 35. Kxc2 Rc8+ 36. Nc7 Nxe7 37. Bb4 Bf8 38. Kb3 Rb8 39. Nd5 Ke6 40. Rd6+
+Ke5 41. f4+ 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.3.2"]
+[White "Cheparinov,I"]
+[Black "Almasi,Z"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2650"]
+[BlackElo "2707"]
+[ECO "E15"]
+[Opening "Queen's Indian"]
+[Variation "Nimzovich variation (exaggerated fianchetto)"]
+[WhiteTeam "Bulgaria"]
+[BlackTeam "Hungary"]
+[WhiteFideId "2905540"]
+[BlackFideId "702293"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. g3 Ba6 5. Qc2 Bb7 6. Bg2 c5 7. d5 exd5 8. cxd5
+Nxd5 9. O-O Be7 10. Rd1 Nc6 11. a3 Nc7 12. Bf4 Ne6 13. e3 Nxf4 14. exf4 O-O 15.
+Nc3 d6 16. Rd2 Re8 17. Rad1 h6 18. Ne5 Nd4 19. Rxd4 Bxg2 20. R4d2 Bh3 21. Nb5
+Qc8 22. Nxd6 Bxd6 23. Rxd6 f6 24. Rxf6 Qb7 25. Qc4+ Kh7 26. Qd3+ Kg8 27. Qb3+
+Kh7 28. f3 gxf6 29. Rd7+ Qxd7 30. Nxd7 Kg7 31. Nxf6 Re1+ 32. Kf2 Rf1+ 33. Ke2
+Kxf6 34. Qa4 Kf7 35. Qc6 Re8+ 36. Kd2 Rf2+ 37. Kd1 Bf5 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.3.3"]
+[White "Balogh,C"]
+[Black "Delchev,A"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2662"]
+[BlackElo "2629"]
+[ECO "C41"]
+[Opening "Philidor"]
+[Variation "Improved Hanham variation"]
+[WhiteTeam "Hungary"]
+[BlackTeam "Bulgaria"]
+[WhiteFideId "718939"]
+[BlackFideId "2900394"]
+[EventDate "2011.11.03"]
+
+1. e4 d6 2. d4 Nf6 3. Nc3 e5 4. Nf3 Nbd7 5. Bc4 Be7 6. O-O O-O 7. a4 a6 8. Re1
+b6 9. h3 c6 10. Ba2 Rb8 11. Be3 b5 12. axb5 axb5 13. b4 Qc7 14. Bb3 Nb6 15. Qd3
+Bd7 16. dxe5 dxe5 17. Bc5 Be8 18. Red1 Rd8 19. Qe3 Rxd1+ 20. Nxd1 Nc8 21. Nb2
+Bxc5 22. bxc5 Ne7 23. Nd3 Ng6 24. Ra8 Bd7 25. Rxf8+ Kxf8 26. Nfxe5 Nxe5 27. Qf4
+Be8 28. Nxe5 Qe7 29. g4 Qxc5 30. g5 Nh5 31. Qf5 Qa7 32. g6 Nf6 33. gxf7 Bd7 34.
+Qxh7 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.3.4"]
+[White "Georgiev,Ki"]
+[Black "Gyimesi,Z"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2666"]
+[BlackElo "2652"]
+[ECO "E36"]
+[Opening "Nimzo-Indian"]
+[Variation "classical, Noa variation, 5.a3"]
+[WhiteTeam "Bulgaria"]
+[BlackTeam "Hungary"]
+[WhiteFideId "2900017"]
+[BlackFideId "702218"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 d5 5. a3 Bxc3+ 6. Qxc3 c5 7. dxc5 d4 8. Qg3
+O-O 9. Bh6 Ne8 10. Nf3 Nc6 11. O-O-O b6 12. e3 bxc5 13. exd4 Rb8 14. Bf4 Rb3 15.
+Bd3 cxd4 16. Bxh7+ Kxh7 17. Ng5+ Kg8 18. Qxb3 f6 19. Ne4 e5 20. c5+ Kh8 21. Bd2
+Nc7 22. Nd6 Be6 23. Qd3 Ne8 24. Qb5 Qd7 25. Kb1 Nc7 26. Qe2 Rb8 27. Ka1 Nb5 28.
+Rc1 Nxd6 29. cxd6 Qb7 30. b4 Na5 31. Rc7 Qxg2 32. Re1 Nb3+ 33. Kb2 Nxd2 34. Qxd2
+Qf3 35. Qc2 d3 36. Qd2 Qd5 37. Ka1 Qxd6 38. Rc5 Qd4+ 39. Qb2 Bb3 40. Rc3 Bc2 41.
+Rc1 a5 42. R3xc2 dxc2 43. Qxd4 exd4 44. Rxc2 axb4 45. a4 Ra8 46. Kb2 Rxa4 47.
+Kb3 Ra3+ 48. Kxb4 Rf3 49. Kc4 d3 50. Rd2 Kh7 51. Kd4 Kg6 52. Ke4 Rh3 53. f3 f5+
+54. Ke3 Kg5 55. Rg2+ Kf6 56. Rd2 g5 57. Rf2 Ke5 58. Kxd3 Kf4 59. Ke2 Rh6 60. Kf1
+Ke3 61. Rg2 Rh5 62. Ra2 Kxf3 63. Ra3+ Kg4 64. Kg2 Rh8 65. h3+ Kh5 66. Ra5 f4 67.
+Ra7 Rb8 68. Rh7+ Kg6 69. Ra7 Rb2+ 70. Kg1 Rb3 71. Kg2 Rg3+ 72. Kh2 Re3 73. Kg2
+Kf5 74. Ra5+ Re5 75. Ra2 Rd5 76. Rb2 Ra5 77. Rc2 Ke4 78. Re2+ Kd4 79. Rf2 Ke3
+80. Rf3+ Ke4 81. Rf2 Ra3 82. Rb2 Rg3+ 83. Kh2 Rd3 84. Rb5 Rd2+ 85. Kg1 Rd5 86.
+Rb3 Rd1+ 87. Kg2 Rd2+ 88. Kg1 f3 89. Rb8 g4 90. Rg8 Ke3 91. hxg4 Kf4 92. Kf1 Kg3
+93. Ke1 Re2+ 94. Kd1 Re7 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.4.1"]
+[White "Beliavsky,A"]
+[Black "Svidler,P"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2617"]
+[BlackElo "2755"]
+[ECO "D72"]
+[Opening "Neo-Gruenfeld, 5.cd, main line"]
+[WhiteTeam "Slovenia"]
+[BlackTeam "Russia"]
+[WhiteFideId "14602377"]
+[BlackFideId "4102142"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 d5 5. cxd5 Nxd5 6. e4 Nb6 7. Ne2 c5 8. d5
+O-O 9. O-O e6 10. Nec3 Na6 11. Na3 exd5 12. exd5 Bf5 13. Be3 Qd7 14. Qd2 Rfe8
+15. Rad1 h5 16. d6 Bg4 17. Rc1 Rad8 18. Ne4 Bf5 19. Nxc5 Nxc5 20. Rxc5 Qxd6 21.
+Qxd6 Rxd6 22. Nb5 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.4.2"]
+[White "Grischuk,A"]
+[Black "Lenic,L"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2752"]
+[BlackElo "2634"]
+[ECO "C78"]
+[Opening "Ruy Lopez"]
+[Variation "5.O-O"]
+[WhiteTeam "Russia"]
+[BlackTeam "Slovenia"]
+[WhiteFideId "4126025"]
+[BlackFideId "14603853"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O b5 6. Bb3 Bc5 7. Nc3 d6 8. Nd5
+Rb8 9. c3 Nxd5 10. Bxd5 Ne7 11. Bb3 O-O 12. d4 exd4 13. cxd4 Bb6 14. h3 h6 15.
+Re1 c5 16. Be3 Bb7 17. Rc1 Rc8 18. dxc5 Bxc5 19. Nh4 Qb6 20. Rc3 Rcd8 21. Qh5
+Bxe3 22. Rcxe3 d5 23. Rg3 Kh8 24. exd5 Nxd5 25. Nf5 Nf4 26. Qg4 Ng6 27. Nh4 Rd6
+28. Bxf7 Rxf7 29. Nxg6+ Kh7 30. Nf8+ Kg8 31. Re8 Qxf2+ 32. Kh2 g5 33. Ne6+ Kh7
+34. Nxg5+ hxg5 35. Qh5+ Rh6 36. Qxg5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.4.3"]
+[White "Borisek,J"]
+[Black "Karjakin,Sergey"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2541"]
+[BlackElo "2763"]
+[ECO "C96"]
+[Opening "Ruy Lopez"]
+[Variation "closed, Keres (...Nd7) defence"]
+[WhiteTeam "Slovenia"]
+[BlackTeam "Russia"]
+[WhiteFideId "14603152"]
+[BlackFideId "14109603"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8. c3
+d6 9. h3 Na5 10. Bc2 c5 11. d4 Nd7 12. a4 Rb8 13. axb5 axb5 14. dxc5 dxc5 15.
+Nbd2 Bb7 16. Nf1 Nc4 17. Ne3 Nxe3 18. Bxe3 Qc7 19. Qe2 c4 20. Ra7 Nc5 21. Nd2
+Qc6 22. f3 Ne6 23. Kh2 Rfd8 24. b4 Nd4 25. Qd1 Bh4 26. Rf1 Nxc2 27. Qxc2 Rd3 28.
+Bc5 Rbd8 29. Nb1 Bg5 30. Kh1 Bf4 31. Bg1 f5 32. exf5 e4 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.4.4"]
+[White "Nepomniachtchi,I"]
+[Black "Skoberne,J"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2730"]
+[BlackElo "2533"]
+[ECO "A16"]
+[Opening "English opening"]
+[WhiteTeam "Russia"]
+[BlackTeam "Slovenia"]
+[WhiteFideId "4168119"]
+[BlackFideId "14604299"]
+[EventDate "2011.11.03"]
+
+1. c4 Nf6 2. Nc3 g6 3. g3 Bg7 4. Bg2 O-O 5. Nf3 d6 6. O-O e5 7. Rb1 a5 8. a3 Nc6
+9. d3 h6 10. b4 axb4 11. axb4 Be6 12. b5 Ne7 13. Nd2 c6 14. Qb3 d5 15. Ba3 Re8
+16. Bc5 Nf5 17. bxc6 bxc6 18. Bb6 Qd6 19. e4 dxc4 20. Nxc4 Qxd3 21. Rfd1 Qxc4
+22. Qxc4 Bxc4 23. exf5 e4 24. fxg6 fxg6 25. Bd4 Re6 26. Bxf6 Bxf6 27. Nxe4 Bg7
+28. Nc5 Re2 29. Bxc6 Raa2 30. Ne4 Ra6 31. Bb7 Re6 32. Nd6 Ba2 33. Bd5 Bxb1 34.
+Rxb1 Bd4 35. Rf1 Kg7 36. Bxe6 Rxe6 37. Nb5 Bb6 38. Kg2 g5 39. h3 h5 40. Na3 g4
+41. hxg4 hxg4 42. Nb5 Rc6 43. Rd1 Rc2 44. Nd4 Rb2 45. Kf1 Kf6 46. Ne2 Ke5 47.
+Ra1 Kd6 48. Rc1 Bc5 49. Rd1+ Ke5 50. Ra1 Bb6 51. Rc1 Kd6 52. Rc4 Rb1+ 53. Nc1
+Kd5 54. Rc2 Bd4 55. Ke2 Ke4 56. Nd3 Ra1 57. Nb4 Rb1 58. Nd3 Ra1 59. Nb4 Rb1 60.
+Nc6 Bb6 61. Ra2 Bc5 62. Rc2 Bb6 63. Ne7 Bd4 64. Nc8 Ke5 65. Ne7 Ke4 66. Ng8 Rb6
+67. Ra2 Rc6 68. Rd2 Rc1 69. Ra2 Rc6 70. Ne7 Rb6 71. Nc8 Rc6 72. Ne7 Rb6 73. Ng8
+Rc6 74. Rd2 Rc1 75. Rxd4+ Kxd4 76. Nf6 Rc3 77. Nxg4 Ke4 78. Ne3 Rb3 79. Nc4 Kd4
+80. Ne3 Ke4 81. Ng4 Rb1 82. Nf6+ Ke5 83. Ng4+ Ke4 84. f3+ Kd4 85. f4 Ke4 86.
+Nf2+ Kf5 87. Kf3 Rb3+ 88. Kg2 Rb2 89. Kf3 Rb3+ 90. Kg2 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.5.1"]
+[White "Giri,A"]
+[Black "Navara,D"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2714"]
+[BlackElo "2724"]
+[ECO "C45"]
+[Opening "Scotch game"]
+[WhiteTeam "Netherlands"]
+[BlackTeam "Czech Republic"]
+[WhiteFideId "24116068"]
+[BlackFideId "309095"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. d4 exd4 4. Nxd4 Bc5 5. Nxc6 Qf6 6. Qf3 bxc6 7. Nd2 d6 8.
+Be2 Qxf3 9. gxf3 Ne7 10. Nb3 Bb6 11. a4 a5 12. Be3 Bxe3 13. fxe3 f5 14. Rg1 O-O
+15. e5 Be6 16. Nd4 Bd5 17. exd6 cxd6 18. O-O-O Rab8 19. e4 fxe4 20. fxe4 Bxe4
+21. Ne6 Rf7 22. Rxd6 Bd5 23. Ng5 Rf4 24. Bd3 Rxa4 25. Bxh7+ Kh8 26. Rg3 Rh4 27.
+Re3 Rh5 28. Rxe7 Rxg5 29. Rg6 Rh5 30. Rgxg7 Rxh2 31. b3 a4 32. bxa4 Ba2 33. c3
+Bb3 34. Be4 Bxa4 35. Rh7+ Rxh7 36. Rxh7+ Kg8 37. Ra7 Bb5 38. Kd2 Kf8 39. Ke3 Rd8
+40. Kf4 Re8 41. Rh7 Re7 42. Rh8+ Kf7 43. Kf5 Rd7 44. Ke5 Ke7 45. Rh6 Rd1 46.
+Bxc6 Bxc6 47. Rxc6 Kd7 48. Rc4 Rh1 49. Rc5 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.5.2"]
+[White "Laznicka,V"]
+[Black "Van Wely,L"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2703"]
+[BlackElo "2686"]
+[ECO "A81"]
+[Opening "Dutch defence"]
+[WhiteTeam "Czech Republic"]
+[BlackTeam "Netherlands"]
+[WhiteFideId "316385"]
+[BlackFideId "1000268"]
+[EventDate "2011.11.03"]
+
+1. d4 f5 2. g3 Nf6 3. Bg2 g6 4. Nf3 Bg7 5. O-O O-O 6. c4 d6 7. Nc3 Qe8 8. d5 h6
+9. Qc2 Na6 10. Rb1 e5 11. dxe6 Bxe6 12. Nd2 c6 13. b4 Rc8 14. Ba3 Nd7 15. Rfd1
+Qe7 16. b5 Nac5 17. bxc6 bxc6 18. Nb3 f4 19. Nd4 Bxd4 20. Rxd4 Bf5 21. Qd2 Bxb1
+22. Nxb1 fxg3 23. hxg3 Qf7 24. Rf4 Qe6 25. Rxf8+ Rxf8 26. Nc3 Ne5 27. Qxh6 Ng4
+28. Qg5 Nxf2 29. Bxc5 dxc5 30. Qxc5 Qf6 31. Qxc6 Qxc3 32. Qxg6+ Qg7 33. Bd5+ Kh8
+34. Qh5+ Qh7 35. Qe5+ Qg7 36. Qh5+ 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.5.3"]
+[White "Smeets,J"]
+[Black "Hracek,Z"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2615"]
+[BlackElo "2628"]
+[ECO "B90"]
+[Opening "Sicilian"]
+[Variation "Najdorf, Byrne (English) attack"]
+[WhiteTeam "Netherlands"]
+[BlackTeam "Czech Republic"]
+[WhiteFideId "1007246"]
+[BlackFideId "300071"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 e5 7. Nf3 Be7 8. Bc4
+O-O 9. O-O Qc7 10. Bb3 Be6 11. Qe2 Rc8 12. Rfd1 Nbd7 13. Bg5 b5 14. Ne1 Rab8 15.
+Nd5 Bxd5 16. Bxf6 Nxf6 17. Bxd5 Nxd5 18. Rxd5 Qc4 19. Qxc4 Rxc4 20. f3 g6 21. c3
+b4 22. cxb4 Rbxb4 23. b3 Rc3 24. Nd3 Rb5 25. Rxb5 axb5 26. Nb4 d5 27. Nxd5 Bc5+
+28. Kh1 Rc2 29. h4 Bd4 30. Nb4 Re2 31. Rc1 f5 32. exf5 gxf5 33. Nc6 Bb2 34. Rb1
+Kf7 35. a4 bxa4 36. bxa4 Ke6 37. a5 Kd6 38. Nb4 Bd4 39. a6 Rd2 40. Ra1 Ba7 41.
+Rc1 Bc5 42. Rc4 h5 43. g3 Rd1+ 44. Kg2 Rg1+ 45. Kh3 Rh1+ 46. Kg2 Ra1 47. Nd3 Be3
+48. Nb4 Ra4 49. Rc6+ Kd7 50. Rc3 Bd4 51. Rc4 Be3 52. g4 hxg4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.5.4"]
+[White "Stocek,J"]
+[Black "Stellwagen,D"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2600"]
+[BlackElo "2627"]
+[ECO "E60"]
+[Opening "King's Indian, 3.Nf3"]
+[WhiteTeam "Czech Republic"]
+[BlackTeam "Netherlands"]
+[WhiteFideId "304760"]
+[BlackFideId "1006673"]
+[EventDate "2011.11.03"]
+
+1. Nf3 Nf6 2. c4 g6 3. d4 Bg7 4. Nc3 O-O 5. e4 d6 6. h3 e5 7. d5 Nh5 8. Nh2 Qe8
+9. Be2 Nf4 10. Bf3 f5 11. g3 Nxh3 12. Bg2 fxe4 13. Nxe4 Bf5 14. Rf1 Na6 15. Qe2
+Qd7 16. Be3 Nf4 17. gxf4 exf4 18. Bd2 f3 19. Bxf3 Rae8 20. O-O-O Qa4 21. Ng4
+Bxe4 22. Bxe4 Qxa2 23. Rde1 Qxb2+ 24. Kd1 Nc5 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.6.1"]
+[White "Bacrot,E"]
+[Black "Vallejo Pons,F"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2714"]
+[BlackElo "2705"]
+[ECO "D10"]
+[Opening "QGD Slav defence"]
+[WhiteTeam "France"]
+[BlackTeam "Spain"]
+[WhiteFideId "605506"]
+[BlackFideId "2205530"]
+[EventDate "2011.11.03"]
+
+1. d4 d5 2. c4 c6 3. Nc3 Nf6 4. e3 a6 5. Qc2 Bg4 6. h3 Bh5 7. Qb3 Ra7 8. cxd5
+cxd5 9. g4 Bg6 10. g5 Ng8 11. Bg2 e6 12. e4 Ne7 13. Be3 Nbc6 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.6.2"]
+[White "Shirov,A"]
+[Black "Fressinet,L"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2705"]
+[BlackElo "2700"]
+[ECO "C67"]
+[Opening "Ruy Lopez"]
+[Variation "Berlin defence, open variation"]
+[WhiteTeam "Spain"]
+[BlackTeam "France"]
+[WhiteFideId "2209390"]
+[BlackFideId "608742"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. O-O Nxe4 5. d4 Nd6 6. Bg5 Be7 7. Bxe7 Qxe7 8.
+Bxc6 dxc6 9. dxe5 Ne4 10. Qe2 Nc5 11. Nc3 Bg4 12. h3 Bxf3 13. Qxf3 O-O-O 14. Qe3
+Kb8 15. f4 f5 16. Rad1 Ne6 17. Ne2 c5 18. Kh2 Qh4 19. Rd3 g6 20. Rfd1 b6 21. Rd7
+Rxd7 22. Rxd7 Qe1 23. Qf3 g5 24. fxg5 Rf8 25. Qc6 Qxe2 26. Qxe6 Qe3 27. Qd5 Qxg5
+28. Qf3 f4 29. e6 h6 30. e7 Re8 31. Kg1 Qh4 32. Kf1 Rc8 33. Qe4 Re8 34. Qe5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.6.3"]
+[White "Istratescu,A"]
+[Black "Salgado Lopez,I"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2627"]
+[BlackElo "2621"]
+[ECO "B99"]
+[Opening "Sicilian"]
+[Variation "Najdorf, 7...Be7 main line"]
+[WhiteTeam "France"]
+[BlackTeam "Spain"]
+[WhiteFideId "1200372"]
+[BlackFideId "2257327"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Be7 8. Qf3
+Qc7 9. O-O-O Nbd7 10. g4 b5 11. Bxf6 Nxf6 12. g5 Nd7 13. f5 O-O 14. fxe6 fxe6
+15. Nxe6 Rxf3 16. Nxc7 Bxg5+ 17. Kb1 Rb8 18. h4 Bf6 19. N3d5 Bb7 20. Bh3 Nc5 21.
+h5 Bxd5 22. Nxd5 Re8 23. h6 g6 24. Bg2 Rf2 25. Rhf1 Rxf1 26. Rxf1 Bd8 27. c3
+Nxe4 28. Bxe4 Rxe4 29. Nf6+ Bxf6 30. Rxf6 g5 31. Rxd6 Kf7 32. Kc2 Re2+ 33. Kd3
+Rxb2 34. Rxa6 g4 35. Ke4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.6.4"]
+[White "Illescas Cordoba,M"]
+[Black "Bauer,Ch"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2609"]
+[BlackElo "2641"]
+[ECO "D45"]
+[Opening "QGD semi-Slav"]
+[Variation "Stoltz variation"]
+[WhiteTeam "Spain"]
+[BlackTeam "France"]
+[WhiteFideId "2200015"]
+[BlackFideId "603767"]
+[EventDate "2011.11.03"]
+
+1. d4 d5 2. c4 c6 3. e3 Nf6 4. Nc3 e6 5. Nf3 Nbd7 6. Qc2 Bd6 7. Bd3 dxc4 8. Bxc4
+b5 9. Be2 Bb7 10. O-O O-O 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.7.1"]
+[White "Stevic,H"]
+[Black "Wojtaszek,R"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2612"]
+[BlackElo "2705"]
+[ECO "B22"]
+[Opening "Sicilian"]
+[Variation "Alapin's variation (2.c3)"]
+[WhiteTeam "Croatia"]
+[BlackTeam "Poland"]
+[WhiteFideId "14502569"]
+[BlackFideId "1118358"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. c3 d5 3. exd5 Qxd5 4. d4 Nf6 5. Nf3 e6 6. Be3 cxd4 7. cxd4 Bb4+ 8.
+Nc3 O-O 9. Bd3 b6 10. O-O Bxc3 11. bxc3 Ba6 12. Bxa6 Nxa6 13. Qa4 Nb8 14. c4 Qd7
+15. Qxd7 Nbxd7 16. a4 Rac8 17. Nd2 e5 18. a5 exd4 19. Bxd4 Rfe8 20. axb6 axb6
+21. Rfe1 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.7.2"]
+[White "Socko,B"]
+[Black "Saric,Iv"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2635"]
+[BlackElo "2648"]
+[ECO "E91"]
+[Opening "King's Indian"]
+[Variation "Kazakh variation"]
+[WhiteTeam "Poland"]
+[BlackTeam "Croatia"]
+[WhiteFideId "1107038"]
+[BlackFideId "14508150"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 Na6 7. O-O e5 8. Be3
+Ng4 9. Bg5 Qe8 10. h3 h6 11. Bh4 exd4 12. Nxd4 Nf6 13. Bf3 Nh7 14. Re1 Ng5 15.
+Bg4 Bxg4 16. hxg4 Qe5 17. Nb3 Rae8 18. f3 Ne6 19. Qd2 h5 20. g5 Qf4 21. Qxf4
+Nxf4 22. Red1 Bxc3 23. bxc3 Ne2+ 24. Kf1 Nxc3 25. Rd2 Na4 26. Rb1 Re5 27. Bg3
+Re7 28. Na5 Nb6 29. Nxb7 Nxc4 30. Rd4 Nb6 31. Na5 Nc5 32. Nc6 Rd7 33. Rb5 Ra8
+34. Ra5 a6 35. Bf2 Nb7 36. Ra3 a5 37. Rd1 Nd8 38. Nxd8 Rdxd8 39. Bxb6 cxb6 40.
+Rad3 b5 41. Rxd6 Rxd6 42. Rxd6 b4 43. Ke2 a4 44. Rd4 b3 45. axb3 axb3 46. Ke3
+Rb8 47. Rd1 Rb5 48. Kd4 Rxg5 49. Rd2 Rb5 50. Rb2 Kg7 51. Kc4 Rb8 52. Rxb3 Rxb3
+53. Kxb3 Kf6 54. Kc4 Ke5 55. g3 g5 56. Kd3 h4 57. gxh4 gxh4 58. Ke3 h3 59. f4+
+Kd6 60. Kf3 Kc5 61. Kg3 Kd4 62. Kxh3 Kxe4 63. Kg4 f6 64. f5 Ke5 65. Kg3 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.7.3"]
+[White "Palac,M"]
+[Black "Bartel,Mat"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2580"]
+[BlackElo "2653"]
+[ECO "C78"]
+[Opening "Ruy Lopez"]
+[Variation "Archangelsk (counterthrust) variation"]
+[WhiteTeam "Croatia"]
+[BlackTeam "Poland"]
+[WhiteFideId "14500116"]
+[BlackFideId "1112635"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O b5 6. Bb3 Bb7 7. c3 Nxe4 8. d4
+exd4 9. Re1 d5 10. Ng5 Qf6 11. f3 h6 12. Nh3 O-O-O 13. fxe4 dxe4 14. Rf1 Qe5 15.
+Bxf7 Bc5 16. Kh1 e3 17. Nf4 d3 18. Qe1 e2 19. Rf3 Ne7 20. Nd2 g5 21. Ne6 g4 22.
+Nxd8 gxf3 23. Nxf3 Bxf3 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.7.4"]
+[White "Macieja,B"]
+[Black "Brkic,A"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2616"]
+[BlackElo "2605"]
+[ECO "D43"]
+[Opening "QGD semi-Slav"]
+[WhiteTeam "Poland"]
+[BlackTeam "Croatia"]
+[WhiteFideId "1104306"]
+[BlackFideId "14506688"]
+[EventDate "2011.11.03"]
+
+1. Nf3 d5 2. d4 Nf6 3. c4 e6 4. Nc3 c6 5. Qb3 Nbd7 6. Bf4 a5 7. e3 Be7 8. Bd3
+Nh5 9. Be5 O-O 10. O-O Nb6 11. c5 Nd7 12. Na4 f6 13. Bg3 Nxg3 14. hxg3 Rb8 15.
+Qc2 f5 16. Ne5 Nxe5 17. dxe5 b5 18. cxb6 Bd7 19. a3 Rxb6 20. Nxb6 Qxb6 21. b4
+axb4 22. axb4 Bxb4 23. Qa4 Bc3 24. Rab1 Qc7 25. f4 c5 26. Bb5 Bc8 27. Rf2 Ba5
+28. Bc6 c4 29. Qb5 Rd8 30. Ra2 Bc3 31. Kf1 Qf7 32. Qb6 Qe7 33. Ra7 Qf8 34. Ra8
+d4 35. Bb7 Qe8 36. Qxd8 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.8.1"]
+[White "Banikas,H"]
+[Black "Caruana,F"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2620"]
+[BlackElo "2727"]
+[ECO "D85"]
+[Opening "Gruenfeld"]
+[Variation "modern exchange variation"]
+[WhiteTeam "Greece"]
+[BlackTeam "Italy"]
+[WhiteFideId "4202031"]
+[BlackFideId "2020009"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. cxd5 Nxd5 6. e4 Nxc3 7. bxc3 c5 8.
+Be3 Qa5 9. Qd2 Nc6 10. Rb1 a6 11. Rc1 Bg4 12. d5 Rd8 13. Be2 O-O 14. O-O e6 15.
+Rfd1 Bxf3 16. Bxf3 exd5 17. exd5 Ne5 18. Be2 c4 19. Rb1 b5 20. a4 Nd3 21. axb5
+axb5 22. Bxd3 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.8.2"]
+[White "Godena,M"]
+[Black "Mastrovasilis,D"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2548"]
+[BlackElo "2621"]
+[ECO "B22"]
+[Opening "Sicilian"]
+[Variation "Alapin's variation (2.c3)"]
+[WhiteTeam "Italy"]
+[BlackTeam "Greece"]
+[WhiteFideId "800090"]
+[BlackFideId "4202694"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. c3 Nf6 3. e5 Nd5 4. Nf3 e6 5. Bc4 d6 6. d4 cxd4 7. cxd4 Nb6 8. Bd3
+Nc6 9. O-O Nb4 10. Bg5 Be7 11. Bxe7 Qxe7 12. Nc3 Nxd3 13. Qxd3 O-O 14. Ne4 dxe5
+15. dxe5 Bd7 16. Nd4 Nd5 17. Rad1 Qh4 18. Rfe1 Rac8 19. Nd6 Rc7 20. Qg3 Qh5 21.
+h3 b6 22. a3 Qh6 23. Kh2 Ba4 24. Rd3 Qf4 25. Qxf4 Nxf4 26. Rd2 Rc5 27. Re4 Ng6
+28. Nxe6 fxe6 29. Rxa4 a5 30. b4 Rxe5 31. Nc4 Ref5 32. Nxb6 axb4 33. Nd7 Rxf2
+34. Nxf8 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.8.3"]
+[White "Papaioannou,I"]
+[Black "Dvirnyy,D"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "IM"]
+[WhiteElo "2600"]
+[BlackElo "2475"]
+[ECO "D11"]
+[Opening "QGD Slav"]
+[Variation "4.e3"]
+[WhiteTeam "Greece"]
+[BlackTeam "Italy"]
+[WhiteFideId "4201345"]
+[BlackFideId "817570"]
+[EventDate "2011.11.03"]
+
+1. d4 d5 2. Nf3 Nf6 3. c4 c6 4. e3 e6 5. b3 c5 6. cxd5 exd5 7. Bb5+ Bd7 8. Bxd7+
+Nbxd7 9. O-O Be7 10. dxc5 Nxc5 11. Bb2 O-O 12. Nc3 Qd7 13. Qe2 Rac8 14. Rfd1
+Rfd8 15. Rac1 a6 16. Rc2 Nce4 17. Nxe4 Nxe4 18. Rdc1 Bf6 19. Bxf6 Nxf6 20. h3 h6
+21. Qd1 Rxc2 22. Qxc2 Ne4 23. Qc7 Nd6 24. Qxd7 Rxd7 25. Rc5 Ne4 26. Rc8+ Kh7 27.
+Kf1 Nd6 28. Rc5 Ne4 29. Rc2 f6 30. Nd4 Kg6 31. Ke2 h5 32. f3 Ng3+ 33. Kd3 h4 34.
+Rc8 Nf5 35. Rc5 Ne7 36. b4 Kf7 37. f4 g6 38. a4 Ke8 39. Rc2 Rd6 40. Rc7 Rd7 41.
+Rc5 Rd6 42. b5 Kd7 43. Ke2 b6 44. Rc2 axb5 45. axb5 Nf5 46. Nxf5 gxf5 47. Rd2
+Ke6 48. Kf3 Rd8 49. Rc2 d4 50. Rc6+ Kd5 51. exd4 Ra8 52. Rxb6 Ra3+ 53. Kf2 Kxd4
+54. Re6 Rb3 55. b6 Rb2+ 56. Kf3 Rb3+ 57. Ke2 Rb2+ 58. Kf3 Rb3+ 59. Kf2 Rb2+ 60.
+Kg1 Rb1+ 61. Kh2 Kd5 62. Rxf6 Ke4 63. Rh6 Kxf4 64. Rxh4+ Kg5 65. Rc4 Rxb6 66.
+h4+ Kf6 67. Kg3 Rb3+ 68. Kf4 Rb6 69. Rd4 Ra6 70. g3 Rb6 71. Ke3 Ra6 72. Kf4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.8.4"]
+[White "Brunello,S"]
+[Black "Halkias,S"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2575"]
+[BlackElo "2593"]
+[ECO "A14"]
+[Opening "English"]
+[Variation "Neo-Catalan declined"]
+[WhiteTeam "Italy"]
+[BlackTeam "Greece"]
+[WhiteFideId "813613"]
+[BlackFideId "4201809"]
+[EventDate "2011.11.03"]
+
+1. Nf3 d5 2. c4 e6 3. g3 Nf6 4. Bg2 Be7 5. O-O O-O 6. d4 dxc4 7. Qa4 a6 8. Qxc4
+b5 9. Qc2 Bb7 10. Bd2 Ra7 11. Rc1 Be4 12. Qb3 Nc6 13. e3 Qa8 14. Qd1 b4 15. Qf1
+Nb8 16. Ne5 c5 17. dxc5 Qd5 18. Nc4 Bxc5 19. Be1 Nbd7 20. Nbd2 Bxg2 21. Qxg2 Rc7
+22. Nb3 Be7 23. Ncd2 Rfc8 24. Rxc7 Rxc7 25. Rc1 Rxc1 26. Nxc1 Nc5 27. Qxd5 Nxd5
+28. Nc4 g5 29. Kf1 g4 30. Ke2 f5 31. Nd3 Nxd3 32. Kxd3 Nf6 33. Ne5 Ne4 34. Kc4
+Ng5 35. Bxb4 Bf6 36. Nd3 Nf3 37. Bd6 Nxh2 38. b4 Nf3 39. a4 Kf7 40. a5 Nd2+ 41.
+Kc5 Ke8 42. Be5 Be7+ 43. Kc6 Nc4 44. Bc3 Nd6 45. Kb6 Nb5 46. Be1 Kd7 47. Kxa6
+Nc7+ 48. Kb7 Nb5 49. Nc5+ Kd6 50. Na4 Kd7 51. Nb6+ Kd8 52. Nc4 Kd7 53. a6 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.9.1"]
+[White "Adams,Mi"]
+[Black "Ivanchuk,V"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2734"]
+[BlackElo "2775"]
+[ECO "B84"]
+[Opening "Sicilian"]
+[Variation "Scheveningen (Paulsen), classical variation"]
+[WhiteTeam "England"]
+[BlackTeam "Ukraine"]
+[WhiteFideId "400041"]
+[BlackFideId "14100010"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be2 e6 7. O-O Be7 8. Be3
+O-O 9. f4 Nc6 10. Kh1 Bd7 11. a4 Rc8 12. Qe1 d5 13. e5 Ne4 14. Nxe4 dxe4 15. c3
+Nxd4 16. Bxd4 Bc5 17. Bxc5 Rxc5 18. b4 Rc8 19. Rd1 Qc7 20. b5 axb5 21. axb5 Rfd8
+22. c4 Be8 23. Qf2 f6 24. exf6 gxf6 25. Rxd8 Rxd8 26. c5 f5 27. Bc4 Bf7 28. h3
+Rc8 29. c6 bxc6 30. b6 Qe7 31. Qb2 Rb8 32. Ra1 Qc5 33. b7 Qxc4 34. Qe5 Rxb7 35.
+Ra8+ Be8 36. Rxe8+ Kf7 37. Rh8 Qb5 38. Qd6 Qb4 39. Qd8 Qb2 40. Rf8+ Kg7 41. Rg8+ 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.9.2"]
+[White "Eljanov,P"]
+[Black "Short,N"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2691"]
+[BlackElo "2698"]
+[ECO "D37"]
+[Opening "QGD"]
+[Variation "4.Nf3"]
+[WhiteTeam "Ukraine"]
+[BlackTeam "England"]
+[WhiteFideId "14102951"]
+[BlackFideId "400025"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 d5 4. Nc3 Nbd7 5. Bg5 h6 6. Bh4 Be7 7. e3 O-O 8. Rc1
+Re8 9. Bd3 dxc4 10. Bxc4 a6 11. a4 c5 12. O-O cxd4 13. exd4 Nb6 14. Ba2 Bd7 15.
+Ne5 Bc6 16. f4 Bd5 17. Bb1 Rc8 18. Kh1 Nbd7 19. f5 Nf8 20. Qd3 exf5 21. Nxd5
+Qxd5 22. Rxc8 Rxc8 23. Qxf5 Rc7 24. Qd3 Ne6 25. Nf3 g6 26. Bc2 Nf4 27. Qd1 Ng4
+28. Bb3 Qf5 29. Qd2 Bd6 30. Bg3 g5 31. h3 Nf6 32. Bh2 Ne4 33. Qe3 Re7 34. Ne5
+Bxe5 35. dxe5 Qxe5 36. Bxf4 gxf4 37. Rxf4 Qxb2 38. Bxf7+ Rxf7 39. Rxe4 Kh7 40.
+Qd3 Kh8 41. Re8+ Kg7 42. Qg3+ Kf6 43. Qf4+ 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.9.3"]
+[White "Jones,G"]
+[Black "Moiseenko,A1"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2635"]
+[BlackElo "2715"]
+[ECO "B30"]
+[Opening "Sicilian"]
+[Variation "Nimzovich-Rossolimo attack (without ...d6)"]
+[WhiteTeam "England"]
+[BlackTeam "Ukraine"]
+[WhiteFideId "409561"]
+[BlackFideId "14102560"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 Nc6 3. Bb5 d6 4. O-O Bd7 5. Re1 Nf6 6. c3 a6 7. Bf1 Bg4 8. h3
+Bxf3 9. Qxf3 g6 10. d3 Bg7 11. Be3 Nd7 12. Qd1 O-O 13. Nd2 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.9.4"]
+[White "Efimenko,Z"]
+[Black "Pert,N"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2702"]
+[BlackElo "2563"]
+[ECO "D11"]
+[Opening "QGD Slav"]
+[Variation "4.e3"]
+[WhiteTeam "Ukraine"]
+[BlackTeam "England"]
+[WhiteFideId "14107201"]
+[BlackFideId "403989"]
+[EventDate "2011.11.03"]
+
+1. d4 d5 2. Nf3 Nf6 3. c4 c6 4. e3 g6 5. Bd3 Bg7 6. O-O O-O 7. Nbd2 Bg4 8. h3
+Bxf3 9. Nxf3 Nbd7 10. cxd5 cxd5 11. Bd2 a6 12. Qb3 Qb6 13. Qxb6 Nxb6 14. Bb4
+Rfe8 15. Rfc1 Bf8 16. Ba5 Nfd7 17. Rc7 Rab8 18. Ne5 Nxe5 19. dxe5 Na8 20. Rd7 e6
+21. Rc1 Re7 22. Rd8 Rxd8 23. Bxd8 Re8 24. Ba5 Rb8 25. f4 Be7 26. Kf2 Bd8 27. Bb4
+Nb6 28. Kf3 Rc8 29. Rxc8 Nxc8 30. e4 Be7 31. Bxe7 Nxe7 32. exd5 Nxd5 33. Be4 f6
+34. Bxd5 exd5 35. Ke3 Kf7 36. Kd4 Ke6 37. exf6 Kxf6 38. Kxd5 Kf5 39. g3 h5 40.
+b4 b5 41. a3 h4 42. gxh4 Kxf4 43. Ke6 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.10.1"]
+[White "Pelletier,Y"]
+[Black "Sutovsky,E"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2581"]
+[BlackElo "2696"]
+[ECO "A15"]
+[Opening "English opening"]
+[WhiteTeam "Switzerland"]
+[BlackTeam "Israel"]
+[WhiteFideId "1301837"]
+[BlackFideId "2802007"]
+[EventDate "2011.11.03"]
+
+1. Nf3 Nf6 2. c4 g6 3. Nc3 d5 4. Qa4+ Bd7 5. Qb3 dxc4 6. Qxc4 c5 7. Ne5 e6 8. g3
+Nc6 9. Nxd7 Qxd7 10. Bg2 Nd4 11. O-O Rc8 12. a4 Be7 13. b3 O-O 14. Bb2 Ng4 15.
+f4 Nc6 16. Ne4 f5 17. Ng5 Bxg5 18. fxg5 Rfd8 19. Bxc6 Rxc6 20. Qc3 Qd4+ 21. e3
+Qxc3 22. Bxc3 Rd5 23. Rae1 Ne5 24. e4 fxe4 25. Rxe4 Nd3 26. Re3 Rcd6 27. Rf6
+Rxg5 28. Rfxe6 Rxe6 29. Rxe6 Rf5 30. Re7 Rf7 31. Re8+ Rf8 32. Re7 Rf7 33. Re8+
+Rf8 34. Re3 Nc1 35. b4 cxb4 36. Bxb4 Rf7 37. Ba3 Rc7 38. Kf2 a5 39. Rc3 Rxc3 40.
+dxc3 Nd3+ 41. Ke3 Ne5 42. Kd4 Nf3+ 43. Kc5 Nd2 44. Kb5 Kf7 45. Kxa5 Ke6 46. Bb4
+Kd7 47. Kb6 Kc8 48. Bc5 Nf1 49. Bg1 Nd2 50. Bd4 Nf1 51. Bg1 Nd2 52. Bd4 Nf1 53.
+c4 Nxh2 54. c5 Nf3 55. Bc3 h5 56. c6 bxc6 57. Kxc6 g5 58. Bb4 Nd4+ 59. Kd5 Nf5
+60. Bd2 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.10.2"]
+[White "Roiz,M"]
+[Black "Korchnoi,V"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2651"]
+[BlackElo "2567"]
+[ECO "E11"]
+[Opening "Bogo-Indian defence, Gruenfeld variation"]
+[WhiteTeam "Israel"]
+[BlackTeam "Switzerland"]
+[WhiteFideId "2804158"]
+[BlackFideId "1300016"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 Bb4+ 4. Nbd2 b6 5. a3 Bxd2+ 6. Qxd2 Bb7 7. e3 a5 8. b3
+d6 9. Bb2 Nbd7 10. Be2 O-O 11. O-O Qe7 12. Rad1 Rfd8 13. Qc3 d5 14. cxd5 Nxd5
+15. Qc2 c5 16. Bc4 N5f6 17. Qe2 a4 18. dxc5 bxc5 19. bxa4 Rxa4 20. Bb5 Ra5 21.
+a4 Bd5 22. Nd2 Raa8 23. e4 Bb7 24. Bc3 Nb8 25. a5 Ba6 26. Bxa6 Nxa6 27. Nc4 Nb4
+28. f3 Ne8 29. Rxd8 Rxd8 30. Rd1 Nc7 31. Rxd8+ Qxd8 32. Qd2 Qxd2 33. Bxd2 Nba6
+34. Kf2 f6 35. Ke2 Kf7 36. Kd3 Ke7 37. e5 Kd7 38. exf6 gxf6 39. g4 Kc6 40. f4
+Nb4+ 41. Ke2 Kb5 42. Nd6+ Kxa5 43. Ne4 f5 44. Nxc5 fxg4 45. Nd3 Nd5 46. Kf2 Kb5
+47. Nxb4 Nxb4 48. Bxb4 Kxb4 49. Kg3 Kc5 50. Kxg4 Kd6 51. Kg5 e5 52. fxe5+ 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.10.3"]
+[White "Gallagher,Jo"]
+[Black "Smirin,I"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2500"]
+[BlackElo "2670"]
+[ECO "B43"]
+[Opening "Sicilian"]
+[Variation "Kan, 5.Nc3"]
+[WhiteTeam "Switzerland"]
+[BlackTeam "Israel"]
+[WhiteFideId "1303422"]
+[BlackFideId "2801990"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 a6 5. Nc3 d6 6. Be3 b5 7. Bd3 Nf6 8. f4
+Bb7 9. Qf3 b4 10. Nd1 Nbd7 11. Nf2 g6 12. O-O Bg7 13. Qh3 Nc5 14. f5 e5 15. Nb3
+Ncxe4 16. Nxe4 Nxe4 17. a3 bxa3 18. Rxa3 Rb8 19. Ra4 Nf6 20. Rh4 g5 21. Bxg5 Rg8
+22. Rg4 h5 23. Rg3 Bh8 24. Kh1 Qb6 25. Qh4 Ng4 26. Rxg4 hxg4 27. f6 Bd5 28. Bh7
+Rf8 29. Qxg4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.10.4"]
+[White "Postny,E"]
+[Black "Kurmann,O"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "IM"]
+[WhiteElo "2640"]
+[BlackElo "2451"]
+[ECO "A40"]
+[Opening "Queen's pawn"]
+[WhiteTeam "Israel"]
+[BlackTeam "Switzerland"]
+[WhiteFideId "2804344"]
+[BlackFideId "1308173"]
+[EventDate "2011.11.03"]
+
+1. d4 e6 2. c4 c5 3. d5 exd5 4. cxd5 d6 5. Nf3 g6 6. Bf4 Nf6 7. Nc3 a6 8. a4 Bg7
+9. h3 O-O 10. e3 Ne8 11. Be2 b6 12. O-O Nd7 13. Qd2 Qe7 14. Rab1 h6 15. e4 g5
+16. Bh2 Ne5 17. Nxe5 dxe5 18. Rfd1 Nd6 19. b4 c4 20. b5 axb5 21. Nxb5 Nxe4 22.
+Qe3 Nc5 23. d6 Qd7 24. Nc7 Rxa4 25. Nd5 Bb7 26. Nxb6 Qc6 27. Nd5 Qxd6 28. Rb6
+Qxd5 29. Rxd5 Bxd5 30. Qxc5 Ra1+ 31. Bf1 Rd8 32. Bxe5 Bxe5 33. Qe7 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.11.1"]
+[White "Jobava,Ba"]
+[Black "Tikkanen,H"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2678"]
+[BlackElo "2586"]
+[ECO "D80"]
+[Opening "Gruenfeld"]
+[Variation "Stockholm variation"]
+[WhiteTeam "Georgia"]
+[BlackTeam "Sweden"]
+[WhiteFideId "13601520"]
+[BlackFideId "1706446"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Bg5 Ne4 5. h4 Nxc3 6. bxc3 dxc4 7. e4 b5 8. a4
+c6 9. h5 Rg8 10. hxg6 hxg6 11. Qf3 f6 12. Bf4 Qa5 13. Be2 Nd7 14. e5 Bb7 15.
+exf6 exf6 16. Qe3+ Kf7 17. Nh3 Re8 18. Qf3 Bg7 19. Ng5+ Ke7 20. Qe3+ 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.11.2"]
+[White "Grandelius,N"]
+[Black "Pantsulaia,L"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2543"]
+[BlackElo "2588"]
+[ECO "E10"]
+[Opening "Queen's pawn game"]
+[WhiteTeam "Sweden"]
+[BlackTeam "Georgia"]
+[WhiteFideId "1710400"]
+[BlackFideId "13602071"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. Nf3 e6 3. c4 c5 4. g3 cxd4 5. Nxd4 Qc7 6. Nc3 a6 7. Bg2 Qxc4 8. O-O
+Nc6 9. Nb3 h5 10. Bf4 h4 11. Rc1 Qb4 12. e4 hxg3 13. hxg3 d6 14. Be3 Na5 15. Nd2
+Bd7 16. Rc2 Nc6 17. Re1 Ne5 18. a3 Qa5 19. f4 Neg4 20. Bd4 Qh5 21. Nf3 Bc6 22.
+b4 Be7 23. a4 e5 24. Bb6 O-O 25. b5 axb5 26. axb5 Bd7 27. Bc7 exf4 28. Bxd6 Ra1
+29. Qxa1 Bxd6 30. Nd5 Nxd5 31. exd5 Ne3 32. Rxe3 fxe3 33. Qd4 Bxg3 34. Qxe3 Re8
+35. Qd2 Bxb5 36. Nd4 Qh2# 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.11.3"]
+[White "Mchedlishvili,M"]
+[Black "Carlsson,P"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2636"]
+[BlackElo "2502"]
+[ECO "E12"]
+[Opening "Queen's Indian"]
+[Variation "Petrosian system"]
+[WhiteTeam "Georgia"]
+[BlackTeam "Sweden"]
+[WhiteFideId "13600966"]
+[BlackFideId "1705814"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. a3 Ba6 5. Qc2 Bb7 6. Bf4 Nh5 7. Bd2 Nf6 8. Nc3
+d5 9. cxd5 exd5 10. Bf4 a6 11. e3 Bd6 12. Bg5 Nbd7 13. Bd3 h6 14. Bh4 Be7 15.
+O-O O-O 16. Bf5 Re8 17. Rac1 g6 18. Bxg6 fxg6 19. Qxg6+ Kh8 20. Qxh6+ Nh7 21.
+Ne2 Bxh4 22. Nxh4 Nf8 23. Nf4 Rc8 24. Nf3 Qd6 25. Qh5 Re7 26. Ne5 Kg8 27. Ng4
+Kh8 28. Rc3 c5 29. Ne5 Kg8 30. Rfc1 c4 31. e4 Rg7 32. Qh4 Qf6 33. Qxf6 Nxf6 34.
+exd5 Nxd5 35. Nxd5 Bxd5 36. g3 Ne6 37. Nxc4 Nxd4 38. Kf1 Be6 39. Ne3 Rd8 40. Rd1
+Bh3+ 41. Ke1 Re7 42. Rdc1 Nf3+ 43. Ke2 Nd4+ 44. Ke1 Nf3+ 45. Ke2 Rf7 46. Rd1
+Nd4+ 47. Ke1 Nf3+ 48. Ke2 Nd4+ 49. Ke1 Re7 50. Rdc1 Bg4 51. h4 Nf3+ 52. Kf1 Bh3+
+53. Ke2 Nd4+ 54. Ke1 Nf3+ 55. Ke2 Nd4+ 56. Ke1 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.11.4"]
+[White "Semcesen,D"]
+[Black "Zarkua,D"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[WhiteElo "2490"]
+[BlackElo "2443"]
+[ECO "A30"]
+[Opening "English"]
+[Variation "symmetrical, hedgehog system"]
+[WhiteTeam "Sweden"]
+[BlackTeam "Georgia"]
+[WhiteFideId "1706993"]
+[BlackFideId "13602292"]
+[EventDate "2011.11.03"]
+
+1. c4 e6 2. Nc3 c5 3. Nf3 Nf6 4. g3 b6 5. Bg2 Bb7 6. O-O Be7 7. d4 cxd4 8. Qxd4
+d6 9. Bg5 a6 10. Bxf6 Bxf6 11. Qd3 Ra7 12. Rad1 Be7 13. Nd4 Bxg2 14. Kxg2 O-O
+15. f4 Qc8 16. f5 Nc6 17. fxe6 fxe6 18. Nf3 Nb4 19. Qe4 Rc7 20. b3 d5 21. cxd5
+Rxc3 22. d6 Bxd6 23. Rxd6 Nd5 24. Re1 Re3 25. Qg4 Qc2 26. Nd4 Qe4+ 27. Qxe4 Rxe4
+28. Nxe6 Ne3+ 29. Kg1 Rb8 30. Nf4 g5 31. Nd5 Nxd5 32. Rxd5 h6 33. Rd6 Kg7 34.
+Rc1 Rxe2 35. Rc7+ Kg8 36. Rg6+ Kf8 37. Rxh6 Kg8 38. Rg6+ Kh8 39. Rh6+ Kg8 40.
+Rch7 Rxa2 41. Rh5 Rf8 42. Rh8+ Kg7 43. Rxf8 Kxf8 44. Rxg5 Rb2 45. Rf5+ Kg7 46.
+Rf3 a5 47. h3 b5 48. Kf1 Kg6 49. Ke1 Kg5 50. Rc3 a4 51. bxa4 bxa4 52. Rc5+ Kg6
+53. Ra5 Rg2 54. Ra6+ Kh7 55. Ra7+ Kg6 56. Ra6+ Kh7 57. g4 Rg3 58. Kf2 Rxh3 59.
+Rxa4 Kg6 60. Ra5 Rb3 61. Rf5 Ra3 62. Kg2 Rb3 63. Kf2 Ra3 64. Rh5 Rb3 65. Rc5 Ra3
+66. Rf5 Rb3 67. Rf3 Rxf3+ 68. Kxf3 Kg5 69. Kg3 Kg6 70. Kf4 Kf6 71. g5+ Kg6 72.
+Kg4 Kg7 73. Kh5 Kh7 74. g6+ Kg7 75. Kg5 Kg8 76. Kh6 Kh8 77. g7+ Kg8 78. Kg6 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.12.1"]
+[White "Ivanisevic,I"]
+[Black "Djukic,Ni"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2636"]
+[BlackElo "2493"]
+[ECO "E97"]
+[Opening "King's Indian"]
+[Variation "orthodox, Aronin-Taimanov variation (Yugoslav attack / Mar del Plata variation)"]
+[WhiteTeam "Serbia"]
+[BlackTeam "Montenegro"]
+[WhiteFideId "912417"]
+[BlackFideId "922412"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 e5 7. O-O Nc6 8. Be3
+Ng4 9. Bg5 f6 10. Bh4 g5 11. Bg3 Nh6 12. dxe5 dxe5 13. Qb3 Qe7 14. Rad1 Rb8 15.
+Nd5 Qf7 16. Qa3 a5 17. Rd2 Be6 18. h3 Rfe8 19. Bd1 Bf8 20. Qe3 g4 21. Nh4 gxh3
+22. f4 hxg2 23. Rxg2 Bh3 24. Bh5 Qg7 25. fxe5 Bxg2 26. exf6 Bc5 27. fxg7 Bxe3+
+28. Kxg2 Bd4 29. Bf4 Kxg7 30. Bxe8 Rxe8 31. Rh1 Bxb2 32. Rb1 Be5 33. Bxe5+ Nxe5
+34. Rxb7 Nef7 35. Kf3 Ne5+ 36. Kf4 Nd3+ 37. Ke3 Rxe4+ 38. Kxe4 Nc5+ 39. Kd4 Nxb7
+40. Nxc7 Kf6 41. Nd5+ Ke6 42. c5 Nd8 43. Nf4+ Kd7 44. Kc4 Nc6 45. Kb5 Ng4 46.
+Nd5 Nge5 47. Nf6+ Ke6 48. Nxh7 Nd4+ 49. Kxa5 Kd5 50. Nf6+ Kxc5 51. Ne4+ Kd5 52.
+Nd2 Nc4+ 53. Nxc4 Kxc4 54. Ng2 Nb3+ 55. Kb6 Kb4 56. a4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.12.2"]
+[White "Blagojevic,Dr"]
+[Black "Solak,D"]
+[Result "1/2-1/2"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2514"]
+[BlackElo "2629"]
+[ECO "A50"]
+[Opening "Queen's pawn game"]
+[WhiteTeam "Montenegro"]
+[BlackTeam "Serbia"]
+[WhiteFideId "900885"]
+[BlackFideId "916811"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 c6 3. Nc3 d5 4. e3 a6 5. Bd3 b5 6. b3 Bg4 7. Nge2 e6 8. Qc2 Bd6
+9. O-O Nbd7 10. e4 b4 11. Na4 dxe4 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.12.3"]
+[White "Damljanovic,B"]
+[Black "Kosic,D"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2597"]
+[BlackElo "2502"]
+[ECO "A13"]
+[Opening "English"]
+[Variation "Romanishin gambit"]
+[WhiteTeam "Serbia"]
+[BlackTeam "Montenegro"]
+[WhiteFideId "900125"]
+[BlackFideId "900290"]
+[EventDate "2011.11.03"]
+
+1. c4 e6 2. Nf3 Nf6 3. g3 a6 4. Bg2 b5 5. b3 Bb7 6. Nc3 bxc4 7. bxc4 c5 8. Rb1
+Bc6 9. Qc2 Be7 10. e4 O-O 11. O-O Qc7 12. d4 cxd4 13. Nxd4 Rc8 14. Qe2 Ra7 15.
+Be3 Rb7 16. Rbc1 Qa5 17. Nd5 exd5 18. cxd5 Ba3 19. dxc6 Nxc6 20. Nxc6 dxc6 21.
+Rc2 Re7 22. Bd4 Ne8 23. Rb1 c5 24. Bc3 Qa4 25. Rd2 Bb4 26. Qc4 Rb8 27. Rdb2 Qa5
+28. Rb3 Qb5 29. Bf1 Qxc4 30. Bxc4 Rxe4 31. Bd5 Re7 32. a3 a5 33. axb4 cxb4 34.
+Bf3 Nc7 35. Ra1 Nb5 36. Bb2 Ra7 37. Kg2 h6 38. Be2 f6 39. h4 Kf8 40. h5 Re7 41.
+Re3 Ra7 42. Bd1 Rd8 43. Ba4 Rd2 44. Bxb5 Rxb2 45. Be8 Rd2 46. Bg6 Rd8 47. Rae1
+Raa8 48. Re7 a4 49. Rf7+ Kg8 50. Ree7 b3 51. Rxg7+ Kh8 52. Rh7+ Kg8 53. Reg7+
+Kf8 54. Rb7 Kg8 55. Rxh6 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.12.4"]
+[White "Kalezic,B"]
+[Black "Kovacevic,A"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[BlackTitle "GM"]
+[WhiteElo "2461"]
+[BlackElo "2563"]
+[ECO "B90"]
+[Opening "Sicilian"]
+[Variation "Najdorf, Byrne (English) attack"]
+[WhiteTeam "Montenegro"]
+[BlackTeam "Serbia"]
+[WhiteFideId "921815"]
+[BlackFideId "903124"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 Ng4 7. Bc1 Nc6 8. h3
+Nge5 9. Be3 e6 10. Qd2 Nxd4 11. Bxd4 Nc6 12. Be3 b5 13. O-O-O Be7 14. Kb1 O-O
+15. f4 Bb7 16. Qf2 Qc8 17. Bd3 Na5 18. Bd4 Nc4 19. Qg3 f6 20. Rhe1 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.13.1"]
+[White "Bologan,V"]
+[Black "Ragger,M"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2665"]
+[BlackElo "2662"]
+[ECO "B11"]
+[Opening "Caro-Kann"]
+[Variation "two knights, 3...Bg4"]
+[WhiteTeam "Moldova"]
+[BlackTeam "Austria"]
+[WhiteFideId "13900048"]
+[BlackFideId "1610856"]
+[EventDate "2011.11.03"]
+
+1. e4 c6 2. Nf3 d5 3. Nc3 Bg4 4. Be2 e6 5. d4 Nf6 6. h3 Bh5 7. e5 Nfd7 8. g4 Bg6
+9. h4 c5 10. h5 Be4 11. Nxe4 dxe4 12. Ng5 cxd4 13. Qxd4 Nc6 14. Qxe4 Ndxe5 15.
+Nxh7 Qd4 16. Ng5 f6 17. c3 Qxe4 18. Nxe4 O-O-O 19. Be3 Be7 20. Ng3 Nd3+ 21. Bxd3
+Rxd3 22. Ke2 Rd5 23. Rhd1 Rhd8 24. Rxd5 Rxd5 25. f4 a6 26. Rh1 Ra5 27. a3 Rd5
+28. b4 Rd8 29. h6 gxh6 30. Rxh6 Kd7 31. Rh7 Rg8 32. Ne4 Ke8 33. Bc5 f5 34. Bxe7
+fxe4 35. Bg5 e5 36. Ke3 exf4+ 37. Kxf4 e3 38. Rh3 Rf8+ 39. Kxe3 Ne5 40. Rg3 Nc4+
+41. Kd4 b5 42. a4 Kd7 43. axb5 axb5 44. Kd5 Rf1 45. Be3 Rf6 46. Bd4 Rg6 47. g5
+Nd6 48. Bf6 Ne8 49. Be5 Ke7 50. Rg1 Kd7 51. Ke4 Ke6 52. Bh2 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.13.2"]
+[White "Kindermann,S"]
+[Black "Iordachescu,V"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2519"]
+[BlackElo "2648"]
+[ECO "B12"]
+[Opening "Caro-Kann"]
+[Variation "advance variation"]
+[WhiteTeam "Austria"]
+[BlackTeam "Moldova"]
+[WhiteFideId "4600053"]
+[BlackFideId "13900200"]
+[EventDate "2011.11.03"]
+
+1. e4 c6 2. d4 d5 3. e5 Bf5 4. Nd2 e6 5. Nb3 Nd7 6. Nf3 Ne7 7. Be2 h6 8. O-O g5
+9. Bd2 a5 10. a4 Bg7 11. Rc1 O-O 12. h4 g4 13. Ne1 f6 14. exf6 Nxf6 15. g3 h5
+16. Nc5 b6 17. Ncd3 Ne4 18. Be3 Bg6 19. c3 Nf5 20. Bf4 c5 21. Ng2 Ra7 22. Ne5
+Be8 23. Bb5 Bxb5 24. axb5 Qe8 25. Nc6 Raf7 26. Qd3 Ne7 27. Nxe7+ Rxe7 28. Rce1
+Qd7 29. dxc5 bxc5 30. Rxe4 dxe4 31. Qxe4 e5 32. Bg5 Ref7 33. Qc4 Rb8 34. Ne3
+Qxb5 35. Qe6 Qd7 36. Qxd7 Rxd7 37. Nc4 Kf7 38. Ra1 Rb5 39. Kf1 Ke6 40. Ke2 Rdb7
+41. Bc1 Bf6 42. Rxa5 Rxa5 43. Nxa5 Ra7 44. Nc4 Kd5 45. Ne3+ Ke4 46. Nc4 Ra2 47.
+Nd2+ Kd5 48. Nf1 c4 49. Ne3+ Kc5 50. Nc2 Be7 51. Nb4 Ra4 52. Kd2 Kb5 53. Nc2 Ra8
+54. Ke2 Bc5 55. Be3 Ra2 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.13.3"]
+[White "Svetushkin,D"]
+[Black "Shengelia,D"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2621"]
+[BlackElo "2551"]
+[ECO "B12"]
+[Opening "Caro-Kann"]
+[Variation "advance variation"]
+[WhiteTeam "Moldova"]
+[BlackTeam "Austria"]
+[WhiteFideId "13900463"]
+[BlackFideId "13601270"]
+[EventDate "2011.11.03"]
+
+1. e4 c6 2. d4 d5 3. e5 Bf5 4. Nf3 e6 5. Be2 Ne7 6. Nbd2 Bg6 7. O-O Nf5 8. Nb3
+Nd7 9. c3 a6 10. Bf4 c5 11. g4 Nh6 12. h3 c4 13. Nbd2 b5 14. Re1 Be7 15. Nf1 O-O
+16. Qd2 f6 17. exf6 Nxf6 18. Ne5 Ne4 19. Qe3 Bh4 20. Ng3 Qf6 21. Nxg6 hxg6 22.
+Nxe4 Qxf4 23. Qxf4 Rxf4 24. Ng3 Raf8 25. Rf1 Nf7 26. Kg2 b4 27. f3 Nd6 28. Rfc1
+bxc3 29. bxc3 R4f7 30. Rab1 Bg5 31. Rc2 Nb5 32. Re1 Rb7 33. Bf1 Na3 34. Rce2 Nb1
+35. Rc2 Rb6 36. Ne2 Na3 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.13.4"]
+[White "Kreisl,R"]
+[Black "Hamitevici,V"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[BlackTitle "IM"]
+[WhiteElo "2415"]
+[BlackElo "2428"]
+[ECO "A04"]
+[Opening "Reti opening"]
+[WhiteTeam "Austria"]
+[BlackTeam "Moldova"]
+[WhiteFideId "1613880"]
+[BlackFideId "13902393"]
+[EventDate "2011.11.03"]
+
+1. Nf3 c5 2. c4 Nc6 3. Nc3 g6 4. e3 Nf6 5. d4 cxd4 6. exd4 d5 7. cxd5 Nxd5 8.
+Qb3 Nxc3 9. Bc4 Nd5 10. Bxd5 e6 11. Bxc6+ bxc6 12. O-O Qd5 13. Bf4 f6 14. Rfc1
+g5 15. Bg3 Be7 16. h4 g4 17. Qxd5 cxd5 18. Ne1 Bd8 19. Nd3 Bb6 20. Nc5 Kf7 21.
+b4 Re8 22. a4 a5 23. b5 e5 24. dxe5 fxe5 25. Nd3 e4 26. Ne5+ Kg8 27. Rd1 e3 28.
+fxe3 Bxe3+ 29. Kh2 d4 30. Nd3 Bb7 31. Nc5 Bd5 32. Nd7 Re6 33. Nc5 Rg6 34. Ra3
+Re8 35. Rxe3 Rxe3 36. Rxd4 Bf3 37. Rd2 Rc3 38. Nd7 Be4 39. Ne5 Re6 40. Rd4 Re3
+41. Nxg4 Re2 42. Nf2 Bc2 43. Nh3 Rh6 44. Nf4 Re4 45. Rd8+ Kf7 46. Ra8 Rxa4 47.
+Ra7+ Ke8 48. Ra8+ Kf7 49. Ra7+ Ke8 50. Ra8+ Kf7 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.14.1"]
+[White "Miezis,N"]
+[Black "Sulskis,S"]
+[Result "0-1"]
+[WhiteTitle "GM"]
+[BlackTitle "GM"]
+[WhiteElo "2547"]
+[BlackElo "2577"]
+[ECO "A20"]
+[Opening "English opening"]
+[WhiteTeam "Latvia"]
+[BlackTeam "Lithuania"]
+[WhiteFideId "11600136"]
+[BlackFideId "12800112"]
+[EventDate "2011.11.03"]
+
+1. c4 e5 2. g3 c6 3. d4 e4 4. Nc3 d5 5. Bg2 h6 6. cxd5 cxd5 7. f3 exf3 8. Nxf3
+Nf6 9. O-O Be7 10. Nh4 O-O 11. Nf5 Nc6 12. Qd3 Be6 13. Kh1 Re8 14. h3 Bf8 15. g4
+Ne4 16. Nxe4 dxe4 17. Qxe4 Bc4 18. Qf4 Rxe2 19. Be3 Rxb2 20. Rf2 Rxf2 21. Qxf2
+Qd7 22. g5 Re8 23. gxh6 g6 24. Rg1 Bd5 25. h7+ Kh8 26. Bg5 Qxf5 27. Bf6+ Kxh7
+28. Qxf5 Bxg2+ 29. Kxg2 gxf5 30. d5 Nb4 31. Rd1 Bd6 32. Kf3 f4 33. Bd4 b6 34. a4
+Nc2 35. Bf2 Ne3 36. Rc1 Nxd5 37. Rd1 Re5 38. Bd4 Re6 39. h4 Ne3 40. Rc1 Nf5 41.
+Bf2 Ne3 42. Rc8 a5 43. h5 Bc5 44. Bh4 Nd5 45. Kg4 Nf6+ 46. Kxf4 Re4+ 47. Kg5
+Rxa4 48. Be1 Ne4+ 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.14.2"]
+[White "Zagorskis,D"]
+[Black "Sveshnikov,E"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[BlackTitle "GM"]
+[WhiteElo "2497"]
+[BlackElo "2514"]
+[ECO "D30"]
+[Opening "Queen's gambit declined"]
+[WhiteTeam "Lithuania"]
+[BlackTeam "Latvia"]
+[WhiteFideId "12800120"]
+[BlackFideId "4100638"]
+[EventDate "2011.11.03"]
+
+1. d4 d5 2. c4 e6 3. Nf3 Nf6 4. e3 c5 5. Nc3 Nc6 6. a3 cxd4 7. exd4 Be7 8. Bd3
+dxc4 9. Bxc4 O-O 10. O-O a6 11. Re1 b5 12. Ba2 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.14.3"]
+[White "Neiksans,A"]
+[Black "Labeckas,K"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[BlackTitle "IM"]
+[WhiteElo "2502"]
+[BlackElo "2410"]
+[ECO "C11"]
+[Opening "French defence"]
+[WhiteTeam "Latvia"]
+[BlackTeam "Lithuania"]
+[WhiteFideId "11601388"]
+[BlackFideId "12802808"]
+[EventDate "2011.11.03"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Nf6 4. exd5 exd5 5. Bd3 Be7 6. Nf3 Bg4 7. h3 Bh5 8. Bf4
+O-O 9. g4 Bg6 10. Ne5 Nbd7 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.14.4"]
+[White "Klabis,R"]
+[Black "Starostits,I"]
+[Result "0-1"]
+[BlackTitle "GM"]
+[WhiteElo "2100"]
+[BlackElo "2456"]
+[ECO "B12"]
+[Opening "Caro-Kann"]
+[Variation "advance variation"]
+[WhiteTeam "Lithuania"]
+[BlackTeam "Latvia"]
+[WhiteFideId "12805246"]
+[BlackFideId "11600748"]
+[EventDate "2011.11.03"]
+
+1. e4 c6 2. d4 d5 3. e5 Bf5 4. c3 e6 5. Be3 Nd7 6. f4 Ne7 7. Nf3 Bg6 8. Be2 Nf5
+9. Bf2 h5 10. O-O h4 11. Nbd2 Be7 12. Re1 Bh5 13. Bd3 Nf8 14. Qb3 Rb8 15. c4
+dxc4 16. Qxc4 h3 17. g3 Bg4 18. Be4 Nd7 19. Nf1 Nb6 20. Qd3 Nd5 21. a3 O-O 22.
+Ne3 Ndxe3 23. Bxe3 c5 24. Bf2 cxd4 25. b4 a5 26. Rab1 axb4 27. axb4 b5 28. Rec1
+g5 29. Nxd4 Nxd4 30. Bxd4 Bf5 31. Bxf5 exf5 32. Rd1 Qd5 33. Qe2 g4 34. Ba7 Qb7
+35. Bxb8 Rxb8 36. Qa2 Bd8 37. e6 Qb6+ 38. Kf1 Qc6 39. exf7+ Kf8 40. Kg1 Bf6 41.
+Qe2 Kxf7 42. Ra1 Re8 43. Ra7+ Kf8 44. Qa2 Bd4+ 45. Rxd4 Qc1+ 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.15.1"]
+[White "Yilmaz,M"]
+[Black "Lie,K"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[BlackTitle "GM"]
+[WhiteElo "2515"]
+[BlackElo "2560"]
+[ECO "A61"]
+[Opening "Benoni defence"]
+[WhiteTeam "Turkey"]
+[BlackTeam "Norway"]
+[WhiteFideId "6302718"]
+[BlackFideId "1501984"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. Nf3 e6 3. c4 c5 4. d5 exd5 5. cxd5 d6 6. Nc3 g6 7. h3 Bg7 8. e4 O-O
+9. Bd3 Nbd7 10. O-O Nh5 11. Bg5 Bf6 12. Be3 Ne5 13. Be2 Nxf3+ 14. Bxf3 Ng7 15.
+Bf4 Bg5 16. Bh2 Bf6 17. Qd2 Re8 18. a4 Be5 19. Bxe5 Rxe5 20. Rfb1 a5 21. Nb5 b6
+22. Re1 Ba6 23. Nc3 Qh4 24. Re3 Rae8 25. Rae1 g5 26. Bg4 Qh6 27. Be2 Bc8 28. Bg4
+Ba6 29. Be2 Bc8 30. Bd1 Qf6 31. Nb5 Qg6 32. Bf3 h5 33. g4 hxg4 34. hxg4 Qf6 35.
+Na3 Qf4 36. Nc4 Bxg4 37. Nxe5 Rxe5 38. Bxg4 Qxg4+ 39. Rg3 Qh4 40. Ree3 Nh5 41.
+Rg2 Nf4 42. Rh2 Qg4+ 43. Kh1 Ng6 44. Rg2 Qd7 45. Qd1 f6 46. Rh2 Nf4 47. f3 Re7
+48. Rc3 Rh7 49. Rc2 Rh3 50. b3 Rxh2+ 51. Rxh2 b5 52. Qe1 b4 53. Qf1 Qe7 54. Qa6
+Ng6 55. Qc8+ Kg7 56. Qh3 Nh4 57. Qe6 Qxe6 58. dxe6 Kf8 59. f4 Ke7 60. f5 Nf3 61.
+Rh7+ Ke8 62. Rh8+ Ke7 63. Rh7+ Ke8 64. Rd7 Ne5 65. Rxd6 c4 66. bxc4 Nxc4 67. Rc6
+Nd2 68. e5 Ne4 69. Rc4 Ng3+ 70. Kh2 Nh5 71. Rc8+ Ke7 72. Rc7+ Kd8 73. Rh7 b3 74.
+e7+ Kd7 75. e6+ 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.15.2"]
+[White "Elsness,F"]
+[Black "Can,E"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[BlackTitle "GM"]
+[WhiteElo "2506"]
+[BlackElo "2465"]
+[ECO "E92"]
+[Opening "King's Indian"]
+[Variation "Gligoric-Taimanov system"]
+[WhiteTeam "Norway"]
+[BlackTeam "Turkey"]
+[WhiteFideId "1501100"]
+[BlackFideId "6302181"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 e5 7. Be3 exd4 8. Nxd4
+Re8 9. f3 c6 10. O-O d5 11. cxd5 cxd5 12. Qb3 dxe4 13. Bc4 Rf8 14. Rad1 exf3 15.
+Ne6 Qe8 16. Rd8 fxg2 17. Rxf6 Bxf6 18. Rxe8 Rxe8 19. Ne4 Be5 20. N6g5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.15.3"]
+[White "Firat,B"]
+[Black "Johannessen,LE"]
+[Result "1/2-1/2"]
+[WhiteTitle "IM"]
+[BlackTitle "GM"]
+[WhiteElo "2393"]
+[BlackElo "2515"]
+[ECO "C78"]
+[Opening "Ruy Lopez"]
+[Variation "Archangelsk (counterthrust) variation"]
+[WhiteTeam "Turkey"]
+[BlackTeam "Norway"]
+[WhiteFideId "6305881"]
+[BlackFideId "1501674"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O b5 6. Bb3 Bb7 7. d3 Bd6 8. a4 h6
+9. c3 O-O 10. Nh4 Re8 11. Nf5 Bf8 12. axb5 axb5 13. Rxa8 Bxa8 14. Ba2 d5 15. Qf3
+Nb8 16. Re1 Re6 17. exd5 Bxd5 18. Bxd5 Qxd5 19. Qxd5 Nxd5 20. d4 Nd7 21. dxe5
+Rxe5 22. Rxe5 Nxe5 23. Nd4 Nd3 24. Bd2 Nxb2 25. Nxb5 Nc4 26. Bc1 Bc5 27. Nd2 c6
+28. Nd4 Nxc3 29. Nxc6 Nxd2 30. Bxd2 Ne4 31. Be1 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.15.4"]
+[White "Getz,N"]
+[Black "Ali Marandi,C"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[BlackTitle "FM"]
+[WhiteElo "2369"]
+[BlackElo "2275"]
+[ECO "A09"]
+[Opening "Reti opening"]
+[WhiteTeam "Norway"]
+[BlackTeam "Turkey"]
+[WhiteFideId "1505572"]
+[BlackFideId "6300529"]
+[EventDate "2011.11.03"]
+
+1. Nf3 d5 2. c4 c6 3. e3 Nf6 4. Nc3 e6 5. b3 Bd6 6. Bb2 O-O 7. Be2 Nbd7 8. Qc2
+Qe7 9. O-O b6 10. cxd5 cxd5 11. Nb5 Bb7 12. Nxd6 Qxd6 13. Rac1 Rac8 14. Qb1 e5
+15. Qa1 Rxc1 16. Rxc1 Re8 17. d4 e4 18. Ne5 Nf8 19. a4 Ne6 20. Ba3 Qb8 21. Nc6
+Bxc6 22. Rxc6 Rc8 23. Qc3 Rxc6 24. Qxc6 Qc7 25. Bb5 h6 26. Bd6 Qd8 27. Be5 Ng4
+28. Bg3 Nf6 29. h3 Kh7 30. Qb7 Kg6 31. Qxa7 h5 32. Qb8 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.16.1"]
+[White "Danielsen,Hen"]
+[Black "Tate,A"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "FM"]
+[WhiteElo "2542"]
+[BlackElo "2334"]
+[ECO "E94"]
+[Opening "King's Indian"]
+[Variation "orthodox, 7...Nbd7"]
+[WhiteTeam "Iceland"]
+[BlackTeam "Scotland"]
+[WhiteFideId "1400185"]
+[BlackFideId "2401878"]
+[EventDate "2011.11.03"]
+
+1. c4 g6 2. d4 Nf6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 Nbd7 7. O-O e5 8. Be3
+Re8 9. d5 Nh5 10. g3 Bf8 11. b4 Ng7 12. Ne1 f5 13. f3 a5 14. a3 f4 15. gxf4 exf4
+16. Bxf4 Qf6 17. Bd2 c6 18. Kh1 axb4 19. axb4 Rxa1 20. Qxa1 Nf5 21. Qa7 Bh6 22.
+Bxh6 Qxc3 23. dxc6 bxc6 24. exf5 Rxe2 25. Qc7 Re8 26. Qxc6 Nf6 27. fxg6 Bh3 28.
+Qc7 Nd7 29. Qxd6 Qxe1 30. Qd5+ Qe6 31. Re1 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.16.2"]
+[White "Morrison,G SCO"]
+[Black "Gretarsson,Hj"]
+[Result "0-1"]
+[WhiteTitle "FM"]
+[BlackTitle "FM"]
+[WhiteElo "2339"]
+[BlackElo "2452"]
+[ECO "A04"]
+[Opening "Reti opening"]
+[WhiteTeam "Scotland"]
+[BlackTeam "Iceland"]
+[WhiteFideId "2400090"]
+[BlackFideId "2302241"]
+[EventDate "2011.11.03"]
+
+1. Nf3 g6 2. c4 Bg7 3. Nc3 d6 4. g3 e5 5. Bg2 Ne7 6. O-O O-O 7. d4 Nd7 8. e4
+exd4 9. Nxd4 Nc6 10. Nxc6 bxc6 11. Bd2 a5 12. Na4 Ne5 13. Bc3 c5 14. Qc2 Bd7 15.
+f4 Qe8 16. Nxc5 dxc5 17. fxe5 Bxe5 18. Rad1 Bc6 19. Rf6 Bb7 20. Qf2 Bxc3 21.
+bxc3 Qe7 22. e5 Bxg2 23. Kxg2 Qxe5 24. Rd7 Rab8 25. Qf3 Rb2+ 26. Kh3 Rb6 27. Rc6
+Rxc6 28. Qxc6 Qf5+ 29. Kg2 Re8 30. Rd2 Qe4+ 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.16.3"]
+[White "Thorfinnsson,Bj"]
+[Black "Muir,A"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[BlackTitle "IM"]
+[WhiteElo "2402"]
+[BlackElo "2311"]
+[ECO "A14"]
+[Opening "English"]
+[Variation "Neo-Catalan declined"]
+[WhiteTeam "Iceland"]
+[BlackTeam "Scotland"]
+[WhiteFideId "2300982"]
+[BlackFideId "2400138"]
+[EventDate "2011.11.03"]
+
+1. c4 e6 2. g3 d5 3. Bg2 Nf6 4. Nf3 Be7 5. O-O O-O 6. b3 c5 7. Bb2 Nc6 8. e3 b6
+9. Qe2 Bb7 10. Rd1 dxc4 11. bxc4 Qc7 12. Nc3 Rfd8 13. Nb5 Qc8 14. Rab1 a6 15.
+Nc3 Qc7 16. Na4 Nd7 17. d4 cxd4 18. exd4 Na5 19. c5 b5 20. Nc3 Nf6 21. Ba1 Nc6
+22. a4 bxa4 23. Ne5 Na5 24. Rxb7 Nxb7 25. Nxa4 Nd5 26. Bxd5 Rxd5 27. Nb6 Rad8
+28. Nxd5 Rxd5 29. Rb1 f6 30. Qxa6 Nd8 31. Nc4 Bxc5 32. dxc5 Rxc5 33. Ne3 e5 34.
+Bb2 Nc6 35. Ba3 Rc3 36. Nd5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.16.4"]
+[White "Mitchell,M"]
+[Black "Olafsson,H1"]
+[Result "0-1"]
+[BlackTitle "GM"]
+[WhiteElo "2215"]
+[BlackElo "2531"]
+[ECO "E46"]
+[Opening "Nimzo-Indian"]
+[Variation "Reshevsky variation"]
+[WhiteTeam "Scotland"]
+[BlackTeam "Iceland"]
+[WhiteFideId "2400634"]
+[BlackFideId "2300010"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Ne2 d5 6. a3 Be7 7. cxd5 exd5 8. b4
+c6 9. Ng3 Re8 10. Bd3 b5 11. O-O a5 12. bxa5 Rxa5 13. Bb2 Nbd7 14. e4 dxe4 15.
+Ncxe4 Bf8 16. Qc2 Bb7 17. Nc5 Bc8 18. Rad1 Ra7 19. Nce4 Rc7 20. Ng5 g6 21. a4
+Nd5 22. h4 N7b6 23. axb5 cxb5 24. Qb3 b4 25. Rfe1 Bd7 26. Be4 Ba4 27. Qa2 Bxd1
+28. Rxd1 Bg7 29. Qb3 Bf6 30. Nf3 Qd6 31. Bb1 Nc3 32. Bxc3 Rxc3 33. Qa2 Ra3 34.
+Qc2 Rc8 35. Qe2 Nd5 36. Ne4 Qf4 37. Nc5 Nc3 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.17.1"]
+[White "Bryan-Vissi,Mark"]
+[Black "Hansen,SuB"]
+[Result "0-1"]
+[BlackTitle "GM"]
+[WhiteElo "1808"]
+[BlackElo "2566"]
+[ECO "B07"]
+[Opening "Pirc defence"]
+[WhiteTeam "Cyprus"]
+[BlackTeam "Denmark"]
+[WhiteFideId "5900638"]
+[BlackFideId "1400266"]
+[EventDate "2011.11.03"]
+
+1. e4 d6 2. d4 Nf6 3. Nc3 e5 4. dxe5 dxe5 5. Qxd8+ Kxd8 6. Bg5 Be6 7. O-O-O+ Kc8
+8. f3 c6 9. Nge2 Nbd7 10. Kb1 h6 11. Be3 b5 12. Nc1 Bc5 13. Bd2 Kb7 14. Nd3 Bb6
+15. Bc1 a5 16. a4 b4 17. Ne2 b3 18. Nc3 Rhe8 19. Be2 Bd4 20. Bd2 Rab8 21. Rhe1
+Ka8 22. Nc1 Nc5 23. Bd3 Nfd7 24. h3 bxc2+ 25. Bxc2 Nb6 26. N1e2 Nc4 27. Bc1 Na3+ 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.17.2"]
+[White "Rasmussen,A"]
+[Black "Aristotelous,V"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[WhiteElo "2541"]
+[BlackElo "1921"]
+[ECO "A01"]
+[Opening "Nimzovich-Larsen attack"]
+[Variation "modern variation"]
+[WhiteTeam "Denmark"]
+[BlackTeam "Cyprus"]
+[WhiteFideId "1406000"]
+[BlackFideId "5900468"]
+[EventDate "2011.11.03"]
+
+1. b3 e5 2. Bb2 Nc6 3. c4 Nf6 4. e3 d5 5. cxd5 Nxd5 6. a3 Be7 7. Qc2 O-O 8. Nf3
+Bf6 9. d3 Re8 10. Nbd2 g6 11. Be2 Bg7 12. b4 a6 13. O-O Bf5 14. Ne4 Bxe4 15.
+dxe4 Nf6 16. Nd2 Qe7 17. Rfc1 Rec8 18. Rab1 Ne8 19. Nb3 Nd8 20. Nc5 h5 21. Bc4
+Nd6 22. Bb3 b6 23. Na4 a5 24. Qd3 axb4 25. axb4 Ne6 26. Rc6 Rd8 27. Qc2 h4 28.
+h3 g5 29. Nc3 g4 30. hxg4 h3 31. gxh3 Qh4 32. Kg2 Ng5 33. Rh1 Ne8 34. Nd5 Nd6
+35. f3 Ne6 36. Qf2 Qh6 37. h4 Kf8 38. Rhc1 Ne8 39. g5 Qh5 40. Qg3 Nf4+ 41. exf4
+exf4 42. Bxg7+ Nxg7 43. Qxf4 Ra3 44. Rh6 Rxb3 45. Rxc7 Rb2+ 46. Kh3 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.17.3"]
+[White "Boulos,Vrachimis"]
+[Black "Aagaard,J"]
+[Result "0-1"]
+[BlackTitle "GM"]
+[BlackElo "2522"]
+[ECO "A13"]
+[Opening "English opening"]
+[WhiteTeam "Cyprus"]
+[BlackTeam "Denmark"]
+[WhiteFideId "5900247"]
+[BlackFideId "1401815"]
+[EventDate "2011.11.03"]
+
+1. c4 e6 2. Nc3 c5 3. e3 d5 4. cxd5 exd5 5. d4 Nf6 6. Nf3 a6 7. a4 Nc6 8. Be2
+Bd6 9. dxc5 Bxc5 10. Nd4 O-O 11. O-O Re8 12. Nxc6 bxc6 13. Qc2 Bd6 14. h3 Rb8
+15. Rd1 a5 16. Bd2 h5 17. Bf1 Bc7 18. Ne2 Ne4 19. Be1 Qd6 20. g3 h4 21. Bg2 hxg3
+22. fxg3 Ng5 23. Nf4 Bb6 24. Bf2 Bxe3 25. Bxe3 Rxe3 26. Re1 Rxe1+ 27. Rxe1 Bxh3
+28. Nxh3 Qxg3 29. Re7 Nxh3+ 30. Kh1 Nf4 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.17.4"]
+[White "Glud,J"]
+[Black "Constantinou,Pa"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[WhiteElo "2497"]
+[BlackElo "2068"]
+[ECO "A36"]
+[Opening "English"]
+[Variation "ultra-symmetrical variation"]
+[WhiteTeam "Denmark"]
+[BlackTeam "Cyprus"]
+[WhiteFideId "1407767"]
+[BlackFideId "5900328"]
+[EventDate "2011.11.03"]
+
+1. c4 c5 2. g3 g6 3. Bg2 Bg7 4. Nc3 Nc6 5. a3 d6 6. Rb1 a5 7. Nf3 e5 8. O-O Nge7
+9. Ne1 O-O 10. Nc2 Be6 11. Ne3 Rb8 12. Ned5 Nd4 13. e3 Ndf5 14. b4 Nxd5 15. Nxd5
+Bxd5 16. Bxd5 Ne7 17. Bg2 b5 18. bxc5 bxc4 19. Rxb8 Qxb8 20. cxd6 Qxd6 21. Qa4
+Qd3 22. Qxa5 e4 23. f3 c3 24. dxc3 Bxc3 25. Qc5 exf3 26. Bxf3 Bf6 27. Rd1 Qb3
+28. Qd6 Bg5 29. Qd3 Qxd3 30. Rxd3 Rc8 31. Bd2 Rc2 32. Kf1 Nf5 33. Be4 Ra2 34. g4
+Nh4 35. Ke2 Be7 36. Rd7 Bf6 37. Bd5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.18.1"]
+[White "Sammalvuo,T"]
+[Black "Berend,F"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[BlackTitle "IM"]
+[WhiteElo "2492"]
+[BlackElo "2381"]
+[ECO "E01"]
+[Opening "Catalan"]
+[Variation "closed"]
+[WhiteTeam "Finland"]
+[BlackTeam "Luxembourg"]
+[WhiteFideId "501115"]
+[BlackFideId "4000102"]
+[EventDate "2011.11.03"]
+
+1. d4 Nf6 2. c4 e6 3. g3 d5 4. Bg2 Nc6 5. Nf3 dxc4 6. Qa4 Bb4+ 7. Bd2 Nd5 8.
+Bxb4 Nxb4 9. Na3 Rb8 10. Qb5 O-O 11. O-O b6 12. Qxc4 Ba6 13. Nb5 Qd5 14. Qxd5
+Nxd5 15. a4 Na5 16. Ne5 Rbd8 17. Nxa7 Nb4 18. Rac1 Rxd4 19. Rxc7 Bxe2 20. Re1
+Bh5 21. Nc8 f6 22. Ne7+ Kh8 23. Nd7 Re8 24. Nxb6 Nd3 25. Re4 e5 26. Nf5 Rxe4 27.
+Bxe4 Nxb2 28. Nxg7 Rb8 29. Nxh5 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.18.2"]
+[White "Jeitz,C"]
+[Black "Agopov,M"]
+[Result "1/2-1/2"]
+[BlackTitle "IM"]
+[WhiteElo "2171"]
+[BlackElo "2450"]
+[ECO "B51"]
+[Opening "Sicilian"]
+[Variation "Canal-Sokolsky (Nimzovich-Rossolimo, Moscow) attack"]
+[WhiteTeam "Luxembourg"]
+[BlackTeam "Finland"]
+[WhiteFideId "4000803"]
+[BlackFideId "501840"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. Bb5+ Nc6 4. O-O Bd7 5. Re1 a6 6. Bxc6 Bxc6 7. d4 cxd4 8.
+Nxd4 Nf6 9. Bg5 e6 10. Nxc6 bxc6 11. Nd2 Be7 12. c4 h6 13. Bf4 Nd7 14. Qc2 O-O
+15. Rad1 e5 16. Be3 Qb8 17. Re2 Rd8 18. h3 Nf8 19. Nb1 Ne6 20. Red2 Bg5 21. Nc3
+Nd4 22. Qd3 Rd7 23. f4 Bf6 24. Bxd4 exd4 25. Ne2 c5 26. Ng3 g6 27. Qf3 Rb7 28.
+e5 dxe5 29. Ne4 Be7 30. fxe5 Raa7 31. Qf4 f5 32. Qxh6 fxe4 33. Qxg6+ Kh8 34.
+Qh6+ Kg8 35. Qg6+ Kh8 36. Qh6+ 1/2-1/2
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.18.3"]
+[White "Karttunen,M"]
+[Black "Schartz,A"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[WhiteElo "2434"]
+[BlackElo "2160"]
+[ECO "B02"]
+[Opening "Alekhine's defence"]
+[Variation "Scandinavian variation"]
+[WhiteTeam "Finland"]
+[BlackTeam "Luxembourg"]
+[WhiteFideId "502081"]
+[BlackFideId "4000765"]
+[EventDate "2011.11.03"]
+
+1. e4 d5 2. Nc3 Nf6 3. e5 d4 4. exf6 dxc3 5. fxg7 cxd2+ 6. Bxd2 Bxg7 7. Qh5 Qd4
+8. c3 Qe5+ 9. Qxe5 Bxe5 10. Nf3 Bf6 11. Bf4 c6 12. Bd3 Nd7 13. Be3 Ne5 14. Nxe5
+Bxe5 15. f4 Bf6 16. O-O-O Be6 17. c4 b6 18. Be4 Bd7 19. g4 O-O-O 20. g5 Bg7 21.
+c5 Kc7 22. f5 Be5 23. h4 f6 24. cxb6+ axb6 25. Rdf1 c5 26. Rd1 e6 27. fxe6 Bxe6
+28. gxf6 Bxf6 29. Bf4+ Kc8 30. Rde1 Bd5 31. Bg5 Bxe4 32. Rxe4 Bxg5+ 33. hxg5
+Rdg8 34. Re5 Rg6 35. Kc2 Kc7 36. Kc3 Kc6 37. a4 Kd6 38. Rf5 Kc6 39. Kc4 Re8 40.
+Rxh7 Re4+ 41. Kb3 Re3+ 42. Kc4 Re4+ 43. Kb3 Re3+ 44. Kc2 Re2+ 45. Kc3 Re3+ 46.
+Kd2 Ree6 47. Rhf7 b5 48. a5 Rd6+ 49. Kc2 Rg8 50. a6 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.18.4"]
+[White "Steil Antoni,F"]
+[Black "Nyysti,S"]
+[Result "0-1"]
+[WhiteTitle "WIM"]
+[BlackTitle "IM"]
+[WhiteElo "2104"]
+[BlackElo "2345"]
+[ECO "C38"]
+[Opening "King's knight's gambit"]
+[WhiteTeam "Luxembourg"]
+[BlackTeam "Finland"]
+[WhiteFideId "4001249"]
+[BlackFideId "502138"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. f4 exf4 3. Nf3 g5 4. Bc4 Bg7 5. d4 h6 6. c3 d6 7. O-O Nc6 8. g3 Bh3
+9. Rf2 Nf6 10. gxf4 Qd7 11. Qe1 O-O-O 12. e5 dxe5 13. Nxe5 Nxe5 14. fxe5 Qg4+
+15. Kh1 Ne4 16. Re2 Qf3+ 17. Kg1 Bxe5 18. Nd2 Nxd2 19. Bxd2 Rxd4 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.19.1"]
+[White "Nedev,Tr"]
+[Black "Jones,I"]
+[Result "1-0"]
+[WhiteTitle "GM"]
+[BlackTitle "CM"]
+[WhiteElo "2493"]
+[BlackElo "2282"]
+[ECO "C42"]
+[Opening "Petrov"]
+[Variation "classical attack"]
+[WhiteTeam "FYROM"]
+[BlackTeam "Wales"]
+[WhiteFideId "15000605"]
+[BlackFideId "1800094"]
+[EventDate "2011.11.03"]
+
+1. e4 e5 2. Nf3 Nf6 3. Nxe5 d6 4. Nf3 Nxe4 5. d4 d5 6. Bd3 Be7 7. O-O Nc6 8. Nc3
+Nxc3 9. bxc3 O-O 10. h3 h6 11. Re1 Bd6 12. Ne5 Nxe5 13. dxe5 Bc5 14. Qh5 f5 15.
+exf6 Bxf2+ 16. Kxf2 Qxf6+ 17. Ke2 Bg4+ 18. Qxg4 Rae8+ 19. Be3 Qf2+ 20. Kd1 Rxe3
+21. Rxe3 Qxe3 22. Qd4 Qg5 23. g4 b6 24. h4 Qd8 25. Kd2 c5 26. Qe5 c4 27. Bg6 d4
+28. cxd4 c3+ 29. Kxc3 Qc8+ 30. Kb2 Qc4 31. a3 Rc8 32. Re1 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.19.2"]
+[White "Kett,T"]
+[Black "Colovic,A"]
+[Result "0-1"]
+[BlackTitle "IM"]
+[WhiteElo "2184"]
+[BlackElo "2451"]
+[ECO "B99"]
+[Opening "Sicilian"]
+[Variation "Najdorf, 7...Be7 main line"]
+[WhiteTeam "Wales"]
+[BlackTeam "FYROM"]
+[WhiteFideId "1801210"]
+[BlackFideId "15000729"]
+[EventDate "2011.11.03"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Be7 8. Qf3
+Qc7 9. O-O-O Nbd7 10. Bd3 h6 11. Bh4 g5 12. fxg5 Ne5 13. Qe2 Nfg4 14. Bg3 hxg5
+15. h3 Nxd3+ 16. cxd3 Ne5 17. Kb1 b5 18. Rc1 Qb7 19. Rhf1 Bd7 20. Nf5 exf5 21.
+Nd5 Rc8 22. d4 Rxc1+ 23. Rxc1 Nc4 24. b3 fxe4 25. Nxe7 Kxe7 26. d5 Ne5 27. Bxe5
+dxe5 28. Qd2 Kf6 29. Qf2+ Kg6 30. Qc5 e3 31. Qd6+ f6 32. Rf1 Bf5+ 0-1
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.19.3"]
+[White "Pancevski,F"]
+[Black "Pleasants,A"]
+[Result "1-0"]
+[WhiteTitle "IM"]
+[WhiteElo "2442"]
+[BlackElo "2089"]
+[ECO "B00"]
+[Opening "King's pawn opening"]
+[WhiteTeam "FYROM"]
+[BlackTeam "Wales"]
+[WhiteFideId "15002187"]
+[BlackFideId "411337"]
+[EventDate "2011.11.03"]
+
+1. e4 d6 2. d4 g6 3. Nf3 Bg7 4. h3 a6 5. a4 c5 6. dxc5 Qa5+ 7. c3 Qxc5 8. Bd3
+Nf6 9. Nbd2 Nbd7 10. a5 b5 11. axb6 Qxb6 12. O-O O-O 13. Nc4 Qc7 14. Na5 Nc5 15.
+Re1 Nxd3 16. Qxd3 Rb8 17. Nd4 Nd7 18. Qe2 Nc5 19. f3 Bd7 20. Qd1 Rfc8 21. Kh1
+Ne6 22. Ndb3 Bb5 23. Be3 Be5 24. Qd2 Bc4 25. Nd4 Bb5 26. Rec1 Bd7 27. b4 Nd8 28.
+Rab1 Nc6 29. Ndxc6 Bxc6 30. c4 Ba8 31. Bd4 Bxd4 32. Qxd4 Qb6 33. Qd2 Rc7 34. Re1
+Rbc8 35. e5 dxe5 36. Rxe5 Qf6 37. Re3 e5 38. Rd1 Qf5 39. Qe2 Re8 40. c5 e4 41.
+Nc4 Rce7 42. Nd6 1-0
+
+[Event "18th European Teams"]
+[Site "Porto Carras GRE"]
+[Date "2011.11.11"]
+[Round "9.19.4"]
+[White "Young,Al"]
+[Black "Stanojoski,Z"]
+[Result "0-1"]
+[BlackTitle "GM"]
+[WhiteElo "2042"]
+[BlackElo "2470"]
+[ECO "B00"]
+[Opening "Owen defence"]
+[WhiteTeam "Wales"]
+[BlackTeam "FYROM"]
+[WhiteFideId "1801309"]
+[BlackFideId "15000257"]
+[EventDate "2011.11.03"]
+
+1. e4 b6 2. d4 Bb7 3. Bd3 e6 4. Nf3 c5 5. c3 d6 6. O-O Nd7 7. Re1 Be7 8. Nbd2
+Qc7 9. a4 a6 10. b4 cxb4 11. cxb4 d5 12. Qb3 dxe4 13. Nxe4 Bd5 14. Qb1 Ngf6 15.
+Bg5 Qb7 16. Nfd2 h6 17. Bxf6 Nxf6 18. Nxf6+ gxf6 19. Be4 f5 20. Bxd5 Qxd5 21.
+Nf3 Rg8 22. Kh1 Bd6 23. Qd3 Ke7 24. Rac1 b5 25. a5 Rac8 26. Rc2 Rc4 27. Rxc4
+bxc4 28. Qc3 Rb8 29. Rb1 Qe4 30. Rb2 Qd3 31. Qc1 c3 32. Rb3 Rxb4 33. Rxc3 Rb1
+34. Rxd3 Rxc1+ 35. Ng1 Ra1 36. g3 Rxa5 37. Kg2 Ra2 38. Nf3 a5 39. Nd2 a4 40. Nc4
+Rc2 41. Ne3 Rc1 42. Rd2 a3 43. Ra2 Rc3 44. Kh3 f4 45. Ng4 h5 46. Ne5 f6 47. Ng6+
+Kf7 48. Nh4 f3 49. Rd2 Rb3 50. Ra2 Rb2 51. Ra1 Rxf2 0-1
diff --git a/_assets/vendor/pgn4web/fide-lookup.js b/_assets/vendor/pgn4web/fide-lookup.js
new file mode 100644
index 0000000..2c6ad5e
--- /dev/null
+++ b/_assets/vendor/pgn4web/fide-lookup.js
@@ -0,0 +1,27 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+//
+// example of external javascript library enhancing pgn4web:
+// lookpup player info on the FIDE website based on FIDE id or name
+//
+
+"use strict";
+
+function openFidePlayerUrl(name, FideId) {
+ if (FideId) { window.open("http://ratings.fide.com/card.phtml?event=" + escape(FideId)); }
+ else if (name) { window.open("http://ratings.fide.com/seek.phtml?idcode=&name=" + name + "&offset=0"); }
+}
+
+function customShortcutKey_Shift_1() {
+ openFidePlayerUrl(gameWhite[currentGame], customPgnHeaderTag('WhiteFideId'));
+}
+
+function customShortcutKey_Shift_2() {
+ openFidePlayerUrl(gameBlack[currentGame], customPgnHeaderTag('BlackFideId'));
+}
+
diff --git a/_assets/vendor/pgn4web/flash-replacement.html b/_assets/vendor/pgn4web/flash-replacement.html
new file mode 100644
index 0000000..51848ab
--- /dev/null
+++ b/_assets/vendor/pgn4web/flash-replacement.html
@@ -0,0 +1,235 @@
+
+
+
+
+
+
+
+flash replacement
+
+
+
+
+
+
+
+
+
+
+
+pgn4web live broadcast: flash replacement
+
+
+
+
+
+
+
+What about replacing with a broadly supported technology a well known live chess broadcast client based on the adobe flash technology and therefore not supported by mobile devices such as android phones and tablets, the iphone and the ipad? This page shows equivalent functionality based on HTML5 (javascript + css) that works on mobile devices as well.
+
+
+
+basic example
+
+This replicates the flash based client layout and functionality:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+advanced example
+
+This shows additional functionality of the pgn4web viewer, including customized colors, customized chess pieces and integrated user/engine analysis board:
+
+
+
+
+
+
+
+
+
+
+
+more examples
+
+Please find below links to few more live chess broadcast examples showing the multiple options available from pgn4web:
+
+
+
+end user hints for the client user interface
+
+use the arrow keys to move throughout the game
+click on the dots at the bottom or click on square F5 for the list of available games
+click on square H5 for a fullscreen view, then use the browser's back button to return to this page
+click on square E8 of the main board to activate the analysis board, copying the postion from the main board and starting the built-in chess engine (if supported by the web browser); try moves and variations clicking the from/to squares on the analysis board.
+click on square H8 for further general help
+
+
+webmaster hints to setup a live games broadcast
+
+The following instructions refer to the basic example; the advanced example including the integrated user/engine analysis board is relatively more complex, please contact the pgn4web project for detailed instructions based on specific requirements.
+
+
+copy the pgn4web files on the server, for instance in the folder accessible as http://example.com/somewhere/pgn4web/
+reuse the same tools that generate the chess moves for the flash based client processing the inputs from the electronic boards
+configure those tools to save games as a PGN file accessible as http://example.com/somewhere/pgn4web/live/live.pgn , including clock information if available
+replace the flash object in the live web pages with an inline frame using a src url similar to the example of this page, such as http://example.com/somewhere/pgn4web/dynamic-frame.html?
+set the inline frame height/width as appropriate to each live web page on the server and add any desired iframe css style property
+done
+more info about configuration options at the pgn4web wiki
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessInformantReader.eot b/_assets/vendor/pgn4web/fonts/ChessInformantReader.eot
new file mode 100644
index 0000000..6573d7b
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessInformantReader.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessInformantReader.svg b/_assets/vendor/pgn4web/fonts/ChessInformantReader.svg
new file mode 100644
index 0000000..74154d2
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessInformantReader.svg
@@ -0,0 +1,222 @@
+
+
+
+
+This is a custom SVG webfont generated by Font Squirrel.
+Copyright : Beke
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/fonts/ChessInformantReader.ttf b/_assets/vendor/pgn4web/fonts/ChessInformantReader.ttf
new file mode 100644
index 0000000..6fb7b94
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessInformantReader.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessInformantReader.woff b/_assets/vendor/pgn4web/fonts/ChessInformantReader.woff
new file mode 100644
index 0000000..35c836f
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessInformantReader.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessOleFigurin.eot b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.eot
new file mode 100644
index 0000000..db26971
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessOleFigurin.svg b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.svg
new file mode 100644
index 0000000..3991576
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.svg
@@ -0,0 +1,245 @@
+
+
+
+
+This is a custom SVG webfont generated by Font Squirrel.
+Copyright : C Copyright 1993 ChessOle Frank David 37081 Gttingen Germany
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/fonts/ChessOleFigurin.ttf b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.ttf
new file mode 100644
index 0000000..6ea399b
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessOleFigurin.woff b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.woff
new file mode 100644
index 0000000..dc03521
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessOleFigurin.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansAlpha.eot b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.eot
new file mode 100644
index 0000000..98a0cd3
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansAlpha.svg b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.svg
new file mode 100644
index 0000000..62c64fb
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.svg
@@ -0,0 +1,1296 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansAlpha.ttf b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.ttf
new file mode 100644
index 0000000..8ecc8b4
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansAlpha.woff b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.woff
new file mode 100644
index 0000000..e15ff9a
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansAlpha.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansMerida.eot b/_assets/vendor/pgn4web/fonts/ChessSansMerida.eot
new file mode 100644
index 0000000..9d2b4e3
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansMerida.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansMerida.svg b/_assets/vendor/pgn4web/fonts/ChessSansMerida.svg
new file mode 100644
index 0000000..a83906f
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessSansMerida.svg
@@ -0,0 +1,1413 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansMerida.ttf b/_assets/vendor/pgn4web/fonts/ChessSansMerida.ttf
new file mode 100644
index 0000000..cc502ad
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansMerida.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansMerida.woff b/_assets/vendor/pgn4web/fonts/ChessSansMerida.woff
new file mode 100644
index 0000000..0f486a7
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansMerida.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansPiratf.eot b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.eot
new file mode 100644
index 0000000..708d66b
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansPiratf.svg b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.svg
new file mode 100644
index 0000000..ce5c987
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.svg
@@ -0,0 +1,1288 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansPiratf.ttf b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.ttf
new file mode 100644
index 0000000..ebedacd
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansPiratf.woff b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.woff
new file mode 100644
index 0000000..b67246b
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansPiratf.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUscf.eot b/_assets/vendor/pgn4web/fonts/ChessSansUscf.eot
new file mode 100644
index 0000000..d950c6a
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUscf.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUscf.svg b/_assets/vendor/pgn4web/fonts/ChessSansUscf.svg
new file mode 100644
index 0000000..99a5f5f
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessSansUscf.svg
@@ -0,0 +1,1360 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUscf.ttf b/_assets/vendor/pgn4web/fonts/ChessSansUscf.ttf
new file mode 100644
index 0000000..a06d343
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUscf.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUscf.woff b/_assets/vendor/pgn4web/fonts/ChessSansUscf.woff
new file mode 100644
index 0000000..9e47fa9
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUscf.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUsual.eot b/_assets/vendor/pgn4web/fonts/ChessSansUsual.eot
new file mode 100644
index 0000000..be1fc36
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUsual.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUsual.svg b/_assets/vendor/pgn4web/fonts/ChessSansUsual.svg
new file mode 100644
index 0000000..cb803f2
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/ChessSansUsual.svg
@@ -0,0 +1,1512 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUsual.ttf b/_assets/vendor/pgn4web/fonts/ChessSansUsual.ttf
new file mode 100644
index 0000000..9fb4904
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUsual.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/ChessSansUsual.woff b/_assets/vendor/pgn4web/fonts/ChessSansUsual.woff
new file mode 100644
index 0000000..8b8ec08
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/ChessSansUsual.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.eot b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.eot
new file mode 100644
index 0000000..c3a372f
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.svg b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.svg
new file mode 100644
index 0000000..748c892
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.svg
@@ -0,0 +1,1223 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.ttf b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.ttf
new file mode 100644
index 0000000..6af7b30
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.woff b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.woff
new file mode 100644
index 0000000..592e691
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Bold.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.eot b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.eot
new file mode 100644
index 0000000..dc1d6d3
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.eot differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.svg b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.svg
new file mode 100644
index 0000000..08c417a
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.svg
@@ -0,0 +1,1218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.ttf b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.ttf
new file mode 100644
index 0000000..75ef1f7
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.ttf differ
diff --git a/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.woff b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.woff
new file mode 100644
index 0000000..c2a78ee
Binary files /dev/null and b/_assets/vendor/pgn4web/fonts/LiberationSans-Regular.woff differ
diff --git a/_assets/vendor/pgn4web/fonts/README.txt b/_assets/vendor/pgn4web/fonts/README.txt
new file mode 100644
index 0000000..7d3ead6
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/README.txt
@@ -0,0 +1,10 @@
+The figurine fonts are derived from the Liberation Sans font (released under
+GNU General Public License, see https://fedorahosted.org/liberation-fonts/)
+with the addition of chess pieces from freeware fonts: the alpha2 font (Peter
+Strickland), the good companion font (David L. Brown), the merida font (Armando
+H. Marroquin), the pirate font (Klaus Wolf) and the chess usual font (Armando
+H. Marroquin). The original chess fonts and more details are available at
+http://www.enpassant.dk/chess/fonteng.htm
+The chess informant symbols font is used with permission from the Chess
+Informant publishing company (http://www.chessinformant.rs). The chess ole
+figurin font is from the ChessOLE project (http://www.chessole.de, David Frank).
diff --git a/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols-alternative.js b/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols-alternative.js
new file mode 100644
index 0000000..8ae4605
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols-alternative.js
@@ -0,0 +1,93 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+"use strict";
+
+if ((typeof(blockChessInformantNAGSymbols) != "boolean") || (!blockChessInformantNAGSymbols)) {
+
+ if (typeof(ii) == "undefined") { var ii; }
+
+ var jsre = new RegExp("chess-informant-NAG-symbols-alternative\.js$", "");
+ var FontPath = detectJavascriptLocation(jsre).replace(jsre, "");
+
+ document.write(' ');
+ document.write('');
+
+ var Ns = '';
+ var Nl = '';
+ var Ne = ' ';
+
+ var basicNAGs = /^([\?!+#\s]|[^<]*<.span>)+(\s|$)/;
+
+ if (typeof(NAGstyle) == "undefined") { var NAGstyle; }
+ NAGstyle = 'olefigurin';
+
+ NAG[0] = '';
+ NAG[1] = '!'; // 'good move';
+ NAG[2] = '?'; // 'bad move';
+ NAG[3] = '!!'; // 'very good move';
+ NAG[4] = '??'; // 'very bad move';
+ NAG[5] = '!?'; // 'speculative move';
+ NAG[6] = '?!'; // 'questionable move';
+ NAG[7] = NAG[8] = Ns + 'V' + Ne; // 'forced move';
+ NAG[9] = '??'; // 'worst move';
+ NAG[10] = NAG[11] = NAG[12] = Ns + '=' + Ne; // 'drawish position';
+ NAG[13] = Ns + '5' + Ne; // 'unclear position';
+ NAG[14] = Ns + '1' + Ne; // 'White has a slight advantage';
+ NAG[15] = Ns + '2' + Ne; // 'Black has a slight advantage';
+ NAG[16] = Ns + '0' + Ne; // 'White has a moderate advantage';
+ NAG[17] = Ns + '3' + Ne; // 'Black has a moderate advantage';
+ NAG[18] = NAG[20] = Ns + '+-' + Ne; // 'White has a decisive advantage';
+ NAG[19] = NAG[21] = Ns + '-+' + Ne; // 'Black has a decisive advantage';
+ NAG[22] = NAG[23] = Ns + 'J' + Ne; // 'zugzwang';
+ NAG[24] = NAG[25] = NAG[26] = NAG[27] = NAG[28] = NAG[29] = Ns + 'F' + Ne; // 'space advantage';
+ NAG[30] = NAG[31] = NAG[32] = NAG[33] = NAG[34] = NAG[35] = Ns + 'E' + Ne; // 'time (development) advantage';
+ NAG[36] = NAG[37] = NAG[38] = NAG[39] = Ns + 'I' + Ne; // 'initiative';
+ NAG[40] = NAG[41] = Ns + 'H' + Ne; // 'attack';
+ NAG[42] = NAG[43] = Ns + '4' + Ne; // 'insufficient compensation for material deficit';
+ NAG[44] = NAG[45] = NAG[46] = NAG[47] = Ns + '6' + Ne; // 'sufficient compensation for material deficit';
+ NAG[48] = NAG[49] = NAG[50] = NAG[51] = NAG[52] = NAG[53] = Ns + 'Z' + Ne; // 'center control advantage';
+ for (ii = 54; ii <= 129; ii++) { NAG[ii] = ''; }
+ NAG[130] = NAG[131] = NAG[132] = NAG[133] = NAG[134] = NAG[135] = Ns + 'G' + Ne; // 'counterplay';
+ NAG[136] = NAG[137] = NAG[138] = NAG[139] = Ns + '!' + Ne; // 'time control pressure';
+
+ NAG[140] = Nl + 'U' + Ne; // 'with the idea';
+ NAG[141] = ''; // 'aimed against';
+ NAG[142] = Nl + 'W' + Ne; // 'better is';
+ NAG[143] = ''; // 'worse is';
+ NAG[144] = Nl + '=' + Ne; // 'equivalent is';
+ NAG[145] = 'RR'; // 'editorial comment';
+ NAG[146] = 'N'; // 'novelty';
+ NAG[147] = NAG[244] = Nl + 'X' + Ne; // 'weak point';
+ NAG[148] = NAG[245] = Nl + 'Y' + Ne; // 'endgame';
+ NAG[149] = NAG[239] = Nl + ':' + Ne; // 'file';
+ NAG[150] = NAG[240] = Nl + ';' + Ne; // 'diagonal';
+ NAG[151] = NAG[152] = NAG[246] = Nl + '7' + Ne; // 'bishop pair';
+ NAG[153] = NAG[247] = Nl + '8' + Ne; // 'opposite bishops';
+ NAG[154] = NAG[248] = Nl + '9' + Ne; // 'same bishops';
+ NAG[155] = NAG[156] = NAG[193] = NAG[249] = Nl + 'PP' + Ne; // 'connected pawns';
+ NAG[157] = NAG[158] = NAG[192] = NAG[250] = Nl + 'P..P' + Ne; // 'isolated pawns';
+ NAG[159] = NAG[160] = NAG[191] = NAG[251] = Nl + 'Q' + Ne; // 'doubled pawns';
+ NAG[161] = NAG[162] = NAG[252] = Nl + 'R' + Ne; // 'passed pawn';
+ NAG[163] = NAG[164] = NAG[253] = '>'; // 'pawn majority';
+ for (ii = 165; ii <= 189; ii++) { NAG[ii] = ''; }
+ NAG[190] = Nl + '%' + Ne; // 'etc';
+ NAG[194] = ''; // 'hanging pawns';
+ NAG[195] = ''; // 'backward pawns';
+ for (ii = 196; ii <= 200; ii++) { NAG[ii] = ''; }
+ NAG[201] = NAG[220] = NAG[221] = ''; // 'diagram';
+ for (ii = 202; ii <= 219; ii++) { NAG[ii] = ''; }
+ for (ii = 222; ii <= 237; ii++) { NAG[ii] = ''; }
+ NAG[238] = Nl + 'F' + Ne; // 'space advantage';
+ NAG[241] = Nl + 'Z' + Ne; // 'center';
+ NAG[242] = Nl + '>' + Ne; // 'kingside';
+ NAG[243] = Nl + '<' + Ne; // 'queenside';
+ NAG[254] = Nl + '"' + Ne; // 'with';
+ NAG[255] = Nl + '$' + Ne; // 'without';
+
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols.js b/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols.js
new file mode 100644
index 0000000..c338b14
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/chess-informant-NAG-symbols.js
@@ -0,0 +1,93 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+"use strict";
+
+if ((typeof(blockChessInformantNAGSymbols) != "boolean") || (!blockChessInformantNAGSymbols)) {
+
+ if (typeof(ii) == "undefined") { var ii; }
+
+ var jsre = new RegExp("chess-informant-NAG-symbols\.js$", "");
+ var FontPath = detectJavascriptLocation(jsre).replace(jsre, "");
+
+ document.write(' ');
+ document.write('');
+
+ var Ns = '';
+ var Nl = '';
+ var Ne = ' ';
+
+ var basicNAGs = /^([\?!+#\s]|[^<]*<.span>)+(\s|$)/;
+
+ if (typeof(NAGstyle) == "undefined") { var NAGstyle; }
+ NAGstyle = 'informantreader';
+
+ NAG[0] = '';
+ NAG[1] = '!'; // 'good move';
+ NAG[2] = '?'; // 'bad move';
+ NAG[3] = '!!'; // 'very good move';
+ NAG[4] = '??'; // 'very bad move';
+ NAG[5] = '!?'; // 'speculative move';
+ NAG[6] = '?!'; // 'questionable move';
+ NAG[7] = NAG[8] = Ns + 'ì' + Ne; // 'forced move';
+ NAG[9] = '??'; // 'worst move';
+ NAG[10] = NAG[11] = NAG[12] = Ns + '=' + Ne; // 'drawish position';
+ NAG[13] = Ns + 'Õ' + Ne; // 'unclear position';
+ NAG[14] = Ns + '¢' + Ne; // 'White has a slight advantage';
+ NAG[15] = Ns + '£' + Ne; // 'Black has a slight advantage';
+ NAG[16] = Ns + '¥' + Ne; // 'White has a moderate advantage';
+ NAG[17] = Ns + '¤' + Ne; // 'Black has a moderate advantage';
+ NAG[18] = NAG[20] = Ns + '+»' + Ne; // 'White has a decisive advantage';
+ NAG[19] = NAG[21] = Ns + '»+' + Ne; // 'Black has a decisive advantage';
+ NAG[22] = NAG[23] = Ns + 'Â' + Ne; // 'zugzwang';
+ NAG[24] = NAG[25] = NAG[26] = NAG[27] = NAG[28] = NAG[29] = Ns + 'Á' + Ne; // 'space advantage';
+ NAG[30] = NAG[31] = NAG[32] = NAG[33] = NAG[34] = NAG[35] = Ns + '¶' + Ne; // 'time (development) advantage';
+ NAG[36] = NAG[37] = NAG[38] = NAG[39] = Ns + 'î' + Ne; // 'initiative';
+ NAG[40] = NAG[41] = Ns + 'ï' + Ne; // 'attack';
+ NAG[42] = NAG[43] = ''; // 'insufficient compensation for material deficit';
+ NAG[44] = NAG[45] = NAG[46] = NAG[47] = Ns + '§' + Ne; // 'sufficient compensation for material deficit';
+ NAG[48] = NAG[49] = NAG[50] = NAG[51] = NAG[52] = NAG[53] = Ns + '¿' + Ne; // 'center control advantage';
+ for (ii = 54; ii <= 129; ii++) { NAG[ii] = ''; }
+ NAG[130] = NAG[131] = NAG[132] = NAG[133] = NAG[134] = NAG[135] = Ns + '|' + Ne; // 'counterplay';
+ NAG[136] = NAG[137] = NAG[138] = NAG[139] = Ns + '°' + Ne; // 'time control pressure';
+
+ NAG[140] = Nl + 'Å' + Ne; // 'with the idea';
+ NAG[141] = ''; // 'aimed against';
+ NAG[142] = Nl + 'Ä' + Ne; // 'better is';
+ NAG[143] = ''; // 'worse is';
+ NAG[144] = Nl + '=' + Ne; // 'equivalent is';
+ NAG[145] = 'RR'; // 'editorial comment';
+ NAG[146] = 'N'; // 'novelty';
+ NAG[147] = NAG[244] = Nl + '^' + Ne; // 'weak point';
+ NAG[148] = NAG[245] = Nl + 'Ï' + Ne; // 'endgame';
+ NAG[149] = NAG[239] = Nl + ' ˜ ' + Ne; // 'file';
+ NAG[150] = NAG[240] = Nl + '\' + Ne; // 'diagonal';
+ NAG[151] = NAG[152] = NAG[246] = Nl + 'Ò' + Ne; // 'bishop pair';
+ NAG[153] = NAG[247] = Nl + 'Ó' + Ne; // 'opposite bishops';
+ NAG[154] = NAG[248] = Nl + 'Ô' + Ne; // 'same bishops';
+ NAG[155] = NAG[156] = NAG[193] = NAG[249] = Nl + 'Ù' + Ne; // 'connected pawns';
+ NAG[157] = NAG[158] = NAG[192] = NAG[250] = Nl + 'Û' + Ne; // 'isolated pawns';
+ NAG[159] = NAG[160] = NAG[191] = NAG[251] = Nl + 'Ú' + Ne; // 'doubled pawns';
+ NAG[161] = NAG[162] = NAG[252] = Nl + '‹' + Ne; // 'passed pawn';
+ NAG[163] = NAG[164] = NAG[253] = Nl + '›' + Ne; // 'pawn majority';
+ for (ii = 165; ii <= 189; ii++) { NAG[ii] = ''; }
+ NAG[190] = Nl + 'ß' + Ne; // 'etc';
+ NAG[194] = ''; // 'hanging pawns';
+ NAG[195] = ''; // 'backward pawns';
+ for (ii = 196; ii <= 200; ii++) { NAG[ii] = ''; }
+ NAG[201] = NAG[220] = NAG[221] = ''; // 'diagram';
+ for (ii = 202; ii <= 219; ii++) { NAG[ii] = ''; }
+ for (ii = 222; ii <= 237; ii++) { NAG[ii] = ''; }
+ NAG[238] = Nl + 'Á' + Ne; // 'space advantage';
+ NAG[241] = Nl + '¿' + Ne; // 'center';
+ NAG[242] = Nl + '}' + Ne; // 'kingside';
+ NAG[243] = Nl + '{' + Ne; // 'queenside';
+ NAG[254] = Nl + '‘' + Ne; // 'with';
+ NAG[255] = Nl + '_' + Ne; // 'without';
+
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/index.html b/_assets/vendor/pgn4web/fonts/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessInformantReader.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessInformantReader.css
new file mode 100644
index 0000000..084d6af
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessInformantReader.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess symbols font-family setting for the chess NAGs:
+ *
+ * 'pgn4web ChessInformantReader'
+ *
+ * dont try using this font-family directly, instead add the chess informant symbols
+ * support by including fonts/chess-informant-NAG-symbols.js immediately after pgn4web.js
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessInformantReader';
+ src: url('ChessInformantReader.eot');
+ src: url('ChessInformantReader.eot?#iefix') format('embedded-opentype'), url('ChessInformantReader.woff') format('woff'), url('ChessInformantReader.ttf') format('truetype'), url('ChessInformantReader.svg#CReaderTRegular') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessOleFigurin.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessOleFigurin.css
new file mode 100644
index 0000000..bc5df33
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessOleFigurin.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess symbols font-family setting for the chess NAGs:
+ *
+ * 'pgn4web ChessInformantReader'
+ *
+ * dont try using this font-family directly, instead add the chess informant symbols
+ * support by including fonts/chess-informant-NAG-symbols.js immediately after pgn4web.js
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessOleFigurin';
+ src: url('ChessOleFigurin.eot');
+ src: url('ChessOleFigurin.eot?#iefix') format('embedded-opentype'), url('ChessOleFigurin.woff') format('woff'), url('ChessOleFigurin.ttf') format('truetype'), url('ChessOleFigurin.svg#ChessOle!FigurinMedium') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansAlpha.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansAlpha.css
new file mode 100644
index 0000000..d67960e
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansAlpha.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansAlpha'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessSansAlpha';
+ src: url('ChessSansAlpha.eot');
+ src: url('ChessSansAlpha.eot?#iefix') format('embedded-opentype'), url('ChessSansAlpha.woff') format('woff'), url('ChessSansAlpha.ttf') format('truetype'), url('ChessSansAlpha.svg#ChessSansAlpha') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansMerida.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansMerida.css
new file mode 100644
index 0000000..3aecc9a
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansMerida.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansMerida'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessSansMerida';
+ src: url('ChessSansMerida.eot');
+ src: url('ChessSansMerida.eot?#iefix') format('embedded-opentype'), url('ChessSansMerida.woff') format('woff'), url('ChessSansMerida.ttf') format('truetype'), url('ChessSansMerida.svg#ChessSansMerida') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansPiratf.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansPiratf.css
new file mode 100644
index 0000000..0a1645e
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansPiratf.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansPiratf'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessSansPiratf';
+ src: url('ChessSansPiratf.eot');
+ src: url('ChessSansPiratf.eot?#iefix') format('embedded-opentype'), url('ChessSansPiratf.woff') format('woff'), url('ChessSansPiratf.ttf') format('truetype'), url('ChessSansPiratf.svg#ChessSansPiratf') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUscf.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUscf.css
new file mode 100644
index 0000000..a0c9400
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUscf.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansUscf'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessSansUscf';
+ src: url('ChessSansUscf.eot');
+ src: url('ChessSansUscf.eot?#iefix') format('embedded-opentype'), url('ChessSansUscf.woff') format('woff'), url('ChessSansUscf.ttf') format('truetype'), url('ChessSansUscf.svg#ChessSansUscf') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUsual.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUsual.css
new file mode 100644
index 0000000..70d7868
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-ChessSansUsual.css
@@ -0,0 +1,21 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansUsual'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ */
+
+@font-face {
+ font-family: 'pgn4web ChessSansUsual';
+ src: url('ChessSansUsual.eot');
+ src: url('ChessSansUsual.eot?#iefix') format('embedded-opentype'), url('ChessSansUsual.woff') format('woff'), url('ChessSansUsual.ttf') format('truetype'), url('ChessSansUsual.svg#ChessSansUsual') format('svg');
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-font-LiberationSans.css b/_assets/vendor/pgn4web/fonts/pgn4web-font-LiberationSans.css
new file mode 100644
index 0000000..0e2048a
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-font-LiberationSans.css
@@ -0,0 +1,26 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * The standard LiberationSans font is supplied to allow for consistent display of
+ * header and text with the moves, when chess moves are displayed using a supplied
+ * figurine font.
+ */
+
+@font-face {
+ font-family: 'pgn4web Liberation Sans';
+ src: url('LiberationSans-Regular.eot');
+ src: url('LiberationSans-Regular.eot?#iefix') format('embedded-opentype'), url('LiberationSans-Regular.woff') format('woff'), url('LiberationSans-Regular.ttf') format('truetype'), url('LiberationSans-Regular.svg#LiberationSans') format('svg');
+ font-weight: normal;
+}
+
+@font-face {
+ font-family: 'pgn4web Liberation Sans';
+ src: url('LiberationSans-Bold.eot');
+ src: url('LiberationSans-Bold.eot?#iefix') format('embedded-opentype'), url('LiberationSans-Bold.woff') format('woff'), url('LiberationSans-Bold.ttf') format('truetype'), url('LiberationSans-Bold.svg#LiberationSans-Bold') format('svg');
+ font-weight: bold;
+}
+
diff --git a/_assets/vendor/pgn4web/fonts/pgn4web-fonts.css b/_assets/vendor/pgn4web/fonts/pgn4web-fonts.css
new file mode 100644
index 0000000..4fd565a
--- /dev/null
+++ b/_assets/vendor/pgn4web/fonts/pgn4web-fonts.css
@@ -0,0 +1,28 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ *
+ * allows using the following chess figurine font-family setting for the chess moves:
+ *
+ * 'pgn4web ChessSansAlpha'
+ * 'pgn4web ChessSansMerida'
+ * 'pgn4web ChessSansPiratf'
+ * 'pgn4web ChessSansUscf'
+ * 'pgn4web ChessSansUsual'
+ *
+ * make sure you include this CSS file into your HTML file or your CSS file, then set
+ * the font-family for the .move class to the chess font of your choice.
+ * The standard LiberationSans font is also supplied to allow for consistent display
+ * of header and text with the moves.
+ */
+
+@import url("pgn4web-font-ChessSansAlpha.css");
+@import url("pgn4web-font-ChessSansMerida.css");
+@import url("pgn4web-font-ChessSansPiratf.css");
+@import url("pgn4web-font-ChessSansUscf.css");
+@import url("pgn4web-font-ChessSansUsual.css");
+@import url("pgn4web-font-LiberationSans.css");
+
diff --git a/_assets/vendor/pgn4web/gotd.pgn b/_assets/vendor/pgn4web/gotd.pgn
new file mode 100644
index 0000000..682cfca
--- /dev/null
+++ b/_assets/vendor/pgn4web/gotd.pgn
@@ -0,0 +1,1992 @@
+[White "Tal"]
+[Black "Petrosian"]
+[Result "0-1"]
+
+1. e4 c6 2. d4 d5 3. Nc3 dxe4 4. Nxe4 Nd7 5. Bc4 Ngf6 6. Ng5 e6 7. Qe2 Nb6
+8. Bb3 a5 9. a4 h6 10. N5f3 c5 11. Bf4 Bd6 12. Be5 O-O 13. O-O-O c4 14.
+Bxc4 Nxa4 15. Nh3 Nb6 16. g4 a4 17. g5 hxg5 18. Nhxg5 a3 19. b3 Bb4 20.
+Rdg1 a2 21. Kb2 Nxc4+ 22. Qxc4 Nd5 23. Ne4 f6 24. Bf4 Ba3+ 25. Ka1 Nxf4 26.
+h4 Rf7 27. Rg4 Qa5 0-1
+
+[White "Stahlberg"]
+[Black "Taimanov"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. g3 Ba6 5. Qa4 Be7 6. Bg2 O-O 7. Nc3 c6 8.
+Ne5 Qe8 9. O-O d5 10. Re1 b5 11. cxb5 cxb5 12. Qd1 b4 13. Nb1 Nc6 14. Nxc6
+Qxc6 15. Nd2 Qb6 16. e3 Rac8 17. Bf1 Rc6 18. Bxa6 Qxa6 19. Nf3 Rfc8 20. Qb3
+Ne4 21. Nd2 Rc2 22. Nxe4 dxe4 23. a3 h5 24. d5 R8c4 25. Rd1 exd5 26. Bd2
+Qf6 27. Rab1 h4 28. Qa4 Qf5 29. Qxa7 Bf8 30. Qb8 g5 31. gxh4 gxh4 32. Qf4
+Qxf4 33. exf4 d4 34. b3 Rc6 35. axb4 f5 36. h3 Ra6 37. Rbc1 Rxc1 38. Rxc1
+Ra2 39. Be1 Rb2 40. Kg2 Rxb3 41. Rc8 Rb1 42. Bd2 e3 0-1
+
+[White "Euwe"]
+[Black "Smyslov"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. Qb3 dxc4 6. Qxc4 O-O 7. e4 Bg4
+8. Be3 Nfd7 9. Qb3 Nb6 10. a4 a5 11. d5 Bxf3 12. gxf3 Qd6 13. Nb5 Qb4+ 14.
+Qxb4 axb4 15. Nxc7 Rxa4 16. Rb1 N6d7 17. Nb5 Rc8 18. Be2 b3 19. Na3 Bxb2
+20. Rxb2 Rxa3 21. Kd2 Na6 22. Rhb1 Nac5 23. Bd4 e5 24. dxe6 Nxe6 25. Be3
+Ndc5 26. Bxc5 Nxc5 27. Kc3 Ra4 28. Kd2 Kg7 29. Ke3 Rd8 30. Rc1 b6 31. Bc4
+Rda8 32. Bd5 Ra2 33. Rcb1 R8a4 34. Kd2 Rd4+ 35. Ke2 Na4 36. Rxa2 bxa2 37.
+Ra1 Nc3+ 38. Ke3 Rd1 0-1
+
+[White "Karpov"]
+[Black "Grigorian"]
+[Result "1/2-1/2"]
+
+1. Nf3 c5 2. c4 Nf6 3. Nc3 d5 4. cxd5 Nxd5 5. d4 e6 6. e4 Nxc3 7. bxc3 cxd4
+8. cxd4 Nc6 9. Bc4 Bb4+ 10. Bd2 Qa5 11. d5 Bxd2+ 12. Nxd2 Ne7 13. O-O exd5
+14. exd5 O-O 15. Re1 Nf5 16. Bb3 Nd6 17. Ne4 Qb4 18. Qf3 Re8 19. a3 Qa5 20.
+Re3 Nxe4 21. Rxe4 Rxe4 22. Qxe4 Bd7 23. h3 Qc3 24. Qb1 Qc5 25. Bc2 Qxd5 26.
+Bxh7+ Kh8 27. Be4 Qd4 28. Ra2 Re8 29. Bxb7 Rb8 30. Qe4 Qd1+ 31. Kh2 Be6 32.
+Rb2 Qd6+ 33. g3 Qxa3 34. Qe5 Rd8 35. Be4 Kg8 36. Rb8 Qe7 37. h4 a5 38. Qh5
+f5 39. Rxd8+ Qxd8 40. Bxf5 Bxf5 41. Qxf5 a4 42. Qc2 Qa5 1/2-1/2
+
+[White "Rashkovsky"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 c5 4. g3 cxd4 5. Nxd4 d5 6. Bg2 e5 7. Nf3 d4 8.
+O-O Nc6 9. e3 Be7 10. exd4 exd4 11. Bf4 O-O 12. Ne5 Qb6 13. Qb3 Qxb3 14.
+axb3 Bd7 15. Rd1 Rfd8 16. Na3 Nh5 17. Nxd7 Bxa3 18. Rxa3 Nxf4 19. Bxc6 bxc6
+20. Ne5 Ne6 21. Nxc6 Rd7 22. b4 Rc8 23. b5 Nd8 24. Rxa7 Rxa7 25. Nxa7 Rxc4
+26. b3 Rc7 27. Rxd4 Ne6 28. b6 Rb7 29. Rb4 Nd8 30. Rc4 Kf8 31. Rc8 Ke7 32.
+Nc6+ 1-0
+
+[White "Smyslov"]
+[Black "Bronstein"]
+[Result "1/2-1/2"]
+
+1. c4 Nf6 2. g3 c6 3. Nf3 d5 4. b3 Bf5 5. Bg2 e6 6. O-O Nbd7 7. Bb2 Be7 8.
+Nc3 O-O 9. Nh4 Bg4 10. h3 Bh5 11. g4 d4 12. Nb1 Bxg4 13. hxg4 Nxg4 14. e4
+Nxf2 15. Rxf2 Bxh4 16. Rf3 Ne5 17. Rh3 Bg5 18. Na3 Ng6 19. Nc2 Nf4 20. Rh2
+d3 21. Ne3 Ne2+ 22. Kh1 f5 23. exf5 exf5 24. Bf3 Ng3+ 25. Kg1 Bf6 26. Bxf6
+Qxf6 27. Qe1 f4 28. Ng4 Qd4+ 29. Kg2 Rae8 30. Qg1 Qb2 31. Qc1 Qd4 32. Qc3
+Qd6 33. c5 Qg6 34. Qc4+ Kh8 35. Rh3 h5 36. Kh2 Qh7 37. Nf2 g5 38. Qd4+ Kg8
+39. Qc4+ Kh8 40. Qd4+ Kg8 1/2-1/2
+
+[White "Kuzmin"]
+[Black "Averkin"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e6 5. Nc3 Qc7 6. g3 a6 7. Bg2 Nf6 8.
+O-O Bc5 9. Nxc6 dxc6 10. Na4 Ba7 11. c4 b5 12. e5 Nd7 13. cxb5 axb5 14. Nc3
+Ba6 15. Ne4 O-O 16. Bf4 Nxe5 17. Qc2 f6 18. Nc5 Bc8 19. b4 Rd8 20. Rad1
+Bxc5 21. Bxe5 Bd6 22. Bxd6 Rxd6 23. Rxd6 Qxd6 24. Rd1 Qe7 25. Bxc6 Rb8 26.
+Bxb5 Bb7 27. Qc5 Qxc5 28. bxc5 Bf3 29. Rb1 Kf8 30. a4 g5 31. Kf1 Ke7 32.
+Ke1 Rd8 33. a5 f5 34. Rc1 Rb8 35. Bd3 Kd8 36. Kd2 Rb3 37. Bc4 Rb2+ 38. Rc2
+Rxc2+ 39. Kxc2 e5 40. Kc3 Kc7 41. Bd3 e4 42. Bc4 f4 43. gxf4 gxf4 44. Bd5
+1-0
+
+[White "Geller"]
+[Black "Keres"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 d5 4. Nf3 c5 5. cxd5 cxd4 6. Qxd4 exd5 7. e4 Nc6
+8. Bb5 Nxe4 9. O-O Nf6 10. Re1+ Be7 11. Qe5 O-O 12. Qe2 Re8 13. Bg5 Bg4 14.
+Rad1 h6 15. Bh4 Ne4 16. Bg3 Nxc3 17. bxc3 Bf6 18. Qxe8+ Qxe8 19. Rxe8+ Rxe8
+20. Rxd5 Rc8 21. Rd3 Nb4 22. Re3 Nxa2 23. h3 Bxf3 24. gxf3 Nxc3 25. Bd7 Rd8
+26. Bf5 g6 27. Bd3 Nd1 0-1
+
+[White "Keres"]
+[Black "Smyslov"]
+[Result "1-0"]
+
+1. c4 Nf6 2. Nf3 c6 3. Nc3 d5 4. e3 g6 5. d4 Bg7 6. cxd5 Nxd5 7. Bc4 O-O 8.
+O-O b6 9. Qb3 Nxc3 10. bxc3 Ba6 11. Ba3 Bxc4 12. Qxc4 Re8 13. e4 b5 14. Qb3
+Nd7 15. c4 Rb8 16. Rad1 Qa5 17. c5 b4 18. Bb2 e5 19. Ng5 Re7 20. f4 exd4
+21. f5 Nxc5 22. Qh3 h5 23. f6 Bh6 24. fxe7 Bxg5 25. Qf3 f6 26. Bxd4 Nd7 27.
+h4 1-0
+
+[White "Boleslavsky"]
+[Black "Euwe"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Be2 e5 7. Nb3 Be7
+8. O-O O-O 9. Be3 Be6 10. Bf3 Na5 11. Nxa5 Qxa5 12. Qd2 Rfc8 13. Rfd1 Qb4
+14. Rab1 h6 15. a3 Qc4 16. Rbc1 a6 17. Be2 Qc7 18. f3 Nd7 19. Bf1 b5 20. a4
+b4 21. Nd5 Bxd5 22. Qxd5 Nc5 23. b3 Bg5 24. Bxg5 hxg5 25. Kh1 a5 26. h3
+Rab8 27. Bb5 Rd8 28. c3 bxc3 29. Rxc3 Qe7 30. Qc4 g6 31. b4 axb4 32. Qxb4
+Kg7 33. Qc4 Qa7 34. Rc2 Ne6 35. Qc3 Nd4 36. Rb2 Rdc8 37. Qd2 Kf6 38. Rc1
+Rxc1+ 39. Qxc1 Qc5 40. Qd2 Rc8 41. Kh2 Qa3 1/2-1/2
+
+[White "Beliavsky"]
+[Black "Tal"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. a4 Nc6 7. Be2 e5 8.
+Nb3 Be7 9. O-O O-O 10. f4 Nb4 11. Kh1 Be6 12. f5 Bd7 13. Bg5 Bc6 14. Bxf6
+Bxf6 15. Bc4 Rc8 16. Qe2 Qc7 17. Rfd1 Rfd8 18. Nd2 Nxc2 19. Rac1 Nd4 20.
+Qg4 Qe7 21. Nf3 b5 22. axb5 axb5 23. Nd5 Bxd5 24. Bxd5 Nc2 25. h4 Ne3 26.
+Qh5 Rxc1 27. Rxc1 Nxd5 28. exd5 e4 29. Re1 Re8 30. Qg4 Bxb2 31. Re3 h6 32.
+Nd2 Qa7 33. Rxe4 Qa1+ 34. Kh2 Rxe4 35. Nxe4 Be5+ 36. g3 Qa2+ 37. Kh3 Qxd5
+38. Qf3 Kf8 39. Qe3 Bd4 40. Qf4 Qe5 41. Qf3 d5 42. Nd2 b4 43. Nb3 Bc3 0-1
+
+[White "Taimanov"]
+[Black "Geller"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 O-O 5. Nf3 d6 6. Be2 e5 7. O-O Nbd7 8.
+Re1 c6 9. Bf1 Re8 10. d5 c5 11. g3 Nf8 12. a3 Ng4 13. Nh4 a6 14. Bd2 h5 15.
+h3 Nf6 16. b4 b6 17. bxc5 bxc5 18. Rb1 N6d7 19. Qa4 Bf6 20. Nf3 h4 21. Nd1
+hxg3 22. fxg3 Nb8 23. Re3 Nh7 24. Reb3 Bd7 25. Qa5 Qc8 26. Nf2 Bd8 27. Qc3
+Ba4 28. R3b2 Nd7 29. h4 Ra7 30. Bh3 Qc7 31. Ng5 Nxg5 32. Bxg5 Bxg5 33. hxg5
+Kg7 34. Qf3 Qd8 35. Rb7 Rxb7 36. Rxb7 Kg8 37. Bxd7 Bxd7 38. Ng4 Qxg5 39.
+Rxd7 f5 40. exf5 Rb8 1-0
+
+[White "Tukmakov"]
+[Black "Smyslov"]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
+c3 d6 9. h3 Na5 10. Bc2 c5 11. d4 Qc7 12. Nbd2 Re8 13. Nf1 g6 14. Ne3 Bf8
+15. b4 cxb4 16. cxb4 Nc6 17. Bb2 Bb7 18. Rc1 Qb6 19. Bb3 Bg7 20. Ng5 Nd8
+21. dxe5 dxe5 22. Nd5 Bxd5 23. exd5 Qd6 24. Ne6 fxe6 25. Bxe5 Qxb4 26. dxe6
+Nxe6 27. Bd6 Qh4 28. Rxe6 Rxe6 29. Bxe6+ Kh8 30. Qf3 Rd8 31. Be5 Nh5 32.
+Bxg7+ Nxg7 33. Bc8 a5 34. Rc6 Qe7 35. g3 b4 36. Qf4 Rf8 37. Qd4 1/2-1/2
+
+[White "Boleslavsky"]
+[Black "Keres"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
+c3 d6 9. h3 Na5 10. Bc2 c5 11. d4 Qc7 12. Nbd2 Rd8 13. Nf1 d5 14. exd5 exd4
+15. cxd4 Nxd5 16. Qe2 Bb7 17. Ng3 cxd4 18. Nxd4 g6 19. Bh6 Bf6 20. Nb3 Nc4
+21. Ne4 Bxb2 22. Nbc5 Bxa1 23. Rxa1 f5 24. Nxb7 Qxb7 25. Nc5 Qc6 26. Nd3
+Nc3 27. Qe1 Qf6 28. f4 Ne4 29. Kh2 Qc3 30. Qb1 Ncd2 31. Qc1 Rxd3 32. Bxd3
+Qxd3 33. Qc7 Nf3+ 0-1
+
+[White "Najdorf"]
+[Black "Euwe"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 b6 6. Nf3 Bb7 7. O-O O-O 8.
+Na4 cxd4 9. exd4 Qc7 10. a3 Be7 11. Nc3 d5 12. cxd5 Nxd5 13. Nxd5 Bxd5 14.
+Ne5 Qb7 15. Re1 Nc6 16. Qh5 f5 17. Nxc6 Qxc6 18. Bf4 Bf6 19. Rac1 Qa4 20.
+Be5 Bxe5 21. dxe5 Rac8 22. Qe2 Qf4 23. Qe3 Qxe3 24. fxe3 Rfd8 25. Ba6 Rxc1
+26. Rxc1 Be4 27. Bc8 Rd2 28. Bxe6+ Kf8 29. Rc7 Rxg2+ 30. Kf1 Rxb2 31. Rf7+
+Ke8 32. Rxa7 Rb1+ 33. Kf2 Rb2+ 34. Kf1 Rb1+ 35. Ke2 Rb2+ 36. Ke1 Rb1+ 37.
+Kd2 Rb2+ 38. Kc3 Rc2+ 39. Kd4 Rd2+ 40. Kc4 Rc2+ 41. Kd4 1/2-1/2
+
+[White "Najdorf"]
+[Black "Petrosian"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 d6 3. Nf3 g6 4. g3 Bg7 5. Bg2 O-O 6. O-O Nc6 7. Nc3 Bg4 8.
+h3 Bxf3 9. Bxf3 Nd7 10. Bg2 Nxd4 11. Bxb7 Rb8 12. Bg2 c5 13. e3 Ne6 14. Qc2
+a5 15. Bd2 Ne5 16. b3 Qd7 17. Kh2 Nc6 18. Rad1 Ned8 19. Be1 Kh8 20. Na4 Qc8
+21. Bc3 Bxc3 22. Nxc3 Qf5 23. Qxf5 gxf5 24. Rd5 Ne6 25. Rxf5 Nb4 26. Rh5
+Ng7 27. Rh4 Nf5 28. Rf4 e6 29. Rd1 Rb6 30. Na4 Rbb8 31. Be4 Ng7 32. Rxd6
+Nxa2 33. Nxc5 1-0
+
+[White "Euwe"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 c5 5. dxc5 O-O 6. Bf4 Bxc5 7. e3 Nc6
+8. Nf3 d5 9. a3 Qe7 10. Bg5 Rd8 11. Rd1 dxc4 12. Rxd8+ Qxd8 13. Bxc4 Be7
+14. O-O Bd7 15. Rd1 Qe8 16. Bxf6 Bxf6 17. Ne4 Be7 18. Nfg5 h6 19. Nd6 Bxd6
+20. Qh7+ Kf8 21. Rxd6 hxg5 22. Rxd7 Qxd7 23. Qh8+ Ke7 24. Qxa8 Qd1+ 25. Bf1
+Qb3 26. h3 Qxb2 27. a4 Qb6 28. Qh8 Kf6 29. h4 Qc5 30. h5 g4 31. h6 Qg5 32.
+h7 g3 33. Qg8 gxf2+ 34. Kxf2 Ne7 35. h8=Q Nxg8 36. Qxg8 Qh4+ 1/2-1/2
+
+[White "Karpov"]
+[Black "Kuzmin"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. f4 Qc7 7. a4 g6 8.
+Nf3 Bg4 9. Bd3 Nc6 10. h3 Bxf3 11. Qxf3 Bg7 12. O-O O-O 13. Bd2 e6 14. Ne2
+Rac8 15. Kh1 e5 16. Nc3 exf4 17. Bxf4 Nb4 18. Bd2 Nd7 19. Qg3 Qc6 20. Bg5
+Rce8 21. Rad1 Ne5 22. Qh4 Nexd3 23. cxd3 Qd7 24. Bf6 a5 25. d4 Re6 26. e5
+d5 27. Bxg7 Kxg7 28. Rf6 h6 29. Rdf1 Rxf6 30. Rxf6 Re8 31. Ne2 Nc6 32. Rd6
+Qf5 33. Ng3 Qd3 34. Rxd5 Re6 35. Qf4 Re7 36. Kh2 Kg8 37. Qxh6 Qc4 38. Ne4
+1-0
+
+[White "Gligoric"]
+[Black "Averbakh"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bg5 e6 7. Qd2 a6 8.
+O-O-O Bd7 9. f4 h6 10. Bh4 Nxe4 11. Qe1 Nf6 12. Nf5 Qa5 13. Nxd6+ Bxd6 14.
+Rxd6 O-O-O 15. Qd2 Ne7 16. Bd3 Bc6 17. Rxd8+ Rxd8 18. Rd1 Qh5 19. g3 Nf5
+20. Bxf6 gxf6 21. Qf2 Nd4 22. Be4 Qc5 23. Kb1 f5 24. Bxc6 Qxc6 25. a3 Qf3
+26. Qg1 Nc6 27. Rxd8+ Kxd8 28. Kc1 Kc7 29. Kd2 h5 30. Qe3 Qxe3+ 31. Kxe3
+Kd6 32. Nd1 f6 33. Kd3 Ne7 34. c4 h4 35. b4 hxg3 36. hxg3 b6 37. Ne3 Nc6
+38. Nc2 a5 39. Kc3 axb4+ 40. axb4 Nb8 41. Nd4 Na6 42. Kb3 Nc7 1/2-1/2
+
+[White "Spassky"]
+[Black "Sveshnikov"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 e6 6. Ndb5 d6 7. Bf4 e5
+8. Bg5 a6 9. Na3 b5 10. Bxf6 gxf6 11. Nd5 f5 12. Bd3 Be6 13. Qh5 Bg7 14.
+O-O h6 15. c3 O-O 16. Nc2 fxe4 17. Bxe4 f5 18. Nf4 Bd7 19. Bd5+ Kh7 20.
+Qg6+ Kh8 21. Nh5 Qe7 22. Nb4 Nxb4 23. Bxa8 Rg8 24. cxb4 1-0
+
+[White "Petrosian"]
+[Black "Keres"]
+[Result "1/2-1/2"]
+
+1. c4 c5 2. Nf3 Nf6 3. d4 cxd4 4. Nxd4 e6 5. g3 d5 6. Bg2 e5 7. Nc2 d4 8.
+O-O Nc6 9. Nd2 Bg4 10. Nf3 a5 11. Bg5 Bc5 12. e4 h6 13. Bxf6 Qxf6 14. Nce1
+Qe6 15. Nd3 Be7 16. h3 Bxf3 17. Qxf3 Qxc4 18. Rfc1 Qe6 19. Qf5 Bd6 20.
+Qxe6+ fxe6 21. a3 Kd7 22. Bf1 a4 23. Ne1 Ra5 24. Rc2 Rc8 25. Rac1 Na7 26.
+Rxc8 Nxc8 27. Bc4 Be7 28. Nd3 Nd6 29. f3 Nxc4 30. Rxc4 Bd6 31. Kf2 Ra6 32.
+Ke2 g5 33. Kd1 Ra8 34. Ke2 h5 35. Rc1 Rh8 36. Rh1 h4 37. g4 b5 38. Rc1 Rb8
+39. Kd1 Rb6 40. Rc2 Rb8 41. Rc1 Rc8 1/2-1/2
+
+[White "Sveshnikov"]
+[Black "Korchnoi"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. d4 exd4 4. Nxd4 Bc5 5. Be3 Qf6 6. c3 Nge7 7. Nc2
+Bxe3 8. Nxe3 Qe5 9. Nd2 d5 10. exd5 Nxd5 11. Nc4 Nxe3 12. Nxe3 Be6 13. Qa4
+O-O 14. Bc4 Rad8 15. O-O Qe4 16. Bb5 Qxa4 17. Bxa4 Ne5 18. Bc2 Nc4 19. Rfd1
+Nxe3 20. fxe3 g6 21. a3 Kg7 22. Rd4 c5 23. Rxd8 Rxd8 24. Rd1 Rb8 25. Be4
+Kf6 26. Kf2 Ke5 27. Bf3 b5 28. Rd2 b4 29. cxb4 cxb4 30. Rd4 bxa3 31. bxa3
+Rb5 32. Rd3 Rb2+ 33. Kg3 Ra2 34. h3 Kf6 35. Kf4 g5+ 36. Kg3 a5 37. h4 gxh4+
+38. Kxh4 a4 39. Bd1 Rxg2 40. Rd6 Ke5 41. Rd4 Bb3 42. Bxb3 axb3 43. Rb4 Rb2
+44. a4 Rb1 0-1
+
+[White "Geller"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 d6 7. c3 O-O 8.
+d4 Nd7 9. Be3 Bf6 10. Nbd2 Re8 11. d5 Ne7 12. b4 g6 13. c4 c6 14. Rc1 Bg7
+15. c5 dxc5 16. bxc5 cxd5 17. exd5 Nxd5 18. Bg5 Ne7 19. Ne4 h6 20. Nd6 hxg5
+21. Nxf7 Qa5 22. N7xg5 Rf8 23. Bxd7 Qxa2 24. Re2 Qa3 25. Re3 Qb4 26. Bxc8
+Raxc8 27. Qd7 Nf5 28. Qe6+ Kh8 29. Qxg6 1-0
+
+[White "Taimanov"]
+[Black "Petrosian"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 O-O 6. Nf3 d5 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 b6 10. cxd5 exd5 11. Ne5 Qc7 12. Nxc6 Qxc6 13. f3 Be6 14.
+Qe1 Nd7 15. e4 c4 16. Bc2 f5 17. e5 Rf7 18. a4 a5 19. f4 b5 20. axb5 Qxb5
+21. Ba3 Nb6 22. Qh4 Qe8 23. Rf3 Nc8 24. Ba4 Rd7 25. Rb1 Qd8 26. Bxd7 Qxd7
+27. Rg3 Na7 28. Be7 Bf7 29. Qg5 Bg6 30. h4 Nc6 31. Ba3 Nd8 32. h5 Ne6 33.
+Qh4 Bf7 34. h6 g6 35. Qf6 Qd8 36. Be7 Qc7 37. Rxg6+ hxg6 38. h7+ Kxh7 39.
+Qxf7+ Ng7 40. Kf2 1-0
+
+[White "Karpov"]
+[Black "Polugaevsky"]
+[Result "1/2-1/2"]
+
+1. d4 d5 2. c4 c6 3. Nf3 Nf6 4. Nc3 e6 5. e3 Nbd7 6. Bd3 dxc4 7. Bxc4 b5 8.
+Bd3 Bb7 9. e4 b4 10. Na4 c5 11. e5 Nd5 12. dxc5 Nxc5 13. Nxc5 Bxc5 14. O-O
+h6 15. Qe2 Qb6 16. Bd2 Kf8 17. Rac1 Rd8 18. Rc2 g6 19. Rfc1 Be7 20. Bc4 Rc8
+21. Bxd5 Rxc2 22. Rxc2 Bxd5 23. Rc8+ Kg7 24. Rxh8 Kxh8 25. Bxh6 Qc7 26. b3
+Qc3 27. h4 a5 28. Bg5 Bxf3 29. Qxf3 Bxg5 30. hxg5 Qe1+ 31. Kh2 Qxe5+ 32.
+Qg3 Qb2 33. Qb8+ Kg7 34. f4 Qxa2 35. Qe5+ 1/2-1/2
+
+[White "Geller"]
+[Black "Boleslavsky"]
+[Result "0-1"]
+
+1. d4 e6 2. Nf3 Nf6 3. c4 b6 4. Nc3 Bb7 5. Bg5 h6 6. Bxf6 Qxf6 7. e4 Bb4 8.
+Bd3 c5 9. O-O cxd4 10. Nb5 Qd8 11. Nbxd4 O-O 12. Qe2 Nc6 13. Rad1 Nxd4 14.
+Nxd4 Bc5 15. Bc2 Rc8 16. e5 Qg5 17. f4 Qe7 18. Kh1 f5 19. Nb5 a6 20. Nd6
+Bxd6 21. Rxd6 Rc6 22. Rfd1 Rxd6 23. Rxd6 Bc6 24. b4 Qh4 25. Rd4 g5 26. Kg1
+gxf4 27. Qf2 Qe7 28. a3 Qg7 29. Rxf4 Qxe5 30. Rd4 Rf7 31. Bd3 f4 32. Bf1
+Qf6 33. Rd2 b5 34. c5 Qa1 35. Qh4 Qf6 36. Qxf6 Rxf6 37. Kf2 e5 38. g3 fxg3+
+39. Ke1 Rf3 40. hxg3 Rxg3 41. Rd6 Kg7 42. Bd3 e4 43. Be2 Rxa3 44. Bg4 Rd3
+0-1
+
+[White "Gligoric"]
+[Black "Petrosian"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 c5 3. d5 e6 4. Nc3 exd5 5. cxd5 d6 6. Nf3 g6 7. Nd2 Nbd7 8.
+g3 Bg7 9. Bg2 O-O 10. O-O Qe7 11. Nc4 Ne5 12. Nxe5 Qxe5 13. a4 a6 14. a5
+Re8 15. Bf4 Qe7 16. Qb3 Nd7 17. Rfe1 Ne5 18. Na4 Bd7 19. Nb6 Rab8 20. Bd2
+Bb5 21. Bc3 c4 22. Qc2 f5 23. h3 Qc7 24. f4 Nd7 25. Nxd7 Bxd7 26. Bxg7 Kxg7
+27. Qc3+ Kg8 28. Kh2 Qc5 29. e3 b5 30. axb6 Rxb6 31. Ra5 Qb4 32. Re2 Qxc3
+33. bxc3 Kf8 34. Kg1 Rb1+ 35. Kf2 Bb5 36. g4 Rc1 37. Ra3 Kf7 38. Bf3 Re7
+39. h4 Rd1 40. g5 Rd3 41. h5 gxh5 1/2-1/2
+
+[White "Euwe"]
+[Black "Reshevsky"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 Nc6 5. Nf3 d6 6. Bd2 O-O 7. a3 Bxc3 8.
+Bxc3 a5 9. e3 Qe7 10. Bd3 e5 11. dxe5 dxe5 12. O-O Re8 13. Bf5 Bxf5 14.
+Qxf5 Qe6 15. Qxe6 Rxe6 16. b4 Ne4 17. Bb2 f6 18. b5 Ne7 19. Rfd1 Rd6 20.
+Kf1 Nc8 21. Rdc1 c5 22. Bc3 Nxc3 23. Rxc3 e4 24. Ng1 Nb6 25. Ne2 f5 26. Ke1
+Rad8 27. Rc2 Kf7 28. Ng3 Ke6 29. Nf1 Rd3 30. Ng3 g5 31. Ne2 Na4 32. Ng3 Ke5
+33. Nf1 h5 34. f3 Rb3 35. fxe4 fxe4 36. Rf2 Nb2 37. Rc2 Nd3+ 38. Ke2 Rf8
+39. Nd2 Rf2+ 40. Kd1 Rb2 41. Rxb2 Nxb2+ 42. Kc1 Rxg2 0-1
+
+[White "Najdorf"]
+[Black "Averbakh"]
+[Result "0-1"]
+
+1. c4 Nf6 2. Nf3 e6 3. g3 b6 4. Bg2 Bb7 5. O-O Be7 6. d4 O-O 7. Nc3 Ne4 8.
+Qc2 Nxc3 9. bxc3 Nc6 10. Ne5 Na5 11. Bxb7 Nxb7 12. Qa4 d6 13. Nd3 Na5 14.
+c5 Qe8 15. Qxe8 Rfxe8 16. Rb1 Rec8 17. h4 d5 18. Bf4 f6 19. Nb4 a6 20. cxb6
+cxb6 21. Bd2 Nc4 22. Be1 Bxb4 23. cxb4 Na3 24. Rb3 Nb5 25. e3 Rc2 26. a4
+Nd6 27. a5 b5 28. Rc3 Rc8 29. Rxc8+ Nxc8 30. f3 Ne7 31. Bf2 Kf7 32. Rb1 Nf5
+33. Kf1 Nd6 34. Rb3 Nc4 35. Kg2 f5 36. Rb1 Nxe3+ 37. Kg1 f4 38. gxf4 Nf5
+39. Kf1 g6 40. Rb3 Ke7 41. Rb1 Kd7 0-1
+
+[White "Euwe"]
+[Black "Reshevsky"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 O-O 6. a3 Bxc3+ 7. bxc3 b6 8.
+Ne2 Bb7 9. O-O d6 10. Qc2 d5 11. cxd5 Qxd5 12. Nf4 Qc6 13. c4 cxd4 14. exd4
+Nbd7 15. Bb2 Rfe8 16. Rfe1 Rac8 17. Rac1 Nf8 18. Bf1 Ng6 19. Nxg6 hxg6 20.
+Re3 Red8 21. Qe2 Qd6 22. Rh3 Qf4 23. Rd1 Ba6 24. Rf3 Qe4 25. Re3 Qg4 26. f3
+Qf4 27. g3 Qh6 28. Rc3 Qg5 29. Qf2 Rd7 30. Rdc1 Rdc7 31. R1c2 Qa5 32. Bc1
+Nd5 33. cxd5 Rxc3 34. Rxc3 Qxc3 35. Bb2 Qb3 36. Bxa6 Rc2 37. d6 Rxf2 38. d7
+Qd5 39. Kxf2 0-1
+
+[White "Najdorf"]
+[Black "Geller"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. Nf3 d6 6. O-O Nc6 7. Nc3 Bg4 8.
+h3 Bxf3 9. Bxf3 Nd7 10. Bg2 Nxd4 11. Bxb7 Rb8 12. Bg2 Rb4 13. e3 Ne6 14.
+Qe2 Ne5 15. f4 Nd7 16. Nd5 Rb8 17. Qc2 c6 18. Nc3 Qc7 19. Rb1 a5 20. Bd2
+Nec5 21. Ne2 Qb6 22. Kh2 Rfc8 23. Bc3 Bxc3 24. Nxc3 Qa6 25. b3 Rb6 26. Ne4
+Nxe4 27. Qxe4 Re8 28. f5 Ne5 29. f6 Qa7 30. Rbd1 Rb4 31. Qd4 c5 32. Qh4 a4
+33. Rxd6 axb3 34. axb3 Rxb3 35. fxe7 Qxe7 36. Qxe7 Rxe7 37. Bd5 Rxe3 38.
+Rd8+ Kg7 39. Rc8 Nd3 40. Ra8 Re2+ 41. Kg1 Rd2 42. Raa1 Nb4 0-1
+
+[White "Gligoric"]
+[Black "Smyslov"]
+[Result "0-1"]
+
+1. c4 Nf6 2. Nc3 e6 3. Nf3 c5 4. g3 b6 5. Bg2 Bb7 6. O-O Be7 7. d4 cxd4 8.
+Qxd4 O-O 9. Rd1 Nc6 10. Qf4 Qb8 11. Qxb8 Raxb8 12. Bf4 Rbc8 13. Bd6 Bxd6
+14. Rxd6 Ne7 15. Ne5 Bxg2 16. Kxg2 Nf5 17. Rd2 d6 18. e4 Nxg3 19. hxg3 dxe5
+20. b3 Rfd8 21. Rad1 Rxd2 22. Rxd2 Kf8 23. f3 Ke7 24. Kf2 h5 25. Ke3 g5 26.
+Rh2 Rd8 27. Rh1 g4 28. fxg4 Nxg4+ 29. Ke2 Nf6 30. Ke3 Rd4 31. Rf1 Ng4+ 32.
+Ke2 Kf8 33. Rf3 Kg7 34. Rd3 Kf6 35. Rxd4 exd4 36. Nb5 Ke5 37. Nxa7 Kxe4 38.
+Nc8 d3+ 39. Kd2 Kd4 40. c5 bxc5 41. Nd6 Ne5 0-1
+
+[White "Kotov"]
+[Black "Smyslov"]
+[Result "1-0"]
+
+1. c4 e6 2. Nf3 d5 3. e3 Nf6 4. b3 g6 5. Bb2 Bg7 6. d4 O-O 7. Bd3 c5 8. O-O
+cxd4 9. Nxd4 e5 10. Nb5 a6 11. N5c3 dxc4 12. Bxc4 b5 13. Be2 Bb7 14. Nd2 e4
+15. b4 Qe7 16. a3 Rd8 17. Qc2 Nbd7 18. Nb3 Rac8 19. Rfd1 Nd5 20. Rxd5 Bxc3
+21. Rxd7 Rxd7 22. Bxc3 Bd5 23. Nc5 Rd6 24. Bb2 f6 25. Bd4 Qf7 26. h3 Re8
+27. Rc1 h5 28. a4 f5 29. Bb2 Kh7 30. Qc3 Bc4 31. Bxc4 bxc4 32. Qxc4 Rd1+
+33. Kh2 Qxc4 34. Rxc4 Rd2 35. Bf6 Rxf2 36. Rd4 f4 37. Rd7+ Kh6 38. h4 g5
+39. Bxg5+ Kg6 40. Bxf4 1-0
+
+[White "Reshevsky"]
+[Black "Averbakh"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Ne2 d5 6. a3 Be7 7. cxd5 exd5 8.
+Ng3 Be6 9. Bd3 Nbd7 10. O-O c6 11. Bd2 Re8 12. Qc2 a5 13. Nce2 Nb6 14. Nf4
+Bd7 15. Rfe1 Bf8 16. f3 Bc8 17. Rac1 g6 18. Nfe2 Bg7 19. h3 a4 20. e4 dxe4
+21. fxe4 Be6 22. Be3 Bb3 23. Qd2 Nfd7 24. Bg5 f6 25. Be3 Nf8 26. h4 Bf7 27.
+h5 Ne6 28. Rf1 Bf8 29. Rf2 Nd7 30. Rcf1 c5 31. d5 Nc7 32. hxg6 hxg6 33. Rf4
+b5 34. Rh4 Ne5 35. Kh1 Qd7 36. Rxf6 Ng4 37. Bg5 Bg7 38. Rf4 Ne5 39. Bf6
+Bxf6 40. Rxf6 Kg7 41. Qg5 Rh8 42. Nf5+ Qxf5 43. Rxf5 Rxh4+ 44. Kg1 1-0
+
+[White "Taimanov"]
+[Black "Najdorf"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 e5 7. O-O Nc6 8.
+d5 Ne7 9. Ne1 Nd7 10. Be3 f5 11. f3 f4 12. Bf2 g5 13. Nd3 Nf6 14. c5 Ng6
+15. Rc1 Rf7 16. Rc2 Bf8 17. cxd6 cxd6 18. Qd2 g4 19. Rfc1 g3 20. hxg3 fxg3
+21. Bxg3 Nh5 22. Bh2 Be7 23. Nb1 Bd7 24. Qe1 Bg5 25. Nd2 Be3+ 26. Kh1 Qg5
+27. Bf1 Raf8 28. Rd1 b5 29. a4 a6 30. axb5 axb5 31. Rc7 Rg7 32. Nb3 Nh4 33.
+Rc2 Bh3 34. Qe2 Nxg2 35. Bxg2 Bxg2+ 36. Qxg2 Qh4 37. Qxg7+ Kxg7 38. Rg2+
+Kh8 39. Ne1 Nf4 40. Rg3 Bf2 41. Rg4 Qh3 42. Nd2 h5 43. Rg5 0-1
+
+[White "Euwe"]
+[Black "Keres"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 O-O 5. Bg5 h6 6. Bh4 c5 7. dxc5 Na6 8.
+e3 Nxc5 9. Ne2 d5 10. O-O-O Bd7 11. cxd5 Rc8 12. Kb1 Na4 13. dxe6 fxe6 14.
+Qb3 Bxc3 15. Nxc3 Nxc3+ 16. bxc3 Qe8 17. Rd4 Nd5 18. c4 Nb6 19. Bd3 Na4 20.
+Bc2 Nc5 21. Qc3 b5 22. Ka1 a5 23. cxb5 Bxb5 24. Qb2 Qc6 25. Rg4 Rf7 26. Bf6
+Rcc7 27. Rd1 Bd3 28. Bxd3 Nxd3 29. Rxd3 Rxf6 30. f3 Rf5 31. Rgd4 Rc5 32.
+Rd8+ Kh7 33. Rd1 Rc2 34. Qd4 Rc1+ 35. Kb2 Qc2+ 0-1
+
+[White "Euwe"]
+[Black "Gligoric"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. Nc3 d6 6. Nf3 Nbd7 7. O-O e5 8.
+e4 exd4 9. Nxd4 Nc5 10. h3 Re8 11. Re1 a5 12. Qc2 a4 13. Be3 c6 14. Rad1
+Nfd7 15. g4 Qa5 16. Bf1 Ne6 17. Kg2 h5 18. f3 hxg4 19. hxg4 Ne5 20. Nce2
+Nxd4 21. Nxd4 d5 22. exd5 cxd5 23. Nb5 dxc4 24. Nd6 Be6 25. Nxe8 Rxe8 26.
+Qc3 Qxc3 27. bxc3 Nc6 28. Bb6 Bxc3 29. Re4 Ba5 30. Bxa5 Nxa5 31. Re5 b6 32.
+Rb5 c3 33. Rc1 Rc8 34. Rb4 Bxa2 35. Rxa4 Bd5 36. Rb4 Nb3 37. Rc2 Na1 38.
+Rc1 Nb3 39. Rc2 Nd2 40. Be2 Bb3 41. Rxd2 c2 42. Rxc2 1/2-1/2
+
+[White "Petrosian"]
+[Black "Taimanov"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. Nc3 Bb7 5. e3 d5 6. cxd5 exd5 7. Bb5+ c6 8.
+Bd3 Be7 9. O-O O-O 10. b3 Nbd7 11. Bb2 Bd6 12. Nh4 Re8 13. Nf5 Bf8 14. Rc1
+Ne4 15. Bxe4 dxe4 16. Qg4 g6 17. Nxe4 Rxe4 18. Qxe4 gxf5 19. Qxf5 Bg7 20.
+e4 Nf8 21. e5 Qd5 22. f4 c5 23. Qh3 cxd4 24. Rcd1 Qe4 25. Rde1 Qd5 26. Rd1
+Rc8 27. Rxd4 Qa5 28. Rc4 Rxc4 29. bxc4 Qc5+ 30. Rf2 Qxc4 31. Qb3 Qe4 32.
+Qc2 Ne6 33. f5 Nc5 34. Qd2 Qb1+ 35. Rf1 Qd3 36. Qe1 Qd5 37. Qg3 Ne4 38. Qh4
+Nc3 39. Qg4 h5 40. Qh3 Ne2+ 41. Kf2 0-1
+
+[White "Boleslavsky"]
+[Black "Szabo"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 c5 4. Nc3 cxd4 5. Nxd4 Bb4 6. Qb3 Na6 7. e3 Ne4
+8. Be2 Qa5 9. O-O Nac5 10. Qc2 Bxc3 11. bxc3 Qxc3 12. Qxc3 Nxc3 13. Bf3 Ke7
+14. Nb3 N3a4 15. Ba3 d6 16. Na5 e5 17. Rfc1 Rb8 18. Rab1 Bf5 19. Rxb7+ Nxb7
+20. Nxb7 Rxb7 21. Bxb7 Rb8 22. Bc6 Nc5 23. f3 Rb6 24. Bxc5 dxc5 25. Bd5 Rb2
+26. Rc3 Rxa2 27. Rb3 Bd7 28. Rb7 Kd6 29. Bxf7 Bc6 30. Rb1 a5 31. Bd5 Bxd5
+32. Rd1 a4 33. Rxd5+ Kc6 34. h4 Rc2 35. Rxe5 a3 36. Re6+ Kb7 37. Re7+ Kb6
+38. Re6+ Ka5 39. Re8 a2 40. Ra8+ Kb4 41. Kh2 Kb3 42. Rb8+ Kxc4 0-1
+
+[White "Grigorian"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. Nf3 Nf6 2. c4 g6 3. b3 Bg7 4. Bb2 O-O 5. e3 c5 6. Be2 Nc6 7. O-O d5 8.
+cxd5 Qxd5 9. Nc3 Qf5 10. d3 b6 11. Rc1 Bb7 12. a3 Rfd8 13. Qc2 Rac8 14. Ne4
+Na5 15. Ned2 Nd7 16. Bxg7 Kxg7 17. b4 Nc6 18. Qb2+ Kg8 19. Nc4 cxb4 20.
+axb4 b5 21. Ncd2 Nce5 22. Nd4 Qf6 23. Ne4 Bxe4 24. dxe4 a6 25. f4 Nc4 26.
+Bxc4 bxc4 27. e5 Qb6 28. Qa2 Qxb4 29. e6 Nf6 30. Qxa6 Qd6 31. Qa2 fxe6 32.
+Rxc4 Qd5 33. Ra4 Qxa2 34. Rxa2 Ng4 35. Nxe6 Rd6 36. Ng5 Nxe3 37. Re1 Nd5
+38. g3 1/2-1/2
+
+[White "Taimanov"]
+[Black "Spassky"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 e5 7. O-O Nc6 8.
+d5 Ne7 9. Bd2 Nh5 10. Rc1 f5 11. exf5 Nxf5 12. Ne4 Nf4 13. Re1 Nxe2+ 14.
+Qxe2 b6 15. b4 h6 16. Bc3 Bd7 17. Qd3 g5 18. Nfd2 g4 19. Nf1 Qe7 20. c5 Qf7
+21. cxd6 cxd6 22. b5 Nd4 23. Bxd4 exd4 24. Qg3 Qxd5 25. Nxd6 Rad8 26. a4
+Rf6 27. Ne4 Rf7 28. Nd6 Rf6 29. Ne4 Rff8 30. Nd6 h5 31. Ne4 Rc8 32. Rcd1
+Rce8 33. Qc7 Bxb5 34. Nc3 Qf5 35. Rxe8 Qxf2+ 36. Kh1 Bxe8 37. Qc4+ Qf7 38.
+Nd5 Bxa4 39. Nf6+ Bxf6 40. Qxa4 Bg7 41. Nd2 Bh6 42. Qxd4 Bxd2 0-1
+
+[White "Savon"]
+[Black "Tukmakov"]
+[Result "1/2-1/2"]
+
+1. c4 c5 2. Nf3 g6 3. d4 cxd4 4. Nxd4 Nc6 5. e4 Nf6 6. Nc3 Nxd4 7. Qxd4 d6
+8. Be2 Bg7 9. O-O O-O 10. Qe3 Be6 11. Bd2 Qb6 12. b3 Rfc8 13. Rac1 Qxe3 14.
+Bxe3 Nd7 15. Nd5 Kf8 16. Nf4 Nc5 17. Nxe6+ fxe6 18. f3 a5 19. Rb1 Bc3 20.
+Rfd1 e5 21. Bxc5 Rxc5 22. g3 Bd4+ 23. Kg2 e6 24. Bd3 Ke7 25. h4 Rc7 26. h5
+g5 27. Kh3 h6 28. Kg4 Kd7 29. a3 Kc6 30. Rd2 Rf7 31. Ra2 b6 32. Rd1 Kb7 33.
+Rdd2 Raf8 34. Be2 Rc7 35. Rdc2 Rfc8 36. Bd3 Rc6 37. Kh3 Rg8 38. Kg4 Rc7 39.
+Be2 Bc5 40. Bd3 Rf8 41. Be2 Rfc8 1/2-1/2
+
+[White "Boleslavsky"]
+[Black "Geller"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. g3 Bg4 7. f3 Bd7 8.
+Be3 g6 9. Qd2 Bg7 10. O-O-O O-O 11. g4 Rc8 12. Kb1 Ne5 13. h4 b5 14. Bh6
+Bxh6 15. Qxh6 Rxc3 16. bxc3 Qa5 17. Qe3 Qa3 18. h5 b4 19. Qc1 Qxc3 20. Qb2
+Rc8 21. hxg6 Qxb2+ 22. Kxb2 hxg6 23. a3 bxa3+ 24. Kxa3 Nxf3 25. Nxf3 Rc3+
+26. Kb2 Rxf3 27. e5 Nxg4 28. Be2 Rf2 29. Bxg4 Bxg4 30. Rdf1 Rxf1 31. Rxf1
+dxe5 32. c4 Kf8 33. Ra1 Bf3 34. c5 g5 35. Rxa7 g4 36. Ra3 Ke8 37. Kc1 f5
+38. Kd2 f4 39. Ra6 g3 40. Ke1 Be4 0-1
+
+[White "Euwe"]
+[Black "Keres"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 d6 5. c3 f5 6. exf5 Bxf5 7. d4 e4 8.
+Ng5 d5 9. f3 e3 10. f4 Bd6 11. Qf3 Qf6 12. Qxe3+ Ne7 13. Bxc6+ bxc6 14. O-O
+O-O 15. Nd2 Ng6 16. g3 Rae8 17. Qf2 Bd3 18. Re1 Rxe1+ 19. Qxe1 Bxf4 20.
+gxf4 Nxf4 21. Ndf3 Ne2+ 22. Kg2 h6 23. Qd2 Qf5 24. Qe3 hxg5 25. Bd2 Be4 0-1
+
+[White "Tal"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 d6 5. c3 Bd7 6. d4 Nge7 7. Bb3 h6 8.
+Nh4 Na5 9. Bc2 c5 10. dxc5 dxc5 11. Qf3 Ng6 12. Nf5 Qf6 13. Nd2 Ne7 14. O-O
+g6 15. Nxe7 Bxe7 16. Qe3 Rd8 17. b3 Qg5 18. Qe2 Bb5 19. c4 Bd7 20. Nb1 Qh5
+21. Qxh5 gxh5 22. Nc3 Nc6 23. Nd5 Nd4 24. Bd1 h4 25. f4 Bd6 26. Bh5 Be6 27.
+fxe5 Bxe5 28. Bf4 Bg7 29. Nc7+ Kd7 30. Rad1 Rhg8 31. h3 Kc6 32. Nd5 Rgf8
+33. Be3 Rd7 34. Bf2 f5 35. Bxh4 fxe4 36. Rxf8 Bxf8 37. Be8 b5 38. Re1 Kb7
+39. Bxd7 Bxd7 40. Rxe4 Nf5 41. Bf2 Kc6 42. Nf6 1-0
+
+[White "Geller"]
+[Black "Sveshnikov"]
+[Result "1-0"]
+
+1. e4 g6 2. d4 c6 3. Nf3 Bg7 4. Bd3 d5 5. e5 c5 6. c3 Bg4 7. Nbd2 Nc6 8. h3
+Bd7 9. O-O e6 10. Re1 Nge7 11. dxc5 Qc7 12. Qe2 a5 13. a4 Nb8 14. Nb3 Na6
+15. Be3 O-O 16. Bg5 Rfe8 17. Nh2 h6 18. Bf6 Nxc5 19. Nxc5 Qxc5 20. Ng4 Kf8
+21. Qd2 Ng8 22. Qf4 g5 23. Qf3 Bc6 24. Bxg7+ Kxg7 25. Nxh6 f5 26. exf6+
+Nxf6 27. Re5 Rf8 28. Rxg5+ Kh8 29. Qg3 1-0
+
+[White "Kuzmin"]
+[Black "Spassky"]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8.
+c3 O-O 9. h3 Nb8 10. d4 Nbd7 11. Nbd2 Bb7 12. Bc2 Re8 13. Nf1 Bf8 14. Ng3
+g6 15. a4 c5 16. d5 c4 17. Bg5 Bg7 18. Qd2 Nc5 19. Nh2 h5 20. Nf3 Qc7 21.
+Ra3 Rab8 22. Bh6 Bh8 23. Rea1 Bc8 24. axb5 axb5 25. Qe1 Bd7 26. R1a2 Rec8
+27. Kh1 Nh7 28. Ra7 Qd8 29. Be3 Be8 30. Qa1 Bf6 31. R2a5 Bd7 32. Qe1 Qe8
+33. Ra1 Bd8 34. Nd2 Bb6 35. R7a2 Qe7 36. Qe2 Qf6 37. Ra3 Qh4 38. Nf3 Qe7
+39. Nd2 Kg7 40. Re1 Ra8 41. Raa1 h4 1/2-1/2
+
+[White "Taimanov"]
+[Black "Tal"]
+[Result "1-0"]
+
+1. d4 Nf6 2. Nf3 c5 3. c4 cxd4 4. Nxd4 b6 5. Nc3 Bb7 6. f3 Nc6 7. e4 e6 8.
+Be3 Qb8 9. Qd2 Bc5 10. Be2 O-O 11. Rd1 Ne5 12. Ndb5 a6 13. Nd6 Bc6 14. a3
+Ne8 15. Nxe8 Rxe8 16. b4 Bxe3 17. Qxe3 Qc7 18. O-O Rac8 19. Rc1 d6 20. Nd5
+exd5 21. cxd5 b5 22. f4 Nc4 23. Bxc4 bxc4 24. Rxc4 Qd7 25. Rxc6 Rxc6 26.
+dxc6 Qxc6 27. Rc1 Qb7 28. Qd4 h6 29. Rc4 Qb5 30. h3 a5 31. bxa5 Qxa5 32.
+Qxd6 Rd8 33. Qb4 Qa7+ 34. Kh2 Qe3 35. e5 Rd3 36. Qb1 Rd8 37. a4 h5 38. Qe4
+Qb6 39. Rc6 Qd4 40. Rc4 Qb6 41. Rb4 1-0
+
+[White "Gligoric"]
+[Black "Stahlberg"]
+[Result "1-0"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Bb4 4. Bd3 dxe4 5. Bxe4 c5 6. Ne2 Nf6 7. Bf3 cxd4
+8. Qxd4 Qxd4 9. Nxd4 a6 10. O-O Nbd7 11. Re1 O-O 12. Bd2 Rd8 13. a3 Bd6 14.
+Rad1 Bc7 15. Bg5 h6 16. Bh4 g5 17. Bg3 Bxg3 18. hxg3 g4 19. Be2 Nb6 20. Nb3
+Bd7 21. Na5 Rab8 22. Rd6 Nc8 23. Rd4 e5 24. Rd2 Re8 25. Ne4 Nxe4 26. Rxd7
+Nc5 27. Rc7 Ne6 28. Rxb7 Nd6 29. Rd7 Rb6 30. b4 Nb5 31. Nc4 Rc6 32. Nxe5
+Rxc2 33. Bxb5 axb5 34. Nxf7 Kf8 35. Nxh6 Re7 36. Rd5 Nc7 37. Rf5+ Ke8 38.
+Rxe7+ Kxe7 39. Nxg4 Ra2 40. Rc5 Kd6 41. Rc3 1-0
+
+[White "Tukmakov"]
+[Black "Averkin"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Qc7 8.
+Qe2 Nbd7 9. O-O-O b5 10. f5 b4 11. fxe6 bxc3 12. exd7+ Bxd7 13. Bxf6 gxf6
+14. Qc4 Qxc4 15. Bxc4 Bh6+ 16. Kb1 Bf4 17. b3 Ke7 18. Rd3 Rhg8 19. g3 Be5
+20. Rhd1 Rac8 21. Bxa6 Rc7 22. Bc4 Rg4 23. Bd5 h5 24. a4 h4 25. a5 hxg3 26.
+hxg3 f5 27. exf5 Rc5 28. Bf3 Rxg3 29. a6 Ra5 30. Bb7 Rxd3 31. Rxd3 Kd8 32.
+Nf3 Kc7 33. b4 Ra3 34. Nxe5 dxe5 35. Rd5 f6 36. b5 Bxf5 37. Rc5+ Kb6 38.
+Rc6+ Kxb5 39. Rxf6 Bh7 40. Re6 Bg8 41. Rxe5+ Kb6 1/2-1/2
+
+[White "Gligoric"]
+[Black "Kotov"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. g3 e5 7. Nde2 Be6 8.
+Bg2 b5 9. O-O Nbd7 10. a4 b4 11. Nd5 Nxd5 12. exd5 Bg4 13. Bd2 a5 14. c3
+bxc3 15. Bxc3 Qb6 16. h3 Bh5 17. Kh2 Be7 18. f4 Bxe2 19. Qxe2 Bf6 20. Qc4
+O-O 21. Qc6 Rfd8 22. Rae1 Qb8 23. Rb1 Ra7 24. Qc4 Rc8 25. Qe4 Qb3 26. fxe5
+Bxe5 27. Qf5 Rf8 28. Qf2 Raa8 29. Qf5 Qxa4 30. Rf4 Bxf4 31. gxf4 g6 32. Qg5
+Rae8 33. Rg1 Re2 34. Kh1 Qc2 35. Qg4 Nc5 36. Qh4 Ne4 37. Bd4 Nf2+ 38. Kh2
+Ne4 39. f5 Qd3 40. fxg6 fxg6 41. Bb6 0-1
+
+[White "Reshevsky"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 e6 3. Nc3 Nf6 4. e3 c5 5. Nf3 Nc6 6. dxc5 Bxc5 7. a3 a5 8.
+Be2 O-O 9. O-O dxc4 10. Qc2 e5 11. Bxc4 Bg4 12. Ng5 Bh5 13. Bd3 h6 14. Nge4
+Nxe4 15. Bxe4 Ba7 16. Bd2 Bg4 17. h3 Be6 18. Nb5 Bb6 19. Rfd1 Qg5 20. Nd6
+Bxh3 21. Qb3 Ba7 22. Qxb7 Ne7 23. Bf3 f5 24. Kf1 e4 25. gxh3 Rab8 26. Nxe4
+fxe4 27. Qxe4 Rf7 28. Bg4 Qh4 29. f4 Kh8 30. Be1 Qf6 31. Bc3 Qa6+ 32. Be2
+Qc8 33. Bg4 Qa6+ 34. Kg2 Nf5 35. Bxf5 Rxf5 36. Rd7 1-0
+
+[White "Reshevsky"]
+[Black "Boleslavsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. Nc3 d6 6. Nf3 c5 7. d5 Na6 8.
+O-O Nc7 9. Nd2 Rb8 10. a4 e6 11. dxe6 Bxe6 12. Nde4 Nxe4 13. Nxe4 Bxc4 14.
+Bg5 Qd7 15. Qxd6 Qxd6 16. Nxd6 Bxe2 17. Rfe1 Bd3 18. Be7 Bxb2 19. Ra2 Bg7
+20. Bf1 Bxf1 21. Kxf1 Nd5 22. Bxf8 Bxf8 23. Rae2 Bxd6 24. Rd2 Bf8 25. Rxd5
+c4 26. Re4 a6 27. Rxc4 b5 28. axb5 axb5 29. Rc7 b4 30. Rdd7 Ra8 31. Kg2 Ra2
+32. Rxf7 b3 33. Rb7 Bc5 34. Rf3 b2 35. Rd3 Bf8 36. Rdd7 Bc5 37. Rd8+ Bf8
+38. Rdb8 1-0
+
+[White "Keres"]
+[Black "Najdorf"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Ne2 Nf6 3. Nbc3 d6 4. g3 Nc6 5. Bg2 g6 6. d3 Bg7 7. Be3 O-O 8.
+h3 Ne8 9. Qd2 Nd4 10. Nd1 Rb8 11. Nf4 Nc7 12. c3 e5 13. Ne2 Nxe2 14. Qxe2
+b6 15. O-O d5 16. c4 dxe4 17. dxe4 f5 18. exf5 Bxf5 19. Re1 Bd3 20. Bg5 Qd4
+21. Qe3 Bxc4 22. Rc1 Qxe3 23. Nxe3 Bxa2 24. Ra1 Bb3 25. Ra3 Be6 26. Rxa7
+Nb5 27. Re7 Nd4 28. Ng4 Bxg4 29. hxg4 Nf3+ 30. Bxf3 Rxf3 31. Rd1 Rf7 32.
+Rxf7 Kxf7 33. Rd7+ Kg8 34. b3 b5 35. Rc7 c4 36. bxc4 b4 37. Bc1 e4 38. c5
+b3 39. c6 b2 40. Bxb2 Rxb2 41. Rd7 1/2-1/2
+
+[White "Keres"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. Qe2 Be7 10. Rd1 O-O 11. c4 bxc4 12. Bxc4 Bc5 13. Be3 Bxe3 14.
+Qxe3 Qb8 15. Bb3 Na5 16. Nbd2 Nxd2 17. Rxd2 Nxb3 18. axb3 Rc8 19. Rc1 c5
+20. Rxc5 Rxc5 21. Qxc5 Qxb3 22. Nd4 Qb7 23. h3 Rd8 24. Kh2 g6 25. f4 h5 26.
+Rd3 Qd7 27. Qb6 Ra8 28. Ra3 Qa7 29. Qb4 Qd7 30. Qa5 Bf5 31. Rc3 Ra7 32. Rc5
+Be4 33. Qc3 Qe7 34. Nc6 1-0
+
+[White "Smyslov"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. Qe2 Nc5 10. Rd1 Nxb3 11. axb3 Qc8 12. c4 dxc4 13. bxc4 Bxc4 14.
+Qe4 Ne7 15. Na3 c6 16. Nxc4 bxc4 17. Qxc4 Qb7 18. e6 f6 19. Rd7 Qb5 20.
+Qxb5 cxb5 21. Nd4 Rc8 22. Be3 Ng6 23. Rxa6 Ne5 24. Rb7 Bc5 25. Nf5 O-O 26.
+h3 1-0
+
+[White "Smyslov"]
+[Black "Botvinnik"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bg5 e6 7. Be2 Be7
+8. O-O O-O 9. Ndb5 a6 10. Bxf6 gxf6 11. Nd4 Kh8 12. Kh1 Rg8 13. f4 Bd7 14.
+Bf3 Rc8 15. Nxc6 bxc6 16. Ne2 d5 17. f5 Qc7 18. c4 dxc4 19. Qd4 c5 20. Qxc4
+Bd6 21. g3 Bb5 22. Qc2 exf5 23. exf5 Rce8 24. Rf2 Re3 25. Bg2 Qe7 26. Ng1
+Bd3 27. Qd2 c4 28. Rf3 Re8 29. Rd1 Bc5 30. b3 Re1 31. bxc4 Bxc4 32. Bf1
+Rxd1 33. Qxd1 Rd8 34. Qc2 Bd5 35. Qc3 Bd4 36. Qd3 Qe3 37. Qxe3 Bxe3 38. Bg2
+Bxf3 39. Bxf3 Rd2 40. Ne2 Rxa2 41. Kg2 0-1
+
+[White "Kotov"]
+[Black "Euwe"]
+[Result "1/2-1/2"]
+
+1. c4 Nf6 2. g3 e6 3. Bg2 d5 4. Nf3 dxc4 5. O-O a6 6. Qc2 b5 7. Ne5 Nd5 8.
+d3 cxd3 9. Nxd3 Bb7 10. Rd1 Qc8 11. a4 Nd7 12. axb5 axb5 13. Rxa8 Bxa8 14.
+Na3 Bxa3 15. bxa3 O-O 16. Nc5 N7b6 17. e4 Ne7 18. Bf1 Bc6 19. f3 Rd8 20.
+Bg5 Rxd1 21. Qxd1 Ng6 22. Qd8+ Be8 23. Qxc8 Nxc8 24. Bd8 c6 25. f4 e5 26.
+f5 Nf8 27. Kf2 Nd7 28. Nb7 f6 29. Ke3 Kf8 30. h3 Bf7 31. Ba5 Ke8 32. g4
+Ndb6 33. Bb4 Bc4 34. Bg2 Ba2 35. Bf1 Bc4 36. Bg2 Ba2 1/2-1/2
+
+[White "Smyslov"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 dxc4 3. Nf3 Nf6 4. e3 e6 5. Bxc4 c5 6. O-O a6 7. Qe2 b5 8.
+Bb3 Bb7 9. Rd1 Nbd7 10. Nc3 Be7 11. e4 b4 12. e5 bxc3 13. exf6 Bxf6 14. d5
+e5 15. bxc3 O-O 16. Nd2 Be7 17. Nc4 a5 18. Nxe5 Nxe5 19. Qxe5 Bf6 20. Qg3
+c4 21. Ba4 Qe7 22. Bf4 Rfd8 23. d6 Qe4 24. Re1 Qf5 25. d7 h5 26. Re8+ Kh7
+27. h4 Ra6 28. Bg5 Rxd7 29. Bxd7 Qxd7 30. Rae1 Rd6 31. Bxf6 Rxf6 32. Qb8
+Rf5 33. Rh8+ Kg6 34. Rd8 Qb5 35. Rd6+ Kh7 36. Rd8 Qc5 37. Re3 Bd5 38. Rh8+
+Kg6 39. Qd8 Bf3 40. Rxf3 Rxf3 41. gxf3 1-0
+
+[White "Tukmakov"]
+[Black "Polugaevsky"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Nbd7 8.
+Qe2 Qc7 9. O-O-O b5 10. f5 b4 11. fxe6 bxc3 12. exd7+ Nxd7 13. Qc4 cxb2+
+14. Kb1 Qxc4 15. Bxc4 Ne5 16. Bd5 Rb8 17. Bf4 f6 18. Rhe1 Be7 19. Re3 Bd8
+20. h3 Bd7 21. Rb3 Bb6 22. Nf5 Bxf5 23. exf5 Ke7 24. Kxb2 Bc5 25. Re1 a5
+26. Re4 Rb4 27. a3 Rxb3+ 28. cxb3 Rc8 29. b4 axb4 30. axb4 Bb6 31. Kb3 Rc7
+32. Ka4 Rc2 33. Kb5 Bf2 34. Ka6 Kd7 35. Bxe5 dxe5 36. Rg4 Kd6 37. Bb7 Rc7
+38. b5 Rc3 39. Bf3 Ra3+ 40. Kb7 Ra7+ 41. Kb8 Re7 1/2-1/2
+
+[White "Averkin"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. Nf3 b6 3. c4 Bb7 4. e3 e6 5. Bd3 c5 6. O-O cxd4 7. exd4 Be7 8.
+Nbd2 O-O 9. b3 d5 10. Bb2 Nc6 11. Rc1 Rc8 12. Qe2 Rc7 13. Rfd1 Qa8 14. a3
+a5 15. Rc2 Rfc8 16. Rdc1 Nb8 17. Ne5 Nbd7 18. Ndf3 dxc4 19. bxc4 Nxe5 20.
+Nxe5 Bxg2 21. d5 exd5 22. Kxg2 dxc4+ 23. Qf3 Qxf3+ 24. Nxf3 b5 25. a4 Rc5
+26. Bf1 Nd5 27. Bd4 Nf4+ 28. Kh1 Rf5 29. Bb2 bxa4 30. Rxc4 Rxc4 31. Rxc4
+Ne6 32. Rc8+ Nf8 33. Kg2 a3 34. Ba1 Rd5 35. Bc4 Rd1 36. Bd4 h5 37. Bb3 Rb1
+38. Ba2 Rb7 39. Ne5 Bf6 40. f4 Bxe5 41. fxe5 Rd7 42. e6 1-0
+
+[White "Boleslavsky"]
+[Black "Gligoric"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bg5 e6 7. Qd2 Be7
+8. O-O-O Nxd4 9. Qxd4 O-O 10. f4 h6 11. Bh4 Qa5 12. e5 dxe5 13. Qxe5 b6 14.
+Qxa5 bxa5 15. Bd3 Bb7 16. Rhg1 Rfe8 17. h3 Bc5 18. Rge1 Bb4 19. f5 e5 20.
+Bb5 Re7 21. Re3 a6 22. Ba4 Bc5 23. Re2 e4 24. Bb3 Rae8 25. Bxf6 gxf6 26.
+Bd5 e3 27. Bxb7 Rxb7 28. Rd5 Bb4 29. Rd3 Bxc3 30. Rxc3 Rbe7 31. Rd3 Re4 32.
+c3 Kg7 33. Kc2 R4e5 34. g4 h5 35. Rd6 hxg4 36. hxg4 Kh6 37. Rxf6+ Kg5 38.
+Rxf7 Kxg4 39. Rd7 Kf3 40. Kd3 Rxf5 41. c4 a4 42. Rd6 1/2-1/2
+
+[White "Spassky"]
+[Black "Tukmakov"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Nbd7 8.
+Qf3 Qc7 9. O-O-O b5 10. Bd3 Bb7 11. Rhe1 Qb6 12. Nb3 b4 13. Na4 Qc7 14. Nd4
+Be7 15. Qh3 Nc5 16. Nxc5 dxc5 17. Nxe6 fxe6 18. Bc4 Rd8 19. Qxe6 Rxd1+ 20.
+Rxd1 Rf8 21. Bxf6 Rxf6 22. Qg8+ Bf8 23. g3 Bc8 24. e5 Rb6 25. Qxh7 Be6 26.
+Qg6+ Qf7 27. Qe4 Qc7 28. h4 Bxc4 29. Qxc4 Qc6 30. b3 g6 31. Qe2 Qe6 32. h5
+Rb7 33. Qe4 Rg7 34. hxg6 Qxg6 35. f5 1-0
+
+[White "Keres"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. Nf3 g6 3. Bg5 Bg7 4. e3 O-O 5. Be2 d6 6. O-O Nbd7 7. h3 b6 8.
+c4 Ne4 9. Bh4 Bb7 10. Nfd2 Ndf6 11. Nxe4 Nxe4 12. f3 Nf6 13. Nc3 d5 14. Rc1
+c6 15. Qb3 Qd7 16. f4 e6 17. Rfd1 Ba6 18. Rc2 Bxc4 19. Bxc4 dxc4 20. Qxc4
+Rac8 21. Rdc1 b5 22. Qb3 Nd5 23. Ne4 h6 24. Bf2 a5 25. a3 a4 26. Qd3 f5 27.
+Nc5 Qd6 28. Qd2 Rf7 29. Nd3 Kh7 30. Ne5 Rfc7 31. Qe2 Bxe5 32. fxe5 Qe7 33.
+e4 fxe4 34. Qxe4 Qg5 35. Kh1 Qf5 1/2-1/2
+
+[White "Grigorian"]
+[Black "Sveshnikov"]
+[Result "0-1"]
+
+1. d4 d5 2. c4 c6 3. Nf3 Nf6 4. g3 g6 5. Bg2 Bg7 6. O-O O-O 7. Qa4 Nfd7 8.
+Na3 Nb6 9. Qc2 Bf5 10. Qc3 Be4 11. c5 N6d7 12. Bf4 b6 13. cxb6 Qxb6 14. Be3
+c5 15. dxc5 Qxb2 16. Qa5 Qxe2 17. Rac1 Nc6 18. Qc7 Nde5 19. Nxe5 Nxe5 20.
+Bxe4 dxe4 21. Qxe7 Qh5 22. h4 Rae8 23. Qb7 Nf3+ 24. Kg2 Nxh4+ 25. gxh4 Qg4+
+26. Kh1 Qxh4+ 27. Kg2 Qg4+ 0-1
+
+[White "Keres"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bc4 e6 7. O-O a6 8.
+Be3 Qc7 9. Bb3 Na5 10. f4 b5 11. f5 Nxb3 12. cxb3 Be7 13. Rc1 Qd7 14. fxe6
+fxe6 15. b4 O-O 16. Qb3 Kh8 17. h3 e5 18. Nf5 Bb7 19. Nxe7 Qxe7 20. Bg5 h6
+21. Bxf6 Rxf6 22. Rxf6 Qxf6 23. Rf1 Qg6 24. Qd1 Rc8 25. Qf3 Rc4 26. Rd1 Kh7
+27. a3 Bxe4 28. Nxe4 Rxe4 29. Rxd6 Re1+ 30. Kf2 Qxd6 31. Kxe1 Qg6 32. Kd2
+e4 33. Qf2 Qg5+ 34. Ke2 Qd5 35. Ke3 Qd3+ 36. Kf4 g5+ 37. Ke5 1/2-1/2
+
+[White "Keres"]
+[Black "Stahlberg"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 d5 4. Bg5 Be7 5. e3 Nbd7 6. Nf3 O-O 7. Qc2 c6 8.
+Rd1 Re8 9. a3 dxc4 10. Bxc4 Nd5 11. Bxe7 Qxe7 12. O-O Nxc3 13. Qxc3 b6 14.
+Ne5 Bb7 15. f4 Nxe5 16. fxe5 c5 17. Qe1 Be4 18. Rf4 Bg6 19. h4 cxd4 20.
+exd4 Rac8 21. Qe2 Rc7 22. Rdf1 h5 23. R1f3 Rec8 24. Bd3 Bxd3 25. Rxd3 g6
+26. Rg3 Kh7 27. Rg5 Qf8 28. Qe4 Qh6 29. d5 exd5 30. Qxd5 Qf8 31. e6 Qc5+
+32. Qxc5 bxc5 33. exf7 Kg7 34. f8=Q+ Rxf8 35. Rxf8 Kxf8 36. Rxg6 c4 37. Rg5
+Rb7 38. Rxh5 Rxb2 39. Rc5 Rc2 40. Kh2 Ke7 41. h5 c3 42. Rc6 1-0
+
+[White "Stahlberg"]
+[Black "Gligoric"]
+[Result "0-1"]
+
+1. Nf3 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. O-O d6 6. d4 c5 7. h3 Nc6 8.
+Nc3 Bd7 9. dxc5 dxc5 10. Be3 Qc8 11. Kh2 Rd8 12. Qc1 Nd4 13. Rd1 Bc6 14.
+Ne1 b6 15. Bg5 Bxg2 16. Nxg2 Qe6 17. Ne3 Ne4 18. Nxe4 Qxe4 19. Nd5 Qxe2 20.
+Qe3 Qxe3 21. Bxe3 e6 22. Bxd4 Bxd4 23. Ne7+ Kf8 24. Nc6 Rd6 25. Nxd4 Rxd4
+26. Rxd4 cxd4 27. Rd1 e5 28. Kg2 Ke7 29. f4 f6 30. Kf3 Ke6 31. Rc1 Rd8 32.
+fxe5 fxe5 33. Ke4 Rc8 34. a3 a5 35. b3 Rf8 36. c5 Rc8 37. b4 bxc5 38. Rc4
+Kd6 39. b5 Rb8 40. a4 Rf8 41. Rc1 Rf2 42. Rb1 c4 0-1
+
+[White "Reshevsky"]
+[Black "Smyslov"]
+[Result "1/2-1/2"]
+
+1. d4 d5 2. c4 c6 3. Nf3 Nf6 4. Nc3 dxc4 5. a4 Bf5 6. e3 e6 7. Bxc4 Bb4 8.
+O-O O-O 9. Qe2 Bg4 10. h3 Bxf3 11. Qxf3 Nbd7 12. Rd1 e5 13. d5 Bxc3 14.
+dxc6 e4 15. Qf5 Be5 16. cxd7 Qc7 17. Bb3 g6 18. Qg5 Kg7 19. f4 exf3 20.
+gxf3 h6 21. Qg2 Qb6 22. Bc2 Rfd8 23. Ra3 Rxd7 24. Rxd7 Nxd7 25. f4 Bf6 26.
+Rb3 Qc5 27. Rb5 Qc4 28. Rxb7 Rc8 29. Rxd7 Qxc2 30. Qxc2 Rxc2 31. Bd2 Bxb2
+32. Kf1 a6 33. Ke2 Bc1 34. Kd1 Rxd2+ 35. Rxd2 Bxd2 36. Kxd2 g5 37. Ke2 f5
+38. Kf3 Kf6 39. e4 fxe4+ 40. Kxe4 gxf4 41. Kxf4 a5 1/2-1/2
+
+[White "Tukmakov"]
+[Black "Grigorian"]
+[Result "0-1"]
+
+1. e4 Nf6 2. e5 Nd5 3. d4 d6 4. Nf3 Nb6 5. exd6 cxd6 6. d5 N8d7 7. Bg5 Nf6
+8. Nc3 g6 9. a4 a5 10. Bb5+ Bd7 11. Bxf6 exf6 12. Bxd7+ Nxd7 13. O-O Be7
+14. Nb5 O-O 15. c3 f5 16. Re1 Nc5 17. Nd2 Bf6 18. Nc4 Ra6 19. Qc2 Qd7 20.
+f4 Rc8 21. Re3 Kg7 22. Kh1 Bd8 23. Rae1 Ne4 24. b3 Rc5 25. Rd3 Rxb5 26.
+axb5 Qxb5 27. Nb2 Nc5 28. c4 Qb4 29. Rde3 Bf6 30. Rb1 Ne4 31. Rd1 Qc5 32.
+Re2 b5 33. cxb5 Qxb5 34. Na4 Ra8 35. g3 Rb8 36. Rd3 Rc8 37. Qxc8 Qxd3 38.
+Qc4 Qd1+ 39. Kg2 Bd4 40. Qc2 Qg1+ 41. Kh3 Qf1+ 0-1
+
+[White "Averbakh"]
+[Black "Taimanov"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bc4 e6 7. O-O a6 8.
+Be3 Qc7 9. Bb3 Be7 10. f4 Na5 11. Qf3 b5 12. e5 Bb7 13. Qg3 dxe5 14. fxe5
+Nh5 15. Qh3 Qxe5 16. Bxe6 fxe6 17. Nxe6 Bc8 18. Qxh5+ Qxh5 19. Nxg7+ Kd7
+20. Nxh5 Nc4 21. Bd4 Rg8 22. Nd5 Rg5 23. Nhf6+ Bxf6 24. Nxf6+ Kc6 25. Nxh7
+Rg6 26. Rae1 b4 27. b3 Na3 28. Re5 Nb5 29. Be3 Nc3 30. Nf8 Rg7 31. Rf6+ Kc7
+32. Bh6 Rg4 33. Re7+ Kd8 34. Rh7 Rb8 35. Ne6+ Bxe6 36. Rf8# 1-0
+
+[White "Tal"]
+[Black "Rashkovsky"]
+[Result "1/2-1/2"]
+
+1. c4 g6 2. e4 Bg7 3. d4 c5 4. Nf3 cxd4 5. Nxd4 Nc6 6. Be3 Nf6 7. Nc3 Ng4
+8. Qxg4 Nxd4 9. Qd1 Ne6 10. Qd2 Qa5 11. Rc1 b6 12. Bd3 Bb7 13. Bb1 Rc8 14.
+b3 f5 15. exf5 gxf5 16. Nd5 Qxd2+ 17. Kxd2 Nc5 18. Rhe1 e6 19. Nc3 Ne4+ 20.
+Bxe4 Bxc3+ 21. Rxc3 Bxe4 22. Bd4 Rf8 23. g4 h6 24. h4 Rg8 25. Rg3 Kf7 26.
+g5 hxg5 27. hxg5 f4 28. Rgg1 Bf5 29. Be5 b5 30. Rc1 bxc4 31. Rxc4 Rxc4 32.
+bxc4 Rc8 33. Rc1 Rc5 34. Bxf4 Ra5 35. Ra1 Ra4 36. Be3 Rxc4 37. Bxa7 Ra4 38.
+Bb8 Kg6 39. f4 d6 40. Ke3 Ra3+ 41. Kf2 Ra6 42. a4 e5 1/2-1/2
+
+[White "Geller"]
+[Black "Kotov"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 O-O 6. Nf3 d5 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 dxc4 10. Bxc4 Qc7 11. Qc2 e5 12. Ba2 Bg4 13. Nxe5 Nxe5 14.
+dxe5 Qxe5 15. e4 Rfe8 16. Bb1 Rad8 17. f3 Bd7 18. Bb2 Bc6 19. Ba2 Nh5 20.
+Rad1 Nf4 21. Rd2 Ba4 22. Qc1 Qg5 23. Bd5 Nxd5 24. exd5 Rxd5 25. Rxd5 Qxd5
+26. c4 Qd3 27. Re1 f6 28. Rxe8+ Bxe8 29. Qc3 Qe2 30. Bc1 Bf7 31. Qd2 Qe7
+32. Qe3 Kf8 33. h4 Qxe3+ 34. Bxe3 b6 35. a4 Ke7 36. a5 Bxc4 37. axb6 axb6
+38. Kf2 Kd6 39. Bf4+ Kc6 40. Ke3 Bf7 41. g4 b5 42. h5 b4 0-1
+
+[White "Spassky"]
+[Black "Averkin"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e6 5. Nb5 d6 6. c4 Nf6 7. N1c3 a6 8.
+Na3 Be7 9. Be2 O-O 10. O-O Bd7 11. Be3 Rb8 12. Rc1 Qa5 13. f4 Rfd8 14. Qd2
+Be8 15. Rfd1 Nb4 16. Qe1 b5 17. Kh1 Rdc8 18. cxb5 axb5 19. e5 dxe5 20. fxe5
+Nd7 21. Naxb5 Nxe5 22. Bf4 Ned3 23. Bxd3 Nxd3 24. Rxd3 Bxb5 25. Rg3 Rb6 26.
+Bc7 Rxc7 27. Qe5 g6 28. Qxc7 Bh4 29. Rf3 Be8 30. Rxf7 Bxf7 31. Rf1 Be8 32.
+Qc8 Kg7 33. Qxe8 Bf6 34. Ne4 e5 35. Nxf6 1-0
+
+[White "Kotov"]
+[Black "Gligoric"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. f3 O-O 6. Be3 e5 7. d5 c5 8. Bd3
+Nh5 9. Nge2 f5 10. exf5 gxf5 11. Qc2 e4 12. fxe4 f4 13. Bf2 Nd7 14. Ng1 Qg5
+15. Bf1 Ne5 16. Nf3 Qe7 17. Nxe5 Qxe5 18. O-O-O Nf6 19. h3 Bd7 20. Bd3 a6
+21. Nb1 f3 22. gxf3 Nh5 23. Nd2 Nf4 24. Bf1 b5 25. h4 Kh8 26. Rg1 Bf6 27.
+Nb3 Rab8 28. Be1 b4 29. Kb1 Ra8 30. Bg3 Rg8 31. Qh2 Rxg3 32. Rxg3 Ne2 33.
+Qxe2 Qxg3 34. Nc1 a5 35. Nd3 Bd4 36. h5 Qh4 37. Bg2 Rg8 38. Rh1 Qg3 39. Bf1
+a4 40. Kc2 a3 41. b3 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 e6 3. Nf3 Nf6 4. Nc3 c6 5. e3 Nbd7 6. Bd3 Bb4 7. a3 Ba5 8.
+Qc2 Qe7 9. Bd2 dxc4 10. Bxc4 e5 11. O-O O-O 12. d5 c5 13. d6 Qd8 14. Rad1
+Rb8 15. Nd5 Nxd5 16. Bxa5 Qxa5 17. Rxd5 e4 18. Ng5 b5 19. Ba2 Qb6 20. Nxe4
+Bb7 21. Rd2 c4 22. Bb1 g6 23. Qc3 Rfe8 24. Nf6+ Nxf6 25. Qxf6 Qc6 26. e4
+Re6 27. Qf4 Rd8 28. Rfd1 a5 29. h4 h5 30. d7 Re7 31. g4 Rexd7 32. gxh5 Rxd2
+33. Rxd2 Rxd2 34. Qxd2 gxh5 35. Qg5+ Qg6 36. Qxg6+ fxg6 37. f4 b4 38. axb4
+axb4 39. Kf2 c3 40. b3 Kf7 41. Ke3 Bc8 1-0
+
+[White "Petrosian"]
+[Black "Szabo"]
+[Result "1-0"]
+
+1. c4 Nf6 2. Nc3 c5 3. Nf3 d5 4. cxd5 Nxd5 5. g3 Nxc3 6. bxc3 g6 7. Qa4+
+Nd7 8. h4 h6 9. Rb1 Bg7 10. Bg2 O-O 11. c4 e5 12. d3 Nb6 13. Qc2 Bd7 14.
+Be3 Qe7 15. Nd2 f5 16. Nb3 Rac8 17. Bxb7 Rc7 18. Bg2 f4 19. Bc1 Bc6 20.
+Bxc6 Rxc6 21. Nd2 fxg3 22. fxg3 Nc8 23. Rb8 Nd6 24. Rxf8+ Qxf8 25. e4 Qc8
+26. Nf1 h5 27. Ne3 Ra6 28. Nd5 Qg4 29. Qg2 Nxc4 30. dxc4 Rxa2 31. Qxa2
+Qxe4+ 32. Qe2 Qxh1+ 33. Qf1 Qh2 34. Be3 Qxg3+ 35. Qf2 Qh3 36. Kd2 e4 37.
+Nf6+ Kh8 38. Nxe4 Qe6 39. Kd3 Qd7+ 40. Ke2 Qe6 41. Nd2 1-0
+
+[White "Stahlberg"]
+[Black "Szabo"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. Qb3 dxc4 6. Qxc4 O-O 7. e4 Bg4
+8. Be3 Nfd7 9. Qb3 c5 10. d5 Na6 11. Nd2 e6 12. d6 Bd4 13. Bxa6 bxa6 14.
+Nc4 Rb8 15. Qc2 e5 16. Nd5 Qh4 17. O-O Be6 18. g3 Qh5 19. f3 Bxd5 20. exd5
+Nb6 21. Bxd4 exd4 22. Nxb6 Rxb6 23. Rac1 Rxd6 24. Qxc5 Rxd5 25. Qxa7 d3 26.
+Qe3 d2 27. Rcd1 Rfd8 28. g4 Qh4 29. Rf2 Rd3 30. Qf4 Qe7 31. Qa4 Qf6 32. Qb4
+Qg5 33. Kg2 R3d4 34. Qb3 h5 35. h3 h4 36. f4 Qe7 37. Rf3 Rd3 38. Rxd3 Qe2+
+39. Kg1 Rxd3 40. Qb8+ Kh7 0-1
+
+[White "Reshevsky"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 d5 6. Nf3 O-O 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 dxc4 10. Bxc4 Qc7 11. Re1 e5 12. d5 e4 13. dxc6 exf3 14.
+Qxf3 Bg4 15. Qg3 Qxc6 16. e4 Bh5 17. e5 Nd5 18. a4 a6 19. a5 b5 20. axb6
+Nxb6 21. Rxa6 Rxa6 22. Bxa6 c4 23. Qh4 Ra8 24. Be3 h6 25. Qxh5 Rxa6 26. Bd4
+Nd5 27. Qg4 Qe6 28. Qf3 Ne7 29. h3 Qd5 30. Qxd5 Nxd5 31. g3 Nc7 32. Rb1 Ne6
+33. Rb8+ Kh7 34. Rc8 Ra4 35. Be3 Ng5 36. Kg2 Ne4 37. Bd4 Nd2 38. e6 fxe6
+39. Rc7 Kg6 40. g4 1-0
+
+[White "Tukmakov"]
+[Black "Korchnoi"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. Qe2 Be7 10. Rd1 O-O 11. c4 bxc4 12. Bxc4 Bc5 13. Be3 Bxe3 14.
+Qxe3 Qb8 15. Bb3 Qb6 16. Qxb6 cxb6 17. Na3 Rfd8 18. Nc2 Na5 19. Nb4 Nc4 20.
+Bxc4 dxc4 21. Nxa6 Rxd1+ 22. Rxd1 h6 23. Nb4 Ra4 24. a3 c3 25. bxc3 Rxa3
+26. h3 Rxc3 27. Rd8+ Kh7 28. Rb8 Bxh3 29. Rxb6 Be6 30. Nd4 Rc1+ 31. Kh2
+Nxf2 32. Nxe6 fxe6 33. Rxe6 h5 34. g3 Rb1 35. Nd5 Rb2 36. Rb6 Re2 37. Nf4
+Ng4+ 38. Kg1 Rxe5 39. Kg2 Nf6 0-1
+
+[White "Bronstein"]
+[Black "Najdorf"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Bg5 c5 6. d5 Na6 7. Bd3 Nc7 8.
+Nge2 a6 9. a4 Rb8 10. O-O O-O 11. Qc2 Bd7 12. h3 b5 13. f4 Nfe8 14. axb5
+axb5 15. Ra7 bxc4 16. Bxc4 Ra8 17. Rxa8 Nxa8 18. Qb3 f6 19. Bh4 Qb6 20. Qa3
+Nec7 21. b3 Nb5 22. Nxb5 Bxb5 23. f5 Bh6 24. fxg6 hxg6 25. e5 Bxc4 26. bxc4
+dxe5 27. Qd3 Kh7 28. Nc3 Qb3 29. Rb1 e4 30. Rxb3 exd3 31. Rb7 Kg8 32. Kf2
+Bf4 33. Kf3 Rb8 34. Rxb8+ Bxb8 35. Na4 Bd6 36. Bf2 Kf7 37. Ke3 Nc7 38. Kxd3
+Na6 39. Ke4 f5+ 40. Kf3 e6 41. Nb6 1/2-1/2
+
+[White "Tukmakov"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nc6 5. Nc3 d6 6. Be2 Nf6 7. Be3 Be7
+8. f4 Bd7 9. Nb3 O-O 10. O-O Qc7 11. Qe1 a6 12. a4 Nb4 13. Bd1 d5 14. e5
+Ne4 15. a5 Rac8 16. Bb6 Qc4 17. Rf3 f5 18. Kh1 Rce8 19. Nxe4 dxe4 20. Rc3
+Qd5 21. Bc5 b6 22. axb6 Qb7 23. Na5 Qb8 24. Bxe7 Rxe7 25. Rb3 Nd5 26. g3
+Ree8 27. Nc4 g5 28. Nd6 gxf4 29. c4 f3 30. cxd5 exd5 31. Qc3 Bb5 32. Qd4
+Re7 33. Rxb5 axb5 34. Bb3 Kh8 35. Bxd5 Rg7 36. Ra7 f4 37. e6 Qxa7 38. bxa7
+fxg3 39. hxg3 f2 40. Nf7+ Kg8 41. Qxf2 1-0
+
+[White "Sveshnikov"]
+[Black "Beliavsky"]
+[Result "0-1"]
+
+1. Nf3 c5 2. c4 g6 3. d4 cxd4 4. Nxd4 Nc6 5. e4 Nf6 6. Nc3 Nxd4 7. Qxd4 d6
+8. Be3 Bg7 9. f3 O-O 10. Qd2 Be6 11. Rc1 Qa5 12. Nd5 Qxa2 13. Nxe7+ Kh8 14.
+Bd4 Rae8 15. Qc3 Nh5 16. Bxg7+ Nxg7 17. b3 Qa6 18. Nd5 Bxd5 19. cxd5 Qb6
+20. Kd1 f5 21. Bd3 Kg8 22. Rc2 fxe4 23. fxe4 Nh5 24. Re1 Nf6 25. e5 Ng4 26.
+e6 Ne3+ 27. Kc1 Nxc2 28. Bxc2 Rc8 29. Qd3 Qa5 30. Kd1 Rf5 31. b4 Qa1+ 32.
+Kd2 Rxc2+ 33. Qxc2 Rxd5+ 34. Ke2 Re5+ 35. Kf3 Qxe1 0-1
+
+[White "Euwe"]
+[Black "Smyslov"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
+c3 d6 9. h3 Na5 10. Bc2 c5 11. d4 Qc7 12. Nbd2 Nc6 13. dxc5 dxc5 14. Nf1
+Be6 15. Ne3 Rad8 16. Qe2 g6 17. Ng5 Bc8 18. Bd2 Kg7 19. Rad1 h6 20. Nf3 Be6
+21. a4 Qb8 22. Bc1 Rxd1 23. Rxd1 Rd8 24. Rxd8 Bxd8 25. axb5 axb5 26. Nd5
+Ng8 27. Be3 c4 28. b3 Na5 29. Nxe5 cxb3 30. Bb1 Qb7 31. Bd4 Kh7 32. Nf4 Bc4
+33. Nexg6 fxg6 34. Nxg6 Kxg6 35. e5+ Kf7 36. Qh5+ Kf8 37. f4 Bb6 38. Qf5+
+Ke7 39. Qh7+ Kd8 40. Bxb6+ Qxb6+ 41. Kh2 Qe3 42. Qf5 Nc6 0-1
+
+[White "Keres"]
+[Black "Boleslavsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 d6 3. Nc3 e5 4. Nf3 Nbd7 5. Bg5 h6 6. Bh4 g5 7. dxe5 gxh4
+8. exf6 Qxf6 9. Nd5 Qxb2 10. Rb1 Qxa2 11. Nxc7+ Kd8 12. Nxa8 Nc5 13. Ra1
+Qb2 14. Qd4 Qxd4 15. Nxd4 Bg7 16. e3 Re8 17. Be2 Bxd4 18. exd4 Nb3 19. Rxa7
+Nxd4 20. Ra2 h3 21. Rg1 Rg8 22. g4 1-0
+
+[White "Petrosian"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. c4 c5 2. b3 Nc6 3. Bb2 Nf6 4. e3 e6 5. Nf3 d5 6. cxd5 exd5 7. Be2 a6 8.
+d4 cxd4 9. Nxd4 Bb4+ 10. Bc3 Bd6 11. Nd2 O-O 12. O-O Bc7 13. Nxc6 bxc6 14.
+Qc2 Re8 15. Bd4 Qd6 16. g3 Bg4 17. Bxg4 Nxg4 18. Nf3 Qh6 19. Qf5 Qe6 20.
+Qxe6 Rxe6 21. Rac1 f6 22. Rc2 Ne5 23. Bxe5 Bxe5 24. Rfc1 Rc8 25. Rc5 Rd6
+26. R1c2 Kf7 27. Kf1 Ke6 28. Ne1 d4 29. f4 d3 30. Rd2 Bb2 31. Rxd3 Ra8 32.
+Rxd6+ Kxd6 33. Nd3 a5 34. Rc4 Ba3 35. Ra4 Bc5 36. Nxc5 Kxc5 37. b4+ Kc4 38.
+Rxa5 Rb8 39. a3 Kd3 40. Kf2 Rb7 41. Rc5 Ra7 42. Rxc6 Rxa3 43. Kf3 1-0
+
+[White "Smyslov"]
+[Black "Savon"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be2 e5 7. Nb3 Be7 8.
+O-O O-O 9. Be3 Be6 10. f4 Qc7 11. f5 Bc4 12. a4 Nbd7 13. a5 b5 14. axb6
+Nxb6 15. Kh1 Rfc8 16. Ra2 Rab8 17. Bg5 Bxe2 18. Qxe2 Qc4 19. Qf3 Nbd7 20.
+Rfa1 d5 21. exd5 Bb4 22. Nd2 Qd4 23. Be3 Qh4 24. Bf2 Qh6 25. Nde4 Bxc3 26.
+bxc3 Nxe4 27. Qxe4 Qd2 28. Be1 Nf6 29. Qxe5 Qxd5 30. Qxd5 Nxd5 31. Rxa6
+Nxc3 32. Bg3 Rb1+ 33. Rxb1 Nxb1 34. Rb6 Na3 35. c3 Nc4 36. Rb5 f6 37. Bf4
+Ne5 38. Bxe5 fxe5 39. Rxe5 Rxc3 40. h3 Kf7 1/2-1/2
+
+[White "Euwe"]
+[Black "Kotov"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 c5 3. d5 e6 4. Nc3 exd5 5. cxd5 d6 6. Nf3 g6 7. g3 Bg7 8.
+Bg2 O-O 9. O-O a6 10. a4 Nbd7 11. Nd2 Re8 12. a5 b5 13. axb6 Nxb6 14. Nb3
+Qc7 15. Na5 Bd7 16. h3 Bb5 17. Be3 Nfd7 18. Qb3 Nf6 19. Rfc1 Bd7 20. Qd1
+Rxe3 21. fxe3 Bh6 22. Qd3 Re8 23. Kh2 Rxe3 24. Qxa6 Re5 25. Rf1 Bc8 26. Qb5
+Bd7 27. Nc6 Kg7 28. Ra6 Nc8 29. Qb8 Qxb8 30. Nxb8 Bf5 31. Rc6 Re8 32. e4
+Bd7 33. e5 Rxe5 34. Nxd7 Nxd7 35. Rxc8 Re3 36. Rc6 Ne5 37. Rxd6 Rd3 38. Rd1
+Re3 39. Rc6 1-0
+
+[White "Korchnoi"]
+[Black "Karpov"]
+[Result "0-1"]
+
+1. Nf3 Nf6 2. g3 b5 3. c3 Bb7 4. a4 a6 5. e3 Nc6 6. d4 e6 7. b4 Be7 8. Nbd2
+Na7 9. Bd3 O-O 10. e4 d6 11. O-O c5 12. bxc5 dxc5 13. Bb2 Nc6 14. e5 Nd5
+15. axb5 axb5 16. Qb1 cxd4 17. cxd4 h6 18. Bxb5 Qb6 19. Be2 Rxa1 20. Bxa1
+Qa7 21. Nc4 Rb8 22. Bb2 Ba6 23. Qc2 Qb7 24. Ba1 Ncb4 25. Qd2 Rc8 26. Ne3
+Nxe3 27. Qxe3 Bxe2 28. Qxe2 Rc2 29. Qd1 Qc6 30. h3 Nd5 31. Qd3 Qa4 32. Nd2
+Ra2 33. Nb3 Nb4 34. Qb1 Nd5 35. Rc1 Qa8 36. Rc8+ Qxc8 37. Qxa2 Qc4 38. Qb1
+Qe2 39. Qc1 Bg5 40. Qf1 Qf3 41. h4 0-1
+
+[White "Spassky"]
+[Black "Rashkovsky"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Qc7 8.
+Bd3 Nbd7 9. Qe2 b5 10. O-O-O Bb7 11. Rhe1 Be7 12. e5 dxe5 13. fxe5 Nd5 14.
+Bxe7 Nxc3 15. Qg4 Nxd1 16. Nxe6 Qc6 17. Nxg7+ Kxe7 18. Qg5+ f6 19. exf6+
+Kd8 20. f7+ Kc7 21. Qf4+ 1-0
+
+[White "Geller"]
+[Black "Tal"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e6 5. Nc3 a6 6. Be2 Qc7 7. O-O Nf6
+8. Be3 Bb4 9. Na4 O-O 10. Nxc6 bxc6 11. f4 Rb8 12. Bd3 Be7 13. c4 d6 14.
+Rc1 c5 15. b3 Bb7 16. Nc3 Rbd8 17. Bb1 Rfe8 18. Qf3 Bc6 19. Qh3 h6 20. f5
+exf5 21. Qxf5 Qd7 22. Qf3 Qg4 23. Rcd1 Bf8 24. h3 Qh4 25. Nd5 Bxd5 26. exd5
+Re7 27. Bf4 Qh5 28. Qxh5 Nxh5 29. Bh2 Re2 30. Rfe1 Rb2 31. g4 Nf6 32. Bf4
+Re8 33. Rxe8 Nxe8 34. Bd2 Be7 35. Bc3 Re2 36. Re1 Rxe1+ 37. Bxe1 Bd8 38. a3
+a5 39. Bf5 Nf6 40. Kg2 Kf8 41. Kf3 Ke7 42. Bc3 1/2-1/2
+
+[White "Taimanov"]
+[Black "Euwe"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 d5 6. Nf3 O-O 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 dxc4 10. Bxc4 Qc7 11. Ba2 e5 12. Qc2 Bg4 13. d5 Ne7 14. c4
+Bxf3 15. gxf3 Qd7 16. Bb1 Ng6 17. Qf5 Qxf5 18. Bxf5 Nh4 19. Be4 Nxe4 20.
+fxe4 f5 21. exf5 e4 22. f4 exf3 23. e4 Rae8 24. Bg5 Rxe4 25. Bxh4 Rxh4 26.
+Rxf3 Rxc4 27. Re1 Rg4+ 28. Kf2 Rd4 29. Re7 Rxd5 30. f6 Rxf6 31. Rxf6 gxf6
+32. Rxb7 a5 33. Rb5 a4 34. Ra5 Rd4 35. Rxc5 Rd3 36. Ra5 Rxa3 37. Ra7 Ra1
+38. Kg3 a3 39. Kg4 a2 40. Kh5 f5 41. Kh6 f4 0-1
+
+[White "Bronstein"]
+[Black "Euwe"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 d5 6. Nf3 O-O 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 dxc4 10. Bxc4 Qc7 11. Bd3 e5 12. Qc2 Re8 13. e4 exd4 14.
+cxd4 Bg4 15. Qxc5 Nxe4 16. Bxe4 Rxe4 17. Ng5 Re7 18. Qc2 g6 19. Ne4 Bf5 20.
+Nf6+ Kg7 21. Qd2 Kxf6 22. d5 Rd8 23. Bb2+ Ne5 24. f4 Qc5+ 25. Kh1 Rxd5 26.
+fxe5+ Ke6 27. Qg5 Kd7 28. Rac1 Qb6 29. Bc3 Re8 30. Bb4 Rexe5 31. Qh4 a5 32.
+Be1 h5 33. Bf2 Qa6 34. Bg3 Re4 35. Rxf5 Rxh4 36. Rxd5+ Ke6 37. Rcd1 Qc4 38.
+Rd6+ Ke7 39. Rd7+ Kf6 40. Bxh4+ Qxh4 41. Rf1+ Kg5 1/2-1/2
+
+[White "Gligoric"]
+[Black "Szabo"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. c3 Be7 10. Be3 Nc5 11. Bc2 Bg4 12. Nbd2 Ne6 13. Qb1 Bh5 14. a4
+b4 15. a5 Bg6 16. Nb3 bxc3 17. bxc3 Qb8 18. Qa2 O-O 19. Bxg6 hxg6 20. Rab1
+Qb5 21. Qc2 Qc4 22. Nfd2 Qg4 23. f4 Qf5 24. Qxf5 gxf5 25. Nf3 Rfb8 26. Nfd4
+Ncxd4 27. Nxd4 Nxd4 28. cxd4 Bb4 29. Ra1 Rb5 30. Ra4 Rab8 31. Rfa1 Bc3 32.
+Rc1 Rb1 33. Rxb1 Rxb1+ 34. Kf2 Ra1 35. Rxa1 Bxa1 36. Ke2 Bc3 37. Kd3 Bxa5
+38. h3 Be1 39. g4 g6 40. Kc2 Kf8 41. Kd1 Bg3 0-1
+
+[White "Smyslov"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 e6 3. Nc3 Nf6 4. Bg5 c6 5. e3 Nbd7 6. cxd5 exd5 7. Bd3 Be7
+8. Nf3 O-O 9. Qc2 Re8 10. O-O Nf8 11. Rab1 Ng6 12. b4 Bd6 13. b5 Bd7 14.
+bxc6 Bxc6 15. Qb3 Be7 16. Bxf6 Bxf6 17. Bb5 Qd6 18. Rfc1 h5 19. Ne2 h4 20.
+Bxc6 bxc6 21. Qa4 Ne7 22. Rb7 a5 23. h3 Reb8 24. Rcb1 Rxb7 25. Rxb7 c5 26.
+Rb5 cxd4 27. Nexd4 Rc8 28. Nb3 Bc3 29. Qxh4 Rc4 30. g4 a4 31. Nbd4 Bxd4 32.
+Nxd4 Qe5 33. Nf3 Qd6 34. Ra5 Rc8 35. Rxa4 Ng6 36. Qh5 Qf6 37. Qf5 Qc6 38.
+Ra7 Rf8 39. Rd7 d4 40. Rxd4 Ra8 41. a4 1-0
+
+[White "Keres"]
+[Black "Averbakh"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Bd3 d5 6. Nf3 c5 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 b6 10. Ne5 Bb7 11. f4 Na5 12. cxd5 Qxd5 13. Qe2 cxd4 14.
+exd4 Nb3 15. Rb1 Nxc1 16. Rbxc1 Rac8 17. Qb2 Qd6 18. f5 exf5 19. Bxf5 Rc7
+20. c4 Rd8 21. Rf4 g5 22. Rf2 Qxd4 23. Qxd4 Rxd4 24. Rcf1 Rd6 25. h4 gxh4
+26. Rf4 Rc5 27. Ng4 Nxg4 28. Rxg4+ Kf8 29. Bxh7 Ba6 30. Rff4 Rh6 31. Bd3 h3
+32. gxh3 Rxh3 33. Rd4 Bc8 34. Rd8+ Ke7 35. Rgd4 Be6 36. Kg2 Rg5+ 37. Kf2
+Ra5 38. Rb8 Rxa3 39. Be2 Rh2+ 40. Ke1 Ra1+ 41. Rd1 Rxe2+ 0-1
+
+[White "Sveshnikov"]
+[Black "Rashkovsky"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. Nc3 e5 4. Bc4 Nc6 5. d3 Be7 6. O-O Nf6 7. Ng5 O-O 8.
+f4 a6 9. a4 Rb8 10. Qe1 Nd4 11. fxe5 dxe5 12. Qf2 b5 13. axb5 axb5 14.
+Bxf7+ Rxf7 15. Nxf7 Kxf7 16. Nd5 Bb7 17. Nxe7 Qxe7 18. Bg5 Rf8 19. Qh4 Kg8
+20. Rf2 Ne6 21. Bxf6 gxf6 22. Raf1 Nf4 23. g3 Qg7 24. Kh1 Ng6 25. Qh5 c4
+26. Qe2 cxd3 27. cxd3 Qe7 28. h4 Qe6 29. h5 Ne7 30. g4 h6 31. Rg2 Rf7 32.
+Qf2 Nc6 33. Qf5 Qxf5 34. gxf5+ Kf8 35. Kg1 Nb4 36. Rf3 1/2-1/2
+
+[White "Smyslov"]
+[Black "Spassky"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nf6 5. Bd3 Nc6 6. Nxc6 dxc6 7. Bf4
+Nd7 8. Nd2 e5 9. Bg3 Bd6 10. Nc4 Bc7 11. Qf3 O-O 12. O-O Qe7 13. c3 Nc5 14.
+Bc2 a5 15. Rfd1 f6 16. Ne3 g6 17. h4 Be6 18. h5 a4 19. Bh4 Qg7 20. Ng4 gxh5
+21. Nxf6+ Kh8 22. Qe3 Bb6 23. Nxh5 Qg6 24. Qg5 Qxg5 25. Bxg5 Bg4 26. Nf6
+Bxd1 27. Rxd1 h6 28. Bh4 Bd8 29. Rxd8 Raxd8 30. b4 Rd2 31. bxc5 Rxc2 32.
+Nd7 Rf4 33. Bf6+ Rxf6 0-1
+
+[White "Keres"]
+[Black "Tukmakov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 e6 3. b3 d6 4. Bb2 e5 5. Bc4 Be7 6. O-O Nc6 7. Nc3 Bg4 8.
+Nd5 Nf6 9. Re1 Nxd5 10. Bxd5 O-O 11. c3 Bf6 12. h3 Bh5 13. Qe2 Qd7 14. Nxe5
+Nxe5 15. Qxh5 Nd3 16. Re3 Nf4 17. Qg4 Qxg4 18. hxg4 Nxd5 19. exd5 b5 20.
+Rb1 Rfb8 21. d3 a5 22. c4 Bxb2 23. Rxb2 bxc4 24. dxc4 Re8 25. Rxe8+ Rxe8
+26. Kf1 h6 27. Re2 Ra8 28. Re7 a4 29. Rd7 axb3 30. axb3 Ra6 31. Ke2 Kf8 32.
+Rb7 Ra2+ 33. Ke3 Rb2 34. g3 Ke8 35. f4 Rg2 36. Kf3 Rc2 37. f5 Rc1 38. Ke3
+Rg1 39. Kf2 Rc1 40. Kf3 Rf1+ 41. Kg2 1/2-1/2
+
+[White "Savon"]
+[Black "Korchnoi"]
+[Result "0-1"]
+
+1. e4 d6 2. d4 Nf6 3. Nc3 g6 4. f4 Bg7 5. Nf3 c5 6. Bb5+ Bd7 7. Bxd7+ Nfxd7
+8. d5 Na6 9. O-O O-O 10. Qe2 Nc7 11. Rd1 b5 12. Nxb5 Nxb5 13. Qxb5 Rb8 14.
+Qe2 Bxb2 15. Bxb2 Rxb2 16. e5 Nb6 17. Ng5 dxe5 18. fxe5 Nxd5 19. e6 f6 20.
+Nxh7 Kxh7 21. Qc4 Kg7 22. Rxd5 Rxc2 23. Rxd8 Rxc4 24. Rd7 Re8 25. Rxa7 f5
+26. Re1 Rc2 27. Kf1 Kf6 28. Re2 Rxe2 29. Kxe2 Kxe6 30. Ra6+ Kd5 31. Rxg6
+Ra8 32. h4 Rxa2+ 33. Kf3 e5 34. Rg8 Ra3+ 35. Kf2 c4 36. h5 Ra6 37. Rd8+ Ke4
+38. Rc8 Kd3 39. g4 fxg4 40. Kg3 Rd6 41. Kxg4 c3 42. Kg5 c2 43. h6 Rd7 44.
+Kg6 0-1
+
+[White "Reshevsky"]
+[Black "Petrosian"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Bd3 d5 6. Nf3 c5 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 b6 10. cxd5 exd5 11. Bb2 c4 12. Bc2 Bg4 13. Qe1 Ne4 14. Nd2
+Nxd2 15. Qxd2 Bh5 16. f3 Bg6 17. e4 Qd7 18. Rae1 dxe4 19. fxe4 Rfe8 20. Qf4
+b5 21. Bd1 Re7 22. Bg4 Qe8 23. e5 a5 24. Re3 Rd8 25. Rfe1 Re6 26. a4 Ne7
+27. Bxe6 fxe6 28. Qf1 Nd5 29. Rf3 Bd3 30. Rxd3 cxd3 31. Qxd3 b4 32. cxb4
+axb4 33. a5 Ra8 34. Ra1 Qc6 35. Bc1 Qc7 36. a6 Qb6 37. Bd2 b3 38. Qc4 h6
+39. h3 b2 40. Rb1 Kh8 41. Be1 1/2-1/2
+
+[White "Najdorf"]
+[Black "Kotov"]
+[Result "1-0"]
+
+1. e4 c6 2. d4 d5 3. Nc3 dxe4 4. Nxe4 Bf5 5. Ng3 Bg6 6. Nf3 Nd7 7. Bd3 Ngf6
+8. O-O e6 9. Re1 Be7 10. c4 O-O 11. Bxg6 hxg6 12. Bf4 Re8 13. Qc2 c5 14.
+Rad1 cxd4 15. Nxd4 Bb4 16. Bd2 Bxd2 17. Qxd2 a6 18. b4 Qc7 19. Rc1 Rad8 20.
+Qc3 Nb6 21. Nf3 Qf4 22. Qe3 Qxe3 23. Rxe3 Rc8 24. Rec3 Red8 25. Kf1 Kf8 26.
+Ke2 Ke7 27. a3 Rc7 28. R3c2 Rdc8 29. Kd3 Nfd7 30. Nf1 f5 31. Ne3 e5 32. Nd2
+e4+ 33. Ke2 Ne5 34. c5 Nd3 35. Rd1 Nf4+ 36. Kf1 Ke6 37. Nxe4 Nd7 38. Nd6
+Rh8 39. g3 Nh3 40. Nd5 Rc6 41. Re2+ 1-0
+
+[White "Smyslov"]
+[Black "Botvinnik"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. Qb3 c6 6. cxd5 Nxd5 7. e4 Nb6 8.
+Be3 Be6 9. Qc2 Bc4 10. Be2 Na6 11. O-O O-O 12. Rfd1 Qd6 13. b3 Bxe2 14.
+Nxe2 Rac8 15. Bf4 Qe6 16. Be5 f6 17. Bg3 Qf7 18. Nf4 Bh6 19. Nd3 f5 20. Nc5
+fxe4 21. Qxe4 Nxc5 22. dxc5 Nd5 23. Re1 Rce8 24. Be5 Bf4 25. Bb2 Qf5 26.
+Qc4 e5 27. Re4 Qf7 28. Rae1 Nf6 29. Qxf7+ Rxf7 30. R4e2 Nd7 31. b4 a5 32.
+a3 axb4 33. axb4 Rfe7 34. g3 Bh6 35. Nxe5 Bg7 36. f4 Nf6 37. Kf2 Nd5 38.
+Re4 Nf6 39. R4e3 Nd5 40. Rb3 g5 41. Kf3 Rf8 42. Re4 Nf6 43. Re2 Nd5 44. Re4
+Nf6 1/2-1/2
+
+[White "Botvinnik"]
+[Black "Reshevsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 d5 5. a3 Be7 6. Nf3 O-O 7. b4 Nbd7 8.
+Bb2 c6 9. Bd3 dxc4 10. Bxc4 Bd6 11. Ne2 a5 12. b5 Nb6 13. Bd3 cxb5 14. Bxb5
+Bd7 15. Qb3 a4 16. Qd3 Ra5 17. Nc3 Qe8 18. Bxd7 Qxd7 19. O-O Rc8 20. e4 Nc4
+21. Bc1 e5 22. Rd1 exd4 23. Qxd4 Qe6 24. Ra2 h6 25. h3 Ra6 26. Nd5 Nxe4 27.
+Re2 f5 28. g4 Bc5 29. gxf5 Qxf5 30. Qxe4 Qxh3 31. Nh2 Rcc6 32. Nf4 1-0
+
+[White "Geller"]
+[Black "Grigorian"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bg5 e6 7. f4 Be7 8.
+Qf3 Qc7 9. O-O-O Nbd7 10. Bd3 b5 11. Rhe1 Bb7 12. Qg3 b4 13. Nd5 exd5 14.
+exd5 Kd8 15. Qe3 Re8 16. Nf5 Nxd5 17. Qe2 N7b6 18. Qh5 Bxg5 19. Qxg5+ f6
+20. Rxe8+ Kxe8 21. Nxg7+ Kf7 22. Qh6 Rg8 23. Re1 Nxf4 24. Nf5 Nxd3+ 25. Kb1
+Nxe1 26. Qxh7+ Ke6 27. Nd4+ Ke5 28. Qxc7 Be4 29. Qxb6 Rxg2 30. Kc1 Rxh2 31.
+Qxb4 Nxc2 32. Nxc2 Rxc2+ 33. Kd1 f5 34. Qa5+ d5 35. b4 Bd3 36. a4 f4 37.
+Qd8 f3 38. Qh8+ Ke4 39. Qh4+ Ke3 40. Qg5+ Kd4 41. Qf6+ Ke3 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Kotov"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 d6 3. Nc3 Nbd7 4. Nf3 g6 5. e4 e5 6. Be2 Bg7 7. O-O O-O 8.
+Re1 c6 9. Bf1 Ne8 10. Rb1 Nc7 11. b4 c5 12. dxc5 dxc5 13. Ba3 Ne6 14. bxc5
+Re8 15. Nb5 Ndxc5 16. Qd5 Na4 17. Rb3 Nb6 18. Qd1 Bd7 19. c5 Nc8 20. Rd3
+Nd4 21. Nbxd4 exd4 22. Nxd4 Qa5 23. Nb3 Qxa3 24. Rxd7 Ne7 25. Rxb7 Qxa2 26.
+Bb5 Red8 27. Qf3 Bf8 28. Bc4 Qb2 29. Qxf7+ Kh8 30. e5 Qc3 31. Kf1 Rab8 32.
+c6 Rbc8 33. Be6 Qd3+ 34. Kg1 Qe2 35. Qxf8+ Rxf8 36. Rxe2 Rxc6 37. Rxe7 a5
+38. h4 a4 39. Nd4 Rc1+ 40. Kh2 Rd1 41. Nb5 Rb1 42. Nd6 1-0
+
+[White "Tukmakov"]
+[Black "Karpov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 a6 5. Bd3 Nf6 6. O-O Qc7 7. Nd2 Nc6
+8. Nxc6 bxc6 9. f4 d5 10. b3 Be7 11. Bb2 a5 12. c4 O-O 13. Qc2 h6 14. Kh1
+Qb6 15. Rae1 Ng4 16. exd5 cxd5 17. cxd5 Nf2+ 18. Rxf2 Qxf2 19. Re2 Qxf4 20.
+Re4 Qd6 21. Nc4 Qxd5 22. Rg4 e5 23. Rg3 Ra6 24. Nxe5 Bf6 25. Bc4 Qd6 26.
+Nxf7 Rxf7 27. Bxf6 Be6 28. Rd3 Qc7 29. Rd8+ Qxd8 30. Bxd8 Bxc4 31. h3 Bf1
+32. Qe4 a4 33. bxa4 Rd6 34. Ba5 Rdf6 35. Be1 Ba6 36. Kh2 Bb7 37. Qc4 Rc6
+38. Qb3 Rg6 39. Bg3 Rg5 40. Qc4 Bd5 41. Qc8+ Rf8 42. Qc2 h5 43. a5 1/2-1/2
+
+[White "Savon"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. Nf3 c5 2. c4 g6 3. d4 Bg7 4. d5 d6 5. e4 Nf6 6. Nc3 O-O 7. Be2 e6 8. O-O
+Re8 9. Nd2 Na6 10. Kh1 Nc7 11. a4 b6 12. f4 exd5 13. cxd5 Ba6 14. Re1 Bxe2
+15. Rxe2 Ng4 16. h3 Qh4 17. Qf1 f5 18. Nf3 Qh5 19. e5 dxe5 20. fxe5 Nxe5
+21. d6 Nxf3 22. dxc7 Nd4 23. Rxe8+ Rxe8 24. Qc4+ Kh8 25. Bf4 Qh4 26. Rf1
+Qe7 27. Nb5 Nxb5 28. Qxb5 Qe6 29. Rd1 Bd4 30. b4 Kg7 31. bxc5 bxc5 32. Qb7
+Rc8 33. Bg3 g5 34. Re1 Qd7 35. Bd6 Kg6 36. Qd5 Rxc7 37. Re6+ Kg7 38. Qxf5
+Qd8 39. Bxc7 Qxc7 40. Qxg5+ Kf7 41. Qf5+ Kg7 42. Re4 Bf6 43. Rg4+ 1-0
+
+[White "Keres"]
+[Black "Botvinnik"]
+[Result "1-0"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Bb4 4. Bd2 dxe4 5. Qg4 Nf6 6. Qxg7 Rg8 7. Qh6 Nc6
+8. O-O-O Rg6 9. Qh4 Bxc3 10. Bxc3 Qd5 11. b3 Ne7 12. f3 Bd7 13. Bb2 Bc6 14.
+c4 Qf5 15. d5 exd5 16. fxe4 dxe4 17. Nh3 Ng4 18. Qg3 Qc5 19. Qxc7 Rc8 20.
+Qf4 Qe3+ 21. Rd2 Qxf4 22. Nxf4 e3 23. Rc2 Rg5 24. Be2 Nf2 25. Re1 Rd8 26.
+g3 Rf5 27. Bf1 Rxf4 28. gxf4 Nd3+ 29. Bxd3 Rxd3 30. Rc3 Rxc3+ 31. Bxc3 Nf5
+32. Bd2 Kd7 33. Bxe3 b6 34. Bf2 f6 35. Kd2 h5 36. Kd3 Nh6 37. Bh4 f5 38.
+Re7+ Kd6 39. h3 1-0
+
+[White "Keres"]
+[Black "Reshevsky"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. Bd3 O-O 6. a3 Bxc3+ 7. bxc3 b6 8.
+e4 Bb7 9. Bg5 h6 10. h4 d6 11. e5 dxe5 12. dxe5 Be4 13. Rh3 Bxd3 14. Rxd3
+Qc7 15. Bxf6 gxf6 16. Qg4+ Kh8 17. Qf3 Nd7 18. O-O-O Nxe5 19. Qxf6+ Kh7 20.
+Rd6 Nxc4 21. Nf3 Nxd6 22. Ng5+ Kg8 23. Qxh6 f6 24. Nxe6 Qe7 25. Rxd6 Rf7
+26. Qd2 Re8 27. f4 f5 28. Qd5 Kh8 29. Qe5+ Qf6 30. Kc2 c4 31. Kd2 Kg8 32.
+Qd5 Qxh4 33. Qxc4 Qf2+ 34. Kc1 Qg1+ 35. Kc2 Qxg2+ 36. Kb3 b5 37. Qd4 Qf1
+38. Kb4 Qc4+ 39. Qxc4 bxc4 40. Kxc4 Rc8+ 41. Kb5 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Stahlberg"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 e6 3. Nc3 c5 4. cxd5 exd5 5. Nf3 Nc6 6. g3 c4 7. Bg2 Bb4 8.
+O-O Nge7 9. e4 dxe4 10. Nxe4 O-O 11. Qc2 Qd5 12. Be3 Ng6 13. Nh4 Qb5 14.
+Nxg6 hxg6 15. a3 Be7 16. d5 Na5 17. d6 Bd8 18. Nc3 Qa6 19. Rad1 Bg4 20. Rd4
+Bf5 21. Qa4 Rb8 22. Rd5 Be6 23. Re5 b6 24. d7 b5 25. Rxb5 Rxb5 26. Qxb5
+Qxb5 27. Nxb5 a6 28. Nc3 Bxd7 29. Rd1 Bc8 30. Ne4 Be7 31. Bc5 Bxc5 32. Nxc5
+Bf5 33. Nxa6 Re8 34. Bf3 Nb3 35. Kg2 Bc2 36. Rd7 Bf5 37. Rd1 Bc2 38. Rd7
+Bf5 39. Rd6 Be6 40. Nc7 Re7 41. Nxe6 1-0
+
+[White "Szabo"]
+[Black "Najdorf"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Nf3 d5 6. a3 Bxc3+ 7. bxc3 b6 8.
+cxd5 exd5 9. Bd3 c5 10. O-O Nc6 11. a4 c4 12. Bc2 Ne4 13. Qe1 Re8 14. Bb2
+Bf5 15. Nd2 Qg5 16. Nxe4 Bxe4 17. Bxe4 Rxe4 18. Ba3 Rg4 19. g3 Re4 20. Rb1
+Rae8 21. Rb5 Qd8 22. Qe2 a6 23. Rb2 Na5 24. Rfb1 R4e6 25. Kg2 h6 26. Qh5
+Nb3 27. Re2 Qd7 28. Bb2 Kh7 29. h3 g6 30. Qf3 Re4 31. g4 f5 32. gxf5 gxf5
+33. Rg1 Rg8+ 34. Kh1 Rxg1+ 35. Kxg1 Re7 36. Kh1 Qe6 37. Qf4 Rg7 38. Kh2 Qg6
+39. Qg3 Qh5 40. Qf4 Qg6 41. Qg3 Qe8 42. Qf4 Qe4 43. f3 Qd3 1/2-1/2
+
+[White "Szabo"]
+[Black "Bronstein"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 d6 3. Nf3 Nbd7 4. g3 e5 5. Bg2 c6 6. dxe5 dxe5 7. O-O Bc5
+8. Nc3 O-O 9. Qc2 Qe7 10. Nh4 Re8 11. Na4 e4 12. Nf5 Qe5 13. Bh3 Bf8 14.
+Bd2 Qc7 15. Bg2 g6 16. Ne3 Qe5 17. f4 Qh5 18. h3 Qxe2 19. Rad1 Qd3 20. Qc1
+Qd6 21. g4 Qc7 22. Bc3 Bg7 23. g5 b5 24. gxf6 Bf8 25. cxb5 cxb5 26. Nd5 Qc6
+27. f5 Bb7 28. fxg6 hxg6 29. Ne7+ Bxe7 30. fxe7 b4 31. Bxb4 Qxa4 32. Bc3
+Rxe7 33. Qh6 Ne5 34. Qg5 Qe8 35. Rf4 Rc8 36. Rh4 Rxc3 37. Qh6 f6 38. bxc3
+Rg7 39. Rd8 Qxd8 40. Qh8+ Kf7 41. Qxd8 g5 42. Rh6 1-0
+
+[White "Taimanov"]
+[Black "Keres"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 d5 4. Bg5 c5 5. e3 cxd4 6. exd4 Be7 7. Nf3 O-O 8.
+Rc1 b6 9. Bd3 Nc6 10. O-O Nb4 11. cxd5 Nfxd5 12. Bxe7 Qxe7 13. Be4 Bb7 14.
+Re1 Rac8 15. Qd2 h6 16. a3 Nxc3 17. Bxb7 Qxb7 18. bxc3 Nc6 19. Qd3 Rfd8 20.
+h3 Rc7 21. Re4 Na5 22. Nd2 Qd5 23. Rg4 f5 24. Rg3 Rdc8 25. Re3 Nc4 26. Nxc4
+Rxc4 27. Qd2 Qc6 28. Rce1 Rxc3 29. Rxe6 Qc4 30. Qf4 Rc1 31. Qxf5 Qxd4 32.
+Rxc1 Rxc1+ 33. Kh2 Qd7 34. Qe4 Rc8 35. f4 Rf8 36. Qe5 Qd2 37. f5 Qa5 38.
+Qxa5 bxa5 39. g4 Rb8 1/2-1/2
+
+[White "Beliavsky"]
+[Black "Polugaevsky"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. a4 e6 7. Be2 Nc6 8.
+Be3 Be7 9. O-O Bd7 10. Nb3 Na5 11. f4 Nxb3 12. cxb3 Bc6 13. Qc2 Rc8 14. Bf3
+Qa5 15. Rfd1 O-O 16. Qf2 d5 17. exd5 exd5 18. Qd2 Bb4 19. Bd4 Ne4 20. Qe3
+Rfe8 21. Nxe4 dxe4 22. Bg4 Rcd8 23. Kh1 Rd5 24. f5 Bc5 25. Bxc5 Qxc5 26.
+Qxc5 Rxc5 27. Rac1 Rxc1 28. Rxc1 Re5 29. Kg1 Kf8 30. Kf2 e3+ 31. Kg3 Ke7
+32. Re1 Kf6 33. Kf4 h5 34. Bh3 Re4+ 35. Kf3 Rb4+ 0-1
+
+[White "Averkin"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. Nf3 d5 2. c4 d4 3. g3 g6 4. Bg2 Bg7 5. d3 a5 6. Na3 Nf6 7. Bf4 Nfd7 8.
+Qc1 O-O 9. Bh6 e5 10. O-O Re8 11. Bxg7 Kxg7 12. e3 Nc5 13. exd4 exd4 14.
+Nb5 Nc6 15. Qf4 Nxd3 16. Qxc7 Nxb2 17. c5 Qf6 18. Rab1 Na4 19. Qd6 Rd8 20.
+Qxf6+ Kxf6 21. Rbc1 Rb8 22. Rfd1 Bg4 23. h3 Bxf3 24. Bxf3 d3 25. Rc4 Ne5
+26. Rxa4 Nxf3+ 27. Kg2 Ne5 28. Nd6 b6 29. f4 Nc6 30. Rxd3 bxc5 31. Ne4+ Ke7
+32. Rxd8 Rxd8 33. Nxc5 Rd2+ 34. Kf3 f5 35. Nb3 Rd3+ 36. Kf2 Rd5 37. Ke3 Kd6
+38. Rc4 Rb5 39. Nd4 Nxd4 40. Rxd4+ Kc6 41. g4 Rb2 42. Rc4+ Kb6 43. gxf5
+1/2-1/2
+
+[White "Euwe"]
+[Black "Najdorf"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. Nc3 c5 6. d5 e5 7. Bg5 h6 8.
+Bxf6 Qxf6 9. d6 Nc6 10. e3 b6 11. Bd5 Kh8 12. Ne4 Qd8 13. h4 f5 14. Ng5 Bb7
+15. g4 e4 16. Ne2 Bxb2 17. Nf4 Qf6 18. gxf5 Bxa1 19. Nxg6+ Kg7 20. Nxe4
+Bc3+ 21. Kf1 Qxf5 22. Nf4 Kh8 23. Nxc3 Rae8 24. Nce2 Rg8 25. h5 Rg5 26. Ng3
+Rxg3 27. fxg3 Rxe3 28. Kf2 Re8 29. Re1 Rxe1 30. Qxe1 Kg7 31. Qe8 Qc2+ 32.
+Kg1 Qd1+ 33. Kh2 Qc2+ 34. Ng2 Qf5 35. Qg8+ Kf6 36. Qh8+ Kg5 37. Qg7+ 1-0
+
+[White "Keres"]
+[Black "Gligoric"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Ne2 Nf6 3. Nbc3 d6 4. g3 Nc6 5. Bg2 g6 6. d4 cxd4 7. Nxd4 Nxd4
+8. Qxd4 Bg7 9. O-O O-O 10. Qd3 Be6 11. Bd2 Qc7 12. b3 a6 13. Rac1 Rfd8 14.
+Nd5 Nxd5 15. exd5 Bf5 16. Be4 Bxe4 17. Qxe4 Bb2 18. Rce1 Bf6 19. c4 Rac8
+20. Rc1 Qd7 21. Ba5 Re8 22. Bb6 e5 23. dxe6 Rxe6 24. Qd3 Rce8 25. Be3 Qe7
+26. Rcd1 Bb2 27. Bd2 Qc7 28. Rfe1 Ba3 29. Rxe6 Rxe6 30. Re1 Bc5 31. Rxe6
+fxe6 32. b4 Bb6 33. Bf4 e5 34. Bd2 Bd4 35. Be3 Bxe3 36. fxe3 Qc6 37. Kf2 b5
+38. cxb5 axb5 39. e4 Kf7 1/2-1/2
+
+[White "Szabo"]
+[Black "Petrosian"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 d5 4. Bg5 Be7 5. e3 O-O 6. Nf3 h6 7. Bh4 b6 8.
+Bd3 Bb7 9. O-O Nbd7 10. Rc1 c5 11. Qe2 a6 12. cxd5 exd5 13. dxc5 bxc5 14.
+Rfd1 Re8 15. Bc2 Qb6 16. Bb3 c4 17. Ba4 Bc6 18. Bxc6 Qxc6 19. b3 Rac8 20.
+Na4 Qb5 21. Nc3 Qa5 22. Bxf6 Nxf6 23. bxc4 dxc4 24. Nd2 Rc6 25. Nxc4 Qc7
+26. Na4 Rc8 27. Rd4 Ne8 28. e4 Bf6 29. e5 Bxe5 30. Re4 Nf6 31. Nab6 Rxb6
+32. Rxe5 Rc6 33. Re7 Rxc4 34. Re1 Qc6 35. h3 Rc1 36. Rxc1 Qxc1+ 37. Kh2 Qc4
+38. Qf3 Qxa2 39. Ra7 0-1
+
+[White "Grigorian"]
+[Black "Korchnoi"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 d5 5. a3 Bxc3+ 6. Qxc3 Ne4 7. Qc2 e5
+8. cxd5 Qxd5 9. f3 Nd6 10. dxe5 Qxe5 11. e4 Nc6 12. Bd3 Be6 13. Ne2 Qa5+
+14. Kf2 O-O-O 15. Nf4 Nd4 16. Qc3 Qxc3 17. bxc3 Nb3 18. Nxe6 fxe6 19. Rb1
+Nxc1 20. Rhxc1 Rd7 21. e5 Nf7 22. Be4 c6 23. f4 g5 24. g3 gxf4 25. gxf4
+Rd2+ 26. Ke3 Rxh2 27. Rh1 Ra2 28. Ra1 Rxa1 29. Rxa1 h5 30. Rg1 h4 31. Rg6
+Nd8 32. f5 exf5 33. Bxf5+ Kc7 34. Rg7+ Kb6 35. Bh3 Kc5 36. Ke4 a5 37. e6
+Nxe6 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Szabo"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Bf4 Bg7 5. e3 O-O 6. Qb3 c5 7. cxd5 cxd4 8.
+exd4 e6 9. dxe6 Nc6 10. exf7+ Kh8 11. Nf3 Nxd4 12. Nxd4 Qxd4 13. Be3 Qe5
+14. Be2 Be6 15. Bc4 Bd7 16. h3 b5 17. Be2 Be6 18. Qxb5 Nd5 19. Nxd5 a6 20.
+Qc5 Rac8 21. Qa3 Bxd5 22. O-O Rxf7 23. Rfd1 Bb7 24. Bxa6 Qe4 25. Bxb7 Rxb7
+26. Rac1 Re8 27. Rd2 Be5 28. Rcd1 Kg8 29. b3 Bc7 30. Qa6 Rb4 31. Qd3 Qe5
+32. Qd5+ 1-0
+
+[White "Euwe"]
+[Black "Averbakh"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Bd3 d5 6. Nf3 c5 7. O-O Nc6 8.
+a3 Bxc3 9. bxc3 b6 10. cxd5 exd5 11. Nd2 Be6 12. Bb2 c4 13. Bc2 b5 14. f3
+a5 15. Re1 Qb6 16. Nf1 b4 17. Qd2 b3 18. Bb1 a4 19. e4 Ne7 20. Ng3 Kh8 21.
+Re2 Nfg8 22. Nh5 f5 23. Qg5 Rf7 24. exf5 Bxf5 25. Bxf5 Nxf5 26. Rae1 Qd8
+27. Qxd8 Rxd8 28. Re8 Rxe8 29. Rxe8 Re7 30. Rxe7 Ngxe7 31. Kf2 Kg8 32. g4
+Nd6 33. Ke3 Nb5 34. f4 Nc8 35. f5 Ncd6 36. Nf4 Nxa3 37. Bxa3 Nb5 38. Bc1
+Nxc3 39. Ne2 Nb1 0-1
+
+[White "Boleslavsky"]
+[Black "Kotov"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 dxc4 3. Nf3 Nf6 4. e3 e6 5. Bxc4 c5 6. O-O a6 7. Qe2 cxd4 8.
+exd4 Be7 9. Nc3 b5 10. Bb3 Bb7 11. Bg5 O-O 12. Rfe1 Nc6 13. Rad1 Na5 14. d5
+Nxb3 15. dxe6 Qb6 16. axb3 fxe6 17. Nd4 Bd6 18. Qxe6+ Kh8 19. Nf3 Rad8 20.
+Bf4 Bxf3 21. Rxd6 Rxd6 22. Qxd6 Qxd6 23. Bxd6 Re8 24. Rxe8+ Nxe8 25. Be5
+Bc6 26. b4 h5 27. f3 Kh7 28. Ne2 g5 29. Kf2 h4 30. g3 hxg3+ 31. hxg3 Kg6
+32. g4 Bb7 33. Ke3 Bc6 34. Nc3 Bb7 35. Ne4 Bd5 36. Nc5 Kf7 37. Nxa6 Ke6 38.
+Bc3 Ba8 39. Nc5+ Kf7 40. Ne4 Kg6 41. Be5 Bd5 42. Nd2 Kf7 1-0
+
+[White "Botvinnik"]
+[Black "Reshevsky"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. a3 Bxc3+ 6. bxc3 Nc6 7. Bd3 O-O
+8. Ne2 b6 9. e4 Ne8 10. Be3 d6 11. O-O Na5 12. Ng3 Ba6 13. Qe2 Qd7 14. f4
+f5 15. Rae1 g6 16. Rd1 Qf7 17. e5 Rc8 18. Rfe1 dxe5 19. dxe5 Ng7 20. Nf1
+Rfd8 21. Bf2 Nh5 22. Bg3 Qe8 23. Ne3 Qa4 24. Qa2 Nxg3 25. hxg3 h5 26. Be2
+Kf7 27. Kf2 Qb3 28. Qxb3 Nxb3 29. Bd3 Ke7 30. Ke2 Na5 31. Rd2 Rc7 32. g4
+Rcd7 33. gxf5 gxf5 34. Red1 h4 35. Ke1 Nb3 36. Nd5+ exd5 37. Bxf5 Nxd2 38.
+Rxd2 dxc4 39. Bxd7 Rxd7 40. Rf2 Ke6 41. Rf3 Rd3 42. Ke2 0-1
+
+[White "Averkin"]
+[Black "Smyslov"]
+[Result "1/2-1/2"]
+
+1. Nf3 Nf6 2. c4 c5 3. Nc3 Nc6 4. e3 e6 5. d4 d5 6. cxd5 exd5 7. Be2 a6 8.
+O-O Bd6 9. dxc5 Bxc5 10. b3 O-O 11. Bb2 Ba7 12. Na4 Ne4 13. Rc1 Qd6 14. Nc3
+Nf6 15. Qd3 Bg4 16. Rfd1 Rad8 17. Ng5 Ne5 18. Qc2 g6 19. h3 Bxe2 20. Nxe2
+h6 21. Qc7 Bb8 22. Qxd6 Bxd6 23. Nf3 Nxf3+ 24. gxf3 Ne8 25. Kg2 Nc7 26. Ba3
+Ne6 27. Bb2 Be7 28. Rc2 Rc8 29. Rdc1 Rxc2 30. Rxc2 Rd8 31. Nd4 Bd6 32. Nxe6
+fxe6 33. f4 Kf7 34. Be5 Ke7 35. Kf3 Bxe5 36. fxe5 Rf8+ 37. Kg4 Kd7 38. f4
+g5 39. h4 1/2-1/2
+
+[White "Taimanov"]
+[Black "Bronstein"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 c5 3. d5 g6 4. Nc3 d6 5. e4 b5 6. cxb5 Bg7 7. Nf3 O-O 8.
+Be2 a6 9. bxa6 Bxa6 10. O-O Qc7 11. Re1 Nbd7 12. Bxa6 Rxa6 13. Qe2 Rfa8 14.
+h3 Nb6 15. Bg5 Ne8 16. Bd2 Na4 17. Nxa4 Rxa4 18. Bc3 Bxc3 19. bxc3 Qa5 20.
+Qd3 Qa6 21. Qd2 Rxa2 22. Rxa2 Qxa2 23. e5 Qxd2 24. Nxd2 dxe5 25. Rxe5 Kf8
+26. Nb3 c4 27. Nc5 Ra1+ 28. Kh2 Nf6 29. Ne4 Nd7 30. Rg5 Ra2 31. Rg4 f5 32.
+Rf4 Nb6 33. Ng5 Nxd5 34. Rd4 Nb6 35. Rd8+ Kg7 36. f4 h6 37. Ne6+ Kf7 38.
+Nd4 Na4 39. Rc8 Nxc3 40. Rxc4 Nd5 41. Nf3 Rxg2+ 42. Kh1 Rf2 0-1
+
+[White "Tukmakov"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e6 5. Nc3 a6 6. Be2 Nge7 7. Nb3 b5
+8. Be3 Ng6 9. f4 Be7 10. g3 O-O 11. h4 Re8 12. Qd2 Na5 13. h5 Nf8 14. h6 g6
+15. Qd4 f6 16. Nd5 Nxb3 17. axb3 Bb7 18. Nxe7+ Qxe7 19. Bf3 e5 20. fxe5
+Qxe5 21. Qxe5 Rxe5 22. Bd4 Re6 23. O-O Bxe4 24. Bxf6 Bxf3 25. Rxf3 Rae8 26.
+Bc3 g5 27. Rf5 Rg6 28. Bb4 g4 29. Raf1 Ne6 30. Rf6 Rxf6 31. Rxf6 Nd4 32. c3
+Nf3+ 33. Kf2 Ne5 34. Bd6 Nd3+ 35. Kf1 1/2-1/2
+
+[White "Botvinnik"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. d4 d5 2. Nf3 Nf6 3. c4 e6 4. Nc3 c6 5. e3 Nbd7 6. Bd3 dxc4 7. Bxc4 b5 8.
+Bd3 a6 9. e4 c5 10. e5 cxd4 11. Nxb5 axb5 12. exf6 Qb6 13. fxg7 Bxg7 14.
+O-O Nc5 15. Bf4 Bb7 16. Re1 Rd8 17. Rc1 Rd5 18. Be5 Bxe5 19. Rxe5 Rxe5 20.
+Nxe5 Nxd3 21. Qxd3 f6 22. Qg3 fxe5 23. Qg7 Rf8 24. Rc7 Qxc7 25. Qxc7 Bd5
+26. Qxe5 d3 27. Qe3 Bc4 28. b3 Rf7 29. f3 Rd7 30. Qd2 e5 31. bxc4 bxc4 32.
+Kf2 Kf7 33. Ke3 Ke6 34. Qb4 Rc7 35. Kd2 Rc6 36. a4 1-0
+
+[White "Smyslov"]
+[Black "Geller"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Nf3 O-O 6. Be2 e5 7. O-O c6 8.
+Re1 exd4 9. Nxd4 Re8 10. Bf1 Ng4 11. h3 Qf6 12. hxg4 Qxd4 13. g5 Nd7 14.
+Bf4 Qxd1 15. Raxd1 Be5 16. Be3 Nc5 17. f3 Be6 18. Rc1 a5 19. Rc2 a4 20. a3
+Reb8 21. Rb1 h6 22. gxh6 f5 23. f4 Bf6 24. e5 Be7 25. exd6 Bxd6 26. Rd1 Bf8
+27. Nd5 Rd8 28. Nf6+ Kf7 29. Rxd8 Rxd8 30. Nh7 Ne4 31. Ng5+ Kf6 32. g4 Rd1
+33. Nxe4+ fxe4 34. g5+ Kf7 35. Kf2 Rd7 36. Rd2 Rxd2+ 37. Bxd2 Bc5+ 38. Be3
+Bd6 39. Bd4 Kg8 40. Ke3 Bf5 41. c5 Bc7 42. Be2 Ba5 43. Bd1 Be1 44. Bxa4 1-0
+
+[White "Smyslov"]
+[Black "Geller"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Bxc6 dxc6 5. O-O f6 6. d4 Bg4 7. c3 Bd6 8.
+Be3 Qe7 9. Nbd2 O-O-O 10. Qc2 exd4 11. cxd4 Re8 12. e5 Bb4 13. h3 Be6 14.
+Ne4 Qf7 15. a3 Bb3 16. Qb1 Bf8 17. Ned2 Bd5 18. b4 Qg6 19. Qb2 Ne7 20. a4
+Nf5 21. Rfe1 fxe5 22. dxe5 Be7 23. Re2 Rhf8 24. Bc5 Bxc5 25. bxc5 Nd4 26.
+Qxd4 Rxf3 27. Ne4 Rxh3 28. Ng3 Rh5 29. Rae1 Rg5 30. Rb2 Rg4 31. Qc3 h5 32.
+Reb1 h4 33. Rxb7 hxg3 34. f3 Qh6 35. Rxc7+ Kxc7 36. Qa5+ Kd7 37. e6+ Kxe6
+38. Qe1+ Kf6 0-1
+
+[White "Karpov"]
+[Black "Savon"]
+[Result "1-0"]
+
+1. Nf3 Nf6 2. c4 b6 3. g3 Bb7 4. Bg2 c5 5. O-O g6 6. d3 Bg7 7. e4 O-O 8.
+Nc3 Nc6 9. Rb1 Ne8 10. Be3 Nd4 11. Ne2 e5 12. b4 d6 13. bxc5 dxc5 14. Nexd4
+cxd4 15. Bd2 Nc7 16. Ne1 Ne6 17. Bb4 Re8 18. f4 exf4 19. gxf4 Qc7 20. Qg4
+Nc5 21. Bxc5 bxc5 22. Rb2 Rab8 23. Rbf2 Bc8 24. Qg3 Rb1 25. h4 h5 26. Nf3
+Rxf1+ 27. Bxf1 Bh6 28. Nd2 Kh7 29. Kh2 Bg4 30. e5 f5 31. Qg2 Rb8 32. Kg3
+Rd8 33. Nf3 Rd7 34. Rb2 Qa5 35. Qd2 Qc3 36. Bg2 Rd8 37. Rb3 Qa1 38. Rb7+
+Kh8 39. Qe1 Qc3 40. e6 Qxe1+ 41. Nxe1 1-0
+
+[White "Smyslov"]
+[Black "Kotov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be2 e5 7. Nb3 Be7 8.
+Be3 Nbd7 9. O-O O-O 10. f3 Qc7 11. Qe1 b5 12. a3 Nb6 13. Qf2 Rb8 14. Rab1
+Be6 15. Kh1 Nc4 16. Bxc4 bxc4 17. Nc1 Rb7 18. N1a2 d5 19. exd5 Bxd5 20. Nb4
+Bxb4 21. axb4 Qc6 22. Bg5 Rd7 23. Rfe1 Re8 24. Rbd1 Nh5 25. Qh4 g6 26. Nxd5
+Rxd5 27. Rxd5 Qxd5 28. Qe4 Qxe4 29. Rxe4 f6 30. Be3 Rc8 31. g4 Ng7 32. g5
+Kf7 33. gxf6 Kxf6 34. Bd2 Nf5 35. Bc3 Nd4 36. f4 Nxc2 37. Re2 Na1 38. Rxe5
+Kf7 39. Ra5 Nc2 40. Rxa6 Rb8 41. Rc6 Nxb4 42. Rc7+ Ke6 43. Rxc4 Nd3 44. b4
+Rf8 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Gligoric"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. g3 Bg7 4. Bg2 O-O 5. Nc3 d6 6. Nf3 c5 7. d5 Na6 8.
+Nd2 Nc7 9. Qc2 Rb8 10. b3 b5 11. Bb2 bxc4 12. Nxc4 Ba6 13. Ne3 Rb4 14. O-O
+Qd7 15. h3 Rfb8 16. Rab1 Qc8 17. Kh2 Nce8 18. Ba3 R4b7 19. Rfc1 Qd8 20. Na4
+Nd7 21. Be4 Nc7 22. Bb2 Nf6 23. Bd3 Bh6 24. f4 Qd7 25. Nc3 e6 26. Ne4 Nxe4
+27. Bxe4 f5 28. dxe6 Qxe6 29. Bxb7 Rxb7 30. Qc3 Ne8 31. Qd2 Re7 32. Nd5
+Qxe2+ 33. Qxe2 Rxe2+ 34. Kg1 Kf8 35. Re1 Rd2 36. Red1 Re2 37. Nf6 Bg7 38.
+Nxh7+ Kg8 39. Bxg7 Kxg7 40. Ng5 Re3 41. Re1 1-0
+
+[White "Smyslov"]
+[Black "Tal"]
+[Result "1/2-1/2"]
+
+1. c4 g6 2. d4 Bg7 3. Nf3 Nf6 4. Nc3 O-O 5. Bg5 c5 6. e3 d6 7. Be2 h6 8.
+Bh4 g5 9. Bg3 Nh5 10. Qc2 g4 11. Nh4 cxd4 12. exd4 Nc6 13. d5 Nd4 14. Qd2
+e5 15. dxe6 Bxe6 16. Rd1 Qg5 17. f4 gxf3 18. Nxf3 Qxd2+ 19. Rxd2 Nxe2 20.
+Nxe2 Bxc4 21. Bxd6 Rfe8 22. b3 Ba6 23. Kd1 Nf6 24. Ng3 Ng4 25. Nf5 Bc3 26.
+Rc2 Rac8 27. Re1 Bxe1 28. Ne7+ Kh7 29. Rxc8 Rxc8 30. Nxc8 Bf2 31. Bb8 b6
+32. Nd6 Ne3+ 33. Kd2 Nxg2 34. Bxa7 Kg7 35. a4 Bc5 36. Nc4 Bb4+ 37. Ke2 b5
+38. axb5 Bxb5 39. Nd4 Ba6 40. Nc2 Be7 1/2-1/2
+
+[White "Polugaevsky"]
+[Black "Rashkovsky"]
+[Result "1-0"]
+
+1. c4 e6 2. Nf3 d5 3. d4 Nf6 4. Nc3 Be7 5. Bg5 h6 6. Bh4 O-O 7. e3 Ne4 8.
+Bxe7 Qxe7 9. Rc1 Nxc3 10. Rxc3 c6 11. Bd3 dxc4 12. Bxc4 Nd7 13. O-O b6 14.
+Bd3 c5 15. Bb5 Rd8 16. Bc6 Rb8 17. Qc2 Bb7 18. Bxb7 Rxb7 19. dxc5 Nxc5 20.
+b4 Na6 21. a3 Rc7 22. h3 Rxc3 23. Qxc3 Nc7 24. Nd4 Nd5 25. Qc4 Qb7 26. Rc1
+a6 27. Qc6 Qxc6 28. Rxc6 Kf8 29. a4 Rb8 30. b5 axb5 31. axb5 Rb7 32. Rc8+
+Ke7 33. e4 Nc7 34. e5 f6 35. Nc6+ 1-0
+
+[White "Reshevsky"]
+[Black "Taimanov"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Ne2 d5 6. a3 Be7 7. cxd5 exd5 8.
+Ng3 Re8 9. b4 c6 10. Bd3 b5 11. Bd2 Nbd7 12. a4 Bxb4 13. axb5 c5 14. O-O c4
+15. Bc2 a5 16. bxa6 Rxa6 17. Rxa6 Bxa6 18. Qa1 Nb8 19. Qa4 Bf8 20. Rb1 Re6
+21. Rb2 g6 22. Nge2 Bd6 23. Nf4 Bxf4 24. exf4 Nbd7 25. h3 Rb6 26. Qa5 Qb8
+27. Rxb6 Qxb6 28. Qa3 Nf8 29. Be3 Bc8 30. g4 Bb7 31. f5 g5 32. Qe7 h6 33.
+Na4 Qc6 34. Nc5 Bc8 35. Qd8 Kg7 36. Bd2 Qb5 37. Qxc8 Qb2 38. Kg2 Qxc2 39.
+Bb4 Ne4 40. Nxe4 Qxe4+ 41. Kg3 1/2-1/2
+
+[White "Kotov"]
+[Black "Szabo"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. f3 O-O 6. Be3 e5 7. d5 Nh5 8. Qd2
+f5 9. O-O-O Nd7 10. Bd3 Nc5 11. Bc2 f4 12. Bf2 a6 13. Nge2 a5 14. Kb1 Bd7
+15. Nc1 Rf7 16. Nd3 b6 17. Rc1 Bf6 18. Rhf1 Bh4 19. Bxc5 bxc5 20. Ba4 Bxa4
+21. Nxa4 Qd7 22. Nc3 g5 23. h3 Nf6 24. Nb5 h5 25. Rh1 Rh7 26. Rc3 g4 27.
+hxg4 hxg4 28. Ra3 Bg3 29. Rxh7 Qxh7 30. Nc1 Qh1 31. Nxc7 gxf3 32. gxf3 Ra7
+33. Ne6 Be1 34. Qd1 Rh7 35. Rd3 Rh2 36. a3 Nd7 37. Qa4 Qg2 38. Rb3 Bc3 39.
+Ne2 1-0
+
+[White "Karpov"]
+[Black "Sveshnikov"]
+[Result "1/2-1/2"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nc6 5. Nb5 Nf6 6. N1c3 d6 7. Bf4 e5
+8. Bg5 a6 9. Na3 b5 10. Nd5 Be7 11. Bxf6 Bxf6 12. c3 O-O 13. Nc2 Bg5 14. a4
+bxa4 15. Rxa4 a5 16. Bc4 Rb8 17. b3 Be6 18. Qa1 g6 19. O-O Qd7 20. Rd1 f5
+21. exf5 gxf5 22. b4 axb4 23. cxb4 Kh8 24. b5 Bxd5 25. Rxd5 Ne7 26. Qxe5+
+dxe5 27. Rxd7 Nc8 28. Rc7 Bd8 29. Rc6 Nb6 30. Rb4 Nxc4 31. Rcxc4 Bb6 32.
+Kf1 Rfd8 33. Ke2 Ba5 34. Rb3 Rd2+ 35. Ke3 f4+ 36. Ke4 Rxf2 37. Kxe5 Rxg2
+38. Nd4 Rxh2 39. Rc6 Bb6 40. Ne6 f3 41. Rxf3 Rh5+ 42. Kf6 Rxb5 43. Rd6 Rb2
+44. Ke7 Ba5 1/2-1/2
+
+[White "Keres"]
+[Black "Smyslov"]
+[Result "0-1"]
+
+1. c4 Nf6 2. Nc3 e6 3. Nf3 c5 4. e3 Be7 5. b3 O-O 6. Bb2 b6 7. d4 cxd4 8.
+exd4 d5 9. Bd3 Nc6 10. O-O Bb7 11. Rc1 Rc8 12. Re1 Nb4 13. Bf1 Ne4 14. a3
+Nxc3 15. Rxc3 Nc6 16. Ne5 Nxe5 17. Rxe5 Bf6 18. Rh5 g6 19. Rch3 dxc4 20.
+Rxh7 c3 21. Qc1 Qxd4 22. Qh6 Rfd8 23. Bc1 Bg7 24. Qg5 Qf6 25. Qg4 c2 26.
+Be2 Rd4 27. f4 Rd1+ 28. Bxd1 Qd4+ 0-1
+
+[White "Grigorian"]
+[Black "Spassky"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 c5 5. dxc5 Nc6 6. Nf3 Bxc5 7. Bf4 O-O
+8. e3 d5 9. Rd1 Qa5 10. a3 Be7 11. Nd2 e5 12. Nb3 Qc7 13. Bg3 dxc4 14. Bxc4
+Nb4 15. Qe2 Nc2+ 16. Qxc2 Qxc4 17. Bxe5 b6 18. Nd4 Rd8 19. b3 Qc5 20. Bxf6
+Bxf6 21. Ne4 Qxa3 22. Nxf6+ gxf6 23. O-O Qc5 24. Qe4 Bd7 25. Rc1 Qe5 26.
+Qb7 Qb8 27. Rc7 Qxb7 28. Rxb7 Bc8 29. Rc7 Bd7 30. f3 a5 31. Rfc1 b5 32. Ra1
+a4 33. bxa4 bxa4 34. Ra3 Rac8 35. Rxd7 1/2-1/2
+
+[White "Kuzmin"]
+[Black "Sveshnikov"]
+[Result "1-0"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nc6 5. Nc3 Qc7 6. Be2 a6 7. O-O Nf6
+8. Be3 Bb4 9. Nxc6 bxc6 10. Na4 O-O 11. c4 Bd6 12. f4 Nxe4 13. Bd3 Nf6 14.
+c5 Be7 15. Bd4 Nd5 16. Nb6 Nxb6 17. Bxh7+ Kxh7 18. Qh5+ Kg8 19. Bxg7 Kxg7
+20. Qg4+ Kh7 21. Rf3 1-0
+
+[White "Kotov"]
+[Black "Stahlberg"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 d5 4. Nc3 Be7 5. cxd5 exd5 6. Bf4 c6 7. Qc2 g6 8.
+e3 Bf5 9. Bd3 Bxd3 10. Qxd3 Nbd7 11. h3 Nf8 12. g4 Ne6 13. Bg3 Qa5 14. Nd2
+O-O 15. O-O-O Bb4 16. Kb1 Bxc3 17. Qxc3 Qxc3 18. bxc3 Ne4 19. Nxe4 dxe4 20.
+Kc2 Rad8 21. a4 f5 22. gxf5 Rxf5 23. c4 Rd7 24. Kc3 Ng7 25. Rd2 Kf7 26. Bb8
+b6 27. Ra2 Ra5 28. Be5 Nf5 29. Rg1 h5 30. Bf4 Nh4 31. Rg5 Rxg5 32. Bxg5 Nf3
+33. h4 Nxg5 34. hxg5 Ke6 35. a5 h4 36. Ra1 bxa5 37. Kd2 h3 38. Ke2 h2 39.
+f3 Rh7 40. Rh1 exf3+ 41. Kxf3 a4 0-1
+
+[White "Keres"]
+[Black "Smyslov"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. Qb3 dxc4 6. Qxc4 O-O 7. e4 Bg4
+8. Be3 Nfd7 9. Qb3 Nb6 10. Rd1 e5 11. dxe5 N8d7 12. Be2 Qe7 13. Bg5 Qe8 14.
+O-O Nxe5 15. Nd5 Nxd5 16. exd5 Nxf3+ 17. Bxf3 Bxf3 18. Qxf3 Qd7 19. Rd2
+Rfe8 20. Rc1 Be5 21. g3 a5 22. Kg2 a4 23. Re2 Bd6 24. Rce1 Rxe2 25. Rxe2
+Re8 26. Rxe8+ Qxe8 27. Bf6 Bf8 28. d6 cxd6 29. Qxb7 Qe6 30. Bc3 Qxa2 31.
+Qe4 f5 32. Qd4 Kf7 33. Qh8 Ke8 34. Qxh7 Qf7 35. Qh4 Qd5+ 36. Kg1 Qd1+ 37.
+Kg2 Qd5+ 38. f3 Qb5 39. Qd4 Qe2+ 40. Qf2 Qxf2+ 41. Kxf2 Kf7 42. Ke3 Ke6
+1/2-1/2
+
+[White "Kotov"]
+[Black "Taimanov"]
+[Result "1-0"]
+
+1. c4 Nf6 2. g3 e6 3. Bg2 d5 4. Nf3 d4 5. b4 c5 6. Bb2 Qb6 7. Qb3 Nc6 8. b5
+Na5 9. Qc2 Bd6 10. e3 e5 11. exd4 exd4 12. O-O O-O 13. d3 Bd7 14. Nbd2 h6
+15. Rae1 Rae8 16. Bc1 Rxe1 17. Rxe1 Re8 18. Rxe8+ Bxe8 19. Nh4 a6 20. a4
+Qa7 21. Nf5 Bf8 22. Ne4 Nxe4 23. Bxe4 b6 24. Qd1 axb5 25. axb5 Bd7 26. Qh5
+Be6 27. Bf4 Nb3 28. Qd1 Qa2 29. h4 Na1 30. h5 Nc2 31. Be5 Qb2 32. Bc7 Na3
+33. Qg4 Qc1+ 34. Kg2 Nb1 35. Bf4 Nd2 36. Qe2 1-0
+
+[White "Geller"]
+[Black "Taimanov"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 Bb4 4. O-O Nge7 5. c3 Ba5 6. Bxc6 Nxc6 7. b4 Bb6
+8. b5 Na5 9. Nxe5 O-O 10. d4 d5 11. Ba3 Re8 12. Qh5 f6 13. f4 fxe5 14. fxe5
+Be6 15. Nd2 dxe4 16. Nxe4 Bxd4+ 17. Kh1 Bd5 18. Nf6+ gxf6 19. cxd4 Qd7 20.
+exf6 Qf7 21. Rf5 Qxh5 22. Rxh5 Bf7 23. Rg5+ Bg6 24. Be7 Kf7 25. Rc1 Rac8
+26. h4 Rg8 27. Re5 b6 28. g4 Bd3 29. g5 Rge8 30. Rc3 Bc4 31. Rg3 c6 32. h5
+Rg8 33. Bb4 Rce8 34. Rge3 Rxe5 35. Rxe5 Be6 36. Bxa5 bxa5 37. bxc6 Rd8 38.
+c7 Rc8 39. d5 Bg4 40. Re7+ Kf8 41. g6 hxg6 42. hxg6 1-0
+
+[White "Tal"]
+[Black "Tukmakov"]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8.
+c3 O-O 9. h3 Nb8 10. d4 Nbd7 11. Nbd2 Bb7 12. Bc2 Re8 13. b4 Bf8 14. a4 a5
+15. bxa5 Rxa5 16. Rb1 Ba6 17. axb5 Rxb5 18. Ra1 Rb6 19. Bb3 h6 20. Ba3 c5
+21. dxc5 Nxc5 22. Bxc5 dxc5 23. Bc4 Bb7 24. Qc2 Qc7 25. Ra7 Re7 26. Qa2 Qb8
+27. Ra1 Rd7 28. Bb3 g6 29. Bxf7+ Rxf7 30. Nc4 Re6 31. Ncxe5 Rxe5 32. Nxe5
+Bd5 33. exd5 Rxa7 34. Qxa7 Qxe5 35. Rd1 Ne4 36. Qb6 Bd6 37. Qd8+ Kf7 38.
+Qd7+ Kf8 1/2-1/2
+
+[White "Keres"]
+[Black "Beliavsky"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. e3 Bb7 5. Bd3 Bb4+ 6. Nbd2 O-O 7. O-O d5 8.
+a3 Be7 9. b4 c5 10. bxc5 bxc5 11. cxd5 cxd4 12. e4 exd5 13. e5 Ne4 14. Nxd4
+Nd7 15. N2f3 Re8 16. e6 fxe6 17. Nxe6 Qb6 18. Nfg5 Bxg5 19. Nxg5 Ndc5 20.
+Rb1 Qc7 21. Nxe4 Nxe4 22. Bb2 Rad8 23. Bd4 Bc8 24. Re1 Qa5 25. Re3 Ba6 26.
+Qg4 Re7 27. Bxg7 Rxg7 28. Qe6+ Rf7 29. Bxa6 Qd2 30. Be2 Rd6 31. Qe5 Rb6 32.
+Rd1 Qa2 33. Qxd5 Qxd5 34. Rxd5 Nxf2 35. Bf3 Rb2 36. h3 Rc7 37. Kh2 Rb1 38.
+Rd2 Rf1 39. Ree2 Nh1 40. Bd5+ Kg7 1-0
+
+[White "Geller"]
+[Black "Stahlberg"]
+[Result "1/2-1/2"]
+
+1. e4 e6 2. d4 d5 3. Nd2 c5 4. exd5 exd5 5. Ngf3 Nf6 6. Bb5+ Bd7 7. Bxd7+
+Nbxd7 8. O-O Be7 9. dxc5 Nxc5 10. Nd4 O-O 11. Nf5 Re8 12. Nb3 Ne6 13. Be3
+Qc7 14. c3 Rad8 15. Qf3 Ne4 16. Nxe7+ Rxe7 17. Rfd1 a6 18. Nd4 g6 19. h4
+Ng7 20. g3 f5 21. Kg2 Qe5 22. Rd3 Qf6 23. Rad1 Red7 24. Ne2 Qc6 25. Bd4 Ne6
+26. Nf4 Nxf4+ 27. Qxf4 Re8 28. Re3 Qd6 29. Qxd6 Nxd6 30. Rxe8+ Nxe8 31. Be5
+Kf7 32. f3 Nf6 33. Kf2 Ke6 34. Bd4 Ng8 35. Ke3 Ne7 36. Kd3 Nc6 37. Re1+ Kf7
+38. a4 Re7 39. Rxe7+ Kxe7 40. Ke3 Ke6 41. Bh8 h5 1/2-1/2
+
+[White "Taimanov"]
+[Black "Averbakh"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Bd3 d5 6. Nf3 b6 7. O-O Bb7 8.
+a3 Bxc3 9. bxc3 dxc4 10. Bxc4 c5 11. Bd3 Nbd7 12. Re1 Ne4 13. Bb2 Rc8 14.
+c4 Ndf6 15. Ne5 Rc7 16. a4 Nd6 17. a5 Nd7 18. axb6 axb6 19. Qh5 g6 20. Qh6
+Nxe5 21. dxe5 Ne4 22. Bxe4 Bxe4 23. Red1 Rd7 24. Rd6 Bb7 25. Rad1 Rxd6 26.
+exd6 f6 27. d7 Bc6 28. h4 Bxd7 29. h5 gxh5 30. e4 e5 31. f4 exf4 32. Rd6
+Qe8 33. Bxf6 Rf7 34. Rd5 1-0
+
+[White "Euwe"]
+[Black "Botvinnik"]
+[Result "1/2-1/2"]
+
+1. e4 e6 2. d4 d5 3. Nd2 c5 4. exd5 exd5 5. Bb5+ Nc6 6. Qe2+ Qe7 7. dxc5
+Qxe2+ 8. Nxe2 Bxc5 9. Nb3 Bb6 10. Bd2 Ne7 11. Bb4 a6 12. Bc5 Bc7 13. Bxc6+
+Nxc6 14. O-O-O Be6 15. Ned4 O-O-O 16. Nxc6 bxc6 17. Rd4 Kd7 18. g3 f6 19.
+Ra4 Ra8 20. Re1 Rhe8 21. Be3 Bd6 22. Bf4 Bf8 23. Be3 Bf5 24. Rd1 Kc7 25.
+Rdd4 Be4 26. Ra5 Bg2 27. Nc5 Bf1 28. Nd3 Re4 29. Rda4 Rxa4 30. Rxa4 Bxd3
+31. cxd3 c5 32. b3 d4 33. Bd2 Kb6 34. Kd1 Re8 35. a3 Kb5 36. Ra5+ Kb6 37.
+b4 Re5 38. bxc5+ Bxc5 39. f4 Re8 40. Ra4 Kb5 1/2-1/2
+
+[White "Petrosian"]
+[Black "Gligoric"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. f3 O-O 6. Be3 e5 7. d5 Nh5 8. Qd2
+f5 9. O-O-O f4 10. Bf2 Bf6 11. Nge2 Bh4 12. Bg1 g5 13. c5 g4 14. Kb1 gxf3
+15. gxf3 Na6 16. c6 Nf6 17. cxb7 Bxb7 18. Ng3 Bc8 19. Nge2 Nc5 20. Bxc5
+dxc5 21. Nc1 Qe7 22. Nb3 Bd7 23. Qg2+ Kh8 24. Qg1 Ne8 25. Qxc5 Nd6 26. Rc1
+Be8 27. Bh3 a5 28. Nxa5 Bf2 29. Qxf2 Rxa5 30. Rhg1 Bg6 31. Bf1 Rb8 32. Rc2
+Nf7 33. h4 Nd6 34. Bd3 Rb4 35. Rgc1 Rd4 36. Bf1 Qd8 37. Ne2 Rda4 38. Nc3
+Rd4 39. b3 Qb8 40. h5 Bxh5 41. Qh4 1-0
+
+[White "Botvinnik"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. a3 Bxc3+ 6. bxc3 Re8 7. Ne2 e5
+8. Ng3 d6 9. Be2 Nbd7 10. O-O c5 11. f3 cxd4 12. cxd4 Nb6 13. Bb2 exd4 14.
+e4 Be6 15. Rc1 Re7 16. Qxd4 Qc7 17. c5 dxc5 18. Rxc5 Qf4 19. Bc1 Qb8 20.
+Rg5 Nbd7 21. Rxg7+ Kxg7 22. Nh5+ Kg6 23. Qe3 1-0
+
+[White "Boleslavsky"]
+[Black "Stahlberg"]
+[Result "1/2-1/2"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Bb4 4. e5 c5 5. a3 Bxc3+ 6. bxc3 Ne7 7. a4 Nbc6 8.
+Nf3 Bd7 9. Be2 Rc8 10. O-O O-O 11. Ba3 b6 12. Ba6 Rc7 13. Bd3 h6 14. Re1
+Na5 15. Bc1 c4 16. Bf1 Ng6 17. g3 f6 18. exf6 Qxf6 19. Bg2 Rcc8 20. Qe2 Rf7
+21. h4 Nc6 22. h5 Nf8 23. Nh2 Nh7 24. f4 Re8 25. Nf3 Qd8 26. Nh4 Nf8 27.
+Rf1 Ne7 28. Nf3 Nc6 29. Ba3 Bc8 30. Rf2 Nd7 31. Raf1 Ne7 32. Bh3 Nf5 33.
+Kh2 Nf6 34. g4 Nd6 35. Ne5 Rc7 36. Bg2 Nde4 37. Rf3 Nd7 38. Ng6 Ndf6 39.
+Ne5 Nd7 40. Kg1 Nxe5 41. fxe5 Ng5 42. Rf8+ Rxf8 1/2-1/2
+
+[White "Szabo"]
+[Black "Keres"]
+[Result "0-1"]
+
+1. d4 d5 2. Nf3 Nf6 3. c4 dxc4 4. Nc3 a6 5. Qa4+ b5 6. Qc2 Nc6 7. e4 e6 8.
+Bg5 Nxd4 9. Nxd4 Qxd4 10. Rd1 Qc5 11. Be3 Qc6 12. Be2 Bb7 13. Bf3 e5 14.
+O-O Bc5 15. Nd5 Bxe3 16. Nxe3 O-O 17. g4 Rfe8 18. Nf5 Nd7 19. b3 Nb6 20.
+Qc1 cxb3 21. axb3 Qxc1 22. Rxc1 Rac8 23. Rfd1 g6 24. Nh6+ Kg7 25. g5 c5 26.
+Bg4 Rc7 27. Rd6 Nc8 28. Rf6 Bxe4 29. Rd1 c4 30. bxc4 bxc4 31. f3 Bd3 32.
+Rxa6 Ne7 33. Rd6 Ng8 34. Rc1 Rb7 35. Bd7 Rd8 36. Nxg8 Kxg8 37. Bc6 Rxd6 38.
+Bxb7 Rb6 39. Bd5 Kf8 40. Ra1 c3 41. Ra8+ Ke7 0-1
+
+[White "Kuzmin"]
+[Black "Grigorian"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. e3 O-O 6. cxd5 Nxd5 7. Bc4 Nb6
+8. Bb3 c5 9. O-O cxd4 10. exd4 Nc6 11. Re1 Bg4 12. Be3 Na5 13. h3 Nxb3 14.
+axb3 Be6 15. Bf4 Nd5 16. Be5 Bh6 17. Ne4 f6 18. Nc5 Bf7 19. Bg3 b6 20. Ne6
+Bxe6 21. Rxe6 Qd7 22. Re1 Rfc8 23. Nh2 Rc6 24. Ng4 Bf8 25. Ne3 Rd8 26. Nxd5
+Qxd5 27. Rxa7 Qxd4 28. Qf3 Qd5 29. Rc7 Qxf3 30. gxf3 Rxc7 31. Bxc7 Rd2 32.
+Bxb6 Rxb2 33. Bc5 e5 34. b4 Bxc5 35. bxc5 Rc2 36. Ra1 Rxc5 37. Kg2 Rc7 38.
+Ra6 Kf7 39. Kg3 g5 40. Kg2 Kg6 41. Kg3 Kf5 1/2-1/2
+
+[White "Polugaevsky"]
+[Black "Tal"]
+[Result "1-0"]
+
+1. c4 g6 2. e4 e5 3. d4 Nf6 4. Nf3 Bb4+ 5. Bd2 Bxd2+ 6. Nbxd2 d6 7. dxe5
+dxe5 8. Nxe5 Qe7 9. f4 Nbd7 10. Nxd7 Bxd7 11. e5 O-O-O 12. Be2 Bc6 13. exf6
+Qe3 14. Rf1 Bxg2 15. Rf2 Bh3 16. Qc1 Rhe8 17. Nf1 Qe6 18. Qc3 Bg4 19. Ng3
+h5 20. Rd1 h4 21. Rxd8+ Kxd8 22. f5 gxf5 23. Qd3+ Kc8 24. Nxf5 Qxf6 25. Ne3
+Bxe2 26. Rxe2 Qg7 27. Nd5 Qg1+ 28. Kd2 Qg5+ 29. Kc2 Re6 30. Qf3 b5 31. Rg2
+Qe5 32. Rg8+ Kb7 33. Nc3+ c6 34. cxb5 Qxh2+ 35. Kb3 1-0
+
+[White "Rashkovsky"]
+[Black "Taimanov"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 d5 4. Nc3 Bb4 5. cxd5 exd5 6. Bg5 h6 7. Bh4 c5 8.
+e3 g5 9. Bg3 Ne4 10. Nd2 Nxg3 11. hxg3 cxd4 12. exd4 Nc6 13. Bb5 Kf8 14.
+Bxc6 Qe7+ 15. Kf1 bxc6 16. Kg1 Rb8 17. Qc2 Bg4 18. Nf3 Bxf3 19. gxf3 Qf6
+20. Qd3 Ba5 21. b3 Bb6 22. Rd1 Kg7 23. Kg2 Rhe8 24. Rd2 Ba5 25. Rc1 Re6 26.
+Rdc2 Rb4 27. Ne2 Rb8 28. Qa6 Bb6 29. g4 Kg8 30. Ng3 Qxd4 31. Nf5 Qf6 32.
+Rxc6 Rbe8 33. Rc8 h5 34. Qb5 Qe5 35. Qd7 Bxf2 36. Rxe8+ Rxe8 37. Nh6+ Kg7
+38. Qxf7+ Kh8 39. Nf5 Bh4 40. Qxh5+ Kg8 41. Kh3 1-0
+
+[White "Taimanov"]
+[Black "Boleslavsky"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 d6 3. Nf3 g6 4. Nc3 Bg7 5. e4 e5 6. Be2 O-O 7. O-O Nc6 8.
+Be3 Ng4 9. Bg5 f6 10. Bc1 exd4 11. Nxd4 Nxd4 12. Qxd4 f5 13. Qd5+ Kh8 14.
+Bxg4 fxg4 15. Be3 Qf6 16. Rac1 Qf7 17. b3 Qxd5 18. Nxd5 Rf7 19. f3 c6 20.
+Nf4 gxf3 21. gxf3 Bd7 22. Rcd1 Be5 23. Ng2 Re8 24. f4 Bc3 25. Rxd6 Rxe4 26.
+Bxa7 Bg4 27. Rd3 Bf6 28. Re3 Rxe3 29. Nxe3 Bh3 30. Rd1 Be7 31. Ng2 Kg8 32.
+Be3 Rf8 33. Ne1 Bg4 34. Rc1 Rd8 35. c5 Bf6 36. Kg2 Re8 37. Bf2 Bf5 38. Kf3
+h5 39. h4 Bg4+ 40. Kg3 Bf5 41. Nf3 Re2 1/2-1/2
+
+[White "Botvinnik"]
+[Black "Euwe"]
+[Result "1-0"]
+
+1. d4 d5 2. c4 e6 3. Nf3 Nf6 4. Nc3 c6 5. e3 Nbd7 6. Bd3 Bb4 7. a3 Ba5 8.
+Qc2 Qe7 9. Bd2 dxc4 10. Bxc4 e5 11. O-O O-O 12. Rae1 Bc7 13. Ne4 Nxe4 14.
+Qxe4 a5 15. Ba2 Nf6 16. Qh4 e4 17. Ne5 Bxe5 18. dxe5 Qxe5 19. Bc3 Qe7 20.
+f3 Nd5 21. Qxe7 Nxe7 22. fxe4 b6 23. Rd1 Ng6 24. Rd6 Ba6 25. Rf2 Bb5 26. e5
+Ne7 27. e4 c5 28. e6 f6 29. Rxb6 Bc6 30. Rxc6 Nxc6 31. e7+ Rf7 32. Bd5 1-0
+
+[White "Polugaevsky"]
+[Black "Sveshnikov"]
+[Result "1/2-1/2"]
+
+1. c4 c6 2. Nf3 d5 3. e3 Nf6 4. Nc3 e6 5. d4 Nbd7 6. Bd3 dxc4 7. Bxc4 b5 8.
+Bd3 b4 9. Ne4 Nxe4 10. Bxe4 Bb7 11. Nd2 Be7 12. O-O O-O 13. b3 Nf6 14. Bf3
+Nd5 15. Bb2 c5 16. dxc5 Bxc5 17. Nc4 Qe7 18. Rc1 Rac8 19. Rc2 Rfd8 20. Qa1
+f6 21. Rfc1 Nb6 22. Bxb7 Qxb7 23. h3 Bf8 24. Na5 Qe4 25. Nc6 Rd5 26. Ne7+
+Bxe7 27. Rxc8+ Nxc8 28. Rxc8+ Kf7 29. Rc7 Rd2 30. Qc1 Qd3 31. Qc5 Qd8 32.
+Bd4 Rd1+ 33. Kh2 Kf8 34. Rc8 Bxc5 35. Rxd8+ Kf7 36. Ra8 1/2-1/2
+
+[White "Botvinnik"]
+[Black "Reshevsky"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Nc3 Nf6 4. Bb5 Bb4 5. O-O O-O 6. d3 Bxc3 7. bxc3 d6
+8. Bg5 Qe7 9. Re1 Nd8 10. d4 Ne6 11. Bc1 Rd8 12. Bf1 Nf8 13. Nh4 Ng4 14. g3
+Qf6 15. f3 Nh6 16. Be3 Re8 17. Qd2 Ng6 18. Ng2 Bh3 19. Be2 Bxg2 20. Kxg2 d5
+21. exd5 exd4 22. cxd4 Nf5 23. Bf2 Red8 24. c4 h5 25. h4 b5 26. Qg5 Qxg5
+27. hxg5 h4 28. Bd3 hxg3 29. Bxg3 Nxd4 30. Rad1 c5 31. dxc6 Nxc6 32. Be4
+Rac8 33. Rxd8+ Nxd8 34. Bf5 Ra8 35. Re8+ Kh7 36. cxb5 f6 37. Bc7 Ne6 38.
+Rxa8 Nxc7 39. Rxa7 Nxb5 40. Rd7 fxg5 41. a4 1-0
+
+[White "Korchnoi"]
+[Black "Kuzmin"]
+[Result "1/2-1/2"]
+
+1. c4 e5 2. Nc3 Nf6 3. g3 Bb4 4. Bg2 O-O 5. e4 Bxc3 6. dxc3 d6 7. Qe2 a6 8.
+Nf3 b5 9. c5 Bb7 10. cxd6 cxd6 11. Nh4 d5 12. Bg5 h6 13. Bxf6 Qxf6 14. exd5
+Nd7 15. O-O Rfe8 16. a4 bxa4 17. Rxa4 Nb6 18. Ra5 e4 19. d6 Rad8 20. Nf5
+Nc8 21. Qe3 Nxd6 22. Qb6 Nxf5 23. Qxb7 Rb8 24. Qd5 g6 25. Bxe4 Rbd8 26. Qc6
+Re6 27. Qa4 Nd4 28. Bg2 Ne2+ 29. Kh1 Rd2 30. Qa1 Rb6 31. Ra2 h5 32. c4
+Rbxb2 33. Rxb2 Rxb2 34. c5 Kg7 35. c6 Rc2 36. Be4 Rc5 37. Qxa6 Nd4 38. Qa3
+Qe5 1/2-1/2
+
+[White "Reshevsky"]
+[Black "Keres"]
+[Result "1-0"]
+
+1. Nf3 Nf6 2. c4 b6 3. d3 g6 4. e4 d6 5. Nc3 Bg7 6. d4 O-O 7. Be2 Bb7 8.
+Qc2 e5 9. dxe5 dxe5 10. Be3 Re8 11. O-O Nbd7 12. Rfd1 c6 13. b4 Qe7 14.
+Rab1 Nf8 15. a4 Qc7 16. b5 Red8 17. Rxd8 Rxd8 18. a5 Ng4 19. axb6 axb6 20.
+Bg5 f6 21. bxc6 Bxc6 22. Bd2 f5 23. Bg5 Re8 24. h3 fxe4 25. Nxe4 Bxe4 26.
+Qxe4 Nf6 27. Qe3 N8d7 28. Qb3 Rb8 29. Be3 Nc5 30. Qc2 Ra8 31. Ng5 Re8 32.
+h4 e4 33. Nh3 Rd8 34. Nf4 Rd6 35. h5 g5 36. Nd5 Nxd5 37. cxd5 h6 38. Bxc5
+bxc5 39. Qxe4 Bd4 40. Qe8+ Kg7 41. Rb8 1-0
+
+[White "Smyslov"]
+[Black "Stahlberg"]
+[Result "1-0"]
+
+1. e4 e6 2. d4 d5 3. Nc3 Nf6 4. Bg5 dxe4 5. Nxe4 Be7 6. Bxf6 Bxf6 7. Nf3
+Nd7 8. Bc4 O-O 9. Qe2 Nb6 10. Bb3 Bd7 11. O-O Qe7 12. Rfe1 Rad8 13. Rad1
+Ba4 14. Bxa4 Nxa4 15. Qb5 Nb6 16. c4 c6 17. Qb3 Qc7 18. Nxf6+ gxf6 19. Qe3
+Kg7 20. Ne5 Qe7 21. Ng4 Rg8 22. Nh6 Qc7 23. Nxg8 Rxg8 24. b3 Kh8 25. Qh6
+Rg6 26. Qh4 Nd7 27. Re3 Qa5 28. Rh3 Nf8 29. Rg3 Qxa2 30. Rxg6 Nxg6 31.
+Qxf6+ Kg8 32. Qf3 Qc2 33. Qd3 1-0
+
+[White "Smyslov"]
+[Black "Reshevsky"]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
+c3 d6 9. h3 Na5 10. Bc2 c5 11. d4 Qc7 12. Nbd2 cxd4 13. cxd4 Nc6 14. Nb3 a5
+15. Be3 a4 16. Nbd2 Bd7 17. Rc1 Rfc8 18. Bb1 Qb8 19. Nf1 Na5 20. Rxc8+ Bxc8
+21. Bg5 h6 22. Bh4 Nc6 23. Ne3 Nxd4 24. Nxd4 exd4 25. Qxd4 Qa7 26. Qd3 Be6
+27. Bg3 Qc5 28. Nd5 Bxd5 29. exd5 Ra7 30. Rd1 Rc7 31. Bh4 g6 32. a3 Qxd5
+33. Bxf6 Qxd3 34. Bxd3 Bxf6 35. Bxb5 Bxb2 36. Rd3 Rc5 37. Bxa4 Ra5 38. Bb3
+Bxa3 39. Rf3 d5 40. Bxd5 Rxd5 41. Rxa3 1/2-1/2
+
+[White "Euwe"]
+[Black "Smyslov"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Nf3 Bg7 5. Qb3 dxc4 6. Qxc4 O-O 7. e4 Bg4
+8. Be3 Nfd7 9. Qb3 Nb6 10. a4 a5 11. d5 Na6 12. Be2 e6 13. h3 Bxf3 14. Bxf3
+exd5 15. exd5 Qh4 16. Ne4 Rae8 17. g3 Qd8 18. d6 Nc8 19. dxc7 Qxc7 20. O-O
+Re6 21. Rac1 Qe5 22. Qxb7 Ne7 23. Ng5 Rf6 24. Bf4 Rxf4 25. gxf4 Qxf4 26.
+Qxe7 Bf6 27. Qe3 Qxe3 28. fxe3 Bxg5 29. Rc3 f5 30. Rd1 Nc5 31. b3 Re8 32.
+Rd5 Bxe3+ 33. Kg2 Na6 34. Rd7 Bf4 35. Ra7 Nb4 36. Rxa5 Kg7 37. Rb5 Bd2 38.
+Rc7+ Kf6 39. Rd7 Be1 40. Rb6+ Kg5 41. h4+ Kf4 42. Rxb4+ 1-0
+
+[White "Geller"]
+[Black "Euwe"]
+[Result "0-1"]
+
+1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 c5 5. a3 Bxc3+ 6. bxc3 b6 7. Bd3 Bb7 8.
+f3 Nc6 9. Ne2 O-O 10. O-O Na5 11. e4 Ne8 12. Ng3 cxd4 13. cxd4 Rc8 14. f4
+Nxc4 15. f5 f6 16. Rf4 b5 17. Rh4 Qb6 18. e5 Nxe5 19. fxe6 Nxd3 20. Qxd3
+Qxe6 21. Qxh7+ Kf7 22. Bh6 Rh8 23. Qxh8 Rc2 24. Rc1 Rxg2+ 25. Kf1 Qb3 26.
+Ke1 Qf3 0-1
+
+[White "Geller"]
+[Black "Bronstein"]
+[Result "1-0"]
+
+1. d4 e6 2. Nf3 Nf6 3. c4 d5 4. cxd5 exd5 5. Nc3 c6 6. Qc2 Bg4 7. Bg5 Nbd7
+8. e3 Bd6 9. Bd3 Qc7 10. O-O-O h6 11. Bh4 Bb4 12. Kb1 Bxc3 13. Qxc3 O-O 14.
+h3 Bh5 15. Qc2 Ne4 16. Bxe4 dxe4 17. g4 Bg6 18. Nd2 Nb6 19. Nc4 Nd5 20. Bg3
+Qd7 21. Ne5 Qe6 22. Qb3 Bh7 23. Rc1 a5 24. Qxb7 Nb4 25. Nc4 c5 26. dxc5 Nd3
+27. c6 f5 28. gxf5 Bxf5 29. Rhg1 Bg6 30. Rc2 Rac8 31. Bd6 Rfe8 32. Qd7 Qf6
+33. c7 Bf5 34. Qb5 Bxh3 35. Bg3 Be6 36. Nd6 Nb4 37. Nxe8 Bxa2+ 38. Kc1 Qe7
+39. Nd6 Nd3+ 40. Kd2 Rxc7 41. Qe8+ Qxe8 42. Nxe8 Rd7 43. Rc7 1-0
+
+[White "Sveshnikov"]
+[Black "Petrosian"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nf6 5. Bd3 a6 6. O-O d6 7. c4 Be7 8.
+b3 O-O 9. Bb2 Nc6 10. Nxc6 bxc6 11. Qc2 Nd7 12. e5 dxe5 13. Bxh7+ Kh8 14.
+f4 f5 15. Bg6 Rf6 16. Bh5 Rh6 17. g4 g6 18. Nd2 gxh5 19. g5 Rh7 20. Nf3 Kg8
+21. Nxe5 Nxe5 22. Bxe5 Qb6+ 23. Kg2 c5 24. Kh3 Qc6 25. Rad1 Bb7 26. Rd3 Rd8
+27. Rfd1 Rxd3+ 28. Rxd3 Qh1 29. Qe2 Be4 30. Rd1 Bf3 31. Rxh1 Bxe2 32. Re1
+Bf3 33. Rf1 Bc6 34. Rg1 Bd8 35. Bd6 Rd7 36. Bxc5 Kg7 37. b4 Bc7 38. Re1 Be4
+39. Be3 e5 40. fxe5 Bxe5 41. b5 0-1
+
+[White "Stahlberg"]
+[Black "Averbakh"]
+[Result "1-0"]
+
+1. d4 Nf6 2. c4 e6 3. Nf3 b6 4. g3 Bb7 5. Bg2 Be7 6. Nc3 Ne4 7. Bd2 f5 8.
+O-O O-O 9. Qc2 Nxc3 10. Bxc3 Be4 11. Qb3 a5 12. Ne1 a4 13. Qd1 Bxg2 14.
+Nxg2 Bf6 15. Qd3 Nc6 16. e4 fxe4 17. Qxe4 Qe8 18. Rad1 Qf7 19. Ne3 Qg6 20.
+Qxg6 hxg6 21. Rfe1 Na5 22. Re2 Rfe8 23. Rc2 d6 24. Kg2 Kf7 25. Rd3 Ke7 26.
+h4 Kd7 27. f4 Nb7 28. Ng4 Na5 29. Ne5+ Kc8 30. Bxa5 dxe5 31. fxe5 Rxa5 32.
+exf6 gxf6 33. c5 bxc5 34. dxc5 Rd8 35. Rf3 f5 36. Re3 Re8 37. Re5 Kd8 38.
+Rce2 Rb5 39. Kf3 Rb4 40. c6 Re4 41. R2xe4 fxe4+ 42. Rxe4 a3 43. Rd4+ Kc8
+44. Ra4 1-0
+
+[White "Keres"]
+[Black "Reshevsky"]
+[Result "0-1"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. Qe2 Nc5 10. Rd1 Nxb3 11. axb3 Qc8 12. Bg5 h6 13. Bh4 Bc5 14.
+Nc3 g5 15. Bg3 Qb7 16. Nxd5 O-O-O 17. Nf6 g4 18. Ne1 Nd4 19. Qf1 h5 20. Bf4
+h4 21. Be3 h3 22. Rd2 hxg2 23. Qxg2 Nf3+ 24. Nxf3 Bxe3 25. Rxd8+ Rxd8 26.
+Ne1 Bd4 27. Nd3 Bf5 28. Re1 a5 29. Ne4 Kb8 30. b4 a4 31. c3 Bxe4 32. Rxe4
+Bxc3 33. Re3 Qxg2+ 34. Kxg2 Rxd3 35. Rxd3 Bxb2 36. Rd5 c6 37. Rd8+ Kc7 38.
+Ra8 Kb7 39. Rf8 Bxe5 40. Rxf7+ Kb6 41. f4 0-1
+
diff --git a/_assets/vendor/pgn4web/gotd.php b/_assets/vendor/pgn4web/gotd.php
new file mode 100644
index 0000000..0455bd7
--- /dev/null
+++ b/_assets/vendor/pgn4web/gotd.php
@@ -0,0 +1,56 @@
+"), array("&", "<", ">"), $pgnText);
+ return $pgnText;
+}
+
+$pgnText = get_pgnText($pgnData);
+
+$numGames = preg_match_all("/(\s*\[\s*(\w+)\s*\"([^\"]*)\"\s*\]\s*)+[^\[]*/", $pgnText, $games );
+
+
+$gameNum = get_param("gameNum", "gn", "");
+
+$expiresDate = "";
+if ($gameNum == "random") { $gameNum = rand(1, $numGames); }
+else if (!preg_match("/^\d+$/", $gameNum)) {
+ $timeNow = time();
+ $expiresDate = gmdate("D, d M Y H:i:s", (floor($timeNow / (60 * 60 * 24)) + 1) * (60 * 60 * 24)) . " GMT";
+ if (!preg_match("/^[ +-]\d+$/", $gameNum)) { $gameNum = 0; } // space is needed since + is urldecoded as space
+ $gameNum = floor(($gameNum + ($timeNow / (60 * 60 * 24))) % $numGames) + 1;
+}
+else if ($gameNum < 1) { $gameNum = 1; }
+else if ($gameNum > $numGames) { $gameNum = $numGames; }
+$gameNum -= 1;
+
+header("content-type: application/x-chess-pgn");
+header("content-disposition: inline; filename=game.pgn");
+if ($expiresDate) {
+ header("expires: " . $expiresDate);
+}
+print $games[0][$gameNum];
+
+?>
diff --git a/_assets/vendor/pgn4web/home.html b/_assets/vendor/pgn4web/home.html
new file mode 100644
index 0000000..f7c43c2
--- /dev/null
+++ b/_assets/vendor/pgn4web/home.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+pgn4web
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+pgn4web
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+javascript chess games viewer for websites, blogs and live broadcasts
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/alpha/112/bb.png b/_assets/vendor/pgn4web/images/alpha/112/bb.png
new file mode 100644
index 0000000..c824f5b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/bk.png b/_assets/vendor/pgn4web/images/alpha/112/bk.png
new file mode 100644
index 0000000..fde1842
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/bn.png b/_assets/vendor/pgn4web/images/alpha/112/bn.png
new file mode 100644
index 0000000..0e2768f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/bp.png b/_assets/vendor/pgn4web/images/alpha/112/bp.png
new file mode 100644
index 0000000..a57356a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/bq.png b/_assets/vendor/pgn4web/images/alpha/112/bq.png
new file mode 100644
index 0000000..f796e87
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/br.png b/_assets/vendor/pgn4web/images/alpha/112/br.png
new file mode 100644
index 0000000..4a2cbcf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/clear.png b/_assets/vendor/pgn4web/images/alpha/112/clear.png
new file mode 100644
index 0000000..6d6780b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/index.html b/_assets/vendor/pgn4web/images/alpha/112/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/112/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wb.png b/_assets/vendor/pgn4web/images/alpha/112/wb.png
new file mode 100644
index 0000000..c202824
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wk.png b/_assets/vendor/pgn4web/images/alpha/112/wk.png
new file mode 100644
index 0000000..e41d9eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wn.png b/_assets/vendor/pgn4web/images/alpha/112/wn.png
new file mode 100644
index 0000000..d32f595
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wp.png b/_assets/vendor/pgn4web/images/alpha/112/wp.png
new file mode 100644
index 0000000..c457fdb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wq.png b/_assets/vendor/pgn4web/images/alpha/112/wq.png
new file mode 100644
index 0000000..9877109
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/112/wr.png b/_assets/vendor/pgn4web/images/alpha/112/wr.png
new file mode 100644
index 0000000..4344a40
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/112/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/bb.png b/_assets/vendor/pgn4web/images/alpha/128/bb.png
new file mode 100644
index 0000000..670b615
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/bk.png b/_assets/vendor/pgn4web/images/alpha/128/bk.png
new file mode 100644
index 0000000..28e3d7b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/bn.png b/_assets/vendor/pgn4web/images/alpha/128/bn.png
new file mode 100644
index 0000000..014d7e7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/bp.png b/_assets/vendor/pgn4web/images/alpha/128/bp.png
new file mode 100644
index 0000000..72c0cb0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/bq.png b/_assets/vendor/pgn4web/images/alpha/128/bq.png
new file mode 100644
index 0000000..2df5578
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/br.png b/_assets/vendor/pgn4web/images/alpha/128/br.png
new file mode 100644
index 0000000..ca47a16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/clear.png b/_assets/vendor/pgn4web/images/alpha/128/clear.png
new file mode 100644
index 0000000..56682b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/index.html b/_assets/vendor/pgn4web/images/alpha/128/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/128/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wb.png b/_assets/vendor/pgn4web/images/alpha/128/wb.png
new file mode 100644
index 0000000..9b00709
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wk.png b/_assets/vendor/pgn4web/images/alpha/128/wk.png
new file mode 100644
index 0000000..abaa66f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wn.png b/_assets/vendor/pgn4web/images/alpha/128/wn.png
new file mode 100644
index 0000000..a8554f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wp.png b/_assets/vendor/pgn4web/images/alpha/128/wp.png
new file mode 100644
index 0000000..3586a00
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wq.png b/_assets/vendor/pgn4web/images/alpha/128/wq.png
new file mode 100644
index 0000000..a220149
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/128/wr.png b/_assets/vendor/pgn4web/images/alpha/128/wr.png
new file mode 100644
index 0000000..f98855e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/128/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/bb.png b/_assets/vendor/pgn4web/images/alpha/144/bb.png
new file mode 100644
index 0000000..9f469a6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/bk.png b/_assets/vendor/pgn4web/images/alpha/144/bk.png
new file mode 100644
index 0000000..ac42c9b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/bn.png b/_assets/vendor/pgn4web/images/alpha/144/bn.png
new file mode 100644
index 0000000..6b82ea5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/bp.png b/_assets/vendor/pgn4web/images/alpha/144/bp.png
new file mode 100644
index 0000000..1dbfcc2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/bq.png b/_assets/vendor/pgn4web/images/alpha/144/bq.png
new file mode 100644
index 0000000..2d0ca2d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/br.png b/_assets/vendor/pgn4web/images/alpha/144/br.png
new file mode 100644
index 0000000..969d667
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/clear.png b/_assets/vendor/pgn4web/images/alpha/144/clear.png
new file mode 100644
index 0000000..e16fd29
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/index.html b/_assets/vendor/pgn4web/images/alpha/144/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/144/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wb.png b/_assets/vendor/pgn4web/images/alpha/144/wb.png
new file mode 100644
index 0000000..75a25fd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wk.png b/_assets/vendor/pgn4web/images/alpha/144/wk.png
new file mode 100644
index 0000000..cfcdd85
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wn.png b/_assets/vendor/pgn4web/images/alpha/144/wn.png
new file mode 100644
index 0000000..1efe472
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wp.png b/_assets/vendor/pgn4web/images/alpha/144/wp.png
new file mode 100644
index 0000000..0d5003b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wq.png b/_assets/vendor/pgn4web/images/alpha/144/wq.png
new file mode 100644
index 0000000..aafa111
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/144/wr.png b/_assets/vendor/pgn4web/images/alpha/144/wr.png
new file mode 100644
index 0000000..9e2b9dd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/144/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/bb.png b/_assets/vendor/pgn4web/images/alpha/20/bb.png
new file mode 100644
index 0000000..a040e8c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/bk.png b/_assets/vendor/pgn4web/images/alpha/20/bk.png
new file mode 100644
index 0000000..e1d8466
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/bn.png b/_assets/vendor/pgn4web/images/alpha/20/bn.png
new file mode 100644
index 0000000..0b181c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/bp.png b/_assets/vendor/pgn4web/images/alpha/20/bp.png
new file mode 100644
index 0000000..1741a9d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/bq.png b/_assets/vendor/pgn4web/images/alpha/20/bq.png
new file mode 100644
index 0000000..e4b4e51
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/br.png b/_assets/vendor/pgn4web/images/alpha/20/br.png
new file mode 100644
index 0000000..b0e55d4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/clear.png b/_assets/vendor/pgn4web/images/alpha/20/clear.png
new file mode 100644
index 0000000..65d8dce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/index.html b/_assets/vendor/pgn4web/images/alpha/20/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/20/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wb.png b/_assets/vendor/pgn4web/images/alpha/20/wb.png
new file mode 100644
index 0000000..59f5a6b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wk.png b/_assets/vendor/pgn4web/images/alpha/20/wk.png
new file mode 100644
index 0000000..ceb7d15
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wn.png b/_assets/vendor/pgn4web/images/alpha/20/wn.png
new file mode 100644
index 0000000..7801d04
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wp.png b/_assets/vendor/pgn4web/images/alpha/20/wp.png
new file mode 100644
index 0000000..71f6ca1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wq.png b/_assets/vendor/pgn4web/images/alpha/20/wq.png
new file mode 100644
index 0000000..9ac43d0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/20/wr.png b/_assets/vendor/pgn4web/images/alpha/20/wr.png
new file mode 100644
index 0000000..01238d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/20/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/bb.png b/_assets/vendor/pgn4web/images/alpha/21/bb.png
new file mode 100644
index 0000000..164d03e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/bk.png b/_assets/vendor/pgn4web/images/alpha/21/bk.png
new file mode 100644
index 0000000..908eb99
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/bn.png b/_assets/vendor/pgn4web/images/alpha/21/bn.png
new file mode 100644
index 0000000..6147eaf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/bp.png b/_assets/vendor/pgn4web/images/alpha/21/bp.png
new file mode 100644
index 0000000..eb27bd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/bq.png b/_assets/vendor/pgn4web/images/alpha/21/bq.png
new file mode 100644
index 0000000..165955e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/br.png b/_assets/vendor/pgn4web/images/alpha/21/br.png
new file mode 100644
index 0000000..224e0b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/clear.png b/_assets/vendor/pgn4web/images/alpha/21/clear.png
new file mode 100644
index 0000000..545ad7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/index.html b/_assets/vendor/pgn4web/images/alpha/21/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/21/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wb.png b/_assets/vendor/pgn4web/images/alpha/21/wb.png
new file mode 100644
index 0000000..444277e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wk.png b/_assets/vendor/pgn4web/images/alpha/21/wk.png
new file mode 100644
index 0000000..ff8fb81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wn.png b/_assets/vendor/pgn4web/images/alpha/21/wn.png
new file mode 100644
index 0000000..48da191
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wp.png b/_assets/vendor/pgn4web/images/alpha/21/wp.png
new file mode 100644
index 0000000..b901a53
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wq.png b/_assets/vendor/pgn4web/images/alpha/21/wq.png
new file mode 100644
index 0000000..4a1b6b3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/21/wr.png b/_assets/vendor/pgn4web/images/alpha/21/wr.png
new file mode 100644
index 0000000..3f45ca1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/21/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/bb.png b/_assets/vendor/pgn4web/images/alpha/22/bb.png
new file mode 100644
index 0000000..68f6873
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/bk.png b/_assets/vendor/pgn4web/images/alpha/22/bk.png
new file mode 100644
index 0000000..5102e99
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/bn.png b/_assets/vendor/pgn4web/images/alpha/22/bn.png
new file mode 100644
index 0000000..47c0f68
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/bp.png b/_assets/vendor/pgn4web/images/alpha/22/bp.png
new file mode 100644
index 0000000..df05e2a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/bq.png b/_assets/vendor/pgn4web/images/alpha/22/bq.png
new file mode 100644
index 0000000..faa5262
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/br.png b/_assets/vendor/pgn4web/images/alpha/22/br.png
new file mode 100644
index 0000000..087e732
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/clear.png b/_assets/vendor/pgn4web/images/alpha/22/clear.png
new file mode 100644
index 0000000..3544026
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/index.html b/_assets/vendor/pgn4web/images/alpha/22/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/22/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wb.png b/_assets/vendor/pgn4web/images/alpha/22/wb.png
new file mode 100644
index 0000000..e2afc61
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wk.png b/_assets/vendor/pgn4web/images/alpha/22/wk.png
new file mode 100644
index 0000000..5e1ea8b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wn.png b/_assets/vendor/pgn4web/images/alpha/22/wn.png
new file mode 100644
index 0000000..aba0c90
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wp.png b/_assets/vendor/pgn4web/images/alpha/22/wp.png
new file mode 100644
index 0000000..5f09f15
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wq.png b/_assets/vendor/pgn4web/images/alpha/22/wq.png
new file mode 100644
index 0000000..344b782
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/22/wr.png b/_assets/vendor/pgn4web/images/alpha/22/wr.png
new file mode 100644
index 0000000..0f67d41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/22/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/bb.png b/_assets/vendor/pgn4web/images/alpha/23/bb.png
new file mode 100644
index 0000000..4c26ea2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/bk.png b/_assets/vendor/pgn4web/images/alpha/23/bk.png
new file mode 100644
index 0000000..f9e9842
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/bn.png b/_assets/vendor/pgn4web/images/alpha/23/bn.png
new file mode 100644
index 0000000..097c439
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/bp.png b/_assets/vendor/pgn4web/images/alpha/23/bp.png
new file mode 100644
index 0000000..47582eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/bq.png b/_assets/vendor/pgn4web/images/alpha/23/bq.png
new file mode 100644
index 0000000..d50d4d4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/br.png b/_assets/vendor/pgn4web/images/alpha/23/br.png
new file mode 100644
index 0000000..3fae807
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/clear.png b/_assets/vendor/pgn4web/images/alpha/23/clear.png
new file mode 100644
index 0000000..844df3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/index.html b/_assets/vendor/pgn4web/images/alpha/23/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/23/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wb.png b/_assets/vendor/pgn4web/images/alpha/23/wb.png
new file mode 100644
index 0000000..93877ca
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wk.png b/_assets/vendor/pgn4web/images/alpha/23/wk.png
new file mode 100644
index 0000000..14cff44
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wn.png b/_assets/vendor/pgn4web/images/alpha/23/wn.png
new file mode 100644
index 0000000..d6d7177
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wp.png b/_assets/vendor/pgn4web/images/alpha/23/wp.png
new file mode 100644
index 0000000..ed7d477
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wq.png b/_assets/vendor/pgn4web/images/alpha/23/wq.png
new file mode 100644
index 0000000..0be3749
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/23/wr.png b/_assets/vendor/pgn4web/images/alpha/23/wr.png
new file mode 100644
index 0000000..db45811
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/23/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/bb.png b/_assets/vendor/pgn4web/images/alpha/24/bb.png
new file mode 100644
index 0000000..a99771a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/bk.png b/_assets/vendor/pgn4web/images/alpha/24/bk.png
new file mode 100644
index 0000000..dcb3eda
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/bn.png b/_assets/vendor/pgn4web/images/alpha/24/bn.png
new file mode 100644
index 0000000..eb3c46d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/bp.png b/_assets/vendor/pgn4web/images/alpha/24/bp.png
new file mode 100644
index 0000000..bd1800f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/bq.png b/_assets/vendor/pgn4web/images/alpha/24/bq.png
new file mode 100644
index 0000000..d6efbb6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/br.png b/_assets/vendor/pgn4web/images/alpha/24/br.png
new file mode 100644
index 0000000..fd5b340
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/clear.png b/_assets/vendor/pgn4web/images/alpha/24/clear.png
new file mode 100644
index 0000000..b0b6716
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/index.html b/_assets/vendor/pgn4web/images/alpha/24/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/24/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wb.png b/_assets/vendor/pgn4web/images/alpha/24/wb.png
new file mode 100644
index 0000000..8d8b9a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wk.png b/_assets/vendor/pgn4web/images/alpha/24/wk.png
new file mode 100644
index 0000000..c3a688f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wn.png b/_assets/vendor/pgn4web/images/alpha/24/wn.png
new file mode 100644
index 0000000..2ef2870
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wp.png b/_assets/vendor/pgn4web/images/alpha/24/wp.png
new file mode 100644
index 0000000..7fa5321
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wq.png b/_assets/vendor/pgn4web/images/alpha/24/wq.png
new file mode 100644
index 0000000..83939d5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/24/wr.png b/_assets/vendor/pgn4web/images/alpha/24/wr.png
new file mode 100644
index 0000000..c65a7ba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/24/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/bb.png b/_assets/vendor/pgn4web/images/alpha/25/bb.png
new file mode 100644
index 0000000..8f71cf4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/bk.png b/_assets/vendor/pgn4web/images/alpha/25/bk.png
new file mode 100644
index 0000000..a44cca4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/bn.png b/_assets/vendor/pgn4web/images/alpha/25/bn.png
new file mode 100644
index 0000000..e80cba6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/bp.png b/_assets/vendor/pgn4web/images/alpha/25/bp.png
new file mode 100644
index 0000000..bf1abc5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/bq.png b/_assets/vendor/pgn4web/images/alpha/25/bq.png
new file mode 100644
index 0000000..631fde4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/br.png b/_assets/vendor/pgn4web/images/alpha/25/br.png
new file mode 100644
index 0000000..880c932
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/clear.png b/_assets/vendor/pgn4web/images/alpha/25/clear.png
new file mode 100644
index 0000000..271cd57
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/index.html b/_assets/vendor/pgn4web/images/alpha/25/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/25/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wb.png b/_assets/vendor/pgn4web/images/alpha/25/wb.png
new file mode 100644
index 0000000..2897e4b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wk.png b/_assets/vendor/pgn4web/images/alpha/25/wk.png
new file mode 100644
index 0000000..dec1284
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wn.png b/_assets/vendor/pgn4web/images/alpha/25/wn.png
new file mode 100644
index 0000000..4a4603a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wp.png b/_assets/vendor/pgn4web/images/alpha/25/wp.png
new file mode 100644
index 0000000..fa9b62e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wq.png b/_assets/vendor/pgn4web/images/alpha/25/wq.png
new file mode 100644
index 0000000..c4ec83f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/25/wr.png b/_assets/vendor/pgn4web/images/alpha/25/wr.png
new file mode 100644
index 0000000..081e972
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/25/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/bb.png b/_assets/vendor/pgn4web/images/alpha/26/bb.png
new file mode 100644
index 0000000..a795c37
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/bk.png b/_assets/vendor/pgn4web/images/alpha/26/bk.png
new file mode 100644
index 0000000..3f4def8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/bn.png b/_assets/vendor/pgn4web/images/alpha/26/bn.png
new file mode 100644
index 0000000..07fdd49
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/bp.png b/_assets/vendor/pgn4web/images/alpha/26/bp.png
new file mode 100644
index 0000000..55781fb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/bq.png b/_assets/vendor/pgn4web/images/alpha/26/bq.png
new file mode 100644
index 0000000..b6a1f1b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/br.png b/_assets/vendor/pgn4web/images/alpha/26/br.png
new file mode 100644
index 0000000..9f61655
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/clear.png b/_assets/vendor/pgn4web/images/alpha/26/clear.png
new file mode 100644
index 0000000..8f4f371
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/index.html b/_assets/vendor/pgn4web/images/alpha/26/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/26/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wb.png b/_assets/vendor/pgn4web/images/alpha/26/wb.png
new file mode 100644
index 0000000..a9e6d04
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wk.png b/_assets/vendor/pgn4web/images/alpha/26/wk.png
new file mode 100644
index 0000000..ee517ba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wn.png b/_assets/vendor/pgn4web/images/alpha/26/wn.png
new file mode 100644
index 0000000..e77f8fb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wp.png b/_assets/vendor/pgn4web/images/alpha/26/wp.png
new file mode 100644
index 0000000..50559c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wq.png b/_assets/vendor/pgn4web/images/alpha/26/wq.png
new file mode 100644
index 0000000..25ef440
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/26/wr.png b/_assets/vendor/pgn4web/images/alpha/26/wr.png
new file mode 100644
index 0000000..fb27364
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/26/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/bb.png b/_assets/vendor/pgn4web/images/alpha/27/bb.png
new file mode 100644
index 0000000..800939e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/bk.png b/_assets/vendor/pgn4web/images/alpha/27/bk.png
new file mode 100644
index 0000000..82ec009
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/bn.png b/_assets/vendor/pgn4web/images/alpha/27/bn.png
new file mode 100644
index 0000000..34098f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/bp.png b/_assets/vendor/pgn4web/images/alpha/27/bp.png
new file mode 100644
index 0000000..c78a928
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/bq.png b/_assets/vendor/pgn4web/images/alpha/27/bq.png
new file mode 100644
index 0000000..33db9ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/br.png b/_assets/vendor/pgn4web/images/alpha/27/br.png
new file mode 100644
index 0000000..c1055ed
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/clear.png b/_assets/vendor/pgn4web/images/alpha/27/clear.png
new file mode 100644
index 0000000..b66fc48
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/index.html b/_assets/vendor/pgn4web/images/alpha/27/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/27/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wb.png b/_assets/vendor/pgn4web/images/alpha/27/wb.png
new file mode 100644
index 0000000..fb7eb6f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wk.png b/_assets/vendor/pgn4web/images/alpha/27/wk.png
new file mode 100644
index 0000000..7bef94d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wn.png b/_assets/vendor/pgn4web/images/alpha/27/wn.png
new file mode 100644
index 0000000..2b5ffc2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wp.png b/_assets/vendor/pgn4web/images/alpha/27/wp.png
new file mode 100644
index 0000000..607ade5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wq.png b/_assets/vendor/pgn4web/images/alpha/27/wq.png
new file mode 100644
index 0000000..ae156d7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/27/wr.png b/_assets/vendor/pgn4web/images/alpha/27/wr.png
new file mode 100644
index 0000000..6374c85
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/27/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/bb.png b/_assets/vendor/pgn4web/images/alpha/28/bb.png
new file mode 100644
index 0000000..48e80ae
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/bk.png b/_assets/vendor/pgn4web/images/alpha/28/bk.png
new file mode 100644
index 0000000..6fdb213
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/bn.png b/_assets/vendor/pgn4web/images/alpha/28/bn.png
new file mode 100644
index 0000000..23c517b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/bp.png b/_assets/vendor/pgn4web/images/alpha/28/bp.png
new file mode 100644
index 0000000..46b371b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/bq.png b/_assets/vendor/pgn4web/images/alpha/28/bq.png
new file mode 100644
index 0000000..b719431
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/br.png b/_assets/vendor/pgn4web/images/alpha/28/br.png
new file mode 100644
index 0000000..92f63a1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/clear.png b/_assets/vendor/pgn4web/images/alpha/28/clear.png
new file mode 100644
index 0000000..7ccfdd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/index.html b/_assets/vendor/pgn4web/images/alpha/28/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/28/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wb.png b/_assets/vendor/pgn4web/images/alpha/28/wb.png
new file mode 100644
index 0000000..400cbbd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wk.png b/_assets/vendor/pgn4web/images/alpha/28/wk.png
new file mode 100644
index 0000000..ca49fff
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wn.png b/_assets/vendor/pgn4web/images/alpha/28/wn.png
new file mode 100644
index 0000000..4e4a601
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wp.png b/_assets/vendor/pgn4web/images/alpha/28/wp.png
new file mode 100644
index 0000000..f92a7dd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wq.png b/_assets/vendor/pgn4web/images/alpha/28/wq.png
new file mode 100644
index 0000000..d91bd13
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/28/wr.png b/_assets/vendor/pgn4web/images/alpha/28/wr.png
new file mode 100644
index 0000000..5d8c8ff
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/28/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/bb.png b/_assets/vendor/pgn4web/images/alpha/29/bb.png
new file mode 100644
index 0000000..d70fd21
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/bk.png b/_assets/vendor/pgn4web/images/alpha/29/bk.png
new file mode 100644
index 0000000..b54833c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/bn.png b/_assets/vendor/pgn4web/images/alpha/29/bn.png
new file mode 100644
index 0000000..2ebf566
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/bp.png b/_assets/vendor/pgn4web/images/alpha/29/bp.png
new file mode 100644
index 0000000..d5fe2c7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/bq.png b/_assets/vendor/pgn4web/images/alpha/29/bq.png
new file mode 100644
index 0000000..0c23fbe
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/br.png b/_assets/vendor/pgn4web/images/alpha/29/br.png
new file mode 100644
index 0000000..5170520
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/clear.png b/_assets/vendor/pgn4web/images/alpha/29/clear.png
new file mode 100644
index 0000000..6066131
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/index.html b/_assets/vendor/pgn4web/images/alpha/29/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/29/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wb.png b/_assets/vendor/pgn4web/images/alpha/29/wb.png
new file mode 100644
index 0000000..9a59c49
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wk.png b/_assets/vendor/pgn4web/images/alpha/29/wk.png
new file mode 100644
index 0000000..7d0dd53
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wn.png b/_assets/vendor/pgn4web/images/alpha/29/wn.png
new file mode 100644
index 0000000..dc1e4bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wp.png b/_assets/vendor/pgn4web/images/alpha/29/wp.png
new file mode 100644
index 0000000..6afe1fc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wq.png b/_assets/vendor/pgn4web/images/alpha/29/wq.png
new file mode 100644
index 0000000..40a7ffb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/29/wr.png b/_assets/vendor/pgn4web/images/alpha/29/wr.png
new file mode 100644
index 0000000..3ebd98d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/29/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/bb.png b/_assets/vendor/pgn4web/images/alpha/30/bb.png
new file mode 100644
index 0000000..3cd6ddb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/bk.png b/_assets/vendor/pgn4web/images/alpha/30/bk.png
new file mode 100644
index 0000000..27984e3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/bn.png b/_assets/vendor/pgn4web/images/alpha/30/bn.png
new file mode 100644
index 0000000..a0bddf5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/bp.png b/_assets/vendor/pgn4web/images/alpha/30/bp.png
new file mode 100644
index 0000000..3c58168
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/bq.png b/_assets/vendor/pgn4web/images/alpha/30/bq.png
new file mode 100644
index 0000000..8438dc4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/br.png b/_assets/vendor/pgn4web/images/alpha/30/br.png
new file mode 100644
index 0000000..411b0af
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/clear.png b/_assets/vendor/pgn4web/images/alpha/30/clear.png
new file mode 100644
index 0000000..26efd52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/index.html b/_assets/vendor/pgn4web/images/alpha/30/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/30/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wb.png b/_assets/vendor/pgn4web/images/alpha/30/wb.png
new file mode 100644
index 0000000..b4cba46
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wk.png b/_assets/vendor/pgn4web/images/alpha/30/wk.png
new file mode 100644
index 0000000..50fbd3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wn.png b/_assets/vendor/pgn4web/images/alpha/30/wn.png
new file mode 100644
index 0000000..ddd2122
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wp.png b/_assets/vendor/pgn4web/images/alpha/30/wp.png
new file mode 100644
index 0000000..e572a5d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wq.png b/_assets/vendor/pgn4web/images/alpha/30/wq.png
new file mode 100644
index 0000000..917fe81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/30/wr.png b/_assets/vendor/pgn4web/images/alpha/30/wr.png
new file mode 100644
index 0000000..b032155
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/30/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/bb.png b/_assets/vendor/pgn4web/images/alpha/300/bb.png
new file mode 100644
index 0000000..a3dd3b5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/bk.png b/_assets/vendor/pgn4web/images/alpha/300/bk.png
new file mode 100644
index 0000000..5b76c60
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/bn.png b/_assets/vendor/pgn4web/images/alpha/300/bn.png
new file mode 100644
index 0000000..5e18b9e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/bp.png b/_assets/vendor/pgn4web/images/alpha/300/bp.png
new file mode 100644
index 0000000..2c72066
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/bq.png b/_assets/vendor/pgn4web/images/alpha/300/bq.png
new file mode 100644
index 0000000..bc382a2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/br.png b/_assets/vendor/pgn4web/images/alpha/300/br.png
new file mode 100644
index 0000000..8e4d44c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/clear.png b/_assets/vendor/pgn4web/images/alpha/300/clear.png
new file mode 100644
index 0000000..c0c1495
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/index.html b/_assets/vendor/pgn4web/images/alpha/300/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/300/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wb.png b/_assets/vendor/pgn4web/images/alpha/300/wb.png
new file mode 100644
index 0000000..24548bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wk.png b/_assets/vendor/pgn4web/images/alpha/300/wk.png
new file mode 100644
index 0000000..d739e09
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wn.png b/_assets/vendor/pgn4web/images/alpha/300/wn.png
new file mode 100644
index 0000000..ee011a9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wp.png b/_assets/vendor/pgn4web/images/alpha/300/wp.png
new file mode 100644
index 0000000..24e5785
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wq.png b/_assets/vendor/pgn4web/images/alpha/300/wq.png
new file mode 100644
index 0000000..b0c0eae
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/300/wr.png b/_assets/vendor/pgn4web/images/alpha/300/wr.png
new file mode 100644
index 0000000..0242bc6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/300/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/bb.png b/_assets/vendor/pgn4web/images/alpha/31/bb.png
new file mode 100644
index 0000000..fcb90e9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/bk.png b/_assets/vendor/pgn4web/images/alpha/31/bk.png
new file mode 100644
index 0000000..73c0e00
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/bn.png b/_assets/vendor/pgn4web/images/alpha/31/bn.png
new file mode 100644
index 0000000..ff1993e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/bp.png b/_assets/vendor/pgn4web/images/alpha/31/bp.png
new file mode 100644
index 0000000..c155410
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/bq.png b/_assets/vendor/pgn4web/images/alpha/31/bq.png
new file mode 100644
index 0000000..b7564d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/br.png b/_assets/vendor/pgn4web/images/alpha/31/br.png
new file mode 100644
index 0000000..70dcf17
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/clear.png b/_assets/vendor/pgn4web/images/alpha/31/clear.png
new file mode 100644
index 0000000..7b58d16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/index.html b/_assets/vendor/pgn4web/images/alpha/31/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/31/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wb.png b/_assets/vendor/pgn4web/images/alpha/31/wb.png
new file mode 100644
index 0000000..6bc93c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wk.png b/_assets/vendor/pgn4web/images/alpha/31/wk.png
new file mode 100644
index 0000000..15a8534
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wn.png b/_assets/vendor/pgn4web/images/alpha/31/wn.png
new file mode 100644
index 0000000..8805e4a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wp.png b/_assets/vendor/pgn4web/images/alpha/31/wp.png
new file mode 100644
index 0000000..ad7f4e6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wq.png b/_assets/vendor/pgn4web/images/alpha/31/wq.png
new file mode 100644
index 0000000..7a59045
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/31/wr.png b/_assets/vendor/pgn4web/images/alpha/31/wr.png
new file mode 100644
index 0000000..c4327d7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/31/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/bb.png b/_assets/vendor/pgn4web/images/alpha/32/bb.png
new file mode 100644
index 0000000..381ebb8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/bk.png b/_assets/vendor/pgn4web/images/alpha/32/bk.png
new file mode 100644
index 0000000..3592ce9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/bn.png b/_assets/vendor/pgn4web/images/alpha/32/bn.png
new file mode 100644
index 0000000..2c3d755
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/bp.png b/_assets/vendor/pgn4web/images/alpha/32/bp.png
new file mode 100644
index 0000000..33eb433
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/bq.png b/_assets/vendor/pgn4web/images/alpha/32/bq.png
new file mode 100644
index 0000000..f3f4ab1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/br.png b/_assets/vendor/pgn4web/images/alpha/32/br.png
new file mode 100644
index 0000000..3be4d59
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/clear.png b/_assets/vendor/pgn4web/images/alpha/32/clear.png
new file mode 100644
index 0000000..afd9f37
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/index.html b/_assets/vendor/pgn4web/images/alpha/32/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/32/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wb.png b/_assets/vendor/pgn4web/images/alpha/32/wb.png
new file mode 100644
index 0000000..3822cb8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wk.png b/_assets/vendor/pgn4web/images/alpha/32/wk.png
new file mode 100644
index 0000000..3810239
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wn.png b/_assets/vendor/pgn4web/images/alpha/32/wn.png
new file mode 100644
index 0000000..66f0b81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wp.png b/_assets/vendor/pgn4web/images/alpha/32/wp.png
new file mode 100644
index 0000000..5e0983f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wq.png b/_assets/vendor/pgn4web/images/alpha/32/wq.png
new file mode 100644
index 0000000..d6931d7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/32/wr.png b/_assets/vendor/pgn4web/images/alpha/32/wr.png
new file mode 100644
index 0000000..1cf0f47
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/32/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/bb.png b/_assets/vendor/pgn4web/images/alpha/33/bb.png
new file mode 100644
index 0000000..6dc99b4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/bk.png b/_assets/vendor/pgn4web/images/alpha/33/bk.png
new file mode 100644
index 0000000..49cc219
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/bn.png b/_assets/vendor/pgn4web/images/alpha/33/bn.png
new file mode 100644
index 0000000..dde3de2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/bp.png b/_assets/vendor/pgn4web/images/alpha/33/bp.png
new file mode 100644
index 0000000..06615ef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/bq.png b/_assets/vendor/pgn4web/images/alpha/33/bq.png
new file mode 100644
index 0000000..eac12c2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/br.png b/_assets/vendor/pgn4web/images/alpha/33/br.png
new file mode 100644
index 0000000..61cdbb4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/clear.png b/_assets/vendor/pgn4web/images/alpha/33/clear.png
new file mode 100644
index 0000000..8b635b2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/index.html b/_assets/vendor/pgn4web/images/alpha/33/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/33/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wb.png b/_assets/vendor/pgn4web/images/alpha/33/wb.png
new file mode 100644
index 0000000..4d659c9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wk.png b/_assets/vendor/pgn4web/images/alpha/33/wk.png
new file mode 100644
index 0000000..5f98aa5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wn.png b/_assets/vendor/pgn4web/images/alpha/33/wn.png
new file mode 100644
index 0000000..5600009
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wp.png b/_assets/vendor/pgn4web/images/alpha/33/wp.png
new file mode 100644
index 0000000..513bf38
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wq.png b/_assets/vendor/pgn4web/images/alpha/33/wq.png
new file mode 100644
index 0000000..966235c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/33/wr.png b/_assets/vendor/pgn4web/images/alpha/33/wr.png
new file mode 100644
index 0000000..b0f863d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/33/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/bb.png b/_assets/vendor/pgn4web/images/alpha/34/bb.png
new file mode 100644
index 0000000..0157f86
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/bk.png b/_assets/vendor/pgn4web/images/alpha/34/bk.png
new file mode 100644
index 0000000..0ab4504
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/bn.png b/_assets/vendor/pgn4web/images/alpha/34/bn.png
new file mode 100644
index 0000000..e4a0b63
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/bp.png b/_assets/vendor/pgn4web/images/alpha/34/bp.png
new file mode 100644
index 0000000..8535c06
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/bq.png b/_assets/vendor/pgn4web/images/alpha/34/bq.png
new file mode 100644
index 0000000..6848786
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/br.png b/_assets/vendor/pgn4web/images/alpha/34/br.png
new file mode 100644
index 0000000..0c967a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/clear.png b/_assets/vendor/pgn4web/images/alpha/34/clear.png
new file mode 100644
index 0000000..d860ae1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/index.html b/_assets/vendor/pgn4web/images/alpha/34/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/34/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wb.png b/_assets/vendor/pgn4web/images/alpha/34/wb.png
new file mode 100644
index 0000000..e4c760c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wk.png b/_assets/vendor/pgn4web/images/alpha/34/wk.png
new file mode 100644
index 0000000..82e02c4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wn.png b/_assets/vendor/pgn4web/images/alpha/34/wn.png
new file mode 100644
index 0000000..9c1ce4d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wp.png b/_assets/vendor/pgn4web/images/alpha/34/wp.png
new file mode 100644
index 0000000..ab19116
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wq.png b/_assets/vendor/pgn4web/images/alpha/34/wq.png
new file mode 100644
index 0000000..bcb4f08
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/34/wr.png b/_assets/vendor/pgn4web/images/alpha/34/wr.png
new file mode 100644
index 0000000..93f8a13
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/34/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/bb.png b/_assets/vendor/pgn4web/images/alpha/35/bb.png
new file mode 100644
index 0000000..1771f9f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/bk.png b/_assets/vendor/pgn4web/images/alpha/35/bk.png
new file mode 100644
index 0000000..2365e1c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/bn.png b/_assets/vendor/pgn4web/images/alpha/35/bn.png
new file mode 100644
index 0000000..fa5d16b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/bp.png b/_assets/vendor/pgn4web/images/alpha/35/bp.png
new file mode 100644
index 0000000..5ff9415
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/bq.png b/_assets/vendor/pgn4web/images/alpha/35/bq.png
new file mode 100644
index 0000000..1e9b34b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/br.png b/_assets/vendor/pgn4web/images/alpha/35/br.png
new file mode 100644
index 0000000..290cfcf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/clear.png b/_assets/vendor/pgn4web/images/alpha/35/clear.png
new file mode 100644
index 0000000..d8cce5d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/index.html b/_assets/vendor/pgn4web/images/alpha/35/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/35/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wb.png b/_assets/vendor/pgn4web/images/alpha/35/wb.png
new file mode 100644
index 0000000..edc34b6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wk.png b/_assets/vendor/pgn4web/images/alpha/35/wk.png
new file mode 100644
index 0000000..afa760c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wn.png b/_assets/vendor/pgn4web/images/alpha/35/wn.png
new file mode 100644
index 0000000..15e5d5f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wp.png b/_assets/vendor/pgn4web/images/alpha/35/wp.png
new file mode 100644
index 0000000..5fed73e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wq.png b/_assets/vendor/pgn4web/images/alpha/35/wq.png
new file mode 100644
index 0000000..68fe6e8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/35/wr.png b/_assets/vendor/pgn4web/images/alpha/35/wr.png
new file mode 100644
index 0000000..7eb2bf6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/35/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/bb.png b/_assets/vendor/pgn4web/images/alpha/36/bb.png
new file mode 100644
index 0000000..80c2cda
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/bk.png b/_assets/vendor/pgn4web/images/alpha/36/bk.png
new file mode 100644
index 0000000..1ed61a1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/bn.png b/_assets/vendor/pgn4web/images/alpha/36/bn.png
new file mode 100644
index 0000000..66b5494
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/bp.png b/_assets/vendor/pgn4web/images/alpha/36/bp.png
new file mode 100644
index 0000000..aaaf68e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/bq.png b/_assets/vendor/pgn4web/images/alpha/36/bq.png
new file mode 100644
index 0000000..8d2b989
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/br.png b/_assets/vendor/pgn4web/images/alpha/36/br.png
new file mode 100644
index 0000000..b18a8f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/clear.png b/_assets/vendor/pgn4web/images/alpha/36/clear.png
new file mode 100644
index 0000000..9162b41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/index.html b/_assets/vendor/pgn4web/images/alpha/36/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/36/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wb.png b/_assets/vendor/pgn4web/images/alpha/36/wb.png
new file mode 100644
index 0000000..43ac68c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wk.png b/_assets/vendor/pgn4web/images/alpha/36/wk.png
new file mode 100644
index 0000000..35a0515
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wn.png b/_assets/vendor/pgn4web/images/alpha/36/wn.png
new file mode 100644
index 0000000..cd37d50
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wp.png b/_assets/vendor/pgn4web/images/alpha/36/wp.png
new file mode 100644
index 0000000..c700533
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wq.png b/_assets/vendor/pgn4web/images/alpha/36/wq.png
new file mode 100644
index 0000000..a7da2b2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/36/wr.png b/_assets/vendor/pgn4web/images/alpha/36/wr.png
new file mode 100644
index 0000000..37284ec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/36/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/bb.png b/_assets/vendor/pgn4web/images/alpha/37/bb.png
new file mode 100644
index 0000000..beaf134
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/bk.png b/_assets/vendor/pgn4web/images/alpha/37/bk.png
new file mode 100644
index 0000000..fa4b398
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/bn.png b/_assets/vendor/pgn4web/images/alpha/37/bn.png
new file mode 100644
index 0000000..d1c96f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/bp.png b/_assets/vendor/pgn4web/images/alpha/37/bp.png
new file mode 100644
index 0000000..358524c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/bq.png b/_assets/vendor/pgn4web/images/alpha/37/bq.png
new file mode 100644
index 0000000..afc3615
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/br.png b/_assets/vendor/pgn4web/images/alpha/37/br.png
new file mode 100644
index 0000000..1240c49
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/clear.png b/_assets/vendor/pgn4web/images/alpha/37/clear.png
new file mode 100644
index 0000000..a1ab072
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/index.html b/_assets/vendor/pgn4web/images/alpha/37/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/37/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wb.png b/_assets/vendor/pgn4web/images/alpha/37/wb.png
new file mode 100644
index 0000000..dd82cd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wk.png b/_assets/vendor/pgn4web/images/alpha/37/wk.png
new file mode 100644
index 0000000..5cb4d6a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wn.png b/_assets/vendor/pgn4web/images/alpha/37/wn.png
new file mode 100644
index 0000000..98b5da0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wp.png b/_assets/vendor/pgn4web/images/alpha/37/wp.png
new file mode 100644
index 0000000..6967c73
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wq.png b/_assets/vendor/pgn4web/images/alpha/37/wq.png
new file mode 100644
index 0000000..aff4334
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/37/wr.png b/_assets/vendor/pgn4web/images/alpha/37/wr.png
new file mode 100644
index 0000000..9cab22b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/37/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/bb.png b/_assets/vendor/pgn4web/images/alpha/38/bb.png
new file mode 100644
index 0000000..8c635d0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/bk.png b/_assets/vendor/pgn4web/images/alpha/38/bk.png
new file mode 100644
index 0000000..e95f636
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/bn.png b/_assets/vendor/pgn4web/images/alpha/38/bn.png
new file mode 100644
index 0000000..897e3d8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/bp.png b/_assets/vendor/pgn4web/images/alpha/38/bp.png
new file mode 100644
index 0000000..87b50da
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/bq.png b/_assets/vendor/pgn4web/images/alpha/38/bq.png
new file mode 100644
index 0000000..0fc3b78
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/br.png b/_assets/vendor/pgn4web/images/alpha/38/br.png
new file mode 100644
index 0000000..3366320
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/clear.png b/_assets/vendor/pgn4web/images/alpha/38/clear.png
new file mode 100644
index 0000000..a833d60
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/index.html b/_assets/vendor/pgn4web/images/alpha/38/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/38/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wb.png b/_assets/vendor/pgn4web/images/alpha/38/wb.png
new file mode 100644
index 0000000..16c913b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wk.png b/_assets/vendor/pgn4web/images/alpha/38/wk.png
new file mode 100644
index 0000000..01a41db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wn.png b/_assets/vendor/pgn4web/images/alpha/38/wn.png
new file mode 100644
index 0000000..420a449
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wp.png b/_assets/vendor/pgn4web/images/alpha/38/wp.png
new file mode 100644
index 0000000..e97655c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wq.png b/_assets/vendor/pgn4web/images/alpha/38/wq.png
new file mode 100644
index 0000000..55a428c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/38/wr.png b/_assets/vendor/pgn4web/images/alpha/38/wr.png
new file mode 100644
index 0000000..788a9ec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/38/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/bb.png b/_assets/vendor/pgn4web/images/alpha/39/bb.png
new file mode 100644
index 0000000..ed554d2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/bk.png b/_assets/vendor/pgn4web/images/alpha/39/bk.png
new file mode 100644
index 0000000..996fdc8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/bn.png b/_assets/vendor/pgn4web/images/alpha/39/bn.png
new file mode 100644
index 0000000..1e0f6ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/bp.png b/_assets/vendor/pgn4web/images/alpha/39/bp.png
new file mode 100644
index 0000000..d0884ff
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/bq.png b/_assets/vendor/pgn4web/images/alpha/39/bq.png
new file mode 100644
index 0000000..0b17e64
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/br.png b/_assets/vendor/pgn4web/images/alpha/39/br.png
new file mode 100644
index 0000000..4563556
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/clear.png b/_assets/vendor/pgn4web/images/alpha/39/clear.png
new file mode 100644
index 0000000..2db2186
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/index.html b/_assets/vendor/pgn4web/images/alpha/39/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/39/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wb.png b/_assets/vendor/pgn4web/images/alpha/39/wb.png
new file mode 100644
index 0000000..c82f089
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wk.png b/_assets/vendor/pgn4web/images/alpha/39/wk.png
new file mode 100644
index 0000000..6c8f5ba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wn.png b/_assets/vendor/pgn4web/images/alpha/39/wn.png
new file mode 100644
index 0000000..5d555ea
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wp.png b/_assets/vendor/pgn4web/images/alpha/39/wp.png
new file mode 100644
index 0000000..33a5e4d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wq.png b/_assets/vendor/pgn4web/images/alpha/39/wq.png
new file mode 100644
index 0000000..23ca401
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/39/wr.png b/_assets/vendor/pgn4web/images/alpha/39/wr.png
new file mode 100644
index 0000000..8c2c00e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/39/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/bb.png b/_assets/vendor/pgn4web/images/alpha/40/bb.png
new file mode 100644
index 0000000..d871bdf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/bk.png b/_assets/vendor/pgn4web/images/alpha/40/bk.png
new file mode 100644
index 0000000..e944903
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/bn.png b/_assets/vendor/pgn4web/images/alpha/40/bn.png
new file mode 100644
index 0000000..b969812
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/bp.png b/_assets/vendor/pgn4web/images/alpha/40/bp.png
new file mode 100644
index 0000000..cc4218f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/bq.png b/_assets/vendor/pgn4web/images/alpha/40/bq.png
new file mode 100644
index 0000000..ce7a9f8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/br.png b/_assets/vendor/pgn4web/images/alpha/40/br.png
new file mode 100644
index 0000000..c575af7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/clear.png b/_assets/vendor/pgn4web/images/alpha/40/clear.png
new file mode 100644
index 0000000..02f667c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/index.html b/_assets/vendor/pgn4web/images/alpha/40/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/40/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wb.png b/_assets/vendor/pgn4web/images/alpha/40/wb.png
new file mode 100644
index 0000000..67b0c7e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wk.png b/_assets/vendor/pgn4web/images/alpha/40/wk.png
new file mode 100644
index 0000000..95098c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wn.png b/_assets/vendor/pgn4web/images/alpha/40/wn.png
new file mode 100644
index 0000000..2cc3dfa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wp.png b/_assets/vendor/pgn4web/images/alpha/40/wp.png
new file mode 100644
index 0000000..2443459
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wq.png b/_assets/vendor/pgn4web/images/alpha/40/wq.png
new file mode 100644
index 0000000..d151712
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/40/wr.png b/_assets/vendor/pgn4web/images/alpha/40/wr.png
new file mode 100644
index 0000000..b83fb71
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/40/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/bb.png b/_assets/vendor/pgn4web/images/alpha/41/bb.png
new file mode 100644
index 0000000..0b6b5f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/bk.png b/_assets/vendor/pgn4web/images/alpha/41/bk.png
new file mode 100644
index 0000000..d93b53b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/bn.png b/_assets/vendor/pgn4web/images/alpha/41/bn.png
new file mode 100644
index 0000000..a59cb90
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/bp.png b/_assets/vendor/pgn4web/images/alpha/41/bp.png
new file mode 100644
index 0000000..8404885
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/bq.png b/_assets/vendor/pgn4web/images/alpha/41/bq.png
new file mode 100644
index 0000000..af8bb40
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/br.png b/_assets/vendor/pgn4web/images/alpha/41/br.png
new file mode 100644
index 0000000..9ae68d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/clear.png b/_assets/vendor/pgn4web/images/alpha/41/clear.png
new file mode 100644
index 0000000..4b32916
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/index.html b/_assets/vendor/pgn4web/images/alpha/41/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/41/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wb.png b/_assets/vendor/pgn4web/images/alpha/41/wb.png
new file mode 100644
index 0000000..35ec011
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wk.png b/_assets/vendor/pgn4web/images/alpha/41/wk.png
new file mode 100644
index 0000000..63303d0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wn.png b/_assets/vendor/pgn4web/images/alpha/41/wn.png
new file mode 100644
index 0000000..56309e0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wp.png b/_assets/vendor/pgn4web/images/alpha/41/wp.png
new file mode 100644
index 0000000..f6b938a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wq.png b/_assets/vendor/pgn4web/images/alpha/41/wq.png
new file mode 100644
index 0000000..2ebc94a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/41/wr.png b/_assets/vendor/pgn4web/images/alpha/41/wr.png
new file mode 100644
index 0000000..5c16250
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/41/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/bb.png b/_assets/vendor/pgn4web/images/alpha/42/bb.png
new file mode 100644
index 0000000..3af03b4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/bk.png b/_assets/vendor/pgn4web/images/alpha/42/bk.png
new file mode 100644
index 0000000..a942709
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/bn.png b/_assets/vendor/pgn4web/images/alpha/42/bn.png
new file mode 100644
index 0000000..f24bb9f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/bp.png b/_assets/vendor/pgn4web/images/alpha/42/bp.png
new file mode 100644
index 0000000..715c3c4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/bq.png b/_assets/vendor/pgn4web/images/alpha/42/bq.png
new file mode 100644
index 0000000..d8c1c1f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/br.png b/_assets/vendor/pgn4web/images/alpha/42/br.png
new file mode 100644
index 0000000..6e689fe
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/clear.png b/_assets/vendor/pgn4web/images/alpha/42/clear.png
new file mode 100644
index 0000000..7331c88
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/index.html b/_assets/vendor/pgn4web/images/alpha/42/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/42/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wb.png b/_assets/vendor/pgn4web/images/alpha/42/wb.png
new file mode 100644
index 0000000..18d369d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wk.png b/_assets/vendor/pgn4web/images/alpha/42/wk.png
new file mode 100644
index 0000000..33c4824
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wn.png b/_assets/vendor/pgn4web/images/alpha/42/wn.png
new file mode 100644
index 0000000..da9c2d4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wp.png b/_assets/vendor/pgn4web/images/alpha/42/wp.png
new file mode 100644
index 0000000..ef23fa0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wq.png b/_assets/vendor/pgn4web/images/alpha/42/wq.png
new file mode 100644
index 0000000..4f9cd49
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/42/wr.png b/_assets/vendor/pgn4web/images/alpha/42/wr.png
new file mode 100644
index 0000000..5fb1e17
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/42/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/bb.png b/_assets/vendor/pgn4web/images/alpha/43/bb.png
new file mode 100644
index 0000000..22d12d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/bk.png b/_assets/vendor/pgn4web/images/alpha/43/bk.png
new file mode 100644
index 0000000..8b7f356
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/bn.png b/_assets/vendor/pgn4web/images/alpha/43/bn.png
new file mode 100644
index 0000000..58e6e16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/bp.png b/_assets/vendor/pgn4web/images/alpha/43/bp.png
new file mode 100644
index 0000000..70ea693
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/bq.png b/_assets/vendor/pgn4web/images/alpha/43/bq.png
new file mode 100644
index 0000000..fe19de8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/br.png b/_assets/vendor/pgn4web/images/alpha/43/br.png
new file mode 100644
index 0000000..e1ad30a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/clear.png b/_assets/vendor/pgn4web/images/alpha/43/clear.png
new file mode 100644
index 0000000..cadd762
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/index.html b/_assets/vendor/pgn4web/images/alpha/43/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/43/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wb.png b/_assets/vendor/pgn4web/images/alpha/43/wb.png
new file mode 100644
index 0000000..9e1ab14
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wk.png b/_assets/vendor/pgn4web/images/alpha/43/wk.png
new file mode 100644
index 0000000..4fd09f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wn.png b/_assets/vendor/pgn4web/images/alpha/43/wn.png
new file mode 100644
index 0000000..b7a0d0b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wp.png b/_assets/vendor/pgn4web/images/alpha/43/wp.png
new file mode 100644
index 0000000..a04d893
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wq.png b/_assets/vendor/pgn4web/images/alpha/43/wq.png
new file mode 100644
index 0000000..0569431
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/43/wr.png b/_assets/vendor/pgn4web/images/alpha/43/wr.png
new file mode 100644
index 0000000..ce3835c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/43/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/bb.png b/_assets/vendor/pgn4web/images/alpha/44/bb.png
new file mode 100644
index 0000000..79817bc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/bk.png b/_assets/vendor/pgn4web/images/alpha/44/bk.png
new file mode 100644
index 0000000..74a8a13
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/bn.png b/_assets/vendor/pgn4web/images/alpha/44/bn.png
new file mode 100644
index 0000000..4d26c33
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/bp.png b/_assets/vendor/pgn4web/images/alpha/44/bp.png
new file mode 100644
index 0000000..6d5cb08
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/bq.png b/_assets/vendor/pgn4web/images/alpha/44/bq.png
new file mode 100644
index 0000000..7587ca7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/br.png b/_assets/vendor/pgn4web/images/alpha/44/br.png
new file mode 100644
index 0000000..f49848a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/clear.png b/_assets/vendor/pgn4web/images/alpha/44/clear.png
new file mode 100644
index 0000000..753d476
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/index.html b/_assets/vendor/pgn4web/images/alpha/44/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/44/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wb.png b/_assets/vendor/pgn4web/images/alpha/44/wb.png
new file mode 100644
index 0000000..4789e06
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wk.png b/_assets/vendor/pgn4web/images/alpha/44/wk.png
new file mode 100644
index 0000000..069e8a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wn.png b/_assets/vendor/pgn4web/images/alpha/44/wn.png
new file mode 100644
index 0000000..85c1144
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wp.png b/_assets/vendor/pgn4web/images/alpha/44/wp.png
new file mode 100644
index 0000000..2b89703
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wq.png b/_assets/vendor/pgn4web/images/alpha/44/wq.png
new file mode 100644
index 0000000..6912d77
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/44/wr.png b/_assets/vendor/pgn4web/images/alpha/44/wr.png
new file mode 100644
index 0000000..2d53afc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/44/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/bb.png b/_assets/vendor/pgn4web/images/alpha/45/bb.png
new file mode 100644
index 0000000..d9997c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/bk.png b/_assets/vendor/pgn4web/images/alpha/45/bk.png
new file mode 100644
index 0000000..ffcc506
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/bn.png b/_assets/vendor/pgn4web/images/alpha/45/bn.png
new file mode 100644
index 0000000..50bfc62
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/bp.png b/_assets/vendor/pgn4web/images/alpha/45/bp.png
new file mode 100644
index 0000000..41f5975
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/bq.png b/_assets/vendor/pgn4web/images/alpha/45/bq.png
new file mode 100644
index 0000000..c022caa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/br.png b/_assets/vendor/pgn4web/images/alpha/45/br.png
new file mode 100644
index 0000000..784b0a4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/clear.png b/_assets/vendor/pgn4web/images/alpha/45/clear.png
new file mode 100644
index 0000000..49be780
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/index.html b/_assets/vendor/pgn4web/images/alpha/45/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/45/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wb.png b/_assets/vendor/pgn4web/images/alpha/45/wb.png
new file mode 100644
index 0000000..25e754a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wk.png b/_assets/vendor/pgn4web/images/alpha/45/wk.png
new file mode 100644
index 0000000..391defa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wn.png b/_assets/vendor/pgn4web/images/alpha/45/wn.png
new file mode 100644
index 0000000..ed0dfa6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wp.png b/_assets/vendor/pgn4web/images/alpha/45/wp.png
new file mode 100644
index 0000000..a447566
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wq.png b/_assets/vendor/pgn4web/images/alpha/45/wq.png
new file mode 100644
index 0000000..8ce155f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/45/wr.png b/_assets/vendor/pgn4web/images/alpha/45/wr.png
new file mode 100644
index 0000000..3f68795
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/45/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/bb.png b/_assets/vendor/pgn4web/images/alpha/46/bb.png
new file mode 100644
index 0000000..862f92d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/bk.png b/_assets/vendor/pgn4web/images/alpha/46/bk.png
new file mode 100644
index 0000000..3b3329a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/bn.png b/_assets/vendor/pgn4web/images/alpha/46/bn.png
new file mode 100644
index 0000000..c257ff3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/bp.png b/_assets/vendor/pgn4web/images/alpha/46/bp.png
new file mode 100644
index 0000000..0376057
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/bq.png b/_assets/vendor/pgn4web/images/alpha/46/bq.png
new file mode 100644
index 0000000..95ffd9b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/br.png b/_assets/vendor/pgn4web/images/alpha/46/br.png
new file mode 100644
index 0000000..70872cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/clear.png b/_assets/vendor/pgn4web/images/alpha/46/clear.png
new file mode 100644
index 0000000..bd294c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/index.html b/_assets/vendor/pgn4web/images/alpha/46/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/46/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wb.png b/_assets/vendor/pgn4web/images/alpha/46/wb.png
new file mode 100644
index 0000000..d3ae6c7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wk.png b/_assets/vendor/pgn4web/images/alpha/46/wk.png
new file mode 100644
index 0000000..a3c51bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wn.png b/_assets/vendor/pgn4web/images/alpha/46/wn.png
new file mode 100644
index 0000000..92b6682
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wp.png b/_assets/vendor/pgn4web/images/alpha/46/wp.png
new file mode 100644
index 0000000..d9204b3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wq.png b/_assets/vendor/pgn4web/images/alpha/46/wq.png
new file mode 100644
index 0000000..80fa02a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/46/wr.png b/_assets/vendor/pgn4web/images/alpha/46/wr.png
new file mode 100644
index 0000000..9e66b2d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/46/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/bb.png b/_assets/vendor/pgn4web/images/alpha/47/bb.png
new file mode 100644
index 0000000..7e81c45
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/bk.png b/_assets/vendor/pgn4web/images/alpha/47/bk.png
new file mode 100644
index 0000000..784b250
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/bn.png b/_assets/vendor/pgn4web/images/alpha/47/bn.png
new file mode 100644
index 0000000..ef8e5a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/bp.png b/_assets/vendor/pgn4web/images/alpha/47/bp.png
new file mode 100644
index 0000000..52a5cf7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/bq.png b/_assets/vendor/pgn4web/images/alpha/47/bq.png
new file mode 100644
index 0000000..6a17689
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/br.png b/_assets/vendor/pgn4web/images/alpha/47/br.png
new file mode 100644
index 0000000..0af769b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/clear.png b/_assets/vendor/pgn4web/images/alpha/47/clear.png
new file mode 100644
index 0000000..00fcf75
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/index.html b/_assets/vendor/pgn4web/images/alpha/47/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/47/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wb.png b/_assets/vendor/pgn4web/images/alpha/47/wb.png
new file mode 100644
index 0000000..6d150b4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wk.png b/_assets/vendor/pgn4web/images/alpha/47/wk.png
new file mode 100644
index 0000000..20736aa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wn.png b/_assets/vendor/pgn4web/images/alpha/47/wn.png
new file mode 100644
index 0000000..92c4aa5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wp.png b/_assets/vendor/pgn4web/images/alpha/47/wp.png
new file mode 100644
index 0000000..786132d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wq.png b/_assets/vendor/pgn4web/images/alpha/47/wq.png
new file mode 100644
index 0000000..239d8ee
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/47/wr.png b/_assets/vendor/pgn4web/images/alpha/47/wr.png
new file mode 100644
index 0000000..59f64a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/47/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/bb.png b/_assets/vendor/pgn4web/images/alpha/48/bb.png
new file mode 100644
index 0000000..e3431c2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/bk.png b/_assets/vendor/pgn4web/images/alpha/48/bk.png
new file mode 100644
index 0000000..c433346
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/bn.png b/_assets/vendor/pgn4web/images/alpha/48/bn.png
new file mode 100644
index 0000000..e879dba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/bp.png b/_assets/vendor/pgn4web/images/alpha/48/bp.png
new file mode 100644
index 0000000..1b88cc4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/bq.png b/_assets/vendor/pgn4web/images/alpha/48/bq.png
new file mode 100644
index 0000000..01330cc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/br.png b/_assets/vendor/pgn4web/images/alpha/48/br.png
new file mode 100644
index 0000000..519d77b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/clear.png b/_assets/vendor/pgn4web/images/alpha/48/clear.png
new file mode 100644
index 0000000..4b6dff8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/index.html b/_assets/vendor/pgn4web/images/alpha/48/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/48/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wb.png b/_assets/vendor/pgn4web/images/alpha/48/wb.png
new file mode 100644
index 0000000..5619cb3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wk.png b/_assets/vendor/pgn4web/images/alpha/48/wk.png
new file mode 100644
index 0000000..8521c0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wn.png b/_assets/vendor/pgn4web/images/alpha/48/wn.png
new file mode 100644
index 0000000..097c372
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wp.png b/_assets/vendor/pgn4web/images/alpha/48/wp.png
new file mode 100644
index 0000000..479c450
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wq.png b/_assets/vendor/pgn4web/images/alpha/48/wq.png
new file mode 100644
index 0000000..927a7d5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/48/wr.png b/_assets/vendor/pgn4web/images/alpha/48/wr.png
new file mode 100644
index 0000000..f0b3d34
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/48/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/bb.png b/_assets/vendor/pgn4web/images/alpha/52/bb.png
new file mode 100644
index 0000000..4f7d796
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/bk.png b/_assets/vendor/pgn4web/images/alpha/52/bk.png
new file mode 100644
index 0000000..75d4e10
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/bn.png b/_assets/vendor/pgn4web/images/alpha/52/bn.png
new file mode 100644
index 0000000..8a19568
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/bp.png b/_assets/vendor/pgn4web/images/alpha/52/bp.png
new file mode 100644
index 0000000..46c7c0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/bq.png b/_assets/vendor/pgn4web/images/alpha/52/bq.png
new file mode 100644
index 0000000..34762f4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/br.png b/_assets/vendor/pgn4web/images/alpha/52/br.png
new file mode 100644
index 0000000..7289af8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/clear.png b/_assets/vendor/pgn4web/images/alpha/52/clear.png
new file mode 100644
index 0000000..5ea7f99
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/index.html b/_assets/vendor/pgn4web/images/alpha/52/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/52/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wb.png b/_assets/vendor/pgn4web/images/alpha/52/wb.png
new file mode 100644
index 0000000..f273400
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wk.png b/_assets/vendor/pgn4web/images/alpha/52/wk.png
new file mode 100644
index 0000000..6fa4f6d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wn.png b/_assets/vendor/pgn4web/images/alpha/52/wn.png
new file mode 100644
index 0000000..8ffd073
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wp.png b/_assets/vendor/pgn4web/images/alpha/52/wp.png
new file mode 100644
index 0000000..25ae0b4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wq.png b/_assets/vendor/pgn4web/images/alpha/52/wq.png
new file mode 100644
index 0000000..b290828
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/52/wr.png b/_assets/vendor/pgn4web/images/alpha/52/wr.png
new file mode 100644
index 0000000..4eaceba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/52/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/bb.png b/_assets/vendor/pgn4web/images/alpha/56/bb.png
new file mode 100644
index 0000000..592e38e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/bk.png b/_assets/vendor/pgn4web/images/alpha/56/bk.png
new file mode 100644
index 0000000..75fcfc0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/bn.png b/_assets/vendor/pgn4web/images/alpha/56/bn.png
new file mode 100644
index 0000000..6e8fd00
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/bp.png b/_assets/vendor/pgn4web/images/alpha/56/bp.png
new file mode 100644
index 0000000..85ee4a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/bq.png b/_assets/vendor/pgn4web/images/alpha/56/bq.png
new file mode 100644
index 0000000..58a5a68
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/br.png b/_assets/vendor/pgn4web/images/alpha/56/br.png
new file mode 100644
index 0000000..4b64be4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/clear.png b/_assets/vendor/pgn4web/images/alpha/56/clear.png
new file mode 100644
index 0000000..bc12aba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/index.html b/_assets/vendor/pgn4web/images/alpha/56/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/56/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wb.png b/_assets/vendor/pgn4web/images/alpha/56/wb.png
new file mode 100644
index 0000000..b845c34
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wk.png b/_assets/vendor/pgn4web/images/alpha/56/wk.png
new file mode 100644
index 0000000..fc321bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wn.png b/_assets/vendor/pgn4web/images/alpha/56/wn.png
new file mode 100644
index 0000000..62553d0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wp.png b/_assets/vendor/pgn4web/images/alpha/56/wp.png
new file mode 100644
index 0000000..fa6b1dc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wq.png b/_assets/vendor/pgn4web/images/alpha/56/wq.png
new file mode 100644
index 0000000..2a48056
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/56/wr.png b/_assets/vendor/pgn4web/images/alpha/56/wr.png
new file mode 100644
index 0000000..d38919f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/56/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/bb.png b/_assets/vendor/pgn4web/images/alpha/60/bb.png
new file mode 100644
index 0000000..da9a97c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/bk.png b/_assets/vendor/pgn4web/images/alpha/60/bk.png
new file mode 100644
index 0000000..475f00e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/bn.png b/_assets/vendor/pgn4web/images/alpha/60/bn.png
new file mode 100644
index 0000000..34633e9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/bp.png b/_assets/vendor/pgn4web/images/alpha/60/bp.png
new file mode 100644
index 0000000..ac532b0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/bq.png b/_assets/vendor/pgn4web/images/alpha/60/bq.png
new file mode 100644
index 0000000..ff760ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/br.png b/_assets/vendor/pgn4web/images/alpha/60/br.png
new file mode 100644
index 0000000..fd1f29c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/clear.png b/_assets/vendor/pgn4web/images/alpha/60/clear.png
new file mode 100644
index 0000000..6d4e3bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/index.html b/_assets/vendor/pgn4web/images/alpha/60/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/60/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wb.png b/_assets/vendor/pgn4web/images/alpha/60/wb.png
new file mode 100644
index 0000000..d310965
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wk.png b/_assets/vendor/pgn4web/images/alpha/60/wk.png
new file mode 100644
index 0000000..9f14059
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wn.png b/_assets/vendor/pgn4web/images/alpha/60/wn.png
new file mode 100644
index 0000000..db3b616
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wp.png b/_assets/vendor/pgn4web/images/alpha/60/wp.png
new file mode 100644
index 0000000..69c999b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wq.png b/_assets/vendor/pgn4web/images/alpha/60/wq.png
new file mode 100644
index 0000000..fd7dc2e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/60/wr.png b/_assets/vendor/pgn4web/images/alpha/60/wr.png
new file mode 100644
index 0000000..f29dce8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/60/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/bb.png b/_assets/vendor/pgn4web/images/alpha/64/bb.png
new file mode 100644
index 0000000..473e511
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/bk.png b/_assets/vendor/pgn4web/images/alpha/64/bk.png
new file mode 100644
index 0000000..7d4d554
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/bn.png b/_assets/vendor/pgn4web/images/alpha/64/bn.png
new file mode 100644
index 0000000..986d72d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/bp.png b/_assets/vendor/pgn4web/images/alpha/64/bp.png
new file mode 100644
index 0000000..7fc86a9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/bq.png b/_assets/vendor/pgn4web/images/alpha/64/bq.png
new file mode 100644
index 0000000..34e2901
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/br.png b/_assets/vendor/pgn4web/images/alpha/64/br.png
new file mode 100644
index 0000000..5f652b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/clear.png b/_assets/vendor/pgn4web/images/alpha/64/clear.png
new file mode 100644
index 0000000..5c3ac01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/index.html b/_assets/vendor/pgn4web/images/alpha/64/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/64/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wb.png b/_assets/vendor/pgn4web/images/alpha/64/wb.png
new file mode 100644
index 0000000..c1734b8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wk.png b/_assets/vendor/pgn4web/images/alpha/64/wk.png
new file mode 100644
index 0000000..0420aef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wn.png b/_assets/vendor/pgn4web/images/alpha/64/wn.png
new file mode 100644
index 0000000..b66ad52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wp.png b/_assets/vendor/pgn4web/images/alpha/64/wp.png
new file mode 100644
index 0000000..36e1272
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wq.png b/_assets/vendor/pgn4web/images/alpha/64/wq.png
new file mode 100644
index 0000000..1424cba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/64/wr.png b/_assets/vendor/pgn4web/images/alpha/64/wr.png
new file mode 100644
index 0000000..231c59f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/64/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/bb.png b/_assets/vendor/pgn4web/images/alpha/72/bb.png
new file mode 100644
index 0000000..ca94963
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/bk.png b/_assets/vendor/pgn4web/images/alpha/72/bk.png
new file mode 100644
index 0000000..e9436de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/bn.png b/_assets/vendor/pgn4web/images/alpha/72/bn.png
new file mode 100644
index 0000000..8512c6f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/bp.png b/_assets/vendor/pgn4web/images/alpha/72/bp.png
new file mode 100644
index 0000000..6294cab
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/bq.png b/_assets/vendor/pgn4web/images/alpha/72/bq.png
new file mode 100644
index 0000000..bb36a4c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/br.png b/_assets/vendor/pgn4web/images/alpha/72/br.png
new file mode 100644
index 0000000..28c65df
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/clear.png b/_assets/vendor/pgn4web/images/alpha/72/clear.png
new file mode 100644
index 0000000..fb05b26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/index.html b/_assets/vendor/pgn4web/images/alpha/72/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/72/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wb.png b/_assets/vendor/pgn4web/images/alpha/72/wb.png
new file mode 100644
index 0000000..05a1128
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wk.png b/_assets/vendor/pgn4web/images/alpha/72/wk.png
new file mode 100644
index 0000000..cdf29ba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wn.png b/_assets/vendor/pgn4web/images/alpha/72/wn.png
new file mode 100644
index 0000000..54973f6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wp.png b/_assets/vendor/pgn4web/images/alpha/72/wp.png
new file mode 100644
index 0000000..ba6fa26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wq.png b/_assets/vendor/pgn4web/images/alpha/72/wq.png
new file mode 100644
index 0000000..cc87cfa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/72/wr.png b/_assets/vendor/pgn4web/images/alpha/72/wr.png
new file mode 100644
index 0000000..01221c0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/72/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/bb.png b/_assets/vendor/pgn4web/images/alpha/80/bb.png
new file mode 100644
index 0000000..3d17c79
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/bk.png b/_assets/vendor/pgn4web/images/alpha/80/bk.png
new file mode 100644
index 0000000..2cac340
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/bn.png b/_assets/vendor/pgn4web/images/alpha/80/bn.png
new file mode 100644
index 0000000..0d7f348
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/bp.png b/_assets/vendor/pgn4web/images/alpha/80/bp.png
new file mode 100644
index 0000000..d47fe84
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/bq.png b/_assets/vendor/pgn4web/images/alpha/80/bq.png
new file mode 100644
index 0000000..3ca0d31
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/br.png b/_assets/vendor/pgn4web/images/alpha/80/br.png
new file mode 100644
index 0000000..848fc90
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/clear.png b/_assets/vendor/pgn4web/images/alpha/80/clear.png
new file mode 100644
index 0000000..8a5c3cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/index.html b/_assets/vendor/pgn4web/images/alpha/80/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/80/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wb.png b/_assets/vendor/pgn4web/images/alpha/80/wb.png
new file mode 100644
index 0000000..b9797d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wk.png b/_assets/vendor/pgn4web/images/alpha/80/wk.png
new file mode 100644
index 0000000..6693161
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wn.png b/_assets/vendor/pgn4web/images/alpha/80/wn.png
new file mode 100644
index 0000000..bc468f2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wp.png b/_assets/vendor/pgn4web/images/alpha/80/wp.png
new file mode 100644
index 0000000..0eaeb81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wq.png b/_assets/vendor/pgn4web/images/alpha/80/wq.png
new file mode 100644
index 0000000..5e67fae
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/80/wr.png b/_assets/vendor/pgn4web/images/alpha/80/wr.png
new file mode 100644
index 0000000..f32d673
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/80/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/bb.png b/_assets/vendor/pgn4web/images/alpha/88/bb.png
new file mode 100644
index 0000000..971bd17
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/bk.png b/_assets/vendor/pgn4web/images/alpha/88/bk.png
new file mode 100644
index 0000000..e5b7afc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/bn.png b/_assets/vendor/pgn4web/images/alpha/88/bn.png
new file mode 100644
index 0000000..a4c22ce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/bp.png b/_assets/vendor/pgn4web/images/alpha/88/bp.png
new file mode 100644
index 0000000..e7260d4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/bq.png b/_assets/vendor/pgn4web/images/alpha/88/bq.png
new file mode 100644
index 0000000..c6c1f09
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/br.png b/_assets/vendor/pgn4web/images/alpha/88/br.png
new file mode 100644
index 0000000..f0cd72b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/clear.png b/_assets/vendor/pgn4web/images/alpha/88/clear.png
new file mode 100644
index 0000000..90499c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/index.html b/_assets/vendor/pgn4web/images/alpha/88/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/88/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wb.png b/_assets/vendor/pgn4web/images/alpha/88/wb.png
new file mode 100644
index 0000000..a9dc59b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wk.png b/_assets/vendor/pgn4web/images/alpha/88/wk.png
new file mode 100644
index 0000000..2baa5a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wn.png b/_assets/vendor/pgn4web/images/alpha/88/wn.png
new file mode 100644
index 0000000..622eb37
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wp.png b/_assets/vendor/pgn4web/images/alpha/88/wp.png
new file mode 100644
index 0000000..b5529f6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wq.png b/_assets/vendor/pgn4web/images/alpha/88/wq.png
new file mode 100644
index 0000000..e9362cd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/88/wr.png b/_assets/vendor/pgn4web/images/alpha/88/wr.png
new file mode 100644
index 0000000..6c51b65
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/88/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/bb.png b/_assets/vendor/pgn4web/images/alpha/96/bb.png
new file mode 100644
index 0000000..28f4c58
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/bk.png b/_assets/vendor/pgn4web/images/alpha/96/bk.png
new file mode 100644
index 0000000..edee2f0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/bn.png b/_assets/vendor/pgn4web/images/alpha/96/bn.png
new file mode 100644
index 0000000..0b1f70d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/bp.png b/_assets/vendor/pgn4web/images/alpha/96/bp.png
new file mode 100644
index 0000000..1df0d23
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/bq.png b/_assets/vendor/pgn4web/images/alpha/96/bq.png
new file mode 100644
index 0000000..f18437c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/br.png b/_assets/vendor/pgn4web/images/alpha/96/br.png
new file mode 100644
index 0000000..1f7e69b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/br.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/clear.png b/_assets/vendor/pgn4web/images/alpha/96/clear.png
new file mode 100644
index 0000000..3a462db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/index.html b/_assets/vendor/pgn4web/images/alpha/96/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/96/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wb.png b/_assets/vendor/pgn4web/images/alpha/96/wb.png
new file mode 100644
index 0000000..20170f6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wk.png b/_assets/vendor/pgn4web/images/alpha/96/wk.png
new file mode 100644
index 0000000..ca65e8a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wn.png b/_assets/vendor/pgn4web/images/alpha/96/wn.png
new file mode 100644
index 0000000..b55a675
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wp.png b/_assets/vendor/pgn4web/images/alpha/96/wp.png
new file mode 100644
index 0000000..0c3f28a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wq.png b/_assets/vendor/pgn4web/images/alpha/96/wq.png
new file mode 100644
index 0000000..e519e0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/96/wr.png b/_assets/vendor/pgn4web/images/alpha/96/wr.png
new file mode 100644
index 0000000..e94ffc8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/alpha/96/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/alpha/README.txt b/_assets/vendor/pgn4web/images/alpha/README.txt
new file mode 100644
index 0000000..c1c29e4
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/README.txt
@@ -0,0 +1,3 @@
+Chess images from http://ixian.com/chess/jin-piece-sets/ by Eric De Mund.
+Licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.
+http://creativecommons.org/licenses/by-sa/3.0/
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/alpha/index.html b/_assets/vendor/pgn4web/images/alpha/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/alpha/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/bb.png b/_assets/vendor/pgn4web/images/bb.png
new file mode 100644
index 0000000..d871bdf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/bk.png b/_assets/vendor/pgn4web/images/bk.png
new file mode 100644
index 0000000..e944903
Binary files /dev/null and b/_assets/vendor/pgn4web/images/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/bn.png b/_assets/vendor/pgn4web/images/bn.png
new file mode 100644
index 0000000..b969812
Binary files /dev/null and b/_assets/vendor/pgn4web/images/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/bp.png b/_assets/vendor/pgn4web/images/bp.png
new file mode 100644
index 0000000..cc4218f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/bq.png b/_assets/vendor/pgn4web/images/bq.png
new file mode 100644
index 0000000..ce7a9f8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/br.png b/_assets/vendor/pgn4web/images/br.png
new file mode 100644
index 0000000..c575af7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/br.png differ
diff --git a/_assets/vendor/pgn4web/images/clear.png b/_assets/vendor/pgn4web/images/clear.png
new file mode 100644
index 0000000..02f667c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/igorsvg/README.txt b/_assets/vendor/pgn4web/images/igorsvg/README.txt
new file mode 100644
index 0000000..bf9d3ad
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/README.txt
@@ -0,0 +1,4 @@
+Chess images from http://openclipart.org/search/?query=chess+symbols+set by
+Igor Krizanovskij; as openclipart.org content the images are dedicated to the
+Public Domain (http://creativecommons.org/publicdomain/zero/1.0/).
+Minor modification to the original images from Paolo Casaschi.
diff --git a/_assets/vendor/pgn4web/images/igorsvg/bb.svg b/_assets/vendor/pgn4web/images/igorsvg/bb.svg
new file mode 100644
index 0000000..9dd4562
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/bb.svg
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24135/chess-symbols-set--by-anonymous-24135Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/bk.svg b/_assets/vendor/pgn4web/images/igorsvg/bk.svg
new file mode 100644
index 0000000..c761275
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/bk.svg
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24132/chess-symbols-set--by-anonymous-24132Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/bn.svg b/_assets/vendor/pgn4web/images/igorsvg/bn.svg
new file mode 100644
index 0000000..7ff8195
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/bn.svg
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24136/chess-symbols-set--by-anonymous-24136Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/bp.svg b/_assets/vendor/pgn4web/images/igorsvg/bp.svg
new file mode 100644
index 0000000..371b57c
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/bp.svg
@@ -0,0 +1,8 @@
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24137/chess-symbols-set--by-anonymous-24137Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/igorsvg/bq.svg b/_assets/vendor/pgn4web/images/igorsvg/bq.svg
new file mode 100644
index 0000000..e9e7071
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/bq.svg
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24133/chess-symbols-set--by-anonymous-24133Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/br.svg b/_assets/vendor/pgn4web/images/igorsvg/br.svg
new file mode 100644
index 0000000..cb96538
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/br.svg
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24134/chess-symbols-set--by-anonymous-24134Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/clear.svg b/_assets/vendor/pgn4web/images/igorsvg/clear.svg
new file mode 100644
index 0000000..8a7ccc1
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/clear.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/index.html b/_assets/vendor/pgn4web/images/igorsvg/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wb.svg b/_assets/vendor/pgn4web/images/igorsvg/wb.svg
new file mode 100644
index 0000000..98c584f
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wb.svg
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24129/chess-symbols-set--by-anonymous-24129Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wk.svg b/_assets/vendor/pgn4web/images/igorsvg/wk.svg
new file mode 100644
index 0000000..ed9e677
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wk.svg
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24126/chess-symbols-set--by-anonymous-24126Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wn.svg b/_assets/vendor/pgn4web/images/igorsvg/wn.svg
new file mode 100644
index 0000000..e52a438
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wn.svg
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24130/chess-symbols-set--by-anonymous-24130Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wp.svg b/_assets/vendor/pgn4web/images/igorsvg/wp.svg
new file mode 100644
index 0000000..282db7f
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wp.svg
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24131/chess-symbols-set--by-anonymous-24131Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wq.svg b/_assets/vendor/pgn4web/images/igorsvg/wq.svg
new file mode 100644
index 0000000..9e0e05f
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wq.svg
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24127/chess-symbols-set--by-anonymous-24127Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/igorsvg/wr.svg b/_assets/vendor/pgn4web/images/igorsvg/wr.svg
new file mode 100644
index 0000000..5ec9d37
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/igorsvg/wr.svg
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+ Layer 1
+
+ image/svg+xmlOpen Clip Art LibraryChess symbols set2009-04-06T07:41:21Chess set by Igor Krizanovskij. From old OCAL site.http://openclipart.org/detail/24128/chess-symbols-set--by-anonymous-24128Anonymousmediaclip artpublic domainimagepngsvggameplaychessboardpiecefiguresetcollectionsymbolgameplaychessboardpiecefiguresetcollectionsymbol
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/index.html b/_assets/vendor/pgn4web/images/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/112/bb.png b/_assets/vendor/pgn4web/images/merida/112/bb.png
new file mode 100644
index 0000000..851df00
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/bk.png b/_assets/vendor/pgn4web/images/merida/112/bk.png
new file mode 100644
index 0000000..f0a676a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/bn.png b/_assets/vendor/pgn4web/images/merida/112/bn.png
new file mode 100644
index 0000000..ebca016
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/bp.png b/_assets/vendor/pgn4web/images/merida/112/bp.png
new file mode 100644
index 0000000..83b6ade
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/bq.png b/_assets/vendor/pgn4web/images/merida/112/bq.png
new file mode 100644
index 0000000..c8e2394
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/br.png b/_assets/vendor/pgn4web/images/merida/112/br.png
new file mode 100644
index 0000000..15a56f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/clear.png b/_assets/vendor/pgn4web/images/merida/112/clear.png
new file mode 100644
index 0000000..6d6780b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/index.html b/_assets/vendor/pgn4web/images/merida/112/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/112/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/112/wb.png b/_assets/vendor/pgn4web/images/merida/112/wb.png
new file mode 100644
index 0000000..c065ee8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/wk.png b/_assets/vendor/pgn4web/images/merida/112/wk.png
new file mode 100644
index 0000000..885e03c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/wn.png b/_assets/vendor/pgn4web/images/merida/112/wn.png
new file mode 100644
index 0000000..1550727
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/wp.png b/_assets/vendor/pgn4web/images/merida/112/wp.png
new file mode 100644
index 0000000..8ea8c5a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/wq.png b/_assets/vendor/pgn4web/images/merida/112/wq.png
new file mode 100644
index 0000000..1f6388c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/112/wr.png b/_assets/vendor/pgn4web/images/merida/112/wr.png
new file mode 100644
index 0000000..422d94d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/112/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/bb.png b/_assets/vendor/pgn4web/images/merida/128/bb.png
new file mode 100644
index 0000000..f6261f6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/bk.png b/_assets/vendor/pgn4web/images/merida/128/bk.png
new file mode 100644
index 0000000..adbb702
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/bn.png b/_assets/vendor/pgn4web/images/merida/128/bn.png
new file mode 100644
index 0000000..a16feb4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/bp.png b/_assets/vendor/pgn4web/images/merida/128/bp.png
new file mode 100644
index 0000000..d6fba90
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/bq.png b/_assets/vendor/pgn4web/images/merida/128/bq.png
new file mode 100644
index 0000000..571256d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/br.png b/_assets/vendor/pgn4web/images/merida/128/br.png
new file mode 100644
index 0000000..d413d66
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/clear.png b/_assets/vendor/pgn4web/images/merida/128/clear.png
new file mode 100644
index 0000000..56682b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/index.html b/_assets/vendor/pgn4web/images/merida/128/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/128/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/128/wb.png b/_assets/vendor/pgn4web/images/merida/128/wb.png
new file mode 100644
index 0000000..c2cf24a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/wk.png b/_assets/vendor/pgn4web/images/merida/128/wk.png
new file mode 100644
index 0000000..bea63f0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/wn.png b/_assets/vendor/pgn4web/images/merida/128/wn.png
new file mode 100644
index 0000000..7a2ab7a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/wp.png b/_assets/vendor/pgn4web/images/merida/128/wp.png
new file mode 100644
index 0000000..9bb5b7d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/wq.png b/_assets/vendor/pgn4web/images/merida/128/wq.png
new file mode 100644
index 0000000..d86917b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/128/wr.png b/_assets/vendor/pgn4web/images/merida/128/wr.png
new file mode 100644
index 0000000..25c153d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/128/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/bb.png b/_assets/vendor/pgn4web/images/merida/144/bb.png
new file mode 100644
index 0000000..e262725
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/bk.png b/_assets/vendor/pgn4web/images/merida/144/bk.png
new file mode 100644
index 0000000..816f538
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/bn.png b/_assets/vendor/pgn4web/images/merida/144/bn.png
new file mode 100644
index 0000000..2d94abc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/bp.png b/_assets/vendor/pgn4web/images/merida/144/bp.png
new file mode 100644
index 0000000..6fff0d2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/bq.png b/_assets/vendor/pgn4web/images/merida/144/bq.png
new file mode 100644
index 0000000..d5e0a7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/br.png b/_assets/vendor/pgn4web/images/merida/144/br.png
new file mode 100644
index 0000000..c615d2d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/clear.png b/_assets/vendor/pgn4web/images/merida/144/clear.png
new file mode 100644
index 0000000..e16fd29
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/index.html b/_assets/vendor/pgn4web/images/merida/144/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/144/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/144/wb.png b/_assets/vendor/pgn4web/images/merida/144/wb.png
new file mode 100644
index 0000000..2569c81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/wk.png b/_assets/vendor/pgn4web/images/merida/144/wk.png
new file mode 100644
index 0000000..742aa52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/wn.png b/_assets/vendor/pgn4web/images/merida/144/wn.png
new file mode 100644
index 0000000..88b9e1f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/wp.png b/_assets/vendor/pgn4web/images/merida/144/wp.png
new file mode 100644
index 0000000..af402c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/wq.png b/_assets/vendor/pgn4web/images/merida/144/wq.png
new file mode 100644
index 0000000..eb8149f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/144/wr.png b/_assets/vendor/pgn4web/images/merida/144/wr.png
new file mode 100644
index 0000000..3a38a3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/144/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/bb.png b/_assets/vendor/pgn4web/images/merida/20/bb.png
new file mode 100644
index 0000000..54877d6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/bk.png b/_assets/vendor/pgn4web/images/merida/20/bk.png
new file mode 100644
index 0000000..e130c42
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/bn.png b/_assets/vendor/pgn4web/images/merida/20/bn.png
new file mode 100644
index 0000000..8542209
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/bp.png b/_assets/vendor/pgn4web/images/merida/20/bp.png
new file mode 100644
index 0000000..ebd39a6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/bq.png b/_assets/vendor/pgn4web/images/merida/20/bq.png
new file mode 100644
index 0000000..9701a22
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/br.png b/_assets/vendor/pgn4web/images/merida/20/br.png
new file mode 100644
index 0000000..74c755c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/clear.png b/_assets/vendor/pgn4web/images/merida/20/clear.png
new file mode 100644
index 0000000..65d8dce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/index.html b/_assets/vendor/pgn4web/images/merida/20/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/20/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/20/wb.png b/_assets/vendor/pgn4web/images/merida/20/wb.png
new file mode 100644
index 0000000..da2ab44
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/wk.png b/_assets/vendor/pgn4web/images/merida/20/wk.png
new file mode 100644
index 0000000..6fea0ec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/wn.png b/_assets/vendor/pgn4web/images/merida/20/wn.png
new file mode 100644
index 0000000..1185785
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/wp.png b/_assets/vendor/pgn4web/images/merida/20/wp.png
new file mode 100644
index 0000000..a35d709
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/wq.png b/_assets/vendor/pgn4web/images/merida/20/wq.png
new file mode 100644
index 0000000..7e77ca3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/20/wr.png b/_assets/vendor/pgn4web/images/merida/20/wr.png
new file mode 100644
index 0000000..e10cc03
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/20/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/bb.png b/_assets/vendor/pgn4web/images/merida/21/bb.png
new file mode 100644
index 0000000..f36e4c9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/bk.png b/_assets/vendor/pgn4web/images/merida/21/bk.png
new file mode 100644
index 0000000..455cb23
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/bn.png b/_assets/vendor/pgn4web/images/merida/21/bn.png
new file mode 100644
index 0000000..92bfcd2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/bp.png b/_assets/vendor/pgn4web/images/merida/21/bp.png
new file mode 100644
index 0000000..40548c8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/bq.png b/_assets/vendor/pgn4web/images/merida/21/bq.png
new file mode 100644
index 0000000..05a5fbe
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/br.png b/_assets/vendor/pgn4web/images/merida/21/br.png
new file mode 100644
index 0000000..adbe3ec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/clear.png b/_assets/vendor/pgn4web/images/merida/21/clear.png
new file mode 100644
index 0000000..545ad7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/index.html b/_assets/vendor/pgn4web/images/merida/21/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/21/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/21/wb.png b/_assets/vendor/pgn4web/images/merida/21/wb.png
new file mode 100644
index 0000000..b03a188
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/wk.png b/_assets/vendor/pgn4web/images/merida/21/wk.png
new file mode 100644
index 0000000..1f67289
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/wn.png b/_assets/vendor/pgn4web/images/merida/21/wn.png
new file mode 100644
index 0000000..b004965
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/wp.png b/_assets/vendor/pgn4web/images/merida/21/wp.png
new file mode 100644
index 0000000..e7fdab6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/wq.png b/_assets/vendor/pgn4web/images/merida/21/wq.png
new file mode 100644
index 0000000..1b6c440
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/21/wr.png b/_assets/vendor/pgn4web/images/merida/21/wr.png
new file mode 100644
index 0000000..f47ca6e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/21/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/bb.png b/_assets/vendor/pgn4web/images/merida/22/bb.png
new file mode 100644
index 0000000..af74cd1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/bk.png b/_assets/vendor/pgn4web/images/merida/22/bk.png
new file mode 100644
index 0000000..4cf8cbb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/bn.png b/_assets/vendor/pgn4web/images/merida/22/bn.png
new file mode 100644
index 0000000..de21500
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/bp.png b/_assets/vendor/pgn4web/images/merida/22/bp.png
new file mode 100644
index 0000000..97b7908
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/bq.png b/_assets/vendor/pgn4web/images/merida/22/bq.png
new file mode 100644
index 0000000..82b8542
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/br.png b/_assets/vendor/pgn4web/images/merida/22/br.png
new file mode 100644
index 0000000..1f36558
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/clear.png b/_assets/vendor/pgn4web/images/merida/22/clear.png
new file mode 100644
index 0000000..3544026
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/index.html b/_assets/vendor/pgn4web/images/merida/22/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/22/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/22/wb.png b/_assets/vendor/pgn4web/images/merida/22/wb.png
new file mode 100644
index 0000000..4b4213f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/wk.png b/_assets/vendor/pgn4web/images/merida/22/wk.png
new file mode 100644
index 0000000..b85a8b0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/wn.png b/_assets/vendor/pgn4web/images/merida/22/wn.png
new file mode 100644
index 0000000..45ae8ef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/wp.png b/_assets/vendor/pgn4web/images/merida/22/wp.png
new file mode 100644
index 0000000..8e3b172
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/wq.png b/_assets/vendor/pgn4web/images/merida/22/wq.png
new file mode 100644
index 0000000..1a61789
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/22/wr.png b/_assets/vendor/pgn4web/images/merida/22/wr.png
new file mode 100644
index 0000000..96d5b27
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/22/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/bb.png b/_assets/vendor/pgn4web/images/merida/23/bb.png
new file mode 100644
index 0000000..f79d036
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/bk.png b/_assets/vendor/pgn4web/images/merida/23/bk.png
new file mode 100644
index 0000000..b4958c3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/bn.png b/_assets/vendor/pgn4web/images/merida/23/bn.png
new file mode 100644
index 0000000..d912999
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/bp.png b/_assets/vendor/pgn4web/images/merida/23/bp.png
new file mode 100644
index 0000000..72a1562
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/bq.png b/_assets/vendor/pgn4web/images/merida/23/bq.png
new file mode 100644
index 0000000..f10cced
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/br.png b/_assets/vendor/pgn4web/images/merida/23/br.png
new file mode 100644
index 0000000..a316a06
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/clear.png b/_assets/vendor/pgn4web/images/merida/23/clear.png
new file mode 100644
index 0000000..844df3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/index.html b/_assets/vendor/pgn4web/images/merida/23/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/23/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/23/wb.png b/_assets/vendor/pgn4web/images/merida/23/wb.png
new file mode 100644
index 0000000..ded970a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/wk.png b/_assets/vendor/pgn4web/images/merida/23/wk.png
new file mode 100644
index 0000000..abcd809
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/wn.png b/_assets/vendor/pgn4web/images/merida/23/wn.png
new file mode 100644
index 0000000..64edac6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/wp.png b/_assets/vendor/pgn4web/images/merida/23/wp.png
new file mode 100644
index 0000000..31a375e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/wq.png b/_assets/vendor/pgn4web/images/merida/23/wq.png
new file mode 100644
index 0000000..03e22ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/23/wr.png b/_assets/vendor/pgn4web/images/merida/23/wr.png
new file mode 100644
index 0000000..f32c9dc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/23/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/bb.png b/_assets/vendor/pgn4web/images/merida/24/bb.png
new file mode 100644
index 0000000..b57a333
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/bk.png b/_assets/vendor/pgn4web/images/merida/24/bk.png
new file mode 100644
index 0000000..3aec286
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/bn.png b/_assets/vendor/pgn4web/images/merida/24/bn.png
new file mode 100644
index 0000000..fd3e372
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/bp.png b/_assets/vendor/pgn4web/images/merida/24/bp.png
new file mode 100644
index 0000000..14296b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/bq.png b/_assets/vendor/pgn4web/images/merida/24/bq.png
new file mode 100644
index 0000000..8bd00f6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/br.png b/_assets/vendor/pgn4web/images/merida/24/br.png
new file mode 100644
index 0000000..9e5c1eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/clear.png b/_assets/vendor/pgn4web/images/merida/24/clear.png
new file mode 100644
index 0000000..b0b6716
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/index.html b/_assets/vendor/pgn4web/images/merida/24/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/24/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/24/wb.png b/_assets/vendor/pgn4web/images/merida/24/wb.png
new file mode 100644
index 0000000..e2e37a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/wk.png b/_assets/vendor/pgn4web/images/merida/24/wk.png
new file mode 100644
index 0000000..af02692
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/wn.png b/_assets/vendor/pgn4web/images/merida/24/wn.png
new file mode 100644
index 0000000..f032b44
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/wp.png b/_assets/vendor/pgn4web/images/merida/24/wp.png
new file mode 100644
index 0000000..3fe6b3f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/wq.png b/_assets/vendor/pgn4web/images/merida/24/wq.png
new file mode 100644
index 0000000..577cc83
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/24/wr.png b/_assets/vendor/pgn4web/images/merida/24/wr.png
new file mode 100644
index 0000000..0f4aed3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/24/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/bb.png b/_assets/vendor/pgn4web/images/merida/25/bb.png
new file mode 100644
index 0000000..cd75276
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/bk.png b/_assets/vendor/pgn4web/images/merida/25/bk.png
new file mode 100644
index 0000000..5a927be
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/bn.png b/_assets/vendor/pgn4web/images/merida/25/bn.png
new file mode 100644
index 0000000..1d1d0e0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/bp.png b/_assets/vendor/pgn4web/images/merida/25/bp.png
new file mode 100644
index 0000000..d17daa2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/bq.png b/_assets/vendor/pgn4web/images/merida/25/bq.png
new file mode 100644
index 0000000..cd1ab0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/br.png b/_assets/vendor/pgn4web/images/merida/25/br.png
new file mode 100644
index 0000000..773dfd6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/clear.png b/_assets/vendor/pgn4web/images/merida/25/clear.png
new file mode 100644
index 0000000..271cd57
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/index.html b/_assets/vendor/pgn4web/images/merida/25/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/25/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/25/wb.png b/_assets/vendor/pgn4web/images/merida/25/wb.png
new file mode 100644
index 0000000..d0c111c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/wk.png b/_assets/vendor/pgn4web/images/merida/25/wk.png
new file mode 100644
index 0000000..e0163bc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/wn.png b/_assets/vendor/pgn4web/images/merida/25/wn.png
new file mode 100644
index 0000000..7b290db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/wp.png b/_assets/vendor/pgn4web/images/merida/25/wp.png
new file mode 100644
index 0000000..acad38a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/wq.png b/_assets/vendor/pgn4web/images/merida/25/wq.png
new file mode 100644
index 0000000..8d89985
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/25/wr.png b/_assets/vendor/pgn4web/images/merida/25/wr.png
new file mode 100644
index 0000000..d8878e5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/25/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/bb.png b/_assets/vendor/pgn4web/images/merida/26/bb.png
new file mode 100644
index 0000000..d601d61
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/bk.png b/_assets/vendor/pgn4web/images/merida/26/bk.png
new file mode 100644
index 0000000..8ce03ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/bn.png b/_assets/vendor/pgn4web/images/merida/26/bn.png
new file mode 100644
index 0000000..26a61e5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/bp.png b/_assets/vendor/pgn4web/images/merida/26/bp.png
new file mode 100644
index 0000000..86184ae
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/bq.png b/_assets/vendor/pgn4web/images/merida/26/bq.png
new file mode 100644
index 0000000..19d05c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/br.png b/_assets/vendor/pgn4web/images/merida/26/br.png
new file mode 100644
index 0000000..bbd499b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/clear.png b/_assets/vendor/pgn4web/images/merida/26/clear.png
new file mode 100644
index 0000000..8f4f371
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/index.html b/_assets/vendor/pgn4web/images/merida/26/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/26/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/26/wb.png b/_assets/vendor/pgn4web/images/merida/26/wb.png
new file mode 100644
index 0000000..f260887
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/wk.png b/_assets/vendor/pgn4web/images/merida/26/wk.png
new file mode 100644
index 0000000..5190577
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/wn.png b/_assets/vendor/pgn4web/images/merida/26/wn.png
new file mode 100644
index 0000000..331bd41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/wp.png b/_assets/vendor/pgn4web/images/merida/26/wp.png
new file mode 100644
index 0000000..67e9ff6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/wq.png b/_assets/vendor/pgn4web/images/merida/26/wq.png
new file mode 100644
index 0000000..a2d4582
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/26/wr.png b/_assets/vendor/pgn4web/images/merida/26/wr.png
new file mode 100644
index 0000000..8a16fe9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/26/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/bb.png b/_assets/vendor/pgn4web/images/merida/27/bb.png
new file mode 100644
index 0000000..56fb61f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/bk.png b/_assets/vendor/pgn4web/images/merida/27/bk.png
new file mode 100644
index 0000000..94c71a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/bn.png b/_assets/vendor/pgn4web/images/merida/27/bn.png
new file mode 100644
index 0000000..05aa71e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/bp.png b/_assets/vendor/pgn4web/images/merida/27/bp.png
new file mode 100644
index 0000000..1acc077
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/bq.png b/_assets/vendor/pgn4web/images/merida/27/bq.png
new file mode 100644
index 0000000..8d2036b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/br.png b/_assets/vendor/pgn4web/images/merida/27/br.png
new file mode 100644
index 0000000..7c993e8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/clear.png b/_assets/vendor/pgn4web/images/merida/27/clear.png
new file mode 100644
index 0000000..b66fc48
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/index.html b/_assets/vendor/pgn4web/images/merida/27/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/27/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/27/wb.png b/_assets/vendor/pgn4web/images/merida/27/wb.png
new file mode 100644
index 0000000..c8b7fdb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/wk.png b/_assets/vendor/pgn4web/images/merida/27/wk.png
new file mode 100644
index 0000000..f1e67a0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/wn.png b/_assets/vendor/pgn4web/images/merida/27/wn.png
new file mode 100644
index 0000000..db282cd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/wp.png b/_assets/vendor/pgn4web/images/merida/27/wp.png
new file mode 100644
index 0000000..0cb700e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/wq.png b/_assets/vendor/pgn4web/images/merida/27/wq.png
new file mode 100644
index 0000000..1635b07
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/27/wr.png b/_assets/vendor/pgn4web/images/merida/27/wr.png
new file mode 100644
index 0000000..fb25808
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/27/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/bb.png b/_assets/vendor/pgn4web/images/merida/28/bb.png
new file mode 100644
index 0000000..8911697
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/bk.png b/_assets/vendor/pgn4web/images/merida/28/bk.png
new file mode 100644
index 0000000..ae95c5c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/bn.png b/_assets/vendor/pgn4web/images/merida/28/bn.png
new file mode 100644
index 0000000..5d23ec1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/bp.png b/_assets/vendor/pgn4web/images/merida/28/bp.png
new file mode 100644
index 0000000..bc202b1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/bq.png b/_assets/vendor/pgn4web/images/merida/28/bq.png
new file mode 100644
index 0000000..5fa7828
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/br.png b/_assets/vendor/pgn4web/images/merida/28/br.png
new file mode 100644
index 0000000..04dcaac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/clear.png b/_assets/vendor/pgn4web/images/merida/28/clear.png
new file mode 100644
index 0000000..7ccfdd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/index.html b/_assets/vendor/pgn4web/images/merida/28/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/28/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/28/wb.png b/_assets/vendor/pgn4web/images/merida/28/wb.png
new file mode 100644
index 0000000..299ee09
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/wk.png b/_assets/vendor/pgn4web/images/merida/28/wk.png
new file mode 100644
index 0000000..51d77ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/wn.png b/_assets/vendor/pgn4web/images/merida/28/wn.png
new file mode 100644
index 0000000..8c6f338
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/wp.png b/_assets/vendor/pgn4web/images/merida/28/wp.png
new file mode 100644
index 0000000..84fae5e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/wq.png b/_assets/vendor/pgn4web/images/merida/28/wq.png
new file mode 100644
index 0000000..6f62584
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/28/wr.png b/_assets/vendor/pgn4web/images/merida/28/wr.png
new file mode 100644
index 0000000..67a1c8e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/28/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/bb.png b/_assets/vendor/pgn4web/images/merida/29/bb.png
new file mode 100644
index 0000000..01504c6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/bk.png b/_assets/vendor/pgn4web/images/merida/29/bk.png
new file mode 100644
index 0000000..de98b9c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/bn.png b/_assets/vendor/pgn4web/images/merida/29/bn.png
new file mode 100644
index 0000000..994f549
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/bp.png b/_assets/vendor/pgn4web/images/merida/29/bp.png
new file mode 100644
index 0000000..fd567ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/bq.png b/_assets/vendor/pgn4web/images/merida/29/bq.png
new file mode 100644
index 0000000..cc85ef2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/br.png b/_assets/vendor/pgn4web/images/merida/29/br.png
new file mode 100644
index 0000000..390d0bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/clear.png b/_assets/vendor/pgn4web/images/merida/29/clear.png
new file mode 100644
index 0000000..6066131
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/index.html b/_assets/vendor/pgn4web/images/merida/29/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/29/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/29/wb.png b/_assets/vendor/pgn4web/images/merida/29/wb.png
new file mode 100644
index 0000000..28e3370
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/wk.png b/_assets/vendor/pgn4web/images/merida/29/wk.png
new file mode 100644
index 0000000..3dd526b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/wn.png b/_assets/vendor/pgn4web/images/merida/29/wn.png
new file mode 100644
index 0000000..41f4f26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/wp.png b/_assets/vendor/pgn4web/images/merida/29/wp.png
new file mode 100644
index 0000000..afcf136
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/wq.png b/_assets/vendor/pgn4web/images/merida/29/wq.png
new file mode 100644
index 0000000..794edf5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/29/wr.png b/_assets/vendor/pgn4web/images/merida/29/wr.png
new file mode 100644
index 0000000..1edf14e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/29/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/bb.png b/_assets/vendor/pgn4web/images/merida/30/bb.png
new file mode 100644
index 0000000..1695d31
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/bk.png b/_assets/vendor/pgn4web/images/merida/30/bk.png
new file mode 100644
index 0000000..7773965
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/bn.png b/_assets/vendor/pgn4web/images/merida/30/bn.png
new file mode 100644
index 0000000..985c89a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/bp.png b/_assets/vendor/pgn4web/images/merida/30/bp.png
new file mode 100644
index 0000000..e304d2a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/bq.png b/_assets/vendor/pgn4web/images/merida/30/bq.png
new file mode 100644
index 0000000..4728b29
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/br.png b/_assets/vendor/pgn4web/images/merida/30/br.png
new file mode 100644
index 0000000..754c7e7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/clear.png b/_assets/vendor/pgn4web/images/merida/30/clear.png
new file mode 100644
index 0000000..26efd52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/index.html b/_assets/vendor/pgn4web/images/merida/30/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/30/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/30/wb.png b/_assets/vendor/pgn4web/images/merida/30/wb.png
new file mode 100644
index 0000000..14513f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/wk.png b/_assets/vendor/pgn4web/images/merida/30/wk.png
new file mode 100644
index 0000000..bf3def2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/wn.png b/_assets/vendor/pgn4web/images/merida/30/wn.png
new file mode 100644
index 0000000..481def4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/wp.png b/_assets/vendor/pgn4web/images/merida/30/wp.png
new file mode 100644
index 0000000..05cafaf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/wq.png b/_assets/vendor/pgn4web/images/merida/30/wq.png
new file mode 100644
index 0000000..3017a29
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/30/wr.png b/_assets/vendor/pgn4web/images/merida/30/wr.png
new file mode 100644
index 0000000..7ed2381
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/30/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/bb.png b/_assets/vendor/pgn4web/images/merida/300/bb.png
new file mode 100644
index 0000000..317f145
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/bk.png b/_assets/vendor/pgn4web/images/merida/300/bk.png
new file mode 100644
index 0000000..2a9704b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/bn.png b/_assets/vendor/pgn4web/images/merida/300/bn.png
new file mode 100644
index 0000000..aa59a13
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/bp.png b/_assets/vendor/pgn4web/images/merida/300/bp.png
new file mode 100644
index 0000000..ebaec3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/bq.png b/_assets/vendor/pgn4web/images/merida/300/bq.png
new file mode 100644
index 0000000..17329d3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/br.png b/_assets/vendor/pgn4web/images/merida/300/br.png
new file mode 100644
index 0000000..a781625
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/clear.png b/_assets/vendor/pgn4web/images/merida/300/clear.png
new file mode 100644
index 0000000..c0c1495
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/index.html b/_assets/vendor/pgn4web/images/merida/300/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/300/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/300/wb.png b/_assets/vendor/pgn4web/images/merida/300/wb.png
new file mode 100644
index 0000000..c690f5c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/wk.png b/_assets/vendor/pgn4web/images/merida/300/wk.png
new file mode 100644
index 0000000..5df3ee7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/wn.png b/_assets/vendor/pgn4web/images/merida/300/wn.png
new file mode 100644
index 0000000..3b12a20
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/wp.png b/_assets/vendor/pgn4web/images/merida/300/wp.png
new file mode 100644
index 0000000..f8521ff
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/wq.png b/_assets/vendor/pgn4web/images/merida/300/wq.png
new file mode 100644
index 0000000..01dd5ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/300/wr.png b/_assets/vendor/pgn4web/images/merida/300/wr.png
new file mode 100644
index 0000000..87bdb68
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/300/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/bb.png b/_assets/vendor/pgn4web/images/merida/31/bb.png
new file mode 100644
index 0000000..d243c40
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/bk.png b/_assets/vendor/pgn4web/images/merida/31/bk.png
new file mode 100644
index 0000000..544ece2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/bn.png b/_assets/vendor/pgn4web/images/merida/31/bn.png
new file mode 100644
index 0000000..817adfd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/bp.png b/_assets/vendor/pgn4web/images/merida/31/bp.png
new file mode 100644
index 0000000..7e08154
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/bq.png b/_assets/vendor/pgn4web/images/merida/31/bq.png
new file mode 100644
index 0000000..54e8890
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/br.png b/_assets/vendor/pgn4web/images/merida/31/br.png
new file mode 100644
index 0000000..685fc9e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/clear.png b/_assets/vendor/pgn4web/images/merida/31/clear.png
new file mode 100644
index 0000000..7b58d16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/index.html b/_assets/vendor/pgn4web/images/merida/31/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/31/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/31/wb.png b/_assets/vendor/pgn4web/images/merida/31/wb.png
new file mode 100644
index 0000000..210fead
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/wk.png b/_assets/vendor/pgn4web/images/merida/31/wk.png
new file mode 100644
index 0000000..be92c19
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/wn.png b/_assets/vendor/pgn4web/images/merida/31/wn.png
new file mode 100644
index 0000000..2ede8fc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/wp.png b/_assets/vendor/pgn4web/images/merida/31/wp.png
new file mode 100644
index 0000000..e3ab89c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/wq.png b/_assets/vendor/pgn4web/images/merida/31/wq.png
new file mode 100644
index 0000000..68626a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/31/wr.png b/_assets/vendor/pgn4web/images/merida/31/wr.png
new file mode 100644
index 0000000..516688a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/31/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/bb.png b/_assets/vendor/pgn4web/images/merida/32/bb.png
new file mode 100644
index 0000000..2e85c90
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/bk.png b/_assets/vendor/pgn4web/images/merida/32/bk.png
new file mode 100644
index 0000000..d3b802e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/bn.png b/_assets/vendor/pgn4web/images/merida/32/bn.png
new file mode 100644
index 0000000..9c27bab
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/bp.png b/_assets/vendor/pgn4web/images/merida/32/bp.png
new file mode 100644
index 0000000..106fbd2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/bq.png b/_assets/vendor/pgn4web/images/merida/32/bq.png
new file mode 100644
index 0000000..7302f0c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/br.png b/_assets/vendor/pgn4web/images/merida/32/br.png
new file mode 100644
index 0000000..36e3149
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/clear.png b/_assets/vendor/pgn4web/images/merida/32/clear.png
new file mode 100644
index 0000000..afd9f37
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/index.html b/_assets/vendor/pgn4web/images/merida/32/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/32/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/32/wb.png b/_assets/vendor/pgn4web/images/merida/32/wb.png
new file mode 100644
index 0000000..fbbdf8f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/wk.png b/_assets/vendor/pgn4web/images/merida/32/wk.png
new file mode 100644
index 0000000..d1ba291
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/wn.png b/_assets/vendor/pgn4web/images/merida/32/wn.png
new file mode 100644
index 0000000..21207ee
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/wp.png b/_assets/vendor/pgn4web/images/merida/32/wp.png
new file mode 100644
index 0000000..cb700ef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/wq.png b/_assets/vendor/pgn4web/images/merida/32/wq.png
new file mode 100644
index 0000000..2fe9bf5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/32/wr.png b/_assets/vendor/pgn4web/images/merida/32/wr.png
new file mode 100644
index 0000000..86ad90d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/32/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/bb.png b/_assets/vendor/pgn4web/images/merida/33/bb.png
new file mode 100644
index 0000000..4646dac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/bk.png b/_assets/vendor/pgn4web/images/merida/33/bk.png
new file mode 100644
index 0000000..b8b3d1f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/bn.png b/_assets/vendor/pgn4web/images/merida/33/bn.png
new file mode 100644
index 0000000..a523a51
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/bp.png b/_assets/vendor/pgn4web/images/merida/33/bp.png
new file mode 100644
index 0000000..09a1600
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/bq.png b/_assets/vendor/pgn4web/images/merida/33/bq.png
new file mode 100644
index 0000000..b61ccd0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/br.png b/_assets/vendor/pgn4web/images/merida/33/br.png
new file mode 100644
index 0000000..769e869
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/clear.png b/_assets/vendor/pgn4web/images/merida/33/clear.png
new file mode 100644
index 0000000..8b635b2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/index.html b/_assets/vendor/pgn4web/images/merida/33/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/33/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/33/wb.png b/_assets/vendor/pgn4web/images/merida/33/wb.png
new file mode 100644
index 0000000..81269b1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/wk.png b/_assets/vendor/pgn4web/images/merida/33/wk.png
new file mode 100644
index 0000000..a00af77
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/wn.png b/_assets/vendor/pgn4web/images/merida/33/wn.png
new file mode 100644
index 0000000..91fe03d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/wp.png b/_assets/vendor/pgn4web/images/merida/33/wp.png
new file mode 100644
index 0000000..a93b755
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/wq.png b/_assets/vendor/pgn4web/images/merida/33/wq.png
new file mode 100644
index 0000000..be11098
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/33/wr.png b/_assets/vendor/pgn4web/images/merida/33/wr.png
new file mode 100644
index 0000000..465cd62
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/33/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/bb.png b/_assets/vendor/pgn4web/images/merida/34/bb.png
new file mode 100644
index 0000000..4ec0538
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/bk.png b/_assets/vendor/pgn4web/images/merida/34/bk.png
new file mode 100644
index 0000000..9ee8704
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/bn.png b/_assets/vendor/pgn4web/images/merida/34/bn.png
new file mode 100644
index 0000000..072687a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/bp.png b/_assets/vendor/pgn4web/images/merida/34/bp.png
new file mode 100644
index 0000000..94c8c5c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/bq.png b/_assets/vendor/pgn4web/images/merida/34/bq.png
new file mode 100644
index 0000000..234d6a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/br.png b/_assets/vendor/pgn4web/images/merida/34/br.png
new file mode 100644
index 0000000..3a9c3e5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/clear.png b/_assets/vendor/pgn4web/images/merida/34/clear.png
new file mode 100644
index 0000000..d860ae1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/index.html b/_assets/vendor/pgn4web/images/merida/34/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/34/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/34/wb.png b/_assets/vendor/pgn4web/images/merida/34/wb.png
new file mode 100644
index 0000000..e69db5a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/wk.png b/_assets/vendor/pgn4web/images/merida/34/wk.png
new file mode 100644
index 0000000..0bcb76e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/wn.png b/_assets/vendor/pgn4web/images/merida/34/wn.png
new file mode 100644
index 0000000..91537f1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/wp.png b/_assets/vendor/pgn4web/images/merida/34/wp.png
new file mode 100644
index 0000000..1e4513d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/wq.png b/_assets/vendor/pgn4web/images/merida/34/wq.png
new file mode 100644
index 0000000..a4e527e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/34/wr.png b/_assets/vendor/pgn4web/images/merida/34/wr.png
new file mode 100644
index 0000000..5fdb8a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/34/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/bb.png b/_assets/vendor/pgn4web/images/merida/35/bb.png
new file mode 100644
index 0000000..6a41ac1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/bk.png b/_assets/vendor/pgn4web/images/merida/35/bk.png
new file mode 100644
index 0000000..db5d419
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/bn.png b/_assets/vendor/pgn4web/images/merida/35/bn.png
new file mode 100644
index 0000000..860882f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/bp.png b/_assets/vendor/pgn4web/images/merida/35/bp.png
new file mode 100644
index 0000000..2bfcc87
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/bq.png b/_assets/vendor/pgn4web/images/merida/35/bq.png
new file mode 100644
index 0000000..37a6637
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/br.png b/_assets/vendor/pgn4web/images/merida/35/br.png
new file mode 100644
index 0000000..b8b48da
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/clear.png b/_assets/vendor/pgn4web/images/merida/35/clear.png
new file mode 100644
index 0000000..d8cce5d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/index.html b/_assets/vendor/pgn4web/images/merida/35/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/35/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/35/wb.png b/_assets/vendor/pgn4web/images/merida/35/wb.png
new file mode 100644
index 0000000..c3412f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/wk.png b/_assets/vendor/pgn4web/images/merida/35/wk.png
new file mode 100644
index 0000000..7826bef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/wn.png b/_assets/vendor/pgn4web/images/merida/35/wn.png
new file mode 100644
index 0000000..0ff2702
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/wp.png b/_assets/vendor/pgn4web/images/merida/35/wp.png
new file mode 100644
index 0000000..e48b8b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/wq.png b/_assets/vendor/pgn4web/images/merida/35/wq.png
new file mode 100644
index 0000000..228f6e3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/35/wr.png b/_assets/vendor/pgn4web/images/merida/35/wr.png
new file mode 100644
index 0000000..c5b85cb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/35/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/bb.png b/_assets/vendor/pgn4web/images/merida/36/bb.png
new file mode 100644
index 0000000..5e08fd2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/bk.png b/_assets/vendor/pgn4web/images/merida/36/bk.png
new file mode 100644
index 0000000..17c636a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/bn.png b/_assets/vendor/pgn4web/images/merida/36/bn.png
new file mode 100644
index 0000000..4ba0508
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/bp.png b/_assets/vendor/pgn4web/images/merida/36/bp.png
new file mode 100644
index 0000000..687cd93
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/bq.png b/_assets/vendor/pgn4web/images/merida/36/bq.png
new file mode 100644
index 0000000..ade6ef0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/br.png b/_assets/vendor/pgn4web/images/merida/36/br.png
new file mode 100644
index 0000000..a5faeb2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/clear.png b/_assets/vendor/pgn4web/images/merida/36/clear.png
new file mode 100644
index 0000000..9162b41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/index.html b/_assets/vendor/pgn4web/images/merida/36/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/36/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/36/wb.png b/_assets/vendor/pgn4web/images/merida/36/wb.png
new file mode 100644
index 0000000..33fd83e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/wk.png b/_assets/vendor/pgn4web/images/merida/36/wk.png
new file mode 100644
index 0000000..cab93df
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/wn.png b/_assets/vendor/pgn4web/images/merida/36/wn.png
new file mode 100644
index 0000000..c893679
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/wp.png b/_assets/vendor/pgn4web/images/merida/36/wp.png
new file mode 100644
index 0000000..2274134
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/wq.png b/_assets/vendor/pgn4web/images/merida/36/wq.png
new file mode 100644
index 0000000..b8fd91c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/36/wr.png b/_assets/vendor/pgn4web/images/merida/36/wr.png
new file mode 100644
index 0000000..097cb47
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/36/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/bb.png b/_assets/vendor/pgn4web/images/merida/37/bb.png
new file mode 100644
index 0000000..b6d1105
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/bk.png b/_assets/vendor/pgn4web/images/merida/37/bk.png
new file mode 100644
index 0000000..2eab6f2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/bn.png b/_assets/vendor/pgn4web/images/merida/37/bn.png
new file mode 100644
index 0000000..38918ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/bp.png b/_assets/vendor/pgn4web/images/merida/37/bp.png
new file mode 100644
index 0000000..2a3fb34
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/bq.png b/_assets/vendor/pgn4web/images/merida/37/bq.png
new file mode 100644
index 0000000..9c69bce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/br.png b/_assets/vendor/pgn4web/images/merida/37/br.png
new file mode 100644
index 0000000..e253233
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/clear.png b/_assets/vendor/pgn4web/images/merida/37/clear.png
new file mode 100644
index 0000000..a1ab072
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/index.html b/_assets/vendor/pgn4web/images/merida/37/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/37/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/37/wb.png b/_assets/vendor/pgn4web/images/merida/37/wb.png
new file mode 100644
index 0000000..c60f966
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/wk.png b/_assets/vendor/pgn4web/images/merida/37/wk.png
new file mode 100644
index 0000000..8067862
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/wn.png b/_assets/vendor/pgn4web/images/merida/37/wn.png
new file mode 100644
index 0000000..eb4e707
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/wp.png b/_assets/vendor/pgn4web/images/merida/37/wp.png
new file mode 100644
index 0000000..2fc9766
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/wq.png b/_assets/vendor/pgn4web/images/merida/37/wq.png
new file mode 100644
index 0000000..93033ae
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/37/wr.png b/_assets/vendor/pgn4web/images/merida/37/wr.png
new file mode 100644
index 0000000..b939e80
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/37/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/bb.png b/_assets/vendor/pgn4web/images/merida/38/bb.png
new file mode 100644
index 0000000..be28fd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/bk.png b/_assets/vendor/pgn4web/images/merida/38/bk.png
new file mode 100644
index 0000000..75c5101
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/bn.png b/_assets/vendor/pgn4web/images/merida/38/bn.png
new file mode 100644
index 0000000..807219a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/bp.png b/_assets/vendor/pgn4web/images/merida/38/bp.png
new file mode 100644
index 0000000..cfdc1e9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/bq.png b/_assets/vendor/pgn4web/images/merida/38/bq.png
new file mode 100644
index 0000000..b87e80c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/br.png b/_assets/vendor/pgn4web/images/merida/38/br.png
new file mode 100644
index 0000000..6642f82
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/clear.png b/_assets/vendor/pgn4web/images/merida/38/clear.png
new file mode 100644
index 0000000..a833d60
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/index.html b/_assets/vendor/pgn4web/images/merida/38/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/38/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/38/wb.png b/_assets/vendor/pgn4web/images/merida/38/wb.png
new file mode 100644
index 0000000..3b3a123
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/wk.png b/_assets/vendor/pgn4web/images/merida/38/wk.png
new file mode 100644
index 0000000..9998ea5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/wn.png b/_assets/vendor/pgn4web/images/merida/38/wn.png
new file mode 100644
index 0000000..a23899a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/wp.png b/_assets/vendor/pgn4web/images/merida/38/wp.png
new file mode 100644
index 0000000..2b7bba1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/wq.png b/_assets/vendor/pgn4web/images/merida/38/wq.png
new file mode 100644
index 0000000..9c094ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/38/wr.png b/_assets/vendor/pgn4web/images/merida/38/wr.png
new file mode 100644
index 0000000..6c09519
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/38/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/bb.png b/_assets/vendor/pgn4web/images/merida/39/bb.png
new file mode 100644
index 0000000..ebe2888
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/bk.png b/_assets/vendor/pgn4web/images/merida/39/bk.png
new file mode 100644
index 0000000..49b9b72
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/bn.png b/_assets/vendor/pgn4web/images/merida/39/bn.png
new file mode 100644
index 0000000..46e03e6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/bp.png b/_assets/vendor/pgn4web/images/merida/39/bp.png
new file mode 100644
index 0000000..f02779d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/bq.png b/_assets/vendor/pgn4web/images/merida/39/bq.png
new file mode 100644
index 0000000..c9f68ca
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/br.png b/_assets/vendor/pgn4web/images/merida/39/br.png
new file mode 100644
index 0000000..4d2c47d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/clear.png b/_assets/vendor/pgn4web/images/merida/39/clear.png
new file mode 100644
index 0000000..2db2186
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/index.html b/_assets/vendor/pgn4web/images/merida/39/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/39/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/39/wb.png b/_assets/vendor/pgn4web/images/merida/39/wb.png
new file mode 100644
index 0000000..d42f5a4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/wk.png b/_assets/vendor/pgn4web/images/merida/39/wk.png
new file mode 100644
index 0000000..d3d7d67
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/wn.png b/_assets/vendor/pgn4web/images/merida/39/wn.png
new file mode 100644
index 0000000..5f1875a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/wp.png b/_assets/vendor/pgn4web/images/merida/39/wp.png
new file mode 100644
index 0000000..3c2556c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/wq.png b/_assets/vendor/pgn4web/images/merida/39/wq.png
new file mode 100644
index 0000000..c9558af
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/39/wr.png b/_assets/vendor/pgn4web/images/merida/39/wr.png
new file mode 100644
index 0000000..be18df9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/39/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/bb.png b/_assets/vendor/pgn4web/images/merida/40/bb.png
new file mode 100644
index 0000000..d7980cd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/bk.png b/_assets/vendor/pgn4web/images/merida/40/bk.png
new file mode 100644
index 0000000..673bd1b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/bn.png b/_assets/vendor/pgn4web/images/merida/40/bn.png
new file mode 100644
index 0000000..def5bd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/bp.png b/_assets/vendor/pgn4web/images/merida/40/bp.png
new file mode 100644
index 0000000..a96d198
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/bq.png b/_assets/vendor/pgn4web/images/merida/40/bq.png
new file mode 100644
index 0000000..5bc295f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/br.png b/_assets/vendor/pgn4web/images/merida/40/br.png
new file mode 100644
index 0000000..fb7a9c7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/clear.png b/_assets/vendor/pgn4web/images/merida/40/clear.png
new file mode 100644
index 0000000..02f667c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/index.html b/_assets/vendor/pgn4web/images/merida/40/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/40/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/40/wb.png b/_assets/vendor/pgn4web/images/merida/40/wb.png
new file mode 100644
index 0000000..a28430b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/wk.png b/_assets/vendor/pgn4web/images/merida/40/wk.png
new file mode 100644
index 0000000..328555a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/wn.png b/_assets/vendor/pgn4web/images/merida/40/wn.png
new file mode 100644
index 0000000..b0d8738
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/wp.png b/_assets/vendor/pgn4web/images/merida/40/wp.png
new file mode 100644
index 0000000..2d6839f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/wq.png b/_assets/vendor/pgn4web/images/merida/40/wq.png
new file mode 100644
index 0000000..54c6db3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/40/wr.png b/_assets/vendor/pgn4web/images/merida/40/wr.png
new file mode 100644
index 0000000..a395ba3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/40/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/bb.png b/_assets/vendor/pgn4web/images/merida/41/bb.png
new file mode 100644
index 0000000..b1df5ca
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/bk.png b/_assets/vendor/pgn4web/images/merida/41/bk.png
new file mode 100644
index 0000000..f1fb795
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/bn.png b/_assets/vendor/pgn4web/images/merida/41/bn.png
new file mode 100644
index 0000000..a7226be
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/bp.png b/_assets/vendor/pgn4web/images/merida/41/bp.png
new file mode 100644
index 0000000..68b51d4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/bq.png b/_assets/vendor/pgn4web/images/merida/41/bq.png
new file mode 100644
index 0000000..7376239
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/br.png b/_assets/vendor/pgn4web/images/merida/41/br.png
new file mode 100644
index 0000000..d139679
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/clear.png b/_assets/vendor/pgn4web/images/merida/41/clear.png
new file mode 100644
index 0000000..4b32916
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/index.html b/_assets/vendor/pgn4web/images/merida/41/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/41/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/41/wb.png b/_assets/vendor/pgn4web/images/merida/41/wb.png
new file mode 100644
index 0000000..7a4addb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/wk.png b/_assets/vendor/pgn4web/images/merida/41/wk.png
new file mode 100644
index 0000000..ed09306
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/wn.png b/_assets/vendor/pgn4web/images/merida/41/wn.png
new file mode 100644
index 0000000..d8735a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/wp.png b/_assets/vendor/pgn4web/images/merida/41/wp.png
new file mode 100644
index 0000000..0f91b32
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/wq.png b/_assets/vendor/pgn4web/images/merida/41/wq.png
new file mode 100644
index 0000000..fde9322
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/41/wr.png b/_assets/vendor/pgn4web/images/merida/41/wr.png
new file mode 100644
index 0000000..8abaaa1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/41/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/bb.png b/_assets/vendor/pgn4web/images/merida/42/bb.png
new file mode 100644
index 0000000..9390205
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/bk.png b/_assets/vendor/pgn4web/images/merida/42/bk.png
new file mode 100644
index 0000000..b2c0588
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/bn.png b/_assets/vendor/pgn4web/images/merida/42/bn.png
new file mode 100644
index 0000000..8d3c43d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/bp.png b/_assets/vendor/pgn4web/images/merida/42/bp.png
new file mode 100644
index 0000000..507fccd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/bq.png b/_assets/vendor/pgn4web/images/merida/42/bq.png
new file mode 100644
index 0000000..dd56b14
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/br.png b/_assets/vendor/pgn4web/images/merida/42/br.png
new file mode 100644
index 0000000..e83cda3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/clear.png b/_assets/vendor/pgn4web/images/merida/42/clear.png
new file mode 100644
index 0000000..7331c88
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/index.html b/_assets/vendor/pgn4web/images/merida/42/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/42/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/42/wb.png b/_assets/vendor/pgn4web/images/merida/42/wb.png
new file mode 100644
index 0000000..34c7ee8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/wk.png b/_assets/vendor/pgn4web/images/merida/42/wk.png
new file mode 100644
index 0000000..49d5bcc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/wn.png b/_assets/vendor/pgn4web/images/merida/42/wn.png
new file mode 100644
index 0000000..3526df9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/wp.png b/_assets/vendor/pgn4web/images/merida/42/wp.png
new file mode 100644
index 0000000..d5bb388
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/wq.png b/_assets/vendor/pgn4web/images/merida/42/wq.png
new file mode 100644
index 0000000..1fe05ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/42/wr.png b/_assets/vendor/pgn4web/images/merida/42/wr.png
new file mode 100644
index 0000000..212cce4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/42/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/bb.png b/_assets/vendor/pgn4web/images/merida/43/bb.png
new file mode 100644
index 0000000..2c2f192
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/bk.png b/_assets/vendor/pgn4web/images/merida/43/bk.png
new file mode 100644
index 0000000..3b7d022
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/bn.png b/_assets/vendor/pgn4web/images/merida/43/bn.png
new file mode 100644
index 0000000..35ce26d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/bp.png b/_assets/vendor/pgn4web/images/merida/43/bp.png
new file mode 100644
index 0000000..b17f509
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/bq.png b/_assets/vendor/pgn4web/images/merida/43/bq.png
new file mode 100644
index 0000000..ba4884f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/br.png b/_assets/vendor/pgn4web/images/merida/43/br.png
new file mode 100644
index 0000000..4fa99f0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/clear.png b/_assets/vendor/pgn4web/images/merida/43/clear.png
new file mode 100644
index 0000000..cadd762
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/index.html b/_assets/vendor/pgn4web/images/merida/43/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/43/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/43/wb.png b/_assets/vendor/pgn4web/images/merida/43/wb.png
new file mode 100644
index 0000000..1ecaf32
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/wk.png b/_assets/vendor/pgn4web/images/merida/43/wk.png
new file mode 100644
index 0000000..f580eab
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/wn.png b/_assets/vendor/pgn4web/images/merida/43/wn.png
new file mode 100644
index 0000000..ef77752
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/wp.png b/_assets/vendor/pgn4web/images/merida/43/wp.png
new file mode 100644
index 0000000..0ab69de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/wq.png b/_assets/vendor/pgn4web/images/merida/43/wq.png
new file mode 100644
index 0000000..eb82de3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/43/wr.png b/_assets/vendor/pgn4web/images/merida/43/wr.png
new file mode 100644
index 0000000..9e2b3e9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/43/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/bb.png b/_assets/vendor/pgn4web/images/merida/44/bb.png
new file mode 100644
index 0000000..67c552a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/bk.png b/_assets/vendor/pgn4web/images/merida/44/bk.png
new file mode 100644
index 0000000..b1a5b21
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/bn.png b/_assets/vendor/pgn4web/images/merida/44/bn.png
new file mode 100644
index 0000000..0626a4e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/bp.png b/_assets/vendor/pgn4web/images/merida/44/bp.png
new file mode 100644
index 0000000..fdd4fb8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/bq.png b/_assets/vendor/pgn4web/images/merida/44/bq.png
new file mode 100644
index 0000000..eb871de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/br.png b/_assets/vendor/pgn4web/images/merida/44/br.png
new file mode 100644
index 0000000..8379aca
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/clear.png b/_assets/vendor/pgn4web/images/merida/44/clear.png
new file mode 100644
index 0000000..753d476
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/index.html b/_assets/vendor/pgn4web/images/merida/44/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/44/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/44/wb.png b/_assets/vendor/pgn4web/images/merida/44/wb.png
new file mode 100644
index 0000000..31d4001
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/wk.png b/_assets/vendor/pgn4web/images/merida/44/wk.png
new file mode 100644
index 0000000..d50c14b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/wn.png b/_assets/vendor/pgn4web/images/merida/44/wn.png
new file mode 100644
index 0000000..5008e58
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/wp.png b/_assets/vendor/pgn4web/images/merida/44/wp.png
new file mode 100644
index 0000000..6bb151f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/wq.png b/_assets/vendor/pgn4web/images/merida/44/wq.png
new file mode 100644
index 0000000..2f924b5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/44/wr.png b/_assets/vendor/pgn4web/images/merida/44/wr.png
new file mode 100644
index 0000000..a4e06ef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/44/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/bb.png b/_assets/vendor/pgn4web/images/merida/45/bb.png
new file mode 100644
index 0000000..98cac2a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/bk.png b/_assets/vendor/pgn4web/images/merida/45/bk.png
new file mode 100644
index 0000000..44d0b77
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/bn.png b/_assets/vendor/pgn4web/images/merida/45/bn.png
new file mode 100644
index 0000000..b50b49b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/bp.png b/_assets/vendor/pgn4web/images/merida/45/bp.png
new file mode 100644
index 0000000..ba9a9ff
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/bq.png b/_assets/vendor/pgn4web/images/merida/45/bq.png
new file mode 100644
index 0000000..b7a4438
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/br.png b/_assets/vendor/pgn4web/images/merida/45/br.png
new file mode 100644
index 0000000..5d3cb28
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/clear.png b/_assets/vendor/pgn4web/images/merida/45/clear.png
new file mode 100644
index 0000000..49be780
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/index.html b/_assets/vendor/pgn4web/images/merida/45/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/45/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/45/wb.png b/_assets/vendor/pgn4web/images/merida/45/wb.png
new file mode 100644
index 0000000..3c9e968
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/wk.png b/_assets/vendor/pgn4web/images/merida/45/wk.png
new file mode 100644
index 0000000..c8e0177
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/wn.png b/_assets/vendor/pgn4web/images/merida/45/wn.png
new file mode 100644
index 0000000..d580734
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/wp.png b/_assets/vendor/pgn4web/images/merida/45/wp.png
new file mode 100644
index 0000000..2be040e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/wq.png b/_assets/vendor/pgn4web/images/merida/45/wq.png
new file mode 100644
index 0000000..edd1de0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/45/wr.png b/_assets/vendor/pgn4web/images/merida/45/wr.png
new file mode 100644
index 0000000..0b40a42
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/45/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/bb.png b/_assets/vendor/pgn4web/images/merida/46/bb.png
new file mode 100644
index 0000000..c32a37b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/bk.png b/_assets/vendor/pgn4web/images/merida/46/bk.png
new file mode 100644
index 0000000..dbb502a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/bn.png b/_assets/vendor/pgn4web/images/merida/46/bn.png
new file mode 100644
index 0000000..4bcfa78
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/bp.png b/_assets/vendor/pgn4web/images/merida/46/bp.png
new file mode 100644
index 0000000..876e7db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/bq.png b/_assets/vendor/pgn4web/images/merida/46/bq.png
new file mode 100644
index 0000000..7c34fd0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/br.png b/_assets/vendor/pgn4web/images/merida/46/br.png
new file mode 100644
index 0000000..1de40a1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/clear.png b/_assets/vendor/pgn4web/images/merida/46/clear.png
new file mode 100644
index 0000000..bd294c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/index.html b/_assets/vendor/pgn4web/images/merida/46/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/46/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/46/wb.png b/_assets/vendor/pgn4web/images/merida/46/wb.png
new file mode 100644
index 0000000..0adcd62
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/wk.png b/_assets/vendor/pgn4web/images/merida/46/wk.png
new file mode 100644
index 0000000..95300d6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/wn.png b/_assets/vendor/pgn4web/images/merida/46/wn.png
new file mode 100644
index 0000000..eaf5e9b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/wp.png b/_assets/vendor/pgn4web/images/merida/46/wp.png
new file mode 100644
index 0000000..1ead477
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/wq.png b/_assets/vendor/pgn4web/images/merida/46/wq.png
new file mode 100644
index 0000000..30c00e1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/46/wr.png b/_assets/vendor/pgn4web/images/merida/46/wr.png
new file mode 100644
index 0000000..ec9f7a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/46/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/bb.png b/_assets/vendor/pgn4web/images/merida/47/bb.png
new file mode 100644
index 0000000..9729274
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/bk.png b/_assets/vendor/pgn4web/images/merida/47/bk.png
new file mode 100644
index 0000000..8f5a9eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/bn.png b/_assets/vendor/pgn4web/images/merida/47/bn.png
new file mode 100644
index 0000000..76f070a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/bp.png b/_assets/vendor/pgn4web/images/merida/47/bp.png
new file mode 100644
index 0000000..d687b3f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/bq.png b/_assets/vendor/pgn4web/images/merida/47/bq.png
new file mode 100644
index 0000000..18cf557
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/br.png b/_assets/vendor/pgn4web/images/merida/47/br.png
new file mode 100644
index 0000000..e4acda5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/clear.png b/_assets/vendor/pgn4web/images/merida/47/clear.png
new file mode 100644
index 0000000..00fcf75
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/index.html b/_assets/vendor/pgn4web/images/merida/47/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/47/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/47/wb.png b/_assets/vendor/pgn4web/images/merida/47/wb.png
new file mode 100644
index 0000000..0b6fc6e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/wk.png b/_assets/vendor/pgn4web/images/merida/47/wk.png
new file mode 100644
index 0000000..9907831
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/wn.png b/_assets/vendor/pgn4web/images/merida/47/wn.png
new file mode 100644
index 0000000..3fe3d2f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/wp.png b/_assets/vendor/pgn4web/images/merida/47/wp.png
new file mode 100644
index 0000000..2e18f35
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/wq.png b/_assets/vendor/pgn4web/images/merida/47/wq.png
new file mode 100644
index 0000000..9260bb0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/47/wr.png b/_assets/vendor/pgn4web/images/merida/47/wr.png
new file mode 100644
index 0000000..4fad7f4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/47/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/bb.png b/_assets/vendor/pgn4web/images/merida/48/bb.png
new file mode 100644
index 0000000..bf8b6b0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/bk.png b/_assets/vendor/pgn4web/images/merida/48/bk.png
new file mode 100644
index 0000000..9021bcf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/bn.png b/_assets/vendor/pgn4web/images/merida/48/bn.png
new file mode 100644
index 0000000..7b340e7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/bp.png b/_assets/vendor/pgn4web/images/merida/48/bp.png
new file mode 100644
index 0000000..72da824
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/bq.png b/_assets/vendor/pgn4web/images/merida/48/bq.png
new file mode 100644
index 0000000..25a65ab
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/br.png b/_assets/vendor/pgn4web/images/merida/48/br.png
new file mode 100644
index 0000000..fc48bf3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/clear.png b/_assets/vendor/pgn4web/images/merida/48/clear.png
new file mode 100644
index 0000000..4b6dff8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/index.html b/_assets/vendor/pgn4web/images/merida/48/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/48/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/48/wb.png b/_assets/vendor/pgn4web/images/merida/48/wb.png
new file mode 100644
index 0000000..aa29b5e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/wk.png b/_assets/vendor/pgn4web/images/merida/48/wk.png
new file mode 100644
index 0000000..9314bad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/wn.png b/_assets/vendor/pgn4web/images/merida/48/wn.png
new file mode 100644
index 0000000..164ba30
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/wp.png b/_assets/vendor/pgn4web/images/merida/48/wp.png
new file mode 100644
index 0000000..7e55016
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/wq.png b/_assets/vendor/pgn4web/images/merida/48/wq.png
new file mode 100644
index 0000000..774eedc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/48/wr.png b/_assets/vendor/pgn4web/images/merida/48/wr.png
new file mode 100644
index 0000000..f12e595
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/48/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/bb.png b/_assets/vendor/pgn4web/images/merida/52/bb.png
new file mode 100644
index 0000000..331ee2d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/bk.png b/_assets/vendor/pgn4web/images/merida/52/bk.png
new file mode 100644
index 0000000..459d51e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/bn.png b/_assets/vendor/pgn4web/images/merida/52/bn.png
new file mode 100644
index 0000000..758b3d7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/bp.png b/_assets/vendor/pgn4web/images/merida/52/bp.png
new file mode 100644
index 0000000..b097a78
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/bq.png b/_assets/vendor/pgn4web/images/merida/52/bq.png
new file mode 100644
index 0000000..54bfdd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/br.png b/_assets/vendor/pgn4web/images/merida/52/br.png
new file mode 100644
index 0000000..4b48232
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/clear.png b/_assets/vendor/pgn4web/images/merida/52/clear.png
new file mode 100644
index 0000000..5ea7f99
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/index.html b/_assets/vendor/pgn4web/images/merida/52/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/52/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/52/wb.png b/_assets/vendor/pgn4web/images/merida/52/wb.png
new file mode 100644
index 0000000..1a7fc7b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/wk.png b/_assets/vendor/pgn4web/images/merida/52/wk.png
new file mode 100644
index 0000000..82b54af
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/wn.png b/_assets/vendor/pgn4web/images/merida/52/wn.png
new file mode 100644
index 0000000..67f6e52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/wp.png b/_assets/vendor/pgn4web/images/merida/52/wp.png
new file mode 100644
index 0000000..8c33f88
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/wq.png b/_assets/vendor/pgn4web/images/merida/52/wq.png
new file mode 100644
index 0000000..a2bb1b8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/52/wr.png b/_assets/vendor/pgn4web/images/merida/52/wr.png
new file mode 100644
index 0000000..cd49082
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/52/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/bb.png b/_assets/vendor/pgn4web/images/merida/56/bb.png
new file mode 100644
index 0000000..bbbe2c2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/bk.png b/_assets/vendor/pgn4web/images/merida/56/bk.png
new file mode 100644
index 0000000..e70691d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/bn.png b/_assets/vendor/pgn4web/images/merida/56/bn.png
new file mode 100644
index 0000000..abe5d18
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/bp.png b/_assets/vendor/pgn4web/images/merida/56/bp.png
new file mode 100644
index 0000000..f04c874
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/bq.png b/_assets/vendor/pgn4web/images/merida/56/bq.png
new file mode 100644
index 0000000..aa78540
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/br.png b/_assets/vendor/pgn4web/images/merida/56/br.png
new file mode 100644
index 0000000..c243563
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/clear.png b/_assets/vendor/pgn4web/images/merida/56/clear.png
new file mode 100644
index 0000000..bc12aba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/index.html b/_assets/vendor/pgn4web/images/merida/56/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/56/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/56/wb.png b/_assets/vendor/pgn4web/images/merida/56/wb.png
new file mode 100644
index 0000000..794ea7a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/wk.png b/_assets/vendor/pgn4web/images/merida/56/wk.png
new file mode 100644
index 0000000..cab66cc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/wn.png b/_assets/vendor/pgn4web/images/merida/56/wn.png
new file mode 100644
index 0000000..353cdf0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/wp.png b/_assets/vendor/pgn4web/images/merida/56/wp.png
new file mode 100644
index 0000000..857f4ce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/wq.png b/_assets/vendor/pgn4web/images/merida/56/wq.png
new file mode 100644
index 0000000..920cd18
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/56/wr.png b/_assets/vendor/pgn4web/images/merida/56/wr.png
new file mode 100644
index 0000000..932646d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/56/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/bb.png b/_assets/vendor/pgn4web/images/merida/60/bb.png
new file mode 100644
index 0000000..56693d3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/bk.png b/_assets/vendor/pgn4web/images/merida/60/bk.png
new file mode 100644
index 0000000..8f09677
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/bn.png b/_assets/vendor/pgn4web/images/merida/60/bn.png
new file mode 100644
index 0000000..cc8e77d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/bp.png b/_assets/vendor/pgn4web/images/merida/60/bp.png
new file mode 100644
index 0000000..2dcf19c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/bq.png b/_assets/vendor/pgn4web/images/merida/60/bq.png
new file mode 100644
index 0000000..bfd42f3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/br.png b/_assets/vendor/pgn4web/images/merida/60/br.png
new file mode 100644
index 0000000..61ac4d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/clear.png b/_assets/vendor/pgn4web/images/merida/60/clear.png
new file mode 100644
index 0000000..6d4e3bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/index.html b/_assets/vendor/pgn4web/images/merida/60/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/60/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/60/wb.png b/_assets/vendor/pgn4web/images/merida/60/wb.png
new file mode 100644
index 0000000..f9b4a7b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/wk.png b/_assets/vendor/pgn4web/images/merida/60/wk.png
new file mode 100644
index 0000000..095ef25
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/wn.png b/_assets/vendor/pgn4web/images/merida/60/wn.png
new file mode 100644
index 0000000..471cfe7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/wp.png b/_assets/vendor/pgn4web/images/merida/60/wp.png
new file mode 100644
index 0000000..a872cbe
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/wq.png b/_assets/vendor/pgn4web/images/merida/60/wq.png
new file mode 100644
index 0000000..76f37d2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/60/wr.png b/_assets/vendor/pgn4web/images/merida/60/wr.png
new file mode 100644
index 0000000..f5fd506
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/60/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/bb.png b/_assets/vendor/pgn4web/images/merida/64/bb.png
new file mode 100644
index 0000000..99068c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/bk.png b/_assets/vendor/pgn4web/images/merida/64/bk.png
new file mode 100644
index 0000000..d1948cd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/bn.png b/_assets/vendor/pgn4web/images/merida/64/bn.png
new file mode 100644
index 0000000..3a3071d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/bp.png b/_assets/vendor/pgn4web/images/merida/64/bp.png
new file mode 100644
index 0000000..7748d7d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/bq.png b/_assets/vendor/pgn4web/images/merida/64/bq.png
new file mode 100644
index 0000000..eb0b845
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/br.png b/_assets/vendor/pgn4web/images/merida/64/br.png
new file mode 100644
index 0000000..265da7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/clear.png b/_assets/vendor/pgn4web/images/merida/64/clear.png
new file mode 100644
index 0000000..5c3ac01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/index.html b/_assets/vendor/pgn4web/images/merida/64/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/64/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/64/wb.png b/_assets/vendor/pgn4web/images/merida/64/wb.png
new file mode 100644
index 0000000..5a6b95d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/wk.png b/_assets/vendor/pgn4web/images/merida/64/wk.png
new file mode 100644
index 0000000..20d75e4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/wn.png b/_assets/vendor/pgn4web/images/merida/64/wn.png
new file mode 100644
index 0000000..638a00e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/wp.png b/_assets/vendor/pgn4web/images/merida/64/wp.png
new file mode 100644
index 0000000..ee9aa4d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/wq.png b/_assets/vendor/pgn4web/images/merida/64/wq.png
new file mode 100644
index 0000000..f1fd3f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/64/wr.png b/_assets/vendor/pgn4web/images/merida/64/wr.png
new file mode 100644
index 0000000..28d64f2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/64/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/bb.png b/_assets/vendor/pgn4web/images/merida/72/bb.png
new file mode 100644
index 0000000..141834c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/bk.png b/_assets/vendor/pgn4web/images/merida/72/bk.png
new file mode 100644
index 0000000..449959f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/bn.png b/_assets/vendor/pgn4web/images/merida/72/bn.png
new file mode 100644
index 0000000..308a35a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/bp.png b/_assets/vendor/pgn4web/images/merida/72/bp.png
new file mode 100644
index 0000000..d96eafa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/bq.png b/_assets/vendor/pgn4web/images/merida/72/bq.png
new file mode 100644
index 0000000..10b18eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/br.png b/_assets/vendor/pgn4web/images/merida/72/br.png
new file mode 100644
index 0000000..41066a1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/clear.png b/_assets/vendor/pgn4web/images/merida/72/clear.png
new file mode 100644
index 0000000..fb05b26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/index.html b/_assets/vendor/pgn4web/images/merida/72/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/72/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/72/wb.png b/_assets/vendor/pgn4web/images/merida/72/wb.png
new file mode 100644
index 0000000..463bd6c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/wk.png b/_assets/vendor/pgn4web/images/merida/72/wk.png
new file mode 100644
index 0000000..9b2ac3c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/wn.png b/_assets/vendor/pgn4web/images/merida/72/wn.png
new file mode 100644
index 0000000..f437bc6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/wp.png b/_assets/vendor/pgn4web/images/merida/72/wp.png
new file mode 100644
index 0000000..0ed0323
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/wq.png b/_assets/vendor/pgn4web/images/merida/72/wq.png
new file mode 100644
index 0000000..fa7a9a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/72/wr.png b/_assets/vendor/pgn4web/images/merida/72/wr.png
new file mode 100644
index 0000000..15f6d4b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/72/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/bb.png b/_assets/vendor/pgn4web/images/merida/80/bb.png
new file mode 100644
index 0000000..8bd9748
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/bk.png b/_assets/vendor/pgn4web/images/merida/80/bk.png
new file mode 100644
index 0000000..42a92dc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/bn.png b/_assets/vendor/pgn4web/images/merida/80/bn.png
new file mode 100644
index 0000000..67b67af
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/bp.png b/_assets/vendor/pgn4web/images/merida/80/bp.png
new file mode 100644
index 0000000..b0ee231
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/bq.png b/_assets/vendor/pgn4web/images/merida/80/bq.png
new file mode 100644
index 0000000..9701d56
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/br.png b/_assets/vendor/pgn4web/images/merida/80/br.png
new file mode 100644
index 0000000..ac26f69
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/clear.png b/_assets/vendor/pgn4web/images/merida/80/clear.png
new file mode 100644
index 0000000..8a5c3cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/index.html b/_assets/vendor/pgn4web/images/merida/80/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/80/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/80/wb.png b/_assets/vendor/pgn4web/images/merida/80/wb.png
new file mode 100644
index 0000000..d5d57bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/wk.png b/_assets/vendor/pgn4web/images/merida/80/wk.png
new file mode 100644
index 0000000..971b625
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/wn.png b/_assets/vendor/pgn4web/images/merida/80/wn.png
new file mode 100644
index 0000000..097bd9e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/wp.png b/_assets/vendor/pgn4web/images/merida/80/wp.png
new file mode 100644
index 0000000..1803148
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/wq.png b/_assets/vendor/pgn4web/images/merida/80/wq.png
new file mode 100644
index 0000000..c6be62a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/80/wr.png b/_assets/vendor/pgn4web/images/merida/80/wr.png
new file mode 100644
index 0000000..067f10a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/80/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/bb.png b/_assets/vendor/pgn4web/images/merida/88/bb.png
new file mode 100644
index 0000000..5acc1c7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/bk.png b/_assets/vendor/pgn4web/images/merida/88/bk.png
new file mode 100644
index 0000000..53bd9cb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/bn.png b/_assets/vendor/pgn4web/images/merida/88/bn.png
new file mode 100644
index 0000000..4fb11c9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/bp.png b/_assets/vendor/pgn4web/images/merida/88/bp.png
new file mode 100644
index 0000000..ddfe602
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/bq.png b/_assets/vendor/pgn4web/images/merida/88/bq.png
new file mode 100644
index 0000000..784be2e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/br.png b/_assets/vendor/pgn4web/images/merida/88/br.png
new file mode 100644
index 0000000..565759f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/clear.png b/_assets/vendor/pgn4web/images/merida/88/clear.png
new file mode 100644
index 0000000..90499c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/index.html b/_assets/vendor/pgn4web/images/merida/88/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/88/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/88/wb.png b/_assets/vendor/pgn4web/images/merida/88/wb.png
new file mode 100644
index 0000000..cdd4c01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/wk.png b/_assets/vendor/pgn4web/images/merida/88/wk.png
new file mode 100644
index 0000000..06043a0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/wn.png b/_assets/vendor/pgn4web/images/merida/88/wn.png
new file mode 100644
index 0000000..a9074ce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/wp.png b/_assets/vendor/pgn4web/images/merida/88/wp.png
new file mode 100644
index 0000000..6c1aa7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/wq.png b/_assets/vendor/pgn4web/images/merida/88/wq.png
new file mode 100644
index 0000000..13248bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/88/wr.png b/_assets/vendor/pgn4web/images/merida/88/wr.png
new file mode 100644
index 0000000..4342e7c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/88/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/bb.png b/_assets/vendor/pgn4web/images/merida/96/bb.png
new file mode 100644
index 0000000..1d54d16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/bk.png b/_assets/vendor/pgn4web/images/merida/96/bk.png
new file mode 100644
index 0000000..bf419d6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/bn.png b/_assets/vendor/pgn4web/images/merida/96/bn.png
new file mode 100644
index 0000000..6d4ffcd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/bp.png b/_assets/vendor/pgn4web/images/merida/96/bp.png
new file mode 100644
index 0000000..55a20e7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/bq.png b/_assets/vendor/pgn4web/images/merida/96/bq.png
new file mode 100644
index 0000000..b1ed05a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/br.png b/_assets/vendor/pgn4web/images/merida/96/br.png
new file mode 100644
index 0000000..151014a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/br.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/clear.png b/_assets/vendor/pgn4web/images/merida/96/clear.png
new file mode 100644
index 0000000..3a462db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/index.html b/_assets/vendor/pgn4web/images/merida/96/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/96/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/merida/96/wb.png b/_assets/vendor/pgn4web/images/merida/96/wb.png
new file mode 100644
index 0000000..d8e9bd0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/wk.png b/_assets/vendor/pgn4web/images/merida/96/wk.png
new file mode 100644
index 0000000..8b9cdd0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/wn.png b/_assets/vendor/pgn4web/images/merida/96/wn.png
new file mode 100644
index 0000000..3f7bb6f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/wp.png b/_assets/vendor/pgn4web/images/merida/96/wp.png
new file mode 100644
index 0000000..74fa4e8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/wq.png b/_assets/vendor/pgn4web/images/merida/96/wq.png
new file mode 100644
index 0000000..c0f1ed8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/96/wr.png b/_assets/vendor/pgn4web/images/merida/96/wr.png
new file mode 100644
index 0000000..3843bbd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/merida/96/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/merida/README.txt b/_assets/vendor/pgn4web/images/merida/README.txt
new file mode 100644
index 0000000..c1c29e4
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/README.txt
@@ -0,0 +1,3 @@
+Chess images from http://ixian.com/chess/jin-piece-sets/ by Eric De Mund.
+Licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.
+http://creativecommons.org/licenses/by-sa/3.0/
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/merida/index.html b/_assets/vendor/pgn4web/images/merida/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/merida/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/README.txt b/_assets/vendor/pgn4web/images/svgchess/README.txt
new file mode 100644
index 0000000..8e582c1
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/README.txt
@@ -0,0 +1,4 @@
+Chess images from http://commons.wikimedia.org/wiki/Category:SVG_chess_pieces
+by Colin M.L. Burnett; licensed under GFDL (www.gnu.org/copyleft/fdl.html),
+CC-BY-SA-3.0 (www.creativecommons.org/licenses/by-sa/3.0/) or
+GPL (www.gnu.org/licenses/gpl.html)], via Wikimedia Commons.
diff --git a/_assets/vendor/pgn4web/images/svgchess/bb.svg b/_assets/vendor/pgn4web/images/svgchess/bb.svg
new file mode 100644
index 0000000..82105d2
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/bb.svg
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/bk.svg b/_assets/vendor/pgn4web/images/svgchess/bk.svg
new file mode 100644
index 0000000..9a653e5
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/bk.svg
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/bn.svg b/_assets/vendor/pgn4web/images/svgchess/bn.svg
new file mode 100644
index 0000000..ca39726
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/bn.svg
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/bp.svg b/_assets/vendor/pgn4web/images/svgchess/bp.svg
new file mode 100644
index 0000000..c8dc03d
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/bp.svg
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/bq.svg b/_assets/vendor/pgn4web/images/svgchess/bq.svg
new file mode 100644
index 0000000..4ea4d04
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/bq.svg
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/br.svg b/_assets/vendor/pgn4web/images/svgchess/br.svg
new file mode 100644
index 0000000..20ede45
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/br.svg
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/clear.svg b/_assets/vendor/pgn4web/images/svgchess/clear.svg
new file mode 100644
index 0000000..8a7ccc1
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/clear.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/index.html b/_assets/vendor/pgn4web/images/svgchess/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wb.svg b/_assets/vendor/pgn4web/images/svgchess/wb.svg
new file mode 100644
index 0000000..8d2669c
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wb.svg
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wk.svg b/_assets/vendor/pgn4web/images/svgchess/wk.svg
new file mode 100644
index 0000000..901fd4e
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wk.svg
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wn.svg b/_assets/vendor/pgn4web/images/svgchess/wn.svg
new file mode 100644
index 0000000..d744bdd
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wn.svg
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wp.svg b/_assets/vendor/pgn4web/images/svgchess/wp.svg
new file mode 100644
index 0000000..2e096b7
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wp.svg
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wq.svg b/_assets/vendor/pgn4web/images/svgchess/wq.svg
new file mode 100644
index 0000000..69be00a
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wq.svg
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/svgchess/wr.svg b/_assets/vendor/pgn4web/images/svgchess/wr.svg
new file mode 100644
index 0000000..35f194a
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/svgchess/wr.svg
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/tilesvg/README.txt b/_assets/vendor/pgn4web/images/tilesvg/README.txt
new file mode 100644
index 0000000..1407974
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/README.txt
@@ -0,0 +1,4 @@
+Chess images from http://openclipart.org/search/?query=Chess+tile
+as openclipart.org content the images are dedicated to the
+Public Domain (http://creativecommons.org/publicdomain/zero/1.0/).
+Minor modification to the original images from Paolo Casaschi.
diff --git a/_assets/vendor/pgn4web/images/tilesvg/bb.svg b/_assets/vendor/pgn4web/images/tilesvg/bb.svg
new file mode 100644
index 0000000..929cc3a
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/bb.svg
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Bishop 22006-12-26T00:00:00http://openclipart.org/detail/18676/-by--18676portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/bk.svg b/_assets/vendor/pgn4web/images/tilesvg/bk.svg
new file mode 100644
index 0000000..3e89e1b
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/bk.svg
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - King 12006-12-26T00:00:00http://openclipart.org/detail/18670/-by--18670portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/bn.svg b/_assets/vendor/pgn4web/images/tilesvg/bn.svg
new file mode 100644
index 0000000..214ff06
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/bn.svg
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Knight 32006-12-26T00:00:00http://openclipart.org/detail/18645/-by--18645portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/bp.svg b/_assets/vendor/pgn4web/images/tilesvg/bp.svg
new file mode 100644
index 0000000..1ce73c1
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/bp.svg
@@ -0,0 +1,8 @@
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Pawn 12006-12-26T00:00:00http://openclipart.org/detail/18651/-by--18651portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/bq.svg b/_assets/vendor/pgn4web/images/tilesvg/bq.svg
new file mode 100644
index 0000000..88dc0a6
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/bq.svg
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Queen 12006-12-26T00:00:00http://openclipart.org/detail/18663/-by--18663portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/br.svg b/_assets/vendor/pgn4web/images/tilesvg/br.svg
new file mode 100644
index 0000000..d47a025
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/br.svg
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Rook 12006-12-26T00:00:00http://openclipart.org/detail/18657/-by--18657portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/clear.svg b/_assets/vendor/pgn4web/images/tilesvg/clear.svg
new file mode 100644
index 0000000..8a7ccc1
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/clear.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/_assets/vendor/pgn4web/images/tilesvg/index.html b/_assets/vendor/pgn4web/images/tilesvg/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wb.svg b/_assets/vendor/pgn4web/images/tilesvg/wb.svg
new file mode 100644
index 0000000..9a2a387
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wb.svg
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Bishop 12006-12-26T00:00:00http://openclipart.org/detail/18674/-by--18674portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wk.svg b/_assets/vendor/pgn4web/images/tilesvg/wk.svg
new file mode 100644
index 0000000..091a1a5
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wk.svg
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - King 32006-12-26T00:00:00http://openclipart.org/detail/18668/-by--18668portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wn.svg b/_assets/vendor/pgn4web/images/tilesvg/wn.svg
new file mode 100644
index 0000000..f871bd8
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wn.svg
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Knight 22006-12-26T00:00:00http://openclipart.org/detail/18643/-by--18643portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wp.svg b/_assets/vendor/pgn4web/images/tilesvg/wp.svg
new file mode 100644
index 0000000..da5bbbc
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wp.svg
@@ -0,0 +1,9 @@
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Pawn 32006-12-26T00:00:00http://openclipart.org/detail/18649/-by--18649portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wq.svg b/_assets/vendor/pgn4web/images/tilesvg/wq.svg
new file mode 100644
index 0000000..9d9fb1a
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wq.svg
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Queen 32006-12-26T00:00:00http://openclipart.org/detail/18661/-by--18661portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/tilesvg/wr.svg b/_assets/vendor/pgn4web/images/tilesvg/wr.svg
new file mode 100644
index 0000000..cde89c2
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/tilesvg/wr.svg
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+ imagebot_2
+
+ image/svg+xmlOpen Clip Art LibraryChess tile - Rook 32006-12-26T00:00:00http://openclipart.org/detail/18655/-by--18655portablejim
+
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/uscf/112/bb.png b/_assets/vendor/pgn4web/images/uscf/112/bb.png
new file mode 100644
index 0000000..16a5341
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/bk.png b/_assets/vendor/pgn4web/images/uscf/112/bk.png
new file mode 100644
index 0000000..6cdf77f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/bn.png b/_assets/vendor/pgn4web/images/uscf/112/bn.png
new file mode 100644
index 0000000..c889f6f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/bp.png b/_assets/vendor/pgn4web/images/uscf/112/bp.png
new file mode 100644
index 0000000..17c3717
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/bq.png b/_assets/vendor/pgn4web/images/uscf/112/bq.png
new file mode 100644
index 0000000..aa57597
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/br.png b/_assets/vendor/pgn4web/images/uscf/112/br.png
new file mode 100644
index 0000000..437797f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/clear.png b/_assets/vendor/pgn4web/images/uscf/112/clear.png
new file mode 100644
index 0000000..6d6780b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/index.html b/_assets/vendor/pgn4web/images/uscf/112/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/112/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wb.png b/_assets/vendor/pgn4web/images/uscf/112/wb.png
new file mode 100644
index 0000000..03fb99b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wk.png b/_assets/vendor/pgn4web/images/uscf/112/wk.png
new file mode 100644
index 0000000..765c65a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wn.png b/_assets/vendor/pgn4web/images/uscf/112/wn.png
new file mode 100644
index 0000000..a0d6513
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wp.png b/_assets/vendor/pgn4web/images/uscf/112/wp.png
new file mode 100644
index 0000000..a021fbb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wq.png b/_assets/vendor/pgn4web/images/uscf/112/wq.png
new file mode 100644
index 0000000..d292b53
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/112/wr.png b/_assets/vendor/pgn4web/images/uscf/112/wr.png
new file mode 100644
index 0000000..982e017
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/112/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/bb.png b/_assets/vendor/pgn4web/images/uscf/128/bb.png
new file mode 100644
index 0000000..d0b29d2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/bk.png b/_assets/vendor/pgn4web/images/uscf/128/bk.png
new file mode 100644
index 0000000..ee7925e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/bn.png b/_assets/vendor/pgn4web/images/uscf/128/bn.png
new file mode 100644
index 0000000..cb7d3cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/bp.png b/_assets/vendor/pgn4web/images/uscf/128/bp.png
new file mode 100644
index 0000000..b3c7151
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/bq.png b/_assets/vendor/pgn4web/images/uscf/128/bq.png
new file mode 100644
index 0000000..10d1d38
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/br.png b/_assets/vendor/pgn4web/images/uscf/128/br.png
new file mode 100644
index 0000000..db607dd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/clear.png b/_assets/vendor/pgn4web/images/uscf/128/clear.png
new file mode 100644
index 0000000..56682b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/index.html b/_assets/vendor/pgn4web/images/uscf/128/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/128/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wb.png b/_assets/vendor/pgn4web/images/uscf/128/wb.png
new file mode 100644
index 0000000..349e7e3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wk.png b/_assets/vendor/pgn4web/images/uscf/128/wk.png
new file mode 100644
index 0000000..7069caa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wn.png b/_assets/vendor/pgn4web/images/uscf/128/wn.png
new file mode 100644
index 0000000..95e31e1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wp.png b/_assets/vendor/pgn4web/images/uscf/128/wp.png
new file mode 100644
index 0000000..90bf289
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wq.png b/_assets/vendor/pgn4web/images/uscf/128/wq.png
new file mode 100644
index 0000000..d743b91
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/128/wr.png b/_assets/vendor/pgn4web/images/uscf/128/wr.png
new file mode 100644
index 0000000..2a12100
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/128/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/bb.png b/_assets/vendor/pgn4web/images/uscf/144/bb.png
new file mode 100644
index 0000000..5730c74
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/bk.png b/_assets/vendor/pgn4web/images/uscf/144/bk.png
new file mode 100644
index 0000000..12cfdaa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/bn.png b/_assets/vendor/pgn4web/images/uscf/144/bn.png
new file mode 100644
index 0000000..8103370
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/bp.png b/_assets/vendor/pgn4web/images/uscf/144/bp.png
new file mode 100644
index 0000000..435ee15
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/bq.png b/_assets/vendor/pgn4web/images/uscf/144/bq.png
new file mode 100644
index 0000000..045124d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/br.png b/_assets/vendor/pgn4web/images/uscf/144/br.png
new file mode 100644
index 0000000..a84e33e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/clear.png b/_assets/vendor/pgn4web/images/uscf/144/clear.png
new file mode 100644
index 0000000..e16fd29
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/index.html b/_assets/vendor/pgn4web/images/uscf/144/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/144/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wb.png b/_assets/vendor/pgn4web/images/uscf/144/wb.png
new file mode 100644
index 0000000..af52275
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wk.png b/_assets/vendor/pgn4web/images/uscf/144/wk.png
new file mode 100644
index 0000000..a0087c3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wn.png b/_assets/vendor/pgn4web/images/uscf/144/wn.png
new file mode 100644
index 0000000..d3a72f4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wp.png b/_assets/vendor/pgn4web/images/uscf/144/wp.png
new file mode 100644
index 0000000..ca77c1b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wq.png b/_assets/vendor/pgn4web/images/uscf/144/wq.png
new file mode 100644
index 0000000..d8500a7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/144/wr.png b/_assets/vendor/pgn4web/images/uscf/144/wr.png
new file mode 100644
index 0000000..f0023fa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/144/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/bb.png b/_assets/vendor/pgn4web/images/uscf/20/bb.png
new file mode 100644
index 0000000..8ae174e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/bk.png b/_assets/vendor/pgn4web/images/uscf/20/bk.png
new file mode 100644
index 0000000..953a41b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/bn.png b/_assets/vendor/pgn4web/images/uscf/20/bn.png
new file mode 100644
index 0000000..12ad0da
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/bp.png b/_assets/vendor/pgn4web/images/uscf/20/bp.png
new file mode 100644
index 0000000..bdc430b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/bq.png b/_assets/vendor/pgn4web/images/uscf/20/bq.png
new file mode 100644
index 0000000..a5fe797
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/br.png b/_assets/vendor/pgn4web/images/uscf/20/br.png
new file mode 100644
index 0000000..38fb66a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/clear.png b/_assets/vendor/pgn4web/images/uscf/20/clear.png
new file mode 100644
index 0000000..65d8dce
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/index.html b/_assets/vendor/pgn4web/images/uscf/20/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/20/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wb.png b/_assets/vendor/pgn4web/images/uscf/20/wb.png
new file mode 100644
index 0000000..d9cf092
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wk.png b/_assets/vendor/pgn4web/images/uscf/20/wk.png
new file mode 100644
index 0000000..cd2e181
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wn.png b/_assets/vendor/pgn4web/images/uscf/20/wn.png
new file mode 100644
index 0000000..94a246a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wp.png b/_assets/vendor/pgn4web/images/uscf/20/wp.png
new file mode 100644
index 0000000..f32d7e7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wq.png b/_assets/vendor/pgn4web/images/uscf/20/wq.png
new file mode 100644
index 0000000..2323cc6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/20/wr.png b/_assets/vendor/pgn4web/images/uscf/20/wr.png
new file mode 100644
index 0000000..421506e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/20/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/bb.png b/_assets/vendor/pgn4web/images/uscf/21/bb.png
new file mode 100644
index 0000000..8ce19cd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/bk.png b/_assets/vendor/pgn4web/images/uscf/21/bk.png
new file mode 100644
index 0000000..950fe4f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/bn.png b/_assets/vendor/pgn4web/images/uscf/21/bn.png
new file mode 100644
index 0000000..dbe7e1c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/bp.png b/_assets/vendor/pgn4web/images/uscf/21/bp.png
new file mode 100644
index 0000000..d9c12b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/bq.png b/_assets/vendor/pgn4web/images/uscf/21/bq.png
new file mode 100644
index 0000000..fdd6603
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/br.png b/_assets/vendor/pgn4web/images/uscf/21/br.png
new file mode 100644
index 0000000..90c611c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/clear.png b/_assets/vendor/pgn4web/images/uscf/21/clear.png
new file mode 100644
index 0000000..545ad7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/index.html b/_assets/vendor/pgn4web/images/uscf/21/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/21/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wb.png b/_assets/vendor/pgn4web/images/uscf/21/wb.png
new file mode 100644
index 0000000..1bec47e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wk.png b/_assets/vendor/pgn4web/images/uscf/21/wk.png
new file mode 100644
index 0000000..04fe247
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wn.png b/_assets/vendor/pgn4web/images/uscf/21/wn.png
new file mode 100644
index 0000000..b27265e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wp.png b/_assets/vendor/pgn4web/images/uscf/21/wp.png
new file mode 100644
index 0000000..cca4725
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wq.png b/_assets/vendor/pgn4web/images/uscf/21/wq.png
new file mode 100644
index 0000000..e845963
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/21/wr.png b/_assets/vendor/pgn4web/images/uscf/21/wr.png
new file mode 100644
index 0000000..17f3107
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/21/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/bb.png b/_assets/vendor/pgn4web/images/uscf/22/bb.png
new file mode 100644
index 0000000..7607051
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/bk.png b/_assets/vendor/pgn4web/images/uscf/22/bk.png
new file mode 100644
index 0000000..276799d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/bn.png b/_assets/vendor/pgn4web/images/uscf/22/bn.png
new file mode 100644
index 0000000..82dc5f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/bp.png b/_assets/vendor/pgn4web/images/uscf/22/bp.png
new file mode 100644
index 0000000..5729f79
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/bq.png b/_assets/vendor/pgn4web/images/uscf/22/bq.png
new file mode 100644
index 0000000..076f582
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/br.png b/_assets/vendor/pgn4web/images/uscf/22/br.png
new file mode 100644
index 0000000..6b33e58
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/clear.png b/_assets/vendor/pgn4web/images/uscf/22/clear.png
new file mode 100644
index 0000000..3544026
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/index.html b/_assets/vendor/pgn4web/images/uscf/22/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/22/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wb.png b/_assets/vendor/pgn4web/images/uscf/22/wb.png
new file mode 100644
index 0000000..2eadbed
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wk.png b/_assets/vendor/pgn4web/images/uscf/22/wk.png
new file mode 100644
index 0000000..8f26ab8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wn.png b/_assets/vendor/pgn4web/images/uscf/22/wn.png
new file mode 100644
index 0000000..11a9152
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wp.png b/_assets/vendor/pgn4web/images/uscf/22/wp.png
new file mode 100644
index 0000000..893cd56
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wq.png b/_assets/vendor/pgn4web/images/uscf/22/wq.png
new file mode 100644
index 0000000..7d73b3b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/22/wr.png b/_assets/vendor/pgn4web/images/uscf/22/wr.png
new file mode 100644
index 0000000..ff4ae76
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/22/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/bb.png b/_assets/vendor/pgn4web/images/uscf/23/bb.png
new file mode 100644
index 0000000..973fcd4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/bk.png b/_assets/vendor/pgn4web/images/uscf/23/bk.png
new file mode 100644
index 0000000..ec3397d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/bn.png b/_assets/vendor/pgn4web/images/uscf/23/bn.png
new file mode 100644
index 0000000..bac402b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/bp.png b/_assets/vendor/pgn4web/images/uscf/23/bp.png
new file mode 100644
index 0000000..f8df424
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/bq.png b/_assets/vendor/pgn4web/images/uscf/23/bq.png
new file mode 100644
index 0000000..1e39dcb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/br.png b/_assets/vendor/pgn4web/images/uscf/23/br.png
new file mode 100644
index 0000000..c06e27f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/clear.png b/_assets/vendor/pgn4web/images/uscf/23/clear.png
new file mode 100644
index 0000000..844df3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/index.html b/_assets/vendor/pgn4web/images/uscf/23/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/23/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wb.png b/_assets/vendor/pgn4web/images/uscf/23/wb.png
new file mode 100644
index 0000000..ec3be21
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wk.png b/_assets/vendor/pgn4web/images/uscf/23/wk.png
new file mode 100644
index 0000000..bcabade
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wn.png b/_assets/vendor/pgn4web/images/uscf/23/wn.png
new file mode 100644
index 0000000..a35bc33
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wp.png b/_assets/vendor/pgn4web/images/uscf/23/wp.png
new file mode 100644
index 0000000..df34694
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wq.png b/_assets/vendor/pgn4web/images/uscf/23/wq.png
new file mode 100644
index 0000000..cb4724d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/23/wr.png b/_assets/vendor/pgn4web/images/uscf/23/wr.png
new file mode 100644
index 0000000..ca45820
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/23/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/bb.png b/_assets/vendor/pgn4web/images/uscf/24/bb.png
new file mode 100644
index 0000000..7b20e15
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/bk.png b/_assets/vendor/pgn4web/images/uscf/24/bk.png
new file mode 100644
index 0000000..6c81f51
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/bn.png b/_assets/vendor/pgn4web/images/uscf/24/bn.png
new file mode 100644
index 0000000..3730f8f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/bp.png b/_assets/vendor/pgn4web/images/uscf/24/bp.png
new file mode 100644
index 0000000..4ef85de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/bq.png b/_assets/vendor/pgn4web/images/uscf/24/bq.png
new file mode 100644
index 0000000..65e3c8c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/br.png b/_assets/vendor/pgn4web/images/uscf/24/br.png
new file mode 100644
index 0000000..b8325b8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/clear.png b/_assets/vendor/pgn4web/images/uscf/24/clear.png
new file mode 100644
index 0000000..b0b6716
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/index.html b/_assets/vendor/pgn4web/images/uscf/24/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/24/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wb.png b/_assets/vendor/pgn4web/images/uscf/24/wb.png
new file mode 100644
index 0000000..8dbbdbc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wk.png b/_assets/vendor/pgn4web/images/uscf/24/wk.png
new file mode 100644
index 0000000..271138d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wn.png b/_assets/vendor/pgn4web/images/uscf/24/wn.png
new file mode 100644
index 0000000..a76e2b6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wp.png b/_assets/vendor/pgn4web/images/uscf/24/wp.png
new file mode 100644
index 0000000..5dc03e2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wq.png b/_assets/vendor/pgn4web/images/uscf/24/wq.png
new file mode 100644
index 0000000..c4e6378
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/24/wr.png b/_assets/vendor/pgn4web/images/uscf/24/wr.png
new file mode 100644
index 0000000..49b5570
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/24/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/bb.png b/_assets/vendor/pgn4web/images/uscf/25/bb.png
new file mode 100644
index 0000000..4702350
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/bk.png b/_assets/vendor/pgn4web/images/uscf/25/bk.png
new file mode 100644
index 0000000..0f6a534
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/bn.png b/_assets/vendor/pgn4web/images/uscf/25/bn.png
new file mode 100644
index 0000000..2be7d77
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/bp.png b/_assets/vendor/pgn4web/images/uscf/25/bp.png
new file mode 100644
index 0000000..965a310
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/bq.png b/_assets/vendor/pgn4web/images/uscf/25/bq.png
new file mode 100644
index 0000000..249c047
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/br.png b/_assets/vendor/pgn4web/images/uscf/25/br.png
new file mode 100644
index 0000000..5826679
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/clear.png b/_assets/vendor/pgn4web/images/uscf/25/clear.png
new file mode 100644
index 0000000..271cd57
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/index.html b/_assets/vendor/pgn4web/images/uscf/25/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/25/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wb.png b/_assets/vendor/pgn4web/images/uscf/25/wb.png
new file mode 100644
index 0000000..be20f1b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wk.png b/_assets/vendor/pgn4web/images/uscf/25/wk.png
new file mode 100644
index 0000000..467bb80
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wn.png b/_assets/vendor/pgn4web/images/uscf/25/wn.png
new file mode 100644
index 0000000..96e4f91
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wp.png b/_assets/vendor/pgn4web/images/uscf/25/wp.png
new file mode 100644
index 0000000..059bc8c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wq.png b/_assets/vendor/pgn4web/images/uscf/25/wq.png
new file mode 100644
index 0000000..cca07c4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/25/wr.png b/_assets/vendor/pgn4web/images/uscf/25/wr.png
new file mode 100644
index 0000000..e1777f3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/25/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/bb.png b/_assets/vendor/pgn4web/images/uscf/26/bb.png
new file mode 100644
index 0000000..9221d12
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/bk.png b/_assets/vendor/pgn4web/images/uscf/26/bk.png
new file mode 100644
index 0000000..5f5500e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/bn.png b/_assets/vendor/pgn4web/images/uscf/26/bn.png
new file mode 100644
index 0000000..19b21bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/bp.png b/_assets/vendor/pgn4web/images/uscf/26/bp.png
new file mode 100644
index 0000000..40008c4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/bq.png b/_assets/vendor/pgn4web/images/uscf/26/bq.png
new file mode 100644
index 0000000..37ecf7c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/br.png b/_assets/vendor/pgn4web/images/uscf/26/br.png
new file mode 100644
index 0000000..6b2d2a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/clear.png b/_assets/vendor/pgn4web/images/uscf/26/clear.png
new file mode 100644
index 0000000..8f4f371
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/index.html b/_assets/vendor/pgn4web/images/uscf/26/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/26/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wb.png b/_assets/vendor/pgn4web/images/uscf/26/wb.png
new file mode 100644
index 0000000..49711eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wk.png b/_assets/vendor/pgn4web/images/uscf/26/wk.png
new file mode 100644
index 0000000..1954c56
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wn.png b/_assets/vendor/pgn4web/images/uscf/26/wn.png
new file mode 100644
index 0000000..ebc29ac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wp.png b/_assets/vendor/pgn4web/images/uscf/26/wp.png
new file mode 100644
index 0000000..0a2b12a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wq.png b/_assets/vendor/pgn4web/images/uscf/26/wq.png
new file mode 100644
index 0000000..bdab643
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/26/wr.png b/_assets/vendor/pgn4web/images/uscf/26/wr.png
new file mode 100644
index 0000000..1feba05
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/26/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/bb.png b/_assets/vendor/pgn4web/images/uscf/27/bb.png
new file mode 100644
index 0000000..cfb4b4d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/bk.png b/_assets/vendor/pgn4web/images/uscf/27/bk.png
new file mode 100644
index 0000000..8a7389a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/bn.png b/_assets/vendor/pgn4web/images/uscf/27/bn.png
new file mode 100644
index 0000000..8f09852
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/bp.png b/_assets/vendor/pgn4web/images/uscf/27/bp.png
new file mode 100644
index 0000000..6838bd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/bq.png b/_assets/vendor/pgn4web/images/uscf/27/bq.png
new file mode 100644
index 0000000..bba76b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/br.png b/_assets/vendor/pgn4web/images/uscf/27/br.png
new file mode 100644
index 0000000..6fc108b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/clear.png b/_assets/vendor/pgn4web/images/uscf/27/clear.png
new file mode 100644
index 0000000..b66fc48
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/index.html b/_assets/vendor/pgn4web/images/uscf/27/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/27/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wb.png b/_assets/vendor/pgn4web/images/uscf/27/wb.png
new file mode 100644
index 0000000..54aeb1d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wk.png b/_assets/vendor/pgn4web/images/uscf/27/wk.png
new file mode 100644
index 0000000..dd310fd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wn.png b/_assets/vendor/pgn4web/images/uscf/27/wn.png
new file mode 100644
index 0000000..f3fdc20
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wp.png b/_assets/vendor/pgn4web/images/uscf/27/wp.png
new file mode 100644
index 0000000..e0b3760
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wq.png b/_assets/vendor/pgn4web/images/uscf/27/wq.png
new file mode 100644
index 0000000..bdeee41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/27/wr.png b/_assets/vendor/pgn4web/images/uscf/27/wr.png
new file mode 100644
index 0000000..da9ce5e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/27/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/bb.png b/_assets/vendor/pgn4web/images/uscf/28/bb.png
new file mode 100644
index 0000000..e788c7f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/bk.png b/_assets/vendor/pgn4web/images/uscf/28/bk.png
new file mode 100644
index 0000000..ca2e93d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/bn.png b/_assets/vendor/pgn4web/images/uscf/28/bn.png
new file mode 100644
index 0000000..e8237b0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/bp.png b/_assets/vendor/pgn4web/images/uscf/28/bp.png
new file mode 100644
index 0000000..b7f553f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/bq.png b/_assets/vendor/pgn4web/images/uscf/28/bq.png
new file mode 100644
index 0000000..da41277
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/br.png b/_assets/vendor/pgn4web/images/uscf/28/br.png
new file mode 100644
index 0000000..21b2a1a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/clear.png b/_assets/vendor/pgn4web/images/uscf/28/clear.png
new file mode 100644
index 0000000..7ccfdd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/index.html b/_assets/vendor/pgn4web/images/uscf/28/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/28/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wb.png b/_assets/vendor/pgn4web/images/uscf/28/wb.png
new file mode 100644
index 0000000..8a6c793
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wk.png b/_assets/vendor/pgn4web/images/uscf/28/wk.png
new file mode 100644
index 0000000..2a8ecc0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wn.png b/_assets/vendor/pgn4web/images/uscf/28/wn.png
new file mode 100644
index 0000000..9c39f4c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wp.png b/_assets/vendor/pgn4web/images/uscf/28/wp.png
new file mode 100644
index 0000000..ea3392d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wq.png b/_assets/vendor/pgn4web/images/uscf/28/wq.png
new file mode 100644
index 0000000..6cdf21b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/28/wr.png b/_assets/vendor/pgn4web/images/uscf/28/wr.png
new file mode 100644
index 0000000..28df801
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/28/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/bb.png b/_assets/vendor/pgn4web/images/uscf/29/bb.png
new file mode 100644
index 0000000..4dbb1ca
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/bk.png b/_assets/vendor/pgn4web/images/uscf/29/bk.png
new file mode 100644
index 0000000..4bc275e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/bn.png b/_assets/vendor/pgn4web/images/uscf/29/bn.png
new file mode 100644
index 0000000..b48b9ed
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/bp.png b/_assets/vendor/pgn4web/images/uscf/29/bp.png
new file mode 100644
index 0000000..f985c6c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/bq.png b/_assets/vendor/pgn4web/images/uscf/29/bq.png
new file mode 100644
index 0000000..4058dd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/br.png b/_assets/vendor/pgn4web/images/uscf/29/br.png
new file mode 100644
index 0000000..5f2b66f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/clear.png b/_assets/vendor/pgn4web/images/uscf/29/clear.png
new file mode 100644
index 0000000..6066131
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/index.html b/_assets/vendor/pgn4web/images/uscf/29/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/29/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wb.png b/_assets/vendor/pgn4web/images/uscf/29/wb.png
new file mode 100644
index 0000000..9823253
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wk.png b/_assets/vendor/pgn4web/images/uscf/29/wk.png
new file mode 100644
index 0000000..4e1f083
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wn.png b/_assets/vendor/pgn4web/images/uscf/29/wn.png
new file mode 100644
index 0000000..d4460a6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wp.png b/_assets/vendor/pgn4web/images/uscf/29/wp.png
new file mode 100644
index 0000000..cdce8db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wq.png b/_assets/vendor/pgn4web/images/uscf/29/wq.png
new file mode 100644
index 0000000..fcfff53
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/29/wr.png b/_assets/vendor/pgn4web/images/uscf/29/wr.png
new file mode 100644
index 0000000..2cbd954
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/29/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/bb.png b/_assets/vendor/pgn4web/images/uscf/30/bb.png
new file mode 100644
index 0000000..6165b93
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/bk.png b/_assets/vendor/pgn4web/images/uscf/30/bk.png
new file mode 100644
index 0000000..c2db488
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/bn.png b/_assets/vendor/pgn4web/images/uscf/30/bn.png
new file mode 100644
index 0000000..6543e09
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/bp.png b/_assets/vendor/pgn4web/images/uscf/30/bp.png
new file mode 100644
index 0000000..9549acd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/bq.png b/_assets/vendor/pgn4web/images/uscf/30/bq.png
new file mode 100644
index 0000000..8454540
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/br.png b/_assets/vendor/pgn4web/images/uscf/30/br.png
new file mode 100644
index 0000000..b33ba48
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/clear.png b/_assets/vendor/pgn4web/images/uscf/30/clear.png
new file mode 100644
index 0000000..26efd52
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/index.html b/_assets/vendor/pgn4web/images/uscf/30/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/30/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wb.png b/_assets/vendor/pgn4web/images/uscf/30/wb.png
new file mode 100644
index 0000000..b633fc5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wk.png b/_assets/vendor/pgn4web/images/uscf/30/wk.png
new file mode 100644
index 0000000..31da448
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wn.png b/_assets/vendor/pgn4web/images/uscf/30/wn.png
new file mode 100644
index 0000000..72ddceb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wp.png b/_assets/vendor/pgn4web/images/uscf/30/wp.png
new file mode 100644
index 0000000..861ac06
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wq.png b/_assets/vendor/pgn4web/images/uscf/30/wq.png
new file mode 100644
index 0000000..18d6c31
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/30/wr.png b/_assets/vendor/pgn4web/images/uscf/30/wr.png
new file mode 100644
index 0000000..7037133
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/30/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/bb.png b/_assets/vendor/pgn4web/images/uscf/300/bb.png
new file mode 100644
index 0000000..c7c4e96
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/bk.png b/_assets/vendor/pgn4web/images/uscf/300/bk.png
new file mode 100644
index 0000000..88be58e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/bn.png b/_assets/vendor/pgn4web/images/uscf/300/bn.png
new file mode 100644
index 0000000..48cc5c2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/bp.png b/_assets/vendor/pgn4web/images/uscf/300/bp.png
new file mode 100644
index 0000000..390bfa0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/bq.png b/_assets/vendor/pgn4web/images/uscf/300/bq.png
new file mode 100644
index 0000000..8469bbb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/br.png b/_assets/vendor/pgn4web/images/uscf/300/br.png
new file mode 100644
index 0000000..285907a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/clear.png b/_assets/vendor/pgn4web/images/uscf/300/clear.png
new file mode 100644
index 0000000..c0c1495
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/index.html b/_assets/vendor/pgn4web/images/uscf/300/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/300/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wb.png b/_assets/vendor/pgn4web/images/uscf/300/wb.png
new file mode 100644
index 0000000..076d16c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wk.png b/_assets/vendor/pgn4web/images/uscf/300/wk.png
new file mode 100644
index 0000000..f34d636
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wn.png b/_assets/vendor/pgn4web/images/uscf/300/wn.png
new file mode 100644
index 0000000..908580a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wp.png b/_assets/vendor/pgn4web/images/uscf/300/wp.png
new file mode 100644
index 0000000..cee8766
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wq.png b/_assets/vendor/pgn4web/images/uscf/300/wq.png
new file mode 100644
index 0000000..0afce91
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/300/wr.png b/_assets/vendor/pgn4web/images/uscf/300/wr.png
new file mode 100644
index 0000000..0524b2b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/300/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/bb.png b/_assets/vendor/pgn4web/images/uscf/31/bb.png
new file mode 100644
index 0000000..bf68a6e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/bk.png b/_assets/vendor/pgn4web/images/uscf/31/bk.png
new file mode 100644
index 0000000..5185359
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/bn.png b/_assets/vendor/pgn4web/images/uscf/31/bn.png
new file mode 100644
index 0000000..9c9c65f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/bp.png b/_assets/vendor/pgn4web/images/uscf/31/bp.png
new file mode 100644
index 0000000..ef0da72
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/bq.png b/_assets/vendor/pgn4web/images/uscf/31/bq.png
new file mode 100644
index 0000000..ce0f2a4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/br.png b/_assets/vendor/pgn4web/images/uscf/31/br.png
new file mode 100644
index 0000000..c3f3108
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/clear.png b/_assets/vendor/pgn4web/images/uscf/31/clear.png
new file mode 100644
index 0000000..7b58d16
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/index.html b/_assets/vendor/pgn4web/images/uscf/31/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/31/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wb.png b/_assets/vendor/pgn4web/images/uscf/31/wb.png
new file mode 100644
index 0000000..06bd5cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wk.png b/_assets/vendor/pgn4web/images/uscf/31/wk.png
new file mode 100644
index 0000000..d4f804a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wn.png b/_assets/vendor/pgn4web/images/uscf/31/wn.png
new file mode 100644
index 0000000..8aab8a0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wp.png b/_assets/vendor/pgn4web/images/uscf/31/wp.png
new file mode 100644
index 0000000..be4ec81
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wq.png b/_assets/vendor/pgn4web/images/uscf/31/wq.png
new file mode 100644
index 0000000..0001c39
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/31/wr.png b/_assets/vendor/pgn4web/images/uscf/31/wr.png
new file mode 100644
index 0000000..d6c266a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/31/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/bb.png b/_assets/vendor/pgn4web/images/uscf/32/bb.png
new file mode 100644
index 0000000..fdcc42f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/bk.png b/_assets/vendor/pgn4web/images/uscf/32/bk.png
new file mode 100644
index 0000000..1f814f9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/bn.png b/_assets/vendor/pgn4web/images/uscf/32/bn.png
new file mode 100644
index 0000000..d287c93
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/bp.png b/_assets/vendor/pgn4web/images/uscf/32/bp.png
new file mode 100644
index 0000000..7519adb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/bq.png b/_assets/vendor/pgn4web/images/uscf/32/bq.png
new file mode 100644
index 0000000..a742a1d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/br.png b/_assets/vendor/pgn4web/images/uscf/32/br.png
new file mode 100644
index 0000000..fddc457
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/clear.png b/_assets/vendor/pgn4web/images/uscf/32/clear.png
new file mode 100644
index 0000000..afd9f37
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/index.html b/_assets/vendor/pgn4web/images/uscf/32/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/32/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wb.png b/_assets/vendor/pgn4web/images/uscf/32/wb.png
new file mode 100644
index 0000000..8fd549d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wk.png b/_assets/vendor/pgn4web/images/uscf/32/wk.png
new file mode 100644
index 0000000..ee68198
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wn.png b/_assets/vendor/pgn4web/images/uscf/32/wn.png
new file mode 100644
index 0000000..7e893d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wp.png b/_assets/vendor/pgn4web/images/uscf/32/wp.png
new file mode 100644
index 0000000..b002656
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wq.png b/_assets/vendor/pgn4web/images/uscf/32/wq.png
new file mode 100644
index 0000000..2bea357
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/32/wr.png b/_assets/vendor/pgn4web/images/uscf/32/wr.png
new file mode 100644
index 0000000..6b0c903
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/32/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/bb.png b/_assets/vendor/pgn4web/images/uscf/33/bb.png
new file mode 100644
index 0000000..a77155d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/bk.png b/_assets/vendor/pgn4web/images/uscf/33/bk.png
new file mode 100644
index 0000000..1c231cb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/bn.png b/_assets/vendor/pgn4web/images/uscf/33/bn.png
new file mode 100644
index 0000000..20fefac
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/bp.png b/_assets/vendor/pgn4web/images/uscf/33/bp.png
new file mode 100644
index 0000000..f8f8f01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/bq.png b/_assets/vendor/pgn4web/images/uscf/33/bq.png
new file mode 100644
index 0000000..6dd6347
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/br.png b/_assets/vendor/pgn4web/images/uscf/33/br.png
new file mode 100644
index 0000000..d878827
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/clear.png b/_assets/vendor/pgn4web/images/uscf/33/clear.png
new file mode 100644
index 0000000..8b635b2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/index.html b/_assets/vendor/pgn4web/images/uscf/33/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/33/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wb.png b/_assets/vendor/pgn4web/images/uscf/33/wb.png
new file mode 100644
index 0000000..888a0a2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wk.png b/_assets/vendor/pgn4web/images/uscf/33/wk.png
new file mode 100644
index 0000000..c0195e1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wn.png b/_assets/vendor/pgn4web/images/uscf/33/wn.png
new file mode 100644
index 0000000..770322c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wp.png b/_assets/vendor/pgn4web/images/uscf/33/wp.png
new file mode 100644
index 0000000..0e44bf6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wq.png b/_assets/vendor/pgn4web/images/uscf/33/wq.png
new file mode 100644
index 0000000..0dc1eb9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/33/wr.png b/_assets/vendor/pgn4web/images/uscf/33/wr.png
new file mode 100644
index 0000000..39be2d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/33/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/bb.png b/_assets/vendor/pgn4web/images/uscf/34/bb.png
new file mode 100644
index 0000000..8b63e02
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/bk.png b/_assets/vendor/pgn4web/images/uscf/34/bk.png
new file mode 100644
index 0000000..421a7b1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/bn.png b/_assets/vendor/pgn4web/images/uscf/34/bn.png
new file mode 100644
index 0000000..723495c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/bp.png b/_assets/vendor/pgn4web/images/uscf/34/bp.png
new file mode 100644
index 0000000..4fdaadc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/bq.png b/_assets/vendor/pgn4web/images/uscf/34/bq.png
new file mode 100644
index 0000000..71c4716
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/br.png b/_assets/vendor/pgn4web/images/uscf/34/br.png
new file mode 100644
index 0000000..501109d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/clear.png b/_assets/vendor/pgn4web/images/uscf/34/clear.png
new file mode 100644
index 0000000..d860ae1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/index.html b/_assets/vendor/pgn4web/images/uscf/34/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/34/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wb.png b/_assets/vendor/pgn4web/images/uscf/34/wb.png
new file mode 100644
index 0000000..d87bdd7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wk.png b/_assets/vendor/pgn4web/images/uscf/34/wk.png
new file mode 100644
index 0000000..1d35d3e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wn.png b/_assets/vendor/pgn4web/images/uscf/34/wn.png
new file mode 100644
index 0000000..35c25f7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wp.png b/_assets/vendor/pgn4web/images/uscf/34/wp.png
new file mode 100644
index 0000000..b7e1252
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wq.png b/_assets/vendor/pgn4web/images/uscf/34/wq.png
new file mode 100644
index 0000000..c2cd8ba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/34/wr.png b/_assets/vendor/pgn4web/images/uscf/34/wr.png
new file mode 100644
index 0000000..ed2b89b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/34/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/bb.png b/_assets/vendor/pgn4web/images/uscf/35/bb.png
new file mode 100644
index 0000000..5462c6f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/bk.png b/_assets/vendor/pgn4web/images/uscf/35/bk.png
new file mode 100644
index 0000000..0615c04
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/bn.png b/_assets/vendor/pgn4web/images/uscf/35/bn.png
new file mode 100644
index 0000000..584a03a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/bp.png b/_assets/vendor/pgn4web/images/uscf/35/bp.png
new file mode 100644
index 0000000..32eebf7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/bq.png b/_assets/vendor/pgn4web/images/uscf/35/bq.png
new file mode 100644
index 0000000..df087d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/br.png b/_assets/vendor/pgn4web/images/uscf/35/br.png
new file mode 100644
index 0000000..bde4555
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/clear.png b/_assets/vendor/pgn4web/images/uscf/35/clear.png
new file mode 100644
index 0000000..d8cce5d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/index.html b/_assets/vendor/pgn4web/images/uscf/35/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/35/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wb.png b/_assets/vendor/pgn4web/images/uscf/35/wb.png
new file mode 100644
index 0000000..6ad53ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wk.png b/_assets/vendor/pgn4web/images/uscf/35/wk.png
new file mode 100644
index 0000000..ae05086
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wn.png b/_assets/vendor/pgn4web/images/uscf/35/wn.png
new file mode 100644
index 0000000..70f6525
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wp.png b/_assets/vendor/pgn4web/images/uscf/35/wp.png
new file mode 100644
index 0000000..2c3048e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wq.png b/_assets/vendor/pgn4web/images/uscf/35/wq.png
new file mode 100644
index 0000000..63dfbc5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/35/wr.png b/_assets/vendor/pgn4web/images/uscf/35/wr.png
new file mode 100644
index 0000000..14d7af5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/35/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/bb.png b/_assets/vendor/pgn4web/images/uscf/36/bb.png
new file mode 100644
index 0000000..da510df
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/bk.png b/_assets/vendor/pgn4web/images/uscf/36/bk.png
new file mode 100644
index 0000000..bfc8abf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/bn.png b/_assets/vendor/pgn4web/images/uscf/36/bn.png
new file mode 100644
index 0000000..7a8a46d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/bp.png b/_assets/vendor/pgn4web/images/uscf/36/bp.png
new file mode 100644
index 0000000..e749e41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/bq.png b/_assets/vendor/pgn4web/images/uscf/36/bq.png
new file mode 100644
index 0000000..5e55c0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/br.png b/_assets/vendor/pgn4web/images/uscf/36/br.png
new file mode 100644
index 0000000..cbeae7e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/clear.png b/_assets/vendor/pgn4web/images/uscf/36/clear.png
new file mode 100644
index 0000000..9162b41
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/index.html b/_assets/vendor/pgn4web/images/uscf/36/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/36/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wb.png b/_assets/vendor/pgn4web/images/uscf/36/wb.png
new file mode 100644
index 0000000..db70660
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wk.png b/_assets/vendor/pgn4web/images/uscf/36/wk.png
new file mode 100644
index 0000000..0581555
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wn.png b/_assets/vendor/pgn4web/images/uscf/36/wn.png
new file mode 100644
index 0000000..f10cdd5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wp.png b/_assets/vendor/pgn4web/images/uscf/36/wp.png
new file mode 100644
index 0000000..3b767a8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wq.png b/_assets/vendor/pgn4web/images/uscf/36/wq.png
new file mode 100644
index 0000000..dd05bdf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/36/wr.png b/_assets/vendor/pgn4web/images/uscf/36/wr.png
new file mode 100644
index 0000000..c414ea7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/36/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/bb.png b/_assets/vendor/pgn4web/images/uscf/37/bb.png
new file mode 100644
index 0000000..5b77f67
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/bk.png b/_assets/vendor/pgn4web/images/uscf/37/bk.png
new file mode 100644
index 0000000..ae875ec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/bn.png b/_assets/vendor/pgn4web/images/uscf/37/bn.png
new file mode 100644
index 0000000..62f1b28
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/bp.png b/_assets/vendor/pgn4web/images/uscf/37/bp.png
new file mode 100644
index 0000000..f6ad1d5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/bq.png b/_assets/vendor/pgn4web/images/uscf/37/bq.png
new file mode 100644
index 0000000..58e032e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/br.png b/_assets/vendor/pgn4web/images/uscf/37/br.png
new file mode 100644
index 0000000..653384e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/clear.png b/_assets/vendor/pgn4web/images/uscf/37/clear.png
new file mode 100644
index 0000000..a1ab072
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/index.html b/_assets/vendor/pgn4web/images/uscf/37/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/37/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wb.png b/_assets/vendor/pgn4web/images/uscf/37/wb.png
new file mode 100644
index 0000000..3a31cfb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wk.png b/_assets/vendor/pgn4web/images/uscf/37/wk.png
new file mode 100644
index 0000000..e47ea4b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wn.png b/_assets/vendor/pgn4web/images/uscf/37/wn.png
new file mode 100644
index 0000000..77da012
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wp.png b/_assets/vendor/pgn4web/images/uscf/37/wp.png
new file mode 100644
index 0000000..a9083d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wq.png b/_assets/vendor/pgn4web/images/uscf/37/wq.png
new file mode 100644
index 0000000..191670b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/37/wr.png b/_assets/vendor/pgn4web/images/uscf/37/wr.png
new file mode 100644
index 0000000..0bca673
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/37/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/bb.png b/_assets/vendor/pgn4web/images/uscf/38/bb.png
new file mode 100644
index 0000000..02767f1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/bk.png b/_assets/vendor/pgn4web/images/uscf/38/bk.png
new file mode 100644
index 0000000..7824a7e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/bn.png b/_assets/vendor/pgn4web/images/uscf/38/bn.png
new file mode 100644
index 0000000..36497bd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/bp.png b/_assets/vendor/pgn4web/images/uscf/38/bp.png
new file mode 100644
index 0000000..8f89a8a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/bq.png b/_assets/vendor/pgn4web/images/uscf/38/bq.png
new file mode 100644
index 0000000..3b5aca2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/br.png b/_assets/vendor/pgn4web/images/uscf/38/br.png
new file mode 100644
index 0000000..a4fc225
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/clear.png b/_assets/vendor/pgn4web/images/uscf/38/clear.png
new file mode 100644
index 0000000..a833d60
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/index.html b/_assets/vendor/pgn4web/images/uscf/38/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/38/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wb.png b/_assets/vendor/pgn4web/images/uscf/38/wb.png
new file mode 100644
index 0000000..434af93
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wk.png b/_assets/vendor/pgn4web/images/uscf/38/wk.png
new file mode 100644
index 0000000..6a58edc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wn.png b/_assets/vendor/pgn4web/images/uscf/38/wn.png
new file mode 100644
index 0000000..b282818
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wp.png b/_assets/vendor/pgn4web/images/uscf/38/wp.png
new file mode 100644
index 0000000..52ef138
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wq.png b/_assets/vendor/pgn4web/images/uscf/38/wq.png
new file mode 100644
index 0000000..e66e9e5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/38/wr.png b/_assets/vendor/pgn4web/images/uscf/38/wr.png
new file mode 100644
index 0000000..cc1f4de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/38/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/bb.png b/_assets/vendor/pgn4web/images/uscf/39/bb.png
new file mode 100644
index 0000000..a568b74
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/bk.png b/_assets/vendor/pgn4web/images/uscf/39/bk.png
new file mode 100644
index 0000000..215b7cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/bn.png b/_assets/vendor/pgn4web/images/uscf/39/bn.png
new file mode 100644
index 0000000..970332b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/bp.png b/_assets/vendor/pgn4web/images/uscf/39/bp.png
new file mode 100644
index 0000000..bb5854d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/bq.png b/_assets/vendor/pgn4web/images/uscf/39/bq.png
new file mode 100644
index 0000000..7a5c6d5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/br.png b/_assets/vendor/pgn4web/images/uscf/39/br.png
new file mode 100644
index 0000000..2806044
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/clear.png b/_assets/vendor/pgn4web/images/uscf/39/clear.png
new file mode 100644
index 0000000..2db2186
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/index.html b/_assets/vendor/pgn4web/images/uscf/39/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/39/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wb.png b/_assets/vendor/pgn4web/images/uscf/39/wb.png
new file mode 100644
index 0000000..c73dac1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wk.png b/_assets/vendor/pgn4web/images/uscf/39/wk.png
new file mode 100644
index 0000000..c01a4f8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wn.png b/_assets/vendor/pgn4web/images/uscf/39/wn.png
new file mode 100644
index 0000000..e3d7a5a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wp.png b/_assets/vendor/pgn4web/images/uscf/39/wp.png
new file mode 100644
index 0000000..eca7efc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wq.png b/_assets/vendor/pgn4web/images/uscf/39/wq.png
new file mode 100644
index 0000000..5ec158a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/39/wr.png b/_assets/vendor/pgn4web/images/uscf/39/wr.png
new file mode 100644
index 0000000..8da2d56
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/39/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/bb.png b/_assets/vendor/pgn4web/images/uscf/40/bb.png
new file mode 100644
index 0000000..28f97a5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/bk.png b/_assets/vendor/pgn4web/images/uscf/40/bk.png
new file mode 100644
index 0000000..f281106
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/bn.png b/_assets/vendor/pgn4web/images/uscf/40/bn.png
new file mode 100644
index 0000000..81e0ba2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/bp.png b/_assets/vendor/pgn4web/images/uscf/40/bp.png
new file mode 100644
index 0000000..27ac9b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/bq.png b/_assets/vendor/pgn4web/images/uscf/40/bq.png
new file mode 100644
index 0000000..268100d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/br.png b/_assets/vendor/pgn4web/images/uscf/40/br.png
new file mode 100644
index 0000000..31c9a4c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/clear.png b/_assets/vendor/pgn4web/images/uscf/40/clear.png
new file mode 100644
index 0000000..02f667c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/index.html b/_assets/vendor/pgn4web/images/uscf/40/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/40/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wb.png b/_assets/vendor/pgn4web/images/uscf/40/wb.png
new file mode 100644
index 0000000..dbadd84
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wk.png b/_assets/vendor/pgn4web/images/uscf/40/wk.png
new file mode 100644
index 0000000..9f17d57
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wn.png b/_assets/vendor/pgn4web/images/uscf/40/wn.png
new file mode 100644
index 0000000..ac39325
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wp.png b/_assets/vendor/pgn4web/images/uscf/40/wp.png
new file mode 100644
index 0000000..c6add56
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wq.png b/_assets/vendor/pgn4web/images/uscf/40/wq.png
new file mode 100644
index 0000000..2497cb7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/40/wr.png b/_assets/vendor/pgn4web/images/uscf/40/wr.png
new file mode 100644
index 0000000..75cc307
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/40/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/bb.png b/_assets/vendor/pgn4web/images/uscf/41/bb.png
new file mode 100644
index 0000000..bba362a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/bk.png b/_assets/vendor/pgn4web/images/uscf/41/bk.png
new file mode 100644
index 0000000..49a357f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/bn.png b/_assets/vendor/pgn4web/images/uscf/41/bn.png
new file mode 100644
index 0000000..aa20eee
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/bp.png b/_assets/vendor/pgn4web/images/uscf/41/bp.png
new file mode 100644
index 0000000..56c8bb4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/bq.png b/_assets/vendor/pgn4web/images/uscf/41/bq.png
new file mode 100644
index 0000000..42fe6f8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/br.png b/_assets/vendor/pgn4web/images/uscf/41/br.png
new file mode 100644
index 0000000..c5bbd9c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/clear.png b/_assets/vendor/pgn4web/images/uscf/41/clear.png
new file mode 100644
index 0000000..4b32916
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/index.html b/_assets/vendor/pgn4web/images/uscf/41/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/41/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wb.png b/_assets/vendor/pgn4web/images/uscf/41/wb.png
new file mode 100644
index 0000000..e511bde
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wk.png b/_assets/vendor/pgn4web/images/uscf/41/wk.png
new file mode 100644
index 0000000..725d441
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wn.png b/_assets/vendor/pgn4web/images/uscf/41/wn.png
new file mode 100644
index 0000000..68d9158
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wp.png b/_assets/vendor/pgn4web/images/uscf/41/wp.png
new file mode 100644
index 0000000..140e9eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wq.png b/_assets/vendor/pgn4web/images/uscf/41/wq.png
new file mode 100644
index 0000000..91a41d9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/41/wr.png b/_assets/vendor/pgn4web/images/uscf/41/wr.png
new file mode 100644
index 0000000..3f4925b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/41/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/bb.png b/_assets/vendor/pgn4web/images/uscf/42/bb.png
new file mode 100644
index 0000000..5916927
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/bk.png b/_assets/vendor/pgn4web/images/uscf/42/bk.png
new file mode 100644
index 0000000..1dea55f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/bn.png b/_assets/vendor/pgn4web/images/uscf/42/bn.png
new file mode 100644
index 0000000..2ee3f25
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/bp.png b/_assets/vendor/pgn4web/images/uscf/42/bp.png
new file mode 100644
index 0000000..6a90996
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/bq.png b/_assets/vendor/pgn4web/images/uscf/42/bq.png
new file mode 100644
index 0000000..a2cce9a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/br.png b/_assets/vendor/pgn4web/images/uscf/42/br.png
new file mode 100644
index 0000000..de356a4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/clear.png b/_assets/vendor/pgn4web/images/uscf/42/clear.png
new file mode 100644
index 0000000..7331c88
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/index.html b/_assets/vendor/pgn4web/images/uscf/42/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/42/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wb.png b/_assets/vendor/pgn4web/images/uscf/42/wb.png
new file mode 100644
index 0000000..8ccded4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wk.png b/_assets/vendor/pgn4web/images/uscf/42/wk.png
new file mode 100644
index 0000000..ca9081c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wn.png b/_assets/vendor/pgn4web/images/uscf/42/wn.png
new file mode 100644
index 0000000..18ed2b9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wp.png b/_assets/vendor/pgn4web/images/uscf/42/wp.png
new file mode 100644
index 0000000..430184c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wq.png b/_assets/vendor/pgn4web/images/uscf/42/wq.png
new file mode 100644
index 0000000..46b30bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/42/wr.png b/_assets/vendor/pgn4web/images/uscf/42/wr.png
new file mode 100644
index 0000000..9a93964
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/42/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/bb.png b/_assets/vendor/pgn4web/images/uscf/43/bb.png
new file mode 100644
index 0000000..62a6894
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/bk.png b/_assets/vendor/pgn4web/images/uscf/43/bk.png
new file mode 100644
index 0000000..faa0906
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/bn.png b/_assets/vendor/pgn4web/images/uscf/43/bn.png
new file mode 100644
index 0000000..e9c53dc
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/bp.png b/_assets/vendor/pgn4web/images/uscf/43/bp.png
new file mode 100644
index 0000000..3821b5f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/bq.png b/_assets/vendor/pgn4web/images/uscf/43/bq.png
new file mode 100644
index 0000000..f47814c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/br.png b/_assets/vendor/pgn4web/images/uscf/43/br.png
new file mode 100644
index 0000000..d5e5fec
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/clear.png b/_assets/vendor/pgn4web/images/uscf/43/clear.png
new file mode 100644
index 0000000..cadd762
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/index.html b/_assets/vendor/pgn4web/images/uscf/43/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/43/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wb.png b/_assets/vendor/pgn4web/images/uscf/43/wb.png
new file mode 100644
index 0000000..5302c59
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wk.png b/_assets/vendor/pgn4web/images/uscf/43/wk.png
new file mode 100644
index 0000000..f6488b2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wn.png b/_assets/vendor/pgn4web/images/uscf/43/wn.png
new file mode 100644
index 0000000..cbb58bd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wp.png b/_assets/vendor/pgn4web/images/uscf/43/wp.png
new file mode 100644
index 0000000..ab14894
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wq.png b/_assets/vendor/pgn4web/images/uscf/43/wq.png
new file mode 100644
index 0000000..1026357
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/43/wr.png b/_assets/vendor/pgn4web/images/uscf/43/wr.png
new file mode 100644
index 0000000..a1d60d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/43/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/bb.png b/_assets/vendor/pgn4web/images/uscf/44/bb.png
new file mode 100644
index 0000000..affb19f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/bk.png b/_assets/vendor/pgn4web/images/uscf/44/bk.png
new file mode 100644
index 0000000..d3e723b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/bn.png b/_assets/vendor/pgn4web/images/uscf/44/bn.png
new file mode 100644
index 0000000..5e96eb4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/bp.png b/_assets/vendor/pgn4web/images/uscf/44/bp.png
new file mode 100644
index 0000000..483e0c8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/bq.png b/_assets/vendor/pgn4web/images/uscf/44/bq.png
new file mode 100644
index 0000000..b37ba94
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/br.png b/_assets/vendor/pgn4web/images/uscf/44/br.png
new file mode 100644
index 0000000..c13c868
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/clear.png b/_assets/vendor/pgn4web/images/uscf/44/clear.png
new file mode 100644
index 0000000..753d476
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/index.html b/_assets/vendor/pgn4web/images/uscf/44/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/44/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wb.png b/_assets/vendor/pgn4web/images/uscf/44/wb.png
new file mode 100644
index 0000000..a79741e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wk.png b/_assets/vendor/pgn4web/images/uscf/44/wk.png
new file mode 100644
index 0000000..8ba7815
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wn.png b/_assets/vendor/pgn4web/images/uscf/44/wn.png
new file mode 100644
index 0000000..822ed6e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wp.png b/_assets/vendor/pgn4web/images/uscf/44/wp.png
new file mode 100644
index 0000000..ce2c3f5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wq.png b/_assets/vendor/pgn4web/images/uscf/44/wq.png
new file mode 100644
index 0000000..3fbce31
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/44/wr.png b/_assets/vendor/pgn4web/images/uscf/44/wr.png
new file mode 100644
index 0000000..47570e8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/44/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/bb.png b/_assets/vendor/pgn4web/images/uscf/45/bb.png
new file mode 100644
index 0000000..b3bf7c3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/bk.png b/_assets/vendor/pgn4web/images/uscf/45/bk.png
new file mode 100644
index 0000000..6d182f3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/bn.png b/_assets/vendor/pgn4web/images/uscf/45/bn.png
new file mode 100644
index 0000000..250a11e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/bp.png b/_assets/vendor/pgn4web/images/uscf/45/bp.png
new file mode 100644
index 0000000..64a8d7e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/bq.png b/_assets/vendor/pgn4web/images/uscf/45/bq.png
new file mode 100644
index 0000000..7daebc5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/br.png b/_assets/vendor/pgn4web/images/uscf/45/br.png
new file mode 100644
index 0000000..c62bbde
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/clear.png b/_assets/vendor/pgn4web/images/uscf/45/clear.png
new file mode 100644
index 0000000..49be780
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/index.html b/_assets/vendor/pgn4web/images/uscf/45/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/45/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wb.png b/_assets/vendor/pgn4web/images/uscf/45/wb.png
new file mode 100644
index 0000000..e375282
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wk.png b/_assets/vendor/pgn4web/images/uscf/45/wk.png
new file mode 100644
index 0000000..4eb81e1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wn.png b/_assets/vendor/pgn4web/images/uscf/45/wn.png
new file mode 100644
index 0000000..bddc89f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wp.png b/_assets/vendor/pgn4web/images/uscf/45/wp.png
new file mode 100644
index 0000000..4ebcc2d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wq.png b/_assets/vendor/pgn4web/images/uscf/45/wq.png
new file mode 100644
index 0000000..2ff0afb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/45/wr.png b/_assets/vendor/pgn4web/images/uscf/45/wr.png
new file mode 100644
index 0000000..01d0b0f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/45/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/bb.png b/_assets/vendor/pgn4web/images/uscf/46/bb.png
new file mode 100644
index 0000000..995bab9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/bk.png b/_assets/vendor/pgn4web/images/uscf/46/bk.png
new file mode 100644
index 0000000..f904353
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/bn.png b/_assets/vendor/pgn4web/images/uscf/46/bn.png
new file mode 100644
index 0000000..1942c47
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/bp.png b/_assets/vendor/pgn4web/images/uscf/46/bp.png
new file mode 100644
index 0000000..0a8931c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/bq.png b/_assets/vendor/pgn4web/images/uscf/46/bq.png
new file mode 100644
index 0000000..89d79eb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/br.png b/_assets/vendor/pgn4web/images/uscf/46/br.png
new file mode 100644
index 0000000..bc68940
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/clear.png b/_assets/vendor/pgn4web/images/uscf/46/clear.png
new file mode 100644
index 0000000..bd294c1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/index.html b/_assets/vendor/pgn4web/images/uscf/46/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/46/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wb.png b/_assets/vendor/pgn4web/images/uscf/46/wb.png
new file mode 100644
index 0000000..5adad00
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wk.png b/_assets/vendor/pgn4web/images/uscf/46/wk.png
new file mode 100644
index 0000000..1b73028
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wn.png b/_assets/vendor/pgn4web/images/uscf/46/wn.png
new file mode 100644
index 0000000..8405d5a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wp.png b/_assets/vendor/pgn4web/images/uscf/46/wp.png
new file mode 100644
index 0000000..b2bf411
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wq.png b/_assets/vendor/pgn4web/images/uscf/46/wq.png
new file mode 100644
index 0000000..e8aafd9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/46/wr.png b/_assets/vendor/pgn4web/images/uscf/46/wr.png
new file mode 100644
index 0000000..339dd10
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/46/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/bb.png b/_assets/vendor/pgn4web/images/uscf/47/bb.png
new file mode 100644
index 0000000..e3a91aa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/bk.png b/_assets/vendor/pgn4web/images/uscf/47/bk.png
new file mode 100644
index 0000000..75bcb2f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/bn.png b/_assets/vendor/pgn4web/images/uscf/47/bn.png
new file mode 100644
index 0000000..9e1e74b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/bp.png b/_assets/vendor/pgn4web/images/uscf/47/bp.png
new file mode 100644
index 0000000..996f41e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/bq.png b/_assets/vendor/pgn4web/images/uscf/47/bq.png
new file mode 100644
index 0000000..286d3a9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/br.png b/_assets/vendor/pgn4web/images/uscf/47/br.png
new file mode 100644
index 0000000..ca7615f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/clear.png b/_assets/vendor/pgn4web/images/uscf/47/clear.png
new file mode 100644
index 0000000..00fcf75
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/index.html b/_assets/vendor/pgn4web/images/uscf/47/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/47/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wb.png b/_assets/vendor/pgn4web/images/uscf/47/wb.png
new file mode 100644
index 0000000..5c5456f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wk.png b/_assets/vendor/pgn4web/images/uscf/47/wk.png
new file mode 100644
index 0000000..aad9928
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wn.png b/_assets/vendor/pgn4web/images/uscf/47/wn.png
new file mode 100644
index 0000000..eecae6c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wp.png b/_assets/vendor/pgn4web/images/uscf/47/wp.png
new file mode 100644
index 0000000..92ada9a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wq.png b/_assets/vendor/pgn4web/images/uscf/47/wq.png
new file mode 100644
index 0000000..ac5ae44
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/47/wr.png b/_assets/vendor/pgn4web/images/uscf/47/wr.png
new file mode 100644
index 0000000..0d0a26b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/47/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/bb.png b/_assets/vendor/pgn4web/images/uscf/48/bb.png
new file mode 100644
index 0000000..74eb988
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/bk.png b/_assets/vendor/pgn4web/images/uscf/48/bk.png
new file mode 100644
index 0000000..9edb175
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/bn.png b/_assets/vendor/pgn4web/images/uscf/48/bn.png
new file mode 100644
index 0000000..e4b1a65
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/bp.png b/_assets/vendor/pgn4web/images/uscf/48/bp.png
new file mode 100644
index 0000000..4d06e85
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/bq.png b/_assets/vendor/pgn4web/images/uscf/48/bq.png
new file mode 100644
index 0000000..8171b96
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/br.png b/_assets/vendor/pgn4web/images/uscf/48/br.png
new file mode 100644
index 0000000..bc479af
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/clear.png b/_assets/vendor/pgn4web/images/uscf/48/clear.png
new file mode 100644
index 0000000..4b6dff8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/index.html b/_assets/vendor/pgn4web/images/uscf/48/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/48/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wb.png b/_assets/vendor/pgn4web/images/uscf/48/wb.png
new file mode 100644
index 0000000..e2f9b26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wk.png b/_assets/vendor/pgn4web/images/uscf/48/wk.png
new file mode 100644
index 0000000..1af2f0b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wn.png b/_assets/vendor/pgn4web/images/uscf/48/wn.png
new file mode 100644
index 0000000..2777421
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wp.png b/_assets/vendor/pgn4web/images/uscf/48/wp.png
new file mode 100644
index 0000000..74fa71c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wq.png b/_assets/vendor/pgn4web/images/uscf/48/wq.png
new file mode 100644
index 0000000..7ed211c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/48/wr.png b/_assets/vendor/pgn4web/images/uscf/48/wr.png
new file mode 100644
index 0000000..9f2aff6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/48/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/bb.png b/_assets/vendor/pgn4web/images/uscf/52/bb.png
new file mode 100644
index 0000000..b755221
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/bk.png b/_assets/vendor/pgn4web/images/uscf/52/bk.png
new file mode 100644
index 0000000..f697933
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/bn.png b/_assets/vendor/pgn4web/images/uscf/52/bn.png
new file mode 100644
index 0000000..604a00f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/bp.png b/_assets/vendor/pgn4web/images/uscf/52/bp.png
new file mode 100644
index 0000000..67e97d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/bq.png b/_assets/vendor/pgn4web/images/uscf/52/bq.png
new file mode 100644
index 0000000..c0e7fb2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/br.png b/_assets/vendor/pgn4web/images/uscf/52/br.png
new file mode 100644
index 0000000..d3b1fdf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/clear.png b/_assets/vendor/pgn4web/images/uscf/52/clear.png
new file mode 100644
index 0000000..5ea7f99
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/index.html b/_assets/vendor/pgn4web/images/uscf/52/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/52/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wb.png b/_assets/vendor/pgn4web/images/uscf/52/wb.png
new file mode 100644
index 0000000..9e65b80
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wk.png b/_assets/vendor/pgn4web/images/uscf/52/wk.png
new file mode 100644
index 0000000..fd3395e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wn.png b/_assets/vendor/pgn4web/images/uscf/52/wn.png
new file mode 100644
index 0000000..06e8826
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wp.png b/_assets/vendor/pgn4web/images/uscf/52/wp.png
new file mode 100644
index 0000000..1bc923e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wq.png b/_assets/vendor/pgn4web/images/uscf/52/wq.png
new file mode 100644
index 0000000..da4d401
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/52/wr.png b/_assets/vendor/pgn4web/images/uscf/52/wr.png
new file mode 100644
index 0000000..01652a9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/52/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/bb.png b/_assets/vendor/pgn4web/images/uscf/56/bb.png
new file mode 100644
index 0000000..71cbde6
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/bk.png b/_assets/vendor/pgn4web/images/uscf/56/bk.png
new file mode 100644
index 0000000..9537391
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/bn.png b/_assets/vendor/pgn4web/images/uscf/56/bn.png
new file mode 100644
index 0000000..92d2229
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/bp.png b/_assets/vendor/pgn4web/images/uscf/56/bp.png
new file mode 100644
index 0000000..250d21b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/bq.png b/_assets/vendor/pgn4web/images/uscf/56/bq.png
new file mode 100644
index 0000000..89bff31
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/br.png b/_assets/vendor/pgn4web/images/uscf/56/br.png
new file mode 100644
index 0000000..9cbabb5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/clear.png b/_assets/vendor/pgn4web/images/uscf/56/clear.png
new file mode 100644
index 0000000..bc12aba
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/index.html b/_assets/vendor/pgn4web/images/uscf/56/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/56/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wb.png b/_assets/vendor/pgn4web/images/uscf/56/wb.png
new file mode 100644
index 0000000..d2d6384
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wk.png b/_assets/vendor/pgn4web/images/uscf/56/wk.png
new file mode 100644
index 0000000..aa4a1a0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wn.png b/_assets/vendor/pgn4web/images/uscf/56/wn.png
new file mode 100644
index 0000000..d14f4d7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wp.png b/_assets/vendor/pgn4web/images/uscf/56/wp.png
new file mode 100644
index 0000000..56d9c21
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wq.png b/_assets/vendor/pgn4web/images/uscf/56/wq.png
new file mode 100644
index 0000000..7301065
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/56/wr.png b/_assets/vendor/pgn4web/images/uscf/56/wr.png
new file mode 100644
index 0000000..de3de47
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/56/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/bb.png b/_assets/vendor/pgn4web/images/uscf/60/bb.png
new file mode 100644
index 0000000..bb52ee4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/bk.png b/_assets/vendor/pgn4web/images/uscf/60/bk.png
new file mode 100644
index 0000000..a05ba1a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/bn.png b/_assets/vendor/pgn4web/images/uscf/60/bn.png
new file mode 100644
index 0000000..6bfaea1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/bp.png b/_assets/vendor/pgn4web/images/uscf/60/bp.png
new file mode 100644
index 0000000..7e340dd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/bq.png b/_assets/vendor/pgn4web/images/uscf/60/bq.png
new file mode 100644
index 0000000..49806c3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/br.png b/_assets/vendor/pgn4web/images/uscf/60/br.png
new file mode 100644
index 0000000..1c07947
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/clear.png b/_assets/vendor/pgn4web/images/uscf/60/clear.png
new file mode 100644
index 0000000..6d4e3bb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/index.html b/_assets/vendor/pgn4web/images/uscf/60/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/60/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wb.png b/_assets/vendor/pgn4web/images/uscf/60/wb.png
new file mode 100644
index 0000000..2423be2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wk.png b/_assets/vendor/pgn4web/images/uscf/60/wk.png
new file mode 100644
index 0000000..33e6c01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wn.png b/_assets/vendor/pgn4web/images/uscf/60/wn.png
new file mode 100644
index 0000000..0633b10
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wp.png b/_assets/vendor/pgn4web/images/uscf/60/wp.png
new file mode 100644
index 0000000..f289e3d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wq.png b/_assets/vendor/pgn4web/images/uscf/60/wq.png
new file mode 100644
index 0000000..6bba451
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/60/wr.png b/_assets/vendor/pgn4web/images/uscf/60/wr.png
new file mode 100644
index 0000000..c2d5ebd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/60/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/bb.png b/_assets/vendor/pgn4web/images/uscf/64/bb.png
new file mode 100644
index 0000000..1a64870
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/bk.png b/_assets/vendor/pgn4web/images/uscf/64/bk.png
new file mode 100644
index 0000000..5fb07c4
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/bn.png b/_assets/vendor/pgn4web/images/uscf/64/bn.png
new file mode 100644
index 0000000..ba98100
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/bp.png b/_assets/vendor/pgn4web/images/uscf/64/bp.png
new file mode 100644
index 0000000..5ccc1a3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/bq.png b/_assets/vendor/pgn4web/images/uscf/64/bq.png
new file mode 100644
index 0000000..2dc0240
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/br.png b/_assets/vendor/pgn4web/images/uscf/64/br.png
new file mode 100644
index 0000000..2138fb8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/clear.png b/_assets/vendor/pgn4web/images/uscf/64/clear.png
new file mode 100644
index 0000000..5c3ac01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/index.html b/_assets/vendor/pgn4web/images/uscf/64/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/64/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wb.png b/_assets/vendor/pgn4web/images/uscf/64/wb.png
new file mode 100644
index 0000000..9be1c3a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wk.png b/_assets/vendor/pgn4web/images/uscf/64/wk.png
new file mode 100644
index 0000000..28147ab
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wn.png b/_assets/vendor/pgn4web/images/uscf/64/wn.png
new file mode 100644
index 0000000..5d61038
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wp.png b/_assets/vendor/pgn4web/images/uscf/64/wp.png
new file mode 100644
index 0000000..2390480
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wq.png b/_assets/vendor/pgn4web/images/uscf/64/wq.png
new file mode 100644
index 0000000..e0a3139
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/64/wr.png b/_assets/vendor/pgn4web/images/uscf/64/wr.png
new file mode 100644
index 0000000..a253f72
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/64/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/bb.png b/_assets/vendor/pgn4web/images/uscf/72/bb.png
new file mode 100644
index 0000000..29624bd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/bk.png b/_assets/vendor/pgn4web/images/uscf/72/bk.png
new file mode 100644
index 0000000..2ccdf77
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/bn.png b/_assets/vendor/pgn4web/images/uscf/72/bn.png
new file mode 100644
index 0000000..4c790ad
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/bp.png b/_assets/vendor/pgn4web/images/uscf/72/bp.png
new file mode 100644
index 0000000..c4a7fa1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/bq.png b/_assets/vendor/pgn4web/images/uscf/72/bq.png
new file mode 100644
index 0000000..b933f82
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/br.png b/_assets/vendor/pgn4web/images/uscf/72/br.png
new file mode 100644
index 0000000..8cb2993
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/clear.png b/_assets/vendor/pgn4web/images/uscf/72/clear.png
new file mode 100644
index 0000000..fb05b26
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/index.html b/_assets/vendor/pgn4web/images/uscf/72/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/72/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wb.png b/_assets/vendor/pgn4web/images/uscf/72/wb.png
new file mode 100644
index 0000000..bae6657
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wk.png b/_assets/vendor/pgn4web/images/uscf/72/wk.png
new file mode 100644
index 0000000..0020adb
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wn.png b/_assets/vendor/pgn4web/images/uscf/72/wn.png
new file mode 100644
index 0000000..5cf0ee3
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wp.png b/_assets/vendor/pgn4web/images/uscf/72/wp.png
new file mode 100644
index 0000000..f7e73de
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wq.png b/_assets/vendor/pgn4web/images/uscf/72/wq.png
new file mode 100644
index 0000000..c0695d1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/72/wr.png b/_assets/vendor/pgn4web/images/uscf/72/wr.png
new file mode 100644
index 0000000..7fb1c47
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/72/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/bb.png b/_assets/vendor/pgn4web/images/uscf/80/bb.png
new file mode 100644
index 0000000..d0d50b7
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/bk.png b/_assets/vendor/pgn4web/images/uscf/80/bk.png
new file mode 100644
index 0000000..6dd74bf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/bn.png b/_assets/vendor/pgn4web/images/uscf/80/bn.png
new file mode 100644
index 0000000..85411d8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/bp.png b/_assets/vendor/pgn4web/images/uscf/80/bp.png
new file mode 100644
index 0000000..a540f01
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/bq.png b/_assets/vendor/pgn4web/images/uscf/80/bq.png
new file mode 100644
index 0000000..43fe8df
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/br.png b/_assets/vendor/pgn4web/images/uscf/80/br.png
new file mode 100644
index 0000000..8d90d68
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/clear.png b/_assets/vendor/pgn4web/images/uscf/80/clear.png
new file mode 100644
index 0000000..8a5c3cf
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/index.html b/_assets/vendor/pgn4web/images/uscf/80/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/80/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wb.png b/_assets/vendor/pgn4web/images/uscf/80/wb.png
new file mode 100644
index 0000000..9e397ef
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wk.png b/_assets/vendor/pgn4web/images/uscf/80/wk.png
new file mode 100644
index 0000000..1862968
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wn.png b/_assets/vendor/pgn4web/images/uscf/80/wn.png
new file mode 100644
index 0000000..642c2c2
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wp.png b/_assets/vendor/pgn4web/images/uscf/80/wp.png
new file mode 100644
index 0000000..6446c11
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wq.png b/_assets/vendor/pgn4web/images/uscf/80/wq.png
new file mode 100644
index 0000000..d8ac631
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/80/wr.png b/_assets/vendor/pgn4web/images/uscf/80/wr.png
new file mode 100644
index 0000000..f481bd8
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/80/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/bb.png b/_assets/vendor/pgn4web/images/uscf/88/bb.png
new file mode 100644
index 0000000..7afb48a
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/bk.png b/_assets/vendor/pgn4web/images/uscf/88/bk.png
new file mode 100644
index 0000000..f9e9280
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/bn.png b/_assets/vendor/pgn4web/images/uscf/88/bn.png
new file mode 100644
index 0000000..6bb722e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/bp.png b/_assets/vendor/pgn4web/images/uscf/88/bp.png
new file mode 100644
index 0000000..df88bd0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/bq.png b/_assets/vendor/pgn4web/images/uscf/88/bq.png
new file mode 100644
index 0000000..5a3df3c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/br.png b/_assets/vendor/pgn4web/images/uscf/88/br.png
new file mode 100644
index 0000000..4c0756f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/clear.png b/_assets/vendor/pgn4web/images/uscf/88/clear.png
new file mode 100644
index 0000000..90499c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/index.html b/_assets/vendor/pgn4web/images/uscf/88/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/88/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wb.png b/_assets/vendor/pgn4web/images/uscf/88/wb.png
new file mode 100644
index 0000000..fdb5207
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wk.png b/_assets/vendor/pgn4web/images/uscf/88/wk.png
new file mode 100644
index 0000000..9c006b1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wn.png b/_assets/vendor/pgn4web/images/uscf/88/wn.png
new file mode 100644
index 0000000..e8101dd
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wp.png b/_assets/vendor/pgn4web/images/uscf/88/wp.png
new file mode 100644
index 0000000..d0ca37b
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wq.png b/_assets/vendor/pgn4web/images/uscf/88/wq.png
new file mode 100644
index 0000000..34b300d
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/88/wr.png b/_assets/vendor/pgn4web/images/uscf/88/wr.png
new file mode 100644
index 0000000..b16922f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/88/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/bb.png b/_assets/vendor/pgn4web/images/uscf/96/bb.png
new file mode 100644
index 0000000..490f3a9
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/bb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/bk.png b/_assets/vendor/pgn4web/images/uscf/96/bk.png
new file mode 100644
index 0000000..67d71db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/bk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/bn.png b/_assets/vendor/pgn4web/images/uscf/96/bn.png
new file mode 100644
index 0000000..1d802f1
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/bn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/bp.png b/_assets/vendor/pgn4web/images/uscf/96/bp.png
new file mode 100644
index 0000000..0eff471
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/bp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/bq.png b/_assets/vendor/pgn4web/images/uscf/96/bq.png
new file mode 100644
index 0000000..13d0d75
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/bq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/br.png b/_assets/vendor/pgn4web/images/uscf/96/br.png
new file mode 100644
index 0000000..793a1d0
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/br.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/clear.png b/_assets/vendor/pgn4web/images/uscf/96/clear.png
new file mode 100644
index 0000000..3a462db
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/clear.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/index.html b/_assets/vendor/pgn4web/images/uscf/96/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/96/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wb.png b/_assets/vendor/pgn4web/images/uscf/96/wb.png
new file mode 100644
index 0000000..648183c
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wk.png b/_assets/vendor/pgn4web/images/uscf/96/wk.png
new file mode 100644
index 0000000..cf0702f
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wn.png b/_assets/vendor/pgn4web/images/uscf/96/wn.png
new file mode 100644
index 0000000..b854036
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wp.png b/_assets/vendor/pgn4web/images/uscf/96/wp.png
new file mode 100644
index 0000000..e8f587e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wq.png b/_assets/vendor/pgn4web/images/uscf/96/wq.png
new file mode 100644
index 0000000..36e5128
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/96/wr.png b/_assets/vendor/pgn4web/images/uscf/96/wr.png
new file mode 100644
index 0000000..da74238
Binary files /dev/null and b/_assets/vendor/pgn4web/images/uscf/96/wr.png differ
diff --git a/_assets/vendor/pgn4web/images/uscf/README.txt b/_assets/vendor/pgn4web/images/uscf/README.txt
new file mode 100644
index 0000000..c1c29e4
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/README.txt
@@ -0,0 +1,3 @@
+Chess images from http://ixian.com/chess/jin-piece-sets/ by Eric De Mund.
+Licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.
+http://creativecommons.org/licenses/by-sa/3.0/
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/images/uscf/index.html b/_assets/vendor/pgn4web/images/uscf/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/images/uscf/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/images/wb.png b/_assets/vendor/pgn4web/images/wb.png
new file mode 100644
index 0000000..67b0c7e
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wb.png differ
diff --git a/_assets/vendor/pgn4web/images/wk.png b/_assets/vendor/pgn4web/images/wk.png
new file mode 100644
index 0000000..95098c5
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wk.png differ
diff --git a/_assets/vendor/pgn4web/images/wn.png b/_assets/vendor/pgn4web/images/wn.png
new file mode 100644
index 0000000..2cc3dfa
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wn.png differ
diff --git a/_assets/vendor/pgn4web/images/wp.png b/_assets/vendor/pgn4web/images/wp.png
new file mode 100644
index 0000000..2443459
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wp.png differ
diff --git a/_assets/vendor/pgn4web/images/wq.png b/_assets/vendor/pgn4web/images/wq.png
new file mode 100644
index 0000000..d151712
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wq.png differ
diff --git a/_assets/vendor/pgn4web/images/wr.png b/_assets/vendor/pgn4web/images/wr.png
new file mode 100644
index 0000000..b83fb71
Binary files /dev/null and b/_assets/vendor/pgn4web/images/wr.png differ
diff --git a/_assets/vendor/pgn4web/index.html b/_assets/vendor/pgn4web/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/inputform.css b/_assets/vendor/pgn4web/inputform.css
new file mode 100644
index 0000000..274a967
--- /dev/null
+++ b/_assets/vendor/pgn4web/inputform.css
@@ -0,0 +1,154 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ padding: 5px;
+ font-family: sans-serif;
+ font-size: 14px;
+ color: #909090;
+ background: transparent;
+}
+
+a {
+ color: #909090;
+ text-decoration: none;
+}
+
+input, select {
+ -webkit-appearance: none;
+ border-radius: 0px;
+ color: #909090;
+}
+
+textarea, option {
+ color: #606060;
+}
+
+.boardTable {
+ width: 272px;
+ height: 272px;
+}
+
+.pieceImage {
+ width: 26px;
+ height: 26px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 34px;
+ height: 34px;
+ border-style: none;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ background: #E8E8E8;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ background: #C2C9D1;
+}
+
+.whiteSquare {
+ border-color: #E8E8E8;
+}
+
+.blackSquare {
+ border-color: #C2C9D1;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+}
+
+.pgnSubmit,
+.selectControl,
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ font-weight: bold;
+ font-size: 14px;
+ height: 21px;
+ border-style: none;
+ background-color: #E8E8E8;
+ padding: 5px;
+}
+
+.pgnSubmit {
+ text-decoration: none;
+ padding: 2px;
+}
+
+.selectControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 100% !important;
+}
+
+.optionSelectControl {
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+ background-color: #E8E8E8;
+}
+
+.searchPgnButton {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.move,
+.variation,
+.comment {
+ font-size: 14px;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.move {
+}
+
+a.move {
+}
+
+.comment,
+.variation {
+}
+
+a.variation {
+}
+
+.moveOn,
+.variationOn {
+}
+
+.pgnheader {
+ padding-left: 30px;
+ line-height: 21px;
+ font-size: 14px;
+ font-weight: bold;
+ white-space: nowrap;
+}
+
diff --git a/_assets/vendor/pgn4web/inputform.html b/_assets/vendor/pgn4web/inputform.html
new file mode 100644
index 0000000..b1db781
--- /dev/null
+++ b/_assets/vendor/pgn4web/inputform.html
@@ -0,0 +1,143 @@
+
+
+
+
+
+
+
+Basic PGN viewer form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { enter PGN data here }
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/libs/README.txt b/_assets/vendor/pgn4web/libs/README.txt
new file mode 100644
index 0000000..41fd9f3
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/README.txt
@@ -0,0 +1,3 @@
+The libs folder contains third party libraries used by the pgn4web pages.
+Please refer to the readme and license files in each subfolder for more
+information on each library.
diff --git a/_assets/vendor/pgn4web/libs/garbochess/LICENSE.txt b/_assets/vendor/pgn4web/libs/garbochess/LICENSE.txt
new file mode 100644
index 0000000..3b1d644
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/garbochess/LICENSE.txt
@@ -0,0 +1,24 @@
+Copyright (c) 2011 Gary Linscott
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+3. The name of the author may not be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/_assets/vendor/pgn4web/libs/garbochess/README.txt b/_assets/vendor/pgn4web/libs/garbochess/README.txt
new file mode 100644
index 0000000..ef0dde6
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/garbochess/README.txt
@@ -0,0 +1,13 @@
+THE GARBOCHESS CHESS ENGINE
+
+GarboChess is a javascript chess engine licensed by Gary Linscott under BSD
+license, see LICENSE file.
+
+Homepage: http://forwardcoding.com/projects/ajaxchess/chess.html
+Repository: https://github.com/glinscott/Garbochess-JS/
+
+
+IMPLEMENTATION NOTES
+
+Please note that GarboChess is processor intensive; in order to optimize
+computing resources, the analysis of each board is limited to a short time.
diff --git a/_assets/vendor/pgn4web/libs/garbochess/garbochess.js b/_assets/vendor/pgn4web/libs/garbochess/garbochess.js
new file mode 100644
index 0000000..19fa243
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/garbochess/garbochess.js
@@ -0,0 +1,2520 @@
+// garbochess.js code as of 2012-12-24
+// from the garbochess repository https://github.com/glinscott/Garbochess-JS/
+// See README.txt for more info including full credits and license.
+// Changes to the orginal code, if any, are marked with the "pgn4web" tag.
+
+"use strict";
+
+// Perf TODO:
+// Merge material updating with psq values
+// Put move scoring inline in generator
+// Remove need for fliptable in psq tables. Access them by color
+// Optimize pawn move generation
+
+// Non-perf todo:
+// Checks in first q?
+// Pawn eval.
+// Better king evaluation
+// Better move sorting in PV nodes (especially root)
+
+var g_debug = true;
+var g_timeout = 40;
+
+function GetFen(){
+ var result = "";
+ for (var row = 0; row < 8; row++) {
+ if (row != 0)
+ result += '/';
+ var empty = 0;
+ for (var col = 0; col < 8; col++) {
+ var piece = g_board[((row + 2) << 4) + col + 4];
+ if (piece == 0) {
+ empty++;
+ }
+ else {
+ if (empty != 0)
+ result += empty;
+ empty = 0;
+
+ var pieceChar = [" ", "p", "n", "b", "r", "q", "k", " "][(piece & 0x7)];
+ result += ((piece & colorWhite) != 0) ? pieceChar.toUpperCase() : pieceChar;
+ }
+ }
+ if (empty != 0) {
+ result += empty;
+ }
+ }
+
+ result += g_toMove == colorWhite ? " w" : " b";
+ result += " ";
+ if (g_castleRights == 0) {
+ result += "-";
+ }
+ else {
+ if ((g_castleRights & 1) != 0)
+ result += "K";
+ if ((g_castleRights & 2) != 0)
+ result += "Q";
+ if ((g_castleRights & 4) != 0)
+ result += "k";
+ if ((g_castleRights & 8) != 0)
+ result += "q";
+ }
+
+ result += " ";
+
+ if (g_enPassentSquare == -1) {
+ result += '-';
+ }
+ else {
+ result += FormatSquare(g_enPassentSquare);
+ }
+
+ return result;
+}
+
+function GetMoveSAN(move, validMoves) {
+ var from = move & 0xFF;
+ var to = (move >> 8) & 0xFF;
+
+ if (move & moveflagCastleKing) return "O-O";
+ if (move & moveflagCastleQueen) return "O-O-O";
+
+ var pieceType = g_board[from] & 0x7;
+ var result = ["", "", "N", "B", "R", "Q", "K", ""][pieceType];
+
+ var dupe = false, rowDiff = true, colDiff = true;
+ if (validMoves == null) {
+ validMoves = GenerateValidMoves();
+ }
+ for (var i = 0; i < validMoves.length; i++) {
+ var moveFrom = validMoves[i] & 0xFF;
+ var moveTo = (validMoves[i] >> 8) & 0xFF;
+ if (moveFrom != from &&
+ moveTo == to &&
+ (g_board[moveFrom] & 0x7) == pieceType) {
+ dupe = true;
+ if ((moveFrom & 0xF0) == (from & 0xF0)) {
+ rowDiff = false;
+ }
+ if ((moveFrom & 0x0F) == (from & 0x0F)) {
+ colDiff = false;
+ }
+ }
+ }
+
+ if (dupe) {
+ if (colDiff) {
+ result += FormatSquare(from).charAt(0);
+ } else if (rowDiff) {
+ result += FormatSquare(from).charAt(1);
+ } else {
+ result += FormatSquare(from);
+ }
+ } else if (pieceType == piecePawn && (g_board[to] != 0 || (move & moveflagEPC))) {
+ result += FormatSquare(from).charAt(0);
+ }
+
+ if (g_board[to] != 0 || (move & moveflagEPC)) {
+ result += "x";
+ }
+
+ result += FormatSquare(to);
+
+ if (move & moveflagPromotion) {
+ if (move & moveflagPromoteBishop) result += "=B";
+ else if (move & moveflagPromoteKnight) result += "=N";
+ else if (move & moveflagPromoteQueen) result += "=Q";
+ else result += "=R";
+ }
+
+ MakeMove(move);
+ if (g_inCheck) {
+ result += GenerateValidMoves().length == 0 ? "#" : "+";
+ }
+ UnmakeMove(move);
+
+ return result;
+}
+
+function FormatSquare(square) {
+ var letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'];
+ return letters[(square & 0xF) - 4] + ((9 - (square >> 4)) + 1);
+}
+
+function FormatMove(move) {
+ var result = FormatSquare(move & 0xFF) + FormatSquare((move >> 8) & 0xFF);
+ if (move & moveflagPromotion) {
+ if (move & moveflagPromoteBishop) result += "b";
+ else if (move & moveflagPromoteKnight) result += "n";
+ else if (move & moveflagPromoteQueen) result += "q";
+ else result += "r";
+ }
+ return result;
+}
+
+function GetMoveFromString(moveString) {
+ var moves = GenerateValidMoves();
+ for (var i = 0; i < moves.length; i++) {
+ if (FormatMove(moves[i]) == moveString) {
+ return moves[i];
+ }
+ }
+ alert("busted! ->" + moveString + " fen:" + GetFen());
+}
+
+function PVFromHash(move, ply) {
+ if (ply == 0)
+ return "";
+
+ if (move == 0) {
+ if (g_inCheck) return "checkmate";
+ return "stalemate";
+ }
+
+ var pvString = " " + GetMoveSAN(move);
+ MakeMove(move);
+
+ var hashNode = g_hashTable[g_hashKeyLow & g_hashMask];
+ if (hashNode != null && hashNode.lock == g_hashKeyHigh && hashNode.bestMove != null) {
+ pvString += PVFromHash(hashNode.bestMove, ply - 1);
+ }
+
+ UnmakeMove(move);
+
+ return pvString;
+}
+
+//
+// Searching code
+//
+
+var g_startTime;
+
+var g_nodeCount;
+var g_qNodeCount;
+var g_searchValid;
+var g_globalPly = 0;
+
+function Search(finishMoveCallback, maxPly, finishPlyCallback) {
+ var lastEval;
+ var alpha = minEval;
+ var beta = maxEval;
+
+ g_globalPly++;
+ g_nodeCount = 0;
+ g_qNodeCount = 0;
+ g_searchValid = true;
+
+ var bestMove = 0;
+ var value;
+
+ g_startTime = (new Date()).getTime();
+
+ var i;
+ for (i = 1; i <= maxPly && g_searchValid; i++) {
+ var tmp = AlphaBeta(i, 0, alpha, beta);
+ if (!g_searchValid) break;
+
+ value = tmp;
+
+ if (value > alpha && value < beta) {
+ alpha = value - 500;
+ beta = value + 500;
+
+ if (alpha < minEval) alpha = minEval;
+ if (beta > maxEval) beta = maxEval;
+ } else if (alpha != minEval) {
+ alpha = minEval;
+ beta = maxEval;
+ i--;
+ }
+
+ if (g_hashTable[g_hashKeyLow & g_hashMask] != null) {
+ bestMove = g_hashTable[g_hashKeyLow & g_hashMask].bestMove;
+ }
+
+ if (finishPlyCallback != null) {
+ finishPlyCallback(bestMove, value, (new Date()).getTime() - g_startTime, i);
+ }
+ }
+
+ if (finishMoveCallback != null) {
+ finishMoveCallback(bestMove, value, (new Date()).getTime() - g_startTime, i - 1);
+ }
+}
+
+var minEval = -2000000;
+var maxEval = +2000000;
+
+var minMateBuffer = minEval + 2000;
+var maxMateBuffer = maxEval - 2000;
+
+var materialTable = [0, 800, 3350, 3450, 5000, 9750, 600000];
+
+var pawnAdj =
+[
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ -25, 105, 135, 270, 270, 135, 105, -25,
+ -80, 0, 30, 176, 176, 30, 0, -80,
+ -85, -5, 25, 175, 175, 25, -5, -85,
+ -90, -10, 20, 125, 125, 20, -10, -90,
+ -95, -15, 15, 75, 75, 15, -15, -95,
+ -100, -20, 10, 70, 70, 10, -20, -100,
+ 0, 0, 0, 0, 0, 0, 0, 0
+];
+
+var knightAdj =
+ [-200, -100, -50, -50, -50, -50, -100, -200,
+ -100, 0, 0, 0, 0, 0, 0, -100,
+ -50, 0, 60, 60, 60, 60, 0, -50,
+ -50, 0, 30, 60, 60, 30, 0, -50,
+ -50, 0, 30, 60, 60, 30, 0, -50,
+ -50, 0, 30, 30, 30, 30, 0, -50,
+ -100, 0, 0, 0, 0, 0, 0, -100,
+ -200, -50, -25, -25, -25, -25, -50, -200
+ ];
+
+var bishopAdj =
+ [ -50,-50,-25,-10,-10,-25,-50,-50,
+ -50,-25,-10, 0, 0,-10,-25,-50,
+ -25,-10, 0, 25, 25, 0,-10,-25,
+ -10, 0, 25, 40, 40, 25, 0,-10,
+ -10, 0, 25, 40, 40, 25, 0,-10,
+ -25,-10, 0, 25, 25, 0,-10,-25,
+ -50,-25,-10, 0, 0,-10,-25,-50,
+ -50,-50,-25,-10,-10,-25,-50,-50
+ ];
+
+var rookAdj =
+ [ -60, -30, -10, 20, 20, -10, -30, -60,
+ 40, 70, 90,120,120, 90, 70, 40,
+ -60, -30, -10, 20, 20, -10, -30, -60,
+ -60, -30, -10, 20, 20, -10, -30, -60,
+ -60, -30, -10, 20, 20, -10, -30, -60,
+ -60, -30, -10, 20, 20, -10, -30, -60,
+ -60, -30, -10, 20, 20, -10, -30, -60,
+ -60, -30, -10, 20, 20, -10, -30, -60
+ ];
+
+var kingAdj =
+ [ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 50, 150, -25, -125, -125, -25, 150, 50,
+ 150, 250, 75, -25, -25, 75, 250, 150
+ ];
+
+var emptyAdj =
+ [0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ ];
+
+var pieceSquareAdj = new Array(8);
+
+// Returns the square flipped
+var flipTable = new Array(256);
+
+function PawnEval(color) {
+ var pieceIdx = (color | 1) << 4;
+ var from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ from = g_pieceList[pieceIdx++];
+ }
+}
+
+function Mobility(color) {
+ var result = 0;
+ var from, to, mob, pieceIdx;
+ var enemy = color == 8 ? 0x10 : 0x8
+ var mobUnit = color == 8 ? g_mobUnit[0] : g_mobUnit[1];
+
+ // Knight mobility
+ mob = -3;
+ pieceIdx = (color | 2) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ mob += mobUnit[g_board[from + 31]];
+ mob += mobUnit[g_board[from + 33]];
+ mob += mobUnit[g_board[from + 14]];
+ mob += mobUnit[g_board[from - 14]];
+ mob += mobUnit[g_board[from - 31]];
+ mob += mobUnit[g_board[from - 33]];
+ mob += mobUnit[g_board[from + 18]];
+ mob += mobUnit[g_board[from - 18]];
+ from = g_pieceList[pieceIdx++];
+ }
+ result += 65 * mob;
+
+ // Bishop mobility
+ mob = -4;
+ pieceIdx = (color | 3) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 15; while (g_board[to] == 0) { to -= 15; mob++; }
+ if (g_board[to] & enemy) {
+ mob++;
+ if (!(g_board[to] & piecePawn)) {
+ to -= 15; while (g_board[to] == 0) to -= 15;
+ mob += mobUnit[g_board[to]] << 2;
+ }
+ }
+
+ to = from - 17; while (g_board[to] == 0) { to -= 17; mob++; }
+ if (g_board[to] & enemy) {
+ mob++;
+ if (!(g_board[to] & piecePawn)) {
+ to -= 17; while (g_board[to] == 0) to -= 17;
+ mob += mobUnit[g_board[to]] << 2;
+ }
+ }
+
+ to = from + 15; while (g_board[to] == 0) { to += 15; mob++; }
+ if (g_board[to] & enemy) {
+ mob++;
+ if (!(g_board[to] & piecePawn)) {
+ to += 15; while (g_board[to] == 0) to += 15;
+ mob += mobUnit[g_board[to]] << 2;
+ }
+ }
+
+ to = from + 17; while (g_board[to] == 0) { to += 17; mob++; }
+ if (g_board[to] & enemy) {
+ mob++;
+ if (!(g_board[to] & piecePawn)) {
+ to += 17; while (g_board[to] == 0) to += 17;
+ mob += mobUnit[g_board[to]] << 2;
+ }
+ }
+
+ from = g_pieceList[pieceIdx++];
+ }
+ result += 44 * mob;
+
+ // Rook mobility
+ mob = -4;
+ pieceIdx = (color | 4) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 1; while (g_board[to] == 0) { to--; mob++;} if (g_board[to] & enemy) mob++;
+ to = from + 1; while (g_board[to] == 0) { to++; mob++; } if (g_board[to] & enemy) mob++;
+ to = from + 16; while (g_board[to] == 0) { to += 16; mob++; } if (g_board[to] & enemy) mob++;
+ to = from - 16; while (g_board[to] == 0) { to -= 16; mob++; } if (g_board[to] & enemy) mob++;
+ from = g_pieceList[pieceIdx++];
+ }
+ result += 25 * mob;
+
+ // Queen mobility
+ mob = -2;
+ pieceIdx = (color | 5) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 15; while (g_board[to] == 0) { to -= 15; mob++; } if (g_board[to] & enemy) mob++;
+ to = from - 17; while (g_board[to] == 0) { to -= 17; mob++; } if (g_board[to] & enemy) mob++;
+ to = from + 15; while (g_board[to] == 0) { to += 15; mob++; } if (g_board[to] & enemy) mob++;
+ to = from + 17; while (g_board[to] == 0) { to += 17; mob++; } if (g_board[to] & enemy) mob++;
+ to = from - 1; while (g_board[to] == 0) { to--; mob++; } if (g_board[to] & enemy) mob++;
+ to = from + 1; while (g_board[to] == 0) { to++; mob++; } if (g_board[to] & enemy) mob++;
+ to = from + 16; while (g_board[to] == 0) { to += 16; mob++; } if (g_board[to] & enemy) mob++;
+ to = from - 16; while (g_board[to] == 0) { to -= 16; mob++; } if (g_board[to] & enemy) mob++;
+ from = g_pieceList[pieceIdx++];
+ }
+ result += 22 * mob;
+
+ return result;
+}
+
+function Evaluate() {
+ var curEval = g_baseEval;
+
+ var evalAdjust = 0;
+ // Black queen gone, then cancel white's penalty for king movement
+ if (g_pieceList[pieceQueen << 4] == 0)
+ evalAdjust -= pieceSquareAdj[pieceKing][g_pieceList[(colorWhite | pieceKing) << 4]];
+ // White queen gone, then cancel black's penalty for king movement
+ if (g_pieceList[(colorWhite | pieceQueen) << 4] == 0)
+ evalAdjust += pieceSquareAdj[pieceKing][flipTable[g_pieceList[pieceKing << 4]]];
+
+ // Black bishop pair
+ if (g_pieceCount[pieceBishop] >= 2)
+ evalAdjust -= 500;
+ // White bishop pair
+ if (g_pieceCount[pieceBishop | colorWhite] >= 2)
+ evalAdjust += 500;
+
+ var mobility = Mobility(8) - Mobility(0);
+
+ if (g_toMove == 0) {
+ // Black
+ curEval -= mobility;
+ curEval -= evalAdjust;
+ }
+ else {
+ curEval += mobility;
+ curEval += evalAdjust;
+ }
+
+ return curEval;
+}
+
+function ScoreMove(move){
+ var moveTo = (move >> 8) & 0xFF;
+ var captured = g_board[moveTo] & 0x7;
+ var piece = g_board[move & 0xFF];
+ var score;
+ if (captured != 0) {
+ var pieceType = piece & 0x7;
+ score = (captured << 5) - pieceType;
+ } else {
+ score = historyTable[piece & 0xF][moveTo];
+ }
+ return score;
+}
+
+function QSearch(alpha, beta, ply) {
+ g_qNodeCount++;
+
+ var realEval = g_inCheck ? (minEval + 1) : Evaluate();
+
+ if (realEval >= beta)
+ return realEval;
+
+ if (realEval > alpha)
+ alpha = realEval;
+
+ var moves = new Array();
+ var moveScores = new Array();
+ var wasInCheck = g_inCheck;
+
+ if (wasInCheck) {
+ // TODO: Fast check escape generator and fast checking moves generator
+ GenerateCaptureMoves(moves, null);
+ GenerateAllMoves(moves);
+
+ for (var i = 0; i < moves.length; i++) {
+ moveScores[i] = ScoreMove(moves[i]);
+ }
+ } else {
+ GenerateCaptureMoves(moves, null);
+
+ for (var i = 0; i < moves.length; i++) {
+ var captured = g_board[(moves[i] >> 8) & 0xFF] & 0x7;
+ var pieceType = g_board[moves[i] & 0xFF] & 0x7;
+
+ moveScores[i] = (captured << 5) - pieceType;
+ }
+ }
+
+ for (var i = 0; i < moves.length; i++) {
+ var bestMove = i;
+ for (var j = moves.length - 1; j > i; j--) {
+ if (moveScores[j] > moveScores[bestMove]) {
+ bestMove = j;
+ }
+ }
+ {
+ var tmpMove = moves[i];
+ moves[i] = moves[bestMove];
+ moves[bestMove] = tmpMove;
+
+ var tmpScore = moveScores[i];
+ moveScores[i] = moveScores[bestMove];
+ moveScores[bestMove] = tmpScore;
+ }
+
+ if (!wasInCheck && !See(moves[i])) {
+ continue;
+ }
+
+ if (!MakeMove(moves[i])) {
+ continue;
+ }
+
+ var value = -QSearch(-beta, -alpha, ply - 1);
+
+ UnmakeMove(moves[i]);
+
+ if (value > realEval) {
+ if (value >= beta)
+ return value;
+
+ if (value > alpha)
+ alpha = value;
+
+ realEval = value;
+ }
+ }
+
+ /* Disable checks... Too slow currently
+
+ if (ply == 0 && !wasInCheck) {
+ moves = new Array();
+ GenerateAllMoves(moves);
+
+ for (var i = 0; i < moves.length; i++) {
+ moveScores[i] = ScoreMove(moves[i]);
+ }
+
+ for (var i = 0; i < moves.length; i++) {
+ var bestMove = i;
+ for (var j = moves.length - 1; j > i; j--) {
+ if (moveScores[j] > moveScores[bestMove]) {
+ bestMove = j;
+ }
+ }
+ {
+ var tmpMove = moves[i];
+ moves[i] = moves[bestMove];
+ moves[bestMove] = tmpMove;
+
+ var tmpScore = moveScores[i];
+ moveScores[i] = moveScores[bestMove];
+ moveScores[bestMove] = tmpScore;
+ }
+
+ if (!MakeMove(moves[i])) {
+ continue;
+ }
+ var checking = g_inCheck;
+ UnmakeMove(moves[i]);
+
+ if (!checking) {
+ continue;
+ }
+
+ if (!See(moves[i])) {
+ continue;
+ }
+
+ MakeMove(moves[i]);
+
+ var value = -QSearch(-beta, -alpha, ply - 1);
+
+ UnmakeMove(moves[i]);
+
+ if (value > realEval) {
+ if (value >= beta)
+ return value;
+
+ if (value > alpha)
+ alpha = value;
+
+ realEval = value;
+ }
+ }
+ }
+ */
+
+ return realEval;
+}
+
+function StoreHash(value, flags, ply, move, depth) {
+ if (value >= maxMateBuffer)
+ value += depth;
+ else if (value <= minMateBuffer)
+ value -= depth;
+ g_hashTable[g_hashKeyLow & g_hashMask] = new HashEntry(g_hashKeyHigh, value, flags, ply, move);
+}
+
+function IsHashMoveValid(hashMove) {
+ var from = hashMove & 0xFF;
+ var to = (hashMove >> 8) & 0xFF;
+ var ourPiece = g_board[from];
+ var pieceType = ourPiece & 0x7;
+ if (pieceType < piecePawn || pieceType > pieceKing) return false;
+ // Can't move a piece we don't control
+ if (g_toMove != (ourPiece & 0x8))
+ return false;
+ // Can't move to a square that has something of the same color
+ if (g_board[to] != 0 && (g_toMove == (g_board[to] & 0x8)))
+ return false;
+ if (pieceType == piecePawn) {
+ if (hashMove & moveflagEPC) {
+ return false;
+ }
+
+ // Valid moves are push, capture, double push, promotions
+ var dir = to - from;
+ if ((g_toMove == colorWhite) != (dir < 0)) {
+ // Pawns have to move in the right direction
+ return false;
+ }
+
+ var row = to & 0xF0;
+ if (((row == 0x90 && !g_toMove) ||
+ (row == 0x20 && g_toMove)) != (hashMove & moveflagPromotion)) {
+ // Handle promotions
+ return false;
+ }
+
+ if (dir == -16 || dir == 16) {
+ // White/Black push
+ return g_board[to] == 0;
+ } else if (dir == -15 || dir == -17 || dir == 15 || dir == 17) {
+ // White/Black capture
+ return g_board[to] != 0;
+ } else if (dir == -32) {
+ // Double white push
+ if (row != 0x60) return false;
+ if (g_board[to] != 0) return false;
+ if (g_board[from - 16] != 0) return false;
+ } else if (dir == 32) {
+ // Double black push
+ if (row != 0x50) return false;
+ if (g_board[to] != 0) return false;
+ if (g_board[from + 16] != 0) return false;
+ } else {
+ return false;
+ }
+
+ return true;
+ } else {
+ // This validates that this piece type can actually make the attack
+ if (hashMove >> 16) return false;
+ return IsSquareAttackableFrom(to, from);
+ }
+}
+
+function IsRepDraw() {
+ var stop = g_moveCount - 1 - g_move50;
+ stop = stop < 0 ? 0 : stop;
+ for (var i = g_moveCount - 5; i >= stop; i -= 2) {
+ if (g_repMoveStack[i] == g_hashKeyLow)
+ return true;
+ }
+ return false;
+}
+
+function MovePicker(hashMove, depth, killer1, killer2) {
+ this.hashMove = hashMove;
+ this.depth = depth;
+ this.killer1 = killer1;
+ this.killer2 = killer2;
+
+ this.moves = new Array();
+ this.losingCaptures = null;
+ this.moveCount = 0;
+ this.atMove = -1;
+ this.moveScores = null;
+ this.stage = 0;
+
+ this.nextMove = function () {
+ if (++this.atMove == this.moveCount) {
+ this.stage++;
+ if (this.stage == 1) {
+ if (this.hashMove != null && IsHashMoveValid(hashMove)) {
+ this.moves[0] = hashMove;
+ this.moveCount = 1;
+ }
+ if (this.moveCount != 1) {
+ this.hashMove = null;
+ this.stage++;
+ }
+ }
+
+ if (this.stage == 2) {
+ GenerateCaptureMoves(this.moves, null);
+ this.moveCount = this.moves.length;
+ this.moveScores = new Array(this.moveCount);
+ // Move ordering
+ for (var i = this.atMove; i < this.moveCount; i++) {
+ var captured = g_board[(this.moves[i] >> 8) & 0xFF] & 0x7;
+ var pieceType = g_board[this.moves[i] & 0xFF] & 0x7;
+ this.moveScores[i] = (captured << 5) - pieceType;
+ }
+ // No moves, onto next stage
+ if (this.atMove == this.moveCount) this.stage++;
+ }
+
+ if (this.stage == 3) {
+ if (IsHashMoveValid(this.killer1) &&
+ this.killer1 != this.hashMove) {
+ this.moves[this.moves.length] = this.killer1;
+ this.moveCount = this.moves.length;
+ } else {
+ this.killer1 = 0;
+ this.stage++;
+ }
+ }
+
+ if (this.stage == 4) {
+ if (IsHashMoveValid(this.killer2) &&
+ this.killer2 != this.hashMove) {
+ this.moves[this.moves.length] = this.killer2;
+ this.moveCount = this.moves.length;
+ } else {
+ this.killer2 = 0;
+ this.stage++;
+ }
+ }
+
+ if (this.stage == 5) {
+ GenerateAllMoves(this.moves);
+ this.moveCount = this.moves.length;
+ // Move ordering
+ for (var i = this.atMove; i < this.moveCount; i++) this.moveScores[i] = ScoreMove(this.moves[i]);
+ // No moves, onto next stage
+ if (this.atMove == this.moveCount) this.stage++;
+ }
+
+ if (this.stage == 6) {
+ // Losing captures
+ if (this.losingCaptures != null) {
+ for (var i = 0; i < this.losingCaptures.length; i++) {
+ this.moves[this.moves.length] = this.losingCaptures[i];
+ }
+ for (var i = this.atMove; i < this.moveCount; i++) this.moveScores[i] = ScoreMove(this.moves[i]);
+ this.moveCount = this.moves.length;
+ }
+ // No moves, onto next stage
+ if (this.atMove == this.moveCount) this.stage++;
+ }
+
+ if (this.stage == 7)
+ return 0;
+ }
+
+ var bestMove = this.atMove;
+ for (var j = this.atMove + 1; j < this.moveCount; j++) {
+ if (this.moveScores[j] > this.moveScores[bestMove]) {
+ bestMove = j;
+ }
+ }
+
+ if (bestMove != this.atMove) {
+ var tmpMove = this.moves[this.atMove];
+ this.moves[this.atMove] = this.moves[bestMove];
+ this.moves[bestMove] = tmpMove;
+
+ var tmpScore = this.moveScores[this.atMove];
+ this.moveScores[this.atMove] = this.moveScores[bestMove];
+ this.moveScores[bestMove] = tmpScore;
+ }
+
+ var candidateMove = this.moves[this.atMove];
+ if ((this.stage > 1 && candidateMove == this.hashMove) ||
+ (this.stage > 3 && candidateMove == this.killer1) ||
+ (this.stage > 4 && candidateMove == this.killer2)) {
+ return this.nextMove();
+ }
+
+ if (this.stage == 2 && !See(candidateMove)) {
+ if (this.losingCaptures == null) {
+ this.losingCaptures = new Array();
+ }
+ this.losingCaptures[this.losingCaptures.length] = candidateMove;
+ return this.nextMove();
+ }
+
+ return this.moves[this.atMove];
+ }
+}
+
+function AllCutNode(ply, depth, beta, allowNull) {
+ if (ply <= 0) {
+ return QSearch(beta - 1, beta, 0);
+ }
+
+ if ((g_nodeCount & 127) == 127) {
+ if ((new Date()).getTime() - g_startTime > g_timeout) {
+ // Time cutoff
+ g_searchValid = false;
+ return beta - 1;
+ }
+ }
+
+ g_nodeCount++;
+
+ if (IsRepDraw())
+ return 0;
+
+ // Mate distance pruning
+ if (minEval + depth >= beta)
+ return beta;
+
+ if (maxEval - (depth + 1) < beta)
+ return beta - 1;
+
+ var hashMove = null;
+ var hashNode = g_hashTable[g_hashKeyLow & g_hashMask];
+ if (hashNode != null && hashNode.lock == g_hashKeyHigh) {
+ hashMove = hashNode.bestMove;
+ if (hashNode.hashDepth >= ply) {
+ var hashValue = hashNode.value;
+
+ // Fixup mate scores
+ if (hashValue >= maxMateBuffer)
+ hashValue -= depth;
+ else if (hashValue <= minMateBuffer)
+ hashValue += depth;
+
+ if (hashNode.flags == hashflagExact)
+ return hashValue;
+ if (hashNode.flags == hashflagAlpha && hashValue < beta)
+ return hashValue;
+ if (hashNode.flags == hashflagBeta && hashValue >= beta)
+ return hashValue;
+ }
+ }
+
+ // TODO - positional gain?
+
+ if (!g_inCheck &&
+ allowNull &&
+ beta > minMateBuffer &&
+ beta < maxMateBuffer) {
+ // Try some razoring
+ if (hashMove == null &&
+ ply < 4) {
+ var razorMargin = 2500 + 200 * ply;
+ if (g_baseEval < beta - razorMargin) {
+ var razorBeta = beta - razorMargin;
+ var v = QSearch(razorBeta - 1, razorBeta, 0);
+ if (v < razorBeta)
+ return v;
+ }
+ }
+
+ // TODO - static null move
+
+ // Null move
+ if (ply > 1 &&
+ g_baseEval >= beta - (ply >= 4 ? 2500 : 0) &&
+ // Disable null move if potential zugzwang (no big pieces)
+ (g_pieceCount[pieceBishop | g_toMove] != 0 ||
+ g_pieceCount[pieceKnight | g_toMove] != 0 ||
+ g_pieceCount[pieceRook | g_toMove] != 0 ||
+ g_pieceCount[pieceQueen | g_toMove] != 0)) {
+ var r = 3 + (ply >= 5 ? 1 : ply / 4);
+ if (g_baseEval - beta > 1500) r++;
+
+ g_toMove = 8 - g_toMove;
+ g_baseEval = -g_baseEval;
+ g_hashKeyLow ^= g_zobristBlackLow;
+ g_hashKeyHigh ^= g_zobristBlackHigh;
+
+ var value = -AllCutNode(ply - r, depth + 1, -(beta - 1), false);
+
+ g_hashKeyLow ^= g_zobristBlackLow;
+ g_hashKeyHigh ^= g_zobristBlackHigh;
+ g_toMove = 8 - g_toMove;
+ g_baseEval = -g_baseEval;
+
+ if (value >= beta)
+ return beta;
+ }
+ }
+
+ var moveMade = false;
+ var realEval = minEval - 1;
+ var inCheck = g_inCheck;
+
+ var movePicker = new MovePicker(hashMove, depth, g_killers[depth][0], g_killers[depth][1]);
+
+ for (;;) {
+ var currentMove = movePicker.nextMove();
+ if (currentMove == 0) {
+ break;
+ }
+
+ var plyToSearch = ply - 1;
+
+ if (!MakeMove(currentMove)) {
+ continue;
+ }
+
+ var value;
+ var doFullSearch = true;
+
+ if (g_inCheck) {
+ // Check extensions
+ plyToSearch++;
+ } else {
+ var reduced = plyToSearch - (movePicker.atMove > 14 ? 2 : 1);
+
+ // Futility pruning
+/* if (movePicker.stage == 5 && !inCheck) {
+ if (movePicker.atMove >= (15 + (1 << (5 * ply) >> 2)) &&
+ realEval > minMateBuffer) {
+ UnmakeMove(currentMove);
+ continue;
+ }
+
+ if (ply < 7) {
+ var reducedPly = reduced <= 0 ? 0 : reduced;
+ var futilityValue = -g_baseEval + (900 * (reducedPly + 2)) - (movePicker.atMove * 10);
+ if (futilityValue < beta) {
+ if (futilityValue > realEval) {
+ realEval = futilityValue;
+ }
+ UnmakeMove(currentMove);
+ continue;
+ }
+ }
+ }*/
+
+ // Late move reductions
+ if (movePicker.stage == 5 && movePicker.atMove > 5 && ply >= 3) {
+ value = -AllCutNode(reduced, depth + 1, -(beta - 1), true);
+ doFullSearch = (value >= beta);
+ }
+ }
+
+ if (doFullSearch) {
+ value = -AllCutNode(plyToSearch, depth + 1, -(beta - 1), true);
+ }
+
+ moveMade = true;
+
+ UnmakeMove(currentMove);
+
+ if (!g_searchValid) {
+ return beta - 1;
+ }
+
+ if (value > realEval) {
+ if (value >= beta) {
+ var histTo = (currentMove >> 8) & 0xFF;
+ if (g_board[histTo] == 0) {
+ var histPiece = g_board[currentMove & 0xFF] & 0xF;
+ historyTable[histPiece][histTo] += ply * ply;
+ if (historyTable[histPiece][histTo] > 32767) {
+ historyTable[histPiece][histTo] >>= 1;
+ }
+
+ if (g_killers[depth][0] != currentMove) {
+ g_killers[depth][1] = g_killers[depth][0];
+ g_killers[depth][0] = currentMove;
+ }
+ }
+
+ StoreHash(value, hashflagBeta, ply, currentMove, depth);
+ return value;
+ }
+
+ realEval = value;
+ hashMove = currentMove;
+ }
+ }
+
+ if (!moveMade) {
+ // If we have no valid moves it's either stalemate or checkmate
+ if (g_inCheck)
+ // Checkmate.
+ return minEval + depth;
+ else
+ // Stalemate
+ return 0;
+ }
+
+ StoreHash(realEval, hashflagAlpha, ply, hashMove, depth);
+
+ return realEval;
+}
+
+function AlphaBeta(ply, depth, alpha, beta) {
+ if (ply <= 0) {
+ return QSearch(alpha, beta, 0);
+ }
+
+ g_nodeCount++;
+
+ if (depth > 0 && IsRepDraw())
+ return 0;
+
+ // Mate distance pruning
+ var oldAlpha = alpha;
+ alpha = alpha < minEval + depth ? alpha : minEval + depth;
+ beta = beta > maxEval - (depth + 1) ? beta : maxEval - (depth + 1);
+ if (alpha >= beta)
+ return alpha;
+
+ var hashMove = null;
+ var hashFlag = hashflagAlpha;
+ var hashNode = g_hashTable[g_hashKeyLow & g_hashMask];
+ if (hashNode != null && hashNode.lock == g_hashKeyHigh) {
+ hashMove = hashNode.bestMove;
+ }
+
+ var inCheck = g_inCheck;
+
+ var moveMade = false;
+ var realEval = minEval;
+
+ var movePicker = new MovePicker(hashMove, depth, g_killers[depth][0], g_killers[depth][1]);
+
+ for (;;) {
+ var currentMove = movePicker.nextMove();
+ if (currentMove == 0) {
+ break;
+ }
+
+ var plyToSearch = ply - 1;
+
+ if (!MakeMove(currentMove)) {
+ continue;
+ }
+
+ if (g_inCheck) {
+ // Check extensions
+ plyToSearch++;
+ }
+
+ var value;
+ if (moveMade) {
+ value = -AllCutNode(plyToSearch, depth + 1, -alpha, true);
+ if (value > alpha) {
+ value = -AlphaBeta(plyToSearch, depth + 1, -beta, -alpha);
+ }
+ } else {
+ value = -AlphaBeta(plyToSearch, depth + 1, -beta, -alpha);
+ }
+
+ moveMade = true;
+
+ UnmakeMove(currentMove);
+
+ if (!g_searchValid) {
+ return alpha;
+ }
+
+ if (value > realEval) {
+ if (value >= beta) {
+ var histTo = (currentMove >> 8) & 0xFF;
+ if (g_board[histTo] == 0) {
+ var histPiece = g_board[currentMove & 0xFF] & 0xF;
+ historyTable[histPiece][histTo] += ply * ply;
+ if (historyTable[histPiece][histTo] > 32767) {
+ historyTable[histPiece][histTo] >>= 1;
+ }
+
+ if (g_killers[depth][0] != currentMove) {
+ g_killers[depth][1] = g_killers[depth][0];
+ g_killers[depth][0] = currentMove;
+ }
+ }
+
+ StoreHash(value, hashflagBeta, ply, currentMove, depth);
+ return value;
+ }
+
+ if (value > oldAlpha) {
+ hashFlag = hashflagExact;
+ alpha = value;
+ }
+
+ realEval = value;
+ hashMove = currentMove;
+ }
+ }
+
+ if (!moveMade) {
+ // If we have no valid moves it's either stalemate or checkmate
+ if (inCheck)
+ // Checkmate.
+ return minEval + depth;
+ else
+ // Stalemate
+ return 0;
+ }
+
+ StoreHash(realEval, hashFlag, ply, hashMove, depth);
+
+ return realEval;
+}
+
+//
+// Board code
+//
+
+// This somewhat funky scheme means that a piece is indexed by it's lower 4 bits when accessing in arrays. The fifth bit (black bit)
+// is used to allow quick edge testing on the board.
+var colorBlack = 0x10;
+var colorWhite = 0x08;
+
+var pieceEmpty = 0x00;
+var piecePawn = 0x01;
+var pieceKnight = 0x02;
+var pieceBishop = 0x03;
+var pieceRook = 0x04;
+var pieceQueen = 0x05;
+var pieceKing = 0x06;
+
+var g_vectorDelta = new Array(256);
+
+var g_bishopDeltas = [-15, -17, 15, 17];
+var g_knightDeltas = [31, 33, 14, -14, -31, -33, 18, -18];
+var g_rookDeltas = [-1, +1, -16, +16];
+var g_queenDeltas = [-1, +1, -15, +15, -17, +17, -16, +16];
+
+var g_castleRightsMask = [
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+0, 0, 0, 0, 7,15,15,15, 3,15,15,11, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,15,15,15,15,15,15,15,15, 0, 0, 0, 0,
+0, 0, 0, 0,13,15,15,15,12,15,15,14, 0, 0, 0, 0,
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
+
+var moveflagEPC = 0x2 << 16;
+var moveflagCastleKing = 0x4 << 16;
+var moveflagCastleQueen = 0x8 << 16;
+var moveflagPromotion = 0x10 << 16;
+var moveflagPromoteKnight = 0x20 << 16;
+var moveflagPromoteQueen = 0x40 << 16;
+var moveflagPromoteBishop = 0x80 << 16;
+
+function MT() {
+ var N = 624;
+ var M = 397;
+ var MAG01 = [0x0, 0x9908b0df];
+
+ this.mt = new Array(N);
+ this.mti = N + 1;
+
+ this.setSeed = function()
+ {
+ var a = arguments;
+ switch (a.length) {
+ case 1:
+ if (a[0].constructor === Number) {
+ this.mt[0]= a[0];
+ for (var i = 1; i < N; ++i) {
+ var s = this.mt[i - 1] ^ (this.mt[i - 1] >>> 30);
+ this.mt[i] = ((1812433253 * ((s & 0xffff0000) >>> 16))
+ << 16)
+ + 1812433253 * (s & 0x0000ffff)
+ + i;
+ }
+ this.mti = N;
+ return;
+ }
+
+ this.setSeed(19650218);
+
+ var l = a[0].length;
+ var i = 1;
+ var j = 0;
+
+ for (var k = N > l ? N : l; k != 0; --k) {
+ var s = this.mt[i - 1] ^ (this.mt[i - 1] >>> 30)
+ this.mt[i] = (this.mt[i]
+ ^ (((1664525 * ((s & 0xffff0000) >>> 16)) << 16)
+ + 1664525 * (s & 0x0000ffff)))
+ + a[0][j]
+ + j;
+ if (++i >= N) {
+ this.mt[0] = this.mt[N - 1];
+ i = 1;
+ }
+ if (++j >= l) {
+ j = 0;
+ }
+ }
+
+ for (var k = N - 1; k != 0; --k) {
+ var s = this.mt[i - 1] ^ (this.mt[i - 1] >>> 30);
+ this.mt[i] = (this.mt[i]
+ ^ (((1566083941 * ((s & 0xffff0000) >>> 16)) << 16)
+ + 1566083941 * (s & 0x0000ffff)))
+ - i;
+ if (++i >= N) {
+ this.mt[0] = this.mt[N-1];
+ i = 1;
+ }
+ }
+
+ this.mt[0] = 0x80000000;
+ return;
+ default:
+ var seeds = new Array();
+ for (var i = 0; i < a.length; ++i) {
+ seeds.push(a[i]);
+ }
+ this.setSeed(seeds);
+ return;
+ }
+ }
+
+ this.setSeed(0x1BADF00D);
+
+ this.next = function (bits)
+ {
+ if (this.mti >= N) {
+ var x = 0;
+
+ for (var k = 0; k < N - M; ++k) {
+ x = (this.mt[k] & 0x80000000) | (this.mt[k + 1] & 0x7fffffff);
+ this.mt[k] = this.mt[k + M] ^ (x >>> 1) ^ MAG01[x & 0x1];
+ }
+ for (var k = N - M; k < N - 1; ++k) {
+ x = (this.mt[k] & 0x80000000) | (this.mt[k + 1] & 0x7fffffff);
+ this.mt[k] = this.mt[k + (M - N)] ^ (x >>> 1) ^ MAG01[x & 0x1];
+ }
+ x = (this.mt[N - 1] & 0x80000000) | (this.mt[0] & 0x7fffffff);
+ this.mt[N - 1] = this.mt[M - 1] ^ (x >>> 1) ^ MAG01[x & 0x1];
+
+ this.mti = 0;
+ }
+
+ var y = this.mt[this.mti++];
+ y ^= y >>> 11;
+ y ^= (y << 7) & 0x9d2c5680;
+ y ^= (y << 15) & 0xefc60000;
+ y ^= y >>> 18;
+ return (y >>> (32 - bits)) & 0xFFFFFFFF;
+ }
+}
+
+// Position variables
+var g_board = new Array(256); // Sentinel 0x80, pieces are in low 4 bits, 0x8 for color, 0x7 bits for piece type
+var g_toMove; // side to move, 0 or 8, 0 = black, 8 = white
+var g_castleRights; // bitmask representing castling rights, 1 = wk, 2 = wq, 4 = bk, 8 = bq
+var g_enPassentSquare;
+var g_baseEval;
+var g_hashKeyLow, g_hashKeyHigh;
+var g_inCheck;
+
+// Utility variables
+var g_moveCount = 0;
+var g_moveUndoStack = new Array();
+
+var g_move50 = 0;
+var g_repMoveStack = new Array();
+
+var g_hashSize = 1 << 22;
+var g_hashMask = g_hashSize - 1;
+var g_hashTable;
+
+var g_killers;
+var historyTable = new Array(32);
+
+var g_zobristLow;
+var g_zobristHigh;
+var g_zobristBlackLow;
+var g_zobristBlackHigh;
+
+// Evaulation variables
+var g_mobUnit;
+
+var hashflagAlpha = 1;
+var hashflagBeta = 2;
+var hashflagExact = 3;
+
+function HashEntry(lock, value, flags, hashDepth, bestMove, globalPly) {
+ this.lock = lock;
+ this.value = value;
+ this.flags = flags;
+ this.hashDepth = hashDepth;
+ this.bestMove = bestMove;
+}
+
+function MakeSquare(row, column) {
+ return ((row + 2) << 4) | (column + 4);
+}
+
+function MakeTable(table) {
+ var result = new Array(256);
+ for (var i = 0; i < 256; i++) {
+ result[i] = 0;
+ }
+ for (var row = 0; row < 8; row++) {
+ for (var col = 0; col < 8; col++) {
+ result[MakeSquare(row, col)] = table[row * 8 + col];
+ }
+ }
+ return result;
+}
+
+function ResetGame() {
+ g_killers = new Array(128);
+ for (var i = 0; i < 128; i++) {
+ g_killers[i] = [0, 0];
+ }
+
+ g_hashTable = new Array(g_hashSize);
+
+ for (var i = 0; i < 32; i++) {
+ historyTable[i] = new Array(256);
+ for (var j = 0; j < 256; j++)
+ historyTable[i][j] = 0;
+ }
+
+ var mt = new MT(0x1badf00d);
+
+ g_zobristLow = new Array(256);
+ g_zobristHigh = new Array(256);
+ for (var i = 0; i < 256; i++) {
+ g_zobristLow[i] = new Array(16);
+ g_zobristHigh[i] = new Array(16);
+ for (var j = 0; j < 16; j++) {
+ g_zobristLow[i][j] = mt.next(32);
+ g_zobristHigh[i][j] = mt.next(32);
+ }
+ }
+ g_zobristBlackLow = mt.next(32);
+ g_zobristBlackHigh = mt.next(32);
+
+ for (var row = 0; row < 8; row++) {
+ for (var col = 0; col < 8; col++) {
+ var square = MakeSquare(row, col);
+ flipTable[square] = MakeSquare(7 - row, col);
+ }
+ }
+
+ pieceSquareAdj[piecePawn] = MakeTable(pawnAdj);
+ pieceSquareAdj[pieceKnight] = MakeTable(knightAdj);
+ pieceSquareAdj[pieceBishop] = MakeTable(bishopAdj);
+ pieceSquareAdj[pieceRook] = MakeTable(rookAdj);
+ pieceSquareAdj[pieceQueen] = MakeTable(emptyAdj);
+ pieceSquareAdj[pieceKing] = MakeTable(kingAdj);
+
+ var pieceDeltas = [[], [], g_knightDeltas, g_bishopDeltas, g_rookDeltas, g_queenDeltas, g_queenDeltas];
+
+ for (var i = 0; i < 256; i++) {
+ g_vectorDelta[i] = new Object();
+ g_vectorDelta[i].delta = 0;
+ g_vectorDelta[i].pieceMask = new Array(2);
+ g_vectorDelta[i].pieceMask[0] = 0;
+ g_vectorDelta[i].pieceMask[1] = 0;
+ }
+
+ // Initialize the vector delta table
+ for (var row = 0; row < 0x80; row += 0x10)
+ for (var col = 0; col < 0x8; col++) {
+ var square = row | col;
+
+ // Pawn moves
+ var index = square - (square - 17) + 128;
+ g_vectorDelta[index].pieceMask[colorWhite >> 3] |= (1 << piecePawn);
+ index = square - (square - 15) + 128;
+ g_vectorDelta[index].pieceMask[colorWhite >> 3] |= (1 << piecePawn);
+
+ index = square - (square + 17) + 128;
+ g_vectorDelta[index].pieceMask[0] |= (1 << piecePawn);
+ index = square - (square + 15) + 128;
+ g_vectorDelta[index].pieceMask[0] |= (1 << piecePawn);
+
+ for (var i = pieceKnight; i <= pieceKing; i++) {
+ for (var dir = 0; dir < pieceDeltas[i].length; dir++) {
+ var target = square + pieceDeltas[i][dir];
+ while (!(target & 0x88)) {
+ index = square - target + 128;
+
+ g_vectorDelta[index].pieceMask[colorWhite >> 3] |= (1 << i);
+ g_vectorDelta[index].pieceMask[0] |= (1 << i);
+
+ var flip = -1;
+ if (square < target)
+ flip = 1;
+
+ if ((square & 0xF0) == (target & 0xF0)) {
+ // On the same row
+ g_vectorDelta[index].delta = flip * 1;
+ } else if ((square & 0x0F) == (target & 0x0F)) {
+ // On the same column
+ g_vectorDelta[index].delta = flip * 16;
+ } else if ((square % 15) == (target % 15)) {
+ g_vectorDelta[index].delta = flip * 15;
+ } else if ((square % 17) == (target % 17)) {
+ g_vectorDelta[index].delta = flip * 17;
+ }
+
+ if (i == pieceKnight) {
+ g_vectorDelta[index].delta = pieceDeltas[i][dir];
+ break;
+ }
+
+ if (i == pieceKing)
+ break;
+
+ target += pieceDeltas[i][dir];
+ }
+ }
+ }
+ }
+
+ InitializeEval();
+ InitializeFromFen("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1");
+}
+
+function InitializeEval() {
+ g_mobUnit = new Array(2);
+ for (var i = 0; i < 2; i++) {
+ g_mobUnit[i] = new Array();
+ var enemy = i == 0 ? 0x10 : 8;
+ var friend = i == 0 ? 8 : 0x10;
+ g_mobUnit[i][0] = 1;
+ g_mobUnit[i][0x80] = 0;
+ g_mobUnit[i][enemy | piecePawn] = 1;
+ g_mobUnit[i][enemy | pieceBishop] = 2;
+ g_mobUnit[i][enemy | pieceKnight] = 2;
+ g_mobUnit[i][enemy | pieceRook] = 4;
+ g_mobUnit[i][enemy | pieceQueen] = 6;
+ g_mobUnit[i][enemy | pieceKing] = 6;
+ g_mobUnit[i][friend | piecePawn] = 0;
+ g_mobUnit[i][friend | pieceBishop] = 0;
+ g_mobUnit[i][friend | pieceKnight] = 0;
+ g_mobUnit[i][friend | pieceRook] = 0;
+ g_mobUnit[i][friend | pieceQueen] = 0;
+ g_mobUnit[i][friend | pieceKing] = 0;
+ }
+}
+
+function SetHash() {
+ var result = new Object();
+ result.hashKeyLow = 0;
+ result.hashKeyHigh = 0;
+
+ for (var i = 0; i < 256; i++) {
+ var piece = g_board[i];
+ if (piece & 0x18) {
+ result.hashKeyLow ^= g_zobristLow[i][piece & 0xF]
+ result.hashKeyHigh ^= g_zobristHigh[i][piece & 0xF]
+ }
+ }
+
+ if (!g_toMove) {
+ result.hashKeyLow ^= g_zobristBlackLow;
+ result.hashKeyHigh ^= g_zobristBlackHigh;
+ }
+
+ return result;
+}
+
+function InitializeFromFen(fen) {
+ var chunks = fen.split(' ');
+
+ for (var i = 0; i < 256; i++)
+ g_board[i] = 0x80;
+
+ var row = 0;
+ var col = 0;
+
+ var pieces = chunks[0];
+ for (var i = 0; i < pieces.length; i++) {
+ var c = pieces.charAt(i);
+
+ if (c == '/') {
+ row++;
+ col = 0;
+ }
+ else {
+ if (c >= '0' && c <= '9') {
+ for (var j = 0; j < parseInt(c); j++) {
+ g_board[MakeSquare(row, col)] = 0;
+ col++;
+ }
+ }
+ else {
+ var isBlack = c >= 'a' && c <= 'z';
+ var piece = isBlack ? colorBlack : colorWhite;
+ if (!isBlack)
+ c = pieces.toLowerCase().charAt(i);
+ switch (c) {
+ case 'p':
+ piece |= piecePawn;
+ break;
+ case 'b':
+ piece |= pieceBishop;
+ break;
+ case 'n':
+ piece |= pieceKnight;
+ break;
+ case 'r':
+ piece |= pieceRook;
+ break;
+ case 'q':
+ piece |= pieceQueen;
+ break;
+ case 'k':
+ piece |= pieceKing;
+ break;
+ }
+
+ g_board[MakeSquare(row, col)] = piece;
+ col++;
+ }
+ }
+ }
+
+ InitializePieceList();
+
+ g_toMove = chunks[1].charAt(0) == 'w' ? colorWhite : 0;
+ var them = 8 - g_toMove;
+
+ g_castleRights = 0;
+ if (chunks[2].indexOf('K') != -1) {
+ if (g_board[MakeSquare(7, 4)] != (pieceKing | colorWhite) ||
+ g_board[MakeSquare(7, 7)] != (pieceRook | colorWhite)) {
+ return 'Invalid FEN: White kingside castling not allowed';
+ }
+ g_castleRights |= 1;
+ }
+ if (chunks[2].indexOf('Q') != -1) {
+ if (g_board[MakeSquare(7, 4)] != (pieceKing | colorWhite) ||
+ g_board[MakeSquare(7, 0)] != (pieceRook | colorWhite)) {
+ return 'Invalid FEN: White queenside castling not allowed';
+ }
+ g_castleRights |= 2;
+ }
+ if (chunks[2].indexOf('k') != -1) {
+ if (g_board[MakeSquare(0, 4)] != (pieceKing | colorBlack) ||
+ g_board[MakeSquare(0, 7)] != (pieceRook | colorBlack)) {
+ return 'Invalid FEN: Black kingside castling not allowed';
+ }
+ g_castleRights |= 4;
+ }
+ if (chunks[2].indexOf('q') != -1) {
+ if (g_board[MakeSquare(0, 4)] != (pieceKing | colorBlack) ||
+ g_board[MakeSquare(0, 0)] != (pieceRook | colorBlack)) {
+ return 'Invalid FEN: Black queenside castling not allowed';
+ }
+ g_castleRights |= 8;
+ }
+
+ g_enPassentSquare = -1;
+ if (chunks[3].indexOf('-') == -1) {
+ var col = chunks[3].charAt(0).charCodeAt() - 'a'.charCodeAt();
+ var row = 8 - (chunks[3].charAt(1).charCodeAt() - '0'.charCodeAt());
+ g_enPassentSquare = MakeSquare(row, col);
+ }
+
+ var hashResult = SetHash();
+ g_hashKeyLow = hashResult.hashKeyLow;
+ g_hashKeyHigh = hashResult.hashKeyHigh;
+
+ g_baseEval = 0;
+ for (var i = 0; i < 256; i++) {
+ if (g_board[i] & colorWhite) {
+ g_baseEval += pieceSquareAdj[g_board[i] & 0x7][i];
+ g_baseEval += materialTable[g_board[i] & 0x7];
+ } else if (g_board[i] & colorBlack) {
+ g_baseEval -= pieceSquareAdj[g_board[i] & 0x7][flipTable[i]];
+ g_baseEval -= materialTable[g_board[i] & 0x7];
+ }
+ }
+ if (!g_toMove) g_baseEval = -g_baseEval;
+
+ g_move50 = 0;
+ g_inCheck = IsSquareAttackable(g_pieceList[(g_toMove | pieceKing) << 4], them);
+
+ // Check for king capture (invalid FEN)
+ if (IsSquareAttackable(g_pieceList[(them | pieceKing) << 4], g_toMove)) {
+ return 'Invalid FEN: Can capture king';
+ }
+
+ // Checkmate/stalemate
+ if (GenerateValidMoves().length == 0) {
+ return g_inCheck ? 'Checkmate' : 'Stalemate';
+ }
+
+ return '';
+}
+
+var g_pieceIndex = new Array(256);
+var g_pieceList = new Array(2 * 8 * 16);
+var g_pieceCount = new Array(2 * 8);
+
+function InitializePieceList() {
+ for (var i = 0; i < 16; i++) {
+ g_pieceCount[i] = 0;
+ for (var j = 0; j < 16; j++) {
+ // 0 is used as the terminator for piece lists
+ g_pieceList[(i << 4) | j] = 0;
+ }
+ }
+
+ for (var i = 0; i < 256; i++) {
+ g_pieceIndex[i] = 0;
+ if (g_board[i] & (colorWhite | colorBlack)) {
+ var piece = g_board[i] & 0xF;
+
+ g_pieceList[(piece << 4) | g_pieceCount[piece]] = i;
+ g_pieceIndex[i] = g_pieceCount[piece];
+ g_pieceCount[piece]++;
+ }
+ }
+}
+
+function MakeMove(move){
+ var me = g_toMove >> 3;
+ var otherColor = 8 - g_toMove;
+
+ var flags = move & 0xFF0000;
+ var to = (move >> 8) & 0xFF;
+ var from = move & 0xFF;
+ var captured = g_board[to];
+ var piece = g_board[from];
+ var epcEnd = to;
+
+ if (flags & moveflagEPC) {
+ epcEnd = me ? (to + 0x10) : (to - 0x10);
+ captured = g_board[epcEnd];
+ g_board[epcEnd] = pieceEmpty;
+ }
+
+ g_moveUndoStack[g_moveCount] = new UndoHistory(g_enPassentSquare, g_castleRights, g_inCheck, g_baseEval, g_hashKeyLow, g_hashKeyHigh, g_move50, captured);
+ g_moveCount++;
+
+ g_enPassentSquare = -1;
+
+ if (flags) {
+ if (flags & moveflagCastleKing) {
+ if (IsSquareAttackable(from + 1, otherColor) ||
+ IsSquareAttackable(from + 2, otherColor)) {
+ g_moveCount--;
+ return false;
+ }
+
+ var rook = g_board[to + 1];
+
+ g_hashKeyLow ^= g_zobristLow[to + 1][rook & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to + 1][rook & 0xF];
+ g_hashKeyLow ^= g_zobristLow[to - 1][rook & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to - 1][rook & 0xF];
+
+ g_board[to - 1] = rook;
+ g_board[to + 1] = pieceEmpty;
+
+ g_baseEval -= pieceSquareAdj[rook & 0x7][me == 0 ? flipTable[to + 1] : (to + 1)];
+ g_baseEval += pieceSquareAdj[rook & 0x7][me == 0 ? flipTable[to - 1] : (to - 1)];
+
+ var rookIndex = g_pieceIndex[to + 1];
+ g_pieceIndex[to - 1] = rookIndex;
+ g_pieceList[((rook & 0xF) << 4) | rookIndex] = to - 1;
+ } else if (flags & moveflagCastleQueen) {
+ if (IsSquareAttackable(from - 1, otherColor) ||
+ IsSquareAttackable(from - 2, otherColor)) {
+ g_moveCount--;
+ return false;
+ }
+
+ var rook = g_board[to - 2];
+
+ g_hashKeyLow ^= g_zobristLow[to -2][rook & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to - 2][rook & 0xF];
+ g_hashKeyLow ^= g_zobristLow[to + 1][rook & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to + 1][rook & 0xF];
+
+ g_board[to + 1] = rook;
+ g_board[to - 2] = pieceEmpty;
+
+ g_baseEval -= pieceSquareAdj[rook & 0x7][me == 0 ? flipTable[to - 2] : (to - 2)];
+ g_baseEval += pieceSquareAdj[rook & 0x7][me == 0 ? flipTable[to + 1] : (to + 1)];
+
+ var rookIndex = g_pieceIndex[to - 2];
+ g_pieceIndex[to + 1] = rookIndex;
+ g_pieceList[((rook & 0xF) << 4) | rookIndex] = to + 1;
+ }
+ }
+
+ if (captured) {
+ // Remove our piece from the piece list
+ var capturedType = captured & 0xF;
+ g_pieceCount[capturedType]--;
+ var lastPieceSquare = g_pieceList[(capturedType << 4) | g_pieceCount[capturedType]];
+ g_pieceIndex[lastPieceSquare] = g_pieceIndex[epcEnd];
+ g_pieceList[(capturedType << 4) | g_pieceIndex[lastPieceSquare]] = lastPieceSquare;
+ g_pieceList[(capturedType << 4) | g_pieceCount[capturedType]] = 0;
+
+ g_baseEval += materialTable[captured & 0x7];
+ g_baseEval += pieceSquareAdj[captured & 0x7][me ? flipTable[epcEnd] : epcEnd];
+
+ g_hashKeyLow ^= g_zobristLow[epcEnd][capturedType];
+ g_hashKeyHigh ^= g_zobristHigh[epcEnd][capturedType];
+ g_move50 = 0;
+ } else if ((piece & 0x7) == piecePawn) {
+ var diff = to - from;
+ if (diff < 0) diff = -diff;
+ if (diff > 16) {
+ g_enPassentSquare = me ? (to + 0x10) : (to - 0x10);
+ }
+ g_move50 = 0;
+ }
+
+ g_hashKeyLow ^= g_zobristLow[from][piece & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[from][piece & 0xF];
+ g_hashKeyLow ^= g_zobristLow[to][piece & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to][piece & 0xF];
+ g_hashKeyLow ^= g_zobristBlackLow;
+ g_hashKeyHigh ^= g_zobristBlackHigh;
+
+ g_castleRights &= g_castleRightsMask[from] & g_castleRightsMask[to];
+
+ g_baseEval -= pieceSquareAdj[piece & 0x7][me == 0 ? flipTable[from] : from];
+
+ // Move our piece in the piece list
+ g_pieceIndex[to] = g_pieceIndex[from];
+ g_pieceList[((piece & 0xF) << 4) | g_pieceIndex[to]] = to;
+
+ if (flags & moveflagPromotion) {
+ var newPiece = piece & (~0x7);
+ if (flags & moveflagPromoteKnight)
+ newPiece |= pieceKnight;
+ else if (flags & moveflagPromoteQueen)
+ newPiece |= pieceQueen;
+ else if (flags & moveflagPromoteBishop)
+ newPiece |= pieceBishop;
+ else
+ newPiece |= pieceRook;
+
+ g_hashKeyLow ^= g_zobristLow[to][piece & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to][piece & 0xF];
+ g_board[to] = newPiece;
+ g_hashKeyLow ^= g_zobristLow[to][newPiece & 0xF];
+ g_hashKeyHigh ^= g_zobristHigh[to][newPiece & 0xF];
+
+ g_baseEval += pieceSquareAdj[newPiece & 0x7][me == 0 ? flipTable[to] : to];
+ g_baseEval -= materialTable[piecePawn];
+ g_baseEval += materialTable[newPiece & 0x7];
+
+ var pawnType = piece & 0xF;
+ var promoteType = newPiece & 0xF;
+
+ g_pieceCount[pawnType]--;
+
+ var lastPawnSquare = g_pieceList[(pawnType << 4) | g_pieceCount[pawnType]];
+ g_pieceIndex[lastPawnSquare] = g_pieceIndex[to];
+ g_pieceList[(pawnType << 4) | g_pieceIndex[lastPawnSquare]] = lastPawnSquare;
+ g_pieceList[(pawnType << 4) | g_pieceCount[pawnType]] = 0;
+ g_pieceIndex[to] = g_pieceCount[promoteType];
+ g_pieceList[(promoteType << 4) | g_pieceIndex[to]] = to;
+ g_pieceCount[promoteType]++;
+ } else {
+ g_board[to] = g_board[from];
+
+ g_baseEval += pieceSquareAdj[piece & 0x7][me == 0 ? flipTable[to] : to];
+ }
+ g_board[from] = pieceEmpty;
+
+ g_toMove = otherColor;
+ g_baseEval = -g_baseEval;
+
+ if ((piece & 0x7) == pieceKing || g_inCheck) {
+ if (IsSquareAttackable(g_pieceList[(pieceKing | (8 - g_toMove)) << 4], otherColor)) {
+ UnmakeMove(move);
+ return false;
+ }
+ } else {
+ var kingPos = g_pieceList[(pieceKing | (8 - g_toMove)) << 4];
+
+ if (ExposesCheck(from, kingPos)) {
+ UnmakeMove(move);
+ return false;
+ }
+
+ if (epcEnd != to) {
+ if (ExposesCheck(epcEnd, kingPos)) {
+ UnmakeMove(move);
+ return false;
+ }
+ }
+ }
+
+ g_inCheck = false;
+
+ if (flags <= moveflagEPC) {
+ var theirKingPos = g_pieceList[(pieceKing | g_toMove) << 4];
+
+ // First check if the piece we moved can attack the enemy king
+ g_inCheck = IsSquareAttackableFrom(theirKingPos, to);
+
+ if (!g_inCheck) {
+ // Now check if the square we moved from exposes check on the enemy king
+ g_inCheck = ExposesCheck(from, theirKingPos);
+
+ if (!g_inCheck) {
+ // Finally, ep. capture can cause another square to be exposed
+ if (epcEnd != to) {
+ g_inCheck = ExposesCheck(epcEnd, theirKingPos);
+ }
+ }
+ }
+ }
+ else {
+ // Castle or promotion, slow check
+ g_inCheck = IsSquareAttackable(g_pieceList[(pieceKing | g_toMove) << 4], 8 - g_toMove);
+ }
+
+ g_repMoveStack[g_moveCount - 1] = g_hashKeyLow;
+ g_move50++;
+
+ return true;
+}
+
+function UnmakeMove(move){
+ g_toMove = 8 - g_toMove;
+ g_baseEval = -g_baseEval;
+
+ g_moveCount--;
+ g_enPassentSquare = g_moveUndoStack[g_moveCount].ep;
+ g_castleRights = g_moveUndoStack[g_moveCount].castleRights;
+ g_inCheck = g_moveUndoStack[g_moveCount].inCheck;
+ g_baseEval = g_moveUndoStack[g_moveCount].baseEval;
+ g_hashKeyLow = g_moveUndoStack[g_moveCount].hashKeyLow;
+ g_hashKeyHigh = g_moveUndoStack[g_moveCount].hashKeyHigh;
+ g_move50 = g_moveUndoStack[g_moveCount].move50;
+
+ var otherColor = 8 - g_toMove;
+ var me = g_toMove >> 3;
+ var them = otherColor >> 3;
+
+ var flags = move & 0xFF0000;
+ var captured = g_moveUndoStack[g_moveCount].captured;
+ var to = (move >> 8) & 0xFF;
+ var from = move & 0xFF;
+
+ var piece = g_board[to];
+
+ if (flags) {
+ if (flags & moveflagCastleKing) {
+ var rook = g_board[to - 1];
+ g_board[to + 1] = rook;
+ g_board[to - 1] = pieceEmpty;
+
+ var rookIndex = g_pieceIndex[to - 1];
+ g_pieceIndex[to + 1] = rookIndex;
+ g_pieceList[((rook & 0xF) << 4) | rookIndex] = to + 1;
+ }
+ else if (flags & moveflagCastleQueen) {
+ var rook = g_board[to + 1];
+ g_board[to - 2] = rook;
+ g_board[to + 1] = pieceEmpty;
+
+ var rookIndex = g_pieceIndex[to + 1];
+ g_pieceIndex[to - 2] = rookIndex;
+ g_pieceList[((rook & 0xF) << 4) | rookIndex] = to - 2;
+ }
+ }
+
+ if (flags & moveflagPromotion) {
+ piece = (g_board[to] & (~0x7)) | piecePawn;
+ g_board[from] = piece;
+
+ var pawnType = g_board[from] & 0xF;
+ var promoteType = g_board[to] & 0xF;
+
+ g_pieceCount[promoteType]--;
+
+ var lastPromoteSquare = g_pieceList[(promoteType << 4) | g_pieceCount[promoteType]];
+ g_pieceIndex[lastPromoteSquare] = g_pieceIndex[to];
+ g_pieceList[(promoteType << 4) | g_pieceIndex[lastPromoteSquare]] = lastPromoteSquare;
+ g_pieceList[(promoteType << 4) | g_pieceCount[promoteType]] = 0;
+ g_pieceIndex[to] = g_pieceCount[pawnType];
+ g_pieceList[(pawnType << 4) | g_pieceIndex[to]] = to;
+ g_pieceCount[pawnType]++;
+ }
+ else {
+ g_board[from] = g_board[to];
+ }
+
+ var epcEnd = to;
+ if (flags & moveflagEPC) {
+ if (g_toMove == colorWhite)
+ epcEnd = to + 0x10;
+ else
+ epcEnd = to - 0x10;
+ g_board[to] = pieceEmpty;
+ }
+
+ g_board[epcEnd] = captured;
+
+ // Move our piece in the piece list
+ g_pieceIndex[from] = g_pieceIndex[to];
+ g_pieceList[((piece & 0xF) << 4) | g_pieceIndex[from]] = from;
+
+ if (captured) {
+ // Restore our piece to the piece list
+ var captureType = captured & 0xF;
+ g_pieceIndex[epcEnd] = g_pieceCount[captureType];
+ g_pieceList[(captureType << 4) | g_pieceCount[captureType]] = epcEnd;
+ g_pieceCount[captureType]++;
+ }
+}
+
+function ExposesCheck(from, kingPos){
+ var index = kingPos - from + 128;
+ // If a queen can't reach it, nobody can!
+ if ((g_vectorDelta[index].pieceMask[0] & (1 << (pieceQueen))) != 0) {
+ var delta = g_vectorDelta[index].delta;
+ var pos = kingPos + delta;
+ while (g_board[pos] == 0) pos += delta;
+
+ var piece = g_board[pos];
+ if (((piece & (g_board[kingPos] ^ 0x18)) & 0x18) == 0)
+ return false;
+
+ // Now see if the piece can actually attack the king
+ var backwardIndex = pos - kingPos + 128;
+ return (g_vectorDelta[backwardIndex].pieceMask[(piece >> 3) & 1] & (1 << (piece & 0x7))) != 0;
+ }
+ return false;
+}
+
+function IsSquareOnPieceLine(target, from) {
+ var index = from - target + 128;
+ var piece = g_board[from];
+ return (g_vectorDelta[index].pieceMask[(piece >> 3) & 1] & (1 << (piece & 0x7))) ? true : false;
+}
+
+function IsSquareAttackableFrom(target, from){
+ var index = from - target + 128;
+ var piece = g_board[from];
+ if (g_vectorDelta[index].pieceMask[(piece >> 3) & 1] & (1 << (piece & 0x7))) {
+ // Yes, this square is pseudo-attackable. Now, check for real attack
+ var inc = g_vectorDelta[index].delta;
+ do {
+ from += inc;
+ if (from == target)
+ return true;
+ } while (g_board[from] == 0);
+ }
+
+ return false;
+}
+
+function IsSquareAttackable(target, color) {
+ // Attackable by pawns?
+ var inc = color ? -16 : 16;
+ var pawn = (color ? colorWhite : colorBlack) | 1;
+ if (g_board[target - (inc - 1)] == pawn)
+ return true;
+ if (g_board[target - (inc + 1)] == pawn)
+ return true;
+
+ // Attackable by pieces?
+ for (var i = 2; i <= 6; i++) {
+ var index = (color | i) << 4;
+ var square = g_pieceList[index];
+ while (square != 0) {
+ if (IsSquareAttackableFrom(target, square))
+ return true;
+ square = g_pieceList[++index];
+ }
+ }
+ return false;
+}
+
+function GenerateMove(from, to) {
+ return from | (to << 8);
+}
+
+function GenerateMove(from, to, flags){
+ return from | (to << 8) | flags;
+}
+
+function GenerateValidMoves() {
+ var moveList = new Array();
+ var allMoves = new Array();
+ GenerateCaptureMoves(allMoves, null);
+ GenerateAllMoves(allMoves);
+
+ for (var i = allMoves.length - 1; i >= 0; i--) {
+ if (MakeMove(allMoves[i])) {
+ moveList[moveList.length] = allMoves[i];
+ UnmakeMove(allMoves[i]);
+ }
+ }
+
+ return moveList;
+}
+
+function GenerateAllMoves(moveStack) {
+ var from, to, piece, pieceIdx;
+
+ // Pawn quiet moves
+ pieceIdx = (g_toMove | 1) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ GeneratePawnMoves(moveStack, from);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Knight quiet moves
+ pieceIdx = (g_toMove | 2) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from + 31; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 33; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 14; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 14; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 31; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 33; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 18; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 18; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Bishop quiet moves
+ pieceIdx = (g_toMove | 3) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 15; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 15; }
+ to = from - 17; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 17; }
+ to = from + 15; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 15; }
+ to = from + 17; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 17; }
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Rook quiet moves
+ pieceIdx = (g_toMove | 4) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 1; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to--; }
+ to = from + 1; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to++; }
+ to = from + 16; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 16; }
+ to = from - 16; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 16; }
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Queen quiet moves
+ pieceIdx = (g_toMove | 5) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from - 15; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 15; }
+ to = from - 17; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 17; }
+ to = from + 15; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 15; }
+ to = from + 17; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 17; }
+ to = from - 1; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to--; }
+ to = from + 1; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to++; }
+ to = from + 16; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to += 16; }
+ to = from - 16; while (g_board[to] == 0) { moveStack[moveStack.length] = GenerateMove(from, to); to -= 16; }
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // King quiet moves
+ {
+ pieceIdx = (g_toMove | 6) << 4;
+ from = g_pieceList[pieceIdx];
+ to = from - 15; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 17; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 15; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 17; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 1; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 1; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 16; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 16; if (g_board[to] == 0) moveStack[moveStack.length] = GenerateMove(from, to);
+
+ if (!g_inCheck) {
+ var castleRights = g_castleRights;
+ if (!g_toMove)
+ castleRights >>= 2;
+ if (castleRights & 1) {
+ // Kingside castle
+ if (g_board[from + 1] == pieceEmpty && g_board[from + 2] == pieceEmpty) {
+ moveStack[moveStack.length] = GenerateMove(from, from + 0x02, moveflagCastleKing);
+ }
+ }
+ if (castleRights & 2) {
+ // Queenside castle
+ if (g_board[from - 1] == pieceEmpty && g_board[from - 2] == pieceEmpty && g_board[from - 3] == pieceEmpty) {
+ moveStack[moveStack.length] = GenerateMove(from, from - 0x02, moveflagCastleQueen);
+ }
+ }
+ }
+ }
+}
+
+function GenerateCaptureMoves(moveStack, moveScores) {
+ var from, to, piece, pieceIdx;
+ var inc = (g_toMove == 8) ? -16 : 16;
+ var enemy = g_toMove == 8 ? 0x10 : 0x8;
+
+ // Pawn captures
+ pieceIdx = (g_toMove | 1) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from + inc - 1;
+ if (g_board[to] & enemy) {
+ MovePawnTo(moveStack, from, to);
+ }
+
+ to = from + inc + 1;
+ if (g_board[to] & enemy) {
+ MovePawnTo(moveStack, from, to);
+ }
+
+ from = g_pieceList[pieceIdx++];
+ }
+
+ if (g_enPassentSquare != -1) {
+ var inc = (g_toMove == colorWhite) ? -16 : 16;
+ var pawn = g_toMove | piecePawn;
+
+ var from = g_enPassentSquare - (inc + 1);
+ if ((g_board[from] & 0xF) == pawn) {
+ moveStack[moveStack.length] = GenerateMove(from, g_enPassentSquare, moveflagEPC);
+ }
+
+ from = g_enPassentSquare - (inc - 1);
+ if ((g_board[from] & 0xF) == pawn) {
+ moveStack[moveStack.length] = GenerateMove(from, g_enPassentSquare, moveflagEPC);
+ }
+ }
+
+ // Knight captures
+ pieceIdx = (g_toMove | 2) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from + 31; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 33; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 14; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 14; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 31; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 33; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 18; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 18; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Bishop captures
+ pieceIdx = (g_toMove | 3) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from; do { to -= 15; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to -= 17; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 15; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 17; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Rook captures
+ pieceIdx = (g_toMove | 4) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from; do { to--; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to++; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to -= 16; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 16; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // Queen captures
+ pieceIdx = (g_toMove | 5) << 4;
+ from = g_pieceList[pieceIdx++];
+ while (from != 0) {
+ to = from; do { to -= 15; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to -= 17; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 15; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 17; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to--; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to++; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to -= 16; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from; do { to += 16; } while (g_board[to] == 0); if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ from = g_pieceList[pieceIdx++];
+ }
+
+ // King captures
+ {
+ pieceIdx = (g_toMove | 6) << 4;
+ from = g_pieceList[pieceIdx];
+ to = from - 15; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 17; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 15; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 17; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 1; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 1; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from - 16; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ to = from + 16; if (g_board[to] & enemy) moveStack[moveStack.length] = GenerateMove(from, to);
+ }
+}
+
+function MovePawnTo(moveStack, start, square) {
+ var row = square & 0xF0;
+ if ((row == 0x90) || (row == 0x20)) {
+ moveStack[moveStack.length] = GenerateMove(start, square, moveflagPromotion | moveflagPromoteQueen);
+ moveStack[moveStack.length] = GenerateMove(start, square, moveflagPromotion | moveflagPromoteKnight);
+ moveStack[moveStack.length] = GenerateMove(start, square, moveflagPromotion | moveflagPromoteBishop);
+ moveStack[moveStack.length] = GenerateMove(start, square, moveflagPromotion);
+ }
+ else {
+ moveStack[moveStack.length] = GenerateMove(start, square, 0);
+ }
+}
+
+function GeneratePawnMoves(moveStack, from) {
+ var piece = g_board[from];
+ var color = piece & colorWhite;
+ var inc = (color == colorWhite) ? -16 : 16;
+
+ // Quiet pawn moves
+ var to = from + inc;
+ if (g_board[to] == 0) {
+ MovePawnTo(moveStack, from, to, pieceEmpty);
+
+ // Check if we can do a 2 square jump
+ if ((((from & 0xF0) == 0x30) && color != colorWhite) ||
+ (((from & 0xF0) == 0x80) && color == colorWhite)) {
+ to += inc;
+ if (g_board[to] == 0) {
+ moveStack[moveStack.length] = GenerateMove(from, to);
+ }
+ }
+ }
+}
+
+function UndoHistory(ep, castleRights, inCheck, baseEval, hashKeyLow, hashKeyHigh, move50, captured) {
+ this.ep = ep;
+ this.castleRights = castleRights;
+ this.inCheck = inCheck;
+ this.baseEval = baseEval;
+ this.hashKeyLow = hashKeyLow;
+ this.hashKeyHigh = hashKeyHigh;
+ this.move50 = move50;
+ this.captured = captured;
+}
+
+var g_seeValues = [0, 1, 3, 3, 5, 9, 900, 0,
+ 0, 1, 3, 3, 5, 9, 900, 0];
+
+function See(move) {
+ var from = move & 0xFF;
+ var to = (move >> 8) & 0xFF;
+
+ var fromPiece = g_board[from];
+
+ var fromValue = g_seeValues[fromPiece & 0xF];
+ var toValue = g_seeValues[g_board[to] & 0xF];
+
+ if (fromValue <= toValue) {
+ return true;
+ }
+
+ if (move >> 16) {
+ // Castles, promotion, ep are always good
+ return true;
+ }
+
+ var us = (fromPiece & colorWhite) ? colorWhite : 0;
+ var them = 8 - us;
+
+ // Pawn attacks
+ // If any opponent pawns can capture back, this capture is probably not worthwhile (as we must be using knight or above).
+ var inc = (fromPiece & colorWhite) ? -16 : 16; // Note: this is capture direction from to, so reversed from normal move direction
+ if (((g_board[to + inc + 1] & 0xF) == (piecePawn | them)) ||
+ ((g_board[to + inc - 1] & 0xF) == (piecePawn | them))) {
+ return false;
+ }
+
+ var themAttacks = new Array();
+
+ // Knight attacks
+ // If any opponent knights can capture back, and the deficit we have to make up is greater than the knights value,
+ // it's not worth it. We can capture on this square again, and the opponent doesn't have to capture back.
+ var captureDeficit = fromValue - toValue;
+ SeeAddKnightAttacks(to, them, themAttacks);
+ if (themAttacks.length != 0 && captureDeficit > g_seeValues[pieceKnight]) {
+ return false;
+ }
+
+ // Slider attacks
+ g_board[from] = 0;
+ for (var pieceType = pieceBishop; pieceType <= pieceQueen; pieceType++) {
+ if (SeeAddSliderAttacks(to, them, themAttacks, pieceType)) {
+ if (captureDeficit > g_seeValues[pieceType]) {
+ g_board[from] = fromPiece;
+ return false;
+ }
+ }
+ }
+
+ // Pawn defenses
+ // At this point, we are sure we are making a "losing" capture. The opponent can not capture back with a
+ // pawn. They cannot capture back with a minor/major and stand pat either. So, if we can capture with
+ // a pawn, it's got to be a winning or equal capture.
+ if (((g_board[to - inc + 1] & 0xF) == (piecePawn | us)) ||
+ ((g_board[to - inc - 1] & 0xF) == (piecePawn | us))) {
+ g_board[from] = fromPiece;
+ return true;
+ }
+
+ // King attacks
+ SeeAddSliderAttacks(to, them, themAttacks, pieceKing);
+
+ // Our attacks
+ var usAttacks = new Array();
+ SeeAddKnightAttacks(to, us, usAttacks);
+ for (var pieceType = pieceBishop; pieceType <= pieceKing; pieceType++) {
+ SeeAddSliderAttacks(to, us, usAttacks, pieceType);
+ }
+
+ g_board[from] = fromPiece;
+
+ // We are currently winning the amount of material of the captured piece, time to see if the opponent
+ // can get it back somehow. We assume the opponent can capture our current piece in this score, which
+ // simplifies the later code considerably.
+ var seeValue = toValue - fromValue;
+
+ for (; ; ) {
+ var capturingPieceValue = 1000;
+ var capturingPieceIndex = -1;
+
+ // Find the least valuable piece of the opponent that can attack the square
+ for (var i = 0; i < themAttacks.length; i++) {
+ if (themAttacks[i] != 0) {
+ var pieceValue = g_seeValues[g_board[themAttacks[i]] & 0x7];
+ if (pieceValue < capturingPieceValue) {
+ capturingPieceValue = pieceValue;
+ capturingPieceIndex = i;
+ }
+ }
+ }
+
+ if (capturingPieceIndex == -1) {
+ // Opponent can't capture back, we win
+ return true;
+ }
+
+ // Now, if seeValue < 0, the opponent is winning. If even after we take their piece,
+ // we can't bring it back to 0, then we have lost this battle.
+ seeValue += capturingPieceValue;
+ if (seeValue < 0) {
+ return false;
+ }
+
+ var capturingPieceSquare = themAttacks[capturingPieceIndex];
+ themAttacks[capturingPieceIndex] = 0;
+
+ // Add any x-ray attackers
+ SeeAddXrayAttack(to, capturingPieceSquare, us, usAttacks, themAttacks);
+
+ // Our turn to capture
+ capturingPieceValue = 1000;
+ capturingPieceIndex = -1;
+
+ // Find our least valuable piece that can attack the square
+ for (var i = 0; i < usAttacks.length; i++) {
+ if (usAttacks[i] != 0) {
+ var pieceValue = g_seeValues[g_board[usAttacks[i]] & 0x7];
+ if (pieceValue < capturingPieceValue) {
+ capturingPieceValue = pieceValue;
+ capturingPieceIndex = i;
+ }
+ }
+ }
+
+ if (capturingPieceIndex == -1) {
+ // We can't capture back, we lose :(
+ return false;
+ }
+
+ // Assume our opponent can capture us back, and if we are still winning, we can stand-pat
+ // here, and assume we've won.
+ seeValue -= capturingPieceValue;
+ if (seeValue >= 0) {
+ return true;
+ }
+
+ capturingPieceSquare = usAttacks[capturingPieceIndex];
+ usAttacks[capturingPieceIndex] = 0;
+
+ // Add any x-ray attackers
+ SeeAddXrayAttack(to, capturingPieceSquare, us, usAttacks, themAttacks);
+ }
+}
+
+function SeeAddXrayAttack(target, square, us, usAttacks, themAttacks) {
+ var index = square - target + 128;
+ var delta = -g_vectorDelta[index].delta;
+ if (delta == 0)
+ return;
+ square += delta;
+ while (g_board[square] == 0) {
+ square += delta;
+ }
+
+ if ((g_board[square] & 0x18) && IsSquareOnPieceLine(target, square)) {
+ if ((g_board[square] & 8) == us) {
+ usAttacks[usAttacks.length] = square;
+ } else {
+ themAttacks[themAttacks.length] = square;
+ }
+ }
+}
+
+// target = attacking square, us = color of knights to look for, attacks = array to add squares to
+function SeeAddKnightAttacks(target, us, attacks) {
+ var pieceIdx = (us | pieceKnight) << 4;
+ var attackerSq = g_pieceList[pieceIdx++];
+
+ while (attackerSq != 0) {
+ if (IsSquareOnPieceLine(target, attackerSq)) {
+ attacks[attacks.length] = attackerSq;
+ }
+ attackerSq = g_pieceList[pieceIdx++];
+ }
+}
+
+function SeeAddSliderAttacks(target, us, attacks, pieceType) {
+ var pieceIdx = (us | pieceType) << 4;
+ var attackerSq = g_pieceList[pieceIdx++];
+ var hit = false;
+
+ while (attackerSq != 0) {
+ if (IsSquareAttackableFrom(target, attackerSq)) {
+ attacks[attacks.length] = attackerSq;
+ hit = true;
+ }
+ attackerSq = g_pieceList[pieceIdx++];
+ }
+
+ return hit;
+}
+
+function BuildPVMessage(bestMove, value, timeTaken, ply) {
+ var totalNodes = g_nodeCount + g_qNodeCount;
+ return "Ply:" + ply + " Score:" + value + " Nodes:" + totalNodes + " NPS:" + ((totalNodes / (timeTaken / 1000)) | 0) + " " + PVFromHash(bestMove, 15);
+}
+
+//////////////////////////////////////////////////
+// Test Harness
+//////////////////////////////////////////////////
+function FinishPlyCallback(bestMove, value, timeTaken, ply) {
+ postMessage("pv " + BuildPVMessage(bestMove, value, timeTaken, ply));
+}
+
+function FinishMoveLocalTesting(bestMove, value, timeTaken, ply) {
+ if (bestMove != null) {
+ MakeMove(bestMove);
+ postMessage(FormatMove(bestMove));
+ }
+}
+
+var needsReset = true;
+self.onmessage = function (e) {
+ if (e.data == "go" || needsReset) {
+ ResetGame();
+ needsReset = false;
+ if (e.data == "go") return;
+ }
+ if (e.data.match("^position") == "position") {
+ ResetGame();
+ var result = InitializeFromFen(e.data.substr(9, e.data.length - 9));
+ if (result.length != 0) {
+ postMessage("message " + result);
+ }
+ } else if (e.data.match("^search") == "search") {
+ g_timeout = parseInt(e.data.substr(7, e.data.length - 7), 10);
+ Search(FinishMoveLocalTesting, 99, FinishPlyCallback);
+ } else if (e.data == "analyze") {
+ g_timeout = 99999999999;
+ Search(null, 99, FinishPlyCallback);
+ } else {
+ MakeMove(GetMoveFromString(e.data));
+ }
+}
diff --git a/_assets/vendor/pgn4web/libs/garbochess/index.html b/_assets/vendor/pgn4web/libs/garbochess/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/garbochess/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/libs/index.html b/_assets/vendor/pgn4web/libs/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/libs/jscolor/README.txt b/_assets/vendor/pgn4web/libs/jscolor/README.txt
new file mode 100644
index 0000000..c5fd9b6
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/jscolor/README.txt
@@ -0,0 +1,5 @@
+The jscolor javascript code is maintained by Honza Odvarko
+(http://odvarko.cz/) and released under the GNU Lesser General Public License
+(http://www.gnu.org/copyleft/lesser.html)
+See http://jscolor.com/
+
diff --git a/_assets/vendor/pgn4web/libs/jscolor/arrow.gif b/_assets/vendor/pgn4web/libs/jscolor/arrow.gif
new file mode 100644
index 0000000..246478a
Binary files /dev/null and b/_assets/vendor/pgn4web/libs/jscolor/arrow.gif differ
diff --git a/_assets/vendor/pgn4web/libs/jscolor/cross.gif b/_assets/vendor/pgn4web/libs/jscolor/cross.gif
new file mode 100644
index 0000000..0ee9c7a
Binary files /dev/null and b/_assets/vendor/pgn4web/libs/jscolor/cross.gif differ
diff --git a/_assets/vendor/pgn4web/libs/jscolor/hs.png b/_assets/vendor/pgn4web/libs/jscolor/hs.png
new file mode 100644
index 0000000..3d94486
Binary files /dev/null and b/_assets/vendor/pgn4web/libs/jscolor/hs.png differ
diff --git a/_assets/vendor/pgn4web/libs/jscolor/hv.png b/_assets/vendor/pgn4web/libs/jscolor/hv.png
new file mode 100644
index 0000000..1c5e01f
Binary files /dev/null and b/_assets/vendor/pgn4web/libs/jscolor/hv.png differ
diff --git a/_assets/vendor/pgn4web/libs/jscolor/index.html b/_assets/vendor/pgn4web/libs/jscolor/index.html
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/jscolor/index.html
@@ -0,0 +1 @@
+
diff --git a/_assets/vendor/pgn4web/libs/jscolor/jscolor.js b/_assets/vendor/pgn4web/libs/jscolor/jscolor.js
new file mode 100644
index 0000000..6bb0c1f
--- /dev/null
+++ b/_assets/vendor/pgn4web/libs/jscolor/jscolor.js
@@ -0,0 +1,997 @@
+/**
+ * jscolor, JavaScript Color Picker
+ *
+ * @version 1.4.2
+ * @license GNU Lesser General Public License, http://www.gnu.org/copyleft/lesser.html
+ * @author Jan Odvarko, http://odvarko.cz
+ * @created 2008-06-15
+ * @updated 2013-11-25
+ * @link http://jscolor.com
+ */
+
+
+var jscolor = {
+
+
+ dir : '', // location of jscolor directory (leave empty to autodetect)
+ bindClass : 'color', // class name
+ binding : true, // automatic binding via
+ preloading : true, // use image preloading?
+
+
+ install : function() {
+ jscolor.addEvent(window, 'load', jscolor.init);
+ },
+
+
+ init : function() {
+ if(jscolor.binding) {
+ jscolor.bind();
+ }
+ if(jscolor.preloading) {
+ jscolor.preload();
+ }
+ },
+
+
+ getDir : function() {
+ if(!jscolor.dir) {
+ var detected = jscolor.detectDir();
+ jscolor.dir = detected!==false ? detected : 'jscolor/';
+ }
+ return jscolor.dir;
+ },
+
+
+ detectDir : function() {
+ var base = location.href;
+
+ var e = document.getElementsByTagName('base');
+ for(var i=0; i vs[a] ?
+ (-vp[a]+tp[a]+ts[a]/2 > vs[a]/2 && tp[a]+ts[a]-ps[a] >= 0 ? tp[a]+ts[a]-ps[a] : tp[a]) :
+ tp[a],
+ -vp[b]+tp[b]+ts[b]+ps[b]-l+l*c > vs[b] ?
+ (-vp[b]+tp[b]+ts[b]/2 > vs[b]/2 && tp[b]+ts[b]-l-l*c >= 0 ? tp[b]+ts[b]-l-l*c : tp[b]+ts[b]-l+l*c) :
+ (tp[b]+ts[b]-l+l*c >= 0 ? tp[b]+ts[b]-l+l*c : tp[b]+ts[b]-l-l*c)
+ ];
+ }
+ drawPicker(pp[a], pp[b]);
+ }
+ };
+
+
+ this.importColor = function() {
+ if(!valueElement) {
+ this.exportColor();
+ } else {
+ if(!this.adjust) {
+ if(!this.fromString(valueElement.value, leaveValue)) {
+ styleElement.style.backgroundImage = styleElement.jscStyle.backgroundImage;
+ styleElement.style.backgroundColor = styleElement.jscStyle.backgroundColor;
+ styleElement.style.color = styleElement.jscStyle.color;
+ this.exportColor(leaveValue | leaveStyle);
+ }
+ } else if(!this.required && /^\s*$/.test(valueElement.value)) {
+ valueElement.value = '';
+ styleElement.style.backgroundImage = styleElement.jscStyle.backgroundImage;
+ styleElement.style.backgroundColor = styleElement.jscStyle.backgroundColor;
+ styleElement.style.color = styleElement.jscStyle.color;
+ this.exportColor(leaveValue | leaveStyle);
+
+ } else if(this.fromString(valueElement.value)) {
+ // OK
+ } else {
+ this.exportColor();
+ }
+ }
+ };
+
+
+ this.exportColor = function(flags) {
+ if(!(flags & leaveValue) && valueElement) {
+ var value = this.toString();
+ if(this.caps) { value = value.toUpperCase(); }
+ if(this.hash) { value = '#'+value; }
+ valueElement.value = value;
+ }
+ if(!(flags & leaveStyle) && styleElement) {
+ styleElement.style.backgroundImage = "none";
+ styleElement.style.backgroundColor =
+ '#'+this.toString();
+ styleElement.style.color =
+ 0.213 * this.rgb[0] +
+ 0.715 * this.rgb[1] +
+ 0.072 * this.rgb[2]
+ < 0.5 ? '#FFF' : '#000';
+ }
+ if(!(flags & leavePad) && isPickerOwner()) {
+ redrawPad();
+ }
+ if(!(flags & leaveSld) && isPickerOwner()) {
+ redrawSld();
+ }
+ };
+
+
+ this.fromHSV = function(h, s, v, flags) { // null = don't change
+ if(h !== null) { h = Math.max(0.0, this.minH, Math.min(6.0, this.maxH, h)); }
+ if(s !== null) { s = Math.max(0.0, this.minS, Math.min(1.0, this.maxS, s)); }
+ if(v !== null) { v = Math.max(0.0, this.minV, Math.min(1.0, this.maxV, v)); }
+
+ this.rgb = HSV_RGB(
+ h===null ? this.hsv[0] : (this.hsv[0]=h),
+ s===null ? this.hsv[1] : (this.hsv[1]=s),
+ v===null ? this.hsv[2] : (this.hsv[2]=v)
+ );
+
+ this.exportColor(flags);
+ };
+
+
+ this.fromRGB = function(r, g, b, flags) { // null = don't change
+ if(r !== null) { r = Math.max(0.0, Math.min(1.0, r)); }
+ if(g !== null) { g = Math.max(0.0, Math.min(1.0, g)); }
+ if(b !== null) { b = Math.max(0.0, Math.min(1.0, b)); }
+
+ var hsv = RGB_HSV(
+ r===null ? this.rgb[0] : r,
+ g===null ? this.rgb[1] : g,
+ b===null ? this.rgb[2] : b
+ );
+ if(hsv[0] !== null) {
+ this.hsv[0] = Math.max(0.0, this.minH, Math.min(6.0, this.maxH, hsv[0]));
+ }
+ if(hsv[2] !== 0) {
+ this.hsv[1] = hsv[1]===null ? null : Math.max(0.0, this.minS, Math.min(1.0, this.maxS, hsv[1]));
+ }
+ this.hsv[2] = hsv[2]===null ? null : Math.max(0.0, this.minV, Math.min(1.0, this.maxV, hsv[2]));
+
+ // update RGB according to final HSV, as some values might be trimmed
+ var rgb = HSV_RGB(this.hsv[0], this.hsv[1], this.hsv[2]);
+ this.rgb[0] = rgb[0];
+ this.rgb[1] = rgb[1];
+ this.rgb[2] = rgb[2];
+
+ this.exportColor(flags);
+ };
+
+
+ this.fromString = function(hex, flags) {
+ var m = hex.match(/^\W*([0-9A-F]{3}([0-9A-F]{3})?)\W*$/i);
+ if(!m) {
+ return false;
+ } else {
+ if(m[1].length === 6) { // 6-char notation
+ this.fromRGB(
+ parseInt(m[1].substr(0,2),16) / 255,
+ parseInt(m[1].substr(2,2),16) / 255,
+ parseInt(m[1].substr(4,2),16) / 255,
+ flags
+ );
+ } else { // 3-char notation
+ this.fromRGB(
+ parseInt(m[1].charAt(0)+m[1].charAt(0),16) / 255,
+ parseInt(m[1].charAt(1)+m[1].charAt(1),16) / 255,
+ parseInt(m[1].charAt(2)+m[1].charAt(2),16) / 255,
+ flags
+ );
+ }
+ return true;
+ }
+ };
+
+
+ this.toString = function() {
+ return (
+ (0x100 | Math.round(255*this.rgb[0])).toString(16).substr(1) +
+ (0x100 | Math.round(255*this.rgb[1])).toString(16).substr(1) +
+ (0x100 | Math.round(255*this.rgb[2])).toString(16).substr(1)
+ );
+ };
+
+
+ function RGB_HSV(r, g, b) {
+ var n = Math.min(Math.min(r,g),b);
+ var v = Math.max(Math.max(r,g),b);
+ var m = v - n;
+ if(m === 0) { return [ null, 0, v ]; }
+ var h = r===n ? 3+(b-g)/m : (g===n ? 5+(r-b)/m : 1+(g-r)/m);
+ return [ h===6?0:h, m/v, v ];
+ }
+
+
+ function HSV_RGB(h, s, v) {
+ if(h === null) { return [ v, v, v ]; }
+ var i = Math.floor(h);
+ var f = i%2 ? h-i : 1-(h-i);
+ var m = v * (1 - s);
+ var n = v * (1 - s*f);
+ switch(i) {
+ case 6:
+ case 0: return [v,n,m];
+ case 1: return [n,v,m];
+ case 2: return [m,v,n];
+ case 3: return [m,n,v];
+ case 4: return [n,m,v];
+ case 5: return [v,m,n];
+ }
+ }
+
+
+ function removePicker() {
+ delete jscolor.picker.owner;
+ document.getElementsByTagName('body')[0].removeChild(jscolor.picker.boxB);
+ }
+
+
+ function drawPicker(x, y) {
+ if(!jscolor.picker) {
+ jscolor.picker = {
+ box : document.createElement('div'),
+ boxB : document.createElement('div'),
+ pad : document.createElement('div'),
+ padB : document.createElement('div'),
+ padM : document.createElement('div'),
+ sld : document.createElement('div'),
+ sldB : document.createElement('div'),
+ sldM : document.createElement('div'),
+ btn : document.createElement('div'),
+ btnS : document.createElement('span'),
+ btnT : document.createTextNode(THIS.pickerCloseText)
+ };
+ for(var i=0,segSize=4; i
+ is released under the MIT License
+*/
+var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y0){for(var af=0;af0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad '}}aa.outerHTML='"+af+" ";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab
+ Copyright (C)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ , 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/_assets/vendor/pgn4web/live-compact.css b/_assets/vendor/pgn4web/live-compact.css
new file mode 100644
index 0000000..c64c59d
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-compact.css
@@ -0,0 +1,176 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+@import url("fonts/pgn4web-font-LiberationSans.css");
+@import url("fonts/pgn4web-font-ChessSansPiratf.css");
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ font-family: 'pgn4web Liberation Sans', sans-serif;
+ font-size: 13px;
+ color: #615F54;
+ background: #EDE8D5;
+}
+
+a {
+ text-decoration: none;
+ color: black;
+}
+
+.boardTable {
+}
+
+.pieceImage {
+ width: 26px;
+ height: 26px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 26px;
+ height: 26px;
+ border-style: solid;
+ border-width: 2px;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ border-color: #EDE8D5;
+ background: #EDE8D5;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ border-color: #CFCBB3;
+ background: #CFCBB3;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ border-style: solid;
+ border-color: #F8CCA0;
+}
+
+.selectControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ -webkit-appearance: none;
+ width: 450px !important;
+ height: 23px;
+ color: #615F54;
+ font-size: 13px;
+ padding: 2px;
+ border-style: solid;
+ border-width: 1px;
+ border-radius: 0px;
+ border-color: #CFCBB3;
+ background-color: #EDE8D5;
+}
+
+.optionSelectControl {
+ background-color: #EDE8D5;
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ font-size: 13px;
+ text-align: center;
+ vertical-align: middle;
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnButton {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.header,
+.headerNosize,
+.headerHighlighted,
+.headerHighlightedNosize,
+.helplinkNosize,
+.helplinkNosizeHighlighted,
+.comment {
+ text-decoration: none;
+ font-family: 'pgn4web Liberation Sans', sans-serif; /* fixes IE9 body css issue */
+}
+
+.header,
+.headerHighlighted {
+ font-size: 13px;
+}
+
+.move,
+.variation,
+.comment {
+ font-size: 12px;
+ line-height: 1.4em;
+}
+
+.move,
+.variation,
+.commentMove {
+ font-family: 'pgn4web ChessSansPiratf', 'pgn4web Liberation Sans', sans-serif;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.move,
+.variation {
+ text-decoration: none;
+}
+
+.helplinkNosize {
+ color: #BFBAA5;
+}
+
+.header,
+.headerNosize,
+.move,
+.variation {
+ color: #615F54 !important;
+}
+
+a.variation {
+ color: #615F54 !important;
+}
+
+.comment {
+ color: #A19D8B;
+}
+
+.headerHighlighted,
+.headerHighlightedNosize,
+.moveOn,
+.variationOn {
+ color: black;
+ background: #F8CCA0;
+}
+
+.movebox {
+ scrollbar-base-color: #E8E3D0;
+ text-align: justify;
+}
+
diff --git a/_assets/vendor/pgn4web/live-compact.html b/_assets/vendor/pgn4web/live-compact.html
new file mode 100644
index 0000000..0bafe5a
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-compact.html
@@ -0,0 +1,373 @@
+
+
+
+
+
+
+
+pgn4web live broadcast
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-fullscreen.html b/_assets/vendor/pgn4web/live-fullscreen.html
new file mode 100644
index 0000000..becc7f3
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-fullscreen.html
@@ -0,0 +1,29 @@
+
+
+
+
+
+pgn4web chess live broadcast
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-mosaic-tile.html b/_assets/vendor/pgn4web/live-mosaic-tile.html
new file mode 100644
index 0000000..6c28dd8
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-mosaic-tile.html
@@ -0,0 +1,362 @@
+
+
+
+
+
+
+
+chess games viewer: live chessboard
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[Event "loading PGN data, please wait..."]
+[Result "*"]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-mosaic-viewer.html b/_assets/vendor/pgn4web/live-mosaic-viewer.html
new file mode 100644
index 0000000..4c84f24
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-mosaic-viewer.html
@@ -0,0 +1,664 @@
+
+
+
+
+
+
+
+chess games viewer: live broadcast
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-mosaic.html b/_assets/vendor/pgn4web/live-mosaic.html
new file mode 100644
index 0000000..17cdec0
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-mosaic.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+pgn4web chess live broadcast
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-results-template.html b/_assets/vendor/pgn4web/live-results-template.html
new file mode 100644
index 0000000..d79560b
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-results-template.html
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+pgn4web live broadcast
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-results-viewer.html b/_assets/vendor/pgn4web/live-results-viewer.html
new file mode 100644
index 0000000..d328c88
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-results-viewer.html
@@ -0,0 +1,972 @@
+
+
+
+
+
+
+
+pgn4web live results
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-results.html b/_assets/vendor/pgn4web/live-results.html
new file mode 100644
index 0000000..03a32d8
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-results.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+pgn4web chess live broadcast
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live-template.html b/_assets/vendor/pgn4web/live-template.html
new file mode 100644
index 0000000..7f0f40f
--- /dev/null
+++ b/_assets/vendor/pgn4web/live-template.html
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+
+pgn4web live broadcast template
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+pgn4web live broadcast template
+
+
+
+
+
+
+
+
+
+
+
+
+
+Live broadcast status:
+
+Live broadcast refreshed:
+
+Live broadcast received:
+
+Live broadcast modified (server time):
+
+Event:
+
+Site:
+
+Round:
+
+Date:
+
+Time control:
+
+White:
+
+White clock:
+
+Black:
+
+Black clock:
+
+Result:
+
+Side to move:
+
+Last move:
+
+Next move:
+
+Move comment:
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live.html b/_assets/vendor/pgn4web/live.html
new file mode 100644
index 0000000..c0eb177
--- /dev/null
+++ b/_assets/vendor/pgn4web/live.html
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+pgn4web chess live broadcast
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+pgn4web chess live broadcast
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live/index.html b/_assets/vendor/pgn4web/live/index.html
new file mode 100644
index 0000000..9c85a30
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/index.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live/live-fullscreen.html b/_assets/vendor/pgn4web/live/live-fullscreen.html
new file mode 100644
index 0000000..237b317
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/live-fullscreen.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live/live-mosaic.html b/_assets/vendor/pgn4web/live/live-mosaic.html
new file mode 100644
index 0000000..0b4b204
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/live-mosaic.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live/live-results.html b/_assets/vendor/pgn4web/live/live-results.html
new file mode 100644
index 0000000..eb561bf
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/live-results.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/live/live-simulation.sh b/_assets/vendor/pgn4web/live/live-simulation.sh
new file mode 100644
index 0000000..e54ffad
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/live-simulation.sh
@@ -0,0 +1,358 @@
+# pgn4web javascript chessboard
+# copyright (C) 2009-2013 Paolo Casaschi
+# see README file and http://pgn4web.casaschi.net
+# for credits, license and more details
+
+# bash script to create a pgn file over time, same as a live broadcast
+# more realistic than simulating the live broadcast within pgn4web
+# run as "bash script.sh"
+
+set +o posix
+
+if [ "$1" == "--help" ]
+then
+ echo
+ echo "$(basename $0)"
+ echo
+ echo "Shell script to create a pgn file over time, same as a live broadcast"
+ echo "and more realistic than simulating the live broadcast within pgn4web"
+ echo
+ echo "Needs to be run using bash"
+ echo
+ exit
+fi
+
+if [ "$1" == "--no-shell-check" ]
+then
+ shift 1
+else
+ if [ "$(basename $SHELL)" != "bash" ]
+ then
+ echo "ERROR: $(basename $0) should be run with bash. Prepend --no-shell-check as first parameters to skip checking the shell type."
+ exit
+ fi
+fi
+
+pgn_file=live.pgn
+pgn_file_tmp=live-tmp.pgn
+
+delay=17
+if [ -n "$1" ]
+then
+ if [ "$1" -eq "$1" 2> /dev/null ]
+ then
+ delay="$1"
+ else
+ echo "ERROR: $(basename $0) the delay parameter should be an integer (supplied $1)"
+ exit
+ fi
+fi
+
+# dont touch after this line
+
+umask 0000
+if [ $? -ne 0 ]
+then
+ echo "ERROR: $(basename $0) failed setting umask 0000"
+ exit
+fi
+
+game1_header="[Event \"Tilburg Fontys\"]\n[Site \"Tilburg\"]\n[Date \"1998.10.24\"]\n[Round \"2\"]\n[White \"Anand, Viswanathan\"]\n[Black \"Kramnik, Vladimir\"]\n[WhiteClock \"2:00:00\"]\n[BlackClock \"2:00:00\"]"
+game1_header_live="$game1_header\n[Result \"*\"]"
+game1_header_end="$game1_header\n[Result \"1-0\"]"
+
+game1_moves[0]="1.e4 {[%clk 1:59:59]} e5 {[%clk 1:58:58]}"
+game1_clock[0]="[Clock \"W/1:58:00\"]"
+
+game1_moves[1]=" 2.Nf3 {[%clk 1:57:57]} Nf6 {[%clk 1:56:56]} 3.Nxe5 {[%clk 1:55:55]}"
+game1_clock[1]="[Clock \"B/1:55:00\"]"
+
+game1_moves[2]="d6 {[%clk 1:54:54]}"
+game1_clock[2]="[Clock \"W/1:54:00\"]"
+
+game1_moves[3]="4.Nf3 {[%clk 1:53:53]} Nxe4 {[%clk 1:52:52]}"
+game1_clock[3]="[Clock \"W/1:52:00\"]"
+
+game1_moves[4]="5.d4 {[%clk 1:51:51]} d5 {[%clk 1:50:50]} 6.Bd3 {[%clk 1:49:49]}"
+game1_clock[4]="[Clock \"B/1:49:00\"]"
+
+game1_moves[5]="Nc6 {[%clk 1:48:48]} 7.O-O {[%clk 1:47:47]}"
+game1_clock[5]="[Clock \"B/1:47:00\"]"
+
+game1_moves[6]="Be7 {[%clk 1:46:46]} 8.Re1 {[%clk 1:45:45]}"
+game1_clock[6]="[Clock \"B/1:45:00\"]"
+
+game1_moves[7]="Bg4 {[%clk 1:44:44]} 9.c3 {[%clk 1:43:43]} f5 {[%clk 1:42:42]}"
+game1_clock[7]="[Clock \"W/1:43:01\"]"
+
+game1_moves[8]=""
+game1_clock[8]="[Clock \"W/1:43:00\"]"
+
+game1_moves[9]="10.Qb3 {[%clk 1:41:41]} O-O {[%clk 1:40:40]} 11.Nbd2 {[%clk 1:39:39]}"
+game1_clock[9]="[Clock \"B/1:39:01\"]"
+
+game1_moves[10]=""
+game1_clock[10]="[Clock \"B/1:39:00\"]"
+
+game1_moves[11]="Na5 {[%clk 1:38:38]}"
+game1_clock[11]="[Clock \"W/1:38:00\"]"
+
+game1_moves[12]="12.Qa4 {[%clk 1:37:37]} Nc6 {[%clk 1:36:36]} 13.Bb5 {[%clk 1:35:35]}"
+game1_clock[12]="[Clock \"W/1:35:00\"]"
+
+game1_moves[13]="Nxd2 {[%clk 1:34:34]} 14.Nxd2 {[%clk 1:33:33]} Qd6 {[%clk 1:32:32]}"
+game1_clock[13]="[Clock \"W/1:32:00\"]"
+
+game1_moves[14]="15.h3 {[%clk 1:31:31]} Bh5 {[%clk 1:30:30]}"
+game1_clock[14]="[Clock \"W/1:30:01\"]"
+
+game1_moves[15]=""
+game1_clock[15]="[Clock \"W/1:30:00\"]"
+
+game1_moves[16]="16.Nb3 {[%clk 1:29:29]} Bh4 {[%clk 1:28:28]}"
+game1_clock[16]="[Clock \"W/1:28:00\"]"
+
+game1_moves[17]="17.Nc5 {[%clk 1:27:27]}"
+game1_clock[17]="[Clock \"B/1:27:00\"]"
+
+game1_moves[18]="Bxf2+ {[%clk 1:26:26]}"
+game1_clock[18]="[Clock \"W/1:26:00\"]"
+
+game1_moves[19]="18.Kxf2 {[%clk 1:25:25]} Qh2 {[%clk 1:24:24]} 19.Bxc6 {[%clk 1:23:23]}"
+game1_clock[19]="[Clock \"B/1:23:00\"]"
+
+game1_moves[20]="bxc6 {[%clk 1:22:22]} 20.Qxc6 {[%clk 1:21:21]} f4 {[%clk 1:20:20]}"
+game1_clock[20]="[Clock \"W/1:20:00\"]"
+
+game1_moves[21]="21.Qxd5+ {[%clk 1:19:19]}"
+game1_clock[21]="[Clock \"B/1:19:00\"]"
+
+game1_moves[22]="Kh8 {[%clk 1:18:18]} 22.Qxh5 {[%clk 1:17:17]}"
+game1_clock[22]="[Clock \"W/1:17:00\"]"
+
+game1_moves[23]="f3 {[%clk 1:16:16]}"
+game1_clock[23]="[Clock \"W/1:16:00\"]"
+
+game1_moves[24]="23.Qxf3 {[%clk 1:15:15]} Rxf3+ {[%clk 1:14:14]}"
+game1_clock[24]="[Clock \"W/1:14:00\"]"
+
+game1_moves[25]="24.Kxf3 {[%clk 1:13:13]} Rf8+ {[%clk 1:12:12]} 25.Ke2 {[%clk 1:11:11]}"
+game1_clock[25]="[Clock \"B/1:11:00\"]"
+
+game1_moves[26]="Qxg2+ {[%clk 1:10:10]} 26.Kd3 {[%clk 1:09:09]}"
+game1_clock[26]="[Clock \"B/1:09:00\"]"
+
+game1_moves[27]="Qxh3+ {[%clk 1:08:08]} 27.Kc2 {[%clk 1:07:07]} Qg2+ {[%clk 1:06:06]}"
+game1_clock[27]="[Clock \"W/1:06:00\"]"
+
+game1_moves[28]="28.Bd2 {[%clk 1:05:05]} Qg6+ {[%clk 1:04:04]}"
+game1_clock[28]="[Clock \"W/1:04:00\"]"
+
+game1_moves[29]="29.Re4 {[%clk 1:03:03]} h5 {[%clk 1:02:02]} 30.Re1 {[%clk 1:01:01]}"
+game1_clock[29]="[Clock \"B/1:01:00\"]"
+
+game1_moves[30]="Re8 {[%clk 1:00:00]} 31.Kc1 {[%clk 59:59]} Rxe4 {[%clk 58:58]}"
+game1_clock[30]="[Clock \"W/58:00\"]"
+
+game1_moves[31]="Nxe4 {[%clk 57:57]} h4 {[%clk 56:56]} 33.Ng5 {[%clk 55:55]}"
+game1_clock[31]="[Clock \"B/55:00\"]"
+
+game1_moves[32]="Qh5 {[%clk 54:54]} 34.Re3 {[%clk 53:53]} Kg8 {[%clk 52:52]}"
+game1_clock[32]="[Clock \"W/52:00\"]"
+
+game1_moves[33]="35.c4 {[%clk 51:51]}"
+game1_clock[33]="[Clock \"B/51:00\"]"
+
+game1_moves[34]="1-0"
+game1_clock[34]="[Clock \"B/50:00\"]"
+
+game2_header="[Event \"Tilburg Fontys\"]\n[Site \"Tilburg\"]\n[Date \"1998.10.24\"]\n[Round \"2\"]\n[White \"Lautier, Joel\"]\n[Black \"Van Wely, Loek\"]\n[WhiteClock \"2:00:00\"]\n[BlackClock \"2:00:00\"]"
+game2_header_live="$game2_header\n[Result \"*\"]"
+game2_header_end="$game2_header\n[Result \"1/2-1/2\"]"
+
+game2_moves[0]=""
+game2_clock[0]="[Clock \"W/1:59:5A\"]"
+
+game2_moves[1]="1.d4 {[%clk 1:59:59]} Nf6 {[%clk 1:59:58]} 2.c4 {[%clk 1:58:57]} c5 {[%clk 1:58:56]} 3.d5 {[%clk 1:57:55]}"
+game2_clock[1]="[Clock \"B/1:58:00\"]"
+
+game2_moves[2]="b5 {[%clk 1:57:54]}"
+game2_clock[2]="[Clock \"W/1:57:00\"]"
+
+game2_moves[3]="4.Nf3 {[%clk 1:56:53]}"
+game2_clock[3]="[Clock \"B/1:57:00\"]"
+
+game2_moves[4]="Bb7 {[%clk 1:56:52]}"
+game2_clock[4]="[Clock \"W/1:56:00\"]"
+
+game2_moves[5]="5.a4 {[%clk 1:55:51]}"
+game2_clock[5]="[Clock \"B/1:56:00\"]"
+
+game2_moves[6]="Qa5+ {[%clk 1:55:50]}"
+game2_clock[6]="[Clock \"W/1:55:00\"]"
+
+game2_moves[7]="6.Bd2 {[%clk 1:54:49]}"
+game2_clock[7]="[Clock \"B/1:55:00\"]"
+
+game2_moves[8]="b4 {[%clk 1:54:48]}"
+game2_clock[8]="[Clock \"W/1:54:00\"]"
+
+game2_moves[9]="7.Bg5 {[%clk 1:53:47]} d6 {[%clk 1:53:46]}"
+game2_clock[9]="[Clock \"W/1:53:01\"]"
+
+game2_moves[10]=""
+game2_clock[10]="[Clock \"W/1:53:00\"]"
+
+game2_moves[11]="8.Nbd2 {[%clk 1:52:45]}"
+game2_clock[11]="[Clock \"B/1:53:00\"]"
+
+game2_moves[12]="Nbd7 {[%clk 1:52:44]}"
+game2_clock[12]="[Clock \"W/1:52:00\"]"
+
+game2_moves[13]="9.h3 {[%clk 1:51:43]} g6 {[%clk 1:51:42]}"
+game2_clock[13]="[Clock \"W/1:51:00\"]"
+
+game2_moves[14]="10.e4 {[%clk 1:50:41]} Bg7 {[%clk 1:50:40]} 11.Bd3 {[%clk 1:49:39]}"
+game2_clock[14]="[Clock \"B/1:50:00\"]"
+
+game2_moves[15]="O-O {[%clk 1:49:38]} 12.O-O {[%clk 1:48:37]}"
+game2_clock[15]="[Clock \"B/1:49:00\"]"
+
+game2_moves[16]="Rae8 {[%clk 1:48:36]}"
+game2_clock[16]="[Clock \"W/1:48:01\"]"
+
+game2_moves[17]=""
+game2_clock[17]="[Clock \"W/1:48:00\"]"
+
+game2_moves[18]="13.Re1 {[%clk 1:47:35]} e5 {[%clk 1:47:34]}"
+game2_clock[18]="[Clock \"W/1:47:00\"]"
+
+game2_moves[19]="14.Nf1 {[%clk 1:46:33]}"
+game2_clock[19]="[Clock \"B/1:47:00\"]"
+
+game2_moves[20]="Nh5 {[%clk 1:46:32]} 15.g3 {[%clk 1:45:31]}"
+game2_clock[20]="[Clock \"B/1:46:00\"]"
+
+game2_moves[21]="Bc8 {[%clk 1:45:30]}"
+game2_clock[21]="[Clock \"W/1:45:01\"]"
+
+game2_moves[22]=""
+game2_clock[22]="[Clock \"W/1:45:00\"]"
+
+game2_moves[23]="16.Kh2 {[%clk 1:44:29]} Kh8 {[%clk 1:44:28]}"
+game2_clock[23]="[Clock \"W/1:44:00\"]"
+
+game2_moves[24]="17.b3 {[%clk 1:43:27]}"
+game2_clock[24]="[Clock \"B/1:44:00\"]"
+
+game2_moves[25]="Qc7 {[%clk 1:43:26]}"
+game2_clock[25]="[Clock \"W/1:43:01\"]"
+
+game2_moves[26]=""
+game2_clock[26]="[Clock \"W/1:43:00\"]"
+
+game2_moves[27]="18.Ra2 {[%clk 1:42:25]}"
+game2_clock[27]="[Clock \"B/1:43:00\"]"
+
+game2_moves[28]="Ndf6 {[%clk 1:42:24]}"
+game2_clock[28]="[Clock \"W/1:42:00\"]"
+
+game2_moves[29]="19.Ng1 {[%clk 1:41:23]}"
+game2_clock[29]="[Clock \"B/1:42:01\"]"
+
+game2_moves[30]=""
+game2_clock[30]="[Clock \"B/1:42:00\"]"
+
+game2_moves[31]="Ng8 {[%clk 1:41:22]}"
+game2_clock[31]="[Clock \"W/1:41:01\"]"
+
+game2_moves[32]=""
+game2_clock[32]="[Clock \"W/1:41:00\"]"
+
+game2_moves[33]="20.Bc1 {[%clk 1:40:21]}"
+game2_clock[33]="[Clock \"B/1:40:00\"]"
+
+game2_moves[34]="1/2-1/2"
+game2_clock[34]="[Clock \"B/1:39:00\"]"
+
+steps=34
+
+if [ -e "$pgn_file" ]
+then
+ echo "ERROR: $(basename $0): $pgn_file exists"
+ echo "Delete the file or choose another filename and restart $(basename $0)"
+ exit
+fi
+
+echo Generating PGN file $pgn_file simulating live game broadcast
+
+echo > $pgn_file_tmp
+echo -e $game1_header_live >> $pgn_file_tmp
+echo "*" >> $pgn_file_tmp
+echo >> $pgn_file_tmp
+echo -e $game2_header_live >> $pgn_file_tmp
+echo "*" >> $pgn_file_tmp
+mv $pgn_file_tmp $pgn_file
+sleep $delay
+
+upto=0;
+while [ $upto -lt $steps ]
+do
+ echo " step $upto of $steps"
+ echo > $pgn_file_tmp
+
+ echo -e $game1_header_live >> $pgn_file_tmp
+ echo -e ${game1_clock[$upto]} >> $pgn_file_tmp
+ echo >> $pgn_file_tmp
+ move=0
+ while [ $move -le $upto ]
+ do
+ echo ${game1_moves[$move]} >> $pgn_file_tmp
+ move=$(($move + 1))
+ done
+
+ echo >> $pgn_file_tmp
+
+ echo -e $game2_header_live >> $pgn_file_tmp
+ echo -e ${game2_clock[$upto]} >> $pgn_file_tmp
+ echo >> $pgn_file_tmp
+ move=0
+ while [ $move -le $upto ]
+ do
+ echo ${game2_moves[$move]} >> $pgn_file_tmp
+ move=$(($move + 1))
+ done
+
+ mv $pgn_file_tmp $pgn_file
+ sleep $delay
+
+ upto=$(($upto + 1))
+done
+
+echo " step $upto of $steps"
+echo > $pgn_file_tmp
+echo -e $game1_header_end >> $pgn_file_tmp
+echo -e ${game1_clock[$upto]} >> $pgn_file_tmp
+echo >> $pgn_file_tmp
+move=0
+while [ $move -le $upto ]
+do
+ echo ${game1_moves[$move]} >> $pgn_file_tmp
+ move=$(($move + 1))
+done
+echo >> $pgn_file_tmp
+echo -e $game2_header_end >> $pgn_file_tmp
+echo -e ${game2_clock[$upto]} >> $pgn_file_tmp
+echo >> $pgn_file_tmp
+move=0
+while [ $move -le $upto ]
+do
+ echo ${game2_moves[$move]} >> $pgn_file_tmp
+ move=$(($move + 1))
+done
+mv $pgn_file_tmp $pgn_file
+echo done with games... waiting for a while before deleting $pgn_file
+
+sleep 3600
+rm $pgn_file
+
diff --git a/_assets/vendor/pgn4web/live/live.html b/_assets/vendor/pgn4web/live/live.html
new file mode 100644
index 0000000..9c85a30
--- /dev/null
+++ b/_assets/vendor/pgn4web/live/live.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/lon09r5.css b/_assets/vendor/pgn4web/lon09r5.css
new file mode 100644
index 0000000..66fe7fc
--- /dev/null
+++ b/_assets/vendor/pgn4web/lon09r5.css
@@ -0,0 +1,171 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+@import url("fonts/pgn4web-font-LiberationSans.css");
+@import url("fonts/pgn4web-font-ChessSansUscf.css");
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ font-family: 'pgn4web Liberation Sans', sans-serif;
+ font-size: 14px;
+ line-height: 1.4em;
+ color: black;
+ background: white;
+}
+
+div, span, table, tr, td {
+ font-family: 'pgn4web Liberation Sans', sans-serif; /* fixes IE9 body css issue */
+}
+
+a.gamelist,
+a.gamelistselected {
+ display: inline-block;
+ width: 100%;
+ font-weight: bold;
+ text-decoration: none;
+ background: #c3c3c3;
+ padding: 13px;
+ margin-bottom: 15px;
+ border-style: none;
+ border-radius: 10px;
+}
+
+a.gamelist {
+ color: #ffffff;
+ box-shadow: 1px 1px 15px #aaaaaa;
+}
+
+a.gamelistselected {
+ color: #666666;
+ box-shadow: 1px 1px 5px #cccccc;
+}
+
+.boardTable {
+ width: 388px;
+ height: 388px;
+ border-style: solid;
+ border-color: #c3c3c3;
+ border-width: 10px;
+ border-radius: 10px;
+ box-shadow: 1px 1px 30px #aaaaaa;
+ margin-right: 10px;
+}
+
+.pieceImage {
+ width: 34px;
+ height: 34px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 44px;
+ height: 44px;
+ border-width: 1px;
+ border-style: solid;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ background: #e3e3e3;
+ border-color: #e3e3e3;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ background: #c3c3c3;
+ border-color: #c3c3c3;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ border-style: inset;
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 60px !important;
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+ width: 22px !important;
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl,
+.selectControl,
+.searchPgnButton,
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+ font-size: 14px;
+ font-weight: bold;
+ color: #ffffff;
+ background: #c3c3c3;
+ padding: 13px;
+ border-style: none;
+ border-radius: 10px;
+ box-shadow: 1px 1px 15px #aaaaaa;
+}
+
+.buttonControlPlay:active,
+.buttonControlStop:active,
+.buttonControl:active {
+ color: #666666;
+ box-shadow: 1px 1px 5px #cccccc;
+}
+
+.optionSelectControl {
+ background-color: #c3c3c3;
+}
+
+.move,
+.variation {
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.move,
+.variation,
+.commentMove {
+ font-family: 'pgn4web ChessSansUscf', 'pgn4web Liberation Sans', sans-serif;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.move {
+ color: black;
+}
+
+.comment,
+.variation {
+ color: gray;
+}
+
+a.variation {
+ color: gray;
+}
+
+.moveOn,
+.variationOn {
+ background: #e3e3e3;
+ box-shadow: 0px 0px 15px #c3c3c3;
+}
+
diff --git a/_assets/vendor/pgn4web/lon09r5.html b/_assets/vendor/pgn4web/lon09r5.html
new file mode 100644
index 0000000..108a9d2
--- /dev/null
+++ b/_assets/vendor/pgn4web/lon09r5.html
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+London Chess Classic 2009 round 5
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ London Chess Classic 2009 - round 5
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/lon09r5.pgn b/_assets/vendor/pgn4web/lon09r5.pgn
new file mode 100644
index 0000000..dd04bf3
--- /dev/null
+++ b/_assets/vendor/pgn4web/lon09r5.pgn
@@ -0,0 +1,81 @@
+[Event "London Chess Classic"]
+[Site "London"]
+[Date "2009.12.13"]
+[Round "5"]
+[White "Ni, Hua"]
+[Black "Carlsen, Magnus"]
+[Result "0-1"]
+[WhiteElo "2665"]
+[BlackElo "2801"]
+[ECO "B51"]
+
+1. e4 c5 2. Nf3 d6 3. Bb5+ Nd7 4. d4 a6 5. Bxd7+ Bxd7 6. dxc5 dxc5 7. Nc3
+e6 8. Bf4 Ne7 9. Ne5 Ng6 10. Qh5 Bc6 11. Bg3 Nxe5 12. Bxe5 c4 13. O-O Qa5
+14. Qg5 h6 15. Qg3 f6 16. Qg6+ Ke7 17. Bf4 Be8 18. Qg3 Kf7 19. Rad1 Bc6 20.
+Rd2 e5 21. Be3 Bb4 22. f4 Rhe8 23. f5 Bc5 24. Rfd1 Rad8 25. Rxd8 Bxe3+ 26.
+Qxe3 Rxd8 27. Rxd8 Qxd8 28. Kf2 Qd6 29. a3 a5 30. Kf3 Kg8 31. g3 b5 32. Ke2
+b4 33. axb4 axb4 34. Nd1 Ba4 35. b3 cxb3 36. cxb3 Qa6+ 37. Kd2 Bb5 38. Qc5
+Qa2+ 39. Qc2 Qa7 40. Qc8+ Kh7 41. Kc1 Qa1+ 42. Kc2 Qd4 0-1
+
+[Event "London Chess Classic"]
+[Site "London"]
+[Date "2009.12.13"]
+[Round "5"]
+[White "Howell, David"]
+[Black "Kramnik, Vladimir"]
+[Result "1/2-1/2"]
+[WhiteElo "2597"]
+[BlackElo "2772"]
+[ECO "C42"]
+
+1. e4 e5 2. Nf3 Nf6 3. Nxe5 d6 4. Nf3 Nxe4 5. d4 d5 6. Bd3 Nc6 7. O-O Be7
+8. Re1 Bg4 9. c3 f5 10. Qb3 O-O 11. Nbd2 Na5 12. Qa4 Nc6 13. Qb3 Na5 14.
+Qc2 Nc6 15. b4 a6 16. Rb1 b5 17. a4 Rb8 18. axb5 axb5 19. Ne5 Nxe5 20. dxe5
+Nxf2 21. Kxf2 Bh4+ 22. Kf1 Bxe1 23. Kxe1 Qh4+ 24. g3 Qxh2 25. Nf1 Qxc2 26.
+Bxc2 Rbe8 27. Bd3 Rxe5+ 28. Kf2 f4 29. gxf4 Bf5 30. Bxf5 Rexf5 31. Ng3 R5f6
+32. Kf3 Rc6 33. Bd2 g5 34. Ne2 gxf4 35. Nd4 Rg6 36. Nxb5 Rg3+ 37. Kf2 Rd3
+38. Rg1+ Kh8 39. Ke2 Rg3 40. Kf2 Rxg1 41. Kxg1 c5 42. Nd6 cxb4 43. cxb4 Kg7
+44. Bc3+ Kg6 45. b5 Rd8 46. Be5 Rb8 47. Bd4 Rd8 48. Be5 Rb8 49. Kf2 Rb6 50.
+Kf3 Kg5 51. Nf7+ Kg6 52. Nd6 Kg5 53. Nf7+ Kg6 1/2-1/2
+
+[Event "London Chess Classic"]
+[Site "London"]
+[Date "2009.12.13"]
+[Round "5"]
+[White "Nakamura, Hikaru"]
+[Black "McShane, Luke"]
+[Result "0-1"]
+[WhiteElo "2715"]
+[BlackElo "2615"]
+[ECO "E94"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 Bg7 4. e4 d6 5. Be2 O-O 6. Nf3 e5 7. O-O Na6 8.
+Be3 Ng4 9. Bg5 Qe8 10. c5 exd4 11. Nd5 Be6 12. Be7 Bxd5 13. Bxf8 Qxf8 14.
+exd5 dxc5 15. Qb3 Rb8 16. Rfe1 Qd6 17. h3 Nf6 18. Bxa6 Qxa6 19. Rac1 Bf8
+20. Ne5 Qb6 21. Qf3 Qd6 22. g4 Bh6 23. Rc2 Re8 24. Rce2 Rf8 25. Nc4 Qxd5
+26. Qxf6 Bg7 27. Qh4 Qxc4 28. Re8 Qd5 29. Rxf8+ Bxf8 30. Re8 Kg7 31. g5 Qd6
+32. Kf1 b5 33. Ke1 c4 34. Qe4 c5 35. h4 c3 36. bxc3 dxc3 37. Qe5+ Qxe5+ 38.
+Rxe5 a5 39. Kd1 a4 40. a3 b4 41. Kc2 h6 42. Rd5 hxg5 43. hxg5 Kh7 44. Rd7
+Bg7 45. Rxf7 b3+ 46. Kb1 Kg8 47. Ra7 Bd4 48. Rxa4 Kf7 49. Ra6 Be5 50. Ra4
+Ke6 51. Rh4 Kd5 52. a4 c4 53. Rh1 c2+ 54. Kc1 c3 55. Rh4 Bd6 0-1
+
+[Event "London Chess Classic"]
+[Site "London"]
+[Date "2009.12.13"]
+[Round "5"]
+[White "Adams, Michael"]
+[Black "Short, Nigel"]
+[Result "1/2-1/2"]
+[WhiteElo "2698"]
+[BlackElo "2707"]
+[ECO "C80"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
+dxe5 Be6 9. Nbd2 Nc5 10. c3 Nxb3 11. Nxb3 Be7 12. h3 O-O 13. Re1 a5 14. a4
+bxa4 15. Rxa4 Qd7 16. Nbd4 Nxd4 17. cxd4 Rfb8 18. Bd2 Rxb2 19. Rxa5 Rxa5
+20. Bxa5 Bf5 21. Bc3 Rb6 22. Kh2 h6 23. Qa1 Rg6 24. Bd2 Kh7 25. Qc3 Be4 26.
+Qe3 Qf5 27. Qf4 Qxf4+ 28. Bxf4 c5 29. dxc5 Bxc5 30. Be3 d4 31. Bd2 Bd5 32.
+Rc1 Ba7 33. Ra1 Bb6 34. Ra4 d3 35. Be3 Bc7 36. Bf4 Rc6 37. Rd4 Bxf3 38.
+gxf3 Rc3 39. Kg2 g5 40. e6 Bb6 41. Rxd3 Rxd3 42. e7 Rd8 43. exd8=Q Bxd8
+1/2-1/2
+
diff --git a/_assets/vendor/pgn4web/mini.css b/_assets/vendor/pgn4web/mini.css
new file mode 100644
index 0000000..b05f971
--- /dev/null
+++ b/_assets/vendor/pgn4web/mini.css
@@ -0,0 +1,105 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+html,
+body {
+ margin: 0px;
+ padding: 0px;
+}
+
+body {
+ font-family: sans-serif;
+ color: black;
+ background: white;
+}
+
+.boardTable {
+ border-style: double;
+ border-color: black;
+ border-width: 3px;
+ box-shadow: 0px 0px 15px #AAAAAA;
+}
+
+.pieceImage {
+ width: 24px;
+ height: 24px;
+}
+
+.whiteSquare,
+.blackSquare,
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ width: 28px;
+ height: 28px;
+}
+
+.whiteSquare,
+.highlightWhiteSquare {
+ background: #EFF4EC;
+}
+
+.blackSquare,
+.highlightBlackSquare {
+ background: #C6CEC3;
+}
+
+.highlightWhiteSquare,
+.highlightBlackSquare {
+ background: #DAF4D7;
+}
+
+.selectControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.optionSelectControl {
+}
+
+.buttonControlPlay,
+.buttonControlStop,
+.buttonControl {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.buttonControlSpace {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnButton {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.searchPgnExpression {
+/* a "width" attribute here must use the !important flag to override default settings */
+}
+
+.move,
+.variation {
+ font-weight: normal;
+ text-decoration: none;
+}
+
+a.move,
+a.variation,
+.commentMove {
+ white-space: nowrap;
+}
+
+.move {
+ color: black;
+}
+
+.comment,
+.variation {
+ color: gray;
+}
+
+.moveOn,
+.variation {
+ background: #DAF4D7;
+}
+
diff --git a/_assets/vendor/pgn4web/mini.html b/_assets/vendor/pgn4web/mini.html
new file mode 100644
index 0000000..71f9ee1
--- /dev/null
+++ b/_assets/vendor/pgn4web/mini.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+KK games
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[Event "Wch"]
+[Site "Moscow"]
+[Date "1985.10.15"]
+[Round "16"]
+[White "Karpov"]
+[Black "Kasparov"]
+[Result "0-1"]
+
+1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 Nc6 5. Nb5 d6 6. c4 Nf6 7. N1c3 a6 8.
+Na3 d5 9. cxd5 exd5 10. exd5 Nb4 11. Be2 Bc5 12. O-O O-O 13. Bf3 Bf5 14.
+Bg5 Re8 15. Qd2 b5 16. Rad1 Nd3 17. Nab1 h6 18. Bh4 b4 19. Na4 Bd6 20. Bg3
+Rc8 21. b3 g5 22. Bxd6 Qxd6 23. g3 Nd7 24. Bg2 Qf6 25. a3 a5 26. axb4 axb4
+27. Qa2 Bg6 28. d6 g4 29. Qd2 Kg7 30. f3 Qxd6 31. fxg4 Qd4+ 32. Kh1 Nf6 33.
+Rf4 Ne4 34. Qxd3 Nf2+ 35. Rxf2 Bxd3 36. Rfd2 Qe3 37. Rxd3 Rc1 38. Nb2 Qf2
+39. Nd2 Rxd1+ 40. Nxd1 Re1+ 0-1
+
+[Event "Wch"]
+[Site "London"]
+[Date "1986.08.25"]
+[Round "11"]
+[White "Karpov"]
+[Black "Kasparov"]
+[Result "1/2-1/2"]
+
+1. d4 Nf6 2. c4 g6 3. Nc3 d5 4. Bf4 Bg7 5. e3 c5 6. dxc5 Qa5 7. Rc1 dxc4 8.
+Bxc4 O-O 9. Nf3 Qxc5 10. Bb3 Nc6 11. O-O Qa5 12. h3 Bf5 13. Qe2 Ne4 14. Nd5
+e5 15. Rxc6 exf4 16. Rc7 Be6 17. Qe1 Qb5 18. Ne7+ Kh8 19. Bxe6 fxe6 20. Qb1
+Ng5 21. Nh4 Nxh3+ 22. Kh2 Qh5 23. Nexg6+ hxg6 24. Qxg6 Qe5 25. Rf7 Rxf7 26.
+Qxf7 Ng5 27. Ng6+ Kh7 28. Nxe5 Nxf7 29. Nxf7 Kg6 30. Nd6 fxe3 31. Nc4 exf2
+32. Rxf2 b5 33. Ne3 a5 34. Kg3 a4 35. Rc2 Rf8 36. Kg4 Bd4 37. Re2 Bxe3 38.
+Rxe3 Rf2 39. b3 Rxg2+ 40. Kf3 Rxa2 41. bxa4 1/2-1/2
+
+[Event "Wch"]
+[Site "Sevilla"]
+[Date "1987.10.14"]
+[Round "2"]
+[White "Kasparov"]
+[Black "Karpov"]
+[Result "0-1"]
+
+1. c4 e5 2. Nc3 Nf6 3. Nf3 Nc6 4. g3 Bb4 5. Bg2 O-O 6. O-O e4 7. Ng5 Bxc3
+8. bxc3 Re8 9. f3 e3 10. d3 d5 11. Qb3 Na5 12. Qa3 c6 13. cxd5 cxd5 14. f4
+Nc6 15. Rb1 Qc7 16. Bb2 Bg4 17. c4 dxc4 18. Bxf6 gxf6 19. Ne4 Kg7 20. dxc4
+Rad8 21. Rb3 Nd4 22. Rxe3 Qxc4 23. Kh1 Nf5 24. Rd3 Bxe2 25. Rxd8 Rxd8 26.
+Re1 Re8 27. Qa5 b5 28. Nd2 Qd3 29. Nb3 Bf3 30. Bxf3 Qxf3+ 31. Kg1 Rxe1+ 32.
+Qxe1 Ne3 0-1
+
+[Event "Wch"]
+[Site "Sevilla"]
+[Date "1987.12.16"]
+[Round "23"]
+[White "Karpov"]
+[Black "Kasparov"]
+[Result "1-0"]
+
+1. c4 c5 2. Nf3 Nf6 3. Nc3 d5 4. cxd5 Nxd5 5. d4 Nxc3 6. bxc3 g6 7. e3 Bg7
+8. Bd3 O-O 9. O-O Qc7 10. Rb1 b6 11. Qe2 Rd8 12. Be4 Ba6 13. c4 Nc6 14. d5
+f5 15. Bd3 e5 16. e4 Nd4 17. Nxd4 cxd4 18. Bg5 Rf8 19. Rfc1 Rac8 20. Bd2
+Rf7 21. a4 fxe4 22. Qxe4 Rcf8 23. f3 Bc8 24. a5 Bf5 25. Qe2 Re8 26. Be4 Bf8
+27. Qd3 Bc5 28. Ra1 Qd7 29. Re1 Qc8 30. Kh1 Rc7 31. Rab1 Kg7 32. Rec1 Bxe4
+33. fxe4 Rf7 34. Qg3 bxa5 35. Bxa5 Rf4 36. Re1 Qa6 37. Bd2 Rf7 38. Qd3 Ref8
+39. h3 Rf2 40. Ra1 Qf6 41. Rg1 h5 42. Ra5 Qe7 43. Rb1 h4 44. Ra6 R8f7 45.
+Rc6 Qf8 46. Rg1 Be7 47. Re6 Kh7 48. Be1 Rf1 49. Bd2 Bc5 50. Rc6 R7f3 51.
+gxf3 Rxf3 52. Rc7+ Kh8 53. Bh6 Rxd3 54. Bxf8 Rxh3+ 55. Kg2 Rg3+ 56. Kh2
+Rxg1 57. Bxc5 d3 1-0
+
+[Event "Wch"]
+[Site "New York"]
+[Date "1990.10.17"]
+[Round "4"]
+[White "Kasparov"]
+[Black "Karpov"]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8.
+c3 O-O 9. h3 Bb7 10. d4 Re8 11. Nbd2 Bf8 12. a4 h6 13. Bc2 exd4 14. cxd4
+Nb4 15. Bb1 c5 16. d5 Nd7 17. Ra3 f5 18. exf5 Nf6 19. Ne4 Bxd5 20. Nxf6+
+Qxf6 21. Bd2 Qxb2 22. Bxb4 Bf7 23. Re6 Qxb4 24. Rb3 Qxa4 25. Bc2 Rad8 26.
+Rbe3 Qb4 27. g3 a5 28. Nh4 d5 29. Qe2 Qc4 30. Bd3 Qc1+ 31. Kg2 c4 32. Bc2
+Bxe6 33. Rxe6 Rxe6 34. Qxe6+ Kh8 35. Ng6+ Kh7 36. Qe2 Qg5 37. f6 Qxf6 38.
+Nxf8+ Kg8 39. Ng6 Qf7 40. Ne7+ Kf8 41. Ng6+ 1/2-1/2
+
+[Event "Wch"]
+[Site "Lyon"]
+[Date "1990.12.15"]
+[Round "20"]
+[White "Kasparov"]
+[Black "Karpov"]
+[Result "1-0"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8.
+c3 O-O 9. h3 Bb7 10. d4 Re8 11. Nbd2 Bf8 12. a4 h6 13. Bc2 exd4 14. cxd4
+Nb4 15. Bb1 c5 16. d5 Nd7 17. Ra3 f5 18. Rae3 Nf6 19. Nh2 Kh8 20. b3 bxa4
+21. bxa4 c4 22. Bb2 fxe4 23. Nxe4 Nfxd5 24. Rg3 Re6 25. Ng4 Qe8 26. Nxh6 c3
+27. Nf5 cxb2 28. Qg4 Bc8 29. Qh4+ Rh6 30. Nxh6 gxh6 31. Kh2 Qe5 32. Ng5 Qf6
+33. Re8 Bf5 34. Qxh6+ Qxh6 35. Nf7+ Kh7 36. Bxf5+ Qg6 37. Bxg6+ Kg7 38.
+Rxa8 Be7 39. Rb8 a5 40. Be4+ Kxf7 41. Bxd5+ 1-0
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/one.pgn b/_assets/vendor/pgn4web/one.pgn
new file mode 100644
index 0000000..822aa7a
--- /dev/null
+++ b/_assets/vendor/pgn4web/one.pgn
@@ -0,0 +1,24 @@
+[Event "World Championship"]
+[Site "Reykjavik"]
+[Date "1972"]
+[Round "13"]
+[White "Spassky, Boris"]
+[Black "Fischer, Robert"]
+[Result "0-1"]
+[ECO "B04"]
+[Opening "Alekhine's defence"]
+[Variation "modern, fianchetto variation"]
+
+1. e4 Nf6 2. e5 Nd5 3. d4 d6 4. Nf3 g6 5. Bc4 Nb6 6. Bb3 Bg7 7. Nbd2 O-O 8.
+h3 a5 9. a4 dxe5 10. dxe5 Na6 11. O-O Nc5 12. Qe2 Qe8 13. Ne4 Nbxa4 14.
+Bxa4 Nxa4 15. Re1 Nb6 16. Bd2 a4 17. Bg5 h6 18. Bh4 Bf5 19. g4 Be6 20. Nd4
+Bc4 21. Qd2 Qd7 22. Rad1 Rfe8 23. f4 Bd5 24. Nc5 Qc8 25. Qc3 e6 26. Kh2 Nd7
+27. Nd3 c5 28. Nb5 Qc6 29. Nd6 Qxd6 30. exd6 Bxc3 31. bxc3 f6 32. g5 hxg5
+33. fxg5 f5 34. Bg3 Kf7 35. Ne5+ Nxe5 36. Bxe5 b5 37. Rf1 Rh8 38. Bf6 a3
+39. Rf4 a2 40. c4 Bxc4 41. d7 Bd5 42. Kg3 Ra3+ 43. c3 Rha8 44. Rh4 e5 45.
+Rh7+ Ke6 46. Re7+ Kd6 47. Rxe5 Rxc3+ 48. Kf2 Rc2+ 49. Ke1 Kxd7 50. Rexd5+
+Kc6 51. Rd6+ Kb7 52. Rd7+ Ka6 53. R7d2 Rxd2 54. Kxd2 b4 55. h4 Kb5 56. h5
+c4 57. Ra1 gxh5 58. g6 h4 59. g7 h3 60. Be7 Rg8 61. Bf8 h2 62. Kc2 Kc6 63.
+Rd1 b3+ 64. Kc3 h1=Q 65. Rxh1 Kd5 66. Kb2 f4 67. Rd1+ Ke4 68. Rc1 Kd3 69.
+Rd1+ Ke2 70. Rc1 f3 71. Bc5 Rxg7 72. Rxc4 Rd7 73. Re4+ Kf1 74. Bd4 f2 0-1
+
diff --git a/_assets/vendor/pgn4web/parsing-tests.js b/_assets/vendor/pgn4web/parsing-tests.js
new file mode 100644
index 0000000..636b8a5
--- /dev/null
+++ b/_assets/vendor/pgn4web/parsing-tests.js
@@ -0,0 +1,55 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+"use strict";
+
+function testAllMoves() {
+ var ii = 0;
+ var start = (new Date()).getTime();
+ resetAlert();
+ for (var gg = 0; gg < numberOfGames; gg++) {
+ Init(gg);
+ for (var vv = 0; vv < numberOfVars; vv++) {
+ for (var hh = StartPlyVar[vv]; hh <= StartPlyVar[vv] + PlyNumberVar[vv]; hh++) {
+ GoToMove(hh, vv);
+ if ((++ii % 100) === 0) { console.log("i=" + ii + " g=" + gg + "/" + numberOfGames + " a=" + alertNumSinceReset); }
+ }
+ }
+ }
+ console.log("t=" + ((new Date()).getTime() - start) + " a=" + alertNumSinceReset);
+ return alertNumSinceReset;
+}
+
+function testRandomMoves(nn, pv, pg) {
+ var start = (new Date()).getTime();
+ resetAlert();
+ if (typeof(nn) == "undefined") { nn = numberOfGames * 100; }
+ if (typeof(pv) == "undefined") { pv = 0.5; }
+ if (typeof(pg) == "undefined") { pg = 0.1; }
+ var vv = 0;
+ var gg = 0;
+ for (var ii = 1; ii <= nn; ii++) {
+ if (Math.random() < pg) {
+ gg = Math.floor(numberOfGames * Math.random());
+ Init(gg);
+ vv = 0;
+ }
+ if (Math.random() < pv) {
+ vv = Math.floor(numberOfVars * Math.random());
+ }
+ var hh = StartPlyVar[vv] + Math.floor((PlyNumberVar[vv] + 1) * Math.random());
+ GoToMove(hh, vv);
+ if ((ii % 100) === 0) { console.log("i=" + ii + "/" + nn + " a=" + alertNumSinceReset); }
+ }
+ console.log("t=" + ((new Date()).getTime() - start) + " a=" + alertNumSinceReset);
+ return alertNumSinceReset;
+}
+
+function customFunctionOnAlert (msg) {
+ console.log(" alert: g=" + currentGame + " v=" + CurrentVar + " p=" + CurrentPly + " m=" + msg);
+}
+
diff --git a/_assets/vendor/pgn4web/pawn.ico b/_assets/vendor/pgn4web/pawn.ico
new file mode 100644
index 0000000..6131d0e
Binary files /dev/null and b/_assets/vendor/pgn4web/pawn.ico differ
diff --git a/_assets/vendor/pgn4web/pawn.png b/_assets/vendor/pgn4web/pawn.png
new file mode 100644
index 0000000..367427b
Binary files /dev/null and b/_assets/vendor/pgn4web/pawn.png differ
diff --git a/_assets/vendor/pgn4web/pawns.png b/_assets/vendor/pgn4web/pawns.png
new file mode 100644
index 0000000..509f5a1
Binary files /dev/null and b/_assets/vendor/pgn4web/pawns.png differ
diff --git a/_assets/vendor/pgn4web/pgn-decoder.js b/_assets/vendor/pgn4web/pgn-decoder.js
new file mode 100644
index 0000000..9a1a27a
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn-decoder.js
@@ -0,0 +1,574 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ * Huffman encoding/decoding derived from code at http://rumkin.com/tools/compression/compress_huff.php
+ */
+
+// version 1 of PGN encoding:
+// encodedPGN = nnn$xxx0
+// nnn = number representing bytes length of the decoded message
+// $ = dollar char (delimiter for length info)
+// xxx = encoded text (using LetterCodes below)
+// 0 = zero char (version marker)
+
+"use strict";
+
+var encodingCharSet_dec;
+var encodingCharSet_enc;
+var encodingCharSet = encodingCharSet_dec = "$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_";
+var encodingVersion_dec;
+var encodingVersion_enc;
+var encodingVersion = encodingVersion_dec = 1;
+var errorString;
+
+if (((encodingCharSet_enc != undefined) && (encodingCharSet_enc != encodingCharSet_dec)) ||
+ ((encodingVersion_enc != undefined) && (encodingVersion_enc != encodingVersion_dec))) {
+ errorString = "error: PGN encoding/decoding mismatch";
+ if (typeof myAlert == "function") { myAlert(errorString); }
+ else { alert(errorString); }
+}
+
+function DecodePGN(bytes) {
+
+ if (bytes.charAt(bytes.length - 1) != encodingCharSet.charAt(encodingVersion)) {
+ errorString = "error: PGN encoding version mismatch (e:" +
+ bytes.charAt(bytes.length - 1) + " d:" + encodingCharSet.charAt(encodingVersion) + ")";
+ if (typeof myAlert == "function") { myAlert(errorString); }
+ else { alert(errorString); }
+ }
+
+ var originalLength = parseInt(bytes.match(/^[0-9]*/), 10);
+ bytes = bytes.replace(/^[0-9]*\$/,"");
+
+ var l = new Array();
+ l[0] = -146;
+ l[1] = -111;
+ l[2] = -66;
+ l[3] = -55;
+ l[4] = -6;
+ l[5] = 46;
+ l[6] = -8;
+ l[7] = 66;
+ l[8] = -10;
+ l[9] = 105;
+ l[10] = -12;
+ l[11] = 107;
+ l[12] = -14;
+ l[13] = 44;
+ l[14] = -16;
+ l[15] = 85;
+ l[16] = -18;
+ l[17] = 106;
+ l[18] = -20;
+ l[19] = 62;
+ l[20] = -22;
+ l[21] = 89;
+ l[22] = -24;
+ l[23] = 38;
+ l[24] = -40;
+ l[25] = -33;
+ l[26] = -30;
+ l[27] = -29;
+ l[28] = 17;
+ l[29] = 18;
+ l[30] = -32;
+ l[31] = 15;
+ l[32] = 16;
+ l[33] = -37;
+ l[34] = -36;
+ l[35] = 21;
+ l[36] = 22;
+ l[37] = -39;
+ l[38] = 19;
+ l[39] = 20;
+ l[40] = -48;
+ l[41] = -45;
+ l[42] = -44;
+ l[43] = 7;
+ l[44] = 8;
+ l[45] = -47;
+ l[46] = 5;
+ l[47] = 6;
+ l[48] = -52;
+ l[49] = -51;
+ l[50] = 12;
+ l[51] = 14;
+ l[52] = -54;
+ l[53] = 9;
+ l[54] = 11;
+ l[55] = -57;
+ l[56] = 34;
+ l[57] = -59;
+ l[58] = 78;
+ l[59] = -61;
+ l[60] = 57;
+ l[61] = -63;
+ l[62] = 63;
+ l[63] = -65;
+ l[64] = 109;
+ l[65] = 119;
+ l[66] = -80;
+ l[67] = -69;
+ l[68] = 101;
+ l[69] = -71;
+ l[70] = 55;
+ l[71] = -73;
+ l[72] = 69;
+ l[73] = -75;
+ l[74] = 118;
+ l[75] = -77;
+ l[76] = 121;
+ l[77] = -79;
+ l[78] = 73;
+ l[79] = 123;
+ l[80] = -82;
+ l[81] = 49;
+ l[82] = -86;
+ l[83] = -85;
+ l[84] = 13;
+ l[85] = 40;
+ l[86] = -88;
+ l[87] = 45;
+ l[88] = -90;
+ l[89] = 68;
+ l[90] = -92;
+ l[91] = 84;
+ l[92] = -94;
+ l[93] = 125;
+ l[94] = -96;
+ l[95] = 39;
+ l[96] = -98;
+ l[97] = 58;
+ l[98] = -100;
+ l[99] = 36;
+ l[100] = -102;
+ l[101] = 92;
+ l[102] = -104;
+ l[103] = 124;
+ l[104] = -108;
+ l[105] = -107;
+ l[106] = 3;
+ l[107] = 4;
+ l[108] = -110;
+ l[109] = 0;
+ l[110] = 2;
+ l[111] = -129;
+ l[112] = -118;
+ l[113] = -115;
+ l[114] = 50;
+ l[115] = -117;
+ l[116] = 102;
+ l[117] = 103;
+ l[118] = -122;
+ l[119] = -121;
+ l[120] = 48;
+ l[121] = 110;
+ l[122] = -126;
+ l[123] = -125;
+ l[124] = 10;
+ l[125] = 1;
+ l[126] = -128;
+ l[127] = 79;
+ l[128] = 117;
+ l[129] = -137;
+ l[130] = -132;
+ l[131] = 51;
+ l[132] = -134;
+ l[133] = 98;
+ l[134] = -136;
+ l[135] = 47;
+ l[136] = 112;
+ l[137] = -141;
+ l[138] = -140;
+ l[139] = 56;
+ l[140] = 81;
+ l[141] = -143;
+ l[142] = 104;
+ l[143] = -145;
+ l[144] = 114;
+ l[145] = 115;
+ l[146] = -192;
+ l[147] = -153;
+ l[148] = -150;
+ l[149] = 32;
+ l[150] = -152;
+ l[151] = 91;
+ l[152] = 93;
+ l[153] = -157;
+ l[154] = -156;
+ l[155] = 99;
+ l[156] = 120;
+ l[157] = -159;
+ l[158] = 116;
+ l[159] = -161;
+ l[160] = 75;
+ l[161] = -163;
+ l[162] = 80;
+ l[163] = -165;
+ l[164] = 67;
+ l[165] = -167;
+ l[166] = 77;
+ l[167] = -169;
+ l[168] = 90;
+ l[169] = -171;
+ l[170] = 60;
+ l[171] = -173;
+ l[172] = 33;
+ l[173] = -175;
+ l[174] = 37;
+ l[175] = -177;
+ l[176] = 96;
+ l[177] = -185;
+ l[178] = -182;
+ l[179] = -181;
+ l[180] = 248;
+ l[181] = 249;
+ l[182] = -184;
+ l[183] = 246;
+ l[184] = 247;
+ l[185] = -189;
+ l[186] = -188;
+ l[187] = 252;
+ l[188] = 253;
+ l[189] = -191;
+ l[190] = 250;
+ l[191] = 251;
+ l[192] = -228;
+ l[193] = -225;
+ l[194] = -196;
+ l[195] = 52;
+ l[196] = -198;
+ l[197] = 108;
+ l[198] = -208;
+ l[199] = -201;
+ l[200] = 83;
+ l[201] = -205;
+ l[202] = -204;
+ l[203] = 61;
+ l[204] = 72;
+ l[205] = -207;
+ l[206] = 113;
+ l[207] = 122;
+ l[208] = -212;
+ l[209] = -211;
+ l[210] = 65;
+ l[211] = 70;
+ l[212] = -214;
+ l[213] = 71;
+ l[214] = -216;
+ l[215] = 76;
+ l[216] = -218;
+ l[217] = 74;
+ l[218] = -220;
+ l[219] = 88;
+ l[220] = -222;
+ l[221] = 64;
+ l[222] = -224;
+ l[223] = 42;
+ l[224] = 94;
+ l[225] = -227;
+ l[226] = 53;
+ l[227] = 100;
+ l[228] = -232;
+ l[229] = -231;
+ l[230] = 54;
+ l[231] = 82;
+ l[232] = -234;
+ l[233] = 97;
+ l[234] = -236;
+ l[235] = 111;
+ l[236] = -238;
+ l[237] = 43;
+ l[238] = -240;
+ l[239] = 87;
+ l[240] = -242;
+ l[241] = 41;
+ l[242] = -244;
+ l[243] = 86;
+ l[244] = -246;
+ l[245] = 35;
+ l[246] = -256;
+ l[247] = -249;
+ l[248] = 59;
+ l[249] = -251;
+ l[250] = 95;
+ l[251] = -253;
+ l[252] = 126;
+ l[253] = -255;
+ l[254] = 254;
+ l[255] = 255;
+ l[256] = -384;
+ l[257] = -321;
+ l[258] = -290;
+ l[259] = -275;
+ l[260] = -268;
+ l[261] = -265;
+ l[262] = -264;
+ l[263] = 160;
+ l[264] = 161;
+ l[265] = -267;
+ l[266] = 158;
+ l[267] = 159;
+ l[268] = -272;
+ l[269] = -271;
+ l[270] = 164;
+ l[271] = 165;
+ l[272] = -274;
+ l[273] = 162;
+ l[274] = 163;
+ l[275] = -283;
+ l[276] = -280;
+ l[277] = -279;
+ l[278] = 152;
+ l[279] = 153;
+ l[280] = -282;
+ l[281] = 150;
+ l[282] = 151;
+ l[283] = -287;
+ l[284] = -286;
+ l[285] = 156;
+ l[286] = 157;
+ l[287] = -289;
+ l[288] = 154;
+ l[289] = 155;
+ l[290] = -306;
+ l[291] = -299;
+ l[292] = -296;
+ l[293] = -295;
+ l[294] = 176;
+ l[295] = 177;
+ l[296] = -298;
+ l[297] = 174;
+ l[298] = 175;
+ l[299] = -303;
+ l[300] = -302;
+ l[301] = 180;
+ l[302] = 181;
+ l[303] = -305;
+ l[304] = 178;
+ l[305] = 179;
+ l[306] = -314;
+ l[307] = -311;
+ l[308] = -310;
+ l[309] = 168;
+ l[310] = 169;
+ l[311] = -313;
+ l[312] = 166;
+ l[313] = 167;
+ l[314] = -318;
+ l[315] = -317;
+ l[316] = 172;
+ l[317] = 173;
+ l[318] = -320;
+ l[319] = 170;
+ l[320] = 171;
+ l[321] = -353;
+ l[322] = -338;
+ l[323] = -331;
+ l[324] = -328;
+ l[325] = -327;
+ l[326] = 128;
+ l[327] = 129;
+ l[328] = -330;
+ l[329] = 31;
+ l[330] = 127;
+ l[331] = -335;
+ l[332] = -334;
+ l[333] = 132;
+ l[334] = 133;
+ l[335] = -337;
+ l[336] = 130;
+ l[337] = 131;
+ l[338] = -346;
+ l[339] = -343;
+ l[340] = -342;
+ l[341] = 25;
+ l[342] = 26;
+ l[343] = -345;
+ l[344] = 23;
+ l[345] = 24;
+ l[346] = -350;
+ l[347] = -349;
+ l[348] = 29;
+ l[349] = 30;
+ l[350] = -352;
+ l[351] = 27;
+ l[352] = 28;
+ l[353] = -369;
+ l[354] = -362;
+ l[355] = -359;
+ l[356] = -358;
+ l[357] = 144;
+ l[358] = 145;
+ l[359] = -361;
+ l[360] = 142;
+ l[361] = 143;
+ l[362] = -366;
+ l[363] = -365;
+ l[364] = 148;
+ l[365] = 149;
+ l[366] = -368;
+ l[367] = 146;
+ l[368] = 147;
+ l[369] = -377;
+ l[370] = -374;
+ l[371] = -373;
+ l[372] = 136;
+ l[373] = 137;
+ l[374] = -376;
+ l[375] = 134;
+ l[376] = 135;
+ l[377] = -381;
+ l[378] = -380;
+ l[379] = 140;
+ l[380] = 141;
+ l[381] = -383;
+ l[382] = 138;
+ l[383] = 139;
+ l[384] = -448;
+ l[385] = -417;
+ l[386] = -402;
+ l[387] = -395;
+ l[388] = -392;
+ l[389] = -391;
+ l[390] = 224;
+ l[391] = 225;
+ l[392] = -394;
+ l[393] = 222;
+ l[394] = 223;
+ l[395] = -399;
+ l[396] = -398;
+ l[397] = 228;
+ l[398] = 229;
+ l[399] = -401;
+ l[400] = 226;
+ l[401] = 227;
+ l[402] = -410;
+ l[403] = -407;
+ l[404] = -406;
+ l[405] = 216;
+ l[406] = 217;
+ l[407] = -409;
+ l[408] = 214;
+ l[409] = 215;
+ l[410] = -414;
+ l[411] = -413;
+ l[412] = 220;
+ l[413] = 221;
+ l[414] = -416;
+ l[415] = 218;
+ l[416] = 219;
+ l[417] = -433;
+ l[418] = -426;
+ l[419] = -423;
+ l[420] = -422;
+ l[421] = 240;
+ l[422] = 241;
+ l[423] = -425;
+ l[424] = 238;
+ l[425] = 239;
+ l[426] = -430;
+ l[427] = -429;
+ l[428] = 244;
+ l[429] = 245;
+ l[430] = -432;
+ l[431] = 242;
+ l[432] = 243;
+ l[433] = -441;
+ l[434] = -438;
+ l[435] = -437;
+ l[436] = 232;
+ l[437] = 233;
+ l[438] = -440;
+ l[439] = 230;
+ l[440] = 231;
+ l[441] = -445;
+ l[442] = -444;
+ l[443] = 236;
+ l[444] = 237;
+ l[445] = -447;
+ l[446] = 234;
+ l[447] = 235;
+ l[448] = -480;
+ l[449] = -465;
+ l[450] = -458;
+ l[451] = -455;
+ l[452] = -454;
+ l[453] = 192;
+ l[454] = 193;
+ l[455] = -457;
+ l[456] = 190;
+ l[457] = 191;
+ l[458] = -462;
+ l[459] = -461;
+ l[460] = 196;
+ l[461] = 197;
+ l[462] = -464;
+ l[463] = 194;
+ l[464] = 195;
+ l[465] = -473;
+ l[466] = -470;
+ l[467] = -469;
+ l[468] = 184;
+ l[469] = 185;
+ l[470] = -472;
+ l[471] = 182;
+ l[472] = 183;
+ l[473] = -477;
+ l[474] = -476;
+ l[475] = 188;
+ l[476] = 189;
+ l[477] = -479;
+ l[478] = 186;
+ l[479] = 187;
+ l[480] = -496;
+ l[481] = -489;
+ l[482] = -486;
+ l[483] = -485;
+ l[484] = 208;
+ l[485] = 209;
+ l[486] = -488;
+ l[487] = 206;
+ l[488] = 207;
+ l[489] = -493;
+ l[490] = -492;
+ l[491] = 212;
+ l[492] = 213;
+ l[493] = -495;
+ l[494] = 210;
+ l[495] = 211;
+ l[496] = -504;
+ l[497] = -501;
+ l[498] = -500;
+ l[499] = 200;
+ l[500] = 201;
+ l[501] = -503;
+ l[502] = 198;
+ l[503] = 199;
+ l[504] = -508;
+ l[505] = -507;
+ l[506] = 204;
+ l[507] = 205;
+ l[508] = -510;
+ l[509] = 202;
+ l[510] = 203;
+
+ var a=0, b=0, e=0, i, o="";
+
+ function B() { if (a===0) { b=encodingCharSet.indexOf(bytes.charAt(e++)); a=6; } return ((b>>--a)&0x01); }
+
+ while(originalLength>0) { i=0;
+ while(l[i]<0) {
+ if (B()) { i=-l[i]; }
+ else { i++; }
+ }
+ o+=String.fromCharCode(l[i]);
+ originalLength--;
+ }
+
+ return o;
+}
+
diff --git a/_assets/vendor/pgn4web/pgn-encoder.js b/_assets/vendor/pgn4web/pgn-encoder.js
new file mode 100644
index 0000000..96cf585
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn-encoder.js
@@ -0,0 +1,324 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2013 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ *
+ * Huffman encoding/decoding derived from code at http://rumkin.com/tools/compression/compress_huff.php
+ */
+
+// version 1 of PGN encoding:
+// encodedPGN = nnn$xxx0
+// nnn = number representing bytes length of the decoded message
+// $ = dollar char (delimiter for length info)
+// xxx = encoded text (using LetterCodes below)
+// 0 = zero char (version marker)
+
+"use strict";
+
+var encodingCharSet_dec;
+var encodingCharSet_enc;
+var encodingCharSet = encodingCharSet_enc = "$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_";
+var encodingVersion_dec;
+var encodingVersion_enc;
+var encodingVersion = encodingVersion_enc = 1;
+var errorString;
+
+if (((encodingCharSet_dec != undefined) && (encodingCharSet_enc != encodingCharSet_dec)) ||
+ ((encodingVersion_dec != undefined) && (encodingVersion_enc != encodingVersion_dec))) {
+ errorString = "error: PGN encoding/decoding version/charset mismatch";
+ if (typeof myAlert == "function") { myAlert(errorString); }
+ else { alert(errorString); }
+}
+
+function EncodePGN(ov) {
+
+ function BitsToBytes(i) {
+ var o = 0;
+ if (i.charAt(0) == '1') { o += 32; }
+ if (i.charAt(1) == '1') { o += 16; }
+ if (i.charAt(2) == '1') { o += 8; }
+ if (i.charAt(3) == '1') { o += 4; }
+ if (i.charAt(4) == '1') { o += 2; }
+ if (i.charAt(5) == '1') { o += 1; }
+ return encodingCharSet.charAt(o);
+ }
+
+ var LetterCodes = new Array(256);
+ LetterCodes[0] = '00111111111111110';
+ LetterCodes[1] = '0101101';
+ LetterCodes[2] = '00111111111111111';
+ LetterCodes[3] = '00111111111111100';
+ LetterCodes[4] = '00111111111111101';
+ LetterCodes[5] = '000011111111111010';
+ LetterCodes[6] = '000011111111111011';
+ LetterCodes[7] = '000011111111111000';
+ LetterCodes[8] = '000011111111111001';
+ LetterCodes[9] = '000011111111111110';
+ LetterCodes[10] = '0101100';
+ LetterCodes[11] = '000011111111111111';
+ LetterCodes[12] = '000011111111111100';
+ LetterCodes[13] = '0011100';
+ LetterCodes[14] = '000011111111111101';
+ LetterCodes[15] = '000011111111110010';
+ LetterCodes[16] = '000011111111110011';
+ LetterCodes[17] = '000011111111110000';
+ LetterCodes[18] = '000011111111110001';
+ LetterCodes[19] = '000011111111110110';
+ LetterCodes[20] = '000011111111110111';
+ LetterCodes[21] = '000011111111110100';
+ LetterCodes[22] = '000011111111110101';
+ LetterCodes[23] = '1111111111110101010';
+ LetterCodes[24] = '1111111111110101011';
+ LetterCodes[25] = '1111111111110101000';
+ LetterCodes[26] = '1111111111110101001';
+ LetterCodes[27] = '1111111111110101110';
+ LetterCodes[28] = '1111111111110101111';
+ LetterCodes[29] = '1111111111110101100';
+ LetterCodes[30] = '1111111111110101101';
+ LetterCodes[31] = '1111111111110100010';
+ LetterCodes[32] = '1000';
+ LetterCodes[33] = '101111111110';
+ LetterCodes[34] = '00010';
+ LetterCodes[35] = '11111111110';
+ LetterCodes[36] = '0011111111110';
+ LetterCodes[37] = '1011111111110';
+ LetterCodes[38] = '00001111111110';
+ LetterCodes[39] = '00111111110';
+ LetterCodes[40] = '0011101';
+ LetterCodes[41] = '111111110';
+ LetterCodes[42] = '11001111111110';
+ LetterCodes[43] = '1111110';
+ LetterCodes[44] = '000011110';
+ LetterCodes[45] = '0011110';
+ LetterCodes[46] = '00000';
+ LetterCodes[47] = '0110110';
+ LetterCodes[48] = '010100';
+ LetterCodes[49] = '00110';
+ LetterCodes[50] = '01000';
+ LetterCodes[51] = '01100';
+ LetterCodes[52] = '11000';
+ LetterCodes[53] = '11010';
+ LetterCodes[54] = '11100';
+ LetterCodes[55] = '001010';
+ LetterCodes[56] = '011100';
+ LetterCodes[57] = '0001110';
+ LetterCodes[58] = '001111111110';
+ LetterCodes[59] = '1111111111100';
+ LetterCodes[60] = '10111111110';
+ LetterCodes[61] = '1100110100';
+ LetterCodes[62] = '000011111110';
+ LetterCodes[63] = '00011110';
+ LetterCodes[64] = '1100111111110';
+ LetterCodes[65] = '110011100';
+ LetterCodes[66] = '000010';
+ LetterCodes[67] = '10111110';
+ LetterCodes[68] = '00111110';
+ LetterCodes[69] = '0010110';
+ LetterCodes[70] = '110011101';
+ LetterCodes[71] = '110011110';
+ LetterCodes[72] = '1100110101';
+ LetterCodes[73] = '0010111110';
+ LetterCodes[74] = '11001111110';
+ LetterCodes[75] = '101110';
+ LetterCodes[76] = '1100111110';
+ LetterCodes[77] = '101111110';
+ LetterCodes[78] = '000110';
+ LetterCodes[79] = '0101110';
+ LetterCodes[80] = '1011110';
+ LetterCodes[81] = '011101';
+ LetterCodes[82] = '11101';
+ LetterCodes[83] = '11001100';
+ LetterCodes[84] = '001111110';
+ LetterCodes[85] = '0000111110';
+ LetterCodes[86] = '1111111110';
+ LetterCodes[87] = '11111110';
+ LetterCodes[88] = '110011111110';
+ LetterCodes[89] = '0000111111110';
+ LetterCodes[90] = '1011111110';
+ LetterCodes[91] = '10010';
+ LetterCodes[92] = '00111111111110';
+ LetterCodes[93] = '10011';
+ LetterCodes[94] = '11001111111111';
+ LetterCodes[95] = '11111111111010';
+ LetterCodes[96] = '10111111111110';
+ LetterCodes[97] = '11110';
+ LetterCodes[98] = '011010';
+ LetterCodes[99] = '10100';
+ LetterCodes[100] = '11011';
+ LetterCodes[101] = '00100';
+ LetterCodes[102] = '010010';
+ LetterCodes[103] = '010011';
+ LetterCodes[104] = '011110';
+ LetterCodes[105] = '0000110';
+ LetterCodes[106] = '00001111110';
+ LetterCodes[107] = '00001110';
+ LetterCodes[108] = '110010';
+ LetterCodes[109] = '000111110';
+ LetterCodes[110] = '010101';
+ LetterCodes[111] = '111110';
+ LetterCodes[112] = '0110111';
+ LetterCodes[113] = '1100110110';
+ LetterCodes[114] = '0111110';
+ LetterCodes[115] = '0111111';
+ LetterCodes[116] = '10110';
+ LetterCodes[117] = '0101111';
+ LetterCodes[118] = '00101110';
+ LetterCodes[119] = '000111111';
+ LetterCodes[120] = '10101';
+ LetterCodes[121] = '001011110';
+ LetterCodes[122] = '1100110111';
+ LetterCodes[123] = '0010111111';
+ LetterCodes[124] = '001111111111110';
+ LetterCodes[125] = '0011111110';
+ LetterCodes[126] = '111111111110110';
+ LetterCodes[127] = '1111111111110100011';
+ LetterCodes[128] = '1111111111110100000';
+ LetterCodes[129] = '1111111111110100001';
+ LetterCodes[130] = '1111111111110100110';
+ LetterCodes[131] = '1111111111110100111';
+ LetterCodes[132] = '1111111111110100100';
+ LetterCodes[133] = '1111111111110100101';
+ LetterCodes[134] = '1111111111110111010';
+ LetterCodes[135] = '1111111111110111011';
+ LetterCodes[136] = '1111111111110111000';
+ LetterCodes[137] = '1111111111110111001';
+ LetterCodes[138] = '1111111111110111110';
+ LetterCodes[139] = '1111111111110111111';
+ LetterCodes[140] = '1111111111110111100';
+ LetterCodes[141] = '1111111111110111101';
+ LetterCodes[142] = '1111111111110110010';
+ LetterCodes[143] = '1111111111110110011';
+ LetterCodes[144] = '1111111111110110000';
+ LetterCodes[145] = '1111111111110110001';
+ LetterCodes[146] = '1111111111110110110';
+ LetterCodes[147] = '1111111111110110111';
+ LetterCodes[148] = '1111111111110110100';
+ LetterCodes[149] = '1111111111110110101';
+ LetterCodes[150] = '1111111111110001010';
+ LetterCodes[151] = '1111111111110001011';
+ LetterCodes[152] = '1111111111110001000';
+ LetterCodes[153] = '1111111111110001001';
+ LetterCodes[154] = '1111111111110001110';
+ LetterCodes[155] = '1111111111110001111';
+ LetterCodes[156] = '1111111111110001100';
+ LetterCodes[157] = '1111111111110001101';
+ LetterCodes[158] = '1111111111110000010';
+ LetterCodes[159] = '1111111111110000011';
+ LetterCodes[160] = '1111111111110000000';
+ LetterCodes[161] = '1111111111110000001';
+ LetterCodes[162] = '1111111111110000110';
+ LetterCodes[163] = '1111111111110000111';
+ LetterCodes[164] = '1111111111110000100';
+ LetterCodes[165] = '1111111111110000101';
+ LetterCodes[166] = '1111111111110011010';
+ LetterCodes[167] = '1111111111110011011';
+ LetterCodes[168] = '1111111111110011000';
+ LetterCodes[169] = '1111111111110011001';
+ LetterCodes[170] = '1111111111110011110';
+ LetterCodes[171] = '1111111111110011111';
+ LetterCodes[172] = '1111111111110011100';
+ LetterCodes[173] = '1111111111110011101';
+ LetterCodes[174] = '1111111111110010010';
+ LetterCodes[175] = '1111111111110010011';
+ LetterCodes[176] = '1111111111110010000';
+ LetterCodes[177] = '1111111111110010001';
+ LetterCodes[178] = '1111111111110010110';
+ LetterCodes[179] = '1111111111110010111';
+ LetterCodes[180] = '1111111111110010100';
+ LetterCodes[181] = '1111111111110010101';
+ LetterCodes[182] = '1111111111111101010';
+ LetterCodes[183] = '1111111111111101011';
+ LetterCodes[184] = '1111111111111101000';
+ LetterCodes[185] = '1111111111111101001';
+ LetterCodes[186] = '1111111111111101110';
+ LetterCodes[187] = '1111111111111101111';
+ LetterCodes[188] = '1111111111111101100';
+ LetterCodes[189] = '1111111111111101101';
+ LetterCodes[190] = '1111111111111100010';
+ LetterCodes[191] = '1111111111111100011';
+ LetterCodes[192] = '1111111111111100000';
+ LetterCodes[193] = '1111111111111100001';
+ LetterCodes[194] = '1111111111111100110';
+ LetterCodes[195] = '1111111111111100111';
+ LetterCodes[196] = '1111111111111100100';
+ LetterCodes[197] = '1111111111111100101';
+ LetterCodes[198] = '1111111111111111010';
+ LetterCodes[199] = '1111111111111111011';
+ LetterCodes[200] = '1111111111111111000';
+ LetterCodes[201] = '1111111111111111001';
+ LetterCodes[202] = '1111111111111111110';
+ LetterCodes[203] = '1111111111111111111';
+ LetterCodes[204] = '1111111111111111100';
+ LetterCodes[205] = '1111111111111111101';
+ LetterCodes[206] = '1111111111111110010';
+ LetterCodes[207] = '1111111111111110011';
+ LetterCodes[208] = '1111111111111110000';
+ LetterCodes[209] = '1111111111111110001';
+ LetterCodes[210] = '1111111111111110110';
+ LetterCodes[211] = '1111111111111110111';
+ LetterCodes[212] = '1111111111111110100';
+ LetterCodes[213] = '1111111111111110101';
+ LetterCodes[214] = '1111111111111001010';
+ LetterCodes[215] = '1111111111111001011';
+ LetterCodes[216] = '1111111111111001000';
+ LetterCodes[217] = '1111111111111001001';
+ LetterCodes[218] = '1111111111111001110';
+ LetterCodes[219] = '1111111111111001111';
+ LetterCodes[220] = '1111111111111001100';
+ LetterCodes[221] = '1111111111111001101';
+ LetterCodes[222] = '1111111111111000010';
+ LetterCodes[223] = '1111111111111000011';
+ LetterCodes[224] = '1111111111111000000';
+ LetterCodes[225] = '1111111111111000001';
+ LetterCodes[226] = '1111111111111000110';
+ LetterCodes[227] = '1111111111111000111';
+ LetterCodes[228] = '1111111111111000100';
+ LetterCodes[229] = '1111111111111000101';
+ LetterCodes[230] = '1111111111111011010';
+ LetterCodes[231] = '1111111111111011011';
+ LetterCodes[232] = '1111111111111011000';
+ LetterCodes[233] = '1111111111111011001';
+ LetterCodes[234] = '1111111111111011110';
+ LetterCodes[235] = '1111111111111011111';
+ LetterCodes[236] = '1111111111111011100';
+ LetterCodes[237] = '1111111111111011101';
+ LetterCodes[238] = '1111111111111010010';
+ LetterCodes[239] = '1111111111111010011';
+ LetterCodes[240] = '1111111111111010000';
+ LetterCodes[241] = '1111111111111010001';
+ LetterCodes[242] = '1111111111111010110';
+ LetterCodes[243] = '1111111111111010111';
+ LetterCodes[244] = '1111111111111010100';
+ LetterCodes[245] = '1111111111111010101';
+ LetterCodes[246] = '10111111111111010';
+ LetterCodes[247] = '10111111111111011';
+ LetterCodes[248] = '10111111111111000';
+ LetterCodes[249] = '10111111111111001';
+ LetterCodes[250] = '10111111111111110';
+ LetterCodes[251] = '10111111111111111';
+ LetterCodes[252] = '10111111111111100';
+ LetterCodes[253] = '10111111111111101';
+ LetterCodes[254] = '1111111111101110';
+ LetterCodes[255] = '1111111111101111';
+
+ // Build resulting data stream
+ // The bits string could get very large
+ var bits = "";
+ var bytes = ov.length + "$";
+ for (var i = 0; i < ov.length; i ++) {
+ // converts ASCII chars above 255 to a star (code 42) avoiding decoding failure
+ if (ov.charCodeAt(i) > 255) { bits += LetterCodes[42]; }
+ else { bits += LetterCodes[ov.charCodeAt(i)]; }
+ while (bits.length > 5) {
+ bytes += BitsToBytes(bits);
+ bits = bits.slice(6, bits.length);
+ }
+ }
+ bytes += BitsToBytes(bits);
+
+ bytes += encodingCharSet.charAt(encodingVersion);
+
+ return bytes;
+}
+
diff --git a/_assets/vendor/pgn4web/pgn-encoder.php b/_assets/vendor/pgn4web/pgn-encoder.php
new file mode 100644
index 0000000..5ac5f9c
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn-encoder.php
@@ -0,0 +1,317 @@
+ 255) { $bits = $bits . $LetterCodes[42]; }
+ else { $bits = $bits . $LetterCodes[ord(substr($ov, $i, 1))]; }
+ while (strlen($bits) > 5) {
+ $bytes = $bytes . BitsToBytes($bits);
+ $bits = substr($bits, 6);
+ }
+ }
+ $bytes = $bytes . BitsToBytes($bits);
+
+ $bytes = $bytes . substr($encodingCharSet, $encodingVersion, 1);
+
+ return $bytes;
+}
+
+?>
diff --git a/_assets/vendor/pgn4web/pgn-standard-proposed-supplement.txt b/_assets/vendor/pgn4web/pgn-standard-proposed-supplement.txt
new file mode 100644
index 0000000..bac4f82
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn-standard-proposed-supplement.txt
@@ -0,0 +1,358 @@
+Standard: Portable Game Notation Specification and Implementation Guide
+(Supplement)
+Revised: 8 September 2001
+Status: Final draft
+Authors: Alan Cowderoy (Palamede), Ben Bulsink (DGT Projects), Andrew Templeton
+(Palamede/Palview), Eric Bentzen (Enpassant.dk, Palamede), Mathias Feist
+(Chessbase), Victor Zakharov (Chess Assistant).
+Contact: alan@cowderoy.com
+
+1. Introduction
+
+PGNs combination of a formal specification for computer use with easy
+readability and manipulation by humans has firmly established it as the data
+format of choice for representing chess games. This is a major success and a
+tribute to the quality of the work done by the original authors.
+
+Steven Edwards, the author, appears unfortunately to be no longer involved with
+PGN and there is now no defined means of arbitrating and implementing proposed
+changes. There is also a huge body of software which implements the current
+standard and would break in various ways if it were changed.
+
+At the same time the increased use of DGT boards in major tournaments for the
+retransmission of live games has rendered one of the features that was planned
+for PGN but never implemented increasingly important, namely the possibility of
+encoding time information relating to each move.
+
+Without the possibility of encoding time information in PGN its usefulness in
+the retransmission of live games is significantly weakened forcing developpers
+either to resort to proprietary formats or to break the standard.
+
+Computer chess program authors are also now finding that they have no accepted
+way to encode such simple and recognised concepts as numeric position
+evaluations or search depth.
+
+Given this situation some have understandably set about defining wholly new XML
+based definitions for encoding chess games. While this work is interesting, as
+of today there is no widely accepted and supported XML schema.
+
+It thus seems important to us to attempt an incremental improvement to PGN
+intended to eliminate the functional weaknesses described above.
+
+This document proposes an extension to PGN designed to offer an immediate 'work
+around' solution to the problems outlined above.
+
+2. Design aims
+2.1 The enhancements must not break the existing standard.
+
+This rules out new syntactical elements. Steve Edwards himself proposed a format
+(BIF) that would have resolved these problems but it was never implemented and
+doing so now would break large quantities of software.
+
+2.2 The enhancements should maintain the ease of use and legibility so
+characteristic of PGN.
+
+This rules out very precise but possibly more computer readable formats in
+favour of clearer human readable ones.
+
+2.3 If new command structures are to be introduced they should be specified in
+such a way that they are usable for other extensions if needed.
+
+The intention here is to provide a generalised syntax that will enable other
+extensions rather than only solving one particular problem (time handling in our
+case).
+
+3. Proposals
+3.1 Introduction
+
+The only way to extend the syntax without breaking the standard is to embed the
+new command syntax into PGN comments. This is a kludge and such an obvious one
+that it was already suggested when Steve Edwards proposed the BIF format in
+1996. It is still the only option available.
+
+Apart from a general command syntax we propose several specific commands
+designed for the handling of time information.
+
+We also propose the addition of a tag to the header to handle the state of the
+"running clock" where the game is being transmitted live and two other optional
+tags designed to handle special cases where the clock start times are needed.
+
+These additions are not problematic as the standard concedes the possibility of
+adding new tags to the header (outside the mandatory seven tag roster)
+
+Interpreting time information for a game is either difficult or impossible if
+the time controls in force are not known. PGN has a TimeControl tag for this and
+it should be regarded as mandatory when time information is to be embedded into
+the pgn.
+
+3.2 A generalised format for embedding commands in comments.
+3.2.1 Position
+An embedded command may occur at any position in a standard PGN comment, ie
+between { } .
+For example:
+{Optional leading comments [%clk 1:05:23] optional trailing comments} where
+[%clk 1:05:23] is the embedded command string.
+
+3.2.2 Structure
+The command string is structured as follows.
+
+A leading tag of [%
+A command name consisting of one or more alphanumeric characters.
+A space character.
+Either a single parameter or a comma delimited list of parameter values.
+A closing tag of ]
+
+For example:
+[%clk 1:05:23]
+
+3.2.3 Opening delimiter
+The characters [% are redefined to indicate the start of a command sequence when
+found in between pgn comment tags.
+
+As all ASCII characters are legal in a comment string it is not possible to rely
+on any single character as an unambiguous opening delimiter. We have chosen to
+use [%. While this also could technicaly occur in some other context it seems
+highly unlikely.
+
+3.2.3 Commands
+
+Command names start immediately after the [%.
+They consist of one or more alphanumeric characters
+They are terminated by the first space character encountered.
+
+We are *not* proposing any fixed canonical list of commands. The idea is to
+describe a generalised command syntax, not to impose a particular set of
+commands.
+
+We *are* proposing a set of commands to deal with time handling. "clk" in the
+example above is the proposed command name for recording move times. See section
+4 for the detailed specification of this and other time related commands.
+
+In general software encountering an embedded command it does not understand
+should take no special action and pass the string through unchanged as part of
+the comment.
+
+For display purposes only presentation software, such as pgn readers, should by
+default strip out all commands before display in order to improve legibility.
+
+3.2.4 Parameters
+
+This parameter syntax is based on the epd opcode syntax described at 16.2.4 of
+the pgn spec.
+
+A command is followed by a single space and then either by a single operand or
+by a comma separated list of operands.
+
+An operand is either:
+i) a set containing any ascii characters except the comma and right hand square
+bracket
+or
+ii) a double quoted string containing a set of any ascii characters except the
+double quote.
+
+For instance:
+[%command 1:45:12,Nf6,"very interesting, but wrong"]
+
+This command has four operands, a time value, a san move value and a double
+quote delimitted string. Note that the quote delimitted string may contain
+commas.
+
+Commas are illegal in non quote delimitted strings because the comma serves as
+the operand list separator.
+
+Right hand square brackets are illegal in non quote delimitted strings because
+they terminate both the last operand and the command.
+
+We have thus departed from the epd opcode specification in two ways:
+i) The operand list is separated using a comma rather than a space.
+ii) Space characters are allowed in non quote delimited operands
+
+So it is possible to pass a full FEN string as an unquoted operand as in the
+example below.
+
+[%command "very tense start to the
+game",4r1k1/pp1b2r1/2n1pq1p/3p2pP/2pP2B1/P1P1Q3/2P2PPB/R4RK1 w - - 0 1,e4,d4]
+
+This command has four operands, the first is a double quote delimitted string,
+the second is a FEN, the third is e4 and the fourth is d4.
+
+3.2.5 Terminator
+The command is terminated by a single ] character.
+
+3.2.6 Multiple commands.
+A single comment tag may contain multiple embedded commands.
+For instance:
+{[%clk 0:00:07][%eval -6.05] White is toast}
+
+4. Time handling commands.
+4.1 Introduction.
+We propose the following commands for time handling The first is the command
+that DGT boards will be using to transmit times via pgn.
+
+The other commands are optional and cover times that can be derived from the
+clock time. They are technicaly redundant but may be usefull for highlighting
+aspects of the game and the players use of time.
+
+All these commands take one and only one parameter which is a time value in the
+format h:mm:ss (except for the mct command which requires hh:mm:ss)
+
+The comments containing the embedded commands are to be taken as referring to
+the move immediately preceding them.
+
+4.2 The clk command.
+
+{[%clk 1:55:21]}
+
+This is the time displayed on the players clock. It represents the time
+remaining to the next time control. It is proposed that future versions of
+software producing pgn from games played on DGT boards include this command
+after every move.
+
+The clk command is intended for the *automatic* recording of time values by
+digital clock/board combinations. It is not normaly intended for use with
+mechanical clocks which show a clock time rather than the time remaining to the
+next control.
+
+4.3 Elapsed Game Time : the egt command
+
+{[%egt 1:25:42]}
+
+The elapsed time that a player has used for all moves in the game up to that
+point.
+Takes one parameter in the format h:mm:ss
+
+4.4 Elapsed Move Time : the emt command
+
+{[%emt 0:05:42]}
+
+The elapsed time that a player used for the commented move.
+Takes one parameter in the format h:mm:ss
+
+4.5 Mechanical Clock Time : the mct command
+
+{[%mct 17:10:42]}
+The time actualy displayed on a mechanical clock. Notice that here the time
+format is hh:mm:ss.
+
+5. The "Running Clock"
+The syntax described above allows us to encode a move time for a *completed
+move*. This is all well and good but during transmission of a live game it can
+also be interesting to know the state of the clock of the player whose turn it
+is to move *but who has not yet done so*.
+
+5.1 The Clock tag
+We propose that this information should be encoded in a new header tag.
+
+[Clock "B/0:45:56"]
+
+As only one clock is running at a time only one tag is necessary.
+
+In the example above Blacks clock is running and is currently showing the time
+indicated by the string following the /.
+
+Clock is the name of the tag.
+It is followed by a string constructed as follows:
+The first character is either "W" (whites clock is running), "B" (blacks clock
+is running) or "N" (the clocks are stopped).
+This information is technicaly redundant as it could be calculated by looking at
+which side last moved. Encoding it here avoids this calculation and also covers
+the situation where a player forgets to switch the clocks. It also allows us to
+cover the admittedly rare case where the clocks are stopped.
+
+The second character is a "/" seperator.
+The rest of the string is a time in the format h:mm:ss which indicates the
+currently displayed clock time of the running clock. As for the clk command this
+represents the remaining time to the next time control.
+
+6. Clock Start Time.
+6.1 Introduction.
+Two optional tags are proposed to record the clock setting at the start of the
+play.
+While it may be helpfull to record normal clock start values here (as is done in
+the example below) they are mainly intended to cover the case where a game is
+adjourned and the displayed clock times at start of play are thus non standard.
+
+eg.
+[WhiteClock "1:07:00"]
+[BlackClock "0:56:00"]
+
+7. As explained above the existing pgn tag [TimeControl] (cf 9.6 and following
+of the standard) should be regarded as mandatory when move times are supplied.
+Clearly when manipulating time information about a game details of the time
+controls in use are vital.
+
+8. Example game.
+
+[Event "?"]
+[Site "Madrid"]
+[Date "1995.??.??"]
+[White "Beliavsky, A "]
+[Black "Timman, J "]
+[Result "1-0"]
+[ECO "E35"]
+[Round "2"]
+[TimeControl "40/7200:3600"]
+[WhiteClock "2:00:00"]
+[BlackClock "2:00:00"]
+[Clock "W/1:34:56"]
+
+1. d4 {[%clk 1:59:01]} Nf6 {[%clk 1:59:32] Timman hesitates slightly} 2. c4
+{[%clk 1:58:00]} e6 {[%clk 1:57:01]} 3. Nc3 {[%clk 1:37:00] Beliavsky clearly
+suprised here takes a full [%emt 0:20:00] on this move} Bb4 {[%clk 1:54:25]}
+
+Game notes:
+
+8.1. The time control is specified as 40 moves in two hours and then one hour to
+finish. This tag must be specified in order to permit calculation of such
+information as elapsed time since start of game. It is also particularly
+important that it be specified when fischer or bronstein time controls are used.
+
+8.2. In the example we have given the White and BlackClock tags but in this case
+this was redundant as the clocks were set as normal to show that two hours
+remained to the first time control. If the White and BlackClock tags are absent
+start times should be derived from the TimeControl tag and/or the Time tag,
+where they are specified they take precedence.
+
+8.3. The Clock tag, which is only relevant during live transmission of a game,
+here shows that it is whites turn to move and that he/she has 1 hour 34 minutes
+and 56 seconds remaining on their clock.
+
+8.4. PGN generated directly from DGT boards will have a clk command like the one
+following the first move after *all* subsequent moves.
+
+8.5. In this example we imagine that the pgn has been further edited to include
+additional text comments and commands (cf the %emt command after whites third
+move.)
+
+8.6. Notice that commands can appear at any point inside comments and that there
+may be multiple commands in a single comment.
+
+8.7. The Beliavsky/Timman game is real, all the rest is pure invention.
+
+9 Authors websites:
+DGT Projects: http://www.dgtprojects.com/
+Chess Base: http://www.chessbase.com/
+Chess Assistant: http://www.chessassistant.com/
+Palview: http://www.enpassant.dk/chess/palview/
+
+10. Thanks
+Many thanks to Axel Fritz and Robert Ericsson
+
+*additional notes:
+
+1. Cf Steve Edwards discussion of the planned implementation of BIF format here:
+http://groups.google.com/groups?hl=en&safe=off&ic=1&th=1fe06718d5ec89a5,20&seekm
+=4psfnl%24i5m%40darkstar.UCSC.EDU
+We ruled out the use of < > as delimiters specified in the BIF format because if
+this syntax is pasted into an html document then parsers will ignore the
+contents as an unrecognised tag. This is not the effect we want.
+
+2. While the seven tag roster is very precisely specified the PGN specification
+does envisage the specification of new optional tags. We have taken advantage of
+this to specify several new tags.
+
+Note also that there is already a [Time] tag - this denotes the time of the game
+start (and not anything else).
+
+3. For reference the current pgn standard is here
+http://www.clark.net/pub/pribut/standard.txt
diff --git a/_assets/vendor/pgn4web/pgn-standard.txt b/_assets/vendor/pgn4web/pgn-standard.txt
new file mode 100644
index 0000000..07149fd
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn-standard.txt
@@ -0,0 +1,2921 @@
+Standard: Portable Game Notation Specification and Implementation Guide
+
+Revised: 1994.03.12
+
+Authors: Interested readers of the Internet newsgroup rec.games.chess
+
+Coordinator: Steven J. Edwards (send comments to sje@world.std.com)
+
+
+0: Preface
+
+From the Tower of Babel story:
+
+"If now, while they are one people, all speaking the same language, they have
+started to do this, nothing will later stop them from doing whatever they
+propose to do."
+
+Genesis XI, v.6, _New American Bible_
+
+
+1: Introduction
+
+PGN is "Portable Game Notation", a standard designed for the representation of
+chess game data using ASCII text files. PGN is structured for easy reading and
+writing by human users and for easy parsing and generation by computer
+programs. The intent of the definition and propagation of PGN is to facilitate
+the sharing of public domain chess game data among chessplayers (both organic
+and otherwise), publishers, and computer chess researchers throughout the
+world.
+
+PGN is not intended to be a general purpose standard that is suitable for every
+possible use; no such standard could fill all conceivable requirements.
+Instead, PGN is proposed as a universal portable representation for data
+interchange. The idea is to allow the construction of a family of chess
+applications that can quickly and easily process chess game data using PGN for
+import and export among themselves.
+
+
+2: Chess data representation
+
+Computer usage among chessplayers has become quite common in recent years and a
+variety of different programs, both commercial and public domain, are used to
+generate, access, and propagate chess game data. Some of these programs are
+rather impressive; most are now well behaved in that they correctly follow the
+Laws of Chess and handle users' data with reasonable care. Unfortunately, many
+programs have had serious problems with several aspects of the external
+representation of chess game data. Sometimes these problems become more
+visible when a user attempts to move significant quantities of data from one
+program to another; if there has been no real effort to ensure portability of
+data, then the chances for a successful transfer are small at best.
+
+
+2.1: Data interchange incompatibility
+
+The reasons for format incompatibility are easy to understand. In fact, most
+of them are correlated with the same problems that have already been seen with
+commercial software offerings for other domains such as word processing,
+spreadsheets, fonts, and graphics. Sometimes a manufacturer deliberately
+designs a data format using encryption or some other secret, proprietary
+technique to "lock in" a customer. Sometimes a designer may produce a format
+that can be deciphered without too much difficulty, but at the same time
+publicly discourage third party software by claiming trade secret protection.
+Another software producer may develop a non-proprietary system, but it may work
+well only within the scope of a single program or application because it is not
+easily expandable. Finally, some other software may work very well for many
+purposes, but it uses symbols and language not easily understood by people or
+computers available to those outside the country of its development.
+
+
+2.2: Specification goals
+
+A specification for a portable game notation must observe the lessons of
+history and be able to handle probable needs of the future. The design
+criteria for PGN were selected to meet these needs. These criteria include:
+
+1) The details of the system must be publicly available and free of unnecessary
+complexity. Ideally, if the documentation is not available for some reason,
+typical chess software developers and users should be able to understand most
+of the data without the need for third party assistance.
+
+2) The details of the system must be non-proprietary so that users and software
+developers are unrestricted by concerns about infringing on intellectual
+property rights. The idea is to let chess programmers compete in a free market
+where customers may choose software based on their real needs and not based on
+artificial requirements created by a secret data format.
+
+3) The system must work for a variety of programs. The format should be such
+that it can be used by chess database programs, chess publishing programs,
+chess server programs, and chessplaying programs without being unnecessarily
+specific to any particular application class.
+
+4) The system must be easily expandable and scalable. The expansion ability
+must include handling data items that may not exist currently but could be
+expected to emerge in the future. (Examples: new opening classifications and
+new country names.) The system should be scalable in that it must not have any
+arbitrary restrictions concerning the quantity of stored data. Also, planned
+modes of expansion should either preserve earlier databases or at least allow
+for their automatic conversion.
+
+5) The system must be international. Chess software users are found in many
+countries and the system should be free of difficulties caused by conventions
+local to a given region.
+
+6) Finally, the system should handle the same kinds and amounts of data that
+are already handled by existing chess software and by print media.
+
+
+2.3: A sample PGN game
+
+Although its description may seem rather lengthy, PGN is actually fairly
+simple. A sample PGN game follows; it has most of the important features
+described in later sections of this document.
+
+[Event "F/S Return Match"]
+[Site "Belgrade, Serbia JUG"]
+[Date "1992.11.04"]
+[Round "29"]
+[White "Fischer, Robert J."]
+[Black "Spassky, Boris V."]
+[Result "1/2-1/2"]
+
+1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3
+O-O 9. h3 Nb8 10. d4 Nbd7 11. c4 c6 12. cxb5 axb5 13. Nc3 Bb7 14. Bg5 b4 15.
+Nb1 h6 16. Bh4 c5 17. dxe5 Nxe4 18. Bxe7 Qxe7 19. exd6 Qf6 20. Nbd2 Nxd6 21.
+Nc4 Nxc4 22. Bxc4 Nb6 23. Ne5 Rae8 24. Bxf7+ Rxf7 25. Nxf7 Rxe1+ 26. Qxe1 Kxf7
+27. Qe3 Qg5 28. Qxg5 hxg5 29. b3 Ke6 30. a3 Kd6 31. axb4 cxb4 32. Ra5 Nd5 33.
+f3 Bc8 34. Kf2 Bf5 35. Ra7 g6 36. Ra6+ Kc5 37. Ke1 Nf4 38. g3 Nxh3 39. Kd2 Kb5
+40. Rd6 Kc5 41. Ra6 Nf2 42. g4 Bd3 43. Re6 1/2-1/2
+
+
+3: Formats: import and export
+
+There are two formats in the PGN specification. These are the "import" format
+and the "export" format. These are the two different ways of formatting the
+same PGN data according to its source. The details of the two formats are
+described throughout the following sections of this document.
+
+Other than formats, there is the additional topic of PGN presentation. While
+both PGN import and export formats are designed to be readable by humans, there
+is no recommendation that either of these be an ultimate mode of chess data
+presentation. Rather, software developers are urged to consider all of the
+various techniques at their disposal to enhance the display of chess data at
+the presentation level (i.e., highest level) of their programs. This means
+that the use of different fonts, character sizes, color, and other tools of
+computer aided interaction and publishing should be explored to provide a high
+quality presentation appropriate to the function of the particular program.
+
+
+3.1: Import format allows for manually prepared data
+
+The import format is rather flexible and is used to describe data that may have
+been prepared by hand, much like a source file for a high level programming
+language. A program that can read PGN data should be able to handle the
+somewhat lax import format.
+
+
+3.2: Export format used for program generated output
+
+The export format is rather strict and is used to describe data that is usually
+prepared under program control, something like a pretty printed source program
+reformatted by a compiler.
+
+
+3.2.1: Byte equivalence
+
+For a given PGN data file, export format representations generated by different
+PGN programs on the same computing system should be exactly equivalent, byte
+for byte.
+
+
+3.2.2: Archival storage and the newline character
+
+Export format should also be used for archival storage. Here, "archival"
+storage is defined as storage that may be accessed by a variety of computing
+systems. The only extra requirement for archival storage is that the newline
+character have a specific representation that is independent of its value for a
+particular computing system's text file usage. The archival representation of
+a newline is the ASCII control character LF (line feed, decimal value 10,
+hexadecimal value 0x0a).
+
+Sadly, there are some accidents of history that survive to this day that have
+baroque representations for a newline: multicharacter sequences, end-of-line
+record markers, start-of-line byte counts, fixed length records, and so forth.
+It is well beyond the scope of the PGN project to reconcile all of these to the
+unified world of ANSI C and the those enjoying the bliss of a single '\n'
+convention. Some systems may just not be able to handle an archival PGN text
+file with native text editors. In these cases, an indulgence of sorts is
+granted to use the local newline convention in non-archival PGN files for those
+text editors.
+
+
+3.2.3: Speed of processing
+
+Several parts of the export format deal with exact descriptions of line and
+field justification that are absent from the import format details. The main
+reason for these restrictions on the export format are to allow the
+construction of simple data translation programs that can easily scan PGN data
+without having to have a full chess engine or other complex parsing routines.
+The idea is to encourage chess software authors to always allow for at least a
+limited PGN reading capability. Even when a full chess engine parsing
+capability is available, it is likely to be at least two orders of magnitude
+slower than a simple text scanner.
+
+
+3.2.4: Reduced export format
+
+A PGN game represented using export format is said to be in "reduced export
+format" if all of the following hold: 1) it has no commentary, 2) it has only
+the standard seven tag roster identification information ("STR", see below), 3)
+it has no recursive annotation variations ("RAV", see below), and 4) it has no
+numeric annotation glyphs ("NAG", see below). Reduced export format is used
+for bulk storage of unannotated games. It represents a minimum level of
+standard conformance for a PGN exporting application.
+
+
+4: Lexicographical issues
+
+PGN data is composed of characters; non-overlapping contiguous sequences of
+characters form lexical tokens.
+
+
+4.1: Character codes
+
+PGN data is represented using a subset of the eight bit ISO 8859/1 (Latin 1)
+character set. ("ISO" is an acronym for the International Standards
+Organization.) This set is also known as ECMA-94 and is similar to other ISO
+Latin character sets. ISO 8859/1 includes the standard seven bit ASCII
+character set for the 32 control character code values from zero to 31. The 95
+printing character code values from 32 to 126 are also equivalent to seven bit
+ASCII usage. (Code value 127, the ASCII DEL control character, is a graphic
+character in ISO 8859/1; it is not used for PGN data representation.)
+
+The 32 ISO 8859/1 code values from 128 to 159 are non-printing control
+characters. They are not used for PGN data representation. The 32 code values
+from 160 to 191 are mostly non-alphabetic printing characters and their use for
+PGN data is discouraged as their graphic representation varies considerably
+among other ISO Latin sets. Finally, the 64 code values from 192 to 255 are
+mostly alphabetic printing characters with various diacritical marks; their use
+is encouraged for those languages that require such characters. The graphic
+representations of this last set of 64 characters is fairly constant for the
+ISO Latin family.
+
+Printing character codes outside of the seven bit ASCII range may only appear
+in string data and in commentary. They are not permitted for use in symbol
+construction.
+
+Because some PGN users' environments may not support presentation of non-ASCII
+characters, PGN game authors should refrain from using such characters in
+critical commentary or string values in game data that may be referenced in
+such environments. PGN software authors should have their programs handle such
+environments by displaying a question mark ("?") for non-ASCII character codes.
+This is an important point because there are many computing systems that can
+display eight bit character data, but the display graphics may differ among
+machines and operating systems from different manufacturers.
+
+Only four of the ASCII control characters are permitted in PGN import format;
+these are the horizontal and vertical tabs along with the linefeed and carriage
+return codes.
+
+The external representation of the newline character may differ among
+platforms; this is an acceptable variation as long as the details of the
+implementation are hidden from software implementors and users. When a choice
+is practical, the Unix "newline is linefeed" convention is preferred.
+
+
+4.2: Tab characters
+
+Tab characters, both horizontal and vertical, are not permitted in the export
+format. This is because the treatment of tab characters is highly dependent
+upon the particular software in use on the host computing system. Also, tab
+characters may not appear inside of string data.
+
+
+4.3: Line lengths
+
+PGN data are organized as simple text lines without any special bytes or
+markers for secondary record structure imposed by specific operating systems.
+Import format PGN text lines are limited to having a maximum of 255 characters
+per line including the newline character. Lines with 80 or more printing
+characters are strongly discouraged because of the difficulties experienced by
+common text editors with long lines.
+
+In some cases, very long tag values will require 80 or more columns, but these
+are relatively rare. An example of this is the "FEN" tag pair; it may have a
+long tag value, but this particular tag pair is only used to represent a game
+that doesn't start from the usual initial position.
+
+
+5: Commentary
+
+Comment text may appear in PGN data. There are two kinds of comments. The
+first kind is the "rest of line" comment; this comment type starts with a
+semicolon character and continues to the end of the line. The second kind
+starts with a left brace character and continues to the next right brace
+character. Comments cannot appear inside any token.
+
+Brace comments do not nest; a left brace character appearing in a brace comment
+loses its special meaning and is ignored. A semicolon appearing inside of a
+brace comment loses its special meaning and is ignored. Braces appearing
+inside of a semicolon comments lose their special meaning and are ignored.
+
+*** Export format representation of comments needs definition work.
+
+
+6: Escape mechanism
+
+There is a special escape mechanism for PGN data. This mechanism is triggered
+by a percent sign character ("%") appearing in the first column of a line; the
+data on the rest of the line is ignored by publicly available PGN scanning
+software. This escape convention is intended for the private use of software
+developers and researchers to embed non-PGN commands and data in PGN streams.
+
+A percent sign appearing in any other place other than the first position in a
+line does not trigger the escape mechanism.
+
+
+7: Tokens
+
+PGN character data is organized as tokens. A token is a contiguous sequence of
+characters that represents a basic semantic unit. Tokens may be separated from
+adjacent tokens by white space characters. (White space characters include
+space, newline, and tab characters.) Some tokens are self delimiting and do
+not require white space characters.
+
+A string token is a sequence of zero or more printing characters delimited by a
+pair of quote characters (ASCII decimal value 34, hexadecimal value 0x22). An
+empty string is represented by two adjacent quotes. (Note: an apostrophe is
+not a quote.) A quote inside a string is represented by the backslash
+immediately followed by a quote. A backslash inside a string is represented by
+two adjacent backslashes. Strings are commonly used as tag pair values (see
+below). Non-printing characters like newline and tab are not permitted inside
+of strings. A string token is terminated by its closing quote. Currently, a
+string is limited to a maximum of 255 characters of data.
+
+An integer token is a sequence of one or more decimal digit characters. It is
+a special case of the more general "symbol" token class described below.
+Integer tokens are used to help represent move number indications (see below).
+An integer token is terminated just prior to the first non-symbol character
+following the integer digit sequence.
+
+A period character (".") is a token by itself. It is used for move number
+indications (see below). It is self terminating.
+
+An asterisk character ("*") is a token by itself. It is used as one of the
+possible game termination markers (see below); it indicates an incomplete game
+or a game with an unknown or otherwise unavailable result. It is self
+terminating.
+
+The left and right bracket characters ("[" and "]") are tokens. They are used
+to delimit tag pairs (see below). Both are self terminating.
+
+The left and right parenthesis characters ("(" and ")") are tokens. They are
+used to delimit Recursive Annotation Variations (see below). Both are self
+terminating.
+
+The left and right angle bracket characters ("<" and ">") are tokens. They are
+reserved for future expansion. Both are self terminating.
+
+A Numeric Annotation Glyph ("NAG", see below) is a token; it is composed of a
+dollar sign character ("$") immediately followed by one or more digit
+characters. It is terminated just prior to the first non-digit character
+following the digit sequence.
+
+A symbol token starts with a letter or digit character and is immediately
+followed by a sequence of zero or more symbol continuation characters. These
+continuation characters are letter characters ("A-Za-z"), digit characters
+("0-9"), the underscore ("_"), the plus sign ("+"), the octothorpe sign ("#"),
+the equal sign ("="), the colon (":"), and the hyphen ("-"). Symbols are used
+for a variety of purposes. All characters in a symbol are significant. A
+symbol token is terminated just prior to the first non-symbol character
+following the symbol character sequence. Currently, a symbol is limited to a
+maximum of 255 characters in length.
+
+
+8: Parsing games
+
+A PGN database file is a sequential collection of zero or more PGN games. An
+empty file is a valid, although somewhat uninformative, PGN database.
+
+A PGN game is composed of two sections. The first is the tag pair section and
+the second is the movetext section. The tag pair section provides information
+that identifies the game by defining the values associated with a set of
+standard parameters. The movetext section gives the usually enumerated and
+possibly annotated moves of the game along with the concluding game termination
+marker. The chess moves themselves are represented using SAN (Standard
+Algebraic Notation), also described later in this document.
+
+
+8.1: Tag pair section
+
+The tag pair section is composed of a series of zero or more tag pairs.
+
+A tag pair is composed of four consecutive tokens: a left bracket token, a
+symbol token, a string token, and a right bracket token. The symbol token is
+the tag name and the string token is the tag value associated with the tag
+name. (There is a standard set of tag names and semantics described below.)
+The same tag name should not appear more than once in a tag pair section.
+
+A further restriction on tag names is that they are composed exclusively of
+letters, digits, and the underscore character. This is done to facilitate
+mapping of tag names into key and attribute names for use with general purpose
+database programs.
+
+For PGN import format, there may be zero or more white space characters between
+any adjacent pair of tokens in a tag pair.
+
+For PGN export format, there are no white space characters between the left
+bracket and the tag name, there are no white space characters between the tag
+value and the right bracket, and there is a single space character between the
+tag name and the tag value.
+
+Tag names, like all symbols, are case sensitive. All tag names used for
+archival storage begin with an upper case letter.
+
+PGN import format may have multiple tag pairs on the same line and may even
+have a tag pair spanning more than a single line. Export format requires each
+tag pair to appear left justified on a line by itself; a single empty line
+follows the last tag pair.
+
+Some tag values may be composed of a sequence of items. For example, a
+consultation game may have more than one player for a given side. When this
+occurs, the single character ":" (colon) appears between adjacent items.
+Because of this use as an internal separator in strings, the colon should not
+otherwise appear in a string.
+
+The tag pair format is designed for expansion; initially only strings are
+allowed as tag pair values. Tag value formats associated with the STR (Seven
+Tag Roster, see below) will not change; they will always be string values.
+However, there are long term plans to allow general list structures as tag
+values for non-STR tag pairs. Use of these expanded tag values will likely be
+restricted to special research programs. In all events, the top level
+structure of a tag pair remains the same: left bracket, tag name, tag value,
+and right bracket.
+
+
+8.1.1: Seven Tag Roster
+
+There is a set of tags defined for mandatory use for archival storage of PGN
+data. This is the STR (Seven Tag Roster). The interpretation of these tags is
+fixed as is the order in which they appear. Although the definition and use of
+additional tag names and semantics is permitted and encouraged when needed, the
+STR is the common ground that all programs should follow for public data
+interchange.
+
+For import format, the order of tag pairs is not important. For export format,
+the STR tag pairs appear before any other tag pairs. (The STR tag pairs must
+also appear in order; this order is described below). Also for export format,
+any additional tag pairs appear in ASCII order by tag name.
+
+The seven tag names of the STR are (in order):
+
+1) Event (the name of the tournament or match event)
+
+2) Site (the location of the event)
+
+3) Date (the starting date of the game)
+
+4) Round (the playing round ordinal of the game)
+
+5) White (the player of the white pieces)
+
+6) Black (the player of the black pieces)
+
+7) Result (the result of the game)
+
+A set of supplemental tag names is given later in this document.
+
+For PGN export format, a single blank line appears after the last of the tag
+pairs to conclude the tag pair section. This helps simple scanning programs to
+quickly determine the end of the tag pair section and the beginning of the
+movetext section.
+
+
+8.1.1.1: The Event tag
+
+The Event tag value should be reasonably descriptive. Abbreviations are to be
+avoided unless absolutely necessary. A consistent event naming should be used
+to help facilitate database scanning. If the name of the event is unknown, a
+single question mark should appear as the tag value.
+
+Examples:
+
+[Event "FIDE World Championship"]
+
+[Event "Moscow City Championship"]
+
+[Event "ACM North American Computer Championship"]
+
+[Event "Casual Game"]
+
+
+8.1.1.2: The Site tag
+
+The Site tag value should include city and region names along with a standard
+name for the country. The use of the IOC (International Olympic Committee)
+three letter names is suggested for those countries where such codes are
+available. If the site of the event is unknown, a single question mark should
+appear as the tag value. A comma may be used to separate a city from a region.
+No comma is needed to separate a city or region from the IOC country code. A
+later section of this document gives a list of three letter nation codes along
+with a few additions for "locations" not covered by the IOC.
+
+Examples:
+
+[Site "New York City, NY USA"]
+
+[Site "St. Petersburg RUS"]
+
+[Site "Riga LAT"]
+
+
+8.1.1.3: The Date tag
+
+The Date tag value gives the starting date for the game. (Note: this is not
+necessarily the same as the starting date for the event.) The date is given
+with respect to the local time of the site given in the Event tag. The Date
+tag value field always uses a standard ten character format: "YYYY.MM.DD". The
+first four characters are digits that give the year, the next character is a
+period, the next two characters are digits that give the month, the next
+character is a period, and the final two characters are digits that give the
+day of the month. If the any of the digit fields are not known, then question
+marks are used in place of the digits.
+
+Examples:
+
+[Date "1992.08.31"]
+
+[Date "1993.??.??"]
+
+[Date "2001.01.01"]
+
+
+8.1.1.4: The Round tag
+
+The Round tag value gives the playing round for the game. In a match
+competition, this value is the number of the game played. If the use of a
+round number is inappropriate, then the field should be a single hyphen
+character. If the round is unknown, a single question mark should appear as
+the tag value.
+
+Some organizers employ unusual round designations and have multipart playing
+rounds and sometimes even have conditional rounds. In these cases, a multipart
+round identifier can be made from a sequence of integer round numbers separated
+by periods. The leftmost integer represents the most significant round and
+succeeding integers represent round numbers in descending hierarchical order.
+
+Examples:
+
+[Round "1"]
+
+[Round "3.1"]
+
+[Round "4.1.2"]
+
+
+8.1.1.5: The White tag
+
+The White tag value is the name of the player or players of the white pieces.
+The names are given as they would appear in a telephone directory. The family
+or last name appears first. If a first name or first initial is available, it
+is separated from the family name by a comma and a space. Finally, one or more
+middle initials may appear. (Wherever a comma appears, the very next character
+should be a space. Wherever an initial appears, the very next character should
+be a period.) If the name is unknown, a single question mark should appear as
+the tag value.
+
+The intent is to allow meaningful ASCII sorting of the tag value that is
+independent of regional name formation customs. If more than one person is
+playing the white pieces, the names are listed in alphabetical order and are
+separated by the colon character between adjacent entries. A player who is
+also a computer program should have appropriate version information listed
+after the name of the program.
+
+The format used in the FIDE Rating Lists is appropriate for use for player name
+tags.
+
+Examples:
+
+[White "Tal, Mikhail N."]
+
+[White "van der Wiel, Johan"]
+
+[White "Acme Pawngrabber v.3.2"]
+
+[White "Fine, R."]
+
+
+8.1.1.6: The Black tag
+
+The Black tag value is the name of the player or players of the black pieces.
+The names are given here as they are for the White tag value.
+
+Examples:
+
+[Black "Lasker, Emmanuel"]
+
+[Black "Smyslov, Vasily V."]
+
+[Black "Smith, John Q.:Woodpusher 2000"]
+
+[Black "Morphy"]
+
+
+8.1.1.7: The Result tag
+
+The Result field value is the result of the game. It is always exactly the
+same as the game termination marker that concludes the associated movetext. It
+is always one of four possible values: "1-0" (White wins), "0-1" (Black wins),
+"1/2-1/2" (drawn game), and "*" (game still in progress, game abandoned, or
+result otherwise unknown). Note that the digit zero is used in both of the
+first two cases; not the letter "O".
+
+All possible examples:
+
+[Result "0-1"]
+
+[Result "1-0"]
+
+[Result "1/2-1/2"]
+
+[Result "*"]
+
+
+8.2: Movetext section
+
+The movetext section is composed of chess moves, move number indications,
+optional annotations, and a single concluding game termination marker.
+
+Because illegal moves are not real chess moves, they are not permitted in PGN
+movetext. They may appear in commentary, however. One would hope that illegal
+moves are relatively rare in games worthy of recording.
+
+
+8.2.1: Movetext line justification
+
+In PGN import format, tokens in the movetext do not require any specific line
+justification.
+
+In PGN export format, tokens in the movetext are placed left justified on
+successive text lines each of which has less than 80 printing characters. As
+many tokens as possible are placed on a line with the remainder appearing on
+successive lines. A single space character appears between any two adjacent
+symbol tokens on the same line in the movetext. As with the tag pair section,
+a single empty line follows the last line of data to conclude the movetext
+section.
+
+Neither the first or the last character on an export format PGN line is a
+space. (This may change in the case of commentary; this area is currently
+under development.)
+
+
+8.2.2: Movetext move number indications
+
+A move number indication is composed of one or more adjacent digits (an integer
+token) followed by zero or more periods. The integer portion of the indication
+gives the move number of the immediately following white move (if present) and
+also the immediately following black move (if present).
+
+
+8.2.2.1: Import format move number indications
+
+PGN import format does not require move number indications. It does not
+prohibit superfluous move number indications anywhere in the movetext as long
+as the move numbers are correct.
+
+PGN import format move number indications may have zero or more period
+characters following the digit sequence that gives the move number; one or more
+white space characters may appear between the digit sequence and the period(s).
+
+
+8.2.2.2: Export format move number indications
+
+There are two export format move number indication formats, one for use
+appearing immediately before a white move element and one for use appearing
+immediately before a black move element. A white move number indication is
+formed from the integer giving the fullmove number with a single period
+character appended. A black move number indication is formed from the integer
+giving the fullmove number with three period characters appended.
+
+All white move elements have a preceding move number indication. A black move
+element has a preceding move number indication only in two cases: first, if
+there is intervening annotation or commentary between the black move and the
+previous white move; and second, if there is no previous white move in the
+special case where a game starts from a position where Black is the active
+player.
+
+There are no other cases where move number indications appear in PGN export
+format.
+
+
+8.2.3: Movetext SAN (Standard Algebraic Notation)
+
+SAN (Standard Algebraic Notation) is a representation standard for chess moves
+using the ASCII Latin alphabet.
+
+Examples of SAN recorded games are found throughout most modern chess
+publications. SAN as presented in this document uses English language single
+character abbreviations for chess pieces, although this is easily changed in
+the source. English is chosen over other languages because it appears to be
+the most widely recognized.
+
+An alternative to SAN is FAN (Figurine Algebraic Notation). FAN uses miniature
+piece icons instead of single letter piece abbreviations. The two notations
+are otherwise identical.
+
+
+8.2.3.1: Square identification
+
+SAN identifies each of the sixty four squares on the chessboard with a unique
+two character name. The first character of a square identifier is the file of
+the square; a file is a column of eight squares designated by a single lower
+case letter from "a" (leftmost or queenside) up to and including "h" (rightmost
+or kingside). The second character of a square identifier is the rank of the
+square; a rank is a row of eight squares designated by a single digit from "1"
+(bottom side [White's first rank]) up to and including "8" (top side [Black's
+first rank]). The initial squares of some pieces are: white queen rook at a1,
+white king at e1, black queen knight pawn at b7, and black king rook at h8.
+
+
+8.2.3.2: Piece identification
+
+SAN identifies each piece by a single upper case letter. The standard English
+values: pawn = "P", knight = "N", bishop = "B", rook = "R", queen = "Q", and
+king = "K".
+
+The letter code for a pawn is not used for SAN moves in PGN export format
+movetext. However, some PGN import software disambiguation code may allow for
+the appearance of pawn letter codes. Also, pawn and other piece letter codes
+are needed for use in some tag pair and annotation constructs.
+
+It is admittedly a bit chauvinistic to select English piece letters over those
+from other languages. There is a slight justification in that English is a de
+facto universal second language among most chessplayers and program users. It
+is probably the best that can be done for now. A later section of this
+document gives alternative piece letters, but these should be used only for
+local presentation software and not for archival storage or for dynamic
+interchange among programs.
+
+
+8.2.3.3: Basic SAN move construction
+
+A basic SAN move is given by listing the moving piece letter (omitted for
+pawns) followed by the destination square. Capture moves are denoted by the
+lower case letter "x" immediately prior to the destination square; pawn
+captures include the file letter of the originating square of the capturing
+pawn immediately prior to the "x" character.
+
+SAN kingside castling is indicated by the sequence "O-O"; queenside castling is
+indicated by the sequence "O-O-O". Note that the upper case letter "O" is
+used, not the digit zero. The use of a zero character is not only incompatible
+with traditional text practices, but it can also confuse parsing algorithms
+which also have to understand about move numbers and game termination markers.
+Also note that the use of the letter "O" is consistent with the practice of
+having all chess move symbols start with a letter; also, it follows the
+convention that all non-pwn move symbols start with an upper case letter.
+
+En passant captures do not have any special notation; they are formed as if the
+captured pawn were on the capturing pawn's destination square. Pawn promotions
+are denoted by the equal sign "=" immediately following the destination square
+with a promoted piece letter (indicating one of knight, bishop, rook, or queen)
+immediately following the equal sign. As above, the piece letter is in upper
+case.
+
+
+8.2.3.4: Disambiguation
+
+In the case of ambiguities (multiple pieces of the same type moving to the same
+square), the first appropriate disambiguating step of the three following steps
+is taken:
+
+First, if the moving pieces can be distinguished by their originating files,
+the originating file letter of the moving piece is inserted immediately after
+the moving piece letter.
+
+Second (when the first step fails), if the moving pieces can be distinguished
+by their originating ranks, the originating rank digit of the moving piece is
+inserted immediately after the moving piece letter.
+
+Third (when both the first and the second steps fail), the two character square
+coordinate of the originating square of the moving piece is inserted
+immediately after the moving piece letter.
+
+Note that the above disambiguation is needed only to distinguish among moves of
+the same piece type to the same square; it is not used to distinguish among
+attacks of the same piece type to the same square. An example of this would be
+a position with two white knights, one on square c3 and one on square g1 and a
+vacant square e2 with White to move. Both knights attack square e2, and if
+both could legally move there, then a file disambiguation is needed; the
+(nonchecking) knight moves would be "Nce2" and "Nge2". However, if the white
+king were at square e1 and a black bishop were at square b4 with a vacant
+square d2 (thus an absolute pin of the white knight at square c3), then only
+one white knight (the one at square g1) could move to square e2: "Ne2".
+
+
+8.2.3.5: Check and checkmate indication characters
+
+If the move is a checking move, the plus sign "+" is appended as a suffix to
+the basic SAN move notation; if the move is a checkmating move, the octothorpe
+sign "#" is appended instead.
+
+Neither the appearance nor the absence of either a check or checkmating
+indicator is used for disambiguation purposes. This means that if two (or
+more) pieces of the same type can move to the same square the differences in
+checking status of the moves does not allieviate the need for the standard rank
+and file disabiguation described above. (Note that a difference in checking
+status for the above may occur only in the case of a discovered check.)
+
+Neither the checking or checkmating indicators are considered annotation as
+they do not communicate subjective information. Therefore, they are
+qualitatively different from move suffix annotations like "!" and "?".
+Subjective move annotations are handled using Numeric Annotation Glyphs as
+described in a later section of this document.
+
+There are no special markings used for double checks or discovered checks.
+
+There are no special markings used for drawing moves.
+
+
+8.2.3.6: SAN move length
+
+SAN moves can be as short as two characters (e.g., "d4"), or as long as seven
+characters (e.g., "Qa6xb7#", "fxg1=Q+"). The average SAN move length seen in
+realistic games is probably just fractionally longer than three characters. If
+the SAN rules seem complicated, be assured that the earlier notation systems of
+LEN (Long English Notation) and EDN (English Descriptive Notation) are much
+more complex, and that LAN (Long Algebraic Notation, the predecessor of SAN) is
+unnecessarily bulky.
+
+
+8.2.3.7: Import and export SAN
+
+PGN export format always uses the above canonical SAN to represent moves in the
+movetext section of a PGN game. Import format is somewhat more relaxed and it
+makes allowances for moves that do not conform exactly to the canonical format.
+However, these allowances may differ among different PGN reader programs. Only
+data appearing in export format is in all cases guaranteed to be importable
+into all PGN readers.
+
+There are a number of suggested guidelines for use with implementing PGN reader
+software for permitting non-canonical SAN move representation. The idea is to
+have a PGN reader apply various transformations to attempt to discover the move
+that is represented by non-canonical input. Some suggested transformations
+include: letter case remapping, capture indicator insertion, check indicator
+insertion, and checkmate indicator insertion.
+
+
+8.2.3.8: SAN move suffix annotations
+
+Import format PGN allows for the use of traditional suffix annotations for
+moves. There are exactly six such annotations available: "!", "?", "!!", "!?",
+"?!", and "??". At most one such suffix annotation may appear per move, and if
+present, it is always the last part of the move symbol.
+
+When exported, a move suffix annotation is translated into the corresponding
+Numeric Annotation Glyph as described in a later section of this document. For
+example, if the single move symbol "Qxa8?" appears in an import format PGN
+movetext, it would be replaced with the two adjacent symbols "Qxa8 $2".
+
+
+8.2.4: Movetext NAG (Numeric Annotation Glyph)
+
+An NAG (Numeric Annotation Glyph) is a movetext element that is used to
+indicate a simple annotation in a language independent manner. An NAG is
+formed from a dollar sign ("$") with a non-negative decimal integer suffix.
+The non-negative integer must be from zero to 255 in value.
+
+
+8.2.5: Movetext RAV (Recursive Annotation Variation)
+
+An RAV (Recursive Annotation Variation) is a sequence of movetext containing
+one or more moves enclosed in parentheses. An RAV is used to represent an
+alternative variation. The alternate move sequence given by an RAV is one that
+may be legally played by first unplaying the move that appears immediately
+prior to the RAV. Because the RAV is a recursive construct, it may be nested.
+
+*** The specification for import/export representation of RAV elements needs
+further development.
+
+
+8.2.6: Game Termination Markers
+
+Each movetext section has exactly one game termination marker; the marker
+always occurs as the last element in the movetext. The game termination marker
+is a symbol that is one of the following four values: "1-0" (White wins), "0-1"
+(Black wins), "1/2-1/2" (drawn game), and "*" (game in progress, result
+unknown, or game abandoned). Note that the digit zero is used in the above;
+not the upper case letter "O". The game termination marker appearing in the
+movetext of a game must match the value of the game's Result tag pair. (While
+the marker appears as a string in the Result tag, it appears as a symbol
+without quotes in the movetext.)
+
+
+9: Supplemental tag names
+
+The following tag names and their associated semantics are recommended for use
+for information not contained in the Seven Tag Roster.
+
+
+9.1: Player related information
+
+Note that if there is more than one player field in an instance of a player
+(White or Black) tag, then there will be corresponding multiple fields in any
+of the following tags. For example, if the White tag has the three field value
+"Jones:Smith:Zacharias" (a consultation game), then the WhiteTitle tag could
+have a value of "IM:-:GM" if Jones was an International Master, Smith was
+untitled, and Zacharias was a Grandmaster.
+
+
+9.1.1: Tags: WhiteTitle, BlackTitle
+
+These use string values such as "FM", "IM", and "GM"; these tags are used only
+for the standard abbreviations for FIDE titles. A value of "-" is used for an
+untitled player.
+
+
+9.1.2: Tags: WhiteElo, BlackElo
+
+These tags use integer values; these are used for FIDE Elo ratings. A value of
+"-" is used for an unrated player.
+
+
+9.1.3: Tags: WhiteUSCF, BlackUSCF
+
+These tags use integer values; these are used for USCF (United States Chess
+Federation) ratings. Similar tag names can be constructed for other rating
+agencies.
+
+
+9.1.4: Tags: WhiteNA, BlackNA
+
+These tags use string values; these are the e-mail or network addresses of the
+players. A value of "-" is used for a player without an electronic address.
+
+
+9.1.5: Tags: WhiteType, BlackType
+
+These tags use string values; these describe the player types. The value
+"human" should be used for a person while the value "program" should be used
+for algorithmic (computer) players.
+
+
+9.2: Event related information
+
+The following tags are used for providing additional information about the
+event.
+
+
+9.2.1: Tag: EventDate
+
+This uses a date value, similar to the Date tag field, that gives the starting
+date of the Event.
+
+
+9.2.2: Tag: EventSponsor
+
+This uses a string value giving the name of the sponsor of the event.
+
+
+9.2.3: Tag: Section
+
+This uses a string; this is used for the playing section of a tournament (e.g.,
+"Open" or "Reserve").
+
+
+9.2.4: Tag: Stage
+
+This uses a string; this is used for the stage of a multistage event (e.g.,
+"Preliminary" or "Semifinal").
+
+
+9.2.5: Tag: Board
+
+This uses an integer; this identifies the board number in a team event and also
+in a simultaneous exhibition.
+
+
+9.3: Opening information (locale specific)
+
+The following tag pairs are used for traditional opening names. The associated
+tag values will vary according to the local language in use.
+
+
+9.3.1: Tag: Opening
+
+This uses a string; this is used for the traditional opening name. This will
+vary by locale. This tag pair is associated with the use of the EPD opcode
+"v0" described in a later section of this document.
+
+
+9.3.2: Tag: Variation
+
+This uses a string; this is used to further refine the Opening tag. This will
+vary by locale. This tag pair is associated with the use of the EPD opcode
+"v1" described in a later section of this document.
+
+
+9.3.3: Tag: SubVariation
+
+This uses a string; this is used to further refine the Variation tag. This
+will vary by locale. This tag pair is associated with the use of the EPD
+opcode "v2" described in a later section of this document.
+
+
+9.4: Opening information (third party vendors)
+
+The following tag pairs are used for representing opening identification
+according to various third party vendors and organizations. References to
+these organizations does not imply any endorsement of them or any endorsement
+by them.
+
+
+9.4.1: Tag: ECO
+
+This uses a string of either the form "XDD" or the form "XDD/DD" where the "X"
+is a letter from "A" to "E" and the "D" positions are digits; this is used for
+an opening designation from the five volume _Encyclopedia of Chess Openings_.
+This tag pair is associated with the use of the EPD opcode "eco" described in a
+later section of this document.
+
+
+9.4.2: Tag: NIC
+
+This uses a string; this is used for an opening designation from the _New in
+Chess_ database. This tag pair is associated with the use of the EPD opcode
+"nic" described in a later section of this document.
+
+
+9.5: Time and date related information
+
+The following tags assist with further refinement of the time and data
+information associated with a game.
+
+
+9.5.1: Tag: Time
+
+This uses a time-of-day value in the form "HH:MM:SS"; similar to the Date tag
+except that it denotes the local clock time (hours, minutes, and seconds) of
+the start of the game. Note that colons, not periods, are used for field
+separators for the Time tag value. The value is taken from the local time
+corresponding to the location given in the Site tag pair.
+
+
+9.5.2: Tag: UTCTime
+
+This tag is similar to the Time tag except that the time is given according to
+the Universal Coordinated Time standard.
+
+
+9.5.3: Tag:; UTCDate
+
+This tag is similar to the Date tag except that the date is given according to
+the Universal Coordinated Time standard.
+
+
+9.6: Time control
+
+The follwing tag is used to help describe the time control used with the game.
+
+
+9.6.1: Tag: TimeControl
+
+This uses a list of one or more time control fields. Each field contains a
+descriptor for each time control period; if more than one descriptor is present
+then they are separated by the colon character (":"). The descriptors appear
+in the order in which they are used in the game. The last field appearing is
+considered to be implicitly repeated for further control periods as needed.
+
+There are six kinds of TimeControl fields.
+
+The first kind is a single question mark ("?") which means that the time
+control mode is unknown. When used, it is usually the only descriptor present.
+
+The second kind is a single hyphen ("-") which means that there was no time
+control mode in use. When used, it is usually the only descriptor present.
+
+The third Time control field kind is formed as two positive integers separated
+by a solidus ("/") character. The first integer is the number of moves in the
+period and the second is the number of seconds in the period. Thus, a time
+control period of 40 moves in 2 1/2 hours would be represented as "40/9000".
+
+The fourth TimeControl field kind is used for a "sudden death" control period.
+It should only be used for the last descriptor in a TimeControl tag value. It
+is sometimes the only descriptor present. The format consists of a single
+integer that gives the number of seconds in the period. Thus, a blitz game
+would be represented with a TimeControl tag value of "300".
+
+The fifth TimeControl field kind is used for an "incremental" control period.
+It should only be used for the last descriptor in a TimeControl tag value and
+is usually the only descriptor in the value. The format consists of two
+positive integers separated by a plus sign ("+") character. The first integer
+gives the minimum number of seconds allocated for the period and the second
+integer gives the number of extra seconds added after each move is made. So,
+an incremental time control of 90 minutes plus one extra minute per move would
+be given by "4500+60" in the TimeControl tag value.
+
+The sixth TimeControl field kind is used for a "sandclock" or "hourglass"
+control period. It should only be used for the last descriptor in a
+TimeControl tag value and is usually the only descriptor in the value. The
+format consists of an asterisk ("*") immediately followed by a positive
+integer. The integer gives the total number of seconds in the sandclock
+period. The time control is implemented as if a sandclock were set at the
+start of the period with an equal amount of sand in each of the two chambers
+and the players invert the sandclock after each move with a time forfeit
+indicated by an empty upper chamber. Electronic implementation of a physical
+sandclock may be used. An example sandclock specification for a common three
+minute egg timer sandclock would have a tag value of "*180".
+
+Additional TimeControl field kinds will be defined as necessary.
+
+
+9.7: Alternative starting positions
+
+There are two tags defined for assistance with describing games that did not
+start from the usual initial array.
+
+
+9.7.1: Tag: SetUp
+
+This tag takes an integer that denotes the "set-up" status of the game. A
+value of "0" indicates that the game has started from the usual initial array.
+A value of "1" indicates that the game started from a set-up position; this
+position is given in the "FEN" tag pair. This tag must appear for a game
+starting with a set-up position. If it appears with a tag value of "1", a FEN
+tag pair must also appear.
+
+
+9.7.2: Tag: FEN
+
+This tag uses a string that gives the Forsyth-Edwards Notation for the starting
+position used in the game. FEN is described in a later section of this
+document. If a SetUp tag appears with a tag value of "1", the FEN tag pair is
+also required.
+
+
+9.8: Game conclusion
+
+There is a single tag that discusses the conclusion of the game.
+
+
+9.8.1: Tag: Termination
+
+This takes a string that describes the reason for the conclusion of the game.
+While the Result tag gives the result of the game, it does not provide any
+extra information and so the Termination tag is defined for this purpose.
+
+Strings that may appear as Termination tag values:
+
+* "abandoned": abandoned game.
+
+* "adjudication": result due to third party adjudication process.
+
+* "death": losing player called to greater things, one hopes.
+
+* "emergency": game concluded due to unforeseen circumstances.
+
+* "normal": game terminated in a normal fashion.
+
+* "rules infraction": administrative forfeit due to losing player's failure to
+observe either the Laws of Chess or the event regulations.
+
+* "time forfeit": loss due to losing player's failure to meet time control
+requirements.
+
+* "unterminated": game not terminated.
+
+
+9.9: Miscellaneous
+
+These are tags that can be briefly described and that doon't fit well inother
+sections.
+
+
+9.9.1: Tag: Annotator
+
+This tag uses a name or names in the format of the player name tags; this
+identifies the annotator or annotators of the game.
+
+
+9.9.2: Tag: Mode
+
+This uses a string that gives the playing mode of the game. Examples: "OTB"
+(over the board), "PM" (paper mail), "EM" (electronic mail), "ICS" (Internet
+Chess Server), and "TC" (general telecommunication).
+
+
+9.9.3: Tag: PlyCount
+
+This tag takes a single integer that gives the number of ply (moves) in the
+game.
+
+
+10: Numeric Annotation Glyphs
+
+NAG zero is used for a null annotation; it is provided for the convenience of
+software designers as a placeholder value and should probably not be used in
+external PGN data.
+
+NAGs with values from 1 to 9 annotate the move just played.
+
+NAGs with values from 10 to 135 modify the current position.
+
+NAGs with values from 136 to 139 describe time pressure.
+
+Other NAG values are reserved for future definition.
+
+Note: the number assignments listed below should be considered preliminary in
+nature; they are likely to be changed as a result of reviewer feedback.
+
+NAG Interpretation
+--- --------------
+ 0 null annotation
+ 1 good move (traditional "!")
+ 2 poor move (traditional "?")
+ 3 very good move (traditional "!!")
+ 4 very poor move (traditional "??")
+ 5 speculative move (traditional "!?")
+ 6 questionable move (traditional "?!")
+ 7 forced move (all others lose quickly)
+ 8 singular move (no reasonable alternatives)
+ 9 worst move
+ 10 drawish position
+ 11 equal chances, quiet position
+ 12 equal chances, active position
+ 13 unclear position
+ 14 White has a slight advantage
+ 15 Black has a slight advantage
+ 16 White has a moderate advantage
+ 17 Black has a moderate advantage
+ 18 White has a decisive advantage
+ 19 Black has a decisive advantage
+ 20 White has a crushing advantage (Black should resign)
+ 21 Black has a crushing advantage (White should resign)
+ 22 White is in zugzwang
+ 23 Black is in zugzwang
+ 24 White has a slight space advantage
+ 25 Black has a slight space advantage
+ 26 White has a moderate space advantage
+ 27 Black has a moderate space advantage
+ 28 White has a decisive space advantage
+ 29 Black has a decisive space advantage
+ 30 White has a slight time (development) advantage
+ 31 Black has a slight time (development) advantage
+ 32 White has a moderate time (development) advantage
+ 33 Black has a moderate time (development) advantage
+ 34 White has a decisive time (development) advantage
+ 35 Black has a decisive time (development) advantage
+ 36 White has the initiative
+ 37 Black has the initiative
+ 38 White has a lasting initiative
+ 39 Black has a lasting initiative
+ 40 White has the attack
+ 41 Black has the attack
+ 42 White has insufficient compensation for material deficit
+ 43 Black has insufficient compensation for material deficit
+ 44 White has sufficient compensation for material deficit
+ 45 Black has sufficient compensation for material deficit
+ 46 White has more than adequate compensation for material deficit
+ 47 Black has more than adequate compensation for material deficit
+ 48 White has a slight center control advantage
+ 49 Black has a slight center control advantage
+ 50 White has a moderate center control advantage
+ 51 Black has a moderate center control advantage
+ 52 White has a decisive center control advantage
+ 53 Black has a decisive center control advantage
+ 54 White has a slight kingside control advantage
+ 55 Black has a slight kingside control advantage
+ 56 White has a moderate kingside control advantage
+ 57 Black has a moderate kingside control advantage
+ 58 White has a decisive kingside control advantage
+ 59 Black has a decisive kingside control advantage
+ 60 White has a slight queenside control advantage
+ 61 Black has a slight queenside control advantage
+ 62 White has a moderate queenside control advantage
+ 63 Black has a moderate queenside control advantage
+ 64 White has a decisive queenside control advantage
+ 65 Black has a decisive queenside control advantage
+ 66 White has a vulnerable first rank
+ 67 Black has a vulnerable first rank
+ 68 White has a well protected first rank
+ 69 Black has a well protected first rank
+ 70 White has a poorly protected king
+ 71 Black has a poorly protected king
+ 72 White has a well protected king
+ 73 Black has a well protected king
+ 74 White has a poorly placed king
+ 75 Black has a poorly placed king
+ 76 White has a well placed king
+ 77 Black has a well placed king
+ 78 White has a very weak pawn structure
+ 79 Black has a very weak pawn structure
+ 80 White has a moderately weak pawn structure
+ 81 Black has a moderately weak pawn structure
+ 82 White has a moderately strong pawn structure
+ 83 Black has a moderately strong pawn structure
+ 84 White has a very strong pawn structure
+ 85 Black has a very strong pawn structure
+ 86 White has poor knight placement
+ 87 Black has poor knight placement
+ 88 White has good knight placement
+ 89 Black has good knight placement
+ 90 White has poor bishop placement
+ 91 Black has poor bishop placement
+ 92 White has good bishop placement
+ 93 Black has good bishop placement
+ 84 White has poor rook placement
+ 85 Black has poor rook placement
+ 86 White has good rook placement
+ 87 Black has good rook placement
+ 98 White has poor queen placement
+ 99 Black has poor queen placement
+100 White has good queen placement
+101 Black has good queen placement
+102 White has poor piece coordination
+103 Black has poor piece coordination
+104 White has good piece coordination
+105 Black has good piece coordination
+106 White has played the opening very poorly
+107 Black has played the opening very poorly
+108 White has played the opening poorly
+109 Black has played the opening poorly
+110 White has played the opening well
+111 Black has played the opening well
+112 White has played the opening very well
+113 Black has played the opening very well
+114 White has played the middlegame very poorly
+115 Black has played the middlegame very poorly
+116 White has played the middlegame poorly
+117 Black has played the middlegame poorly
+118 White has played the middlegame well
+119 Black has played the middlegame well
+120 White has played the middlegame very well
+121 Black has played the middlegame very well
+122 White has played the ending very poorly
+123 Black has played the ending very poorly
+124 White has played the ending poorly
+125 Black has played the ending poorly
+126 White has played the ending well
+127 Black has played the ending well
+128 White has played the ending very well
+129 Black has played the ending very well
+130 White has slight counterplay
+131 Black has slight counterplay
+132 White has moderate counterplay
+133 Black has moderate counterplay
+134 White has decisive counterplay
+135 Black has decisive counterplay
+136 White has moderate time control pressure
+137 Black has moderate time control pressure
+138 White has severe time control pressure
+139 Black has severe time control pressure
+
+
+11: File names and directories
+
+File names chosen for PGN data should be both informative and portable. The
+directory names and arrangements should also be chosen for the same reasons and
+also for ease of navigation.
+
+Some of suggested file and directory names may be difficult or impossible to
+represent on certain computing systems. Use of appropriate conversion customs
+is encouraged.
+
+
+11.1: File name suffix for PGN data
+
+The use of the file suffix ".pgn" is encouraged for ASCII text files containing
+PGN data.
+
+
+11.2: File name formation for PGN data for a specific player
+
+PGN games for a specific player should have a file name consisting of the
+player's last name followed by the ".pgn" suffix.
+
+
+11.3: File name formation for PGN data for a specific event
+
+PGN games for a specific event should have a file name consisting of the
+event's name followed by the ".pgn" suffix.
+
+
+11.4: File name formation for PGN data for chronologically ordered games
+
+PGN data files used for chronologically ordered (oldest first) archives use
+date information as file name root strings. A file containing all the PGN
+games for a given year would have an eight character name in the format
+"YYYY.pgn". A file containing PGN data for a given month would have a ten
+character name in the format "YYYYMM.pgn". Finally, a file for PGN games for a
+single day would have a twelve character name in the format "YYYYMMDD.pgn".
+Large files are split into smaller files as needed.
+
+As game files are commonly arranged by chronological order, games with missing
+or incomplete Date tag pair data are to be avoided. Any question mark
+characters in a Date tag value will be treated as zero digits for collation
+within a file and also for file naming.
+
+Large quantities of PGN data arranged by chronological order should be
+organized into hierarchical directories. A directory containing all PGN data
+for a given year would have a four character name in the format "YYYY";
+directories containing PGN files for a given month would have a six character
+name in the format "YYYYMM".
+
+
+11.5: Suggested directory tree organization
+
+A suggested directory arrangement for ftp sites and CD-ROM distributions:
+
+* PGN: master directory of the PGN subtree (pub/chess/Game-Databases/PGN)
+
+* PGN/Events: directory of PGN files, each for a specific event
+
+* PGN/Events/News: news and status of the event collection
+
+* PGN/Events/ReadMe: brief description of the local directory contents
+
+* PGN/MGR: directory of the Master Games Repository subtree
+
+* PGN/MGR/News: news and status of the entire PGN/MGR subtree
+
+* PGN/MGR/ReadMe: brief description of the local directory contents
+
+* PGN/MGR/YYYY: directory of games or subtrees for the year YYYY
+
+* PGN/MGR/YYYY/ReadMe: description of local directory for year YYYY
+
+* PGN/MGR/YYYY/News: news and status for year YYYY data
+
+* PGN/News: news and status of the entire PGN subtree
+
+* PGN/Players: directory of PGN files, each for a specific player
+
+* PGN/Players/News: news and status of the player collection
+
+* PGN/Players/ReadMe: brief description of the local directory contents
+
+* PGN/ReadMe: brief description of the local directory contents
+
+* PGN/Standard: the PGN standard (this document)
+
+* PGN/Tools: software utilities that access PGN data
+
+
+12: PGN collating sequence
+
+There is a standard sorting order for PGN games within a file. This collation
+is based on eight keys; these are the seven tag values of the STR and also the
+movetext itself.
+
+The first (most important, primary key) is the Date tag. Earlier dated games
+appear prior to games played at a later date. This field is sorted by
+ascending numeric value first with the year, then the month, and finally the
+day of the month. Query characters used for unknown date digit values will be
+treated as zero digit characters for ordering comparison.
+
+The second key is the Event tag. This is sorted in ascending ASCII order.
+
+The third key is the Site tag. This is sorted in ascending ASCII order.
+
+The fourth key is the Round tag. This is sorted in ascending numeric order
+based on the value of the integer used to denote the playing round. A query or
+hyphen used for the round is ordered before any integer value. A query
+character is ordered before a hyphen character.
+
+The fifth key is the White tag. This is sorted in ascending ASCII order.
+
+The sixth key is the Black tag. This is sorted in ascending ASCII order.
+
+The seventh key is the Result tag. This is sorted in ascending ASCII order.
+
+The eighth key is the movetext itself. This is sorted in ascending ASCII order
+with the entire text including spaces and newline characters.
+
+
+13: PGN software
+
+This section describes some PGN software that is either currently available or
+expected to be available in the near future. The entries are presented in
+rough chronological order of their being made known to the PGN standard
+coordinator. Authors of PGN capable software are encouraged to contact the
+coordinator (e-mail address listed near the start of this document) so that the
+information may be included here in this section.
+
+In addition to the PGN standard, there are two more chess standards of interest
+to the chess software community. These are the FEN standard (Forsyth-Edwards
+Notation) for position notation and the EPD standard (Extended Position
+Description) for comprehensive position description for automated interprogram
+processing. These are described in a later section of this document.
+
+Some PGN software is freeware and can be gotten from ftp sites and other
+sources. Other PGN software is payware and appears as part of commercial
+chessplaying programs and chess database managers. Those who are interested in
+the propagation of the PGN standard are encouraged to support manufacturers of
+chess software that use the standard. If a particular vendor does not offer
+PGN compatibility, it is likely that a few letters to them along with a copy of
+this specification may help them decide to include PGN support in their next
+release.
+
+The staff at the University of Oklahoma at Norman (USA) have graciously
+provided an ftp site (chess.uoknor.edu) for the storage of chess related data
+and programs. Because file names change over time, those accessing the site
+are encouraged to first retrieve the file "pub/chess/ls-lR.gz" for a current
+listing. A scan of this listing will also help locate versions of PGN programs
+for machine types and operating systems other than those listed below. Further
+information about this archive can be gotten from its administrator, Chris
+Petroff (chris@uoknor.edu).
+
+For European users, the kind staff at the University of Hamburg (Germany) have
+provided the ftp site ftp.math.uni-hamburg.de; this carries a daily mirror of
+the pub/chess directory at the chess.uoknor.edu site.
+
+
+13.1: The SAN Kit
+
+The "SAN Kit" is an ANSI C source chess programming toolkit available for free
+from the ftp site chess.uoknor.edu in the directory pub/chess/Unix as the file
+"SAN.tar.gz" (a gzip tar archive). This kit contains code for PGN import and
+export and can be used to "regularize" PGN data into reduced export format by
+use of its "tfgg" command. The SAN Kit also supports FEN I/O. Code from this
+kit is freely redistributable for anyone as long as future distribution is
+unhindered for everyone. The SAN Kit is undergoing continuous development,
+although dates of future deliveries are quite difficult to predict and releases
+sometimes appear months apart. Suggestions and comments should be directed to
+its author, Steven J. Edwards (sje@world.std.com).
+
+
+13.2: pgnRead
+
+The program "pgnRead" runs under MS Windows 3.1 and provides an interactive
+graphical user interface for scanning PGN data files. This program includes a
+colorful figurine chessboard display and scrolling controls for game and game
+text selection. It is available from the chess.uoknor.edu ftp site in the
+pub/chess/DOS directory; several versions are available with names of the form
+"pgnrd**.exe"; the latest at this writing is "PGNRD130.EXE". Suggestions and
+comments should be directed to its author, Keith Fuller (keithfx@aol.com).
+
+
+13.3: mail2pgn/GIICS
+
+The program "mail2pgn" produces a PGN version of chess game data generated by
+the ICS (Internet Chess Server). It can be found at the chess.uoknor.edu ftp
+site in the pub/chess/DOS directory as the file "mail2pgn.zip" A C language
+version is in the directory pub/chess/Unix as the file "mail2pgn.c".
+Suggestions and comments should be directed to its author, John Aronson
+(aronson@helios.ece.arizona.edu). This code has been reportedly incorporated
+into the GIICS (Graphical Interface for the ICS); suggestions and comments
+should be directed to its author, Tony Acero (ace3@midway.uchicago.edu).
+
+There is a report that mail2pgn has been superseded by the newer program
+"MV2PGN" described below.
+
+
+13.4: XBoard
+
+"XBoard" is a comprehensive chess utility running under the X Window System
+that provides a graphical user interface in a portable manner. A new version
+now handles PGN data. It is available from the chess.uoknor.edu ftp site in
+the pub/chess/X directory as the file "xboard-3.0.pl9.tar.gz". Suggestions and
+comments should be directed to its author, Tim Mann (mann@src.dec.com).
+
+
+13.5: cupgn
+
+The program "cupgn" converts game data stored in the ChessBase format into PGN.
+It is available from the chess.uoknor.edu ftp site in the
+pub/chess/Game-Databases/CBUFF directory as the file "cupgn.tar.gz". Another
+version is in the directory pub/chess/DOS as the file "cupgn120.exe".
+Suggestions and comments should be directed to its author, Anjo Anjewierden
+(anjo@swi.psy.uva.nl).
+
+
+13.6: Zarkov
+
+The current version (3.0) of the commercial chessplaying program "Zarkov" can
+read and write games using PGN. This program can also use the EPD standard for
+communication with other EPD capable programs. Historically, Zarkov is the
+very first program to use EPD. Suggestions and comments should be directed to
+its author, John Stanback (jhs@icbdfcs1.fc.hp.com).
+
+A vendor for North America is:
+
+ International Chess Enterprises
+ P.O. Box 19457
+ Seattle, WA 98109
+ USA
+ (800) 262-4277
+
+A vendor for Europe is:
+
+ Gambit-Soft
+ Feckenhauser Strasse 27
+ D-78628 Rottweil
+ GERMANY
+ 49-741-21573
+
+
+13.7: Chess Assistant
+
+The upcoming version of the multifunction commercial database program "Chess
+Assistant" will be able to use the PGN standard as an import and export option.
+There is a report of a freeware program, "PGN2CA", that will convert PGN
+databases into Chess Assistant format. For more information, the contact is
+Victor Zakharov, one of the members of the Chess Assistant development team
+(VICTOR@ldis.cs.msu.su).
+
+A vendor for North America is:
+
+ International Chess Enterprises
+ P.O. Box 19457
+ Seattle, WA 98109
+ USA
+ (800) 262-4277
+
+
+13.8: BOOKUP
+
+The MS-DOS edition of the multifunction commercial program BOOKUP, version 8.1,
+is able to use the EPD standard for communication with other EPD capable
+programs. It may also be PGN capable as well.
+
+The BOOKUP 8.1.1 Addenda notes dated 1993.12.17 provide comprehensive
+information on how to use EPD in conjunction with "analyst" programs such as
+Zarkov and HIARCS. Specifically, the search and evaluation abilities of an
+analyst program are combined with the information organization abilities of the
+BOOKUP database program to provide position scoring. This is done by first
+having BOOKUP export a database in EPD format, then having an analyst program
+annotate each EPD record with a numeric score, and then having BOOKUP import
+the changed EPD file. BOOKUP can then apply minimaxing to the imported
+database; this results in scores from terminal positions being propagated back
+to earlier positions and even back to moves from the starting array.
+
+For some reason, BOOKUP calls this process "backsolving", but it's really just
+standard minimaxing. In any case, it's a good example of how different
+programs from different authors performing different types of tasks can be
+integrated by use of a common, non-proprietary standard. This allows for a new
+set of powerful features that are beyond the capabilities of any one of the
+individual component programs.
+
+BOOKUP allows for some customizing of EPD actions. One such customization is
+to require the positional evaluations to follow the EPD standard; this means
+that the score is always given from the viewpoint of the active player. This
+is explained more fully in the section on the "ce" (centipawn evaluation)
+opcode in the EPD description in a later section of this document. To ensure
+that BOOKUP handles the centipawn evaluations in the "right" way, the EPD
+setting "Positive for White" must be set to "N". This makes BOOKUP work
+correctly with Zarkov and with all other programs that use the "right"
+centipawn evaluation convention. There is an apparent problem with HIARCS that
+requires this option to be set to "Y"; but this really means that, if true,
+HIARCS needs to be adjusted to use the "right" centipawn evaluation convention.
+
+A vendor in North America is:
+
+ BOOKUP
+ 2763 Kensington Place West
+ Columbus, OH 43202
+ USA
+ (800) 949-5445
+ (614) 263-7219
+
+
+13.9: HIARCS
+
+The current version (2.1) of the commercial chessplaying program "HIARCS" is
+able to use the EPD standard for communication with other EPD capable programs.
+It may also be PGN capable as well. More details will appear here as they
+become available.
+
+A vendor in North America is:
+
+ HIARCS
+ c/o BOOKUP
+ 2763 Kensington Place West
+ Columbus, OH 43202
+ USA
+ (800) 949-5445
+ (614) 263-7219
+
+
+13.10: Deja Vu
+
+The chess database "Deja Vu" from ChessWorks is a PGN compatible collection of
+over 300,000 games. It is available only on CD-ROM and is scheduled for
+release in 1994.05 with periodic revisions thereafter. The introductory price
+is US$329. For further information, the authors are John Crayton and Eric
+Schiller and they can be contacted via e-mail (chesswks@netcom.com).
+
+
+13.11: MV2PGN
+
+The program "MV2PGN" can be used to convert game data generated by both current
+and older versions of the GIICS (Graphical Interface - Internet Chess Server).
+The program is included in the self extracting archive available from
+chess.uoknor.edu in the directory pub/chess/DOS as the file "ics2pgn.exe".
+Source code is also included. This program is reported to supersede the older
+"mail2pgn" and was needed due to a change in ICS recording format in late 1993.
+For further information about MV2PGN, the contact person is Gary Bastin
+(gbastin@x102a.ess.harris.com).
+
+
+13.12: The Hansen utilities (cb2pgn, nic2pgn, pgn2cb, pgn2nic)
+
+The Hansen utilities are used to convert among various chess data
+representation formats. The PGN related programs include: "cb2pgn.exe"
+(convert ChessBase to PGN), "nic2pgn.exe" (convert NIC to PGN), "pgn2cb.exe"
+(convert PGN to ChessBase), and "pgn2nic.exe" (convert PGN to NIC).
+
+The ChessBase related utilities (cb2pgn/pgn2cb) are found at chess.uoknor.edu
+in the pub/chess/Game-Databases/ChessBase directory.
+
+The NIC related utilities (nic2pgn/pgn2nic) are found at chess.uoknor.edu in
+the pub/chess/Game-Databases/NIC directory.
+
+For further information about the Hansen utilities, the contact person is the
+author, Carsten Hansen (ch0506@hdc.hha.dk).
+
+
+13.13: Slappy the Database
+
+"Slappy the Database" is a commercial chess database and translation program
+scheduled for release no sooner than late 1994. It is a low cost utility with
+a simple character interface intended for those who want a supported product
+but who do not need (or cannot afford) a comprehensive, feature-laden program
+with a graphical user interface. Slappy's two most important features are its
+batch processing ability and its full implementation of each and every standard
+described in this document. Versions of Slappy the Database will be provided
+for various platforms including: Intel 386/486 Unix, Apple Macintosh, and
+MS-DOS.
+
+Slappy may also be useful to those who have a full feature program who also
+need to run time consuming chess database tasks on a spare computer.
+
+Suggestions and comments should be directed to its author, Steven J. Edwards
+(sje@world.std.com). More details will appear here as they become available.
+
+
+13.14: CBASCII
+
+"CBASCII" is a general utility for converting chess data between ChessBase
+format and ASCII representations. It has PGN capability, and it is available
+from the chess.uoknor.edu ftp site in the pub/chess/DOS directory as the file
+"cba1_2.zip". The contact person is the program's author, Andy Duplain
+(duplain@btcs.bt.co.uk).
+
+
+13.15: ZZZZZZ
+
+"ZZZZZZ" is a chessplaying program, complete with source, that also includes
+some database functions. A recent version is reported to have both PGN and EPD
+capabilities. It is available from the chess.uoknor.edu ftp site in the
+pub/chess/Unix directory as the file "zzzzzz-3.2b1.tar.gz". The contact person
+is its author, Gijsbert Wiesenecker (wiesenecker@sara.nl).
+
+
+13.16: icsconv
+
+The program "icsconv" can be used to convert Internet Chess Server games, both
+old and new format, to PGN. It is available from the chess.uoknor.edu site in
+the pub/chess/Game-Databases/PGN/Tools directory as the file "icsconv.exe".
+The contact person is the author, Kevin Nomura (chow@netcom.com).
+
+
+13.17: CHESSOP (CHESSOPN/CHESSOPG)
+
+CHESSOP is an openings database and viewing tool with support for reading PGN
+games. It runs under MS-DOS and displays positions rather than games. For
+each position, both good and bad moves are listed with appropriate annotation.
+Transpositions are handled as well. The distributed database contains over
+100,000 positions covering all the common openings. Users can feed in their
+own PGN data as well. CHESSOP takes 3 Mbyte of hard disk, costs US$39 and can
+be obtained from:
+
+ CHESSX Software
+ 12 Bluebell Close
+ Glenmore Park
+ AUSTRALIA 2745.
+
+The ideas behind CHESSOP can be seen in CHESSOPN (alias CHESSOPG), a free
+version on the ICS server which has a reduced openings database (25,000
+positions) and no PGN or transposition support but is otherwise the same as
+CHESSOP. (These are the files "chessopg.zip" in the directory pub/chess/DOS at
+the chess.uoknor.edu ftp site.)
+
+
+13.18: CAT2PGN
+
+The program "CAT2PGN" is a utility that translates data from the format used by
+Chess Assistant into PGN. It is available from the chess.uoknor.edu ftp site.
+The contact person for CAT2PGN is its author, David Myers
+(myers@frodo.biochem.duke.edu).
+
+
+13.19: pgn2opg
+
+The utility "pgn2opg" can be used to convert PGN files into a text format used
+by the "CHESSOPG" program mentioned above. Although it does not perform any
+semantic analysis on PGN input, it has been demonstrated to handle known
+correct PGN input properly. The file can be found in the pub/chess/PGN/Tools
+directory at the chess.uoknor.edu ftp site. For more information, the author
+is David Barnes (djb@ukc.ac.uk).
+
+
+14: PGN data archives
+
+The primary PGN data archive repository is located at the ftp site
+chess.uoknor.edu as the directory "pub/chess/Game-Databases/PGN". It is
+organized according to the description given in section C.5 of this document.
+The European site ftp.math.uni-hamburg.de is also reported to carry a regularly
+updated copy of the repository.
+
+
+15: International Olympic Committee country codes
+
+International Olympic Committee country codes are employed for Site nation
+information because of their traditional use with the reporting of
+international sporting events. Due to changes in geography and linguistic
+custom, some of the following may be incorrect or outdated. Corrections and
+extensions should be sent via e-mail to the PGN coordinator whose address
+listed near the start of this document.
+
+AFG: Afghanistan
+AIR: Aboard aircraft
+ALB: Albania
+ALG: Algeria
+AND: Andorra
+ANG: Angola
+ANT: Antigua
+ARG: Argentina
+ARM: Armenia
+ATA: Antarctica
+AUS: Australia
+AZB: Azerbaijan
+BAN: Bangladesh
+BAR: Bahrain
+BHM: Bahamas
+BEL: Belgium
+BER: Bermuda
+BIH: Bosnia and Herzegovina
+BLA: Belarus
+BLG: Bulgaria
+BLZ: Belize
+BOL: Bolivia
+BRB: Barbados
+BRS: Brazil
+BRU: Brunei
+BSW: Botswana
+CAN: Canada
+CHI: Chile
+COL: Columbia
+CRA: Costa Rica
+CRO: Croatia
+CSR: Czechoslovakia
+CUB: Cuba
+CYP: Cyprus
+DEN: Denmark
+DOM: Dominican Republic
+ECU: Ecuador
+EGY: Egypt
+ENG: England
+ESP: Spain
+EST: Estonia
+FAI: Faroe Islands
+FIJ: Fiji
+FIN: Finland
+FRA: France
+GAM: Gambia
+GCI: Guernsey-Jersey
+GEO: Georgia
+GER: Germany
+GHA: Ghana
+GRC: Greece
+GUA: Guatemala
+GUY: Guyana
+HAI: Haiti
+HKG: Hong Kong
+HON: Honduras
+HUN: Hungary
+IND: India
+IRL: Ireland
+IRN: Iran
+IRQ: Iraq
+ISD: Iceland
+ISR: Israel
+ITA: Italy
+IVO: Ivory Coast
+JAM: Jamaica
+JAP: Japan
+JRD: Jordan
+JUG: Yugoslavia
+KAZ: Kazakhstan
+KEN: Kenya
+KIR: Kyrgyzstan
+KUW: Kuwait
+LAT: Latvia
+LEB: Lebanon
+LIB: Libya
+LIC: Liechtenstein
+LTU: Lithuania
+LUX: Luxembourg
+MAL: Malaysia
+MAU: Mauritania
+MEX: Mexico
+MLI: Mali
+MLT: Malta
+MNC: Monaco
+MOL: Moldova
+MON: Mongolia
+MOZ: Mozambique
+MRC: Morocco
+MRT: Mauritius
+MYN: Myanmar
+NCG: Nicaragua
+NET: The Internet
+NIG: Nigeria
+NLA: Netherlands Antilles
+NLD: Netherlands
+NOR: Norway
+NZD: New Zealand
+OST: Austria
+PAK: Pakistan
+PAL: Palestine
+PAN: Panama
+PAR: Paraguay
+PER: Peru
+PHI: Philippines
+PNG: Papua New Guinea
+POL: Poland
+POR: Portugal
+PRC: People's Republic of China
+PRO: Puerto Rico
+QTR: Qatar
+RIN: Indonesia
+ROM: Romania
+RUS: Russia
+SAF: South Africa
+SAL: El Salvador
+SCO: Scotland
+SEA: At Sea
+SEN: Senegal
+SEY: Seychelles
+SIP: Singapore
+SLV: Slovenia
+SMA: San Marino
+SPC: Aboard spacecraft
+SRI: Sri Lanka
+SUD: Sudan
+SUR: Surinam
+SVE: Sweden
+SWZ: Switzerland
+SYR: Syria
+TAI: Thailand
+TMT: Turkmenistan
+TRK: Turkey
+TTO: Trinidad and Tobago
+TUN: Tunisia
+UAE: United Arab Emirates
+UGA: Uganda
+UKR: Ukraine
+UNK: Unknown
+URU: Uruguay
+USA: United States of America
+UZB: Uzbekistan
+VEN: Venezuela
+VGB: British Virgin Islands
+VIE: Vietnam
+VUS: U.S. Virgin Islands
+WLS: Wales
+YEM: Yemen
+YUG: Yugoslavia
+ZAM: Zambia
+ZIM: Zimbabwe
+ZRE: Zaire
+
+
+16: Additional chess data standards
+
+While PGN is used for game storage, there are other data representation
+standards for other chess related purposes. Two important standards are FEN
+and EPD, both described in this section.
+
+
+16.1: FEN
+
+FEN is "Forsyth-Edwards Notation"; it is a standard for describing chess
+positions using the ASCII character set.
+
+A single FEN record uses one text line of variable length composed of six data
+fields. The first four fields of the FEN specification are the same as the
+first four fields of the EPD specification.
+
+A text file composed exclusively of FEN data records should have a file name
+with the suffix ".fen".
+
+
+16.1.1: History
+
+FEN is based on a 19th century standard for position recording designed by the
+Scotsman David Forsyth, a newspaper journalist. The original Forsyth standard
+has been slightly extended for use with chess software by Steven Edwards with
+assistance from commentators on the Internet. This new standard, FEN, was
+first implemented in Edwards' SAN Kit.
+
+
+16.1.2: Uses for a position notation
+
+Having a standard position notation is particularly important for chess
+programmers as it allows them to share position databases. For example, there
+exist standard position notation databases with many of the classical benchmark
+tests for chessplaying programs, and by using a common position notation format
+many hours of tedious data entry can be saved. Additionally, a position
+notation can be useful for page layout programs and for confirming position
+status for e-mail competition.
+
+Many interesting chess problem sets represented using FEN can be found at the
+chess.uoknor.edu ftp site in the directory pub/chess/SAN_testsuites.
+
+
+16.1.3: Data fields
+
+FEN specifies the piece placement, the active color, the castling availability,
+the en passant target square, the halfmove clock, and the fullmove number.
+These can all fit on a single text line in an easily read format. The length
+of a FEN position description varies somewhat according to the position. In
+some cases, the description could be eighty or more characters in length and so
+may not fit conveniently on some displays. However, these positions aren't too
+common.
+
+A FEN description has six fields. Each field is composed only of non-blank
+printing ASCII characters. Adjacent fields are separated by a single ASCII
+space character.
+
+
+16.1.3.1: Piece placement data
+
+The first field represents the placement of the pieces on the board. The board
+contents are specified starting with the eighth rank and ending with the first
+rank. For each rank, the squares are specified from file a to file h. White
+pieces are identified by uppercase SAN piece letters ("PNBRQK") and black
+pieces are identified by lowercase SAN piece letters ("pnbrqk"). Empty squares
+are represented by the digits one through eight; the digit used represents the
+count of contiguous empty squares along a rank. A solidus character "/" is
+used to separate data of adjacent ranks.
+
+
+16.1.3.2: Active color
+
+The second field represents the active color. A lower case "w" is used if
+White is to move; a lower case "b" is used if Black is the active player.
+
+
+16.1.3.3: Castling availability
+
+The third field represents castling availability. This indicates potential
+future castling that may of may not be possible at the moment due to blocking
+pieces or enemy attacks. If there is no castling availability for either side,
+the single character symbol "-" is used. Otherwise, a combination of from one
+to four characters are present. If White has kingside castling availability,
+the uppercase letter "K" appears. If White has queenside castling
+availability, the uppercase letter "Q" appears. If Black has kingside castling
+availability, the lowercase letter "k" appears. If Black has queenside
+castling availability, then the lowercase letter "q" appears. Those letters
+which appear will be ordered first uppercase before lowercase and second
+kingside before queenside. There is no white space between the letters.
+
+
+16.1.3.4: En passant target square
+
+The fourth field is the en passant target square. If there is no en passant
+target square then the single character symbol "-" appears. If there is an en
+passant target square then is represented by a lowercase file character
+immediately followed by a rank digit. Obviously, the rank digit will be "3"
+following a white pawn double advance (Black is the active color) or else be
+the digit "6" after a black pawn double advance (White being the active color).
+
+An en passant target square is given if and only if the last move was a pawn
+advance of two squares. Therefore, an en passant target square field may have
+a square name even if there is no pawn of the opposing side that may
+immediately execute the en passant capture.
+
+
+16.1.3.5: Halfmove clock
+
+The fifth field is a nonnegative integer representing the halfmove clock. This
+number is the count of halfmoves (or ply) since the last pawn advance or
+capturing move. This value is used for the fifty move draw rule.
+
+
+16.1.3.6: Fullmove number
+
+The sixth and last field is a positive integer that gives the fullmove number.
+This will have the value "1" for the first move of a game for both White and
+Black. It is incremented by one immediately after each move by Black.
+
+
+16.1.4: Examples
+
+Here's the FEN for the starting position:
+
+rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1
+
+And after the move 1. e4:
+
+rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1
+
+And then after 1. ... c5:
+
+rnbqkbnr/pp1ppppp/8/2p5/4P3/8/PPPP1PPP/RNBQKBNR w KQkq c6 0 2
+
+And then after 2. Nf3:
+
+rnbqkbnr/pp1ppppp/8/2p5/4P3/5N2/PPPP1PPP/RNBQKB1R b KQkq - 1 2
+
+For two kings on their home squares and a white pawn on e2 (White to move) with
+thirty eight full moves played with five halfmoves since the last pawn move or
+capture:
+
+4k3/8/8/8/8/8/4P3/4K3 w - - 5 39
+
+
+16.2: EPD
+
+EPD is "Extended Position Description"; it is a standard for describing chess
+positions along with an extended set of structured attribute values using the
+ASCII character set. It is intended for data and command interchange among
+chessplaying programs. It is also intended for the representation of portable
+opening library repositories.
+
+A single EPD uses one text line of variable length composed of four data field
+followed by zero or more operations. The four fields of the EPD specification
+are the same as the first four fields of the FEN specification.
+
+A text file composed exclusively of EPD data records should have a file name
+with the suffix ".epd".
+
+
+16.2.1: History
+
+EPD is based in part on the earlier FEN standard; it has added extensions for
+use with opening library preparation and also for general data and command
+interchange among advanced chess programs. EPD was developed by John Stanback
+and Steven Edwards; its first implementation is in Stanback's master strength
+chessplaying program Zarkov.
+
+
+16.2.2: Uses for an extended position notation
+
+Like FEN, EPD can also be used for general position description. However,
+unlike FEN, EPD is designed to be expandable by the addition of new operations
+that provide new functionality as needs arise.
+
+Many interesting chess problem sets represented using EPD can be found at the
+chess.uoknor.edu ftp site in the directory pub/chess/SAN_testsuites.
+
+
+16.2.3: Data fields
+
+EPD specifies the piece placement, the active color, the castling availability,
+and the en passant target square of a position. These can all fit on a single
+text line in an easily read format. The length of an EPD position description
+varies somewhat according to the position and any associated operations. In
+some cases, the description could be eighty or more characters in length and so
+may not fit conveniently on some displays. However, most EPD descriptions pass
+among programs only and these are not usually seen by program users.
+
+(Note: due to the likelihood of future expansion of EPD, implementors are
+encouraged to have their programs handle EPD text lines of up to 1024
+characters long.)
+
+Each EPD data field is composed only of non-blank printing ASCII characters.
+Adjacent data fields are separated by a single ASCII space character.
+
+
+16.2.3.1: Piece placement data
+
+The first field represents the placement of the pieces on the board. The board
+contents are specified starting with the eighth rank and ending with the first
+rank. For each rank, the squares are specified from file a to file h. White
+pieces are identified by uppercase SAN piece letters ("PNBRQK") and black
+pieces are identified by lowercase SAN piece letters ("pnbrqk"). Empty squares
+are represented by the digits one through eight; the digit used represents the
+count of contiguous empty squares along a rank. A solidus character "/" is
+used to separate data of adjacent ranks.
+
+
+16.2.3.2: Active color
+
+The second field represents the active color. A lower case "w" is used if
+White is to move; a lower case "b" is used if Black is the active player.
+
+
+16.2.3.3: Castling availability
+
+The third field represents castling availability. This indicates potential
+future castling that may or may not be possible at the moment due to blocking
+pieces or enemy attacks. If there is no castling availability for either side,
+the single character symbol "-" is used. Otherwise, a combination of from one
+to four characters are present. If White has kingside castling availability,
+the uppercase letter "K" appears. If White has queenside castling
+availability, the uppercase letter "Q" appears. If Black has kingside castling
+availability, the lowercase letter "k" appears. If Black has queenside
+castling availability, then the lowercase letter "q" appears. Those letters
+which appear will be ordered first uppercase before lowercase and second
+kingside before queenside. There is no white space between the letters.
+
+
+16.2.3.4: En passant target square
+
+The fourth field is the en passant target square. If there is no en passant
+target square then the single character symbol "-" appears. If there is an en
+passant target square then is represented by a lowercase file character
+immediately followed by a rank digit. Obviously, the rank digit will be "3"
+following a white pawn double advance (Black is the active color) or else be
+the digit "6" after a black pawn double advance (White being the active color).
+
+An en passant target square is given if and only if the last move was a pawn
+advance of two squares. Therefore, an en passant target square field may have
+a square name even if there is no pawn of the opposing side that may
+immediately execute the en passant capture.
+
+
+16.2.4: Operations
+
+An EPD operation is composed of an opcode followed by zero or more operands and
+is concluded by a semicolon.
+
+Multiple operations are separated by a single space character. If there is at
+least one operation present in an EPD line, it is separated from the last
+(fourth) data field by a single space character.
+
+
+16.2.4.1: General format
+
+An opcode is an identifier that starts with a letter character and may be
+followed by up to fourteen more characters. Each additional character may be a
+letter or a digit or the underscore character.
+
+An operand is either a set of contiguous non-white space printing characters or
+a string. A string is a set of contiguous printing characters delimited by a
+quote character at each end. A string value must have less than 256 bytes of
+data.
+
+If at least one operand is present in an operation, there is a single space
+between the opcode and the first operand. If more than one operand is present
+in an operation, there is a single blank character between every two adjacent
+operands. If there are no operands, a semicolon character is appended to the
+opcode to mark the end of the operation. If any operands appear, the last
+operand has an appended semicolon that marks the end of the operation.
+
+Any given opcode appears at most once per EPD record. Multiple operations in a
+single EPD record should appear in ASCII order of their opcode names
+(mnemonics). However, a program reading EPD records may allow for operations
+not in ASCII order by opcode mnemonics; the semantics are the same in either
+case.
+
+Some opcodes that allow for more than one operand may have special ordering
+requirements for the operands. For example, the "pv" (predicted variation)
+opcode requires its operands (moves) to appear in the order in which they would
+be played. All other opcodes that allow for more than one operand should have
+operands appearing in ASCII order. An example of the latter set is the "bm"
+(best move[s]) opcode; its operands are moves that are all immediately playable
+from the current position.
+
+Some opcodes require one or more operands that are chess moves. These moves
+should be represented using SAN. If a different representation is used, there
+is no guarantee that the EPD will be read correctly during subsequent
+processing.
+
+Some opcodes require one or more operands that are integers. Some opcodes may
+require that an integer operand must be within a given range; the details are
+described in the opcode list given below. A negative integer is formed with a
+hyphen (minus sign) preceding the integer digit sequence. An optional plus
+sign may be used for indicating a non-negative value, but such use is not
+required and is indeed discouraged.
+
+Some opcodes require one or more operands that are floating point numbers.
+Some opcodes may require that a floating point operand must be within a given
+range; the details are described in the opcode list given below. A floating
+point operand is constructed from an optional sign character ("+" or "-"), a
+digit sequence (with at least one digit), a radix point (always "."), and a
+final digit sequence (with at least one digit).
+
+
+16.2.4.2: Opcode mnemonics
+
+An opcode mnemonic used for archival storage and for interprogram communication
+starts with a lower case letter and is composed of only lower case letters,
+digits, and the underscore character (i.e., no upper case letters). These
+mnemonics will also all be at least two characters in length.
+
+Opcode mnemonics used only by a single program or an experimental suite of
+programs should start with an upper case letter. This is so they may be easily
+distinguished should they be inadvertently be encountered by other programs.
+When a such a "private" opcode be demonstrated to be widely useful, it should
+be brought into the official list (appearing below) in a lower case form.
+
+If a given program does not recognize a particular opcode, that operation is
+simply ignored; it is not signaled as an error.
+
+
+16.2.5: Opcode list
+
+The opcodes are listed here in ASCII order of their mnemonics. Suggestions for
+new opcodes should be sent to the PGN standard coordinator listed near the
+start of this document.
+
+
+16.2.5.1: Opcode "acn": analysis count: nodes
+
+The opcode "acn" takes a single non-negative integer operand. It is used to
+represent the number of nodes examined in an analysis. Note that the value may
+be quite large for some extended searches and so use of (at least) a long (four
+byte) representation is suggested.
+
+
+16.2.5.2: Opcode "acs": analysis count: seconds
+
+The opcode "acs" takes a single non-negative integer operand. It is used to
+represent the number of seconds used for an analysis. Note that the value may
+be quite large for some extended searches and so use of (at least) a long (four
+byte) representation is suggested.
+
+
+16.2.5.3: Opcode "am": avoid move(s)
+
+The opcode "am" indicates a set of zero or more moves, all immediately playable
+from the current position, that are to be avoided in the opinion of the EPD
+writer. Each operand is a SAN move; they appear in ASCII order.
+
+
+16.2.5.4: Opcode "bm": best move(s)
+
+The opcode "bm" indicates a set of zero or more moves, all immediately playable
+from the current position, that are judged to the best available by the EPD
+writer. Each operand is a SAN move; they appear in ASCII order.
+
+
+16.2.5.5: Opcode "c0": comment (primary, also "c1" though "c9")
+
+The opcode "c0" (lower case letter "c", digit character zero) indicates a top
+level comment that applies to the given position. It is the first of ten
+ranked comments, each of which has a mnemonic formed from the lower case letter
+"c" followed by a single decimal digit. Each of these opcodes takes either a
+single string operand or no operand at all.
+
+This ten member comment family of opcodes is intended for use as descriptive
+commentary for a complete game or game fragment. The usual processing of these
+opcodes are as follows:
+
+1) At the beginning of a game (or game fragment), a move sequence scanning
+program initializes each element of its set of ten comment string registers to
+be null.
+
+2) As the EPD record for each position in the game is processed, the comment
+operations are interpreted from left to right. (Actually, all operations in n
+EPD record are interpreted from left to right.) Because operations appear in
+ASCII order according to their opcode mnemonics, opcode "c0" (if present) will
+be handled prior to all other opcodes, then opcode "c1" (if present), and so
+forth until opcode "c9" (if present).
+
+3) The processing of opcode "cN" (0 <= N <= 9) involves two steps. First, all
+comment string registers with an index equal to or greater than N are set to
+null. (This is the set "cN" though "c9".) Second, and only if a string
+operand is present, the value of the corresponding comment string register is
+set equal to the string operand.
+
+
+16.2.5.6: Opcode "ce": centipawn evaluation
+
+The opcode "ce" indicates the evaluation of the indicated position in centipawn
+units. It takes a single operand, an optionally signed integer that gives an
+evaluation of the position from the viewpoint of the active player; i.e., the
+player with the move. Positive values indicate a position favorable to the
+moving player while negative values indicate a position favorable to the
+passive player; i.e., the player without the move. A centipawn evaluation
+value close to zero indicates a neutral positional evaluation.
+
+Values are restricted to integers that are equal to or greater than -32767 and
+are less than or equal to 32766.
+
+A value greater than 32000 indicates the availability of a forced mate to the
+active player. The number of plies until mate is given by subtracting the
+evaluation from the value 32767. Thus, a winning mate in N fullmoves is a mate
+in ((2 * N) - 1) halfmoves (or ply) and has a corresponding centipawn
+evaluation of (32767 - ((2 * N) - 1)). For example, a mate on the move (mate
+in one) has a centipawn evaluation of 32766 while a mate in five has a
+centipawn evaluation of 32758.
+
+A value less than -32000 indicates the availability of a forced mate to the
+passive player. The number of plies until mate is given by subtracting the
+evaluation from the value -32767 and then negating the result. Thus, a losing
+mate in N fullmoves is a mate in (2 * N) halfmoves (or ply) and has a
+corresponding centipawn evaluation of (-32767 + (2 * N)). For example, a mate
+after the move (losing mate in one) has a centipawn evaluation of -32765 while
+a losing mate in five has a centipawn evaluation of -32757.
+
+A value of -32767 indicates an illegal position. A stalemate position has a
+centipawn evaluation of zero as does a position drawn due to insufficient
+mating material. Any other position known to be a certain forced draw also has
+a centipawn evaluation of zero.
+
+
+16.2.5.7: Opcode "dm": direct mate fullmove count
+
+The "dm" opcode is used to indicate the number of fullmoves until checkmate is
+to be delivered by the active color for the indicated position. It always
+takes a single operand which is a positive integer giving the fullmove count.
+For example, a position known to be a "mate in three" would have an operation
+of "dm 3;" to indicate this.
+
+This opcode is intended for use with problem sets composed of positions
+requiring direct mate answers as solutions.
+
+
+16.2.5.8: Opcode "draw_accept": accept a draw offer
+
+The opcode "draw_accept" is used to indicate that a draw offer made after the
+move that lead to the indicated position is accepted by the active player.
+This opcode takes no operands.
+
+
+16.2.5.9: Opcode "draw_claim": claim a draw
+
+The opcode "draw_claim" is used to indicate claim by the active player that a
+draw exists. The draw is claimed because of a third time repetition or because
+of the fifty move rule or because of insufficient mating material. A supplied
+move (see the opcode "sm") is also required to appear as part of the same EPD
+record. The draw_claim opcode takes no operands.
+
+
+16.2.5.10: Opcode "draw_offer": offer a draw
+
+The opcode "draw_offer" is used to indicate that a draw is offered by the
+active player. A supplied move (see the opcode "sm") is also required to
+appear as part of the same EPD record; this move is considered played from the
+indicated position. The draw_offer opcode takes no operands.
+
+
+16.2.5.11: Opcode "draw_reject": reject a draw offer
+
+The opcode "draw_reject" is used to indicate that a draw offer made after the
+move that lead to the indicated position is rejected by the active player.
+This opcode takes no operands.
+
+
+16.2.5.12: Opcode "eco": _Encyclopedia of Chess Openings_ opening code
+
+The opcode "eco" is used to associate an opening designation from the
+_Encyclopedia of Chess Openings_ taxonomy with the indicated position. The
+opcode takes either a single string operand (the ECO opening name) or no
+operand at all. If an operand is present, its value is associated with an
+"ECO" string register of the scanning program. If there is no operand, the ECO
+string register of the scanning program is set to null.
+
+The usage is similar to that of the "ECO" tag pair of the PGN standard.
+
+
+16.2.5.13: Opcode "fmvn": fullmove number
+
+The opcode "fmvn" represents the fullmove n umber associated with the position.
+It always takes a single operand that is the positive integer value of the move
+number.
+
+This opcode is used to explicitly represent the fullmove number in EPD that is
+present by default in FEN as the sixth field. Fullmove number information is
+usually omitted from EPD because it does not affect move generation (commonly
+needed for EPD-using tasks) but it does affect game notation (commonly needed
+for FEN-using tasks). Because of the desire for space optimization for large
+EPD files, fullmove numbers were dropped from EPD's parent FEN. The halfmove
+clock information was similarly dropped.
+
+
+16.2.5.14: Opcode "hmvc": halfmove clock
+
+The opcode "hmvc" represents the halfmove clock associated with the position.
+The halfmove clock of a position is equal to the number of plies since the last
+pawn move or capture. This information is used to implement the fifty move
+draw rule. It always takes a single operand that is the non-negative integer
+value of the halfmove clock.
+
+This opcode is used to explicitly represent the halfmove clock in EPD that is
+present by default in FEN as the fifth field. Halfmove clock information is
+usually omitted from EPD because it does not affect move generation (commonly
+needed for EPD-using tasks) but it does affect game termination issues
+(commonly needed for FEN-using tasks). Because of the desire for space
+optimization for large EPD files, halfmove clock values were dropped from EPD's
+parent FEN. The fullmove number information was similarly dropped.
+
+
+16.2.5.15: Opcode "id": position identification
+
+The opcode "id" is used to provide a simple identifying label for the indicated
+position. It takes a single string operand.
+
+This opcode is intended for use with test suites used for measuring
+chessplaying program strength. An example "id" operand for the seven hundred
+fifty seventh position of the one thousand one problems in Reinfeld's _1001
+Winning Chess Sacrifices and Combinations_ would be "WCSAC.0757" while the
+fifteenth position in the twenty four problem Bratko-Kopec test suite would
+have an "id" operand of "BK.15".
+
+
+16.2.5.16: Opcode "nic": _New In Chess_ opening code
+
+The opcode "nic" is used to associate an opening designation from the _New In
+Chess_ taxonomy with the indicated position. The opcode takes either a single
+string operand (the NIC opening name) or no operand at all. If an operand is
+present, its value is associated with an "NIC" string register of the scanning
+program. If there is no operand, the NIC string register of the scanning
+program is set to null.
+
+The usage is similar to that of the "NIC" tag pair of the PGN standard.
+
+
+16.2.5.17: Opcode "noop": no operation
+
+The "noop" opcode is used to indicate no operation. It takes zero or more
+operands, each of which may be of any type. The operation involves no
+processing. It is intended for use by developers for program testing purposes.
+
+
+16.2.5.18: Opcode "pm": predicted move
+
+The "pm" opcode is used to provide a single predicted move for the indicated
+position. It has exactly one operand, a move playable from the position. This
+move is judged by the EPD writer to represent the best move available to the
+active player.
+
+If a non-empty "pv" (predicted variation) line of play is also present in the
+same EPD record, the first move of the predicted variation is the same as the
+predicted move.
+
+The "pm" opcode is intended for use as a general "display hint" mechanism.
+
+
+16.2.5.19: Opcode "pv": predicted variation
+
+The "pv" opcode is used to provide a predicted variation for the indicated
+position. It has zero or more operands which represent a sequence of moves
+playable from the position. This sequence is judged by the EPD writer to
+represent the best play available.
+
+If a "pm" (predicted move) operation is also present in the same EPD record,
+the predicted move is the same as the first move of the predicted variation.
+
+
+16.2.5.20: Opcode "rc": repetition count
+
+The "rc" opcode is used to indicate the number of occurrences of the indicated
+position. It takes a single, positive integer operand. Any position,
+including the initial starting position, is considered to have an "rc" value of
+at least one. A value of three indicates a candidate for a draw claim by the
+position repetition rule.
+
+
+16.2.5.21: Opcode "resign": game resignation
+
+The opcode "resign" is used to indicate that the active player has resigned the
+game. This opcode takes no operands.
+
+
+16.2.5.22: Opcode "sm": supplied move
+
+The "sm" opcode is used to provide a single supplied move for the indicated
+position. It has exactly one operand, a move playable from the position. This
+move is the move to be played from the position.
+
+The "sm" opcode is intended for use to communicate the most recent played move
+in an active game. It is used to communicate moves between programs in
+automatic play via a network. This includes correspondence play using e-mail
+and also programs acting as network front ends to human players.
+
+
+16.2.5.23: Opcode "tcgs": telecommunication: game selector
+
+The "tcgs" opcode is one of the telecommunication family of opcodes used for
+games conducted via e-mail and similar means. This opcode takes a single
+operand that is a positive integer. It is used to select among various games
+in progress between the same sender and receiver.
+
+
+16.2.5.24: Opcode "tcri": telecommunication: receiver identification
+
+The "tcri" opcode is one of the telecommunication family of opcodes used for
+games conducted via e-mail and similar means. This opcode takes two order
+dependent string operands. The first operand is the e-mail address of the
+receiver of the EPD record. The second operand is the name of the player
+(program or human) at the address who is the actual receiver of the EPD record.
+
+
+16.2.5.25: Opcode "tcsi": telecommunication: sender identification
+
+The "tcsi" opcode is one of the telecommunication family of opcodes used for
+games conducted via e-mail and similar means. This opcode takes two order
+dependent string operands. The first operand is the e-mail address of the
+sender of the EPD record. The second operand is the name of the player
+(program or human) at the address who is the actual sender of the EPD record.
+
+
+16.2.5.26: Opcode "v0": variation name (primary, also "v1" though "v9")
+
+The opcode "v0" (lower case letter "v", digit character zero) indicates a top
+level variation name that applies to the given position. It is the first of
+ten ranked variation names, each of which has a mnemonic formed from the lower
+case letter "v" followed by a single decimal digit. Each of these opcodes
+takes either a single string operand or no operand at all.
+
+This ten member variation name family of opcodes is intended for use as
+traditional variation names for a complete game or game fragment. The usual
+processing of these opcodes are as follows:
+
+1) At the beginning of a game (or game fragment), a move sequence scanning
+program initializes each element of its set of ten variation name string
+registers to be null.
+
+2) As the EPD record for each position in the game is processed, the variation
+name operations are interpreted from left to right. (Actually, all operations
+in n EPD record are interpreted from left to right.) Because operations appear
+in ASCII order according to their opcode mnemonics, opcode "v0" (if present)
+will be handled prior to all other opcodes, then opcode "v1" (if present), and
+so forth until opcode "v9" (if present).
+
+3) The processing of opcode "vN" (0 <= N <= 9) involves two steps. First, all
+variation name string registers with an index equal to or greater than N are
+set to null. (This is the set "vN" though "v9".) Second, and only if a string
+operand is present, the value of the corresponding variation name string
+register is set equal to the string operand.
+
+
+17: Alternative chesspiece identifier letters
+
+English language piece names are used to define the letter set for identifying
+chesspieces in PGN movetext. However, authors of programs which are used only
+for local presentation or scanning of chess move data may find it convenient to
+use piece letter codes common in their locales. This is not a problem as long
+as PGN data that resides in archival storage or that is exchanged among
+programs still uses the SAN (English) piece letter codes: "PNBRQK".
+
+For the above authors only, a list of alternative piece letter codes are
+provided:
+
+Language Piece letters (pawn knight bishop rook queen king)
+---------- --------------------------------------------------
+Czech P J S V D K
+Danish B S L T D K
+Dutch O P L T D K
+English P N B R Q K
+Estonian P R O V L K
+Finnish P R L T D K
+French P C F T D R
+German B S L T D K
+Hungarian G H F B V K
+Icelandic P R B H D K
+Italian P C A T D R
+Norwegian B S L T D K
+Polish P S G W H K
+Portuguese P C B T D R
+Romanian P C N T D R
+Spanish P C A T D R
+Swedish B S L T D K
+
+
+18: Formal syntax
+
+ ::=
+
+
+ ::=
+
+ ::=
+
+
+ ::= [ ]
+
+ ::=
+
+ ::=
+
+ ::=
+
+ ::=
+
+
+
+ ::=
+
+
+
+ ::= ( )
+
+ ::= 1-0
+ 0-1
+ 1/2-1/2
+ *
+ ::=
+
+
+19: Canonical chess position hash coding
+
+*** This section is under development.
+
+
+20: Binary representation (PGC)
+
+*** This section is under development.
+
+The binary coded version of PGN is PGC (PGN Game Coding). PGC is a binary
+representation standard of PGN data designed for the dual goals of storage
+efficiency and program I/O. A file containing PGC data should have a name with
+a suffix of ".pgc".
+
+Unlike PGN text files that may have locale dependent representations for
+newlines, PGC files have data that does not vary due to local processing
+environment. This means that PGC files may be transferred among systems using
+general binary file methods.
+
+PGC files should be used only when the use of PGN is impractical due to time
+and space resource constraints. As the general level of processing
+capabilities increases, the need for PGC over PGN will decrease. Therefore,
+implementors are encouraged not to use PGC as the default representation
+because it is much more difficult (than PGN) to understand without proper
+software.
+
+PGC data is composed of a sequence of PGC records. Each record is composed of
+a sequence of one or more bytes. The first byte is the PGN record marker and
+it specifies the interpretation of the remaining portion of the record. This
+remaining portion is composed of zero or more PGN record items. Item types
+include move sequences, move sets, and character strings.
+
+
+20.1: Bytes, words, and doublewords
+
+At the lowest level, PGC binary data is organized as bytes, words (two
+contiguous bytes), and doublewords (four contiguous bytes). All eight bits of
+a byte are used. Longwords (eight contiguous bytes) are not used. Integer
+values are stored using two's complement representation. Integers may be
+signed or unsigned depending on context. Multibyte integers are stored in
+low-endian format with the least significant byte appearing first.
+
+A one byte integer item is called "int-1". A two byte integer item is called
+"int-2". A four byte integer item is called "int-4".
+
+Characters are stored as bytes using the ISO 8859/1 Latin-1 (ECMA-94) code set.
+There is no provision for other characters sets or representations.
+
+
+20.2: Move ordinals
+
+A chess move is represented using a move ordinal. This is a single unsigned
+byte quantity with values from zero to 255. A move ordinal is interpreted as
+an index into the list of legal moves from the current position. This list is
+constructed by generating the legal moves from the current position, assigning
+SAN ASCII strings to each move, and then sorting these strings in ascending
+order. Note that a seven bit ordinal, as used by some inferior representation
+systems, is insufficient as there are some positions that have more than 128
+moves available.
+
+Examples: From the initial position, there are twenty moves. Move ordinal 0
+corresponds to the SAN move string "Na3"; move ordinal 1 corresponds to "Nc3",
+move ordinal 4 corresponds to "a3", and move ordinal 19 corresponds to "h4".
+
+Moves can be organized into sequences and sets. A move sequence is an ordered
+list of moves that are played, one after another from first to last. A move
+set is a list of moves that are all playable from the current position.
+
+Move sequence data is represented using a length header followed by move
+ordinal data. The length header is an unsigned integer that may be a byte or a
+word. The integer gives the number, possibly zero, of following move ordinal
+bytes. Most move sequences can be represented using just a byte header; these
+are called "mvseq-1" items. Move sequence data using a word header are called
+"mvseq-2" items.
+
+Move set data is represented using a length header followed by move ordinal
+data. The length header is an unsigned integer that is a byte. The integer
+gives the number, possibly zero, of following move ordinal bytes. All move
+sets are be represented using just a byte header; these are called "mvset-1"
+items. (Note the implied restriction that a move set can only have a maximum
+of 255 of the possible 256 ordinals present at one time.)
+
+
+20.3: String data
+
+PGC string data is represented using a length header followed by bytes of
+character data. The length header is an unsigned integer that may be a byte, a
+word, or a doubleword. The integer gives the number, possibly zero, of
+following character bytes. Most strings can be represented using just a byte
+header; these are called "string-1" items. String data using a word header are
+called "string-2" items and string data using a doubleword header are called
+"string-4" items. No special ASCII NUL termination byte is required for PGC
+storage of a string as the length is explicitly given in the item header.
+
+
+20.4: Marker codes
+
+PGC marker codes are given in hexadecimal format. PGC marker code zero (marker
+0x00) is the "noop" marker and carries no meaning. Each additional marker code
+defined appears in its own subsection below.
+
+
+20.4.1: Marker 0x01: reduced export format single game
+
+Marker 0x01 is used to indicate a single complete game in reduced export
+format. This refers to a game that has only the Seven Tag Roster data, played
+moves, and no annotations or comments. This record type is used as an
+alternative to the general game data begin/end record pairs described below.
+The general marker pair (0x05/0x06) is used to help represent game data that
+can't be adequately represented in reduced export format. There are eight
+items that follow marker 0x01 to form the "reduced export format single game"
+record. In order, these are:
+
+1) string-1 (Event tag value)
+
+2) string-1 (Site tag value)
+
+3) string-1 (Date tag value)
+
+4) string-1 (Round tag value)
+
+5) string-1 (White tag value)
+
+6) string-1 (Black tag value)
+
+7) string-1 (Result tag value)
+
+8) mvseq-2 (played moves)
+
+
+20.4.2: Marker 0x02: tag pair
+
+Marker 0x02 is used to indicate a single tag pair. There are two items that
+follow marker 0x02 to form the "tag pair" record; in order these are:
+
+1) string-1 (tag pair name)
+
+2) string-1 (tag pair value)
+
+
+20.4.3: Marker 0x03: short move sequence
+
+Marker 0x03 is used to indicate a short move sequence. There is one item that
+follows marker 0x03 to form the "short move sequence" record; this is:
+
+1) mvseq-1 (played moves)
+
+
+20.4.4: Marker 0x04: long move sequence
+
+Marker 0x04 is used to indicate a long move sequence. There is one item that
+follows marker 0x04 to form the "long move sequence" record; this is:
+
+1) mvseq-2 (played moves)
+
+
+20.4.5: Marker 0x05: general game data begin
+
+Marker 0x05 is used to indicate the beginning of data for a game. It has no
+associated items; it is a complete record by itself. Instead, it marks the
+beginning of PGC records used to describe a game. All records up to the
+corresponding "general game data end" record are considered to be part of the
+same game. (PGC record type 0x01, "reduced export format single game", is not
+permitted to appear within a general game begin/end record pair. The general
+game construct is to be used as an alternative to record type 0x01 in those
+cases where the latter is too restrictive to contain the data for a game.)
+
+
+20.4.6: Marker 0x06: general game data end
+
+Marker 0x06 is used to indicate the end of data for a game. It has no
+associated items; it is a complete record by itself. Instead, it marks the end
+of PGC records used to describe a game. All records after the corresponding
+(and earlier appearing) "general game data begin" record are considered to be
+part of the same game.
+
+
+20.4.7: Marker 0x07: simple-nag
+
+Marker 0x07 is used to indicate the presence of a simple NAG (Numeric
+Annotation Glyph). This is an annotation marker that has only a short type
+identification and no operands. There is one item that follows marker 0x07 to
+form the "simple-nag" record; this is:
+
+1) int-1 (unsigned NAG value, from 0 to 255)
+
+
+20.4.8: Marker 0x08: rav-begin
+
+Marker 0x08 is used to indicate the beginning of an RAV (Recursive Annotation
+Variation). It has no associated items; it is a complete record by itself.
+Instead, it marks the beginning of PGC records used to describe a recursive
+annotation. It is considered an opening bracket for a later rav-end record;
+the recursive annotation is completely described between the bracket pair. The
+rav-begin/data/rav-end structures can be nested.
+
+
+20.4.9: Marker 0x09: rav-end
+
+Marker 0x09 is used to indicate the end of an RAV (Recursive Annotation
+Variation). It has no associated items; it is a complete record by itself.
+Instead, it marks the end of PGC records used to describe a recursive
+annotation. It is considered a closing bracket for an earlier rav-begin
+record; the recursive annotation is completely described between the bracket
+pair. The rav-begin/data/rav-end structures can be nested.
+
+
+20.4.10: Marker 0x0a: escape-string
+
+Marker 0x0a is used to indicate the presence of an escape string. This is a
+string represented by the use of the percent sign ("%") escape mechanism in
+PGN. The data that is escaped is the sequence of characters immediately
+follwoing the percent sign up to but not including the terminating newline. As
+is the case with the PGN percent sign escape, the use of a PGC escape-string
+record is limited to use for non-archival data. There is one item that follows
+marker 0x0a to form the "escape-string" record; this is the string data being
+escaped:
+
+1) string-2 (escaped string data)
+
+
+21: E-mail correspondence usage
+
+*** This section is under development.
+
+
+Standard: EOF
diff --git a/_assets/vendor/pgn4web/pgn4web-help.html b/_assets/vendor/pgn4web/pgn4web-help.html
new file mode 100644
index 0000000..dd75a61
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn4web-help.html
@@ -0,0 +1,456 @@
+
+
+
+
+
+
+
+pgn4web help
+
+
+
+
+
+
+
+
+
+
+
+
+
+pgn4web help
+
+
+
+
+
+
+
+
+
+
+
+
+The user can interact with the pgn4web chessboard
using the keyboard ,
clicking chessboard squares (hovering the mouse on each square displays an help summary) or
using touch gestures .
+
+A
search tool allows searching within the PGN games.
+
+Errors alert messages are logged, such as failures to load PGN games, incorrect PGN games or incorrect FEN strings. When an error is encountered, the top left chessboard square will flash to signal the exception. The error alert log can be reviewed clicking on the same top left chessboard square.
+
+See
the pgn4web wiki for more information. Please note, the wiki information always refers to the latest version of pgn4web.
+
+
+
+
+
+The user can interact with the pgn4web chessboard using the keyboard. See
the pgn4web wiki for more information. Most commonly used shortcut keys:
+
+
+
+
+
+
+
+
+The user can interact with the pgn4web chessboard clicking chessboard squares:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Javascript modifications of
Paolo Casaschi on code from
the ficsgames database , in turn likely based on code from
the LT PGN viewer .
+
+
PNG images from Eric De Mund , licensed under
creative commons attribution-share alike 3.0 unported license .
+
+
SVG images from Colin M.L. Burnett , licensed under
GFDL ,
CC-BY-SA-3.0 or
GPL , via Wikimedia Commons.
+
+
SVG images from Igor Krizanovskij and
other SVG images , dedicated to the
Public Domain as any openclipart.org content.
+
+The figurine fonts are derived from
the Liberation Sans font released under GNU General Public License, with the addition of chess pieces from freeware fonts: the alpha2 font (Peter Strickland), the good companion font (David L. Brown), the merida font (Armando H. Marroquin), the pirate font (Klaus Wolf) and the chess usual font (Armando H. Marroquin). The original chess fonts and more details are available at
the en passant site .
+The chess informant symbols font is used with permission from
the Chess Informant publishing company . The chess ole figurin font is from
the ChessOLE project (David Frank).
+
+
The GarboChess javascript chess engine is
licensed by Gary Linscott under BSD license.
+
+Some functionality of specific applications of pgn4web or specific demo pages depends on third party javascript libraries, each stored in a separate subfolder with the associated credits and license information.
+
+Remaining pgn4web code is copyright (C) 2009-2013
Paolo Casaschi and licensed under the terms of
the GNU General Public License version 2 as published by
the Free Software Foundation ; either
version 2 of the License , or (at your option) any later version.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/_assets/vendor/pgn4web/pgn4web-server-config.js b/_assets/vendor/pgn4web/pgn4web-server-config.js
new file mode 100644
index 0000000..0ba60a8
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn4web-server-config.js
@@ -0,0 +1,69 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2012 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+//
+// some parameters that might need reconfiguring for implementing pgn4web on your server
+//
+
+"use strict";
+
+//
+// the email for the project, default = 'pgn4web@casaschi.net'
+// used by: home.html, board-generator.html and pgn4web.js
+//
+var pgn4web_project_email = 'pgn4web@casaschi.net';
+//
+
+//
+// the URL for the project's blog, default = 'http://pgn4web-blog.casaschi.net'
+// used by: home.html
+//
+var pgn4web_project_blog = 'http://pgn4web-blog.casaschi.net';
+//
+
+//
+// the URL for the board widged to be used in the board-generator tool, default = full URL of local board.html file = pgn4web_board_url = location.protocol + "//" + location.hostname+location.pathname.substr(0, location.pathname.lastIndexOf("/")) + "/board.html";
+// used by: board-generator.html
+//
+var pgn4web_board_url = location.protocol + "//" + location.hostname+location.pathname.substr(0, location.pathname.lastIndexOf("/")) + "/board.html";
+// var pgn4web_board_url = 'http://pgn4web-board.casaschi.net/';
+//
+
+//
+// the URL for the board generator tool, default = 'board-generator.html'
+// used by: board-generator.html, widget.html
+//
+var pgn4web_generator_url = 'board-generator.html';
+// var pgn4web_generator_url = 'http://pgn4web-board-generator.casaschi.net/';
+//
+
+//
+// login/key pair for the bitly URL shortening service, default blank (then tinyurl is used instead)
+// used by: board-generator.html
+//
+var pgn4web_bitly_login = "";
+var pgn4web_bitly_apiKey = "";
+// var pgn4web_bitly_login = "";
+// var pgn4web_bitly_apiKey = "";
+//
+
+//
+// pointer URL for the live games broadcast, default = '.'
+// used by: live.html, live-multi.html, live-mosaic.html
+//
+var pgn4web_live_pointer_url = '.';
+// var pgn4web_live_pointer_url = 'http://pgn4web-live.casaschi.net';
+//
+
+//
+// the URL for the game viewer tool, default = 'demo.html?frame=pgn_form'
+// used by: home.html
+//
+var pgn4web_viewer_url = 'demo.html?frame=pgn_form';
+// var pgn4web_viewer_url = 'viewer.php';
+//
+
diff --git a/_assets/vendor/pgn4web/pgn4web.js b/_assets/vendor/pgn4web/pgn4web.js
new file mode 100644
index 0000000..bd1c28c
--- /dev/null
+++ b/_assets/vendor/pgn4web/pgn4web.js
@@ -0,0 +1,4147 @@
+/*
+ * pgn4web javascript chessboard
+ * copyright (C) 2009-2014 Paolo Casaschi
+ * see README file and http://pgn4web.casaschi.net
+ * for credits, license and more details
+ */
+
+"use strict";
+
+var pgn4web_version = '2.80';
+
+var pgn4web_project_url = "http://pgn4web.casaschi.net";
+var pgn4web_project_author = "Paolo Casaschi";
+var pgn4web_project_email; // preassigned in pgn4web-server-config.js
+if (typeof(pgn4web_project_email) == "undefined") { pgn4web_project_email = "pgn4web@casaschi.net"; }
+
+var helpWin;
+function displayHelp(section) {
+ if (helpWin && !helpWin.closed) { helpWin.close(); }
+ helpWin = window.open(detectHelpLocation() + (section ? "?" + section : ""), "pgn4web_help",
+ "resizable=yes,scrollbars=yes,toolbar=no,location=no,menubar=no,status=no");
+ if (helpWin && window.focus) { helpWin.focus(); }
+}
+
+
+// empty event APIs to be redefined
+
+function customFunctionOnPgnTextLoad() {}
+function customFunctionOnPgnGameLoad() {}
+function customFunctionOnMove() {}
+function customFunctionOnAlert(msg) {}
+function customFunctionOnCheckLiveBroadcastStatus() {}
+
+// custom header tags APIs for customFunctionOnPgnGameLoad
+
+function customPgnHeaderTag(customTag, htmlElementId, gameNum) {
+ var matches, tag = "";
+ customTag = customTag.replace(/\W+/g, "");
+ if (gameNum === undefined) { gameNum = currentGame; }
+ if ((pgnHeader[gameNum]) && (matches = pgnHeader[gameNum].match('\\[\\s*' + customTag + '\\s*\"([^\"]+)\"\\s*\\]'))) { tag = matches[1]; }
+ if (htmlElementId) {
+ var theObj = document.getElementById(htmlElementId);
+ if ((theObj) && (typeof(theObj.innerHTML) == "string")) { theObj.innerHTML = tag; }
+ }
+ return tag;
+}
+
+// custom comment tags API for customFunctionOnMove
+
+function customPgnCommentTag(customTag, htmlElementId, plyNum, varId) {
+ var matches, tag = "", theObj;
+ customTag = customTag.replace(/\W+/g, "");
+ if (typeof(varId) == "undefined") { varId = 0; }
+ if (typeof(plyNum) == "undefined") { plyNum = CurrentPly; }
+ if ((MoveCommentsVar[varId][plyNum]) && (matches = MoveCommentsVar[varId][plyNum].match('\\[%' + customTag + '\\s+((?:,?(?:"[^"]*"|[^,\\]]*))*)\\s*\\]'))) { tag = matches[1].replace(/\s+$/, ""); }
+ if ((htmlElementId) && (theObj = document.getElementById(htmlElementId)) && (typeof(theObj.innerHTML) == "string")) { theObj.innerHTML = tag; }
+ return tag;
+}
+
+
+function simpleAddEvent(obj, evt, cbk) {
+ if (obj.addEventListener) { obj.addEventListener(evt, cbk, false); }
+ else if (obj.attachEvent) { obj.attachEvent("on" + evt, cbk); } // IE8-
+}
+
+simpleAddEvent(document, "keydown", pgn4web_handleKey_event);
+simpleAddEvent(window, "load", pgn4web_onload_event);
+
+
+function pgn4web_onload_event(e) {
+ pgn4web_onload(e);
+}
+
+function pgn4web_onload(e) {
+ start_pgn4web();
+}
+
+function start_pgn4web() {
+ // keep startup logs at the very first run, otherwise reset
+ if (alertFirstResetLoadingPgn) { alertFirstResetLoadingPgn = false; }
+ else { resetAlert(); }
+ InitImages();
+ createBoard();
+ if (LiveBroadcastDelay > 0) { restartLiveBroadcastTimeout(); }
+ pgn4web_initTouchEvents();
+}
+
+var alertLog;
+var alertLast;
+var alertNum;
+var alertNumSinceReset;
+var fatalErrorNumSinceReset;
+var alertPromptInterval = null;
+var alertPromptOn = false;
+var alertFirstResetLoadingPgn = true;
+
+resetAlert();
+
+function resetAlert() {
+ alertLog = new Array(5);
+ alertLast = alertLog.length - 1;
+ alertNum = alertNumSinceReset = fatalErrorNumSinceReset = 0;
+ stopAlertPrompt();
+ if (!alertFirstResetLoadingPgn) {
+ if (boardIsDefault(debugShortcutSquare)) { boardShortcut(debugShortcutSquare, "pgn4web v" + pgn4web_version + " debug info", null, true); }
+ }
+}
+
+function myAlert(msg, fatalError, doNotPrompt) {
+ alertNum++;
+ alertNumSinceReset++;
+ if (fatalError) { fatalErrorNumSinceReset++; }
+ alertLast = (alertLast + 1) % alertLog.length;
+ alertLog[alertLast] = msg + "\n" + (new Date()).toLocaleString();
+ if (boardIsDefault(debugShortcutSquare)) { boardShortcut(debugShortcutSquare, "pgn4web v" + pgn4web_version + " debug info, " + alertNum + " alert" + (alertNum > 1 ? "s" : ""), null, true); }
+ if ((!doNotPrompt) && ((LiveBroadcastDelay === 0) || (LiveBroadcastAlert === true)) && (boardIsDefault(debugShortcutSquare))) { startAlertPrompt(); }
+ customFunctionOnAlert(msg);
+}
+
+function startAlertPrompt() {
+ if (alertPromptOn) { return; } // dont start flashing twice
+ if (alertPromptInterval) { clearTimeout(alertPromptInterval); }
+ alertPromptInterval = setTimeout("alertPromptTick(true);", 500);
+}
+
+function stopAlertPrompt() {
+ if (alertPromptInterval) {
+ clearTimeout(alertPromptInterval);
+ alertPromptInterval = null;
+ }
+ if (alertPromptOn) { alertPromptTick(false); }
+}
+
+function alertPromptTick(restart) {
+ if (alertPromptInterval) {
+ clearTimeout(alertPromptInterval);
+ alertPromptInterval = null;
+ }
+ var colRow = colRowFromSquare(debugShortcutSquare);
+ if (!colRow) { return; }
+
+ var alertPromptDelay = 1500; // for alerts before the board is printed
+ var theObj = document.getElementById('tcol' + colRow.col + 'trow' + colRow.row);
+ if (theObj) {
+ if (alertPromptOn) {
+ if ((highlightOption) &&
+ ((colFromHighlighted === 0 && rowFromHighlighted === 7) ||
+ (colToHighlighted === 0 && rowToHighlighted === 7))) {
+ theObj.className = 'highlightWhiteSquare';
+ } else { theObj.className = 'whiteSquare'; }
+ } else { theObj.className = 'blackSquare'; }
+
+ alertPromptOn = !alertPromptOn;
+ if (alertPromptOn) { alertPromptDelay = 500; }
+ else { alertPromptDelay = 3000; }
+ }
+ if (restart) { alertPromptInterval = setTimeout("alertPromptTick(true);", alertPromptDelay); }
+}
+
+
+function stopEvProp(e) {
+ e.cancelBubble = true;
+ if (e.stopPropagation) { e.stopPropagation(); }
+ if (e.preventDefault) { e.preventDefault(); }
+ return false;
+}
+
+// for onFocus/onBlur textbox events, allowing text typing
+var shortcutKeysWereEnabled = false;
+function disableShortcutKeysAndStoreStatus() {
+ if ((shortcutKeysWereEnabled = shortcutKeysEnabled) === true) {
+ SetShortcutKeysEnabled(false);
+ }
+}
+function restoreShortcutKeysStatus() {
+ if (shortcutKeysWereEnabled === true) { SetShortcutKeysEnabled(true); }
+ shortcutKeysWereEnabled = false;
+}
+
+function customShortcutKey_Shift_0() {}
+function customShortcutKey_Shift_1() {}
+function customShortcutKey_Shift_2() {}
+function customShortcutKey_Shift_3() {}
+function customShortcutKey_Shift_4() {}
+function customShortcutKey_Shift_5() {}
+function customShortcutKey_Shift_6() {}
+function customShortcutKey_Shift_7() {}
+function customShortcutKey_Shift_8() {}
+function customShortcutKey_Shift_9() {}
+
+function pgn4web_handleKey_event(e) {
+ pgn4web_handleKey(e);
+}
+
+var shortcutKeysEnabled = false;
+function pgn4web_handleKey(e) {
+ var keycode, oldPly, oldVar, colRow, colRowList;
+
+ if (!e) { e = window.event; }
+
+ keycode = e.keyCode;
+
+ if (e.altKey || e.ctrlKey || e.metaKey) { return true; }
+
+ // shift-escape always enabled: toggle shortcut keys
+ if (!shortcutKeysEnabled && !(keycode == 27 && e.shiftKey)) { return true; }
+
+ switch (keycode) {
+
+ case 8: // backspace
+ case 9: // tab
+ case 16: // shift
+ case 17: // ctrl
+ case 18: // alt
+ case 32: // space
+ case 33: // page-up
+ case 34: // page-down
+ case 35: // end
+ case 36: // home
+ case 92: // super
+ case 93: // menu
+ case 188: // comma
+ return true;
+
+ case 27: // escape
+ if (e.shiftKey) { interactivelyToggleShortcutKeys(); }
+ else { displayHelp(); }
+ break;
+
+ case 189: // dash
+ if (colRowList = prompt("Enter shortcut square coordinates to click:", "")) {
+ colRowList = colRowList.toUpperCase().replace(/[^A-Z0-9]/g,"");
+ while (colRow = colRowFromSquare(colRowList)) {
+ boardOnClick[colRow.col][colRow.row]({"id": "img_tcol" + colRow.col + "trow" + colRow.row}, e);
+ colRowList = colRowList.substr(2);
+ }
+ }
+ break;
+
+ case 90: // z
+ if (e.shiftKey) { window.open(pgn4web_project_url); }
+ else { displayDebugInfo(); }
+ break;
+
+ case 37: // left-arrow
+ case 74: // j
+ backButton(e);
+ break;
+
+ case 38: // up-arrow
+ case 72: // h
+ startButton(e);
+ break;
+
+ case 39: // right-arrow
+ case 75: // k
+ forwardButton(e);
+ break;
+
+ case 40: // down-arrow
+ case 76: // l
+ endButton(e);
+ break;
+
+ case 73: // i
+ MoveToPrevComment(e.shiftKey);
+ break;
+
+ case 79: // o
+ MoveToNextComment(e.shiftKey);
+ break;
+
+ case 190: // dot
+ if (e.shiftKey) { goToFirstChild(); }
+ else { goToNextVariationSibling(); }
+ break;
+
+ case 85: // u
+ if (e.shiftKey) { undoStackRedo(); }
+ else { undoStackUndo(); }
+ break;
+
+ case 45: // insert
+ undoStackRedo();
+ break;
+
+ case 46: // delete
+ undoStackUndo();
+ break;
+
+ case 83: // s
+ if (e.shiftKey) { searchPgnGame(""); }
+ else { searchPgnGamePrompt(); }
+ break;
+
+ case 13: // enter
+ if (e.shiftKey) { searchPgnGame(lastSearchPgnExpression, true); }
+ else { searchPgnGame(lastSearchPgnExpression); }
+ break;
+
+ case 68: // d
+ if (e.shiftKey) { displayFenData(); }
+ else { displayPgnData(true); }
+ break;
+
+ case 187: // equal
+ SwitchAutoPlay();
+ break;
+
+ case 65: // a
+ GoToMove(CurrentPly + 1);
+ SetAutoPlay(true);
+ break;
+
+ case 48: // 0
+ if (e.shiftKey) { customShortcutKey_Shift_0(); }
+ else { SetAutoPlay(false); }
+ break;
+
+ case 49: // 1
+ if (e.shiftKey) { customShortcutKey_Shift_1(); }
+ else { SetAutoplayDelayAndStart( 1*1000); }
+ break;
+
+ case 50: // 2
+ if (e.shiftKey) { customShortcutKey_Shift_2(); }
+ else { SetAutoplayDelayAndStart( 2*1000); }
+ break;
+
+ case 51: // 3
+ if (e.shiftKey) { customShortcutKey_Shift_3(); }
+ else { SetAutoplayDelayAndStart( 3*1000); }
+ break;
+
+ case 52: // 4
+ if (e.shiftKey) { customShortcutKey_Shift_4(); }
+ else { SetAutoplayDelayAndStart( 4*1000); }
+ break;
+
+ case 53: // 5
+ if (e.shiftKey) { customShortcutKey_Shift_5(); }
+ else { SetAutoplayDelayAndStart( 5*1000); }
+ break;
+
+ case 54: // 6
+ if (e.shiftKey) { customShortcutKey_Shift_6(); }
+ else { SetAutoplayDelayAndStart( 6*1000); }
+ break;
+
+ case 55: // 7
+ if (e.shiftKey) { customShortcutKey_Shift_7(); }
+ else { SetAutoplayDelayAndStart( 7*1000); }
+ break;
+
+ case 56: // 8
+ if (e.shiftKey) { customShortcutKey_Shift_8(); }
+ else { SetAutoplayDelayAndStart( 8*1000); }
+ break;
+
+ case 57: // 9
+ if (e.shiftKey) { customShortcutKey_Shift_9(); }
+ else { setCustomAutoplayDelay(); }
+ break;
+
+ case 81: // q
+ SetAutoplayDelayAndStart(10*1000);
+ break;
+
+ case 87: // w
+ SetAutoplayDelayAndStart(20*1000);
+ break;
+
+ case 69: // e
+ SetAutoplayDelayAndStart(30*1000);
+ break;
+
+ case 82: // r
+ pauseLiveBroadcast();
+ break;
+
+ case 84: // t
+ if (e.shiftKey) { LiveBroadcastSteppingMode = !LiveBroadcastSteppingMode; }
+ else { refreshPgnSource(); }
+ break;
+
+ case 89: // y
+ restartLiveBroadcast();
+ break;
+
+ case 70: // f
+ if (!e.shiftKey || IsRotated) { FlipBoard(); }
+ break;
+
+ case 71: // g
+ SetHighlight(!highlightOption);
+ break;
+
+ case 88: // x
+ randomGameRandomPly();
+ break;
+
+ case 67: // c
+ if (numberOfGames > 1) { Init(Math.floor(Math.random()*numberOfGames)); }
+ break;
+
+ case 86: // v
+ if (numberOfGames > 1) { Init(0); }
+ break;
+
+ case 66: // b
+ Init(currentGame - 1);
+ break;
+
+ case 78: // n
+ Init(currentGame + 1);
+ break;
+
+ case 77: // m
+ if (numberOfGames > 1) { Init(numberOfGames - 1); }
+ break;
+
+ case 80: // p
+ if (e.shiftKey) { SetCommentsOnSeparateLines(!commentsOnSeparateLines); }
+ else { SetCommentsIntoMoveText(!commentsIntoMoveText); }
+ oldPly = CurrentPly;
+ oldVar = CurrentVar;
+ Init();
+ GoToMove(oldPly, oldVar);
+ break;
+
+ default:
+ return true;
+ }
+ return stopEvProp(e);
+}
+
+var boardOnClick = new Array(8);
+var boardTitle = new Array(8);
+var boardDefault = new Array(8);
+for (var col=0; col<8; col++) {
+ boardOnClick[col] = new Array(8);
+ boardTitle[col] = new Array(8);
+ boardDefault[col] = new Array(8);
+}
+clearShortcutSquares("ABCDEFGH", "12345678");
+
+function colRowFromSquare(square) {
+ if ((typeof(square) != "string") || (!square)) { return null; }
+ var col = square.charCodeAt(0) - 65; // 65="A"
+ if ((col < 0) || (col > 7)) { return null; }
+ var row = 56 - square.charCodeAt(1); // 56="8"
+ if ((row < 0) || (row > 7)) { return null; }
+ return { "col": col, "row": row };
+}
+
+function clearShortcutSquares(cols, rows) {
+ if ((typeof(cols) != "string") || (typeof(rows) != "string")) { return; }
+ for (var c=0; c 1) { Init(0); } }, true);
+
+boardShortcut("B3", "jump to previous games decile", function(t,e){ if (currentGame > 0) { calculateDeciles(); for (var ii=(deciles.length-2); ii>=0; ii--) { if (currentGame > deciles[ii]) { Init(deciles[ii]); break; } } } }, true);
+
+boardShortcut("C3", "load previous game", function(t,e){ Init(currentGame - 1); }, true);
+
+boardShortcut("D3", "load random game", function(t,e){ if (numberOfGames > 1) { Init(Math.floor(Math.random()*numberOfGames)); } }, true);
+
+boardShortcut("E3", "load random game at random position", function(t,e){ randomGameRandomPly(); }, true);
+
+boardShortcut("F3", "load next game", function(t,e){ Init(currentGame + 1); }, true);
+
+boardShortcut("G3", "jump to next games decile", function(t,e){ if (currentGame < numberOfGames - 1) { calculateDeciles(); for (var ii=1; ii 1) { Init(numberOfGames - 1); } }, true);
+
+boardShortcut("A2", "stop autoplay", function(t,e){ SetAutoPlay(e.shiftKey); }, true);
+
+boardShortcut("B2", "toggle autoplay", function(t,e){ SwitchAutoPlay(); }, true);
+
+boardShortcut("C2", "autoplay 1 second", function(t,e){ SetAutoplayDelayAndStart((e.shiftKey ? 10 : 1)*1000); }, true);
+
+boardShortcut("D2", "autoplay 2 seconds", function(t,e){ SetAutoplayDelayAndStart((e.shiftKey ? 20 : 2)*1000); }, true);
+
+boardShortcut("E2", "autoplay 5 seconds", function(t,e){ SetAutoplayDelayAndStart((e.shiftKey ? 50 : 5)*1000); }, true);
+
+boardShortcut("F2", "autoplay custom delay", function(t,e){ setCustomAutoplayDelay(); }, true);
+
+boardShortcut("G2", "replay up to 6 previous half-moves, then autoplay forward", function(t,e){ replayPreviousMoves(e.shiftKey ? 10 : 6); }, true);
+
+boardShortcut("H2", "replay the previous half-move, then autoplay forward", function(t,e){ replayPreviousMoves(e.shiftKey ? 3 : 1); }, true);
+
+boardShortcut("A1", "go to game start", function(t,e){ startButton(e); }, true);
+
+boardShortcut("B1", "", function(t,e){}, true); // see setB1C1F1G1...
+
+boardShortcut("C1", "", function(t,e){}, true); // see setB1C1F1G1...
+
+boardShortcut("D1", "move backward", function(t,e){ GoToMove(CurrentPly - 1); }, true);
+
+boardShortcut("E1", "move forward", function(t,e){ GoToMove(CurrentPly + 1); }, true);
+
+boardShortcut("F1", "", function(t,e){}, true); // see setB1C1F1G1...
+
+boardShortcut("G1", "", function(t,e){}, true); // see setB1C1F1G1...
+
+boardShortcut("H1", "go to game end", function(t,e){ endButton(e); }, true);
+
+
+setG7A6B6H7boardShortcuts();
+
+function setG7A6B6H7boardShortcuts() {
+ if (LiveBroadcastDelay > 0) {
+ if (boardIsDefault("G7")) { boardShortcut("G7", "", function(t,e){}, true); }
+ if (boardIsDefault("A6")) { boardShortcut("A6", "pause live broadcast automatic games refresh", function(t,e){ pauseLiveBroadcast(); }, true); }
+ if (boardIsDefault("B6")) { boardShortcut("B6", "restart live broadcast automatic games refresh", function(t,e){ restartLiveBroadcast(); }, true); }
+ if (boardIsDefault("H6")) { boardShortcut("H6", "force live broadcast games refresh", function(t,e){ refreshPgnSource(); }, true); }
+ } else {
+ if (boardIsDefault("G7")) { boardShortcut("G7", "toggle autoplay next game", function(t,e){ SetAutoplayNextGame(!autoplayNextGame); }, true); }
+ if (boardIsDefault("A6")) { boardShortcut("A6", "", function(t,e){}, true); }
+ if (boardIsDefault("B6")) { boardShortcut("B6", "", function(t,e){}, true); }
+ if (boardIsDefault("H6")) { boardShortcut("H6", "", function(t,e){}, true); }
+ }
+}
+
+setB1C1F1G1boardShortcuts();
+
+function setB1C1F1G1boardShortcuts() {
+ if (commentsIntoMoveText && GameHasComments) {
+ if (boardIsDefault("B1")) { boardShortcut("B1", "go to previous comment or variation", function(t,e){ if (e.shiftKey) { GoToMove(CurrentPly - 10); } else { MoveToPrevComment(); } }, true); }
+ if (boardIsDefault("G1")) { boardShortcut("G1", "go to next comment or variation", function(t,e){ if (e.shiftKey) { GoToMove(CurrentPly + 10); } else { MoveToNextComment(); } }, true); }
+ } else {
+ if (boardIsDefault("B1")) { boardShortcut("B1", "move 10 half-moves backward", function(t,e){ GoToMove(CurrentPly - 10); }, true); }
+ if (boardIsDefault("G1")) { boardShortcut("G1", "move 10 half-moves forward", function(t,e){ GoToMove(CurrentPly + 10); }, true); }
+ }
+ if (commentsIntoMoveText && GameHasVariations) {
+ if (boardIsDefault("C1")) { boardShortcut("C1", "go to parent variation", function(t,e){ if (e.shiftKey) { GoToMove(CurrentPly - 6); } else { GoToMove(StartPlyVar[CurrentVar]); } }, true); }
+ if (boardIsDefault("F1")) { boardShortcut("F1", "cycle through alternative variations, if any, otherwise move forward", function(t,e){ if (e.shiftKey) { GoToMove(CurrentPly + 6); } else { if (!goToNextVariationSibling()) { GoToMove(CurrentPly + 1); } } }, true); }
+ } else {
+ if (boardIsDefault("C1")) { boardShortcut("C1", "move 6 half-moves backward", function(t,e){ GoToMove(CurrentPly - 6); }, true); }
+ if (boardIsDefault("F1")) { boardShortcut("F1", "move 6 half-moves forward", function(t,e){ GoToMove(CurrentPly + 6); }, true); }
+ }
+}
+
+
+var deciles = new Array(11);
+function calculateDeciles() {
+ for (var ii=0; ii 0) {
+ dbg3 += 'LIVEBROADCAST: status=' + liveStatusDebug() + ' ticker=' + LiveBroadcastTicker + ' delay=' + LiveBroadcastDelay + 'm' + '\n' + 'refreshed: ' + LiveBroadcastLastRefreshedLocal + '\n' + 'received: ' + LiveBroadcastLastReceivedLocal + '\n' + 'modified (server time): ' + LiveBroadcastLastModified_ServerTime() +
+ '\n\n';
+ }
+ if (typeof(engineWinCheck) == "function") {
+ dbg3 += "ANALYSIS: " + (engineWinCheck() ? "board=connected " + engineWin.customDebugInfo() : "board=disconnected") + "\n\n";
+ }
+ var thisInfo = customDebugInfo();
+ if (thisInfo) { dbg3 += "CUSTOM: " + thisInfo + "\n\n"; }
+ dbg3 += 'ALERTLOG: fatalnew=' + fatalErrorNumSinceReset + ' new=' + alertNumSinceReset +
+ ' shown=' + Math.min(alertNum, alertLog.length) + ' total=' + alertNum + '\n--';
+ if (alertNum > 0) {
+ for (var ii = 0; iipgn4web debug info " +
+ " " +
+ "\n\n" + dbg1 + location.href + " " + dbg3 +
+ "\n \n